|
@@ -195,9 +195,11 @@ int board_init(void)
|
|
static void check_power_switch(void)
|
|
static void check_power_switch(void)
|
|
{
|
|
{
|
|
if (kw_gpio_get_value(GPIO_POWER_SWITCH)) {
|
|
if (kw_gpio_get_value(GPIO_POWER_SWITCH)) {
|
|
- /* turn off HDD and USB power */
|
|
|
|
|
|
+ /* turn off fan, HDD and USB power */
|
|
kw_gpio_set_value(GPIO_HDD_POWER, 0);
|
|
kw_gpio_set_value(GPIO_HDD_POWER, 0);
|
|
kw_gpio_set_value(GPIO_USB_VBUS, 0);
|
|
kw_gpio_set_value(GPIO_USB_VBUS, 0);
|
|
|
|
+ kw_gpio_set_value(GPIO_FAN_HIGH, 1);
|
|
|
|
+ kw_gpio_set_value(GPIO_FAN_LOW, 1);
|
|
set_led(LED_OFF);
|
|
set_led(LED_OFF);
|
|
|
|
|
|
/* loop until released */
|
|
/* loop until released */
|
|
@@ -207,6 +209,8 @@ static void check_power_switch(void)
|
|
/* turn power on again */
|
|
/* turn power on again */
|
|
kw_gpio_set_value(GPIO_HDD_POWER, 1);
|
|
kw_gpio_set_value(GPIO_HDD_POWER, 1);
|
|
kw_gpio_set_value(GPIO_USB_VBUS, 1);
|
|
kw_gpio_set_value(GPIO_USB_VBUS, 1);
|
|
|
|
+ kw_gpio_set_value(GPIO_FAN_HIGH, 0);
|
|
|
|
+ kw_gpio_set_value(GPIO_FAN_LOW, 0);
|
|
set_led(LED_POWER_BLINKING);
|
|
set_led(LED_POWER_BLINKING);
|
|
}
|
|
}
|
|
}
|
|
}
|