led.c (1126B)
1 /* 2 Copyright 2011 Jun Wako <wakojun@gmail.com> 3 4 This program is free software: you can redistribute it and/or modify 5 it under the terms of the GNU General Public License as published by 6 the Free Software Foundation, either version 2 of the License, or 7 (at your option) any later version. 8 9 This program is distributed in the hope that it will be useful, 10 but WITHOUT ANY WARRANTY; without even the implied warranty of 11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 GNU General Public License for more details. 13 14 You should have received a copy of the GNU General Public License 15 along with this program. If not, see <http://www.gnu.org/licenses/>. 16 */ 17 18 #include <stdint.h> 19 #include "ps2.h" 20 #include "led.h" 21 22 bool led_update_kb(led_t led_state) { 23 if(led_update_user(led_state)) { 24 uint8_t ps2_led = 0; 25 if (led_state.scroll_lock) 26 ps2_led |= (1<<PS2_LED_SCROLL_LOCK); 27 if (led_state.num_lock) 28 ps2_led |= (1<<PS2_LED_NUM_LOCK); 29 if (led_state.caps_lock) 30 ps2_led |= (1<<PS2_LED_CAPS_LOCK); 31 ps2_host_set_led(ps2_led); 32 } 33 return false; 34 }