# [résolu][kde 4] Jauge batterie

## Lucio_

J'ai installe une gentoo sur mon portable tout marche très bien pour l'instant a l'exception de la jauge batterie. En effet il m'est impossible d'avoir le niveau de batterie. acpi marche très bien, j'ai plasma, mais le gadget ne fait n'indique rien sinon l'eclair de charge (que le portable soit branche ou pas). J'ai essaye kpowersave, mais ca ne marche pas non plus : DBUS daemon is not running, mais j'ai le meme message quand il l'est.

Merci d'avance a tout ceux qui pourrais m'apporter de l'aide.Last edited by Lucio_ on Tue Oct 28, 2008 9:57 pm; edited 1 time in total

----------

## kwenspc

L'acpi marche bien alors seulement en partie, amha. Si c'est le cas, la dsdt est foireuse. As-tu déjà testé ton laptop avec une autre distrib et est-ce que la jauge batterie fonctionnait? (si oui alors en effet un problème de config quelque part est en cause)

Quel est ton modèle de laptop? Ça nous aiderais.  :Wink: 

----------

## Lucio_

Merci pour laide, j'ai installe gentoo en utilisant un cd live ubuntu, et je n'ai rien remarque de spécial.

Mon portable est un sony vaio VGN Intel Core 2 Duo.

----------

## Lucio_

