diff options
Diffstat (limited to 'drivers/acpi/sleep/main.c')
-rw-r--r-- | drivers/acpi/sleep/main.c | 31 |
1 files changed, 0 insertions, 31 deletions
diff --git a/drivers/acpi/sleep/main.c b/drivers/acpi/sleep/main.c index b45806d77288..244e352f7661 100644 --- a/drivers/acpi/sleep/main.c +++ b/drivers/acpi/sleep/main.c | |||
@@ -61,8 +61,6 @@ static u32 acpi_suspend_states[] = { | |||
61 | [PM_SUSPEND_MAX] = ACPI_STATE_S5 | 61 | [PM_SUSPEND_MAX] = ACPI_STATE_S5 |
62 | }; | 62 | }; |
63 | 63 | ||
64 | static int init_8259A_after_S1; | ||
65 | |||
66 | /** | 64 | /** |
67 | * acpi_suspend_begin - Set the target system sleep state to the state | 65 | * acpi_suspend_begin - Set the target system sleep state to the state |
68 | * associated with given @pm_state, if supported. | 66 | * associated with given @pm_state, if supported. |
@@ -185,13 +183,6 @@ static void acpi_suspend_finish(void) | |||
185 | acpi_set_firmware_waking_vector((acpi_physical_address) 0); | 183 | acpi_set_firmware_waking_vector((acpi_physical_address) 0); |
186 | 184 | ||
187 | acpi_target_sleep_state = ACPI_STATE_S0; | 185 | acpi_target_sleep_state = ACPI_STATE_S0; |
188 | |||
189 | #ifdef CONFIG_X86 | ||
190 | if (init_8259A_after_S1) { | ||
191 | printk("Broken toshiba laptop -> kicking interrupts\n"); | ||
192 | init_8259A(0); | ||
193 | } | ||
194 | #endif | ||
195 | } | 186 | } |
196 | 187 | ||
197 | /** | 188 | /** |
@@ -231,26 +222,6 @@ static struct platform_suspend_ops acpi_suspend_ops = { | |||
231 | .finish = acpi_suspend_finish, | 222 | .finish = acpi_suspend_finish, |
232 | .end = acpi_suspend_end, | 223 | .end = acpi_suspend_end, |
233 | }; | 224 | }; |
234 | |||
235 | /* | ||
236 | * Toshiba fails to preserve interrupts over S1, reinitialization | ||
237 | * of 8259 is needed after S1 resume. | ||
238 | */ | ||
239 | static int __init init_ints_after_s1(const struct dmi_system_id *d) | ||
240 | { | ||
241 | printk(KERN_WARNING "%s with broken S1 detected.\n", d->ident); | ||
242 | init_8259A_after_S1 = 1; | ||
243 | return 0; | ||
244 | } | ||
245 | |||
246 | static struct dmi_system_id __initdata acpisleep_dmi_table[] = { | ||
247 | { | ||
248 | .callback = init_ints_after_s1, | ||
249 | .ident = "Toshiba Satellite 4030cdt", | ||
250 | .matches = {DMI_MATCH(DMI_PRODUCT_NAME, "S4030CDT/4.3"),}, | ||
251 | }, | ||
252 | {}, | ||
253 | }; | ||
254 | #endif /* CONFIG_SUSPEND */ | 225 | #endif /* CONFIG_SUSPEND */ |
255 | 226 | ||
256 | #ifdef CONFIG_HIBERNATION | 227 | #ifdef CONFIG_HIBERNATION |
@@ -472,8 +443,6 @@ int __init acpi_sleep_init(void) | |||
472 | u8 type_a, type_b; | 443 | u8 type_a, type_b; |
473 | #ifdef CONFIG_SUSPEND | 444 | #ifdef CONFIG_SUSPEND |
474 | int i = 0; | 445 | int i = 0; |
475 | |||
476 | dmi_check_system(acpisleep_dmi_table); | ||
477 | #endif | 446 | #endif |
478 | 447 | ||
479 | if (acpi_disabled) | 448 | if (acpi_disabled) |