diff options
author | Chris Bainbridge <chris.bainbridge@gmail.com> | 2015-11-12 14:24:47 -0500 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2015-11-16 17:26:45 -0500 |
commit | a76032e0abef027df83f7f053580aa297de54818 (patch) | |
tree | b4fe27fd2d499261ffb4d073cd84f18145b2408d | |
parent | add68d6aa9e2492e51707ca603ada5b26c626757 (diff) |
Revert "ACPI / SBS: Add 5 us delay to fix SBS hangs on MacBook"
Revert commit 3349fb64b292 (ACPI / SBS: Add 5 us delay to fix SBS
hangs on MacBook), since the delay introduced by it is not necessary
any more after commit add68d6aa9e2 (ACPI / SMBus: Fix boot stalls /
high CPU caused by reentrant code).
Signed-off-by: Chris Bainbridge <chris.bainbridge@gmail.com>
[ rjw: Changelog ]
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
-rw-r--r-- | drivers/acpi/sbshc.c | 22 |
1 files changed, 0 insertions, 22 deletions
diff --git a/drivers/acpi/sbshc.c b/drivers/acpi/sbshc.c index e2900518cf7e..2fa8304171e0 100644 --- a/drivers/acpi/sbshc.c +++ b/drivers/acpi/sbshc.c | |||
@@ -14,7 +14,6 @@ | |||
14 | #include <linux/delay.h> | 14 | #include <linux/delay.h> |
15 | #include <linux/module.h> | 15 | #include <linux/module.h> |
16 | #include <linux/interrupt.h> | 16 | #include <linux/interrupt.h> |
17 | #include <linux/dmi.h> | ||
18 | #include "sbshc.h" | 17 | #include "sbshc.h" |
19 | 18 | ||
20 | #define PREFIX "ACPI: " | 19 | #define PREFIX "ACPI: " |
@@ -89,8 +88,6 @@ enum acpi_smb_offset { | |||
89 | ACPI_SMB_ALARM_DATA = 0x26, /* 2 bytes alarm data */ | 88 | ACPI_SMB_ALARM_DATA = 0x26, /* 2 bytes alarm data */ |
90 | }; | 89 | }; |
91 | 90 | ||
92 | static bool macbook; | ||
93 | |||
94 | static inline int smb_hc_read(struct acpi_smb_hc *hc, u8 address, u8 *data) | 91 | static inline int smb_hc_read(struct acpi_smb_hc *hc, u8 address, u8 *data) |
95 | { | 92 | { |
96 | return ec_read(hc->offset + address, data); | 93 | return ec_read(hc->offset + address, data); |
@@ -121,8 +118,6 @@ static int acpi_smbus_transaction(struct acpi_smb_hc *hc, u8 protocol, | |||
121 | 118 | ||
122 | mutex_lock(&hc->lock); | 119 | mutex_lock(&hc->lock); |
123 | hc->done = false; | 120 | hc->done = false; |
124 | if (macbook) | ||
125 | udelay(5); | ||
126 | if (smb_hc_read(hc, ACPI_SMB_PROTOCOL, &temp)) | 121 | if (smb_hc_read(hc, ACPI_SMB_PROTOCOL, &temp)) |
127 | goto end; | 122 | goto end; |
128 | if (temp) { | 123 | if (temp) { |
@@ -250,29 +245,12 @@ extern int acpi_ec_add_query_handler(struct acpi_ec *ec, u8 query_bit, | |||
250 | acpi_handle handle, acpi_ec_query_func func, | 245 | acpi_handle handle, acpi_ec_query_func func, |
251 | void *data); | 246 | void *data); |
252 | 247 | ||
253 | static int macbook_dmi_match(const struct dmi_system_id *d) | ||
254 | { | ||
255 | pr_debug("Detected MacBook, enabling workaround\n"); | ||
256 | macbook = true; | ||
257 | return 0; | ||
258 | } | ||
259 | |||
260 | static struct dmi_system_id acpi_smbus_dmi_table[] = { | ||
261 | { macbook_dmi_match, "Apple MacBook", { | ||
262 | DMI_MATCH(DMI_BOARD_VENDOR, "Apple"), | ||
263 | DMI_MATCH(DMI_PRODUCT_NAME, "MacBook") }, | ||
264 | }, | ||
265 | { }, | ||
266 | }; | ||
267 | |||
268 | static int acpi_smbus_hc_add(struct acpi_device *device) | 248 | static int acpi_smbus_hc_add(struct acpi_device *device) |
269 | { | 249 | { |
270 | int status; | 250 | int status; |
271 | unsigned long long val; | 251 | unsigned long long val; |
272 | struct acpi_smb_hc *hc; | 252 | struct acpi_smb_hc *hc; |
273 | 253 | ||
274 | dmi_check_system(acpi_smbus_dmi_table); | ||
275 | |||
276 | if (!device) | 254 | if (!device) |
277 | return -EINVAL; | 255 | return -EINVAL; |
278 | 256 | ||