diff options
Diffstat (limited to 'drivers/platform/x86/ideapad-laptop.c')
-rw-r--r-- | drivers/platform/x86/ideapad-laptop.c | 31 |
1 files changed, 2 insertions, 29 deletions
diff --git a/drivers/platform/x86/ideapad-laptop.c b/drivers/platform/x86/ideapad-laptop.c index fc468a3d95ce..02152de135b5 100644 --- a/drivers/platform/x86/ideapad-laptop.c +++ b/drivers/platform/x86/ideapad-laptop.c | |||
@@ -88,7 +88,6 @@ struct ideapad_private { | |||
88 | struct dentry *debug; | 88 | struct dentry *debug; |
89 | unsigned long cfg; | 89 | unsigned long cfg; |
90 | bool has_hw_rfkill_switch; | 90 | bool has_hw_rfkill_switch; |
91 | bool has_touchpad_control; | ||
92 | }; | 91 | }; |
93 | 92 | ||
94 | static bool no_bt_rfkill; | 93 | static bool no_bt_rfkill; |
@@ -456,7 +455,7 @@ struct ideapad_rfk_data { | |||
456 | int type; | 455 | int type; |
457 | }; | 456 | }; |
458 | 457 | ||
459 | const const struct ideapad_rfk_data ideapad_rfk_data[] = { | 458 | static const struct ideapad_rfk_data ideapad_rfk_data[] = { |
460 | { "ideapad_wlan", CFG_WIFI_BIT, VPCCMD_W_WIFI, RFKILL_TYPE_WLAN }, | 459 | { "ideapad_wlan", CFG_WIFI_BIT, VPCCMD_W_WIFI, RFKILL_TYPE_WLAN }, |
461 | { "ideapad_bluetooth", CFG_BT_BIT, VPCCMD_W_BT, RFKILL_TYPE_BLUETOOTH }, | 460 | { "ideapad_bluetooth", CFG_BT_BIT, VPCCMD_W_BT, RFKILL_TYPE_BLUETOOTH }, |
462 | { "ideapad_3g", CFG_3G_BIT, VPCCMD_W_3G, RFKILL_TYPE_WWAN }, | 461 | { "ideapad_3g", CFG_3G_BIT, VPCCMD_W_3G, RFKILL_TYPE_WWAN }, |
@@ -767,9 +766,6 @@ static void ideapad_sync_touchpad_state(struct ideapad_private *priv) | |||
767 | { | 766 | { |
768 | unsigned long value; | 767 | unsigned long value; |
769 | 768 | ||
770 | if (!priv->has_touchpad_control) | ||
771 | return; | ||
772 | |||
773 | /* Without reading from EC touchpad LED doesn't switch state */ | 769 | /* Without reading from EC touchpad LED doesn't switch state */ |
774 | if (!read_ec_data(priv->adev->handle, VPCCMD_R_TOUCHPAD, &value)) { | 770 | if (!read_ec_data(priv->adev->handle, VPCCMD_R_TOUCHPAD, &value)) { |
775 | /* Some IdeaPads don't really turn off touchpad - they only | 771 | /* Some IdeaPads don't really turn off touchpad - they only |
@@ -833,29 +829,7 @@ static void ideapad_acpi_notify(acpi_handle handle, u32 event, void *data) | |||
833 | * always results in 0 on these models, causing ideapad_laptop to wrongly | 829 | * always results in 0 on these models, causing ideapad_laptop to wrongly |
834 | * report all radios as hardware-blocked. | 830 | * report all radios as hardware-blocked. |
835 | */ | 831 | */ |
836 | static struct dmi_system_id no_hw_rfkill_list[] = { | 832 | static const struct dmi_system_id no_hw_rfkill_list[] = { |
837 | { | ||
838 | .ident = "Lenovo Yoga 2 11 / 13 / Pro", | ||
839 | .matches = { | ||
840 | DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), | ||
841 | DMI_MATCH(DMI_PRODUCT_VERSION, "Lenovo Yoga 2"), | ||
842 | }, | ||
843 | }, | ||
844 | {} | ||
845 | }; | ||
846 | |||
847 | /* | ||
848 | * Some models don't offer touchpad ctrl through the ideapad interface, causing | ||
849 | * ideapad_sync_touchpad_state to send wrong touchpad enable/disable events. | ||
850 | */ | ||
851 | static struct dmi_system_id no_touchpad_ctrl_list[] = { | ||
852 | { | ||
853 | .ident = "Lenovo Yoga 1 series", | ||
854 | .matches = { | ||
855 | DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), | ||
856 | DMI_MATCH(DMI_PRODUCT_VERSION, "Lenovo IdeaPad Yoga"), | ||
857 | }, | ||
858 | }, | ||
859 | { | 833 | { |
860 | .ident = "Lenovo Yoga 2 11 / 13 / Pro", | 834 | .ident = "Lenovo Yoga 2 11 / 13 / Pro", |
861 | .matches = { | 835 | .matches = { |
@@ -889,7 +863,6 @@ static int ideapad_acpi_add(struct platform_device *pdev) | |||
889 | priv->adev = adev; | 863 | priv->adev = adev; |
890 | priv->platform_device = pdev; | 864 | priv->platform_device = pdev; |
891 | priv->has_hw_rfkill_switch = !dmi_check_system(no_hw_rfkill_list); | 865 | priv->has_hw_rfkill_switch = !dmi_check_system(no_hw_rfkill_list); |
892 | priv->has_touchpad_control = !dmi_check_system(no_touchpad_ctrl_list); | ||
893 | 866 | ||
894 | ret = ideapad_sysfs_init(priv); | 867 | ret = ideapad_sysfs_init(priv); |
895 | if (ret) | 868 | if (ret) |