* [GIT PULL] Additional x86 fixes for v3.8-rc1
@ 2012-12-19 20:22 H. Peter Anvin
2012-12-19 21:02 ` Linus Torvalds
0 siblings, 1 reply; 3+ messages in thread
From: H. Peter Anvin @ 2012-12-19 20:22 UTC (permalink / raw)
To: Linus Torvalds
Cc: stable, Alan Cox, Dmitry Torokhov, Eric W. Biederman,
H. Peter Anvin, H. Peter Anvin, Ingo Molnar,
Linux Kernel Mailing List, Michael Brown, Ondrej Zary,
Rafael J. Wysocki, Thomas Gleixner, Yinghai Lu
Hi Linus,
A collection of very small fixes, mostly pure documentation.
The following changes since commit 29594404d7fe73cd80eaa4ee8c43dcc53970c60e:
Linux 3.7 (2012-12-10 19:30:57 -0800)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git x86-urgent-for-linus
The head of this tree is cd34ab8b16ffaa9753d85adb4fb6cd98e7e1d22a.
H. Peter Anvin (2):
x86, doc: Add a formal bootloader ID for kexec-tools
x86, doc: Document that bootloader ID 4 is used also by iPXE
Ondrej Zary (1):
x86, 8042: Enable A20 using KBC to fix S3 resume on some MSI laptops
Documentation/x86/boot.txt | 3 ++-
drivers/input/serio/i8042-x86ia64io.h | 9 +++++++++
2 files changed, 11 insertions(+), 1 deletion(-)
diff --git a/Documentation/x86/boot.txt b/Documentation/x86/boot.txt
index 9efceff..9a89e01 100644
--- a/Documentation/x86/boot.txt
+++ b/Documentation/x86/boot.txt
@@ -373,7 +373,7 @@ Protocol: 2.00+
1 Loadlin
2 bootsect-loader (0x20, all other values reserved)
3 Syslinux
- 4 Etherboot/gPXE
+ 4 Etherboot/gPXE/iPXE
5 ELILO
7 GRUB
8 U-Boot
@@ -381,6 +381,7 @@ Protocol: 2.00+
A Gujin
B Qemu
C Arcturus Networks uCbootloader
+ D kexec-tools
E Extended (see ext_loader_type)
F Special (0xFF = undefined)
10 Reserved
diff --git a/drivers/input/serio/i8042-x86ia64io.h b/drivers/input/serio/i8042-x86ia64io.h
index d6cc77a..5f306f7 100644
--- a/drivers/input/serio/i8042-x86ia64io.h
+++ b/drivers/input/serio/i8042-x86ia64io.h
@@ -921,6 +921,7 @@ static int __init i8042_platform_init(void)
int retval;
#ifdef CONFIG_X86
+ u8 a20_on = 0xdf;
/* Just return if pre-detection shows no i8042 controller exist */
if (!x86_platform.i8042_detect())
return -ENODEV;
@@ -960,6 +961,14 @@ static int __init i8042_platform_init(void)
if (dmi_check_system(i8042_dmi_dritek_table))
i8042_dritek = true;
+
+ /*
+ * A20 was already enabled during early kernel init. But some buggy
+ * BIOSes (in MSI Laptops) require A20 to be enabled using 8042 to
+ * resume from S3. So we do it here and hope that nothing breaks.
+ */
+ i8042_command(&a20_on, 0x10d1);
+ i8042_command(NULL, 0x00ff); /* Null command for SMM firmware */
#endif /* CONFIG_X86 */
return retval;
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [GIT PULL] Additional x86 fixes for v3.8-rc1
2012-12-19 20:22 [GIT PULL] Additional x86 fixes for v3.8-rc1 H. Peter Anvin
@ 2012-12-19 21:02 ` Linus Torvalds
2012-12-19 21:33 ` H. Peter Anvin
0 siblings, 1 reply; 3+ messages in thread
From: Linus Torvalds @ 2012-12-19 21:02 UTC (permalink / raw)
To: H. Peter Anvin
Cc: stable, Alan Cox, Dmitry Torokhov, Eric W. Biederman,
H. Peter Anvin, Ingo Molnar, Linux Kernel Mailing List,
Michael Brown, Ondrej Zary, Rafael J. Wysocki, Thomas Gleixner,
Yinghai Lu
On Wed, Dec 19, 2012 at 12:22 PM, H. Peter Anvin <hpa@linux.intel.com> wrote:
> x86, 8042: Enable A20 using KBC to fix S3 resume on some MSI laptops
Christ really? What century are we in? There are still machines that
have A20 disabled at all, much less externally? How do they even do
that these days, afaik the CPU caches can't handle the fake aliasing
anyway..
Anyway, pulled, I just wanted to express my surprise..
Linus
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [GIT PULL] Additional x86 fixes for v3.8-rc1
2012-12-19 21:02 ` Linus Torvalds
@ 2012-12-19 21:33 ` H. Peter Anvin
0 siblings, 0 replies; 3+ messages in thread
From: H. Peter Anvin @ 2012-12-19 21:33 UTC (permalink / raw)
To: Linus Torvalds, H. Peter Anvin
Cc: stable, Alan Cox, Dmitry Torokhov, Eric W. Biederman,
Ingo Molnar, Linux Kernel Mailing List, Michael Brown,
Ondrej Zary, Rafael J. Wysocki, Thomas Gleixner, Yinghai Lu
Well, A20 has been done inside the caches since 486, usually in the TLB. Nehalem finally killed off A20M.
You're not the only one surprised by this...
Linus Torvalds <torvalds@linux-foundation.org> wrote:
>On Wed, Dec 19, 2012 at 12:22 PM, H. Peter Anvin <hpa@linux.intel.com>
>wrote:
>> x86, 8042: Enable A20 using KBC to fix S3 resume on some MSI
>laptops
>
>Christ really? What century are we in? There are still machines that
>have A20 disabled at all, much less externally? How do they even do
>that these days, afaik the CPU caches can't handle the fake aliasing
>anyway..
>
>Anyway, pulled, I just wanted to express my surprise..
>
> Linus
--
Sent from my mobile phone. Please excuse brevity and lack of formatting.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2012-12-19 21:34 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-12-19 20:22 [GIT PULL] Additional x86 fixes for v3.8-rc1 H. Peter Anvin
2012-12-19 21:02 ` Linus Torvalds
2012-12-19 21:33 ` H. Peter Anvin
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®