- Joined
- Apr 21, 2016
- Messages
- 1,005
- Motherboard
- ASUS X556UA-Clover
- CPU
- i5-6200U
- Graphics
- HD 520,1366x768
- Mobile Phone
Sorry, your DSDT won't compile with the suggested change because I accidentally copied a code for I2C1, instead of I2C0.Thank you again, Ben, for your patience and constant advice,
1 when I modify the DSDT as above, it gave me 7 erros, so I didn't save it.
2 That return (Zero) touch seems working and cure only part of the problem I have, it secures me to use the internal keyboard to type ( otherwise as soon as I KU/load the VoodooI2C in the s/l/e, the keyboard will be lost.
3 whenever I add the VoodooI2C, the booting is extremely long, and mouse is snailing and OS less responsive.
4 If with DSDT, there will be no Kernel panic when loading/KU I2C.kext.
5 I always do the DSDT first and install the VoodooI2C afterwards, I will reverse and try again ( Voodoo first, cache rebuilding, patch afterward)
6 The IOreg I uploaded last time is without the Voodoo I2C injection, now I upload it again with the kext.
7 The DSDT I patched this time:
[bat] Asus N55SL/VivoBook Battery (requires ACPIBatteryManager.kext)
[igpu] Brightness fix
[sys] add IMEI
[sys] Fix _WAK Argo v2
[sys] Fix Mutex with non-zero SyncLevel
[sys] HPET Fix
VoodooI2C repo: window 2015 patch, not the 2012
[sys] RTC Fix
[sys] Skylake LPC ( I didn't do this)
[sys] SMBUS Fix
[usb] 7-series/8-series USB
[usb] USB3 _PRW 0x6D Skylake (instant wake)
8 my understanding is: in general, load the kext in Clover, if not working, then use Kext utility to install into S/L/E or L/E. Do the DSDT patch before adding any new Kext.
Pardon me if I still didn't get it working. and appreciate your assist always.
Try changing the mentioned code to this:
Code:
Scope (_SB.PCI0)
{
Device (I2C0)
{
Name (LINK, "\\_SB.PCI0.I2C0")
Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
{
Return (GETD (SB10))
}
Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
{
LPD0 (SB10)
}
Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
{
LPD3 (SB10)
}
If (LNotEqual (SMD0, 0x02))
{
Name (_HID, "INT3442") // _HID: Hardware ID
Method (_HRV, 0, NotSerialized) // _HRV: Hardware Revision
{
Return (LHRV (SB10))
}
Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
{
Return (LCRS (SMD0, SB00, SIR0))
}
Method (_STA, 0, NotSerialized) // _STA: Status
{
Return (LSTA (SMD0))
}
}
If (LEqual (SMD0, 0x02))
{
Name (_ADR, 0x00150000) // _ADR: Address
Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
{
If (PCIC (Arg0))
{
Return (PCID (Arg0, Arg1, Arg2, Arg3))
}
Return (Buffer (One)
{
0x00
})
}
}
}
}
Are you sure VoodooI2C killed your keyboard/mouse? I think the computer just froze, not something specific to keyboard.
And trackpad is still not working, am I correct? Try again, after you modify I2C0 code (no errors there, I checked )
Notice you didn't implement CPU PM (off topic here though...)
Read here:
https://www.tonymacx86.com/threads/guide-native-power-management-for-laptops.175801/
Recommended installation order:
1. Patch DSDT if needed
2. Manually load the kext with terminal, verify it's working. (safest way to install the kext, to avoid annoying KP's)
3. If not working, modify DSDT/other stuff in your setup, then try to load the kext again with terminal. Until it's working...
4. Install to /Library/Extensions