[PATCH] Quirk to fix suspend/resume on Lenovo Edge 11,13,14,15
Stefan Bader
stefan.bader at canonical.com
Fri Jan 14 20:33:12 UTC 2011
On 01/14/2011 02:17 PM, Manoj Iyer wrote:
> Set acpi_skip_timer_override to force ignoring BIOS
> IRQ0 pin2 override. This fixes resume from suspend on
> AMD based ThinkPad Edge 11,13,14 and 15.
>
> Please note that with this patch applied, you will see
> a warning message from the kernel, this is printed in acpi/boot.c
> before it sets acpi_skip_timer_override=1;
>
> [ 0.000000] ------------[ cut here ]------------
> [ 0.000000] WARNING: at /home/manjo/ubuntu-maverick-674710/arch/x86/kernel/acpi/boot.c:1345 dmi_ignore_irq0_timer_override+0x2e/0x52()
> [ 0.000000] Hardware name: 254523U
> [ 0.000000] ati_ixp4x0 quirk not complete.
> [ 0.000000] Modules linked in:
> [ 0.000000] Pid: 0, comm: swapper Not tainted 2.6.35-25-generic #43
> [ 0.000000] Call Trace:
> [ 0.000000] [<c014ad42>] warn_slowpath_common+0x72/0xa0
> [ 0.000000] [<c0826724>] ? dmi_ignore_irq0_timer_override+0x2e/0x52
> [ 0.000000] [<c0826724>] ? dmi_ignore_irq0_timer_override+0x2e/0x52
> [ 0.000000] [<c014ae13>] warn_slowpath_fmt+0x33/0x40
> [ 0.000000] [<c0826724>] dmi_ignore_irq0_timer_override+0x2e/0x52
> [ 0.000000] [<c04dd7d0>] dmi_check_system+0x30/0x50
> [ 0.000000] [<c0826df4>] acpi_boot_table_init+0x10/0x7d
> [ 0.000000] [<c0821ea7>] ? io_delay_init+0x16/0x18
> [ 0.000000] [<c081f556>] setup_arch+0x562/0x645
> [ 0.000000] [<c012cf19>] ? default_spin_lock_flags+0x9/0x10
> [ 0.000000] [<c081b57b>] start_kernel+0xcf/0x374
> [ 0.000000] [<c081b0d7>] i386_start_kernel+0xd7/0xdf
> [ 0.000000] ---[ end trace a7919e7f17c0a725 ]---
> [ 0.000000] ThinkPad Edge detected: Ignoring BIOS IRQ0 pin2 override
>
> Signed-off-by: Manoj Iyer <manoj.iyer at canonical.com>
>
> BugLink: http://launchpad.net/bugs/702434
> ---
> arch/x86/kernel/acpi/boot.c | 36 ++++++++++++++++++++++++++++++++++++
> 1 files changed, 36 insertions(+), 0 deletions(-)
>
> diff --git a/arch/x86/kernel/acpi/boot.c b/arch/x86/kernel/acpi/boot.c
> index 71232b9..b0caeb5 100644
> --- a/arch/x86/kernel/acpi/boot.c
> +++ b/arch/x86/kernel/acpi/boot.c
> @@ -1451,6 +1451,42 @@ static struct dmi_system_id __initdata acpi_dmi_table[] = {
> DMI_MATCH(DMI_PRODUCT_NAME, "TravelMate 360"),
> },
> },
> + /* ThinkPad Edge 11 (AMD) */
> + {
> + .callback = dmi_ignore_irq0_timer_override,
> + .ident = "ThinkPad Edge",
> + .matches = {
> + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
> + DMI_MATCH(DMI_PRODUCT_NAME, "254523U"),
> + },
> + },
> + /* ThinkPad Edge 13 (AMD) */
> + {
> + .callback = dmi_ignore_irq0_timer_override,
> + .ident = "ThinkPad Edge",
> + .matches = {
> + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
> + DMI_MATCH(DMI_PRODUCT_NAME, "022120U"),
> + },
> + },
> + /* ThinkPad Edge 14 (AMD) */
> + {
> + .callback = dmi_ignore_irq0_timer_override,
> + .ident = "ThinkPad Edge",
> + .matches = {
> + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
> + DMI_MATCH(DMI_PRODUCT_NAME, "019923U"),
> + },
> + },
> + /* ThinkPad Edge 15 (AMD) */
> + {
> + .callback = dmi_ignore_irq0_timer_override,
> + .ident = "ThinkPad Edge",
> + .matches = {
> + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
> + DMI_MATCH(DMI_PRODUCT_NAME, "030222U"),
> + },
> + },
> {}
> };
>
Is there a difference to the last patch you took back yourself?
More information about the kernel-team
mailing list