diff options
Diffstat (limited to 'src/mainboard/hp/pavilion_m6_1035dx/ec.c')
-rw-r--r-- | src/mainboard/hp/pavilion_m6_1035dx/ec.c | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/src/mainboard/hp/pavilion_m6_1035dx/ec.c b/src/mainboard/hp/pavilion_m6_1035dx/ec.c index d61a2e5301..2dd0009b7b 100644 --- a/src/mainboard/hp/pavilion_m6_1035dx/ec.c +++ b/src/mainboard/hp/pavilion_m6_1035dx/ec.c @@ -13,16 +13,24 @@ static void set_keyboard_matrix_us(void) ec_kbc_write_ib(0xE5); } -/* Tell EC to operate in ACPI mode, thus generating SCIs on events, not SMIs */ -static void enter_acpi_mode(void) +/* Tell EC to operate in APM mode. Events generate SMIs instead of SCIs */ +static void enter_apm_mode(void) { ec_kbc_write_cmd(0x59); - ec_kbc_write_ib(0xE8); + ec_kbc_write_ib(0xE9); } void pavilion_m6_1035dx_ec_init(void) { set_keyboard_matrix_us(); - /* This could also be done in an SMI, should we decide to use SMM */ - enter_acpi_mode(); + + /* + * The EC has a special "blinking Caps Lock LED" mode which it normally + * enters when it believes the OS is not responding. It occasionally + * disables battery charging when in this mode, although other + * functionality is unaffected. Although the EC starts in APM mode by + * default, it only leaves the "blinking Caps Lock LED" mode after + * receiving the following command. + */ + enter_apm_mode(); } |