aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/platform/x86/dell-laptop.c
diff options
context:
space:
mode:
authorHans de Goede <hdegoede@redhat.com>2013-11-17 08:00:17 -0500
committerMatthew Garrett <matthew.garrett@nebula.com>2013-11-20 18:50:48 -0500
commit2a92551845bbbc8421ba908cd14bbdf065e0f454 (patch)
tree44d7ec9367909a9acc5562a12c3a783bd6fb7c56 /drivers/platform/x86/dell-laptop.c
parent4cc8a57425c623753b10b77b15392e5b83baa5a3 (diff)
dell-laptop: Only enable rfkill on Latitudes
The rfkill functionality was removed from the dell-laptop driver because it was causing problems on various non Latitude models, and the blacklist kept growing and growing. In the thread discussing this Dell mentioned that they only QA the rfkill acpi interface on Latitudes and indeed there have been no blacklist entries for Latitudes. Note that the blacklist contained no Vostros either, and most Vostros have a hardware switch too, so we could consider supporting Vostros with a hardware switch too. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
Diffstat (limited to 'drivers/platform/x86/dell-laptop.c')
-rw-r--r--drivers/platform/x86/dell-laptop.c57
1 files changed, 7 insertions, 50 deletions
diff --git a/drivers/platform/x86/dell-laptop.c b/drivers/platform/x86/dell-laptop.c
index 55f75a2d5168..bae932b60bab 100644
--- a/drivers/platform/x86/dell-laptop.c
+++ b/drivers/platform/x86/dell-laptop.c
@@ -119,53 +119,6 @@ static const struct dmi_system_id dell_device_table[] __initconst = {
119}; 119};
120MODULE_DEVICE_TABLE(dmi, dell_device_table); 120MODULE_DEVICE_TABLE(dmi, dell_device_table);
121 121
122static struct dmi_system_id dell_blacklist[] = {
123 /* Supported by compal-laptop */
124 {
125 .ident = "Dell Mini 9",
126 .matches = {
127 DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
128 DMI_MATCH(DMI_PRODUCT_NAME, "Inspiron 910"),
129 },
130 },
131 {
132 .ident = "Dell Mini 10",
133 .matches = {
134 DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
135 DMI_MATCH(DMI_PRODUCT_NAME, "Inspiron 1010"),
136 },
137 },
138 {
139 .ident = "Dell Mini 10v",
140 .matches = {
141 DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
142 DMI_MATCH(DMI_PRODUCT_NAME, "Inspiron 1011"),
143 },
144 },
145 {
146 .ident = "Dell Mini 1012",
147 .matches = {
148 DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
149 DMI_MATCH(DMI_PRODUCT_NAME, "Inspiron 1012"),
150 },
151 },
152 {
153 .ident = "Dell Inspiron 11z",
154 .matches = {
155 DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
156 DMI_MATCH(DMI_PRODUCT_NAME, "Inspiron 1110"),
157 },
158 },
159 {
160 .ident = "Dell Mini 12",
161 .matches = {
162 DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
163 DMI_MATCH(DMI_PRODUCT_NAME, "Inspiron 1210"),
164 },
165 },
166 {}
167};
168
169static struct dmi_system_id dell_quirks[] = { 122static struct dmi_system_id dell_quirks[] = {
170 { 123 {
171 .callback = dmi_matched, 124 .callback = dmi_matched,
@@ -579,11 +532,15 @@ static int __init dell_setup_rfkill(void)
579{ 532{
580 int status; 533 int status;
581 int ret; 534 int ret;
535 const char *product;
582 536
583 if (dmi_check_system(dell_blacklist)) { 537 /*
584 pr_info("Blacklisted hardware detected - not enabling rfkill\n"); 538 * rfkill causes trouble on various non Latitudes, according to Dell
539 * actually testing the rfkill functionality is only done on Latitudes.
540 */
541 product = dmi_get_system_info(DMI_PRODUCT_NAME);
542 if (!product || strncmp(product, "Latitude", 8))
585 return 0; 543 return 0;
586 }
587 544
588 get_buffer(); 545 get_buffer();
589 dell_send_request(buffer, 17, 11); 546 dell_send_request(buffer, 17, 11);