SSDT PATCH GPIO - So correct?

Hi!

I am trying to do a GPIO SSDT for my Laptop.

This is taken from my DSDT:

 Device (GPI0) { Method (_HID, 0, NotSerialized) // _HID: Hardware ID { If ((PCHG == 0x02)) { Return ("INT3437") } Return ("INT33C7") } Name (RBUF, ResourceTemplate () { DWordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x000003FF, // Range Maximum 0x00000000, // Translation Offset 0x00000400, // Length ,, _Y15, TypeStatic, DenseTranslation) }) CreateDWordField (RBUF, \_SB.PCI0.GPI0._Y15._MIN, BMIN) // _MIN: Minimum Base Address CreateDWordField (RBUF, \_SB.PCI0.GPI0._Y15._MAX, BMAX) // _MAX: Maximum Base Address Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings { BMIN = GPMN /* \GPMN */ BMAX = GPMX /* \GPMX */ Return (RBUF) /* \_SB_.PCI0.GPI0.RBUF */ } Method (_HRV, 0, NotSerialized) // _HRV: Hardware Revision { Return (^^LPCB.CRID) /* \_SB_.PCI0.LPCB.CRID */ } Method (_STA, 0, NotSerialized) // _STA: Status { If ((GPMN == Zero)) { Return (Zero) } If (((OSYS == 0x07DC) && (SMD0 == One))) { Return (Zero) } If ((OSYS < 0x07DC)) { Return (Zero) } If ((SMGP == Zero)) { Return (Zero) } Return (0x0F) } } } 

This is how I did the resulting SSDT for GPIO

DefinitionBlock ("", "SSDT", 2, "DRTNIA", "GPI0", 0x00000000) { External (GPMN, FieldUnitObj) External (SMGP, FieldUnitObj) Scope (\) { If (_OSI ("Darwin")) { GPMN = One SMGP = One } Else { } } } 

Is my SSDT correct? Or do I need to make changes? Which? Where?

Can somebody please help here?

Thanks alot!!!

URBANsUNITED

submitted by /u/URBANsUNITED
[link] [comments]