From owner-acpi-jp@jp.freebsd.org  Fri Mar 17 10:49:33 2000
Received: (from daemon@localhost)
	by castle.jp.freebsd.org (8.9.3+3.2W/8.7.3) id KAA11654;
	Fri, 17 Mar 2000 10:49:33 +0900 (JST)
	(envelope-from owner-acpi-jp@jp.FreeBSD.org)
Received: from funasoul.funa.org (funasoul.rad.cc.keio.ac.jp [131.113.16.122])
	by castle.jp.freebsd.org (8.9.3+3.2W/8.7.3) with SMTP id KAA11649
	for <acpi-jp@jp.freebsd.org>; Fri, 17 Mar 2000 10:49:32 +0900 (JST)
	(envelope-from funa@funa.org)
Received: (qmail 988 invoked from network); 17 Mar 2000 01:49:27 -0000
Received: from localhost (127.0.0.1)
  by localhost with SMTP; 17 Mar 2000 01:49:27 -0000
To: acpi-jp@jp.freebsd.org
In-Reply-To: <200003162030.FAA28463@tasogare.imasy.or.jp>
References: <20000317035855J.funa@funa.org>
	<200003162030.FAA28463@tasogare.imasy.or.jp>
X-Mailer: Mew version 1.94.2 on Emacs 20.6 / Mule 4.0 (HANANOEN)
Mime-Version: 1.0
Content-Type: Multipart/Mixed;
 boundary="--Next_Part(Fri_Mar_17_10:47:38_2000_518)--"
Content-Transfer-Encoding: 7bit
Message-Id: <20000317104927Z.funa@funa.org>
Date: Fri, 17 Mar 2000 10:49:27 +0900
From: Akira Funahashi <funa@funa.org>
X-Dispatcher: imput version 20000228(IM140)
Lines: 2246
Reply-To: acpi-jp@jp.freebsd.org
Precedence: list
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+000315
X-Sequence: acpi-jp 276
Subject: [acpi-jp 276] Re: fxp0 on Z505NR (suspend -> resume)
Errors-To: owner-acpi-jp@jp.freebsd.org
Sender: owner-acpi-jp@jp.freebsd.org
X-Originator: funa@funa.org

----Next_Part(Fri_Mar_17_10:47:38_2000_518)--
Content-Type: Text/Plain; charset=iso-2022-jp
Content-Transfer-Encoding: 7bit

