summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/ec/lenovo/pmh7/pmh7.c12
-rw-r--r--src/ec/lenovo/pmh7/pmh7.h1
-rw-r--r--src/mainboard/lenovo/t60/cmos.layout1
-rw-r--r--src/mainboard/lenovo/x201/cmos.default1
-rw-r--r--src/mainboard/lenovo/x201/cmos.layout1
-rw-r--r--src/mainboard/lenovo/x60/cmos.default1
-rw-r--r--src/mainboard/lenovo/x60/cmos.layout1
7 files changed, 18 insertions, 0 deletions
diff --git a/src/ec/lenovo/pmh7/pmh7.c b/src/ec/lenovo/pmh7/pmh7.c
index 9607c83e52..a4d0ccc466 100644
--- a/src/ec/lenovo/pmh7/pmh7.c
+++ b/src/ec/lenovo/pmh7/pmh7.c
@@ -55,6 +55,14 @@ void pmh7_touchpad_enable(int onoff)
pmh7_register_set_bit(0x51, 2);
}
+void pmh7_trackpoint_enable(int onoff)
+{
+ if (onoff)
+ pmh7_register_clear_bit(0x51, 0);
+ else
+ pmh7_register_set_bit(0x51, 0);
+}
+
void pmh7_ultrabay_power_enable(int onoff)
{
if (onoff)
@@ -116,6 +124,10 @@ static void enable_dev(device_t dev)
if (get_option(&val, "touchpad") != CB_SUCCESS)
val = 1;
pmh7_touchpad_enable(val);
+
+ if (get_option(&val, "trackpoint") != CB_SUCCESS)
+ val = 1;
+ pmh7_trackpoint_enable(val);
}
struct chip_operations ec_lenovo_pmh7_ops = {
diff --git a/src/ec/lenovo/pmh7/pmh7.h b/src/ec/lenovo/pmh7/pmh7.h
index 6e13b17965..4cd9535b7b 100644
--- a/src/ec/lenovo/pmh7/pmh7.h
+++ b/src/ec/lenovo/pmh7/pmh7.h
@@ -35,4 +35,5 @@ void pmh7_backlight_enable(int onoff);
void pmh7_dock_event_enable(int onoff);
void pmh7_touchpad_enable(int onoff);
void pmh7_ultrabay_power_enable(int onoff);
+void pmh7_trackpoint_enable(int onoff);
#endif
diff --git a/src/mainboard/lenovo/t60/cmos.layout b/src/mainboard/lenovo/t60/cmos.layout
index 9017405bba..fb036e0054 100644
--- a/src/mainboard/lenovo/t60/cmos.layout
+++ b/src/mainboard/lenovo/t60/cmos.layout
@@ -113,6 +113,7 @@ entries
1063 1 e 1 wlan
1064 8 h 0 volume
1072 1 e 9 first_battery
+1073 1 e 1 trackpoint
1074 1 e 1 fn_ctrl_swap
1075 1 e 1 sticky_fn
1076 1 e 1 power_management_beeps
diff --git a/src/mainboard/lenovo/x201/cmos.default b/src/mainboard/lenovo/x201/cmos.default
index c0c0d38cdd..29eb509e0b 100644
--- a/src/mainboard/lenovo/x201/cmos.default
+++ b/src/mainboard/lenovo/x201/cmos.default
@@ -10,6 +10,7 @@ bluetooth=Enable
wwan=Enable
wlan=Enable
touchpad=Enable
+trackpoint=Enable
fn_ctrl_swap=Disable
sticky_fn=Disable
power_management_beeps=Enable
diff --git a/src/mainboard/lenovo/x201/cmos.layout b/src/mainboard/lenovo/x201/cmos.layout
index 0f8cfa73e2..6cf3787ddd 100644
--- a/src/mainboard/lenovo/x201/cmos.layout
+++ b/src/mainboard/lenovo/x201/cmos.layout
@@ -91,6 +91,7 @@ entries
413 1 e 1 wwan
414 1 e 1 touchpad
415 1 e 1 wlan
+416 1 e 1 trackpoint
417 1 e 1 fn_ctrl_swap
418 1 e 1 sticky_fn
419 1 e 1 power_management_beeps
diff --git a/src/mainboard/lenovo/x60/cmos.default b/src/mainboard/lenovo/x60/cmos.default
index adbafb54ed..7520d152e6 100644
--- a/src/mainboard/lenovo/x60/cmos.default
+++ b/src/mainboard/lenovo/x60/cmos.default
@@ -13,6 +13,7 @@ tft_brightness=0xff
first_battery=Primary
bluetooth=Enable
wlan=Enable
+trackpoint=Enable
fn_ctrl_swap=Disable
sticky_fn=Disable
power_management_beeps=Enable
diff --git a/src/mainboard/lenovo/x60/cmos.layout b/src/mainboard/lenovo/x60/cmos.layout
index b15f03b65b..469371e415 100644
--- a/src/mainboard/lenovo/x60/cmos.layout
+++ b/src/mainboard/lenovo/x60/cmos.layout
@@ -113,6 +113,7 @@ entries
1081 1 e 1 bluetooth
1082 1 e 1 wwan
1083 1 e 1 wlan
+1084 1 e 1 trackpoint
1085 1 e 1 fn_ctrl_swap
1086 1 e 1 sticky_fn
1087 1 e 1 power_management_beeps