Device (BAT1) {
Name (_HID, EisaId ("PNP0C0A"))
Name (_UID, One)
Name (_PCL, Package (0x01)
{
_SB
})
Name (PBIF, Package (0x0D)
{
One,
0xFFFFFFFF,
0xFFFFFFFF,
One,
0xFFFFFFFF,
0xFA,
0x64,
0x0A,
0x19,
"BAT1",
" ",
" ",
" "
})
Name (PBST, Package (0x04)
{
Zero,
0xFFFFFFFF,
0xFFFFFFFF,
0x2710
})
Name (BAST, Zero)
Name (USBW, Zero)
Name (B1WT, Zero)
Method (_STA, 0, NotSerialized)
{
If (^^PCI0.LPCB.EC0.ECOK)
{
If (^^PCI0.LPCB.EC0.MBTS)
{
Return (0x1F)
}
}
Return (0x0F)
}
Method (_BIF, 0, NotSerialized)
{
If (^^PCI0.LPCB.EC0.ECOK)
{
If (^^PCI0.LPCB.EC0.MBTS)
{
UPBI ()
Return (PBIF)
}
}
IVBI ()
Return (PBIF)
}
Method (_BST, 0, NotSerialized)
{
If (^^PCI0.LPCB.EC0.ECOK)
{
If (^^PCI0.LPCB.EC0.MBTS)
{
UPBS ()
}
Else
{
IVBS ()
}
}
Else
{
IVBS ()
}
Return (PBST)
}
Method (UPBI, 0, NotSerialized)
{
Acquire (BATM, 0xFFFF)
Store (One, Index (PBIF, Zero))
Store (^^PCI0.LPCB.EC0.B1FC, Index (PBIF, 0x02))
WAEC ()
Store (0x02, ^^PCI0.LPCB.EC0.HIID)
WADR ()
Store (^^PCI0.LPCB.EC0.DICP, Local1)
Store (Local1, Index (PBIF, One))
Store (^^PCI0.LPCB.EC0.DIVO, Index (PBIF, 0x04))
CREC ()
Store (Divide (Local1, 0x0A, ), Index (PBIF, 0x05))
Store (Divide (Multiply (Local1, 0x03), 0x64, ), Index (
PBIF, 0x06))
WAEC ()
Store (0x06, ^^PCI0.LPCB.EC0.HIID)
WADR ()
Store (^^PCI0.LPCB.EC0.SBDN, Index (PBIF, 0x09))
CREC ()
Store ("LION", Index (PBIF, 0x0B))
WAEC ()
Store (0x05, ^^PCI0.LPCB.EC0.HIID)
WADR ()
Store (^^PCI0.LPCB.EC0.SBMN, Index (PBIF, 0x0C))
CREC ()
Release (BATM)
}
Method (UPBS, 0, NotSerialized)
{
Store (^^PCI0.LPCB.EC0.MCUR, Local5)
Store (POSW (Local5), Index (PBST, One))
Store (^^PCI0.LPCB.EC0.MBRM, Index (PBST, 0x02))
Store (^^PCI0.LPCB.EC0.MBVG, Index (PBST, 0x03))
If (^^PCI0.LPCB.EC0.MBTF)
{
Store (Zero, Index (PBST, Zero))
}
Else
{
If (LNotEqual (Local5, Zero))
{
If (^^PCI0.LPCB.EC0.MBTC)
{
Store (0x02, Index (PBST, Zero))
}
Else
{
Store (One, Index (PBST, Zero))
}
}
Else
{
If (^^PCI0.LPCB.EC0.MBTC)
{
Store (0x02, Index (PBST, Zero))
}
Else
{
Store (Zero, Index (PBST, Zero))
}
}
}
}
Method (IVBI, 0, NotSerialized)
{
Store (0xFFFFFFFF, Index (PBIF, One))
Store (0xFFFFFFFF, Index (PBIF, 0x02))
Store (0xFFFFFFFF, Index (PBIF, 0x04))
Store ("Bad", Index (PBIF, 0x09))
Store (" ", Index (PBIF, 0x0A))
Store ("Bad", Index (PBIF, 0x0B))
Store ("Bad", Index (PBIF, 0x0C))
}
Method (IVBS, 0, NotSerialized)
{
Store (Zero, Index (PBST, Zero))
Store (0xFFFFFFFF, Index (PBST, One))
Store (0xFFFFFFFF, Index (PBST, 0x02))
Store (0x2710, Index (PBST, 0x03))
}
}