$B=.66$G$9(B.

# acpi-jp $B$KAw$i$;$F$$$?$@$-$^$9(B.

  Mitsuru IWASAKI <iwasaki@jp.freebsd.org>
$B!?!1!1!1!1!1!1!1!1!1!1!1!1!1!1!1!1!1!1!1!1!1!1(B
> $B?gL2Cf$J$N$G<jC;$K(B...

$BCzG+$J2r@b$r$I$&$b$"$j$,$H$&$4$6$$$^$9(B.

> funa> $B$=$3$G(B http://home.jp.FreeBSD.ORG/cgi-bin/showmail/acpi-jp/40 $B$r(B
> funa> $B;29M$K$7$F(B Z505NR $B$N(B DSDT $B$H(B ASL $B$r<h$C$F$_$^$7$?(B.
> 
> $B$<$RAw$C$F$/$@$5$$$^$;(B :-)

$B$O$$(B. $B$G$O(B,$B$3$N%a!<%k$K(B DSDT $B$H(B ASL $B$rE:IUCW$7$^$9(B.

> funa> $B$7$+$7(B, ASL $B$N9T$J$C$F$$$k$3$H$,$5$C$Q$j$o$+$i$:(B,
> funa> $B6qBNE*$K%3!<%I$K$9$k$3$H$,=PMh$:(B,$B<j5M$j$H$J$C$F$7$^$$$^$7$?(B.
> 
> $B$=$&$$$&>l9g$O!"(BACPI/util/acpiconf/ $B$G(B make $B$7$F(B AML $B%$%s%?%W%j%?$N(B
> $B%G%P%C%,$G(B DSDT $B$r2r<a$5$;$F$_$k$H2?$r$7$?$i$$$$$+!"(Bhardware spec $B$,L5$/$F$b(B
> $B$J$s$H$J$/$o$+$k$G$9!#(BZ505D.dsdt.dat $B$rNc$K%G%P%C%,$r<B9T$5$;$?Nc$G$9!#(B
> $BBP>]$N%a%=%C%I$O(B _SB.PCI0.ETHR._PS0 $B$H$7$^$9!#(B

$B>\$7$$6qBNNc$r$I$&$b$"$j$,$H$&$4$6$$$^$9(B. 
$B$5$C$=$/(B ACPI/util/acpiconf/ $B0J2<$r;}$C$F$-$F(B make $B$7$F$_$^$7$?(B.
/usr/include/machine/pc/acpi.h $B$,L5$$$H(B make $B$G$-$J$+$C$?$N$G(B
$B$H$j$"$($:$=$l$@$1;}$C$F$-$F(B 4-current (20000220-JPSNAP)$B$G(B
make $B$7$^$7$?(B. $B$G$9$,(B...

% ./acpiconf -f Z505NR.dsdt.dat 
      :
      _TSP  Num:0x32
AML>r _SB.PCI0.ETHR._PS0
Method: Arg 0 From 0x280fe44b To 0x280fe49a
==== Running _SB.PCI0.ETHR._PS0. ====
AML>s
[\_SB.PCI0.ETHR._PS0. START]
Store(0x0, ETE0)[write(From2, 0x0, 0xe0)]
[acpi_region_write(2, 3, 0x0, 0x0, 0x700, 0x8)]
acpiconf: region.ini: No such file or directory
	[2:0x00@0xe0]->[2:0x00@0xe0]

AML>
If(LEqual(SCMP(\_OSTOO MANY LOOP
, )
[\SCMP. START]
Store(S2BF(Arg0)
[\S2BF. START]
Add(SLEN(Arg0)
[\SLEN. START]
zsh: segmentation fault (core dumped)  ./acpiconf -f Z505NR.dsdt.dat

$B$H(B,$B%9%F%C%W<B9T$G(B core dump $B$7$F$7$^$$$^$7$?(B.
AML>r _SB.PCI0.ETHR._PS0
$B$N<B9T;~$K!V(Bregion.ini $B$,L5$$!W$H8@$o$l$F$$$k$N$,5$$K$J$j$^$9(B.
$B$3$l$@$1$G$O$J$s$J$N$G(B,

> $B$H$$$&$o$1$GNc$($P!"(BStore(0x4208, ET0C) $B$N>l9g$O(B [write(From2, 0x4208, 0xc)]
> $B$H$+$K$J$C$F$$$k$N$G!"(Bpci_cfgwrite(config_id, 0xc, 0x4208, 2) $B$0$i$$(B?
> $B$3$&$$$&=hM}$r(B resume $B;~$K$d$k$s$@$H;W$$$^$9!#(B

$B$r8+$h$&8+$^$M$G;n$7$F$_$^$7$?(B.
/sys/pci/if_fxp.c $B$N(B static device_method_t fxp_methods[] $B$K(B

DEVMETHOD(device_resume,  fxp_resume),

$B$rDI2C$7(B, Z505NR.asl $B$N(B Device(ETHR) $BItJ,$N(B Method(_PS0) $B$NMM$K(B

static int
fxp_resume(device_t dev)
{
    printf("fxp_resume()\n");
    pci_write_config(dev, 0xe0, 0x00, 1);
    pci_write_config(dev, 0x04, 0x17, 1);
    pci_write_config(dev, 0x0c, 0x4208, 2);
    pci_write_config(dev, 0xe1, 0x41, 1);
    return 0;
}

$B$H$$$&4X?t$r2C$($F$_$?$N$G$9$,(B, fxp_resume() $B$,(B resume $B;~$K(B
$B8F$P$l$kA0$K(B,$B%O%s%0%"%C%W$7$F$7$^$$$^$9(B.

/sys/pci/*.c $B$r8+$k$H(B pci_cfgwrite $B$rMxMQ$7$F$$$k>l9g$H(B
pci_write_config $B$rMxMQ$7$F$$$k>l9g$H$,$"$j$^$A$^$A$J$N$G$9$,(B,
$B$3$l$i$N5sF0$OF1$8$H9M$($F$$$$$b$N$J$N$G$7$g$&$+(B?

# if_fxp.c $B$G$O(B config_id $B$rMxMQ$7$F$$$J$$$N$G0BD>$K(B
# pci_write_config() $B$r;H$C$F$7$^$C$?$N$G$9$,(B...

> $B@'Hs!"3+H/$K;22C$7$F$/$@$5$$(B!
> $B$^$:$O!"(Bhttp://www.teleport.com/~acpi/spec.htm $B$+$i(B Spec $B$r;}$C$F$-$F(B
> 7.2 Device Power Management Objects $B$"$?$j$+$iFI$`$H$$$$$H;W$$$^$9!#(B

$B3+H/$K;22C$G$-$k$[$I$NG=NO$,$"$k$H$O;W$($^$;$s$,(B,
$B$5$C$=$/(B Spec $B$r;}$C$F$-$^$7$?(B.
$B%P%$%H@h$G%W%j%s%H%"%&%H$7$FFI$b$&$H;W$C$?$N$G$9$,(B,
323$B%Z!<%8$b$"$k$s$G$9$M(B...

$B$H$j$"$($:FI$s$G$_$^$9(B. $B$I$&$b$"$j$,$H$&$4$6$$$^$7$?(B.
-- 
Akira Funahashi/$B=.66(B $B7<(B
[funa@funa.org]


----Next_Part(Fri_Mar_17_10:47:38_2000_518)--
Content-Type: Text/Plain; charset=unknown
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="Z505NR.dsdt.dat"

EBJfUFJfW4MLQ1BVMAAQgAAABghfUzBfEg0KBA0KBQ0KBQ0KAA0KAAhfUzFfEg0KBA0KBA0KBA0K
AA0KAAhfUzNfEg0KBA0KAQ0KAQ0KAA0KAAhfUzRfEg0KBA0KAA0KAA0KAA0KAAhfUzVfEg0KBA0K
AA0KAA0KAA0KAFuAR1BPXwELNIANCgRbgUcNCkdQT18DR08wMAFHTzAxAUdPMDIBR08wMwFHTzA0
AUdPMDUBR08wNgFHTzA3AUdPMDgBR08wOQFHTzEwAUdPMTEBR08xMgFHTzEzAUdPMTQBR08xNQFH
TzE2AUdPMTcBR08xOAFHTzE5AUdPMjABR08yMQFHTzIyAUdPMjMBR08yNAFHTzI1AUdPMjYBR08y
NwFHTzI4AUdPMjkBR08zMAFHTzMxAVuAR0xCTAELKIANCgRbgQ9HTEJMAwAYAAFMUE9MAVuAU01J
MAAMp/v/DwwVBAAAW4EXU01JMABCQ01ECERJRF8gSU5GT4AAAVuBDVNNSTAAAChJTkZCCFuBDVNN
STAAAChJTkZEIFuBD1NNSTAAAChTWEJGgAgCW4BTTUkxAQxAgAAADAIAAABbgQtTTUkxAFNNSUMI
WwFNUEhTABQhUEhTMAFwaEJDTURwAFNNSUOiB5NCQ01EaHANCgBCQ01EFChQSFNfCVsjTVBIU///
cA0KAERJRF9QSFMwaHBJTkZEYFsnTVBIU6RgFC5QSFNEDQpbI01QSFP//3ANCgBESURfcGlJTkZE
UEhTMGhwSU5GRGBbJ01QSFOkYBQuUEhTQg0KWyNNUEhT//9wDQoARElEX3BpSU5GQlBIUzBocElO
RkJgWydNUEhTpGAUKFBTQ1MJWyNNUEhT//9waERJRF9QSFMwDQoAcElORk9gWydNUEhTpGAUJlBT
U1MNClsjTVBIU///cGhESURfcGlJTkZPUEhTMA0KAVsnTVBIUxQoUFNQUwlbI01QSFP//3BoRElE
X1BIUzANCgJwSU5GT2BbJ01QSFOkYBQgUFNESQlbI01QSFP//3BoRElEX1BIUzANCgNbJ01QSFMU
KFBTU1QJWyNNUEhT//9waERJRF9QSFMwDQoEcElORkJgWydNUEhTpGAQSARcX0dQRRQTX0wwQgCG
XC5fU0JfUFdSQg0KAhQTX0wwQQCGXC5fU0JfUENJMA0KAhQYX0wwOACGXC8DX1NCX1BDSTBVU0Iw
DQoCFBFNSU5fAqAGlWhppGihA6RpFAlTTEVOAaSHaBQhUzJCRglyU0xFTmgBYAhCVUZGEQJgcGhC
VUZGpEJVRkYURwZTQ01QAnBTMkJGaGBwUzJCRmlhcABkcFNMRU5oZXBTTEVOaWZwTUlOX2VmZ6Ik
lWRncIOIYGQAYnCDiGFkAGOgBpRiY6QBoQigBpViY6T/dWSgBpVkZaQBoQygBpVkZqT/oQOkABRG
CV9QVFMBoBiSlWgNCgJwDQoBXC8DX1NCX1BDSTBDUlNUoRNwDQoAXC8DX1NCX1BDSTBDUlNUoE4F
k2gNCgRwXC8FX1NCX1BDSTBJU0FfU1BJQ19DUlNcLwVfU0JfUENJMElTQV9TUElDU1NSQ6Aok1ND
TVBcX09TXw1NaWNyb3NvZnQgV2luZG93cyBOVAAAUEhTXw0K46QNCgAQiwkCX1NCX1uCJVBXUkII
X0hJRAxB0AwMCF9QUlcSBgINCgsNCgQUCV9TVEEApA0KD1uCiwYCUENJMAhfSElEDEHQDQoDW4BC
WFJTAg0Keg0KAVuBDUJYUlMBQ1JTVAEAB1uCNEgyUEIIX0FEUg0KAFuATlJCUgINCgALAAFbgRpO
UkJSAwBIKAABQUFHRQEARi8AB0dURU4BW4JHBlZJRDAIX0FEUgwAAAEACF9QU0MNCgAUCV9TVEEA
pA0KDxQ3X1BTMABwAFwvBF9TQl9QQ0kwSDJQQkFBR0VwAFwvBF9TQl9QQ0kwSDJQQkdURU5wDQoA
X1BTQxQNX1BTMwBwDQoDX1BTQwhfQURSDQoACF9QUlQSQwsLEg8EDP//AQANCgBMTktBDQoAEg8E
DP//AQANCgFMTktCDQoAEg8EDP//AQANCgJMTktDDQoAEg8EDP//AQANCgNMTktEDQoAEg8EDP//
BwANCgNMTktEDQoAEg8EDP//CAANCgBMTktEDQoAEg8EDP//CQANCgBMTktDDQoAEg8EDP//DQoA
DQoATE5LQg0KABIPBAz//wsADQoATE5LQQ0KABIPBAz//wwADQoATE5LQg0KABIPBAz//w0ADQoA
TE5LQg0KAFuAUkVHUwINCkANCsBbgUkGUkVHUwMASAxQQU0wCFBBTTEIUEFNMghQQU0zCFBBTTQI
UEFNNQhQQU02CERSQjAIRFJCMQhEUkIyCERSQjMIRFJCNAhEUkI1CERSQjYIRFJCNwgABkhFTl8C
AEAFVF9FTgFUX1NaAghSU1JDEUcdC9IBiA4AAgwAAAAAAP8AAAAAAQCHGAAADAMAAAAAAAANCgD/
/wsAAAAAAAAAAgAAhxgAAAwDAAAAAAAADAD/PwwAAAAAAABAAAAAhxgAAAwDAAAAAABADAD/fwwA
AAAAAABAAAAAhxgAAAwDAAAAAACADAD/vwwAAAAAAABAAAAAhxgAAAwDAAAAAADADAD//wwAAAAA
AABAAAAAhxgAAAwDAAAAAAAADQD/Pw0AAAAAAABAAAAAhxgAAAwDAAAAAABADQD/fw0AAAAAAABA
AAAAhxgAAAwDAAAAAACADQD/vw0AAAAAAABAAAAAhxgAAAwDAAAAAADADQD//w0AAAAAAABAAAAA
hxgAAAwDAAAAAAAADgD/Pw4AAAAAAABAAAAAhxgAAAwDAAAAAABADgD/fw4AAAAAAABAAAAAhxgA
AAwDAAAAAACADgD/vw4AAAAAAABAAAAAhxgAAAwDAAAAAADADgD//w4AAAAAAABAAAAAhxgAAAwD
AAAAAAAAAAAAAAAAAAAAAAAAAAAAhxgAAAwDAAAAAAAAAAAAAAAAAAAAAAAAAAAARwH4DPgMAQiI
DgABDAMAAAAA9wwAAPgMAIgOAAEMAwAAAA3//wAAAPMAeQAUQlVfQ1JTCHAAYaARVF9FTnkNCgFy
VF9TWg0KEQBhilJTUkMLegFCVE1OilJTUkMLfgFCVE1YilJTUkMLhgFCVExOd0RSQjcMAACAAGCg
IFRfRU50YGFicGJCVE1OdHJgDAAAABAAQlRNTkJUTE6hI3BgQlRNTnQMAADg/2BCVExOdHJCVE1O
QlRMTgANCgFCVE1YilJTUkMLlQFBVE1OilJTUkMLmQFBVE1YilJTUkMLoQFBVExOoDRUX0VOcnJC
VE1OQlRMTgBhQVRNTnQMAADg/0FUTU5BVExOdHJBVE1OQVRMTgANCgFBVE1YoQdwAEFUTE6NUlNS
QwuIAUMwUleKUlNSQw0KNkMwTU6KUlNSQw0KOkMwTViKUlNSQw0KQkMwTE5wAUMwUlegEpN7UEFN
MQ0KAwANCgFwAEMwUldwAEMwTE6gEpJ7UEFNMQ0KAwBwCwBAQzBMTo1SU1JDC2ACQzRSV4pSU1JD
DQpRQzRNTopSU1JDDQpVQzRNWIpSU1JDDQpdQzRMTnABQzRSV6ASk3tQQU0xDQowAA0KEHAAQzRS
V3AAQzRMTqASkntQQU0xDQowAHALAEBDNExOjVJTUkMLOANDOFJXilJTUkMNCmxDOE1OilJTUkMN
CnBDOE1YilJTUkMNCnhDOExOcAFDOFJXoBKTe1BBTTINCgMADQoBcABDOFJXcABDOExOoBKSe1BB
TTINCgMAcAsAQEM4TE6NUlNSQwsQBENDUleKUlNSQw0Kh0NDTU6KUlNSQw0Ki0NDTViKUlNSQw0K
k0NDTE5wAUNDUlegEpN7UEFNMg0KMAANChBwAENDUldwAENDTE6gEpJ7UEFNMg0KMABwCwBAQ0NM
To1SU1JDC+gERDBSV4pSU1JDDQqiRDBNTopSU1JDDQqmRDBNWIpSU1JDDQquRDBMTnABRDBSV6AS
k3tQQU0zDQoDAA0KAXAARDBSV3AARDBMTqASkntQQU0zDQoDAHALAEBEMExOjVJTUkMLwAVENFJX
ilJTUkMNCr1ENE1OilJTUkMNCsFENE1YilJTUkMNCslENExOcAFENFJXoBKTe1BBTTMNCjAADQoQ
cABENFJXcABENExOoBKSe1BBTTMNCjAAcAsAQEQ0TE6NUlNSQwuYBkQ4UleKUlNSQw0K2EQ4TU6K
UlNSQw0K3EQ4TViKUlNSQw0K5EQ4TE5wAUQ4UlegEpN7UEFNNA0KAwANCgFwAEQ4UldwAEQ4TE6g
EpJ7UEFNNA0KAwBwCwBARDhMTo1SU1JDC3AHRENSV4pSU1JDDQrzRENNTopSU1JDDQr3RENNWIpS
U1JDDQr/RENMTnAARENSV3ALAEBEQ0xOjVJTUkMLSAhFMFJXilJTUkMLDgFFME1OilJTUkMLEgFF
ME1YilJTUkMLGgFFMExOcAFFMFJXoBKTe1BBTTUNCgMADQoBcABFMFJXcABFMExOoBKSe1BBTTUN
CgMAcAsAQEUwTE6NUlNSQwsgCUU0UleKUlNSQwspAUU0TU6KUlNSQwstAUU0TViKUlNSQws1AUU0
TE5wAUU0UlegEpN7UEFNNQ0KMAANChBwAEU0UldwAEU0TE6gEpJ7UEFNNQ0KMABwCwBARTRMTo1S
U1JDC/gJRThSV4pSU1JDC0QBRThNTopSU1JDC0gBRThNWIpSU1JDC1ABRThMTnABRThSV6ASk3tQ
QU02DQoDAA0KAXAARThSV3AARThMTqASkntQQU02DQoDAHALAEBFOExOjVJTUkML0A0KRUNSV4pS
U1JDC18BRUNNTopSU1JDC2MBRUNNWIpSU1JDC2sBRUNMTnABRUNSV6ASk3tQQU02DQowAA0KEHAA
RUNSV3AARUNMTqASkntQQU02DQowAHALAEBFQ0xOpFJTUkNbgkUOVVNCMAhfQURSDAIABwBbgENG
RzICDQoACwABW4EOQ0ZHMgMAQBBVU0JCEBQdX1NUQQB7VVNCQgvg/2CgCJNgDQoApA0KAKEEpA0K
DwhfUFNDDQoAFEMEX1BTMACgI5NTQ01QXF9PU18NTWljcm9zb2Z0IFdpbmRvd3MgTlQAAKOhF6AV
k19QU0MNCgNQSFNfDQrDcA0KAF9QU0MUQwRfUFMzAKAjk1NDTVBcX09TXw1NaWNyb3NvZnQgV2lu
ZG93cyBOVAAAo6EXoBWTX1BTQw0KAFBIU18NCsJwDQoDX1BTQwhfUFJXEgYCDQoIDQoBW4JLEFBX
Ul8IX0FEUgwDAAcAW4BQQ0lfAg0KUA0KKFuBTg5QQ0lfAwAIAARGRENNAQABVTFNXwEAAVUyTV8B
AAFMUFRNAQBNBE1ESUUBTURJQQJTQkVfAUdNRV8BU0JBXwJNU1NFAU1TU0ECAA4AAUFVRE0BAAJL
QkNNAUcxMk0BRzEzTQFMUFRFAUcwOUEQRzA5TAQAAUcwOU0BRzA5RQEAAQABTFBUQQIAAUZEQ0EB
RkRDRQFLQkNFAUdNTV8BRzEwQRBHMTBMBAABRzEwTQFHMTBFAUcxMEMBVTFBXwNVMUVfAVUyQV8D
VTJFXwFHMTJBEEcxMkwERzEyRQEAK0cxM0EQRzEzTARHMTNFAVuCQxJJREVfCF9BRFIMAQAHAFuA
UENJXwINCkANChBbgQ9QQ0lfAwAYAAdTSURFAVuBElBDSV8DUjQwXyAAIFI0OF8gW4JJCFBSSU0I
X0FEUg0KAAhfUFNDDQoACElERVQNCgAIVURNQQ0KABQJX1NUQQCkDQoPW4IMTUFTVAhfQURSDQoA
FC5fUFMwAKAgk19QU0MNCgNwSURFVFI0MF9wVURNQVI0OF9QSFNfDQrNcA0KAF9QU0MUH19QUzMA
cFI0MF9JREVUcFI0OF9VRE1BcA0KA19QU0NbgkYFU0VDTghfQURSDQoBCF9QU0MNCgAISURFVA0K
AAhVRE1BDQoAFAlfU1RBAKQNCg9bggxNQVNUCF9BRFINCgAUDV9QUzAAcA0KAF9QU0MUDV9QUzMA
cA0KA19QU0NbgkkNClNEOTQIX0FEUgwAAAgACF9TVEENCg9bgFNQQ0kCDQoACwABW4EbU1BDSQMA
QAZDQUxTCExBVEkIAEBpUFdTVAgIX1BTQw0KABRDBV9QUzAAoCOTU0NNUFxfT1NfDU1pY3Jvc29m
dCBXaW5kb3dzIE5UAACjoRpwDQoAUFdTVFsiDQoBcA0KCENBTFNwDQpATEFUSVBIU18NCtZwDQoA
X1BTQxQNX1BTMwBwDQoDX1BTQ1uCRxVDUkQwCF9BRFIMAAAMAAhfUFJXEgYCDQoNCg0KA1uAQ0NS
RAINCgANCuRbgSlDQ1JEAwAgQ0QwNCAAQBtDRDNFIAAQQ0Q0NCAAQExDREUwCENERTEIW4BFWENB
AQvgAw0KAluBEEVYQ0EBSU5EWAhEQVRBCFuGE0lORFhEQVRBAQAYAAdFUklCARRFBF9JTkkAoCOT
U0NNUFxfT1NfDU1pY3Jvc29mdCBXaW5kb3dzIE5UAACjoRlwAENERTBwAENEMDRwAENEM0VwAUNE
NDQIX1BTQw0KABQuUFNYXwFwDQoAQ0RFMHAL4ANDRDQ0cAFFUklCcA0KAENENDRwaENERTBwaF9Q
U0MUDV9QUzAAcA0KAF9QU0MUF19QUzEAUFNYXw0KAX1DREUxDQoBQ0RFMRQXX1BTMgBQU1hfDQoC
fUNERTENCgFDREUxFBdfUFMzAFBTWF8NCgN9Q0RFMQ0KAUNERTFbgkYJTU9ERQhfQURSDAAADQoA
CF9TVEENCg8UOF9QUlcAoCeTU0NNUFxfT1NfDU1pY3Jvc29mdCBXaW5kb3dzAACkEgYCDQoNCg0K
BKEJpBIGAg0KDQoNCgMURQRfUFNXAaAik1wvBV9TQl9QQ0kwSVNBX0VDMF9FQ09LDQoAUEhTQg0K
3WihGnBoXC8FX1NCX1BDSTBJU0FfRUMwX1NNRE1bgksORVRIUghfQURSDAAACwAIX1NUQQ0KDwhf
UFNDDQoAFDhfUFJXAKAnk1NDTVBcX09TXw1NaWNyb3NvZnQgV2luZG93cwAApBIGAg0KDQoNCgSh
CaQSBgINCg0KDQoDW4BFUENJAg0KAAsAAVuBIUVQQ0kDACBFVDA0CAA4RVQwQxAAQGlFVEUwCEVU
RTEIFEYFX1BTMABwDQoARVRFMKAok1NDTVBcX09TXw1NaWNyb3NvZnQgV2luZG93cyBOVAAAUEhT
Xw0K5KEXcA0KF0VUMDRwCwhCRVQwQ3ANCkFFVEUxcA0KAF9QU0MUDV9QUzMAcA0KA19QU0NbgkMG
TVNDTAhfQURSDAAADQAIX1NUQQ0KD1uATVNDRwINCuANCgRbgRBNU0NHA01TRTAITVNFMQgUJl9Q
UzAAcA0KAE1TRTB7TVNFMQ0KgGCgEJNgDQqAfU1TRTENCoBNU0UxFAdfUFMzAKNbgoIDAUlTQV8I
X0FEUgwAAAcAW4BQSVJYAg0KYA0KBFuBGlBJUlgBUElSQQhQSVJCCFBJUkMIUElSRAhbgkMFTU9U
SAhfSElEDEHQDAIIX0NSUxE9DQo6RwGAAIAAAQFHAbIAsgABAkcBmAOYAwECRwHQBNAEAQJHAUAQ
QBABEEcBAIAAgAFQRwFyAHIAAQJ5AFuCRwlNRU1fCF9ISUQMQdAMAQhNU1JDEU4EDQpKhgkAAQAA
EAAAAAAAhgkAAQAAAAAAAA0KAIYJAAAAwA0AAEAAAIYJAAAAAA4AAAACAIYJAAAAAPj/AAAIAIYJ
AAAA9vf/AA0KAAB5ABQoX0NSUwCKTVNSQw0KCE1FTVOgEZJNRU1TcFBIU18NCsBNRU1TpE1TUkMU
CV9TVEEApA0KD1uCP0RNQUMIX0hJRAxB0AIACF9DUlMRIA0KHUcBAAAAAAEQRwGBAIEAAQ9HAcAA
wAABICoQAHkAFAlfU1RBAKQNCg9bgi9SVENfCF9ISUQMQdALAAhfQ1JTERANCg1HAXAAcAABAiIA
AXkAFAlfU1RBAKQNCg9bgjVQSUNfCF9ISUQLQdAIX0NSUxEYDQoVRwEgACAAAQJHAaAAoAABAiIE
AHkAFAlfU1RBAKQNCg9bgi9GUFVfCF9ISUQMQdAMBAhfQ1JTERANCg1HAfAA8AABECIAIHkAFAlf
U1RBAKQNCg9bgi9UTVJfCF9ISUQMQdABAAhfQ1JTERANCg1HAUAAQAABBCIBAHkAFAlfU1RBAKQN
Cg9bgixTUEtSCF9ISUQMQdAIAAhfQ1JTEQ0NCg0KRwFhAGEAAQF5ABQJX1NUQQCkDQoPW4I3S0JD
XwhfSElEDEHQAwMIX0NSUxEYDQoVRwFgAGAAAQFHAWQAZAABASICAHkAFAlfU1RBAKQNCg9bgh1N
T1VFCF9ISUQMQdAPEwhfQ1JTEQgNCgUiABB5AFuCQkRFQzBfCF9ISUQMQdAMCQhfQ1JTERUNChJH
AWIAYgABAUcBZgBmAAEBeQAIX0dQRQ0KCQhFQ09LDQoAFBJfUkVHAqALk2gNCgNwaUVDT0tbgEVD
Ul8DDQoADQr/W4FHEkVDUl8QAEBATVBCUAFNUEJEAURPS0QBREZCUAEABEJUMUEBQlQyQQFBQ0FU
AQAFUFdSQgFKT0dCAUxJRFMBAAVCVDFQAUJUMlABAAZCMVNUCEIyU1QIAEAFTUFTSwhCVDFTAUJU
MlMBAAZCVDFXAUJUMlcBAAZGQU4wCENCMFMBQ0IxUwEABlBIWU8BAAdCUklUCENPTlQIU05EVQFT
TkREAQAGU01ETQEABwAwQjFSQxBCMUFCEEIxUlQQQjFWTxBCMlJDEEIyQUIQQjJSVBBCMlZPEEIx
REMQQjFMRhBCMURWEEIxREwQQjJEQxBCMkxGEEIyRFYQQjJETBBBMVRQEEExQVQQQTFQVBBBMUNU
EEEyVFAQQTJBVBBBMlBUEEEyQ1QQFBNfUTUwAFBIU18NCuCGQUNBRA0KgBQjX1E1MQCgDEJUMUGG
QkFUMQ0KAKEIhkJBVDENCgGGQkFUMQ0KgBQmX1E1MgBwDV9RNTI6Q2hhbmdlIEJhdHRlcnkgMiBF
dmVudABbMRQhX1E1MwBwDV9RNTM6QmF0dGVyeSBTZWxlY3Rpb24AWzEUPl9RNTgAcA1fUTU4OkFU
RiB0ZW1wZXJhdHVyZSB0cmlwIHBvaW50IGNoYW5nZABbMYZcLl9UWl9BVEYwDQqBFBxfUTVFAHAN
X1E1RTpSSTEgb2NjdXJyZWQAWzEUP19RNUYAcA1fUTVGOkFURiB0ZW1wZXJhdHVyZSByZWFjaGVz
IHRyaXAgcG9pbnQAWzGGXC5fVFpfQVRGMA0KgBQTX1E2MACGXC5fU0JfUFdSQg0KgFuCRBRCQVQx
CF9ISUQMQdAMDQoIX1VJRA0KAQhfUENMEgcBXF9TQl8IQkFUSRItDQ0KAAtQlgtQlg0KAAvQOQ0K
AA0KeA0KAA0KDQoNAA0ADUxJT04ADVNvbnkgQ29ycC4ACEJBVFMSDwQNCgIM/////wt6DQtAOBQi
X1NUQQB7UEhTRA0K2w0KgAsAAWGgBmFwDQofYKEFcA0KD2CkYBRJBF9CSUYAcFBIU0QNCtsNCrBh
d2ENCg0KiEJBVEkNCgEAcFBIU0QNCtsNCrJhd2ENCg0KiEJBVEkNCgIAcFBIU0QNCtsNCraIQkFU
SQ0KBACkQkFUSRRKBl9CU1QAcHtQSFNEDQrbDQqEDQr/YIhCQVRTDQoAAHBQSFNEDQrbDQqkYaAO
YXdhDQoNCohCQVRTDQoBAKELcGGIQkFUUw0KAQB3UEhTRA0K2w0Kog0KDQqIQkFUUw0KAgBwUEhT
RA0K2w0KpohCQVRTDQoDAKRCQVRTW4JJBEFDQUQIX0hJRA1BQ1BJMDAwMwAIX1BDTBIHAVxfU0Jf
FBxfUFNSAHtQSFNEDQrbDQqACwAEYaAEYaQBoQOkABQJX1NUQQCkDQoPW4JMLlNQSUMIX0hJRAxN
2WABCFJTUkMRGA0KFUcBAAAAAAEBRwEAAAAAAQEiAAB5AAhTU1JDERgNChVHAQAAAAABAUcBAAAA
AAEBIgAAeQAUQhBfQ1JTAItSU1JDDQoCSU9BMYtSU1JDDQoESU9BMotSU1JDDQoNCklPQjGLUlNS
Qw0KDElPQjKLUlNSQw0KEUlSUVZwXC8EX1NCX1BDSTBQV1JfRzEwQUlPQTFwXC8EX1NCX1BDSTBQ
V1JfRzEwQUlPQTJ9XC8EX1NCX1BDSTBQV1JfRzEwQVwvBF9TQl9QQ0kwUFdSX0cxMExJT0IxfVwv
BF9TQl9QQ0kwUFdSX0cxMEFcLwRfU0JfUENJMFBXUl9HMTBMSU9CMqAcR08yMqALR08yM3AASVJR
VqENCnkNCgENCg0KSVJRVqEboA5HTzIzeQ0KAQ0KC0lSUVahDQp5DQoBDQoFSVJRVqRSU1JDFEwO
X1NSUwGLaA0KAklPQTGLaA0KDQpJT0Ixi2gNChFJUlFWcElPQTFcLwRfU0JfUENJMFBXUl9HMTBB
f0lPQTFJT0IxXC8EX1NCX1BDSTBQV1JfRzEwTIJJUlFWYHZgoBKTYABwDQoBR08yMnANCgFHTzIz
oBOTYA0KBXANCgBHTzIycA0KAEdPMjOgE5NgDQoNCnANCgFHTzIycA0KAEdPMjOgE5NgDQoLcA0K
AEdPMjJwDQoBR08yM3ANCgBcLwRfU0JfUENJMFBXUl9HMTBNcA0KAVwvBF9TQl9QQ0kwUFdSX0cx
MEVwDQoBXC8EX1NCX1BDSTBQV1JfRzEwQwhfUFJTEU4EDQpKMEcBgBCAEAEBRwGEEIQQAQEwRwGQ
EJAQAQFHAZQQlBABATBHAaAQoBABAUcBpBCkEAEBMEcBsBCwEAEBRwG0ELQQAQE4IiAMeQAUQQRf
RElTAHANCgBcLwRfU0JfUENJMFBXUl9HMTBFcA0KAFwvBF9TQl9QQ0kwUFdSX0cxMENwDQoBR08y
MnANCgFHTzIzFBlfU1RBAKANkEdPMjJHTzIzpA0KDaEEpA0KD1uCTQtDT01BCF9ISUQMQdAFAQhN
Q0RfDQoOFC9fQ1JTAKAfXC8FX1NCX1BDSTBJU0FfQ09NQV9TVEGkUFNDUw0KDqEIpBEFDQoCeQAU
DV9TUlMBUFNTUw0KDmgUDV9QUlMApFBTUFMNCg4UDF9ESVMAUFNESQ0KDhQNX1NUQQCkUFNTVA0K
DghfUFNDDQoAFBdfUFMwAHABR08xM1shDQrIcA0KAF9QU0MUE19QUzMAcABHTzEzcA0KA19QU0MI
X1BSVxIGAg0KDQoNCgNbgk8IRklSXwhfSElEDE3ZcAEIX0NJRAw6Y2ABCE1DRF8NCg8UL19DUlMA
oB9cLwVfU0JfUENJMElTQV9GSVJfX1NUQaRQU0NTDQoPoQikEQUNCgJ5ABQNQl9TUgFQU1NTDQoP
aBQNQl9QUgCkUFNQUw0KDxQMQl9ESQBQU0RJDQoPFA1fU1RBAKRQU1NUDQoPCF9QU0MNCgBbgkwI
TFBUQQhfSElEDEHQBAAIX1VJRA0KAQhNQ0RfDQoQFC9fQ1JTAKAfXC8FX1NCX1BDSTBJU0FfTFBU
QV9TVEGkUFNDUw0KEKEIpBEFDQoCeQAUDUJfU1IBUFNTUw0KEGgUDUJfUFIApFBTUFMNChAUDEJf
REkAUFNESQ0KEBQNX1NUQQCkUFNTVA0KEAhfUFNDDQoAW4JMCExQVEIIX0hJRAxB0AQACF9VSUQN
CgIITUNEXw0KERQvX0NSUwCgH1wvBV9TQl9QQ0kwSVNBX0xQVEJfU1RBpFBTQ1MNChGhCKQRBQ0K
AnkAFA1CX1NSAVBTU1MNChFoFA1CX1BSAKRQU1BTDQoRFAxCX0RJAFBTREkNChEUDV9TVEEApFBT
U1QNChEIX1BTQw0KAFuCSwhFQ1BfCF9ISUQMQdAEAQhNQ0RfDQoSFC9fQ1JTAKAfXC8FX1NCX1BD
STBJU0FfRUNQX19TVEGkUFNDUw0KEqEIpBEFDQoCeQAUE0JfU1IBUFNTUw0KEmhQSFNfDQraFA1C
X1BSAKRQU1BTDQoSFAxCX0RJAFBTREkNChIUDV9TVEEApFBTU1QNChIIX1BTQw0KAFuCTAhFUFBf
CF9ISUQMQdAEAAhfVUlEDQoDCE1DRF8NChMUL19DUlMAoB9cLwVfU0JfUENJMElTQV9FUFBfX1NU
QaRQU0NTDQoToQikEQUNCgJ5ABQNQl9TUgFQU1NTDQoTaBQNQl9QUgCkUFNQUw0KExQMQl9ESQBQ
U0RJDQoTFA1fU1RBAKRQU1NUDQoTCF9QU0MNCgBbgkUlU05DXwhfSElEDE3ZUAEUD0dQSUQApFBI
U0INCsENCgAUQAVHQlJUAKAlk1wvBV9TQl9QQ0kwSVNBX0VDMF9FQ09LDQoAcFBIU0QNCtsNCpZg
oRpwXC8FX1NCX1BDSTBJU0FfRUMwX0JSSVRgpFBIU0INCtJgFEAFU0JSVAFwUEhTQg0K0GhgoCKT
XC8FX1NCX1BDSTBJU0FfRUMwX0VDT0sNCgBQSFNCDQreYKEacGBcLwVfU0JfUENJMElTQV9FQzBf
QlJJVKQAFA9HUEJSAKRQSFNCDQrGDQoAFA9TUEJSAVBIU0INCsdopAAUQAVHQ1RSAKAlk1wvBV9T
Ql9QQ0kwSVNBX0VDMF9FQ09LDQoAcFBIU0QNCtsNCpdgoRpwXC8FX1NCX1BDSTBJU0FfRUMwX0NP
TlRgpFBIU0INCtNgFEAFU0NUUgFwUEhTQg0K0WhgoCKTXC8FX1NCX1BDSTBJU0FfRUMwX0VDT0sN
CgBQSFNCDQrfYKEacGBcLwVfU0JfUENJMElTQV9FQzBfQ09OVKQAFA9HUENSAKRQSFNCDQrIDQoA
FA9TUENSAVBIU0INCslopAAUD1NMVlQApFBIU0INCsoNCgAUD1NMVFQApFBIU0INCssNCgAUD1NF
VkYApFBIU0INCswNCgAUDkdDTUkBpFBIU0QNCs5oFA5TQ01JAaRQSFNEDQrPaBQJUFdBSwCjpAAU
E1BXUk4AhlwuX1NCX1BXUkINCoAUKENTWEIBWyNNUEhT//9waFNYQkZQSFMwDQricFNYQkZgWydN
UEhTpGAUG0NNR0IBoAlocA0KAEdPMTKhCHANCgFHTzEypABbgEdFTkMCDQqwDQoEW4EcR0VOQwNJ
U0FTAVBPU0QBAAlJRDBUAUlEMVQBW4BQQ0lfAg0KYA0KBFuBC1BDSV8DUElSUSAIUDFfXxEEDQoE
ABQPUkVTUABwUDFfX1BJUlEUD1NBVlAAcFBJUlFQMV9fEDFcX1NJXxQqX1NTVAGgBZNoDQoAoAWT
aA0KAaAFk2gNCgKgBZNoDQoDoAWTaA0KBKAFk2gNCgUUSAhfV0FLAXANCgBcLwNfU0JfUENJMENS
U1SgC5NoDQoBUEhTXw0K4KAzk2gNCgRcLwVfU0JfUENJMElTQV9TUElDX1NSU1wvBV9TQl9QQ0kw
SVNBX1NQSUNTU1JDoCyTU0NNUFxfT1NfDU1pY3Jvc29mdCBXaW5kb3dzAACGXC5fU0JfUFdSQg0K
AqQAEEgJXF9UWl9bhU8IQVRGMBQWS0VMVgFwaGB3YA0KDQpgcmALqw0KYKRgFBhfVE1QAHpQSFNE
DQrbDQrADQoIYKRLRUxWYBQYX1BTVgB6UEhTRA0K2w0KxA0KCGCkS0VMVmAIX1BTTBIMAVwuX1BS
X0NQVTAUGF9DUlQAelBIU0QNCtsNCsYNCghgpEtFTFZgCF9UQzENCgEIX1RDMg0KAQhfVFNQDQoy
EENNX1NCXwhJUlFQEiMQDQoADQoADQoADQoADQoADQoADQoADQoADQoACwACDQoADQoADQoADQoA
DQoADQoAW4JHEkxOS0EIX0hJRAxB0AwPCF9VSUQNCgEIX1BSUxEJDQoGIwACGHkAFC9fRElTAH1c
LwRfU0JfUENJMElTQV9QSVJBDQqAXC8EX1NCX1BDSTBJU0FfUElSQRRIBV9DUlMACEJVRkERCQ0K
BiMAABh5AItCVUZBDQoBSVJBMXtcLwRfU0JfUENJMElTQV9QSVJBDQqPYKAalWANCoB7YA0KD2Bw
g4hJUlFQYABkcGRJUkExpEJVRkEUQAVfU1JTAYtoDQoBSVJBMXBJUkExYHCJSVJRUAFgAA0KAA0K
AGF7XC8EX1NCX1BDSTBJU0FfUElSQQ0KcGB9YWBcLwRfU0JfUENJMElTQV9QSVJBFCZfU1RBAKAa
k1wvBF9TQl9QQ0kwSVNBX1BJUkENCoCkDQoJoQSkDQoLW4JHEkxOS0IIX0hJRAxB0AwPCF9VSUQN
CgIIX1BSUxEJDQoGIwACGHkAFC9fRElTAH1cLwRfU0JfUENJMElTQV9QSVJCDQqAXC8EX1NCX1BD
STBJU0FfUElSQhRIBV9DUlMACEJVRkERCQ0KBiMAABh5AItCVUZBDQoBSVJBMXtcLwRfU0JfUENJ
MElTQV9QSVJCDQqPYKAalWANCoB7YA0KD2Bwg4hJUlFQYABkcGRJUkExpEJVRkEUQAVfU1JTAYto
DQoBSVJBMXBJUkExYHCJSVJRUAFgAA0KAA0KAGF7XC8EX1NCX1BDSTBJU0FfUElSQg0KcGB9YWBc
LwRfU0JfUENJMElTQV9QSVJCFCZfU1RBAKAak1wvBF9TQl9QQ0kwSVNBX1BJUkINCoCkDQoJoQSk
DQoLW4JHEkxOS0MIX0hJRAxB0AwPCF9VSUQNCgMIX1BSUxEJDQoGIwACGHkAFC9fRElTAH1cLwRf
U0JfUENJMElTQV9QSVJDDQqAXC8EX1NCX1BDSTBJU0FfUElSQxRIBV9DUlMACEJVRkERCQ0KBiMA
ABh5AItCVUZBDQoBSVJBMXtcLwRfU0JfUENJMElTQV9QSVJDDQqPYKAalWANCoB7YA0KD2Bwg4hJ
UlFQYABkcGRJUkExpEJVRkEUQAVfU1JTAYtoDQoBSVJBMXBJUkExYHCJSVJRUAFgAA0KAA0KAGF7
XC8EX1NCX1BDSTBJU0FfUElSQw0KcGB9YWBcLwRfU0JfUENJMElTQV9QSVJDFCZfU1RBAKAak1wv
BF9TQl9QQ0kwSVNBX1BJUkMNCoCkDQoJoQSkDQoLW4JHEkxOS0QIX0hJRAxB0AwPCF9VSUQNCgQI
X1BSUxEJDQoGIwACGHkAFC9fRElTAH1cLwRfU0JfUENJMElTQV9QSVJEDQqAXC8EX1NCX1BDSTBJ
U0FfUElSRBRIBV9DUlMACEJVRkERCQ0KBiMAABh5AItCVUZBDQoBSVJBMXtcLwRfU0JfUENJMElT
QV9QSVJEDQqPYKAalWANCoB7YA0KD2Bwg4hJUlFQYABkcGRJUkExpEJVRkEUQAVfU1JTAYtoDQoB
SVJBMXBJUkExYHCJSVJRUAFgAA0KAA0KAGF7XC8EX1NCX1BDSTBJU0FfUElSRA0KcGB9YWBcLwRf
U0JfUENJMElTQV9QSVJEFCZfU1RBAKAak1wvBF9TQl9QQ0kwSVNBX1BJUkQNCoCkDQoJoQSkDQoL

----Next_Part(Fri_Mar_17_10:47:38_2000_518)--
Content-Type: Text/Plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename="Z505NR.asl"

RSD PTR: Checksum=211, OEMID=SONY, RsdtAddress=0x0fffcbac
RSDT: Lenth=44, Revision=1, Checksum=67,
	OEMID=SONY, OEM Table ID=Z1, OEM Revision=0x20000106,
	Creator ID=PTL, Creator Revision=0x0
	Entries={ 0x0ffff765, 0x0ffff7d9 }
FACP: Lenth=116, Revision=1, Checksum=37,
	OEMID=SONY, OEM Table ID=Z1, OEM Revision=0x20000106,
	Creator ID=PTL, Creator Revision=0xf4240
	DSDT=0xfffcbd8
	INT_MODEL=PIC
	SCI_INT=9
	SMI_CMD=0xb2, ACPI_ENABLE=0xf0, ACPI_DISABLE=0xf1, S4BIOS_REQ=0x0
	PM1a_EVT_BLK=0x8000-0x8003
	PM1a_CNT_BLK=0x8042-0x8043
	PM2_CNT_BLK=0x22-0x22
	PM2_TMR_BLK=0x8008-0x800b
	PM2_GPE0_BLK=0x800c-0x800f
	P_LVL2_LAT=10ms, P_LVL3_LAT=4097ms
	FLUSH_SIZE=0, FLUSH_STRIDE=0
	DUTY_OFFSET=1, DUTY_WIDTH=3
	DAY_ALRM=13, MON_ALRM=0, CENTURY=50
	Flags={WBINVD,PWR_BUTTON,SLP_BUTTON,RTC_S4}
DSDT: Lenth=11149, Revision=1, Checksum=24,
	OEMID=SONY, OEM Table ID=Z1, OEM Revision=0x20000106,
	Creator ID=MSFT, Creator Revision=0x1000007
Scope(_PR) {
    Processor(CPU0, 0, 0x8010, 0x6) {
    }
}
Name(_S0, Package() {
    0x5
    0x5
    0x0
    0x0
})
Name(_S1, Package() {
    0x4
    0x4
    0x0
    0x0
})
Name(_S3, Package() {
    0x1
    0x1
    0x0
    0x0
})
Name(_S4, Package() {
    0x0
    0x0
    0x0
    0x0
})
Name(_S5, Package() {
    0x0
    0x0
    0x0
    0x0
})
OperationRegion(GPO, SystemIO, 0x8034, 0x4)
Field(GPO, DWordAcc, NoLock, Preserve) {
    GO00,	1,
    GO01,	1,
    GO02,	1,
    GO03,	1,
    GO04,	1,
    GO05,	1,
    GO06,	1,
    GO07,	1,
    GO08,	1,
    GO09,	1,
    GO10,	1,
    GO11,	1,
    GO12,	1,
    GO13,	1,
    GO14,	1,
    GO15,	1,
    GO16,	1,
    GO17,	1,
    GO18,	1,
    GO19,	1,
    GO20,	1,
    GO21,	1,
    GO22,	1,
    GO23,	1,
    GO24,	1,
    GO25,	1,
    GO26,	1,
    GO27,	1,
    GO28,	1,
    GO29,	1,
    GO30,	1,
    GO31,	1
}
OperationRegion(GLBL, SystemIO, 0x8028, 0x4)
Field(GLBL, DWordAcc, NoLock, Preserve) {
    Offset(0x18),
    Offset(0x19),
    LPOL,	1
}
OperationRegion(SMI0, SystemMemory, 0xffffba7, 0x415)
Field(SMI0, AnyAcc, NoLock, Preserve) {
    BCMD,	8,
    DID,	32,
    INFO,	4096
}
Field(SMI0, AnyAcc, NoLock, Preserve) {
    Offset(0x28),
    INFB,	8
}
Field(SMI0, AnyAcc, NoLock, Preserve) {
    Offset(0x28),
    INFD,	32
}
Field(SMI0, AnyAcc, NoLock, Preserve) {
    Offset(0x28),
    SXBF,	8320
}
OperationRegion(SMI1, SystemIO, 0x8040, 0x2)
Field(SMI1, AnyAcc, NoLock, Preserve) {
    SMIC,	8
}
Mutex(MPHS, 0)
Method(PHS0, 1) {
    Store(Arg0, BCMD)
    Store(Zero, SMIC)
    While(LEqual(BCMD, Arg0)) {
    }
    Store(0x0, BCMD)
}
Method(PHS, 9) {
    Acquire(MPHS, 0xffff)
    Store(0x0, DID)
    PHS0
    Arg0
    Store(INFD, Local0)
    Release(MPHS)
    Return(Local0)
}
Method(PHSD, 10) {
    Acquire(MPHS, 0xffff)
    Store(0x0, DID)
    Store(Arg1, INFD)
    PHS0
    Arg0
    Store(INFD, Local0)
    Release(MPHS)
    Return(Local0)
}
Method(PHSB, 10) {
    Acquire(MPHS, 0xffff)
    Store(0x0, DID)
    Store(Arg1, INFB)
    PHS0
    Arg0
    Store(INFB, Local0)
    Release(MPHS)
    Return(Local0)
}
Method(PSCS, 9) {
    Acquire(MPHS, 0xffff)
    Store(Arg0, DID)
    PHS0
    0x0
    Store(INFO, Local0)
    Release(MPHS)
    Return(Local0)
}
Method(PSSS, 10) {
    Acquire(MPHS, 0xffff)
    Store(Arg0, DID)
    Store(Arg1, INFO)
    PHS0
    0x1
    Release(MPHS)
}
Method(PSPS, 9) {
    Acquire(MPHS, 0xffff)
    Store(Arg0, DID)
    PHS0
    0x2
    Store(INFO, Local0)
    Release(MPHS)
    Return(Local0)
}
Method(PSDI, 9) {
    Acquire(MPHS, 0xffff)
    Store(Arg0, DID)
    PHS0
    0x3
    Release(MPHS)
}
Method(PSST, 9) {
    Acquire(MPHS, 0xffff)
    Store(Arg0, DID)
    PHS0
    0x4
    Store(INFB, Local0)
    Release(MPHS)
    Return(Local0)
}
Scope(\_GPE) {
    Method(_L0B) {
        Notify(\_SB.PWRB, 0x2)
    }
    Method(_L0A) {
        Notify(\_SB.PCI0, 0x2)
    }
    Method(_L08) {
        Notify(\_SB.PCI0.USB0, 0x2)
    }
}
Method(MIN, 2) {
    If(LLess(Arg0, Arg1)) {
        Return(Arg0)
    }
    Else {
        Return(Arg1)
    }
}
Method(SLEN, 1) {
    Return(Sizeof(Arg0))
}
Method(S2BF, 9) {
    Add(SLEN, Arg0, One)
    Local0
    Name(BUFF, Buffer(Local0) { })
    Store(Arg0, BUFF)
    Return(BUFF)
}
Method(SCMP, 2) {
    Store(S2BF, Arg0)
    Local0
    Store(S2BF, Arg1)
    Local1
    Store(Zero, Local4)
    Store(SLEN, Arg0)
    Local5
    Store(SLEN, Arg1)
    Local6
    Store(MIN, Local5)
    Local6
    Local7
    While(LLess(Local4, Local7)) {
        Store(DerefOf(Index(Local0, Local4, Zero)), Local2)
        Store(DerefOf(Index(Local1, Local4, Zero)), Local3)
        If(LGreater(Local2, Local3)) {
            Return(One)
        }
        Else {
            If(LLess(Local2, Local3)) {
                Return(Ones)
            }
        }
        Increment(Local4)
    }
    If(LLess(Local4, Local5)) {
        Return(One)
    }
    Else {
        If(LLess(Local4, Local6)) {
            Return(Ones)
        }
        Else {
            Return(Zero)
        }
    }
}
Method(_PTS, 1) {
    If(LNot(LLess(Arg0, 0x2))) {
        Store(0x1, \_SB.PCI0.CRST)
    }
    Else {
        Store(0x0, \_SB.PCI0.CRST)
    }
    If(LEqual(Arg0, 0x4)) {
        Store(\_SB.PCI0.ISA.SPIC._CRS, \_SB.PCI0.ISA.SPIC.SSRC)
        If(LEqual(SCMP, \_OS)) {
            "Microsoft Windows NT"
            Zero
            PHS
            0xe3
        }
    }
    Return(0x0)
}
Scope(_SB) {
    Device(PWRB) {
        Name(_HID, 0xc0cd041)
        Name(_PRW, Package() {
            0xb
            0x4
        })
        Method(_STA) {
            Return(0xf)
        }
    }
    Device(PCI0) {
        Name(_HID, 0x30ad041)
        OperationRegion(BXRS, PCI_Config, 0x7a, 0x1)
        Field(BXRS, ByteAcc, NoLock, Preserve) {
            CRST,	1,
            Offset(0x8)
        }
        Device(H2PB) {
            Name(_ADR, 0x0)
            OperationRegion(NRBR, PCI_Config, 0x0, 0x100)
            Field(NRBR, DWordAcc, NoLock, Preserve) {
                Offset(0x288),
                Offset(0x289),
                AAGE,	1,
                Offset(0x580),
                Offset(0x587),
                GTEN,	1
            }
        }
        Device(VID0) {
            Name(_ADR, 0x10000)
            Name(_PSC, 0x0)
            Method(_STA) {
                Return(0xf)
            }
            Method(_PS0) {
                Store(Zero, \_SB.PCI0.H2PB.AAGE)
                Store(Zero, \_SB.PCI0.H2PB.GTEN)
                Store(0x0, _PSC)
            }
            Method(_PS3) {
                Store(0x3, _PSC)
            }
        }
        Name(_ADR, 0x0)
        Name(_PRT, Package() {
            Package() {
                0x1ffff
                0x0
                LNKA
                0x0
            }
            Package() {
                0x1ffff
                0x1
                LNKB
                0x0
            }
            Package() {
                0x1ffff
                0x2
                LNKC
                0x0
            }
            Package() {
                0x1ffff
                0x3
                LNKD
                0x0
            }
            Package() {
                0x7ffff
                0x3
                LNKD
                0x0
            }
            Package() {
                0x8ffff
                0x0
                LNKD
                0x0
            }
            Package() {
                0x9ffff
                0x0
                LNKC
                0x0
            }
            Package() {
                0xaffff
                0x0
                LNKB
                0x0
            }
            Package() {
                0xbffff
                0x0
                LNKA
                0x0
            }
            Package() {
                0xcffff
                0x0
                LNKB
                0x0
            }
            Package() {
                0xdffff
                0x0
                LNKB
                0x0
            }
        })
        OperationRegion(REGS, PCI_Config, 0x40, 0xc0)
        Field(REGS, DWordAcc, NoLock, Preserve) {
            Offset(0xc8),
            PAM0,	8,
            PAM1,	8,
            PAM2,	8,
            PAM3,	8,
            PAM4,	8,
            PAM5,	8,
            PAM6,	8,
            DRB0,	8,
            DRB1,	8,
            DRB2,	8,
            DRB3,	8,
            DRB4,	8,
            DRB5,	8,
            DRB6,	8,
            DRB7,	8,
            Offset(0x146),
            HEN,	2,
            Offset(0x198),
            T_EN,	1,
            T_SZ,	2
        }
        Name(RSRC, Buffer(0x1d2) {0x88, 0xe, 0x0, 0x2, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xa, 0x0, 0xff, 0xff, 0xb, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc, 0x0, 0xff, 0x3f, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0xc, 0x0, 0xff, 0x7f, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80, 0xc, 0x0, 0xff, 0xbf, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc0, 0xc, 0x0, 0xff, 0xff, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xd, 0x0, 0xff, 0x3f, 0xd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0xd, 0x0, 0xff, 0x7f, 0xd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80, 0xd, 0x0, 0xff, 0xbf, 0xd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc0, 0xd, 0x0, 0xff, 0xff, 0xd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xe, 0x0, 0xff, 0x3f, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0xe, 0x0, 0xff, 0x7f, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80, 0xe, 0x0, 0xff, 0xbf, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc0, 0xe, 0x0, 0xff, 0xff, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x47, 0x1, 0xf8, 0xc, 0xf8, 0xc, 0x1, 0x8, 0x88, 0xe, 0x0, 0x1, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0xf7, 0xc, 0x0, 0x0, 0xf8, 0xc, 0x0, 0x88, 0xe, 0x0, 0x1, 0xc, 0x3, 0x0, 0x0, 0x0, 0xd, 0xff, 0xff, 0x0, 0x0, 0x0, 0xf3, 0x0, 0x79, 0x0 })
        Method(_CRS, 8) {
            Store(Zero, Local1)
            If(T_EN) {
                ShiftLeft(0x1, Add(T_SZ, 0x11, Zero), Local1)
            }
            CreateDWordField(RSRC, 0x17a, BTMN)
            CreateDWordField(RSRC, 0x17e, BTMX)
            CreateDWordField(RSRC, 0x186, BTLN)
            Multiply(DRB7, 0x800000, Local0)
            If(T_EN) {
                Subtract(Local0, Local1, Local2)
                Store(Local2, BTMN)
                Subtract(Add(Local0, 0x10000000, Zero), BTMN, BTLN)
            }
            Else {
                Store(Local0, BTMN)
                Subtract(0xffe00000, Local0, BTLN)
                Subtract(Add(BTMN, BTLN, Zero), 0x1, BTMX)
            }
            CreateDWordField(RSRC, 0x195, ATMN)
            CreateDWordField(RSRC, 0x199, ATMX)
            CreateDWordField(RSRC, 0x1a1, ATLN)
            If(T_EN) {
                Add(Add(BTMN, BTLN, Zero), Local1, ATMN)
                Subtract(0xffe00000, ATMN, ATLN)
                Subtract(Add(ATMN, ATLN, Zero), 0x1, ATMX)
            }
            Else {
                Store(Zero, ATLN)
            }
            CreateBitField(RSRC, 0x188, C0RW)
            CreateDWordField(RSRC, 0x36, C0MN)
            CreateDWordField(RSRC, 0x3a, C0MX)
            CreateDWordField(RSRC, 0x42, C0LN)
            Store(One, C0RW)
            If(LEqual(And(PAM1, 0x3, Zero), 0x1)) {
                Store(Zero, C0RW)
            }
            Store(Zero, C0LN)
            If(LNot(And(PAM1, 0x3, Zero))) {
                Store(0x4000, C0LN)
            }
            CreateBitField(RSRC, 0x260, C4RW)
            CreateDWordField(RSRC, 0x51, C4MN)
            CreateDWordField(RSRC, 0x55, C4MX)
            CreateDWordField(RSRC, 0x5d, C4LN)
            Store(One, C4RW)
            If(LEqual(And(PAM1, 0x30, Zero), 0x10)) {
                Store(Zero, C4RW)
            }
            Store(Zero, C4LN)
            If(LNot(And(PAM1, 0x30, Zero))) {
                Store(0x4000, C4LN)
            }
            CreateBitField(RSRC, 0x338, C8RW)
            CreateDWordField(RSRC, 0x6c, C8MN)
            CreateDWordField(RSRC, 0x70, C8MX)
            CreateDWordField(RSRC, 0x78, C8LN)
            Store(One, C8RW)
            If(LEqual(And(PAM2, 0x3, Zero), 0x1)) {
                Store(Zero, C8RW)
            }
            Store(Zero, C8LN)
            If(LNot(And(PAM2, 0x3, Zero))) {
                Store(0x4000, C8LN)
            }
            CreateBitField(RSRC, 0x410, CCRW)
            CreateDWordField(RSRC, 0x87, CCMN)
            CreateDWordField(RSRC, 0x8b, CCMX)
            CreateDWordField(RSRC, 0x93, CCLN)
            Store(One, CCRW)
            If(LEqual(And(PAM2, 0x30, Zero), 0x10)) {
                Store(Zero, CCRW)
            }
            Store(Zero, CCLN)
            If(LNot(And(PAM2, 0x30, Zero))) {
                Store(0x4000, CCLN)
            }
            CreateBitField(RSRC, 0x4e8, D0RW)
            CreateDWordField(RSRC, 0xa2, D0MN)
            CreateDWordField(RSRC, 0xa6, D0MX)
            CreateDWordField(RSRC, 0xae, D0LN)
            Store(One, D0RW)
            If(LEqual(And(PAM3, 0x3, Zero), 0x1)) {
                Store(Zero, D0RW)
            }
            Store(Zero, D0LN)
            If(LNot(And(PAM3, 0x3, Zero))) {
                Store(0x4000, D0LN)
            }
            CreateBitField(RSRC, 0x5c0, D4RW)
            CreateDWordField(RSRC, 0xbd, D4MN)
            CreateDWordField(RSRC, 0xc1, D4MX)
            CreateDWordField(RSRC, 0xc9, D4LN)
            Store(One, D4RW)
            If(LEqual(And(PAM3, 0x30, Zero), 0x10)) {
                Store(Zero, D4RW)
            }
            Store(Zero, D4LN)
            If(LNot(And(PAM3, 0x30, Zero))) {
                Store(0x4000, D4LN)
            }
            CreateBitField(RSRC, 0x698, D8RW)
            CreateDWordField(RSRC, 0xd8, D8MN)
            CreateDWordField(RSRC, 0xdc, D8MX)
            CreateDWordField(RSRC, 0xe4, D8LN)
            Store(One, D8RW)
            If(LEqual(And(PAM4, 0x3, Zero), 0x1)) {
                Store(Zero, D8RW)
            }
            Store(Zero, D8LN)
            If(LNot(And(PAM4, 0x3, Zero))) {
                Store(0x4000, D8LN)
            }
            CreateBitField(RSRC, 0x770, DCRW)
            CreateDWordField(RSRC, 0xf3, DCMN)
            CreateDWordField(RSRC, 0xf7, DCMX)
            CreateDWordField(RSRC, 0xff, DCLN)
            Store(Zero, DCRW)
            Store(0x4000, DCLN)
            CreateBitField(RSRC, 0x848, E0RW)
            CreateDWordField(RSRC, 0x10e, E0MN)
            CreateDWordField(RSRC, 0x112, E0MX)
            CreateDWordField(RSRC, 0x11a, E0LN)
            Store(One, E0RW)
            If(LEqual(And(PAM5, 0x3, Zero), 0x1)) {
                Store(Zero, E0RW)
            }
            Store(Zero, E0LN)
            If(LNot(And(PAM5, 0x3, Zero))) {
                Store(0x4000, E0LN)
            }
            CreateBitField(RSRC, 0x920, E4RW)
            CreateDWordField(RSRC, 0x129, E4MN)
            CreateDWordField(RSRC, 0x12d, E4MX)
            CreateDWordField(RSRC, 0x135, E4LN)
            Store(One, E4RW)
            If(LEqual(And(PAM5, 0x30, Zero), 0x10)) {
                Store(Zero, E4RW)
            }
            Store(Zero, E4LN)
            If(LNot(And(PAM5, 0x30, Zero))) {
                Store(0x4000, E4LN)
            }
            CreateBitField(RSRC, 0x9f8, E8RW)
            CreateDWordField(RSRC, 0x144, E8MN)
            CreateDWordField(RSRC, 0x148, E8MX)
            CreateDWordField(RSRC, 0x150, E8LN)
            Store(One, E8RW)
            If(LEqual(And(PAM6, 0x3, Zero), 0x1)) {
                Store(Zero, E8RW)
            }
            Store(Zero, E8LN)
            If(LNot(And(PAM6, 0x3, Zero))) {
                Store(0x4000, E8LN)
            }
            CreateBitField(RSRC, 0xad0, ECRW)
            CreateDWordField(RSRC, 0x15f, ECMN)
            CreateDWordField(RSRC, 0x163, ECMX)
            CreateDWordField(RSRC, 0x16b, ECLN)
            Store(One, ECRW)
            If(LEqual(And(PAM6, 0x30, Zero), 0x10)) {
                Store(Zero, ECRW)
            }
            Store(Zero, ECLN)
            If(LNot(And(PAM6, 0x30, Zero))) {
                Store(0x4000, ECLN)
            }
            Return(RSRC)
        }
        Device(USB0) {
            Name(_ADR, 0x70002)
            OperationRegion(CFG2, PCI_Config, 0x0, 0x100)
            Field(CFG2, DWordAcc, NoLock, Preserve) {
                Offset(0x100),
                USBB,	16
            }
            Method(_STA) {
                And(USBB, 0xffe0, Local0)
                If(LEqual(Local0, 0x0)) {
                    Return(0x0)
                }
                Else {
                    Return(0xf)
                }
            }
            Name(_PSC, 0x0)
            Method(_PS0) {
                If(LEqual(SCMP, \_OS)) {
                    "Microsoft Windows NT"
                    Zero
                    Noop
                }
                Else {
                    If(LEqual(_PSC, 0x3)) {
                        PHS
                        0xc3
                        Store(0x0, _PSC)
                    }
                }
            }
            Method(_PS3) {
                If(LEqual(SCMP, \_OS)) {
                    "Microsoft Windows NT"
                    Zero
                    Noop
                }
                Else {
                    If(LEqual(_PSC, 0x0)) {
                        PHS
                        0xc2
                        Store(0x3, _PSC)
                    }
                }
            }
            Name(_PRW, Package() {
                0x8
                0x1
            })
        }
        Device(PWR) {
            Name(_ADR, 0x70003)
            OperationRegion(PCI, PCI_Config, 0x50, 0x28)
            Field(PCI, DWordAcc, NoLock, Preserve) {
                Offset(0x8),
                Offset(0xc),
                FDCM,	1,
                Offset(0xe),
                U1M,	1,
                Offset(0x10),
                U2M,	1,
                Offset(0x12),
                LPTM,	1,
                Offset(0x60),
                MDIE,	1,
                MDIA,	2,
                SBE,	1,
                GME,	1,
                SBA,	2,
                MSSE,	1,
                MSSA,	2,
                Offset(0x78),
                Offset(0x79),
                AUDM,	1,
                Offset(0x7c),
                KBCM,	1,
                G12M,	1,
                G13M,	1,
                LPTE,	1,
                G09A,	16,
                G09L,	4,
                Offset(0x95),
                G09M,	1,
                G09E,	1,
                Offset(0x98),
                Offset(0x99),
                LPTA,	2,
                Offset(0x9c),
                FDCA,	1,
                FDCE,	1,
                KBCE,	1,
                GMM,	1,
                G10A,	16,
                G10L,	4,
                Offset(0xb5),
                G10M,	1,
                G10E,	1,
                G10C,	1,
                U1A,	3,
                U1E,	1,
                U2A,	3,
                U2E,	1,
                G12A,	16,
                G12L,	4,
                G12E,	1,
                Offset(0x100),
                G13A,	16,
                G13L,	4,
                G13E,	1
            }
        }
        Device(IDE) {
            Name(_ADR, 0x70001)
            OperationRegion(PCI, PCI_Config, 0x40, 0x10)
            Field(PCI, DWordAcc, NoLock, Preserve) {
                Offset(0x18),
                Offset(0x1f),
                SIDE,	1
            }
            Field(PCI, DWordAcc, NoLock, Preserve) {
                R40,	32,
                Offset(0x40),
                R48,	32
            }
            Device(PRIM) {
                Name(_ADR, 0x0)
                Name(_PSC, 0x0)
                Name(IDET, 0x0)
                Name(UDMA, 0x0)
                Method(_STA) {
                    Return(0xf)
                }
                Device(MAST) {
                    Name(_ADR, 0x0)
                }
                Method(_PS0) {
                    If(LEqual(_PSC, 0x3)) {
                        Store(IDET, R40)
                        Store(UDMA, R48)
                        PHS
                        0xcd
                    }
                    Store(0x0, _PSC)
                }
                Method(_PS3) {
                    Store(R40, IDET)
                    Store(R48, UDMA)
                    Store(0x3, _PSC)
                }
            }
            Device(SECN) {
                Name(_ADR, 0x1)
                Name(_PSC, 0x0)
                Name(IDET, 0x0)
                Name(UDMA, 0x0)
                Method(_STA) {
                    Return(0xf)
                }
                Device(MAST) {
                    Name(_ADR, 0x0)
                }
                Method(_PS0) {
                    Store(0x0, _PSC)
                }
                Method(_PS3) {
                    Store(0x3, _PSC)
                }
            }
        }
        Device(SD94) {
            Name(_ADR, 0x80000)
            Name(_STA, 0xf)
            OperationRegion(SPCI, PCI_Config, 0x0, 0x100)
            Field(SPCI, DWordAcc, NoLock, Preserve) {
                Offset(0x60),
                CALS,	8,
                LATI,	8,
                Offset(0x700),
                PWST,	8
            }
            Name(_PSC, 0x0)
            Method(_PS0) {
                If(LEqual(SCMP, \_OS)) {
                    "Microsoft Windows NT"
                    Zero
                    Noop
                }
                Else {
                    Store(0x0, PWST)
                    Sleep(0x1)
                    Store(0x8, CALS)
                    Store(0x40, LATI)
                }
                PHS
                0xd6
                Store(0x0, _PSC)
            }
            Method(_PS3) {
                Store(0x3, _PSC)
            }
        }
        Device(CRD0) {
            Name(_ADR, 0xc0000)
            Name(_PRW, Package() {
                0xa
                0x3
            })
            OperationRegion(CCRD, PCI_Config, 0x0, 0xe4)
            Field(CCRD, DWordAcc, NoLock, Preserve) {
                Offset(0x20),
                CD04,	32,
                Offset(0x1f0),
                CD3E,	32,
                Offset(0x220),
                CD44,	32,
                Offset(0x700),
                CDE0,	8,
                CDE1,	8
            }
            OperationRegion(EXCA, SystemIO, 0x3e0, 0x2)
            Field(EXCA, ByteAcc, NoLock, Preserve) {
                INDX,	8,
                DATA,	8
            }
            IndexField(INDX, DATA, ByteAcc, NoLock, Preserve) {
                Offset(0x18),
                Offset(0x1f),
                ERIB,	1
            }
            Method(_INI) {
                If(LEqual(SCMP, \_OS)) {
                    "Microsoft Windows NT"
                    Zero
                    Noop
                }
                Else {
                    Store(Zero, CDE0)
                    Store(Zero, CD04)
                    Store(Zero, CD3E)
                    Store(One, CD44)
                }
            }
            Name(_PSC, 0x0)
            Method(PSX, 1) {
                Store(0x0, CDE0)
                Store(0x3e0, CD44)
                Store(One, ERIB)
                Store(0x0, CD44)
                Store(Arg0, CDE0)
                Store(Arg0, _PSC)
            }
            Method(_PS0) {
                Store(0x0, _PSC)
            }
            Method(_PS1) {
                PSX
                0x1
                Or(CDE1, 0x1, CDE1)
            }
            Method(_PS2) {
                PSX
                0x2
                Or(CDE1, 0x1, CDE1)
            }
            Method(_PS3) {
                PSX
                0x3
                Or(CDE1, 0x1, CDE1)
            }
        }
        Device(MODE) {
            Name(_ADR, 0xa0000)
            Name(_STA, 0xf)
            Method(_PRW) {
                If(LEqual(SCMP, \_OS)) {
                    "Microsoft Windows"
                    Zero
                    Return(Package() {
                        0xa
                        0x4
                    })
                }
                Else {
                    Return(Package() {
                        0xa
                        0x3
                    })
                }
            }
            Method(_PSW, 1) {
                If(LEqual(\_SB.PCI0.ISA.EC0.ECOK, 0x0)) {
                    PHSB
                    0xdd
                    Arg0
                }
                Else {
                    Store(Arg0, \_SB.PCI0.ISA.EC0.SMDM)
                }
            }
        }
        Device(ETHR) {
            Name(_ADR, 0xb0000)
            Name(_STA, 0xf)
            Name(_PSC, 0x0)
            Method(_PRW) {
                If(LEqual(SCMP, \_OS)) {
                    "Microsoft Windows"
                    Zero
                    Return(Package() {
                        0xa
                        0x4
                    })
                }
                Else {
                    Return(Package() {
                        0xa
                        0x3
                    })
                }
            }
            OperationRegion(EPCI, PCI_Config, 0x0, 0x100)
            Field(EPCI, DWordAcc, NoLock, Preserve) {
                Offset(0x20),
                ET04,	8,
                Offset(0x60),
                ET0C,	16,
                Offset(0x700),
                ETE0,	8,
                ETE1,	8
            }
            Method(_PS0) {
                Store(0x0, ETE0)
                If(LEqual(SCMP, \_OS)) {
                    "Microsoft Windows NT"
                    Zero
                    PHS
                    0xe4
                }
                Else {
                    Store(0x17, ET04)
                    Store(0x4208, ET0C)
                    Store(0x41, ETE1)
                }
                Store(0x0, _PSC)
            }
            Method(_PS3) {
                Store(0x3, _PSC)
            }
        }
        Device(MSCL) {
            Name(_ADR, 0xd0000)
            Name(_STA, 0xf)
            OperationRegion(MSCG, PCI_Config, 0xe0, 0x4)
            Field(MSCG, DWordAcc, NoLock, Preserve) {
                MSE0,	8,
                MSE1,	8
            }
            Method(_PS0) {
                Store(0x0, MSE0)
                And(MSE1, 0x80, Local0)
                If(LEqual(Local0, 0x80)) {
                    Or(MSE1, 0x80, MSE1)
                }
            }
            Method(_PS3) {
                Noop
            }
        }
        Device(ISA) {
            Name(_ADR, 0x70000)
            OperationRegion(PIRX, PCI_Config, 0x60, 0x4)
            Field(PIRX, ByteAcc, NoLock, Preserve) {
                PIRA,	8,
                PIRB,	8,
                PIRC,	8,
                PIRD,	8
            }
            Device(MOTH) {
                Name(_HID, 0x20cd041)
                Name(_CRS, Buffer(0x3a) {0x47, 0x1, 0x80, 0x0, 0x80, 0x0, 0x1, 0x1, 0x47, 0x1, 0xb2, 0x0, 0xb2, 0x0, 0x1, 0x2, 0x47, 0x1, 0x98, 0x3, 0x98, 0x3, 0x1, 0x2, 0x47, 0x1, 0xd0, 0x4, 0xd0, 0x4, 0x1, 0x2, 0x47, 0x1, 0x40, 0x10, 0x40, 0x10, 0x1, 0x10, 0x47, 0x1, 0x0, 0x80, 0x0, 0x80, 0x1, 0x50, 0x47, 0x1, 0x72, 0x0, 0x72, 0x0, 0x1, 0x2, 0x79, 0x0 })
            }
            Device(MEM) {
                Name(_HID, 0x10cd041)
                Name(MSRC, Buffer(0x4a) {0x86, 0x9, 0x0, 0x1, 0x0, 0x0, 0x10, 0x0, 0x0, 0x0, 0x0, 0x0, 0x86, 0x9, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xa, 0x0, 0x86, 0x9, 0x0, 0x0, 0x0, 0xc0, 0xd, 0x0, 0x0, 0x40, 0x0, 0x0, 0x86, 0x9, 0x0, 0x0, 0x0, 0x0, 0xe, 0x0, 0x0, 0x0, 0x2, 0x0, 0x86, 0x9, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff, 0x0, 0x0, 0x8, 0x0, 0x86, 0x9, 0x0, 0x0, 0x0, 0xf6, 0xf7, 0xff, 0x0, 0xa, 0x0, 0x0, 0x79, 0x0 })
                Method(_CRS) {
                    CreateDWordField(MSRC, 0x8, MEMS)
                    If(LNot(MEMS)) {
                        Store(PHS, 0xc0)
                        MEMS
                    }
                    Return(MSRC)
                }
                Method(_STA) {
                    Return(0xf)
                }
            }
            Device(DMAC) {
                Name(_HID, 0x2d041)
                Name(_CRS, Buffer(0x1d) {0x47, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x10, 0x47, 0x1, 0x81, 0x0, 0x81, 0x0, 0x1, 0xf, 0x47, 0x1, 0xc0, 0x0, 0xc0, 0x0, 0x1, 0x20, 0x2a, 0x10, 0x0, 0x79, 0x0 })
                Method(_STA) {
                    Return(0xf)
                }
            }
            Device(RTC) {
                Name(_HID, 0xbd041)
                Name(_CRS, Buffer(0xd) {0x47, 0x1, 0x70, 0x0, 0x70, 0x0, 0x1, 0x2, 0x22, 0x0, 0x1, 0x79, 0x0 })
                Method(_STA) {
                    Return(0xf)
                }
            }
            Device(PIC) {
                Name(_HID, 0xd041)
                Name(_CRS, Buffer(0x15) {0x47, 0x1, 0x20, 0x0, 0x20, 0x0, 0x1, 0x2, 0x47, 0x1, 0xa0, 0x0, 0xa0, 0x0, 0x1, 0x2, 0x22, 0x4, 0x0, 0x79, 0x0 })
                Method(_STA) {
                    Return(0xf)
                }
            }
            Device(FPU) {
                Name(_HID, 0x40cd041)
                Name(_CRS, Buffer(0xd) {0x47, 0x1, 0xf0, 0x0, 0xf0, 0x0, 0x1, 0x10, 0x22, 0x0, 0x20, 0x79, 0x0 })
                Method(_STA) {
                    Return(0xf)
                }
            }
            Device(TMR) {
                Name(_HID, 0x1d041)
                Name(_CRS, Buffer(0xd) {0x47, 0x1, 0x40, 0x0, 0x40, 0x0, 0x1, 0x4, 0x22, 0x1, 0x0, 0x79, 0x0 })
                Method(_STA) {
                    Return(0xf)
                }
            }
            Device(SPKR) {
                Name(_HID, 0x8d041)
                Name(_CRS, Buffer(0xa) {0x47, 0x1, 0x61, 0x0, 0x61, 0x0, 0x1, 0x1, 0x79, 0x0 })
                Method(_STA) {
                    Return(0xf)
                }
            }
            Device(KBC) {
                Name(_HID, 0x303d041)
                Name(_CRS, Buffer(0x15) {0x47, 0x1, 0x60, 0x0, 0x60, 0x0, 0x1, 0x1, 0x47, 0x1, 0x64, 0x0, 0x64, 0x0, 0x1, 0x1, 0x22, 0x2, 0x0, 0x79, 0x0 })
                Method(_STA) {
                    Return(0xf)
                }
            }
            Device(MOUE) {
                Name(_HID, 0x130fd041)
                Name(_CRS, Buffer(0x5) {0x22, 0x0, 0x10, 0x79, 0x0 })
            }
            Device(EC0) {
                Name(_HID, 0x90cd041)
                Name(_CRS, Buffer(0x12) {0x47, 0x1, 0x62, 0x0, 0x62, 0x0, 0x1, 0x1, 0x47, 0x1, 0x66, 0x0, 0x66, 0x0, 0x1, 0x1, 0x79, 0x0 })
                Name(_GPE, 0x9)
                Name(ECOK, 0x0)
                Method(_REG, 2) {
                    If(LEqual(Arg0, 0x3)) {
                        Store(Arg1, ECOK)
                    }
                }
                OperationRegion(ECR, EmbeddedControl, 0x0, 0xff)
                Field(ECR, AnyAcc, Lock, Preserve) {
                    Offset(0x400),
                    MPBP,	1,
                    MPBD,	1,
                    DOKD,	1,
                    DFBP,	1,
                    Offset(0x408),
                    BT1A,	1,
                    BT2A,	1,
                    ACAT,	1,
                    Offset(0x410),
                    PWRB,	1,
                    JOGB,	1,
                    LIDS,	1,
                    Offset(0x418),
                    BT1P,	1,
                    BT2P,	1,
                    Offset(0x420),
                    B1ST,	8,
                    B2ST,	8,
                    Offset(0x480),
                    MASK,	8,
                    BT1S,	1,
                    BT2S,	1,
                    Offset(0x490),
                    BT1W,	1,
                    BT2W,	1,
                    Offset(0x498),
                    FAN0,	8,
                    CB0S,	1,
                    CB1S,	1,
                    Offset(0x4a8),
                    PHYO,	1,
                    Offset(0x4b0),
                    BRIT,	8,
                    CONT,	8,
                    SNDU,	1,
                    SNDD,	1,
                    Offset(0x4c8),
                    SMDM,	1,
                    Offset(0x4d0),
                    Offset(0x500),
                    B1RC,	16,
                    B1AB,	16,
                    B1RT,	16,
                    B1VO,	16,
                    B2RC,	16,
                    B2AB,	16,
                    B2RT,	16,
                    B2VO,	16,
                    B1DC,	16,
                    B1LF,	16,
                    B1DV,	16,
                    B1DL,	16,
                    B2DC,	16,
                    B2LF,	16,
                    B2DV,	16,
                    B2DL,	16,
                    A1TP,	16,
                    A1AT,	16,
                    A1PT,	16,
                    A1CT,	16,
                    A2TP,	16,
                    A2AT,	16,
                    A2PT,	16,
                    A2CT,	16
                }
                Method(_Q50) {
                    PHS
                    0xe0
                    Notify(ACAD, 0x80)
                }
                Method(_Q51) {
                    If(BT1A) {
                        Notify(BAT1, 0x0)
                    }
                    Else {
                        Notify(BAT1, 0x1)
                    }
                    Notify(BAT1, 0x80)
                }
                Method(_Q52) {
                    Store("_Q52:Change Battery 2 Event", Debug)
                }
                Method(_Q53) {
                    Store("_Q53:Battery Selection", Debug)
                }
                Method(_Q58) {
                    Store("_Q58:ATF temperature trip point changd", Debug)
                    Notify(\_TZ.ATF0, 0x81)
                }
                Method(_Q5E) {
                    Store("_Q5E:RI1 occurred", Debug)
                }
                Method(_Q5F) {
                    Store("_Q5F:ATF temperature reaches trip point", Debug)
                    Notify(\_TZ.ATF0, 0x80)
                }
                Method(_Q60) {
                    Notify(\_SB.PWRB, 0x80)
                }
                Device(BAT1) {
                    Name(_HID, 0xa0cd041)
                    Name(_UID, 0x1)
                    Name(_PCL, Package() {
                        \_SB
                    })
                    Name(BATI, Package() {
                        0x0
                        0x9650
                        0x9650
                        0x0
                        0x39d0
                        0x0
                        0x78
                        0x0
                        0xa
                        ""
                        ""
                        "LION"
                        "Sony Corp."
                    })
                    Name(BATS, Package() {
                        0x2
                        0xffffffff
                        0xd7a
                        0x3840
                    })
                    Method(_STA) {
                        And(PHSD, 0xdb, 0x80)
                        0x100
                        Local1
                        If(Local1) {
                            Store(0x1f, Local0)
                        }
                        Else {
                            Store(0xf, Local0)
                        }
                        Return(Local0)
                    }
                    Method(_BIF) {
                        Store(PHSD, 0xdb)
                        0xb0
                        Local1
                        Multiply(Local1, 0xa, Index(BATI, 0x1, Zero))
                        Store(PHSD, 0xdb)
                        0xb2
                        Local1
                        Multiply(Local1, 0xa, Index(BATI, 0x2, Zero))
                        Store(PHSD, 0xdb)
                        0xb6
                        Index(BATI, 0x4, Zero)
                        Return(BATI)
                    }
                    Method(_BST) {
                        Store(And(PHSD, 0xdb, 0x84), 0xff)
                        Local0
                        Index(BATS, 0x0, Zero)
                        Store(PHSD, 0xdb)
                        0xa4
                        Local1
                        If(Local1) {
                            Multiply(Local1, 0xa, Index(BATS, 0x1, Zero))
                        }
                        Else {
                            Store(Local1, Index(BATS, 0x1, Zero))
                        }
                        Multiply(PHSD, 0xdb, 0xa2)
                        0xa
                        Index(BATS, 0x2, Zero)
                        Store(PHSD, 0xdb)
                        0xa6
                        Index(BATS, 0x3, Zero)
                        Return(BATS)
                    }
                }
                Device(ACAD) {
                    Name(_HID, "ACPI0003")
                    Name(_PCL, Package() {
                        \_SB
                    })
                    Method(_PSR) {
                        And(PHSD, 0xdb, 0x80)
                        0x400
                        Local1
                        If(Local1) {
                            Return(One)
                        }
                        Else {
                            Return(Zero)
                        }
                    }
                    Method(_STA) {
                        Return(0xf)
                    }
                }
            }
            Device(SPIC) {
                Name(_HID, 0x160d94d)
                Name(RSRC, Buffer(0x15) {0x47, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x47, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x22, 0x0, 0x0, 0x79, 0x0 })
                Name(SSRC, Buffer(0x15) {0x47, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x47, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x22, 0x0, 0x0, 0x79, 0x0 })
                Method(_CRS) {
                    CreateWordField(RSRC, 0x2, IOA1)
                    CreateWordField(RSRC, 0x4, IOA2)
                    CreateWordField(RSRC, 0xa, IOB1)
                    CreateWordField(RSRC, 0xc, IOB2)
                    CreateWordField(RSRC, 0x11, IRQV)
                    Store(\_SB.PCI0.PWR.G10A, IOA1)
                    Store(\_SB.PCI0.PWR.G10A, IOA2)
                    Or(\_SB.PCI0.PWR.G10A, \_SB.PCI0.PWR.G10L, IOB1)
                    Or(\_SB.PCI0.PWR.G10A, \_SB.PCI0.PWR.G10L, IOB2)
                    If(GO22) {
                        If(GO23) {
                            Store(Zero, IRQV)
                        }
                        Else {
                            ShiftLeft(0x1, 0xa, IRQV)
                        }
                    }
                    Else {
                        If(GO23) {
                            ShiftLeft(0x1, 0xb, IRQV)
                        }
                        Else {
                            ShiftLeft(0x1, 0x5, IRQV)
                        }
                    }
                    Return(RSRC)
                }
                Method(_SRS, 1) {
                    CreateWordField(Arg0, 0x2, IOA1)
                    CreateWordField(Arg0, 0xa, IOB1)
                    CreateWordField(Arg0, 0x11, IRQV)
                    Store(IOA1, \_SB.PCI0.PWR.G10A)
                    XOr(IOA1, IOB1, \_SB.PCI0.PWR.G10L)
                    FindSetRightBit(IRQV, Local0)
                    Decrement(Local0)
                    If(LEqual(Local0, Zero)) {
                        Store(0x1, GO22)
                        Store(0x1, GO23)
                    }
                    If(LEqual(Local0, 0x5)) {
                        Store(0x0, GO22)
                        Store(0x0, GO23)
                    }
                    If(LEqual(Local0, 0xa)) {
                        Store(0x1, GO22)
                        Store(0x0, GO23)
                    }
                    If(LEqual(Local0, 0xb)) {
                        Store(0x0, GO22)
                        Store(0x1, GO23)
                    }
                    Store(0x0, \_SB.PCI0.PWR.G10M)
                    Store(0x1, \_SB.PCI0.PWR.G10E)
                    Store(0x1, \_SB.PCI0.PWR.G10C)
                }
                Name(_PRS, Buffer(0x4a) {0x30, 0x47, 0x1, 0x80, 0x10, 0x80, 0x10, 0x1, 0x1, 0x47, 0x1, 0x84, 0x10, 0x84, 0x10, 0x1, 0x1, 0x30, 0x47, 0x1, 0x90, 0x10, 0x90, 0x10, 0x1, 0x1, 0x47, 0x1, 0x94, 0x10, 0x94, 0x10, 0x1, 0x1, 0x30, 0x47, 0x1, 0xa0, 0x10, 0xa0, 0x10, 0x1, 0x1, 0x47, 0x1, 0xa4, 0x10, 0xa4, 0x10, 0x1, 0x1, 0x30, 0x47, 0x1, 0xb0, 0x10, 0xb0, 0x10, 0x1, 0x1, 0x47, 0x1, 0xb4, 0x10, 0xb4, 0x10, 0x1, 0x1, 0x38, 0x22, 0x20, 0xc, 0x79, 0x0 })
                Method(_DIS) {
                    Store(0x0, \_SB.PCI0.PWR.G10E)
                    Store(0x0, \_SB.PCI0.PWR.G10C)
                    Store(0x1, GO22)
                    Store(0x1, GO23)
                }
                Method(_STA) {
                    If(LAnd(GO22, GO23)) {
                        Return(0xd)
                    }
                    Else {
                        Return(0xf)
                    }
                }
            }
            Device(COMA) {
                Name(_HID, 0x105d041)
                Name(MCD, 0xe)
                Method(_CRS) {
                    If(\_SB.PCI0.ISA.COMA._STA) {
                        Return(PSCS)
                        0xe
                    }
                    Else {
                        Return(Buffer(0x2) {0x79, 0x0 })
                    }
                }
                Method(_SRS, 1) {
                    PSSS
                    0xe
                    Arg0
                }
                Method(_PRS) {
                    Return(PSPS)
                    0xe
                }
                Method(_DIS) {
                    PSDI
                    0xe
                }
                Method(_STA) {
                    Return(PSST)
                    0xe
                }
                Name(_PSC, 0x0)
                Method(_PS0) {
                    Store(One, GO13)
                    Stall(0xc8)
                    Store(0x0, _PSC)
                }
                Method(_PS3) {
                    Store(Zero, GO13)
                    Store(0x3, _PSC)
                }
                Name(_PRW, Package() {
                    0xa
                    0x3
                })
            }
            Device(FIR) {
                Name(_HID, 0x170d94d)
                Name(_CID, 0x160633a)
                Name(MCD, 0xf)
                Method(_CRS) {
                    If(\_SB.PCI0.ISA.FIR._STA) {
                        Return(PSCS)
                        0xf
                    }
                    Else {
                        Return(Buffer(0x2) {0x79, 0x0 })
                    }
                }
                Method(B_SR, 1) {
                    PSSS
                    0xf
                    Arg0
                }
                Method(B_PR) {
                    Return(PSPS)
                    0xf
                }
                Method(B_DI) {
                    PSDI
                    0xf
                }
                Method(_STA) {
                    Return(PSST)
                    0xf
                }
                Name(_PSC, 0x0)
            }
            Device(LPTA) {
                Name(_HID, 0x4d041)
                Name(_UID, 0x1)
                Name(MCD, 0x10)
                Method(_CRS) {
                    If(\_SB.PCI0.ISA.LPTA._STA) {
                        Return(PSCS)
                        0x10
                    }
                    Else {
                        Return(Buffer(0x2) {0x79, 0x0 })
                    }
                }
                Method(B_SR, 1) {
                    PSSS
                    0x10
                    Arg0
                }
                Method(B_PR) {
                    Return(PSPS)
                    0x10
                }
                Method(B_DI) {
                    PSDI
                    0x10
                }
                Method(_STA) {
                    Return(PSST)
                    0x10
                }
                Name(_PSC, 0x0)
            }
            Device(LPTB) {
                Name(_HID, 0x4d041)
                Name(_UID, 0x2)
                Name(MCD, 0x11)
                Method(_CRS) {
                    If(\_SB.PCI0.ISA.LPTB._STA) {
                        Return(PSCS)
                        0x11
                    }
                    Else {
                        Return(Buffer(0x2) {0x79, 0x0 })
                    }
                }
                Method(B_SR, 1) {
                    PSSS
                    0x11
                    Arg0
                }
                Method(B_PR) {
                    Return(PSPS)
                    0x11
                }
                Method(B_DI) {
                    PSDI
                    0x11
                }
                Method(_STA) {
                    Return(PSST)
                    0x11
                }
                Name(_PSC, 0x0)
            }
            Device(ECP) {
                Name(_HID, 0x104d041)
                Name(MCD, 0x12)
                Method(_CRS) {
                    If(\_SB.PCI0.ISA.ECP._STA) {
                        Return(PSCS)
                        0x12
                    }
                    Else {
                        Return(Buffer(0x2) {0x79, 0x0 })
                    }
                }
                Method(B_SR, 1) {
                    PSSS
                    0x12
                    Arg0
                    PHS
                    0xda
                }
                Method(B_PR) {
                    Return(PSPS)
                    0x12
                }
                Method(B_DI) {
                    PSDI
                    0x12
                }
                Method(_STA) {
                    Return(PSST)
                    0x12
                }
                Name(_PSC, 0x0)
            }
            Device(EPP) {
                Name(_HID, 0x4d041)
                Name(_UID, 0x3)
                Name(MCD, 0x13)
                Method(_CRS) {
                    If(\_SB.PCI0.ISA.EPP._STA) {
                        Return(PSCS)
                        0x13
                    }
                    Else {
                        Return(Buffer(0x2) {0x79, 0x0 })
                    }
                }
                Method(B_SR, 1) {
                    PSSS
                    0x13
                    Arg0
                }
                Method(B_PR) {
                    Return(PSPS)
                    0x13
                }
                Method(B_DI) {
                    PSDI
                    0x13
                }
                Method(_STA) {
                    Return(PSST)
                    0x13
                }
                Name(_PSC, 0x0)
            }
            Device(SNC) {
                Name(_HID, 0x150d94d)
                Method(GPID) {
                    Return(PHSB)
                    0xc1
                    0x0
                }
                Method(GBRT) {
                    If(LEqual(\_SB.PCI0.ISA.EC0.ECOK, 0x0)) {
                        Store(PHSD, 0xdb)
                        0x96
                        Local0
                    }
                    Else {
                        Store(\_SB.PCI0.ISA.EC0.BRIT, Local0)
                    }
                    Return(PHSB)
                    0xd2
                    Local0
                }
                Method(SBRT, 1) {
                    Store(PHSB, 0xd0)
                    Arg0
                    Local0
                    If(LEqual(\_SB.PCI0.ISA.EC0.ECOK, 0x0)) {
                        PHSB
                        0xde
                        Local0
                    }
                    Else {
                        Store(Local0, \_SB.PCI0.ISA.EC0.BRIT)
                    }
                    Return(Zero)
                }
                Method(GPBR) {
                    Return(PHSB)
                    0xc6
                    0x0
                }
                Method(SPBR, 1) {
                    PHSB
                    0xc7
                    Arg0
                    Return(Zero)
                }
                Method(GCTR) {
                    If(LEqual(\_SB.PCI0.ISA.EC0.ECOK, 0x0)) {
                        Store(PHSD, 0xdb)
                        0x97
                        Local0
                    }
                    Else {
                        Store(\_SB.PCI0.ISA.EC0.CONT, Local0)
                    }
                    Return(PHSB)
                    0xd3
                    Local0
                }
                Method(SCTR, 1) {
                    Store(PHSB, 0xd1)
                    Arg0
                    Local0
                    If(LEqual(\_SB.PCI0.ISA.EC0.ECOK, 0x0)) {
                        PHSB
                        0xdf
                        Local0
                    }
                    Else {
                        Store(Local0, \_SB.PCI0.ISA.EC0.CONT)
                    }
                    Return(Zero)
                }
                Method(GPCR) {
                    Return(PHSB)
                    0xc8
                    0x0
                }
                Method(SPCR, 1) {
                    PHSB
                    0xc9
                    Arg0
                    Return(Zero)
                }
                Method(SLVT) {
                    Return(PHSB)
                    0xca
                    0x0
                }
                Method(SLTT) {
                    Return(PHSB)
                    0xcb
                    0x0
                }
                Method(SEVF) {
                    Return(PHSB)
                    0xcc
                    0x0
                }
                Method(GCMI, 1) {
                    Return(PHSD)
                    0xce
                    Arg0
                }
                Method(SCMI, 1) {
                    Return(PHSD)
                    0xcf
                    Arg0
                }
                Method(PWAK) {
                    Noop
                    Return(Zero)
                }
                Method(PWRN) {
                    Notify(\_SB.PWRB, 0x80)
                }
                Method(CSXB, 1) {
                    Acquire(MPHS, 0xffff)
                    Store(Arg0, SXBF)
                    PHS0
                    0xe2
                    Store(SXBF, Local0)
                    Release(MPHS)
                    Return(Local0)
                }
                Method(CMGB, 1) {
                    If(Arg0) {
                        Store(0x0, GO12)
                    }
                    Else {
                        Store(0x1, GO12)
                    }
                    Return(Zero)
                }
            }
            OperationRegion(GENC, PCI_Config, 0xb0, 0x4)
            Field(GENC, DWordAcc, NoLock, Preserve) {
                ISAS,	1,
                POSD,	1,
                Offset(0xb),
                ID0T,	1,
                ID1T,	1
            }
            OperationRegion(PCI, PCI_Config, 0x60, 0x4)
            Field(PCI, DWordAcc, NoLock, Preserve) {
                PIRQ,	32
            }
            Name(P1, Buffer(0x4) {0x0 })
            Method(RESP) {
                Store(P1, PIRQ)
            }
            Method(SAVP) {
                Store(PIRQ, P1)
            }
        }
    }
}
Scope(\_SI) {
    Method(_SST, 1) {
        If(LEqual(Arg0, 0x0)) {
        }
        If(LEqual(Arg0, 0x1)) {
        }
        If(LEqual(Arg0, 0x2)) {
        }
        If(LEqual(Arg0, 0x3)) {
        }
        If(LEqual(Arg0, 0x4)) {
        }
        If(LEqual(Arg0, 0x5)) {
        }
    }
}
Method(_WAK, 1) {
    Store(0x0, \_SB.PCI0.CRST)
    If(LEqual(Arg0, 0x1)) {
        PHS
        0xe0
    }
    If(LEqual(Arg0, 0x4)) {
        \_SB.PCI0.ISA.SPIC._SRS
        \_SB.PCI0.ISA.SPIC.SSRC
    }
    If(LEqual(SCMP, \_OS)) {
        "Microsoft Windows"
        Zero
        Notify(\_SB.PWRB, 0x2)
    }
    Return(Zero)
}
Scope(\_TZ) {
    DefThermalZone(ATF0) {
        Method(KELV, 1) {
            Store(Arg0, Local0)
            Multiply(Local0, 0xa, Local0)
            Add(Local0, 0xaab, Local0)
            Return(Local0)
        }
        Method(_TMP) {
            ShiftRight(PHSD, 0xdb, 0xc0)
            0x8
            Local0
            Return(KELV)
            Local0
        }
        Method(_PSV) {
            ShiftRight(PHSD, 0xdb, 0xc4)
            0x8
            Local0
            Return(KELV)
            Local0
        }
        Name(_PSL, Package() {
            \_PR.CPU0
        })
        Method(_CRT) {
            ShiftRight(PHSD, 0xdb, 0xc6)
            0x8
            Local0
            Return(KELV)
            Local0
        }
        Name(_TC1, 0x1)
        Name(_TC2, 0x1)
        Name(_TSP, 0x32)
    }
}
Scope(_SB) {
    Name(IRQP, Package() {
        0x0
        0x0
        0x0
        0x0
        0x0
        0x0
        0x0
        0x0
        0x0
        0x200
        0x0
        0x0
        0x0
        0x0
        0x0
        0x0
    })
    Device(LNKA) {
        Name(_HID, 0xf0cd041)
        Name(_UID, 0x1)
        Name(_PRS, Buffer(0x6) {0x23, 0x0, 0x2, 0x18, 0x79, 0x0 })
        Method(_DIS) {
            Or(\_SB.PCI0.ISA.PIRA, 0x80, \_SB.PCI0.ISA.PIRA)
        }
        Method(_CRS) {
            Name(BUFA, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
            CreateWordField(BUFA, 0x1, IRA1)
            And(\_SB.PCI0.ISA.PIRA, 0x8f, Local0)
            If(LLess(Local0, 0x80)) {
                And(Local0, 0xf, Local0)
                Store(DerefOf(Index(IRQP, Local0, Zero)), Local4)
                Store(Local4, IRA1)
            }
            Return(BUFA)
        }
        Method(_SRS, 1) {
            CreateWordField(Arg0, 0x1, IRA1)
            Store(IRA1, Local0)
            Store(Match(IRQP, 1 x,Local0, 0 ,0x0, 0x0), Local1)
            And(\_SB.PCI0.ISA.PIRA, 0x70, Local0)
            Or(Local1, Local0, \_SB.PCI0.ISA.PIRA)
        }
        Method(_STA) {
            If(LEqual(\_SB.PCI0.ISA.PIRA, 0x80)) {
                Return(0x9)
            }
            Else {
                Return(0xb)
            }
        }
    }
    Device(LNKB) {
        Name(_HID, 0xf0cd041)
        Name(_UID, 0x2)
        Name(_PRS, Buffer(0x6) {0x23, 0x0, 0x2, 0x18, 0x79, 0x0 })
        Method(_DIS) {
            Or(\_SB.PCI0.ISA.PIRB, 0x80, \_SB.PCI0.ISA.PIRB)
        }
        Method(_CRS) {
            Name(BUFA, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
            CreateWordField(BUFA, 0x1, IRA1)
            And(\_SB.PCI0.ISA.PIRB, 0x8f, Local0)
            If(LLess(Local0, 0x80)) {
                And(Local0, 0xf, Local0)
                Store(DerefOf(Index(IRQP, Local0, Zero)), Local4)
                Store(Local4, IRA1)
            }
            Return(BUFA)
        }
        Method(_SRS, 1) {
            CreateWordField(Arg0, 0x1, IRA1)
            Store(IRA1, Local0)
            Store(Match(IRQP, 1 x,Local0, 0 ,0x0, 0x0), Local1)
            And(\_SB.PCI0.ISA.PIRB, 0x70, Local0)
            Or(Local1, Local0, \_SB.PCI0.ISA.PIRB)
        }
        Method(_STA) {
            If(LEqual(\_SB.PCI0.ISA.PIRB, 0x80)) {
                Return(0x9)
            }
            Else {
                Return(0xb)
            }
        }
    }
    Device(LNKC) {
        Name(_HID, 0xf0cd041)
        Name(_UID, 0x3)
        Name(_PRS, Buffer(0x6) {0x23, 0x0, 0x2, 0x18, 0x79, 0x0 })
        Method(_DIS) {
            Or(\_SB.PCI0.ISA.PIRC, 0x80, \_SB.PCI0.ISA.PIRC)
        }
        Method(_CRS) {
            Name(BUFA, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
            CreateWordField(BUFA, 0x1, IRA1)
            And(\_SB.PCI0.ISA.PIRC, 0x8f, Local0)
            If(LLess(Local0, 0x80)) {
                And(Local0, 0xf, Local0)
                Store(DerefOf(Index(IRQP, Local0, Zero)), Local4)
                Store(Local4, IRA1)
            }
            Return(BUFA)
        }
        Method(_SRS, 1) {
            CreateWordField(Arg0, 0x1, IRA1)
            Store(IRA1, Local0)
            Store(Match(IRQP, 1 x,Local0, 0 ,0x0, 0x0), Local1)
            And(\_SB.PCI0.ISA.PIRC, 0x70, Local0)
            Or(Local1, Local0, \_SB.PCI0.ISA.PIRC)
        }
        Method(_STA) {
            If(LEqual(\_SB.PCI0.ISA.PIRC, 0x80)) {
                Return(0x9)
            }
            Else {
                Return(0xb)
            }
        }
    }
    Device(LNKD) {
        Name(_HID, 0xf0cd041)
        Name(_UID, 0x4)
        Name(_PRS, Buffer(0x6) {0x23, 0x0, 0x2, 0x18, 0x79, 0x0 })
        Method(_DIS) {
            Or(\_SB.PCI0.ISA.PIRD, 0x80, \_SB.PCI0.ISA.PIRD)
        }
        Method(_CRS) {
            Name(BUFA, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
            CreateWordField(BUFA, 0x1, IRA1)
            And(\_SB.PCI0.ISA.PIRD, 0x8f, Local0)
            If(LLess(Local0, 0x80)) {
                And(Local0, 0xf, Local0)
                Store(DerefOf(Index(IRQP, Local0, Zero)), Local4)
                Store(Local4, IRA1)
            }
            Return(BUFA)
        }
        Method(_SRS, 1) {
            CreateWordField(Arg0, 0x1, IRA1)
            Store(IRA1, Local0)
            Store(Match(IRQP, 1 x,Local0, 0 ,0x0, 0x0), Local1)
            And(\_SB.PCI0.ISA.PIRD, 0x70, Local0)
            Or(Local1, Local0, \_SB.PCI0.ISA.PIRD)
        }
        Method(_STA) {
            If(LEqual(\_SB.PCI0.ISA.PIRD, 0x80)) {
                Return(0x9)
            }
            Else {
                Return(0xb)
            }
        }
    }
}
BOOT: Lenth=39, Revision=1, Checksum=99,
	OEMID=SONY, OEM Table ID=Z1, OEM Revision=0x20000106,
	Creator ID=PTL, Creator Revision=0x1

----Next_Part(Fri_Mar_17_10:47:38_2000_518)----
