ProjectOSX

Welcome Guest!

Returning User? Login here.

Want membership privileges? Register here.

6 Pages V  « < 4 5 6  
Start a new topic Add Reply
> Acpimonitor, ACPIMonitor Plug-In Topic
azerq
post Nov 19 2011, 12:09 PM
Post #101
Hi Jingu !

Great thanks for your detailed reply.

Sorry for the DSDT submited. In deed, I've removed the one I told you about just before sending my post because I did not notice any change in Lion 10.7.2.

So here is the one with thermal zones THRM and TAH0 and TAH1.

Ok for the Acpimonitor !
Can you tell me if the rest of your method described remain the same?

Azerq

This post has been edited by azerq: Mar 7 2012, 07:45 PM
Jingu
post Nov 19 2011, 10:50 PM
Post #102
Azerq.

Your use of TA01 and TA02 looked fine in your dsdt. All you need to do now is to add Device (SMCD) to your dsdt. You can add the Device (SMCD) right above your Device (PS2K).

I have edited the below Device (SMCD) for your TA01 and TA02 variables.

CODE
Device (SMCD)
{
Name (_HID, "monitor")
Method (FAN0, 0, NotSerialized)
{
Store (^^EC0.TA02, Local0)
Store (^^EC0.TA01, Local1)
ShiftLeft (Local0, 0x08, Local0)
Or (Local0, Local1, Local0)
Store (0x80, Local2)
Store (0x02, Local3)
Multiply (Local2, Local3, Local4)
Multiply (Local0, Local4, Local5)
Divide (0x03938700, Local5, Local6, Local7)
Multiply (Local7, 0x0A, Local7)
Return (Local7)
}
}


If your Asus notebook is returning fan rpm values like mine, that formula should work for Lion. Don't forget to add ACPIMonitor.kext to Extra/Extensions.

This post has been edited by Jingu: Nov 19 2011, 10:52 PM
azerq
post Nov 19 2011, 11:59 PM
Post #103
Thanks again for your fast reply,

I modified my DSDT as you recommended and installed ACPIMonitor in Extra/Extensions. Didn't works huh.gif

(may be it's not the right version of Acpimonitor ?)

But the worst is that when reading your second last post, I just realized after many weeks of reading this topics that the Kext Acpimonitor is primarily used for monitoring the speed of the fans and not reducing their speed and thus reducing the high temperatures that is my big problem in Lion10.7.2 !!

Result: Great disappointment! But let's say that's also the world's Hackitosh! laugh.gif

So my question (not related to this topic of course) : From your experience with the Asus Laptop, which path should I follow to reduce the very high temperatures of my Laptop? (kexts to install DSDT changes, etc ...)

For your information, in Snowleopard, I do not use DSDT but I install the kexts that are in my Extra file and temperatures are not so hight :

Thanks for reading.
Any help and / or suggestions are very welcome :-)

In advance thank you!
Azerq

This post has been edited by azerq: Mar 7 2012, 07:45 PM
Jingu
post Nov 20 2011, 11:39 AM
Post #104
Azerq,

I saw one problem. You're using the old FakeSMC and FakeSMC plug-ins from version 2.1.

There's been a new FakeSMC version 3.1 with new 3.1 plug-ins since last June. There is a direct download link in the FakeSMC/Downloads section. Here's the download link for the 10.6 Release version 3.1 revision 477

http://www.projectosx.com/forum/index.php?...ost&id=3014
azerq
post Nov 21 2011, 11:24 PM
Post #105
Hi there Jingu !

I installed FakeSMC and the others plugings from 10.6 release (except X3100.kext and RadeonMonitor.kext) in both the two systems installed in my Laptop Asus X71Vn (SnowLeopard without DSDT and Lion with DSDT ans SSDT Tables).

Results : Temperatures have drastically dropped !! Thanks very much !
Also, I now have other sensors visible in istat menu

Unfortunately, as you will see in the capture, even if I installed ACPMImonitor of the 10.6 release, Fans sensors are still not active.

What I've noticed : Fans in Lion still turn continuously. And, it has also become the case in SnowLeopard with FakeSMC 3.1 (before Temperature was more high but Fans stop from time to time with FakeSMC 2.1).

My questions (Related to my Lion 10.7.2 installation; which is my ultimate goal !) :

