[coreboot] [PATCH] ASUS P2B ACPI sleep preparations

Tobias Diedrich ranma+coreboot at tdiedrich.de
Mon Nov 29 22:02:01 CET 2010


Tobias Diedrich wrote:
> Uwe Hermann wrote:
> > > Index: coreboot-svn-p2b/src/arch/i386/boot/acpi.c
> > > ===================================================================
> > > --- coreboot-svn-p2b.orig/src/arch/i386/boot/acpi.c	2010-11-27 11:48:28.000000000 +0100
> > > +++ coreboot-svn-p2b/src/arch/i386/boot/acpi.c	2010-11-27 11:48:41.000000000 +0100
> > > @@ -481,7 +481,7 @@
> > >  
> > >  static int acpi_is_wakeup(void)
> > >  {
> > > -	return (acpi_slp_type == 3);
> > > +	return (acpi_slp_type == 3 || acpi_slp_type == 2);
> > 
> > Can this have negative effects for other ACPI-enabled chipsets/boards?
> 
> No, I grepped the tree and the other chipsets supporting this only
> ever use 3 (S3).  But since S2 is virtually identically to S3 from a
> wakeup perspective I thought adding the acpi_slp_type == 2 check
> would be the right thing to do.
> The other option would be to set acpi_slp_type to 3 even for S2
> wakeup, but then there is not much sense in making it '3' either and
> it could be changed to be a 'is_wakeup_from_sleep' boolean type.

The relevant chipset hits are:
northbridge/intel/i945/northbridge.c:256:extern u8 acpi_slp_type;
northbridge/intel/i945/northbridge.c:263: acpi_slp_type=0;
northbridge/intel/i945/northbridge.c:267: acpi_slp_type=3;
northbridge/intel/i945/northbridge.c:271: acpi_slp_type=0;
southbridge/intel/i82801gx/i82801gx_lpc.c:171:extern u8 acpi_slp_type;
southbridge/via/vt8237r/vt8237r_lpc.c:149:extern u8 acpi_slp_type;
southbridge/via/vt8237r/vt8237r_lpc.c:238:  acpi_slp_type = ((tmp & (7 << 10)) >> 10) == 1 ? 3 : 0 ;
southbridge/via/vt8237r/vt8237r_lpc.c:239:  printk(BIOS_DEBUG, "SLP_TYP type was %x %x\n", tmp, acpi_slp_type);

Interestingly i82801gx_lpc.c has the extern but doesn't use it.

-- 
Tobias						PGP: http://8ef7ddba.uguu.de




More information about the coreboot mailing list