[coreboot-gerrit] Patch set updated for coreboot: 31959f5 ec/lenovo/h8: Add an option to swap ctrl and fn.

Vladimir Serbinenko (phcoder@gmail.com) gerrit at coreboot.org
Sat Jan 11 21:01:55 CET 2014


Vladimir Serbinenko (phcoder at gmail.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/4660

-gerrit

commit 31959f54cf73200e9c62fdabdcee68e8acbb62cd
Author: Vladimir Serbinenko <phcoder at gmail.com>
Date:   Sat Jan 11 10:29:14 2014 +0100

    ec/lenovo/h8: Add an option to swap ctrl and fn.
    
    Tested on my X201 and X230.
    
    Change-Id: I3c7ec65681157d15c6e87eea64779a08e03ae5a8
    Signed-off-by: Vladimir Serbinenko <phcoder at gmail.com>
---
 src/ec/lenovo/h8/h8.c                  | 12 ++++++++++++
 src/mainboard/lenovo/t60/cmos.layout   |  1 +
 src/mainboard/lenovo/x201/cmos.default |  1 +
 src/mainboard/lenovo/x201/cmos.layout  |  3 ++-
 src/mainboard/lenovo/x60/cmos.default  |  1 +
 src/mainboard/lenovo/x60/cmos.layout   |  1 +
 6 files changed, 18 insertions(+), 1 deletion(-)

diff --git a/src/ec/lenovo/h8/h8.c b/src/ec/lenovo/h8/h8.c
index 4f9d228..409fb05 100644
--- a/src/ec/lenovo/h8/h8.c
+++ b/src/ec/lenovo/h8/h8.c
@@ -62,6 +62,14 @@ static void h8_wwan_enable(int on)
 		ec_clr_bit(0x3a, 6);
 }
 
+static void h8_fn_ctrl_swap(int on)
+{
+	if (on)
+		ec_set_bit(0xce, 4);
+	else
+		ec_clr_bit(0xce, 4);
+}
+
 static void h8_log_ec_version(void)
 {
 	char ecfw[17];
@@ -190,6 +198,10 @@ static void h8_enable(device_t dev)
 
 	h8_wwan_enable(val);
 
+	if (get_option(&val, "fn_ctrl_swap") != CB_SUCCESS)
+		val = 0;
+	h8_fn_ctrl_swap(val);
+
 	if (get_option(&val, "first_battery") != CB_SUCCESS)
 		val = 1;
 
diff --git a/src/mainboard/lenovo/t60/cmos.layout b/src/mainboard/lenovo/t60/cmos.layout
index a179752..10f75c0 100644
--- a/src/mainboard/lenovo/t60/cmos.layout
+++ b/src/mainboard/lenovo/t60/cmos.layout
@@ -112,6 +112,7 @@ entries
 1062         1       e       1        wwan
 1064         8       h       0        volume
 1072         1       e       9        first_battery
+1074         1       e       1        fn_ctrl_swap
 # -----------------------------------------------------------------
 
 enumerations
diff --git a/src/mainboard/lenovo/x201/cmos.default b/src/mainboard/lenovo/x201/cmos.default
index 4577e70..ae57b97 100644
--- a/src/mainboard/lenovo/x201/cmos.default
+++ b/src/mainboard/lenovo/x201/cmos.default
@@ -9,3 +9,4 @@ first_battery=Primary
 bluetooth=Enable
 wwan=Enable
 touchpad=Enable
+fn_ctrl_swap=Disable
diff --git a/src/mainboard/lenovo/x201/cmos.layout b/src/mainboard/lenovo/x201/cmos.layout
index 3959178..f91fb51 100644
--- a/src/mainboard/lenovo/x201/cmos.layout
+++ b/src/mainboard/lenovo/x201/cmos.layout
@@ -90,7 +90,8 @@ entries
 412         1       e       1        bluetooth
 413         1       e       1        wwan
 414         1       e       1        touchpad
-#415        569     r       0        unused
+417         1       e       1        fn_ctrl_swap
+#419        565     r       0        unused
 
 # coreboot config options: check sums
 984         16       h       0        check_sum
diff --git a/src/mainboard/lenovo/x60/cmos.default b/src/mainboard/lenovo/x60/cmos.default
index 5d82ff0..a2620a9 100644
--- a/src/mainboard/lenovo/x60/cmos.default
+++ b/src/mainboard/lenovo/x60/cmos.default
@@ -12,3 +12,4 @@ volume=0x3
 tft_brightness=0xff
 first_battery=Primary
 bluetooth=Enable
+fn_ctrl_swap=Disable
diff --git a/src/mainboard/lenovo/x60/cmos.layout b/src/mainboard/lenovo/x60/cmos.layout
index 45bb95a..9482072 100644
--- a/src/mainboard/lenovo/x60/cmos.layout
+++ b/src/mainboard/lenovo/x60/cmos.layout
@@ -112,6 +112,7 @@ entries
 1080         1       e       9        first_battery
 1081         1       e       1        bluetooth
 1082         1       e       1        wwan
+1085         1       e       1        fn_ctrl_swap
 # -----------------------------------------------------------------
 
 enumerations



More information about the coreboot-gerrit mailing list