diff options
author | Alexandru Gagniuc <mr.nuke.me@gmail.com> | 2014-04-19 15:10:14 -0500 |
---|---|---|
committer | Alexandru Gagniuc <mr.nuke.me@gmail.com> | 2014-04-20 21:46:26 +0200 |
commit | 0a57e999b75d733669383bdc5d4c693b1d675a5d (patch) | |
tree | f310e3925d61878c59cd573caaae923a212b5577 /src/mainboard | |
parent | cf1f9b6a5bd1be169756dd1cd9568492a880651c (diff) |
hp/pavilion_m6_1035dx: Do not re-init EC and lid SMI on S3 resume
It's not needed, and puts the EC back into APM mode. The EC does not
shut down during S3 sleep, so we don't need to re-initialize it.
Lid SMI will have been disabled in the switch to ACPI mode, don't
re-enable it.
Change-Id: I2c06df140f63427dac32ae095d29e68f64135358
Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Reviewed-on: http://review.coreboot.org/5555
Tested-by: build bot (Jenkins)
Reviewed-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Diffstat (limited to 'src/mainboard')
-rw-r--r-- | src/mainboard/hp/pavilion_m6_1035dx/mainboard.c | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/src/mainboard/hp/pavilion_m6_1035dx/mainboard.c b/src/mainboard/hp/pavilion_m6_1035dx/mainboard.c index 2e8436bc82..81260f16c2 100644 --- a/src/mainboard/hp/pavilion_m6_1035dx/mainboard.c +++ b/src/mainboard/hp/pavilion_m6_1035dx/mainboard.c @@ -32,19 +32,21 @@ #include <southbridge/amd/agesa/hudson/smi.h> -/************************************************* - * enable the dedicated function in parmer board. - *************************************************/ + +static void pavilion_cold_boot_init(void) +{ + /* Lid SMI is only used in non-ACPI mode; leave it off in S3 resume */ + hudson_configure_gevent_smi(EC_LID_GEVENT, SMI_MODE_SMI, SMI_LVL_LOW); + /* EC is not powered off during S3 sleep */ + pavilion_m6_1035dx_ec_init(); +} + static void mainboard_enable(device_t dev) { printk(BIOS_INFO, "Mainboard " CONFIG_MAINBOARD_PART_NUMBER " Enable.\n"); - pavilion_m6_1035dx_ec_init(); - hudson_configure_gevent_smi(EC_SMI_GEVENT, SMI_MODE_SMI, SMI_LVL_HIGH); - hudson_configure_gevent_smi(EC_LID_GEVENT, SMI_MODE_SMI, SMI_LVL_LOW); hudson_enable_smi_generation(); - /* * The mainboard is the first place that we get control in ramstage. Check * for S3 resume and call the approriate AGESA/CIMx resume functions. @@ -53,7 +55,10 @@ static void mainboard_enable(device_t dev) acpi_slp_type = acpi_get_sleep_type(); if (acpi_slp_type == 3) agesawrapper_fchs3earlyrestore(); + else #endif + pavilion_cold_boot_init(); + } struct chip_operations mainboard_ops = { |