lkml.org 
[lkml]   [2012]   [Dec]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH v3] Enable A20 using KBC for some MSI laptops to fix S3 resume
Date
On Tuesday 11 December 2012 21:36:46 H. Peter Anvin wrote:
> On 12/11/2012 12:29 PM, Ondrej Zary wrote:
> > Something like this? (It works.)
>
> Something like that. We need to make sure we send the proper sequence,
> though, or it might break some SMM firmware...

Could you please create proper patch? You're the x86 expert (and I'm not).

I've read that 0xd1 command with 0xdf data is often used to enable A20. But I
don't know when this must be done or what else needs to be done for the SMM
to not break.

> > diff --git a/drivers/input/serio/i8042-x86ia64io.h
> > b/drivers/input/serio/i8042-x86ia64io.h index d6cc77a..0807ac7 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,13 @@ 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);
> > #endif /* CONFIG_X86 */
> >
> > return retval;


--
Ondrej Zary


\
 
 \ /
  Last update: 2012-12-11 22:41    [W:0.060 / U:0.060 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site