Hi!
Ich versuchen eine SSDT für den GPIO zu erstellen.
Das habe ich dazu aus meiner DSDT
Code
- 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)
- }
- }
- }
Die SSDT GPIO sieht dann bei mir so aus:
Code
Ist das korrekt? Wenn falsch, was wäre richtigt?
Vielen Dank
URBANsUNITED