En fait merci ton postma bine aider (c'est pas pour autant règle loin de la)

J'ai trouve ce site:http://fr.gentoo-wiki.com/HOWTO_Corriger_les_probl%C3%A8mes_courants_li%C3%A9s_%C3%A0_l%27ACPI (je me suis servit du cache de google car le site ne marche pas) décompile re-compile le dsdt et je trouve 201 erreurs.

Le site propose des dsdt corriges, mais aucune ne correspond exactement a mon modèle (Sony Vaio VGN-NR21Z)

Je crois qu'il me reste plus qu'a trouver les 201 solutions

----------

## Kazuya

Hello,

Lucio_, donnes-nous ta table dsdt on va te la débuggé si jamais tu as dû mal  :Wink:  (bon moi j'en ai déjà débuggé quelques unes mais je ne te promets rien, du moins je préfère garder une réserve bien qu'en générale c'est toujours faisable  :Wink:  )

----------

## Lucio_

Ca serait très sympas parce que la je galère un peu;

```
DefinitionBlock ("dsdt.aml", "DSDT", 2, "Sony", "VAIO", 0x20071224)

{

    External (PDC1)

    External (PDC0)

    External (CFGD)

    External (^CPU0._PPC)

    OperationRegion (SMI0, SystemMemory, 0xBFEE2B38, 0x00000415)

    Field (SMI0, AnyAcc, NoLock, Preserve)

    {

        BCMD,   8, 

        DID,    32, 

        INFO,   4096

    }

    Field (SMI0, AnyAcc, NoLock, Preserve)

    {

                Offset (0x05), 

        INFB,   8

    }

    Field (SMI0, AnyAcc, NoLock, Preserve)

    {

                Offset (0x05), 

        INFD,   32

    }

    Field (SMI0, AnyAcc, NoLock, Preserve)

    {

                Offset (0x05), 

        INDD,   64

    }

    Field (SMI0, AnyAcc, NoLock, Preserve)

    {

                Offset (0x05), 

        SXBF,   8320

    }

    Field (SMI0, AnyAcc, NoLock, Preserve)

    {

                Offset (0x05), 

        INF1,   8, 

        INF2,   8

    }

    OperationRegion (SMI1, SystemIO, 0x0000FE00, 0x00000002)

    Field (SMI1, AnyAcc, NoLock, Preserve)

    {

        SMIC,   8

    }

    Mutex (MPHS, 0x00)

    Method (PHS0, 1, NotSerialized)

    {

        Store (Arg0, BCMD)

        Store (Zero, SMIC)

        While (LEqual (BCMD, Arg0)) {}

        Store (Zero, BCMD)

    }

    Method (PHS, 1, Serialized)

    {

        Acquire (MPHS, 0xFFFF)

        Store (Zero, DID)

        PHS0 (Arg0)

        Store (INFD, Local0)

        Release (MPHS)

        Return (Local0)

    }

    Method (PHSD, 2, Serialized)

    {

        Acquire (MPHS, 0xFFFF)

        Store (Zero, DID)

        Store (Arg1, INFD)

        PHS0 (Arg0)

        Store (INFD, Local0)

        Release (MPHS)

        Return (Local0)

    }

    Method (PHDD, 2, Serialized)

    {

        Acquire (MPHS, 0xFFFF)

        Store (Zero, DID)

        Store (Arg1, INDD)

        PHS0 (Arg0)

        Store (INDD, Local0)

        Release (MPHS)

        Return (Local0)

    }

    Method (PHSW, 3, Serialized)

    {

        Acquire (MPHS, 0xFFFF)

        Store (Zero, DID)

        Store (Arg1, INF1)

        Store (Arg2, INF2)

        PHS0 (Arg0)

        Store (INFB, Local0)

        Release (MPHS)

        Return (Local0)

    }

    Method (PHSB, 2, Serialized)

    {

        Acquire (MPHS, 0xFFFF)

        Store (Zero, DID)

        Store (Arg1, INFB)

        PHS0 (Arg0)

        Store (INFB, Local0)

        Release (MPHS)

        Return (Local0)

    }

    Mutex (MUTX, 0x00)

    OperationRegion (PRT0, SystemIO, 0x80, 0x04)

    Field (PRT0, DWordAcc, Lock, Preserve)

    {

        P80H,   32

    }

    Method (P8XH, 2, Serialized)

    {

        If (LEqual (Arg0, Zero))

        {

            Store (Or (And (P80D, 0xFFFFFF00), Arg1), P80D)

        }

        If (LEqual (Arg0, One))

        {

            Store (Or (And (P80D, 0xFFFF00FF), ShiftLeft (Arg1, 0x08)

                ), P80D)

        }

        If (LEqual (Arg0, 0x02))

        {

            Store (Or (And (P80D, 0xFF00FFFF), ShiftLeft (Arg1, 0x10)

                ), P80D)

        }

        If (LEqual (Arg0, 0x03))

        {

            Store (Or (And (P80D, 0x00FFFFFF), ShiftLeft (Arg1, 0x18)

                ), P80D)

        }

        Store (P80D, P80H)

    }

    Method (_PIC, 1, NotSerialized)

    {

        Store (Arg0, GPIC)

    }

    Method (_PTS, 1, NotSerialized)

    {

        Add (Arg0, 0x4D, Local0)

        DBGC (Local0, 0x80, BCEN)

        Store (Zero, P80D)

        P8XH (Zero, Arg0)

        Store (Arg0, PRM0)

        Store (0x51, SMIF)

        Store (Zero, TRP0)

        TRAP (0x50)

        Add (Arg0, 0x4D, Local0)

        DBGC (Local0, 0x81, BCEN)

    }

    Method (_WAK, 1, NotSerialized)

    {

        Or (Arg0, 0x50, Local0)

        DBGC (Local0, 0x80, BCEN)

        P8XH (One, 0xAB)

        Store (Arg0, PRM0)

        Store (0x52, SMIF)

        Store (Zero, TRP0)

        If (LOr (LEqual (Arg0, 0x03), LEqual (Arg0, 0x04)))

        {

            If (And (CFGD, 0x01000000))

            {

                If (LAnd (And (CFGD, 0xF0), LEqual (OSYS, 0x07D1)))

                {

                    TRAP (0x3D)

                }

            }

        }

        If (LEqual (RP1D, Zero))

        {

            Notify (\_SB.PCI0.RP01, Zero)

        }

        If (LEqual (RP2D, Zero))

        {

            Notify (\_SB.PCI0.RP02, Zero)

        }

        If (LEqual (RP3D, Zero))

        {

            Notify (\_SB.PCI0.RP03, Zero)

        }

        If (LEqual (RP5D, Zero))

        {

            Notify (\_SB.PCI0.RP05, Zero)

        }

        If (LEqual (Arg0, 0x03))

        {

            If (LEqual (Zero, ACTT)) {}

        }

        If (_OSI ("Windows 2006"))

        {

            Store (DETC, Local0)

            PHSB (0xE1, Local0)

        }

        Store (\_SB.PCI0.LPCB.EC.RPWR, PWRS)

        Store (\_SB.PCI0.LPCB.EC.RSCL, B0SC)

        Store (\_SB.PCI0.LPCB.EC.BATP, BNUM)

        Notify (\_SB.BAT0, 0x80)

        Notify (\_SB.BAT0, 0x81)

        If (LEqual (Arg0, 0x04))

        {

            Store (CM72, Local0)

            Store (Zero, CM72)

            If (LNotEqual (And (Local0, 0x84, Local0), 0x84))

            {

                Notify (\_SB.PWRB, 0x02)

            }

        }

        Else

        {

            If (And (PMST, One))

            {

                Notify (\_SB.PWRB, 0x02)

            }

        }

        \_PR.RPPC ()

        P8XH (Zero, 0xCD)

        Or (Arg0, 0x50, Local0)

        DBGC (Local0, 0x81, BCEN)

        Return (Package (0x02)

        {

            Zero, 

            Zero

        })

    }

    Method (GETB, 3, Serialized)

    {

        Multiply (Arg0, 0x08, Local0)

        Multiply (Arg1, 0x08, Local1)

        CreateField (Arg2, Local0, Local1, TBF3)

        Return (TBF3)

    }

    Method (PNOT, 0, Serialized)

    {

        If (MPEN)

        {

            If (And (PDC0, 0x08))

            {

                Notify (\_PR.CPU0, 0x80)

                If (And (PDC0, 0x10))

                {

                    Sleep (0x64)

                    Notify (\_PR.CPU0, 0x81)

                }

            }

            If (And (PDC1, 0x08))

            {

                Notify (\_PR.CPU1, 0x80)

                If (And (PDC1, 0x10))

                {

                    Sleep (0x64)

                    Notify (\_PR.CPU1, 0x81)

                }

            }

        }

        Else

        {

            Notify (\_PR.CPU0, 0x80)

            Sleep (0x64)

            Notify (\_PR.CPU0, 0x81)

        }

    }

    Method (TRAP, 1, Serialized)

    {

        Store (Arg0, SMIF)

        Store (Zero, TRP0)

        Return (SMIF)

    }

    Scope (_SB)

    {

        Method (_INI, 0, NotSerialized)

        {

            Store (0x07D0, OSYS)

            If (CondRefOf (_OSI, Local0))

            {

                If (_OSI ("Linux"))

                {

                    Store (One, LINX)

                }

                If (_OSI ("Windows 2001"))

                {

                    Store (0x07D1, OSYS)

                }

                If (_OSI ("Windows 2001 SP1"))

                {

                    Store (0x07D1, OSYS)

                }

                If (_OSI ("Windows 2001 SP2"))

                {

                    Store (0x07D2, OSYS)

                }

                If (_OSI ("Windows 2006"))

                {

                    Store (0x07D6, OSYS)

                }

            }

            If (LAnd (MPEN, LEqual (OSYS, 0x07D1)))

            {

                TRAP (0x3D)

            }

            TRAP (0x2B)

            TRAP (0x32)

        }

    }

    OperationRegion (GNVS, SystemMemory, 0xBFEE2A37, 0x0100)

    Field (GNVS, AnyAcc, Lock, Preserve)

    {

        OSYS,   16, 

        SMIF,   8, 

        PRM0,   8, 

        PRM1,   8, 

        SCIF,   8, 

        PRM2,   16, 

        LCKF,   8, 

        PRM4,   16, 

        P80D,   32, 

        LIDS,   8, 

        PWRS,   8, 

        DBGS,   8, 

        LINX,   8, 

                Offset (0x14), 

        ACT1,   8, 

        ACTT,   8, 

        PSVT,   8, 

        TC1V,   8, 

        TC2V,   8, 

        TSPV,   8, 

        CRTT,   8, 

        DTSE,   8, 

        DTS1,   8, 

        DTS2,   8, 

        BNUM,   8, 

        B0SC,   8, 

        B1SC,   8, 

        B2SC,   8, 

        B0SS,   8, 

        B1SS,   8, 

        B2SS,   8, 

        LBST,   8, 

        TBST,   8, 

                Offset (0x28), 

        APIC,   8, 

        MPEN,   8, 

        PCP0,   8, 

        PCP1,   8, 

        PPCM,   8, 

                Offset (0x32), 

                Offset (0x3C), 

        IGDS,   8, 

        TLST,   8, 

        CADL,   8, 

        PADL,   8, 

        CSTE,   16, 

        NSTE,   16, 

        SSTE,   16, 

        NDID,   8, 

        DID1,   32, 

        DID2,   32, 

        DID3,   32, 

        DID4,   32, 

        DID5,   32, 

                Offset (0x64), 

        PNID,   8, 

                Offset (0x67), 

        BLCS,   8, 

        BRTL,   8, 

        ALSE,   8, 

        ALAF,   8, 

        LLOW,   8, 

        LHIH,   8, 

                Offset (0x6E), 

        EMAE,   8, 

        EMAP,   16, 

        EMAL,   16, 

                Offset (0x74), 

        MEFE,   8, 

                Offset (0x78), 

        TPMP,   8, 

        TPME,   8, 

                Offset (0x82), 

        GTF0,   112, 

        IDEM,   8, 

                Offset (0x96), 

        SYID,   8, 

        BCEN,   8, 

                Offset (0xAA), 

        ASLB,   32, 

        IBTT,   8, 

        IPAT,   8, 

        ITVF,   8, 

        ITVM,   8, 

        IPSC,   8, 

        IBLC,   8, 

        IBIA,   8, 

        ISSC,   8, 

        I409,   8, 

        I509,   8, 

        I609,   8, 

        I709,   8, 

        IDMM,   8, 

        IDMS,   8, 

        IF1E,   8, 

        HVCO,   8, 

        NXD1,   32, 

        NXD2,   32, 

        NXD3,   32, 

        NXD4,   32, 

        NXD5,   32, 

        NXD6,   32, 

        NXD7,   32, 

        NXD8,   32

    }

    Name (DSEN, One)

    Name (ECON, Zero)

    Name (GPIC, Zero)

    Name (CTYP, Zero)

    Name (L01C, Zero)

    Name (VFN0, Zero)

    Name (VFN1, Zero)

    Name (AODV, Zero)

    Name (CADD, Zero)

    Name (PADD, Zero)

    Scope (_GPE)

    {

        Method (_L01, 0, NotSerialized)

        {

            Add (L01C, One, L01C)

            P8XH (Zero, One)

            P8XH (One, L01C)

            If (LAnd (LEqual (RP1D, Zero), \_SB.PCI0.RP01.HPSX))

            {

                Sleep (0x64)

                If (\_SB.PCI0.RP01.PDCX)

                {

                    Store (One, \_SB.PCI0.RP01.PDCX)

                    Store (One, \_SB.PCI0.RP01.HPSX)

                    Notify (\_SB.PCI0.RP01, Zero)

                }

                Else

                {

                    Store (One, \_SB.PCI0.RP01.HPSX)

                }

            }

            If (LAnd (LEqual (RP2D, Zero), \_SB.PCI0.RP02.HPSX))

            {

                Sleep (0x64)

                If (\_SB.PCI0.RP02.PDCX)

                {

                    Store (One, \_SB.PCI0.RP02.PDCX)

                    Store (One, \_SB.PCI0.RP02.HPSX)

                    Notify (\_SB.PCI0.RP02, Zero)

                }

                Else

                {

                    Store (One, \_SB.PCI0.RP02.HPSX)

                }

            }

            If (LAnd (LEqual (RP3D, Zero), \_SB.PCI0.RP03.HPSX))

            {

                Sleep (0x64)

                If (\_SB.PCI0.RP03.PDCX)

                {

                    Store (One, \_SB.PCI0.RP03.PDCX)

                    Store (One, \_SB.PCI0.RP03.HPSX)

                    Notify (\_SB.PCI0.RP03, Zero)

                }

                Else

                {

                    Store (One, \_SB.PCI0.RP03.HPSX)

                }

            }

            If (LAnd (LEqual (RP5D, Zero), \_SB.PCI0.RP05.HPSX))

            {

                Sleep (0x64)

                If (\_SB.PCI0.RP05.PDCX)

                {

                    Store (One, \_SB.PCI0.RP05.PDCX)

                    Store (One, \_SB.PCI0.RP05.HPSX)

                    Notify (\_SB.PCI0.RP05, Zero)

                }

                Else

                {

                    Store (One, \_SB.PCI0.RP05.HPSX)

                }

            }

        }

        Method (_L02, 0, NotSerialized)

        {

            Store (Zero, GPEC)

        }

        Method (_L03, 0, NotSerialized)

        {

            Notify (\_SB.PCI0.USB1, 0x02)

        }

        Method (_L04, 0, NotSerialized)

        {

            Notify (\_SB.PCI0.USB2, 0x02)

        }

        Method (_L05, 0, NotSerialized)

        {

            Notify (\_SB.PCI0.USB5, 0x02)

        }

        Method (_L06, 0, NotSerialized)

        {

            If (\_SB.PCI0.GFX0.GSSE)

            {

                \_SB.PCI0.GFX0.GSCI ()

            }

            Else

            {

                Store (One, SCIS)

            }

        }

        Method (_L09, 0, NotSerialized)

        {

            If (\_SB.PCI0.RP01.PSPX)

            {

                Store (One, \_SB.PCI0.RP01.PSPX)

                Store (One, \_SB.PCI0.RP01.PMSX)

                Notify (\_SB.PCI0.RP01, 0x02)

            }

            If (\_SB.PCI0.RP02.PSPX)

            {

                Store (One, \_SB.PCI0.RP02.PSPX)

                Store (One, \_SB.PCI0.RP02.PMSX)

                Notify (\_SB.PCI0.RP02, 0x02)

            }

            If (\_SB.PCI0.RP03.PSPX)

            {

                Store (One, \_SB.PCI0.RP03.PSPX)

                Store (One, \_SB.PCI0.RP03.PMSX)

                Notify (\_SB.PCI0.RP03, 0x02)

            }

            If (\_SB.PCI0.RP05.PSPX)

            {

                Store (One, \_SB.PCI0.RP05.PSPX)

                Store (One, \_SB.PCI0.RP05.PMSX)

                Notify (\_SB.PCI0.RP05, 0x02)

            }

        }

        Method (_L0B, 0, NotSerialized)

        {

            Notify (\_SB.PCI0.PCIB, 0x02)

        }

        Method (_L0C, 0, NotSerialized)

        {

            Notify (\_SB.PCI0.USB3, 0x02)

        }

        Method (_L0D, 0, NotSerialized)

        {

            If (\_SB.PCI0.EHC1.PMES)

            {

                Store (One, \_SB.PCI0.EHC1.PMES)

                Notify (\_SB.PCI0.EHC1, 0x02)

            }

            If (\_SB.PCI0.EHC2.PMES)

            {

                Store (One, \_SB.PCI0.EHC2.PMES)

                Notify (\_SB.PCI0.EHC2, 0x02)

            }

            If (\_SB.PCI0.HDEF.PMES)

            {

                Store (One, \_SB.PCI0.HDEF.PMES)

                Notify (\_SB.PCI0.HDEF, 0x02)

            }

        }

        Method (_L0E, 0, NotSerialized)

        {

            Notify (\_SB.PCI0.USB4, 0x02)

        }

        Method (_L1E, 0, NotSerialized)

        {

            Notify (\_SB.PWRB, 0x02)

        }

    }

    Scope (_PR)

    {

        Processor (CPU0, 0x00, 0x00001010, 0x06) {}

        Processor (CPU1, 0x01, 0x00001010, 0x06) {}

        Method (RPPC, 0, NotSerialized)

        {

            If (LEqual (OSYS, 0x07D2))

            {

                If (And (CFGD, One))

                {

             

                    {

                        Subtract (^CPU0._PPC, One, ^CPU0._PPC)

                        PNOT ()

                        Add (^CPU0._PPC, One, ^CPU0._PPC)

                        PNOT ()

                    }

                    Else

                    {

                        Add (^CPU0._PPC, One, ^CPU0._PPC)

                        PNOT ()

                        Subtract (^CPU0._PPC, One, ^CPU0._PPC)

                        PNOT ()

                    }

                }

            }

        }

    }

    Scope (_TZ)

    {

        ThermalZone (TZ00)

        {

            Method (_AC0, 0, Serialized)

            {

                Return (Add (0x0AAC, Multiply (ACTT, 0x0A)))

            }

            Method (_AC1, 0, Serialized)

            {

                Return (Add (0x0AAC, Multiply (ACT1, 0x0A)))

            }

            Method (_CRT, 0, Serialized)

            {

                Return (Add (0x0AAC, Multiply (CRTT, 0x0A)))

            }

            Method (_SCP, 1, Serialized)

            {

                Store (Arg0, CTYP)

            }

            Method (_TMP, 0, Serialized)

            {

                If (DTSE)

                {

                    If (LGreaterEqual (DTS1, DTS2))

                    {

                        Return (Add (0x0AAC, Multiply (DTS1, 0x0A)))

                    }

                    Return (Add (0x0AAC, Multiply (DTS2, 0x0A)))

                }

                If (ECON)

                {

                    Store (\_SB.PCI0.LPCB.EC.TS1R, Local0)

                    If (And (Local0, 0x80))

                    {

                        Subtract (Local0, 0x0100, Local0)

                    }

                    Return (Add (0x0AAC, Multiply (Local0, 0x0A)))

                }

                Return (0x0BB8)

            }

            Method (_PSL, 0, Serialized)

            {

                If (MPEN)

                {

                    Return (Package (0x02)

                    {

                        \_PR.CPU0, 

                        \_PR.CPU1

                    })

                }

                Return (Package (0x01)

                {

                    \_PR.CPU0

                })

            }

            Method (_PSV, 0, Serialized)

            {

                Return (Add (0x0AAC, Multiply (PSVT, 0x0A)))

            }

            Method (_TC1, 0, Serialized)

            {

                Return (TC1V)

            }

            Method (_TC2, 0, Serialized)

            {

                Return (TC2V)

            }

            Method (_TSP, 0, Serialized)

            {

                Return (TSPV)

            }

        }

        ThermalZone (TZ01)

        {

            Method (_AC0, 0, Serialized)

            {

                Return (^^TZ00._AC0 ())

            }

            Method (_AC1, 0, Serialized)

            {

                Return (^^TZ00._AC1 ())

            }

            Method (_CRT, 0, Serialized)

            {

                Return (^^TZ00._CRT ())

            }

            Method (_SCP, 1, Serialized)

            {

                Store (Arg0, CTYP)

            }

            Method (_TMP, 0, Serialized)

            {

                Return (^^TZ00._TMP ())

            }

            Method (_PSL, 0, Serialized)

            {

                Return (^^TZ00._PSL ())

            }

            Method (_PSV, 0, Serialized)

            {

                Return (^^TZ00._PSV ())

            }

            Method (_TC1, 0, Serialized)

            {

                Return (TC1V)

            }

            Method (_TC2, 0, Serialized)

            {

                Return (TC2V)

            }

            Method (_TSP, 0, Serialized)

            {

                Return (TSPV)

            }

        }

    }

    Scope (_SB)

    {

        Device (ADP1)

        {

            Name (_HID, "ACPI0003")

            Method (_PSR, 0, NotSerialized)

            {

                If (LEqual (ECON, Zero))

                {

                    And (PHSB (0xD4, Zero), 0x80, Local0)

                }

                Else

                {

                    Store (^^PCI0.LPCB.EC.RPWR, Local0)

                }

                If (LEqual (Local0, Zero))

                {

                    Return (Zero)

                }

                Else

                {

                    Return (One)

                }

            }

            Method (_PCL, 0, NotSerialized)

            {

                Return (_SB)

            }

        }

        Device (BAT0)

        {

            Name (_HID, EisaId ("PNP0C0A"))

            Name (_UID, Zero)

            Method (_STA, 0, NotSerialized)

            {

                DBGC (0xB0, 0x80, BCEN)

                Sleep (0x05)

                If (LEqual (ECON, Zero))

                {

                    Store (Zero, Local1)

                }

                Else

                {

                    Store (^^PCI0.LPCB.EC.BATP, Local1)

                }

                If (LEqual (Local1, Zero))

                {

                    Store (0x0F, Local0)

                }

                Else

                {

                    Store (0x1F, Local0)

                }

                DBGC (0xB0, 0x81, BCEN)

                Return (Local0)

            }

            Method (_BIF, 0, NotSerialized)

            {

                Name (MULV, Zero)

                DBGC (0xB1, 0x80, BCEN)

                Name (BATI, Package (0x0D)

                {

                    Zero, 

                    0x2710, 

                    0x2710, 

                    Zero, 

                    0xFFFFFFFF, 

                    0x03E8, 

                    0x0190, 

                    0x64, 

                    0x64, 

                    "", 

                    "", 

                    "LiOn", 

                    "Sony Corp."

                })

                Store (One, MULV)

                Sleep (0x05)

                If (LEqual (ECON, Zero)) {}

                Else

                {

                    And (^^PCI0.LPCB.EC.OMFH, 0x80, Local0)

                    If (Local0)

                    {

                        Store (Zero, Index (BATI, Zero))

                        Store (0x0A, MULV)

                    }

                    Else

                    {

                        Store (One, Index (BATI, Zero))

                    }

                    Store (^^PCI0.LPCB.EC.BDCH, Local0)

                    Or (ShiftLeft (Local0, 0x08), ^^PCI0.LPCB.EC.BDCL, Local0)

                    Store (Multiply (Local0, MULV), Index (BATI, One))

                    Store (^^PCI0.LPCB.EC.FCCH, Local0)

                    Or (ShiftLeft (Local0, 0x08), ^^PCI0.LPCB.EC.FCCL, Local0)

                    Store (Multiply (Local0, MULV), Index (BATI, 0x02))

                    Store (^^PCI0.LPCB.EC.BAVH, Local0)

                    Or (ShiftLeft (Local0, 0x08), ^^PCI0.LPCB.EC.BAVL, Local0)

                    Store (Multiply (Local0, MULV), Index (BATI, 0x04))

                }

                DBGC (0xB1, 0x81, BCEN)

                Return (BATI)

            }

            Method (_BST, 0, NotSerialized)

            {

                DBGC (0xB2, 0x80, BCEN)

                Name (PKG0, Package (0x04)

                {

                    0x02, 

                    0xFFFFFFFF, 

                    0xFFFFFFFF, 

                    0xFFFFFFFF

                })

                Sleep (0x05)

                If (LEqual (ECON, Zero)) {}

                Else

                {

                    If (LEqual (^^PCI0.LPCB.EC.CHGE, One))

                    {

                        Store (^^PCI0.LPCB.EC.RSCL, Local0)

                        If (LEqual (Local0, 0x64))

                        {

                            Store (Zero, Index (PKG0, Zero))

                        }

                        Else

                        {

                            Store (0x02, Index (PKG0, Zero))

                        }

                    }

                    Else

                    {

                        Store (One, Index (PKG0, Zero))

                    }

                    Name (MULV, Zero)

                    And (^^PCI0.LPCB.EC.OMFH, 0x80, Local0)

                    If (Local0)

                    {

                        Store (0x0A, MULV)

                    }

                    Else

                    {

                        Store (One, MULV)

                    }

                    Store (^^PCI0.LPCB.EC.BRCH, Local0)

                    Or (ShiftLeft (Local0, 0x08), ^^PCI0.LPCB.EC.BRCL, Local0)

                    Store (Multiply (Local0, MULV), Index (PKG0, 0x02))

                    Store (^^PCI0.LPCB.EC.BACH, Local0)

                    Or (ShiftLeft (Local0, 0x08), ^^PCI0.LPCB.EC.BACL, Local0)

                    If (LAnd (Local0, 0x8000))

                    {

                        Add (Not (Local0), One, Local0)

                        And (Local0, 0xFFFF, Local0)

                    }

                    Store (^^PCI0.LPCB.EC.BAVH, Local1)

                    Or (ShiftLeft (Local1, 0x08), ^^PCI0.LPCB.EC.BAVL, Local1)

                    Divide (Local1, 0x03E8, , Local1)

                    Store (Multiply (Local0, Local1), Index (PKG0, One))

                }

                DBGC (0xB2, 0x81, BCEN)

                Return (PKG0)

            }

            Method (_PCL, 0, NotSerialized)

            {

                Return (_SB)

            }

        }

        Device (LID0)

        {

            Name (_HID, EisaId ("PNP0C0D"))

            Method (_LID, 0, NotSerialized)

            {

                If (ECON)

                {

                    Store (^^PCI0.LPCB.EC.LSTE, Local0)

                }

                Else

                {

                    And (PHSB (0xD4, Zero), 0x20, Local0)

                }

                If (Local0)

                {

                    Return (Zero)

                }

                Else

                {

                    Return (One)

                }

            }

        }

        Device (PWRB)

        {

            Name (_HID, EisaId ("PNP0C0C"))

            Name (_PRW, Package (0x02)

            {

                0x1E, 

                0x04

            })

        }

        Mutex (PLOK, 0x00)

        Method (NCPU, 0, NotSerialized)

        {

            Acquire (PLOK, 0xFFFF)

            Notify (\_PR.CPU0, 0x80)

            Sleep (0x64)

            Notify (\_PR.CPU0, 0x81)

            Release (PLOK)

        }

        Device (PCI0)

        {

            Method (_INI, 0, NotSerialized)

            {

                Store (Zero, ^LPCB.SNC.XECR)

                Store (Zero, ^LPCB.SNC.SNBF)

            }

            Method (_S3D, 0, NotSerialized)

            {

                Return (0x02)

            }

            Method (_S4D, 0, NotSerialized)

            {

                Return (0x02)

            }

            Name (_HID, EisaId ("PNP0A08"))

            Name (_CID, 0x030AD041)

            Name (SUPP, Zero)

            Name (CTRL, Zero)

            Device (MCHC)

            {

                Name (_ADR, Zero)

                OperationRegion (HBUS, PCI_Config, 0x40, 0xC0)

                Field (HBUS, DWordAcc, NoLock, Preserve)

                {

                    EPEN,   1, 

                        ,   11, 

                    EPBR,   20, 

                            Offset (0x08), 

                    MHEN,   1, 

                        ,   13, 

                    MHBR,   18, 

                            Offset (0x20), 

                    PXEN,   1, 

                    PXSZ,   2, 

                        ,   23, 

                    PXBR,   6, 

                            Offset (0x28), 

                    DIEN,   1, 

                        ,   11, 

                    DIBR,   20, 

                            Offset (0x30), 

                    IPEN,   1, 

                        ,   11, 

                    IPBR,   20, 

                            Offset (0x50), 

                        ,   4, 

                    PM0H,   2, 

                            Offset (0x51), 

                    PM1L,   2, 

                        ,   2, 

                    PM1H,   2, 

                            Offset (0x52), 

                    PM2L,   2, 

                        ,   2, 

                    PM2H,   2, 

                            Offset (0x53), 

                    PM3L,   2, 

                        ,   2, 

                    PM3H,   2, 

                            Offset (0x54), 

                    PM4L,   2, 

                        ,   2, 

                    PM4H,   2, 

                            Offset (0x55), 

                    PM5L,   2, 

                        ,   2, 

                    PM5H,   2, 

                            Offset (0x56), 

                    PM6L,   2, 

                        ,   2, 

                    PM6H,   2, 

                            Offset (0x57), 

                        ,   7, 

                    HENA,   1, 

                            Offset (0x62), 

                    TUUD,   16, 

                            Offset (0x70), 

                        ,   4, 

                    TLUD,   12

                }

            }

            Name (BUF0, ResourceTemplate ()

            {

                WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode,

                    0x0000,             // Granularity

                    0x0000,             // Range Minimum

                    0x00FF,             // Range Maximum

                    0x0000,             // Translation Offset

                    0x0100,             // Length

                    ,, )

                DWordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,

                    0x00000000,         // Granularity

                    0x00000000,         // Range Minimum

                    0x00000CF7,         // Range Maximum

                    0x00000000,         // Translation Offset

                    0x00000CF8,         // Length

                    ,, , TypeStatic)

                IO (Decode16,

                    0x0CF8,             // Range Minimum

                    0x0CF8,             // Range Maximum

                    0x01,               // Alignment

                    0x08,               // Length

                    )

                DWordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,

                    0x00000000,         // Granularity

                    0x00000D00,         // Range Minimum

                    0x0000FFFF,         // Range Maximum

                    0x00000000,         // Translation Offset

                    0x0000F300,         // Length

                    ,, , TypeStatic)

                DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,

                    0x00000000,         // Granularity

                    0x000A0000,         // Range Minimum

                    0x000BFFFF,         // Range Maximum

                    0x00000000,         // Translation Offset

                    0x00020000,         // Length

                    ,, , AddressRangeMemory, TypeStatic)

                DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,

                    0x00000000,         // Granularity

                    0x000C0000,         // Range Minimum

                    0x000C3FFF,         // Range Maximum

                    0x00000000,         // Translation Offset

                    0x00004000,         // Length

                    ,, _Y00, AddressRangeMemory, TypeStatic)

                DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,

                    0x00000000,         // Granularity

                    0x000C4000,         // Range Minimum

                    0x000C7FFF,         // Range Maximum

                    0x00000000,         // Translation Offset

                    0x00004000,         // Length

                    ,, _Y01, AddressRangeMemory, TypeStatic)

                DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,

                    0x00000000,         // Granularity

                    0x000C8000,         // Range Minimum

                    0x000CBFFF,         // Range Maximum

                    0x00000000,         // Translation Offset

                    0x00004000,         // Length

                    ,, _Y02, AddressRangeMemory, TypeStatic)

                DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,

                    0x00000000,         // Granularity

                    0x000CC000,         // Range Minimum

                    0x000CFFFF,         // Range Maximum

                    0x00000000,         // Translation Offset

                    0x00004000,         // Length

                    ,, _Y03, AddressRangeMemory, TypeStatic)

                DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,

                    0x00000000,         // Granularity

                    0x000D0000,         // Range Minimum

                    0x000D3FFF,         // Range Maximum

                    0x00000000,         // Translation Offset

                    0x00004000,         // Length

                    ,, _Y04, AddressRangeMemory, TypeStatic)

                DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,

                    0x00000000,         // Granularity

                    0x000D4000,         // Range Minimum

                    0x000D7FFF,         // Range Maximum

                    0x00000000,         // Translation Offset

                    0x00004000,         // Length

                    ,, _Y05, AddressRangeMemory, TypeStatic)

                DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,

                    0x00000000,         // Granularity

                    0x000D8000,         // Range Minimum

                    0x000DBFFF,         // Range Maximum

                    0x00000000,         // Translation Offset

                    0x00004000,         // Length

                    ,, _Y06, AddressRangeMemory, TypeStatic)

                DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,

                    0x00000000,         // Granularity

                    0x000DC000,         // Range Minimum

                    0x000DFFFF,         // Range Maximum

                    0x00000000,         // Translation Offset

                    0x00004000,         // Length

                    ,, _Y07, AddressRangeMemory, TypeStatic)

                DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,

                    0x00000000,         // Granularity

                    0x000E0000,         // Range Minimum

                    0x000E3FFF,         // Range Maximum

                    0x00000000,         // Translation Offset

                    0x00004000,         // Length

                    ,, _Y08, AddressRangeMemory, TypeStatic)

                DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,

                    0x00000000,         // Granularity

                    0x000E4000,         // Range Minimum

                    0x000E7FFF,         // Range Maximum

                    0x00000000,         // Translation Offset

                    0x00004000,         // Length

                    ,, _Y09, AddressRangeMemory, TypeStatic)

                DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,

                    0x00000000,         // Granularity

                    0x000E8000,         // Range Minimum

                    0x000EBFFF,         // Range Maximum

                    0x00000000,         // Translation Offset

                    0x00004000,         // Length

                    ,, _Y0A, AddressRangeMemory, TypeStatic)

                DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,

                    0x00000000,         // Granularity

                    0x000EC000,         // Range Minimum

                    0x000EFFFF,         // Range Maximum

                    0x00000000,         // Translation Offset

                    0x00004000,         // Length

                    ,, _Y0B, AddressRangeMemory, TypeStatic)

                DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,

                    0x00000000,         // Granularity

                    0x000F0000,         // Range Minimum

                    0x000FFFFF,         // Range Maximum

                    0x00000000,         // Translation Offset

                    0x00010000,         // Length

                    ,, _Y0C, AddressRangeMemory, TypeStatic)

                DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,

                    0x00000000,         // Granularity

                    0x00000000,         // Range Minimum

                    0xDFFFFFFF,         // Range Maximum

                    0x00000000,         // Translation Offset

                    0x00000000,         // Length

                    ,, _Y0D, AddressRangeMemory, TypeStatic)

                DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,

                    0x00000000,         // Granularity

                    0xF0000000,         // Range Minimum

                    0xFEBFFFFF,         // Range Maximum

                    0x00000000,         // Translation Offset

                    0x0EC00000,         // Length

                    ,, _Y0E, AddressRangeMemory, TypeStatic)

                DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,

                    0x00000000,         // Granularity

                    0xFED40000,         // Range Minimum

                    0xFED44FFF,         // Range Maximum

                    0x00000000,         // Translation Offset

                    0x00000000,         // Length

                    ,, , AddressRangeMemory, TypeStatic)

            })

            Method (_CRS, 0, Serialized)

            {

                If (^MCHC.PM1L)

                {

                    CreateDWordField (BUF0, \_SB.PCI0._Y00._LEN, C0LN)

                    Store (Zero, C0LN)

                }

                If (LEqual (^MCHC.PM1L, One))

                {

                    CreateBitField (BUF0, \_SB.PCI0._Y00._RW, C0RW)

                    Store (Zero, C0RW)

                }

                If (^MCHC.PM1H)

                {

                    CreateDWordField (BUF0, \_SB.PCI0._Y01._LEN, C4LN)

                    Store (Zero, C4LN)

                }

                If (LEqual (^MCHC.PM1H, One))

                {

                    CreateBitField (BUF0, \_SB.PCI0._Y01._RW, C4RW)

                    Store (Zero, C4RW)

                }

                If (^MCHC.PM2L)

                {

                    CreateDWordField (BUF0, \_SB.PCI0._Y02._LEN, C8LN)

                    Store (Zero, C8LN)

                }

                If (LEqual (^MCHC.PM2L, One))

                {

                    CreateBitField (BUF0, \_SB.PCI0._Y02._RW, C8RW)

                    Store (Zero, C8RW)

                }

                If (^MCHC.PM2H)

                {

                    CreateDWordField (BUF0, \_SB.PCI0._Y03._LEN, CCLN)

                    Store (Zero, CCLN)

                }

                If (LEqual (^MCHC.PM2H, One))

                {

                    CreateBitField (BUF0, \_SB.PCI0._Y03._RW, CCRW)

                    Store (Zero, CCRW)

                }

                If (^MCHC.PM3L)

                {

                    CreateDWordField (BUF0, \_SB.PCI0._Y04._LEN, D0LN)

                    Store (Zero, D0LN)

                }

                If (LEqual (^MCHC.PM3L, One))

                {

                    CreateBitField (BUF0, \_SB.PCI0._Y04._RW, D0RW)

                    Store (Zero, D0RW)

                }

                If (^MCHC.PM3H)

                {

                    CreateDWordField (BUF0, \_SB.PCI0._Y05._LEN, D4LN)

                    Store (Zero, D4LN)

                }

                If (LEqual (^MCHC.PM3H, One))

                {

                    CreateBitField (BUF0, \_SB.PCI0._Y05._RW, D4RW)

                    Store (Zero, D4RW)

                }

                If (^MCHC.PM4L)

                {

                    CreateDWordField (BUF0, \_SB.PCI0._Y06._LEN, D8LN)

                    Store (Zero, D8LN)

                }

                If (LEqual (^MCHC.PM4L, One))

                {

                    CreateBitField (BUF0, \_SB.PCI0._Y06._RW, D8RW)

                    Store (Zero, D8RW)

                }

                If (^MCHC.PM4H)

                {

                    CreateDWordField (BUF0, \_SB.PCI0._Y07._LEN, DCLN)

                    Store (Zero, DCLN)

                }

                If (LEqual (^MCHC.PM4H, One))

                {

                    CreateBitField (BUF0, \_SB.PCI0._Y07._RW, DCRW)

                    Store (Zero, DCRW)

                }

                If (^MCHC.PM5L)

                {

                    CreateDWordField (BUF0, \_SB.PCI0._Y08._LEN, E0LN)

                    Store (Zero, E0LN)

                }

                If (LEqual (^MCHC.PM5L, One))

                {

                    CreateBitField (BUF0, \_SB.PCI0._Y08._RW, E0RW)

                    Store (Zero, E0RW)

                }

                If (^MCHC.PM5H)

                {

                    CreateDWordField (BUF0, \_SB.PCI0._Y09._LEN, E4LN)

                    Store (Zero, E4LN)

                }

                If (LEqual (^MCHC.PM5H, One))

                {

                    CreateBitField (BUF0, \_SB.PCI0._Y09._RW, E4RW)

                    Store (Zero, E4RW)

                }

                If (^MCHC.PM6L)

                {

                    CreateDWordField (BUF0, \_SB.PCI0._Y0A._LEN, E8LN)

                    Store (Zero, E8LN)

                }

                If (LEqual (^MCHC.PM6L, One))

                {

                    CreateBitField (BUF0, \_SB.PCI0._Y0A._RW, E8RW)

                    Store (Zero, E8RW)

                }

                If (^MCHC.PM6H)

                {

                    CreateDWordField (BUF0, \_SB.PCI0._Y0B._LEN, ECLN)

                    Store (Zero, ECLN)

                }

                If (LEqual (^MCHC.PM6H, One))

                {

                    CreateBitField (BUF0, \_SB.PCI0._Y0B._RW, ECRW)

                    Store (Zero, ECRW)

                }

                If (^MCHC.PM0H)

                {

                    CreateDWordField (BUF0, \_SB.PCI0._Y0C._LEN, F0LN)

                    Store (Zero, F0LN)

                }

                If (LEqual (^MCHC.PM0H, One))

                {

                    CreateBitField (BUF0, \_SB.PCI0._Y0C._RW, F0RW)

                    Store (Zero, F0RW)

                }

                CreateDWordField (BUF0, \_SB.PCI0._Y0D._MIN, M1MN)

                CreateDWordField (BUF0, \_SB.PCI0._Y0D._MAX, M1MX)

                CreateDWordField (BUF0, \_SB.PCI0._Y0D._LEN, M1LN)

                CreateDWordField (BUF0, \_SB.PCI0._Y0E._MIN, M2MN)

                CreateDWordField (BUF0, \_SB.PCI0._Y0E._MAX, M2MX)

                CreateDWordField (BUF0, \_SB.PCI0._Y0E._LEN, M2LN)

                ShiftLeft (^MCHC.PXBR, 0x1A, M1MX)

                ShiftRight (0x10000000, ^MCHC.PXSZ, Local0)

                Add (M1MX, Local0, M2MN)

                Add (Subtract (M2MX, M2MN), One, M2LN)

                Subtract (M1MX, One, M1MX)

                ShiftLeft (^MCHC.TLUD, 0x14, M1MN)

                Add (Subtract (M1MX, M1MN), One, M1LN)

                Return (BUF0)

            }

            Method (_PRT, 0, NotSerialized)

            {

                If (GPIC)

                {

                    Return (Package (0x13)

                    {

                        Package (0x04)

                        {

                            0x0001FFFF, 

                            Zero, 

                            Zero, 

                            0x10

                        }, 

                        Package (0x04)

                        {

                            0x0002FFFF, 

                            Zero, 

                            Zero, 

                            0x10

                        }, 

                        Package (0x04)

                        {

                            0x0007FFFF, 

                            Zero, 

                            Zero, 

                            0x10

                        }, 

                        Package (0x04)

                        {

                            0x0019FFFF, 

                            Zero, 

                            Zero, 

                            0x14

                        }, 

                        Package (0x04)

                        {

                            0x001AFFFF, 

                            Zero, 

                            Zero, 

                            0x10

                        }, 

                        Package (0x04)

                        {

                            0x001AFFFF, 

                            One, 

                            Zero, 

                            0x15

                        }, 

                        Package (0x04)

                        {

                            0x001AFFFF, 

                            0x02, 

                            Zero, 

                            0x12

                        }, 

                        Package (0x04)

                        {

                            0x001BFFFF, 

                            Zero, 

                            Zero, 

                            0x16

                        }, 

                        Package (0x04)

                        {

                            0x001CFFFF, 

                            Zero, 

                            Zero, 

                            0x11

                        }, 

                        Package (0x04)

                        {

                            0x001CFFFF, 

                            One, 

                            Zero, 

                            0x10

                        }, 

                        Package (0x04)

                        {

                            0x001CFFFF, 

                            0x02, 

                            Zero, 

                            0x12

                        }, 

                        Package (0x04)

                        {

                            0x001CFFFF, 

                            0x03, 

                            Zero, 

                            0x13

                        }, 

                        Package (0x04)

                        {

                            0x001DFFFF, 

                            Zero, 

                            Zero, 

                            0x17

                        }, 

                        Package (0x04)

                        {

                            0x001DFFFF, 

                            One, 

                            Zero, 

                            0x13

                        }, 

                        Package (0x04)

                        {

                            0x001DFFFF, 

                            0x02, 

                            Zero, 

                            0x12

                        }, 

                        Package (0x04)

                        {

                            0x001FFFFF, 

                            Zero, 

                            Zero, 

                            0x13

                        }, 

                        Package (0x04)

                        {

                            0x001FFFFF, 

                            One, 

                            Zero, 

                            0x13

                        }, 

                        Package (0x04)

                        {

                            0x001FFFFF, 

                            0x02, 

                            Zero, 

                            0x13

                        }, 

                        Package (0x04)

                        {

                            0x001FFFFF, 

                            0x03, 

                            Zero, 

                            0x10

                        }

                    })

                }

                Else

                {

                    Return (Package (0x13)

                    {

                        Package (0x04)

                        {

                            0x0001FFFF, 

                            Zero, 

                            ^LPCB.LNKA, 

                            Zero

                        }, 

                        Package (0x04)

                        {

                            0x0002FFFF, 

                            Zero, 

                            ^LPCB.LNKA, 

                            Zero

                        }, 

                        Package (0x04)

                        {

                            0x0007FFFF, 

                            Zero, 

                            ^LPCB.LNKA, 

                            Zero

                        }, 

                        Package (0x04)

                        {

                            0x0019FFFF, 

                            Zero, 

                            ^LPCB.LNKE, 

                            Zero

                        }, 

                        Package (0x04)

                        {

                            0x001AFFFF, 

                            Zero, 

                            ^LPCB.LNKA, 

                            Zero

                        }, 

                        Package (0x04)

                        {

                            0x001AFFFF, 

                            One, 

                            ^LPCB.LNKF, 

                            Zero

                        }, 

                        Package (0x04)

                        {

                            0x001AFFFF, 

                            0x02, 

                            ^LPCB.LNKC, 

                            Zero

                        }, 

                        Package (0x04)

                        {

                            0x001BFFFF, 

                            Zero, 

                            ^LPCB.LNKG, 

                            Zero

                        }, 

                        Package (0x04)

                        {

                            0x001CFFFF, 

                            Zero, 

                            ^LPCB.LNKB, 

                            Zero

                        }, 

                        Package (0x04)

                        {

                            0x001CFFFF, 

                            One, 

                            ^LPCB.LNKA, 

                            Zero

                        }, 

                        Package (0x04)

                        {

                            0x001CFFFF, 

                            0x02, 

                            ^LPCB.LNKC, 

                            Zero

                        }, 

                        Package (0x04)

                        {

                            0x001CFFFF, 

                            0x03, 

                            ^LPCB.LNKD, 

                            Zero

                        }, 

                        Package (0x04)

                        {

                            0x001DFFFF, 

                            Zero, 

                            ^LPCB.LNKH, 

                            Zero

                        }, 

                        Package (0x04)

                        {

                            0x001DFFFF, 

                            One, 

                            ^LPCB.LNKD, 

                            Zero

                        }, 

                        Package (0x04)

                        {

                            0x001DFFFF, 

                            0x02, 

                            ^LPCB.LNKC, 

                            Zero

                        }, 

                        Package (0x04)

                        {

                            0x001FFFFF, 

                            Zero, 

                            ^LPCB.LNKD, 

                            Zero

                        }, 

                        Package (0x04)

                        {

                            0x001FFFFF, 

                            One, 

                            ^LPCB.LNKD, 

                            Zero

                        }, 

                        Package (0x04)

                        {

                            0x001FFFFF, 

                            0x02, 

                            ^LPCB.LNKD, 

                            Zero

                        }, 

                        Package (0x04)

                        {

                            0x001FFFFF, 

                            0x03, 

                            ^LPCB.LNKA, 

                            Zero

                        }

                    })

                }

            }

            Method (_OSC, 4, NotSerialized)

            {

                DBGC (0x6C, 0x80, BCEN)

                CreateDWordField (Arg3, Zero, PSTS)

                CreateDWordField (Arg3, 0x04, PSUP)

                CreateDWordField (Arg3, 0x08, PCNT)

                Store (PSUP, SUPP)

                Store (PCNT, CTRL)

                Name (UID1, Buffer (0x10)

                {

                    /* 0000 */    0x5B, 0x4D, 0xDB, 0x33, 0xF7, 0x1F, 0x1C, 0x40, 

                    /* 0008 */    0x96, 0x57, 0x74, 0x41, 0xC0, 0x3D, 0xD7, 0x66

                })

                If (LEqual (Arg0, Buffer (0x10)

                        {

                            /* 0000 */    0x5B, 0x4D, 0xDB, 0x33, 0xF7, 0x1F, 0x1C, 0x40, 

                            /* 0008 */    0x96, 0x57, 0x74, 0x41, 0xC0, 0x3D, 0xD7, 0x66

                        }))

                {

                    And (CTRL, 0x1D, CTRL)

                    If (LNotEqual (And (SUPP, 0x16), 0x16))

                    {

                        And (CTRL, 0x1E)

                    }

                    If (Not (And (PSTS, One)))

                    {

                        If (And (CTRL, One)) {}

                        If (And (CTRL, 0x04)) {}

                        If (And (CTRL, 0x10)) {}

                    }

                    If (LNotEqual (Arg1, One))

                    {

                        Or (PSTS, 0x08, PSTS)

                        DBGC (0x6C, 0x81, BCEN)

                        Return (Arg3)

                    }

                    If (LNotEqual (PCNT, CTRL))

                    {

                        Or (PSTS, 0x10, PSTS)

                    }

                    Store (Zero, PCNT)

                    DBGC (0x6C, 0x82, BCEN)

                    Return (Arg3)

                }

                Else

                {

                    Or (PSTS, 0x04, PSTS)

                    DBGC (0x6C, 0x83, BCEN)

                    Return (Arg3)

                }

            }
```

Last edited by Lucio_ on Sat Oct 25, 2008 9:21 am; edited 2 times in total

----------

## geekounet

Met au moins des balises [code] autour de ta DSDT stp, ça sera plus lisible.  :Smile: 

Nan mais si je comprend bien ton premier message, t'arrives à avoir le niveau de la batterie avec les outils acpi et/ou acpitool non ?

Vu ton message d'erreur avec dbus, est-ce que ton user est bien dans le groupe plugdev ?

----------

## Lucio_

Non et je viens de le faire.

Du coup les deux (Kpowersave et le widget) affichent le niveau de la batterie, mais ne détecte pas les différents états branché/débranché.

Merci en tout cas, j'ai bien progressé matin.

----------

## Kazuya

Hello,

arf, concernant ta table dsdt   :Confused:  elle est franchement bien buggé...

Bon, j'ai un peu corrigé, de ça:

 *Quote:*   

> 
> 
> Maximum error count (200) exceeded
> 
> ASL Input:  dsdt.dsl - 1780 lines, 52806 bytes, 303 keywords
> ...

 

Tu passes à ça:

 *Quote:*   

> 
> 
> ASL Input:  dsdt.dsl - 1780 lines, 52878 bytes, 303 keywords
> 
> Compilation complete. 92 Errors, 0 Warnings, 0 Remarks, 8 Optimizations
> ...

 

Grâce à  ce patch (je n'ai pas voulus refaire un copié-collé du très long fichier):

 *Quote:*   

> 
> 
> --- dsdt.dsl    2008-10-25 13:08:16.000000000 +0200                    
> 
> +++ dsdt.dsl    2008-10-25 13:30:36.000000000 +0200                    
> ...

 

Pour l'appliquer, vérifie bien que ton fichier contenant tout pleins d'erreurs se nomme bien "dsdt.dsl", puis tu copies ce fichier dans le même répertoire que le fichier source et tu fais: 

```
patch -i dsdt.diff
```

Concernant les autres erreurs, j'ai un peu de mal..peut-être que d'autres trouverons comment bien corriger les erreurs du style:

 *Quote:*   

> 
> 
> dsdt.dsl   162:         DBGC (Local0, 0x80, BCEN)
> 
> Error    4062 -            ^ Object does not exist (DBGC)
> ...

 

(Erreur 4062 répéter plein de fois...)

Puis il ya ces deux autres erreurs: 

 *Quote:*   

> 
> 
> dsdt.dsl   649:                     {
> 
> Error    4094 -                     ^ syntax error, unexpected '{'
> ...

 

Concernant l'erreur de syntaxe avec '{', j'ai bien peur que ce ne soit pas une simple accolade à enlever mais une ligne de condition à rajouter(et je ne sais pas laquelle, pour ça il faudrait qu'une personne ayant le même pc que toi (et pas d'erreur dans sa table dsdt à cet endroit précis) te donnes ce qu'il faut mettre....ou un pro des tables dsdt   :Smile:  )

----------

## Lucio_

Merci pour ton message, en fait j'ai redecompille tout ça, après avoir applique les règles du patch il ne reste plus que 4 erreurs et 1 warning que j'ai résolut facilement.

Merci beaucoup.

----------

## Kazuya

Hello,

Ah bah c'est impeccable alors   :Very Happy: 

Moi qui voyait plutôt ça comme étant mal barré... 

Géniale   :Cool: 

----------

