soumaxetuirk Posted May 8, 2015 Share Posted May 8, 2015 Hello,I am trying to Fix my DSDT so that HWMoniter can read my FAN Speed of laptop (HP_DV6_6164tx).And trying to control the fan speed as its always staying in lowest speed no matter what the temperature is. This is my thermal zone from DSDT. Scope (_TZ) { ThermalZone (THRM) { Name (REGN, "Processor Thermal Zone") Name (FMAX, 0x15E0) Name (FMIN, 0x07D0) Method (FRSP, 0, NotSerialized) { If (\_SB.PCI0.LPCB.EC.ECOK) { Return (Multiply (\_SB.PCI0.LPCB.EC.FAT, 0xFF)) } Return (FMAX) } Method (FSSP, 1, NotSerialized) { If (\_SB.PCI0.LPCB.EC.ECOK) { Store (And (LNot (Arg0), One), \_SB.PCI0.LPCB.EC.FST) } } Method (_TMP, 0, Serialized) { If (\_SB.PCI0.LPCB.EC.ECOK) { Store (\_SB.PCI0.LPCB.EC.CPT0, Local0) And (HOTW, One, HOTW) If (LEqual (HOTW, Zero)) { If (LGreaterEqual (Local0, \_SB.PCI0.LPCB.EC.HOT)) { Store (One, HOTW) } } Return (Add (Multiply (Local0, 0x0A), 0x0AAC)) } Else { Return (0x0C3C) } } Method (_CRT, 0, Serialized) { Store (\_SB.PCI0.LPCB.EC.CRT, Local0) Return (Add (0x0AAC, Multiply (Local0, 0x0A))) } Method (_HOT, 0, NotSerialized) { Store (\_SB.PCI0.LPCB.EC.HOT, Local0) Return (Add (0x0AAC, Multiply (Local0, 0x0A))) } Method (_SCP, 1, Serialized) { Store (Zero, \_SB.PCI0.LPCB.EC.PAE) } } } I followed some guides from Rehabman,and ended of with this Device (SMCD) { Name (_HID, "MONITOR") Method (FAN0, 0, NotSerialized) { Store (^^^LPCB.EC.HOT, Local0) Store (^^^LPCB.EC.CRT, Local1) And (Local0, 0xFFFF, Local0) And (Local1, 0xFFFF, Local1) If (LNotEqual (Local0, Zero)) { If (LEqual (Local0, 0xFFFF)) { Store (Zero, Local0) } Else { Store (0x0100, Local2) Multiply (Local0, Local2, Local3) Add (Local1, Local3, Local4) Divide (0x03938700, Local4, Local5, Local6) Store (Local6, Local0) } } Else { Store (Zero, Local0) } Return (Local0) } } Still nothing... any help would be appreciated . Thank you Link to comment Share on other sites More sharing options...
RehabMan Posted May 8, 2015 Share Posted May 8, 2015 Hello,I am trying to Fix my DSDT so that HWMoniter can read my FAN Speed of laptop (HP_DV6_6164tx).And trying to control the fan speed as its always staying in lowest speed no matter what the temperature is. This is my thermal zone from DSDT. Scope (_TZ) { ThermalZone (THRM) { Name (REGN, "Processor Thermal Zone") Name (FMAX, 0x15E0) Name (FMIN, 0x07D0) Method (FRSP, 0, NotSerialized) { If (\_SB.PCI0.LPCB.EC.ECOK) { Return (Multiply (\_SB.PCI0.LPCB.EC.FAT, 0xFF)) } Return (FMAX) } Method (FSSP, 1, NotSerialized) { If (\_SB.PCI0.LPCB.EC.ECOK) { Store (And (LNot (Arg0), One), \_SB.PCI0.LPCB.EC.FST) } } Method (_TMP, 0, Serialized) { If (\_SB.PCI0.LPCB.EC.ECOK) { Store (\_SB.PCI0.LPCB.EC.CPT0, Local0) And (HOTW, One, HOTW) If (LEqual (HOTW, Zero)) { If (LGreaterEqual (Local0, \_SB.PCI0.LPCB.EC.HOT)) { Store (One, HOTW) } } Return (Add (Multiply (Local0, 0x0A), 0x0AAC)) } Else { Return (0x0C3C) } } Method (_CRT, 0, Serialized) { Store (\_SB.PCI0.LPCB.EC.CRT, Local0) Return (Add (0x0AAC, Multiply (Local0, 0x0A))) } Method (_HOT, 0, NotSerialized) { Store (\_SB.PCI0.LPCB.EC.HOT, Local0) Return (Add (0x0AAC, Multiply (Local0, 0x0A))) } Method (_SCP, 1, Serialized) { Store (Zero, \_SB.PCI0.LPCB.EC.PAE) } } } I followed some guides from Rehabman,and ended of with this Device (SMCD) { Name (_HID, "MONITOR") Method (FAN0, 0, NotSerialized) { Store (^^^LPCB.EC.HOT, Local0) Store (^^^LPCB.EC.CRT, Local1) And (Local0, 0xFFFF, Local0) And (Local1, 0xFFFF, Local1) If (LNotEqual (Local0, Zero)) { If (LEqual (Local0, 0xFFFF)) { Store (Zero, Local0) } Else { Store (0x0100, Local2) Multiply (Local0, Local2, Local3) Add (Local1, Local3, Local4) Divide (0x03938700, Local4, Local5, Local6) Store (Local6, Local0) } } Else { Store (Zero, Local0) } Return (Local0) } } Still nothing... any help would be appreciated . Thank you You can use ACPIDebug to debug your code. http://www.insanelymac.com/forum/topic/292800-dsdt-debuggingtracing-to-systemlog/ Note: Overheating implies you have other issues with power management and or DSDT patching... Link to comment Share on other sites More sharing options...
soumaxetuirk Posted May 10, 2015 Author Share Posted May 10, 2015 Thank you sir, I had to dig a little more but i managed to get it work.. Sir,i was wondering if i can use ACPIPoller.kext.I am having issues with the DSDT Patches,tried to modify and use ProBook Fan Patches still having no success. DSDT.zip Link to comment Share on other sites More sharing options...
RehabMan Posted May 10, 2015 Share Posted May 10, 2015 Thank you sir, I had to dig a little more but i managed to get it work.. Sir,i was wondering if i can use ACPIPoller.kext.I am having issues with the DSDT Patches,tried to modify and use ProBook Fan Patches still having no success. ACPIPoller.kext is used to call an ACPI method every second. The Info.plist is setup to call FCPU. Link to comment Share on other sites More sharing options...
twarh Posted April 23, 2016 Share Posted April 23, 2016 Hi soumaxetuirk, do you mind sharing what exactly you did when you said you dug a little deeper? I am afraid I'm in the same boat you were with my Hackintosh Laptop where the fans are simply stuck on the lowest setting! Thanks! Thank you sir, I had to dig a little more but i managed to get it work.. Sir,i was wondering if i can use ACPIPoller.kext.I am having issues with the DSDT Patches,tried to modify and use ProBook Fan Patches still having no success. Link to comment Share on other sites More sharing options...
Recommended Posts