/* Copyright 2015 Jun Wako This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . */ #include "hal.h" #include "led.h" #include "led_controller.h" /* WARNING! This function needs to be callable from * both regular threads and ISRs, unlocked (during resume-from-sleep). * In particular, I2C functions (interrupt-driven) should NOT be called from here. */ void led_set(uint8_t usb_led) { /* // PTA5: LED (1:on/0:off) GPIOA->PDDR |= (1<<1); PORTA->PCR[5] |= PORTx_PCRn_DSE | PORTx_PCRn_MUX(1); if (usb_led & (1<PSOR |= (1<<5); } else { GPIOA->PCOR |= (1<<5); } */ //TODO: How does this test if led is set //usb_led --> led_set(usb_led) <-- chibios/host_keyboard_leds <-- keyboard_leds from usbSetupTransfer //keyboard_leds is enum'd in chibios/main.c if (usb_led & (1<