I wonder if the correct activation of Fan sensor (trough your ACPImonitor Formula) which remains unsuccessful right now could address this issue ?
Or, the others revision of FakeSMC may help for that ? (I'm thinking about the last one 499 ?)
Or, may be, but it's just a supposition, editing FakeSMC 3.1 and adapting somme "thing" related to Fans in order to act like FakeSMC 2.1 in matter of Fans ?

Let me thank you for your reading and for your help (since approximatively two years of using SnowLeopard I've NEVER had those low temperature !! wink.gif)

Azerq

This post has been edited by azerq: Mar 7 2012, 07:45 PM
Slice
post Nov 22 2011, 06:53 PM
Post #106
Please take into account that FakeSMC and plugins do not influence on temperature and Fan speed. It just measure them.
Real influence comes from DSDT.
i3-2120 GA-H61M-S1 UEFI, Radeon HD6670-UEFI, ALC887(VoodooHDA 2.8.6), OS⌘10.9.5, OS⌘ 10.7.5 Clover FakeSMC_plugins_3.3.1 Realtek LAN v3.1.2
azerq
post Nov 23 2011, 08:42 PM
Post #107
Hi Slice, Hi Jingu and whomever can help !

QUOTE (Slice @ Nov 22 2011, 07:53 PM) *
Please take into account that FakeSMC and plugins do not influence on temperature and Fan speed. It just measure them.
Real influence comes from DSDT.

Thank you for your comment. Indeed, I realized this (cf : my second last post).

BTW, I need your advices to activate Fans sensors. I've applied recommended modifications with the help of Jingo without success.
Also, can you please take a quick look to my Extra File under Lion 10.7.2 ? Maybe you can guide me to address the problem of heating and Fans that turns continuously !

Great thanks in advance...
Meanwhile any suggestions from Jingu related to my last post still greatly welcom rolleyes.gif

Edit : For information, I post in this topic because my goal is also to activate correctly fans sensors (with ACPImonitor), in order to be able to implement the successful method posted by tmacyunn1 (post 94) for reducing Fans speed. Thank you for your comprehension.

Azerq

This post has been edited by azerq: Mar 7 2012, 07:46 PM
bkribbs
post Nov 24 2011, 05:10 AM
Post #108
How would I figure out which sensors relate to the fan on my laptop?
Slice
post Nov 25 2011, 08:27 PM
Post #109
So I don't understand you.
QUOTE (Slice @ Nov 22 2011, 10:53 PM) *
Please take into account that FakeSMC and plugins do not influence on temperature and Fan speed. It just measure them.
Real influence comes from DSDT.

QUOTE (azerq @ Nov 24 2011, 12:42 AM) *
Thank you for your comment. Indeed, I realized this (cf : my second last post).

BTW, I need your advices to activate Fans sensors.

my goal is also to activate correctly fans sensors (with ACPImonitor), in order to be able to implement the successful method posted by tmacyunn1 (post 94) for reducing Fans speed.

i3-2120 GA-H61M-S1 UEFI, Radeon HD6670-UEFI, ALC887(VoodooHDA 2.8.6), OS⌘10.9.5, OS⌘ 10.7.5 Clover FakeSMC_plugins_3.3.1 Realtek LAN v3.1.2
azerq
post Nov 25 2011, 09:38 PM
Post #110
Hi Slice,
Thank you for giving you time to read my post

QUOTE (Slice @ Nov 25 2011, 09:27 PM) *
So I don't understand you.

Surely you've realized I'm a beginner in the world of sensors rolleyes.gif
But, the reading of tmacyunn1 post (#94) made ​​me realize that he made some tests under windows with the use of RW (see Picture) and he managed by the help of ACPIMonitor to activate the correct control of the fans based on CPU temperature.
Here's the portion of his post when he talk about that:
QUOTE (tmacyunn1 @ Sep 7 2011, 02:41 PM) *
First: I use RW-everthing to get some register of hardware, at last i find some. There is a register about fan control, by writing some value to it can open or stop fan, or change the speed. As the picture shows below,
http://cl.ly/2p3x190z0q3Z240b233a

I do not know if I understand everything, but I think that any attempt to resolve my Fans problem will have to go, first, by activating their sensors in order to see their speed (rpm with iStat for example!)
Am I on the right way ?

Last bu not least, I don't want to abuse your time, but I wonder if I'm not missing a very simple thing!
So thank you to take a brief look at my Lion 10.7.2 Extra File
in order to kindly give me some ideas on the improvement my DSDT (always in connection with native Power Managment and Fans!)

A very great thanks for your efforts and your work for the world of Hackintosh
Azerq

This post has been edited by azerq: Mar 7 2012, 07:46 PM
Jingu
post Nov 27 2011, 10:05 AM
Post #111
Azerq,

Slice is right. Getting the fan rpm reading is quite different from controlling the fan rpm.

I'm glad that my post made things a little better for you, but I take no credit. We got some good developers that come up with good stuff. Actually, getting the fan rpm reading by adding Device SMCD is something that was already covered at the beginning of this very ACPIMonitor thread. I suggest you re-read this thread to find clues why you're not getting fan rpm reading. Also, check your kernel log for clues.
xmen1
post Jan 30 2012, 09:48 PM
Post #112
Someone I can edit my dsdt to work with ACPIMonitor, I tried but I can't. Please
http://www.mediafire.com/?03cynqkxa0q8c85
Mobo: Gigabyte GA-P55A-UD3 (rev 1.0) Bios F11 CPU: Intel Core i5-760 HD: OCZ-AGILITY 3 120 GB/Western Cav. Blue 500 GB
Mem: 8GB DDR3 1600 MHz G Skill Network LAN: Lnx2Mac's RTL81xx Audio: Patch ALC888 Graphic: Asus HD 6870 SO's: OS X MLion 10.8.2/Win7/8
THe KiNG
post Feb 5 2012, 09:57 PM
Post #113
For those looking for NCT677x here it is:

CODE
Device (SIOR) // Super IO Registers
{
Name (_HID, "MONITOR") // HWMonitor driver will look for this in order to load or not
Name (_STA, 0x0F)
Name (_CRS, ResourceTemplate () {IO (Decode16, 0x0290, 0x0290, 0x01, 0x10)})
OperationRegion (HWRE, SystemIO, 0x0290, 0x0A)
Field (HWRE, ByteAcc, NoLock, Preserve)
{
Offset (0x05),
HIDX, 8, // ADDRESS_REGISTER_OFFSET = 0x05
HDAT, 8 // DATA_REGISTER_OFFSET = 0x06
}

IndexField (HIDX, HDAT, ByteAcc, NoLock, Preserve) // BANK #0
{
Offset (0x00), // Bank #0 SMBus Register Map
SDAT, 8, // Bank0, Index 00h, SMBus Data (SMDATA)
SWSZ, 8, // Bank0, Index 01h, SMBus Write Data Size (SMWRSIZE)
SCMD, 8, // Bank0, Index 02h, SMBus Command (SMCMD)
SIDX, 8, // Bank0, Index 03h, SMBus INDEX (SMIDX)
SCTL, 8, // Bank0, Index 04h, SMBus Control (SMCTL)
SADR, 8, // Bank0, Index 05h, SMBus Address (SMADDR)
SCLF, 8, // Bank0, Index 06h, SCL FREQ (SCLFREQ)
, 8, // Bank0, Index 07h, Reserved
PADR, 8, // Bank0, Index 08h, PCH Address (PCHADDR)
ERRS, 8, // Bank0, Index 09h, SMBus Error Status (Error_status)
, 8, // Bank0, Index 0Ah, Reserved
PCMD, 8, // Bank0, Index 0Bh, PCH Command (PCHCMD)
, 8, // Bank0, Index 0Ch, Reserved
TSIA, 8, // Bank0, Index 0Dh, TSI Agent Enable Register (TSI_AGENT)
CTL3, 8, // Bank0, Index 0Eh, SMBus Control 3 Register (SMCTL3)
CTL2, 8, // Bank0, Index 0Fh, SMBus Control 2 Register (SMCTL2)
BADR, 8, // Bank0, Index 10h, BYTE ADDRESS (BYTE ADDR)
BIXH, 8, // Bank0, Index 11h, BYTE_IDX_H (High BYTE INDEX)
BIXL, 8, // Bank0, Index 12h, BYTE_IDX_L (LOW BYTE INDEX)
, 8, // Bank0, Index 13h, Reserved
, 8, // Bank0, Index 14h, Reserved
Offset (0x20), // Bank #0 Voltages
VCOR, 8, // Bank0, Index 20h - CPUVCORE - nominal voltage 1.2 V
V12V, 8, // Bank0, Index 21h - VIN0 +12 V
V33A, 8, // Bank0, Index 22h - AVCC -Analog +3.3 V power input. Internally supply power to all analog circuits.
V33V, 8, // Bank0, Index 23h - 3VCC +3.3 V power supply for driving 3 V on host interface.
V12N, 8, // Bank0, Index 24h - VIN1 +5V
VIN2, 8, // Bank0, Index 25h - VIN2 +5VSB
VIN3, 8, // Bank0, Index 26h - VIN3 +3.3V
Offset (0x4E),
BSEL, 3, // BANK_SELECT_REGISTER
Offset (0x5D), // Bank #0 VBAT Monitor Control Register
BATE, 1, // Bank0, Index 5Dh, Bit0 - EN_VBAT_MNT, 1: Enable battery voltage monitor
Offset (0x73), // Bank #0 Monitored Voltage Temperature
SYST, 8, // Bank0, Index 73h - SYSTIN
Offset (0x75),
CPUT, 8, // Bank0, Index 75h - CPUTIN
Offset (0x77),
AUXT, 8, // Bank0, Index 77h - AUXTIN
Offset (0xAE), // Bank0, Index AEh - PECI Agent Enable Register
PAG0, 1, // Bank0, Index AEh, bit0 - 0x01 to enable PECI Agent 0 mode
}

IndexField (HIDX, HDAT, ByteAcc, NoLock, Preserve) // BANK #2
{
Offset (0x00),
AGNT, 8, // Bank2, Index 00h - PECI Agent, 0Ch to select PECI Agent 0 as CPUFAN monitoring source
}

IndexField (HIDX, HDAT, ByteAcc, NoLock, Preserve) // BANK #3
{
Offset (0x00), // Bank #3 AUXFAN Monitor Temperature Source Select Register/STOPDUTY Enable Register
ATSS, 5, // Bank3, Index 00h, Bit0-4 - AUXFAN Temperature Source Select
}

IndexField (HIDX, HDAT, ByteAcc, NoLock, Preserve) // BANK #5
{
Offset (0x50), // Bank #5 Voltages
V3SB, 8, // Bank5, Index 50h - 3VSB +3.3 V stand-by power supply for the digital circuits
VBAT, 8, // Bank5, Index 51h - +3 V on-board battery for the digital circuits(EN_VBAT_MNT MUST BE SET!)
}

IndexField (HIDX, HDAT, ByteAcc, NoLock, Preserve) // BANK #6
{
Offset (0x3A), // Bank #6 FAN MIN RPM READING
F0MH, 8, // Bank6, Index 3Ah - SYSFANIN MIN High Byte
F0ML, 8, // Bank6, Index 3Bh - SYSFANIN MIN Low Byte
F1MH, 8, // Bank6, Index 3Ch - CPUFANIN MIN High Byte
F1ML, 8, // Bank6, Index 3Dh - CPUFANIN MIN Low Byte
F2MH, 8, // Bank6, Index 3Eh - AUXFANIN0 MIN High Byte
F2ML, 8, // Bank6, Index 3Fh - AUXFANIN0 MIN Low Byte
F3MH, 8, // Bank6, Index 40h - AUXFANIN1 MIN MIN High Byte
F3ML, 8, // Bank6, Index 41h - AUXFANIN1 MIN Low Byte
F4MH, 8, // Bank6, Index 42h - AUXFANIN2 MIN High Byte
F4ML, 8, // Bank6, Index 43h - AUXFANIN2 MIN Low Byte
Offset (0x56), // Bank #6 FAN RPM READING
F0HB, 8, // Bank6, Index 56h - SYSFANIN High Byte
F0LB, 8, // Bank6, Index 57h - SYSFANIN Low Byte
F1HB, 8, // Bank6, Index 58h - CPUFANIN High Byte
F1LB, 8, // Bank6, Index 59h - CPUFANIN Low Byte
F2HB, 8, // Bank6, Index 5Ah - AUXFANIN0 High Byte
F2LB, 8, // Bank6, Index 5Bh - AUXFANIN0 Low Byte
F3HB, 8, // Bank6, Index 5Ch - AUXFANIN1 High Byte
F3LB, 8, // Bank6, Index 5Dh - AUXFANIN1 Low Byte
F4HB, 8, // Bank6, Index 5Eh - AUXFANIN2 High Byte
F4LB, 8, // Bank6, Index 5Fh - AUXFANIN2 Low Byte
}

IndexField (HIDX, HDAT, ByteAcc, NoLock, Preserve) // BANK #7
{
Offset (0x00),
, 8,
PEFR, 8, // Bank7, Index 01h - PECI Enable Function Register, 95h to enable PECI3.0
Offset (0x03),
CPUS, 8, // Bank7, Index 03h - Select CPU Agent and Domain, 10h to select Agent 0 and Domain 0.
Offset (0x05),
CADR, 8, // Bank7, Index 05h - Client Address
WLEN, 8, // Bank7, Index 06h - Write Length
RLEN, 8, // Bank7, Index 07h - Read Length
CMDC, 8, // Bank7, Index 08h - Cmd Code
TBS0, 8, // Bank7, Index 09h - Tbase0 temperature for CPU Agent 0
Offset (0x0B),
WDT1, 8, // Bank7, Index 0Bh - Write Data 1
WDT2, 8, // Bank7, Index 0Ch - Write Data 2
WDT3, 8, // Bank7, Index 0Dh - Write Data 3
WDT4, 8, // Bank7, Index 0Eh - Write Data 4
Offset (0x17), // PECI temperature raw data
TRHB, 8, // Bank7, Index 17h - PECI temperature raw data High Byte
TRLB, 8, // Bank7, Index 18h - PECI temperature raw data Low Byte
Offset (0x26),
WFCS, 8, // Bank7, Index 26h - Retrieve PECI WFCS related data from client
RFCS, 8, // Bank7, Index 27h - Retrieve PECI RFCS related data from client
Offset (0x2A),
RDT1, 8, // Bank7, Index 2Ah - Read Data 1
RDT2, 8, // Bank7, Index 2Bh - Read Data 2
RDT3, 8, // Bank7, Index 2Ch - Read Data 3
RDT4, 8, // Bank7, Index 2Dh - Read Data 4
RDT5, 8, // Bank7, Index 2Eh - Read Data 5
RDT6, 8, // Bank7, Index 2Fh - Read Data 6
RDT7, 8, // Bank7, Index 30h - Read Data 7
RDT8, 8, // Bank7, Index 31h - Read Data 8
RDT9, 8, // Bank7, Index 32h - Read Data 9
}

Method (TSYS, 0, NotSerialized) // System Temperature Sensor
{
Store (Zero, BSEL)
Return (SYST)
}

Method (TCPU, 0, NotSerialized) // CPU Temperature Sensor
{
Store (Zero, BSEL)
Return (CPUT)
}

Method (FAN0, 0, NotSerialized) // System FAN Speed
{
Store (0x06, BSEL)
Store (F0HB, Local0)
Store (F0LB, Local1)
Add (Local0, Local1, Local2)
Multiply (Local2, 0x0A, Local3)
Return (Local3)
}

Method (FAN1, 0, NotSerialized) // CPU FAN Speed
{
Store (0x06, BSEL)
Store (F1HB, Local0)
Store (F1LB, Local1)
Add (Local0, Local1, Local2)
Multiply (Local2, 0x0A, Local3)
Return (Local3)
}

Method (VCPU, 0, NotSerialized) // CPUVCORE: CPU Voltage Sensor
{
Store (Zero, BSEL)
Return (Multiply (VCOR, 0x08))
}

Method (P12V, 0, NotSerialized) // VIN0: +12 V or CPUVCCIO???
{
Store (Zero, BSEL)
Return (Multiply (V12V, 0x08))
}

Method (VSN1, 0, NotSerialized) // AVCC: Analog +3.3 V
{
Store (Zero, BSEL)
Return (Multiply (V33A, 0x10))
}

Method (VSN2, 0, NotSerialized) // 3VCC: +3.3 V
{
Store (Zero, BSEL)
Return (Multiply (V33V, 0x10))
}

Method (VSN3, 0, NotSerialized) // 3VSB: +3.3 V
{
Store (0x05, BSEL)
Return (Multiply (V3SB, 0x10))
}

Method (VSN4, 0, NotSerialized)// VBAT: +3 V
{
Store (Zero, BSEL)
Store (One, BATE)
Store (0x05, BSEL)
Return (Multiply (VBAT, 0x10))
}

Method (VSN5, 0, NotSerialized) // VIN1: -12 V? or +5 V???
{
Store (Zero, BSEL)
Return (Multiply (V12N, 0x08))
}

Method (VSN6, 0, NotSerialized) // VIN2: DRAM or too high???
{
Store (Zero, BSEL)
Return (Multiply (VIN2, 0x08))
}

Method (VSN7, 0, NotSerialized) // VIN3: CPUPLL??
{
Store (Zero, BSEL)
Return (Multiply (VIN3, 0x08))
}

// AUXFAN Temperature Source Select:

// 0x01: Select SYSTIN as AUXFAN monitoring source. OK!
// 0x02: Select CPUTIN as AUXFAN monitoring source. NOT OK! Gave the value in fahrenheit?
// 0x03: Select AUXTIN as AUXFAN monitoring source. (Default)
// 0x04: Select SMBUSMASTER 0 as AUXFAN monitoring source.
// 0x05: Select SMBUSMASTER 1 as AUXFAN monitoring source.
// 0x06: Select SMBUSMASTER 2 as AUXFAN monitoring source.
// 0x07: Select SMBUSMASTER 3 as AUXFAN monitoring source.
// 0x08: Select SMBUSMASTER 4 as AUXFAN monitoring source.
// 0x09: Select SMBUSMASTER 5 as AUXFAN monitoring source.
// 0x0A: Select SMBUSMASTER 6 as AUXFAN monitoring source.
// 0x0B: Select SMBUSMASTER 7 as AUXFAN monitoring source.
// 0x0C: Select PECI Agent 0 as AUXFAN monitoring source.
// 0x0D: Select PECI Agent 1 as AUXFAN monitoring source.
// 0x0E: Select PCH_CHIP_CPU_MAX_TEMP as AUXFAN monitoring source.
// 0x0F: Select PCH_CHIP_TEMP as AUXFAN monitoring source.
// 0x10: Select PCH_CPU_TEMP as AUXFAN monitoring source.
// 0x11: Select PCH_MCH_TEMP as AUXFAN monitoring source.
// 0x12: Select PCH_DIM0_TEMP as AUXFAN monitoring source.
// 0x13: Select PCH_DIM1_TEMP as AUXFAN monitoring source.
// 0x14: Select PCH_DIM2_TEMP as AUXFAN monitoring source.
// 0x15: Select PCH_DIM3_TEMP as AUXFAN monitoring source.
// 0x16: Select BYTE_TEMP as AUXFAN monitoring source.

Method (TAMB, 0, NotSerialized) // AUXFAN Temperature Source Select Hack
{
Store (0x03, BSEL)
Store (0x0C, ATSS) // Select AUXFAN monitoring source
Store (Zero, BSEL)
Return (AUXT)
}
}


It was made for my board with only 2 FANS, I didn't had time to finish/implement SMBus/PECI stuff b/c I moved from ACPI to dedicated plugin.
I will pass the source to mozodojo, to implement it on updated project.

Enjoy and share!
Slice
post Feb 6 2012, 11:27 AM
Post #114
This is only DSDT patch or ACPImonitor changes required?
i3-2120 GA-H61M-S1 UEFI, Radeon HD6670-UEFI, ALC887(VoodooHDA 2.8.6), OS⌘10.9.5, OS⌘ 10.7.5 Clover FakeSMC_plugins_3.3.1 Realtek LAN v3.1.2
THe KiNG
post Feb 6 2012, 04:04 PM
Post #115
QUOTE (Slice @ Feb 6 2012, 02:27 PM) *
This is only DSDT patch or ACPImonitor changes required?

For Lion yes, ACPIMonitor needs to be fixed, it display wrong values on FAN read, and was the reason to move the development to dedicated plugin...
Slice
post Feb 14 2012, 10:22 AM
Post #116
QUOTE (THe KiNG @ Feb 6 2012, 08:04 PM) *
For Lion yes, ACPIMonitor needs to be fixed, it display wrong values on FAN read, and was the reason to move the development to dedicated plugin...

Looks like evaluateInteger() is wrong? What is the replacement?
i3-2120 GA-H61M-S1 UEFI, Radeon HD6670-UEFI, ALC887(VoodooHDA 2.8.6), OS⌘10.9.5, OS⌘ 10.7.5 Clover FakeSMC_plugins_3.3.1 Realtek LAN v3.1.2
Fabio1971
post Mar 15 2012, 06:08 AM
Post #117
hello
I would like to request an information and that 'the piece of code from SMCD injectare in dsdt for my motherboard Asus P6T Deluxe V2 and what plugin to add to the FakeSMC. Thanks

This post has been edited by piper69: Mar 23 2012, 07:35 PM
I7 960 - P6T Deluxe - GTX 470 - Corsair 12GB - SSD 120 Vertex Agility - 2x 1T WD
GhaleonX
post Apr 15 2012, 06:46 PM
Post #118
QUOTE (THe KiNG @ Feb 5 2012, 04:57 PM) *
For those looking for NCT677x here it is:

It was made for my board with only 2 FANS, I didn't had time to finish/implement SMBus/PECI stuff b/c I moved from ACPI to dedicated plugin.
I will pass the source to mozodojo, to implement it on updated project.

Enjoy and share!


I've been trying to wrap my head around this lately, but I keep running into difficulty. I have NCT6775F, and I've read in your previous posts about having an (EC) entry in DSDT as well - The functions of Device (EC) seem to work if I add it out of thin air (shows up in ioreg, and gives the same boot-ec values from macpro5,1). Does this mean that the EC functions are mostly something that's not handled by a particular chip?

I've also got several other thermal monitoring devices listed in my DSDT; OMSC, ^PCIE, RMSC, and WIM1. I'm assuming that PCIE is for monitoring voltages to the PCIE bus, and reading up on WIM1 seems to suggest it's just a virtual device anyway.

phaedrus
post Mar 7 2013, 08:46 PM
Post #119
Hello,

First of all thanks to everybody involved in the development of FakeSMC and its plugins. I'm not really sure if this post should belong with more general DSDT editing, but I'm trying to work out how to modify my DSDT to get the ACPIMonitor plugin to load and to read the speed of a single CPU fan, so here goes.

My DSDT appears to have some sort of thermal zone defined, but I can't work out how to interpret it - any help from the experts here would be very gratefully received.
CODE


Scope (_TZ)
{
Mutex (THR0, 0x00)
PowerResource (FN10, 0x00, 0x0000)
{
Method (_ON, 0, NotSerialized)
{
}
Method (_OFF, 0, NotSerialized)
{
}
Method (_STA, 0, NotSerialized)
{
Return (One)
}
}
Device (FN1)
{
Name (_HID, EisaId ("PNP0C0B"))
Name (_UID, One)
Name (_PR0, Package (0x01)
{
FN10
})
Method (_PS0, 0, NotSerialized)
{
}
Method (_PS3, 0, NotSerialized)
{
}
}
ThermalZone (THRM)
{
Name (INIT, Zero)
Name (MODE, Zero)
Name (TERR, Zero)
Name (LEVE, Zero)
Name (PINT, Zero)
Method (_CRT, 0, NotSerialized)
{
Store (0x63, Local0)
Multiply (Local0, 0x0A, Local0)
Add (Local0, 0x0AAA, Local0)
Return (Local0)
}
Method (_PSV, 0, NotSerialized)
{
If (ECON)
{
If (TRLX)
{
Multiply (0x50, 0x0A, Local0)
}
Else
{
Multiply (0x5A, 0x0A, Local0)
}
Add (Local0, 0x0AAA, Local0)
}
Else
{
Store (0x0D9A, Local0)
}
Return (Local0)
}
Name (_PSL, Package (0x02)
{
\_PR.CPU0,
\_PR.CPU1
})
Method (_AC0, 0, NotSerialized)
{
Store (0x23, Local0)
Multiply (Local0, 0x0A, Local0)
Add (Local0, 0x0AAA, Local0)
Return (Local0)
}
Name (_AL0, Package (0x01)
{
FN1
})
Method (_SCP, 1, NotSerialized)
{
Store (Arg0, MODE)
}
Method (_TMP, 0, NotSerialized)
{
If (ECON)
{
If (LGreater (DTS1, DTS2))
{
Store (DTS1, Local1)
}
Else
{
Store (DTS2, Local1)
}
Multiply (Local1, 0x0A, Local0)
Add (Local0, 0x0AAA, Local0)
Return (Local0)
}
Return (Zero)
}
Name (_TC1, 0x04)
Name (_TC2, 0x03)
Name (_TSP, 0x96)
Name (THIN, One)
Name (TRLX, Zero)
Method (SFAN, 1, NotSerialized)
{
\_SB.PCI0.LPCB.KBC0.SMWR (0x06, 0x7A, 0x20, One)
If (Arg0)
{
If (LEqual (Arg0, One))
{
\_SB.PCI0.LPCB.KBC0.SMWR (0x06, 0x7A, 0x10, 0x99)
}
Else
{
If (LEqual (Arg0, 0x02))
{
\_SB.PCI0.LPCB.KBC0.SMWR (0x06, 0x7A, 0x10, 0x7B)
}
Else
{
\_SB.PCI0.LPCB.KBC0.SMWR (0x06, 0x7A, 0x10, 0x6D)
}
}
}
Else
{
\_SB.PCI0.LPCB.KBC0.SMWR (0x06, 0x7A, 0x10, 0xFF)
}
\_SB.PCI0.LPCB.KBC0.SMWR (0x06, 0x7A, 0x20, Zero)
}
Name (N_ST, Zero)
Name (L_ST, Zero)
Name (TMST, Package (0x0A)
{
0x24,
0x2B,
0x35,
0x3F,
0x49,
0x4E,
0x58,
0x60,
0x64,
0x69
})
Method (THCK, 0, NotSerialized)
{
Store (Zero, GPEC)
Acquire (THR0, 0xFFFF)
If (LGreater (DTS1, DTS2))
{
Store (DTS1, Local0)
}
Else
{
Store (DTS2, Local0)
}
Store (Zero, N_ST)
While (LGreater (Local0, DerefOf (Index (TMST, N_ST))))
{
If (LEqual (N_ST, 0x08))
{
Break
}
Else
{
Increment (N_ST)
}
}
If (LGreater (N_ST, L_ST))
{
If (Or (LEqual (N_ST, Zero), LEqual (N_ST, One)))
{
SFAN (Zero)
}
Else
{
If (Or (LEqual (N_ST, 0x02), LEqual (N_ST, 0x03)))
{
SFAN (One)
}
Else
{
If (Or (LEqual (N_ST, 0x04), LEqual (N_ST, 0x05)))
{
SFAN (0x02)
}
Else
{
SFAN (0x03)
If (LGreater (N_ST, 0x06))
{
Store (One, TRLX)
Notify (THRM, 0x81)
Notify (THRM, 0x80)
}
Else
{
}
}
}
}
}
Else
{
If (LLess (N_ST, L_ST))
{
If (And (LGreater (L_ST, 0x06), LLess (N_ST, 0x07)))
{
Store (Zero, TRLX)
Notify (THRM, 0x81)
Notify (THRM, 0x80)
}
If (LNot (N_ST))
{
SFAN (Zero)
}
Else
{
If (Or (LEqual (N_ST, One), LEqual (N_ST, 0x02)))
{
SFAN (One)
}
Else
{
If (Or (LEqual (N_ST, 0x03), LEqual (N_ST, 0x04)))
{
SFAN (0x02)
}
Else
{
SFAN (0x03)
}
}
}
}
}
Store (N_ST, L_ST)
Release (THR0)
}
}
}


I can handle simple DSDT patching, but this is beyond me. sad.gif

I'm currently using the new FakeSMC 4.2 branch, binaries 645 with HWMonitor and with iStat. This is on an elderly mini PC, the Maxdata Favorit XS300 which was designed as a competitor to the original 2006 Mac Mini and shares many of its laptop-like features. It's Intel Calistoga based with a T5500 Mobile Core 2 Duo, 945GM ICH7M and GMA950. Currently I'm running Lion 10.7.5 successfully but in 32-bit mode due to the GMA950 drivers.

Because it has a very compact form-factor and only a single tiny fan above the CPU, I'm very interested in monitoring fan speed and temperatures. IntelCPUMonitor.kext gives me core temperatures once I've set TJMax manually to 100C instead of the 85C it sets by default. It would be fantastic to be able to read the CPU fan speed directly. Should further information be necessary I'm happy to try and provide it.

I've been trying under Linux and Windows to detect a super i/o chip. Everest/Aida fails to detect anything as does Open Hardware Monitor. Lm-sensors sensors-detect finds multiple instances of the Maxim Max665x fan controller chip at different i2c addresses. The confidence level is only 2 and I think this code was flagged as unreliable and removed from newer builds of lm-sensors, so these probably don't exist. The ICHSMBus plugin loads.

I include my original DSDT and also the current patched version which is patched to remove IRQs from RTC and TMR and add an IRQ to HPET. This fixed sound problems with AppleHDA.kext loaded. EHCI is also patched to allow sleep.

Original and Patched DSDT zip

I'm currently using the latest Chameleon r2187 as boot loader, and its .plist is set so that CPU P-states and C-states are automatically generated. That all looks fine, and AppleIntelCPUPowerManagement.kext loads, "ioreg -lw0 | grep AICPMVers" reports 19136773 Sadly Speedstep doesn't seem to work, multiplier, voltage and frequency always stay the same, but I think this is because I'm using MacMini1,1 as identifier in a custom smbios.plist. The REV key in FakeSMC is set to MacMini 1,1 1.3f4.

I've probably forgotten several vital pieces of information, but that's enough for one post. Again I'm grateful if anyone should read this far and interpret what is going on in my DSDT.

Many Thanks,

MaxDATA Favorit 300XS Core2Duo T5500 OSX 10.7.5

6 Pages V  « < 4 5 6
Add Reply Start a new topic
2 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
1 Members: darkvoid