From: Vasily Khoruzhick <anarsoul@gmail.com>
To: Thomas Gleixner <tglx@linutronix.de>,
Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>,
x86@kernel.org, Don Zickus <dzickus@redhat.com>,
Peter Zijlstra <a.p.zijlstra@chello.nl>,
Peter Chubb <peter.chubb@nicta.com.au>,
linux-kernel@vger.kernel.org, stable@kernel.org
Cc: "Uroš Vampl" <mobile.leecher@gmail.com>,
"Vasily Khoruzhick" <anarsoul@gmail.com>
Subject: [PATCH RESEND] Fix reboot regression on Acer Aspire One AOA110
Date: Wed, 2 Nov 2011 16:34:59 +0300 [thread overview]
Message-ID: <1320240899-16889-1-git-send-email-anarsoul@gmail.com> (raw)
From: Uroš Vampl <mobile.leecher@gmail.com>
Starting with kernel 3.0, my Acer Aspire One AOA110 hangs on reboot. Doing
an internet search, I found that in git commit
b49c78d4827be8d7e67e5b94adac6b30a4a9ad14 the machine was made to reboot with
the bios method, but it does not work on most (all?) AOA110s.
This patch introduces new quirks section for machines that only reboot with
the kbd method and put the Aspire One into it.
Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
Signed-off-by: Uroš Vampl <mobile.leecher@gmail.com>
---
arch/x86/kernel/reboot.c | 33 +++++++++++++++++++++++++++++----
1 files changed, 29 insertions(+), 4 deletions(-)
diff --git a/arch/x86/kernel/reboot.c b/arch/x86/kernel/reboot.c
index e334be1..f4544b1 100644
--- a/arch/x86/kernel/reboot.c
+++ b/arch/x86/kernel/reboot.c
@@ -294,8 +294,33 @@ static struct dmi_system_id __initdata reboot_dmi_table[] = {
DMI_MATCH(DMI_BOARD_NAME, "VersaLogic Menlow board"),
},
},
+ { }
+};
+
+static int __init reboot_init(void)
+{
+ dmi_check_system(reboot_dmi_table);
+ return 0;
+}
+core_initcall(reboot_init);
+
+/*
+ * Some machines require the "reboot=k" commandline option,
+ * this quirk makes that automatic.
+ */
+static int __init set_kbd_reboot(const struct dmi_system_id *d)
+{
+ if (reboot_type != BOOT_KBD) {
+ reboot_type = BOOT_KBD;
+ printk(KERN_INFO "%s series board detected. "
+ "Selecting KBD-method for reboots.\n", d->ident);
+ }
+ return 0;
+}
+
+static struct dmi_system_id __initdata kbd_reboot_dmi_table[] = {
{ /* Handle reboot issue on Acer Aspire one */
- .callback = set_bios_reboot,
+ .callback = set_kbd_reboot,
.ident = "Acer Aspire One A110",
.matches = {
DMI_MATCH(DMI_SYS_VENDOR, "Acer"),
@@ -305,12 +330,12 @@ static struct dmi_system_id __initdata reboot_dmi_table[] = {
{ }
};
-static int __init reboot_init(void)
+static int __init kbd_reboot_init(void)
{
- dmi_check_system(reboot_dmi_table);
+ dmi_check_system(kbd_reboot_dmi_table);
return 0;
}
-core_initcall(reboot_init);
+core_initcall(kbd_reboot_init);
extern const unsigned char machine_real_restart_asm[];
extern const u64 machine_real_restart_gdt[3];
--
1.7.7.1
next reply other threads:[~2011-11-02 13:36 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-11-02 13:34 Vasily Khoruzhick [this message]
2011-11-03 1:34 ` Peter Chubb
2011-11-03 6:25 ` Vasily Khoruzhick
2011-11-03 13:35 ` Uros Vampl
2011-11-04 9:53 ` Vasily
2011-11-16 14:49 ` Vasily
2011-12-05 11:20 ` Ingo Molnar
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1320240899-16889-1-git-send-email-anarsoul@gmail.com \
--to=anarsoul@gmail.com \
--cc=a.p.zijlstra@chello.nl \
--cc=dzickus@redhat.com \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=mobile.leecher@gmail.com \
--cc=peter.chubb@nicta.com.au \
--cc=stable@kernel.org \
--cc=tglx@linutronix.de \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome