Vladimir Serbinenko (phcoder@gmail.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/4054
-gerrit
commit 168ea386855b22353fece7ab28c3747dbea08af8 Author: Vladimir Serbinenko phcoder@gmail.com Date: Wed Nov 13 18:31:24 2013 +0100
Make H8 work by default
Currently H8 skips important init if unable to access CMOS config. Change default to enable all features to have a sane system without using CMOS config.
Change-Id: I94f39d9d2b4044d60f0cd7b7700bc8629e99201c Signed-off-by: Vladimir Serbinenko phcoder@gmail.com --- src/ec/lenovo/h8/h8.c | 17 +++++++++-------- src/ec/lenovo/pmh7/pmh7.c | 5 +++-- 2 files changed, 12 insertions(+), 10 deletions(-)
diff --git a/src/ec/lenovo/h8/h8.c b/src/ec/lenovo/h8/h8.c index af2aab3..5b519f8 100644 --- a/src/ec/lenovo/h8/h8.c +++ b/src/ec/lenovo/h8/h8.c @@ -155,16 +155,17 @@ static void h8_enable(device_t dev) if (!get_option(&val, "volume")) ec_write(H8_VOLUME_CONTROL, val);
+ if (get_option(&val, "bluetooth")) + val = 1; + h8_bluetooth_enable(val);
- if (!get_option(&val, "bluetooth")) - h8_bluetooth_enable(val); + if (get_option(&val, "first_battery")) + val = 1;
- if (!get_option(&val, "first_battery")) { - tmp = ec_read(H8_CONFIG3); - tmp &= ~(1 << 4); - tmp |= (val & 1)<< 4; - ec_write(H8_CONFIG3, tmp); - } + tmp = ec_read(H8_CONFIG3); + tmp &= ~(1 << 4); + tmp |= (val & 1) << 4; + ec_write(H8_CONFIG3, tmp); h8_set_audio_mute(0);
#if IS_ENABLED (CONFIG_BOARD_LENOVO_X201) diff --git a/src/ec/lenovo/pmh7/pmh7.c b/src/ec/lenovo/pmh7/pmh7.c index 7bbe471..a8c2951 100644 --- a/src/ec/lenovo/pmh7/pmh7.c +++ b/src/ec/lenovo/pmh7/pmh7.c @@ -113,8 +113,9 @@ static void enable_dev(device_t dev) pmh7_backlight_enable(conf->backlight_enable); pmh7_dock_event_enable(conf->dock_event_enable);
- if (!get_option(&val, "touchpad")) - pmh7_touchpad_enable(val); + if (get_option(&val, "touchpad")) + val = 1; + pmh7_touchpad_enable(val); }
struct chip_operations ec_lenovo_pmh7_ops = {