diff options
author | Freya Murphy <freya@freyacat.org> | 2025-05-05 09:54:48 -0400 |
---|---|---|
committer | Freya Murphy <freya@freyacat.org> | 2025-05-05 09:58:20 -0400 |
commit | 592c6992c7ea0c2e4cbea79fadb1c845f2fc050e (patch) | |
tree | 5d98b664749b67eb20d7fc279ff36bcf44843f21 /kernel/drivers/ps2.c | |
parent | off by one (diff) | |
download | comus-592c6992c7ea0c2e4cbea79fadb1c845f2fc050e.tar.gz comus-592c6992c7ea0c2e4cbea79fadb1c845f2fc050e.tar.bz2 comus-592c6992c7ea0c2e4cbea79fadb1c845f2fc050e.zip |
pc spkr
Diffstat (limited to 'kernel/drivers/ps2.c')
-rw-r--r-- | kernel/drivers/ps2.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/kernel/drivers/ps2.c b/kernel/drivers/ps2.c index e260f6b..f605c1d 100644 --- a/kernel/drivers/ps2.c +++ b/kernel/drivers/ps2.c @@ -266,3 +266,18 @@ int ps2_init(void) sti(); return 0; } + +int ps2_set_leds(uint8_t state) +{ + uint8_t result; + + if (!(has_mouse || has_kbd)) + return 1; + + ps2ctrl_out_cmd(0xED); + ps2ctrl_out_data(state); + if ((result = ps2ctrl_in()) != 0xFA) + return 1; + + return 0; +} |