Jump to content
Slice

RadeonMonitor problems

128 posts in this topic

Recommended Posts

I think RadeonDump can onyl dump (read) not write.

PS: I found that newest Darwindumper has perhaps newer Version (finder show conent, Tools..) of RadenDump.

With that version (same dump values) the range end works better in case shows only the range wanted, not always a complete line - more bytes shown as given range.

RadeonDump -r 6b4,6b4

Found a device of class RadeonPCI: IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/PEG0@1/IOPP/GFX0@0/RadeonPCI
it matched on name "ATY_GPU"
0x06B4: 0x0001E083
GA-EP35:~ andreasm$ 
 

https://bitbucket.org/blackosx/darwindumper/downloads/

 

Do we need that DirectHW.kext (also within DarwinDumper) to write in some addresses?

I dont have installed  - i think also Darwindumper may kextload that at runtime? And how could we write in that adress space you told us?

Share this post


Link to post
Share on other sites
Advertisement

Found a device of class RadeonPCI: IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/PEG0@1/IOPP/PEGP@0/RadeonPCI

it matched on name "ATY_GPU"

0x0000:  FFFF7E5C FF404138 00000000 00000000 00000000 00000000 00000000 00000000

0x0020:  00000000 00000000 00000000 00000000 100100A2 00D816E6 100100A2 00D816E6

0x0040:  00000000 00000000 00010000 00010000 00000000 00000000 00000000 00000000

0x0060:  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

0x0080:  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

0x00A0:  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

0x00C0:  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

0x00E0:  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

0x0100:  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

 

my 290x


Found a device of class RadeonPCI: IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/PEG0@1/IOPP/PEGP@0/RadeonPCI

it matched on name "ATY_GPU"

0xFFFF7E5C:  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

 

Share this post


Link to post
Share on other sites

Hi, Slice.

I think the working RadeonPCI.kext (for use with that RadeonDump) is a few posts later. http://www.insanelymac.com/forum/topic/317915-clover-test-and-patches-for-polaris-gpu/page-8?do=findComment&comment=2340126 (otherwise all results are zeros)

How do you mean your range: in range 6A0,40 ... If crash then 6B0,10

In the examples the command looks:

RadeonDump2 -r 0,200 , how are the parameters for in range 6A0,40 (you mean start=6A0 and 40 length, so 6A0, 6EF would be OK ?

RX 460 0x67ef , Sierra working (for this test: no RadeonMonitor in use, only kextutil  RadeonPCI.kext, in Clover Lilu + whatevergreen )

RadeonDump2 -r 6A0,6FF

Found a device of class RadeonPCI: IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/PEG0@1/IOPP/GFX0@0/RadeonPCI
it matched on name "ATY_GPU"
0x06A0:  00000000 AAAA5555 00000000 AAAA5555 0003F010 0001E083 00000000 AAAA5555
0x06C0:  00000000 AAAA5555 00000000 AAAA5555 00000000 AAAA5555 00000000 00000064
0x06E0:  00000002 00000000 00000000 00000000 00000000 00000000 00000000 00000000
 
/RadeonDump2 -r 1700,1750  (found that you looked for that range in the past : ) )
Found a device of class RadeonPCI: IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/PEG0@1/IOPP/GFX0@0/RadeonPCI
it matched on name "ATY_GPU"
0x1700:  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
0x1720:  00000000 00000000 00000000 00000000 00000000 00010000 00000000 00000000
0x1740:  00000200 00000000 00000000 00000000 00000000 00000000 00000000 000
 
​RadeonDump2 -r 5400,5450 (found that you looked for that range in the past : ) )
Found a device of class RadeonPCI: IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/PEG0@1/IOPP/GFX0@0/RadeonPCI
it matched on name "ATY_GPU"
0x5400:  00000000 00000001 00000000 00000000 00000000 0000001A 00000002 00000002
0x5420:  00000000 00000000 00000800 80000000 00000100 00040000 00000000 00000000
0x5440:  00000000 00000000 00000000 00000000 00018003 00000000 00040040 4010E110
 
PS: attached the used two tools.
Usage:
sudo chown -R root:wheel ~/Downloads/RadeonPCI.kext

sudo chmod -R 755 ~/Downloads/RadeonPCI.kext

sudo kextutil -v ~/Downloads/RadeonPCI.kext

..

~/Downloads/RadeonDump2 -r start,end 

I seems have no those sources. Did you have it?

Share this post


Link to post
Share on other sites

Corrected RadeonPCI.kext. Hope it will work on most Radeon cards.

Utility I'll remake later.

attachicon.gifRadeonPCI.kext.zip

not worked at my machine

Picos-Mac-Pro:radeon pico$ ./RadeonDump1 -r 0,200

Found a device of class RadeonPCI: IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/PEGP@1/IOPP/GFX1@0/RadeonPCI

it matched on name "ATY_GPU"

Assertion failed: (KERN_SUCCESS == kr), function main, file ./RadeonDump1.c, line 301.

Abort trap: 6

 

with old RadeonPci.kext and newesr RadeonDump1

Picos-Mac-Pro:radeon pico$ ./RadeonDump1 -w 6b0,c0300014

Found a device of class RadeonPCI: IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/PEGP@1/IOPP/GFX1@0/RadeonPCI

it matched on name "ATY_GPU"

Picos-Mac-Pro:radeon pico$ ./RadeonDump1 -r 6b4,6b4

Found a device of class RadeonPCI: IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/PEGP@1/IOPP/GFX1@0/RadeonPCI

it matched on name "ATY_GPU"

0x06B4: 0x00000000

Share this post


Link to post
Share on other sites

Same for me, newer RadeonPCI.kext has that Abort Trap: 6. (AMD RX 460)

 

Using older RadeonPCI.kext together witj new RadeonDump1

 

RadeonDump1 -n 6b0,c0300014
Found a device of class RadeonPCI: IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/PEG0@1/IOPP/GFX0@0/RadeonPCI
it matched on name "ATY_GPU"
0xc0300014: 0x    5a2d
bash-3.2# 
 
RadeonDump1 -r 6B0,6BF
Found a device of class RadeonPCI: IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/PEG0@1/IOPP/GFX0@0/RadeonPCI
it matched on name "ATY_GPU"
0x06B0: 0xC0300014
0x06B4: 0x00005028
0x06B8: 0x00000000
0x06BC: 0xAAAA5555
 

 

Share this post


Link to post
Share on other sites

not worked at my machine

Picos-Mac-Pro:radeon pico$ ./RadeonDump1 -r 0,200

Found a device of class RadeonPCI: IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/PEGP@1/IOPP/GFX1@0/RadeonPCI

it matched on name "ATY_GPU"

Assertion failed: (KERN_SUCCESS == kr), function main, file ./RadeonDump1.c, line 301.

Abort trap: 6

 

with old RadeonPci.kext and newesr RadeonDump1

Picos-Mac-Pro:radeon pico$ ./RadeonDump1 -w 6b0,c0300014

Found a device of class RadeonPCI: IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/PEGP@1/IOPP/GFX1@0/RadeonPCI

it matched on name "ATY_GPU"

Picos-Mac-Pro:radeon pico$ ./RadeonDump1 -r 6b4,6b4

Found a device of class RadeonPCI: IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/PEGP@1/IOPP/GFX1@0/RadeonPCI

it matched on name "ATY_GPU"

0x06B4: 0x00000000

Should be

./RadeonDump1 -n 6b0,c0300014

 

Same for me, newer RadeonPCI.kext has that Abort Trap: 6. (AMD RX 460)

 

Using older RadeonPCI.kext together witj new RadeonDump1

 

RadeonDump1 -n 6b0,c0300014
Found a device of class RadeonPCI: IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/PEG0@1/IOPP/GFX0@0/RadeonPCI
it matched on name "ATY_GPU"
0xc0300014: 0x    5a2d
bash-3.2# 
 
RadeonDump1 -r 6B0,6BF
Found a device of class RadeonPCI: IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/PEG0@1/IOPP/GFX0@0/RadeonPCI
it matched on name "ATY_GPU"
0x06B0: 0xC0300014
0x06B4: 0x00005028
0x06B8: 0x00000000
0x06BC: 0xAAAA5555

 

Good!

Now see the behavior of output

5a2d -> 0x2d = 45 celsium degree

What if heavy load?

Share this post


Link to post
Share on other sites

HD 7790

Picos-Mac-Pro:radeon pico$ ./RadeonDump1 -n 6b0,c0300014
Found a device of class RadeonPCI: IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/PEGP@1/IOPP/GFX1@0/RadeonPCI
it matched on name "ATY_GPU"
0xc0300014: 0x       0

Share this post


Link to post
Share on other sites

Picos-Mac-Pro:radeon pico$ ./RadeonDump1 -r 714,7f4

Found a device of class RadeonPCI: IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/PEGP@1/IOPP/GFX1@0/RadeonPCI
it matched on name "ATY_GPU"
0x0714: 0x00000000
0x0718: 0x00000000
0x071C: 0x00000000
0x0720: 0x00000000
0x0724: 0x00000000
0x0728: 0x00000000
0x072C: 0x00000000
0x0730: 0x00000000
0x0734: 0x00000000
0x0738: 0x00000000
0x073C: 0x00000000
0x0740: 0x00000000
0x0744: 0x00000000
0x0748: 0x00000000
0x074C: 0x00000000
0x0750: 0x00000000
0x0754: 0x00000000
0x0758: 0x00000000
0x075C: 0x00000000
0x0760: 0x00000000
0x0764: 0x00000000
0x0768: 0x00000000
0x076C: 0x00000000
0x0770: 0x00000000
0x0774: 0x00000000
0x0778: 0x00000000
0x077C: 0x00000000
0x0780: 0x00000000
0x0784: 0x00000000
0x0788: 0x00000000
0x078C: 0x00000000
0x0790: 0x00000000
0x0794: 0x00000000
0x0798: 0x00000000
0x079C: 0x00000000
0x07A0: 0x00000000
0x07A4: 0x00000000
0x07A8: 0x00000000
0x07AC: 0x00000000
0x07B0: 0x00000000
0x07B4: 0x00000000
0x07B8: 0x00000000
0x07BC: 0x00000000
0x07C0: 0x00000000
0x07C4: 0x00000000
0x07C8: 0x00000000
0x07CC: 0x00000000
0x07D0: 0x00000000
0x07D4: 0x00000000
0x07D8: 0x00000000
0x07DC: 0x00000000
0x07E0: 0x00000000
0x07E4: 0x00000000
0x07E8: 0x00000000
0x07EC: 0x00000000
0x07F0: 0x00000000
0x07F4: 0x00000000


Picos-Mac-Pro:radeon pico$  ./RadeonDump1 -n 6b0,c0300e0c
Found a device of class RadeonPCI: IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/PEGP@1/IOPP/GFX1@0/RadeonPCI
it matched on name "ATY_GPU"
0xc0300e0c: 0x       0

Share this post


Link to post
Share on other sites

Should be

./RadeonDump1 -n 6b0,c0300014

Good!

Now see the behavior of output

5a2d -> 0x2d = 45 celsium degree

What if heavy load?

 

Sir, you want heavy GPU  load?!, Sir :)

Then you get it :)

 

running Geeks3D Tessmark X64 -

 

post-110586-0-92068100-1511953512_thumb.jpg

 

Before (idle, Desktop):

RadeonDump1 -n 6b0,c0300014 ... 0xc0300014: 0x    562b (43 Celsius?)

Start GPU stress:
0xc0300014: 0x    6a3a > 0xc0300014: 0x    703e (62 C)
Near Eend of GPU Test:   0xc0300014: 0x    7641 (65 C)

Very short after gpu load ends :

0xc0300014: 0x    6a36 (54 C) > 0xc0300014: 0x    6633 (51 C)

Now, after about 3 Min idle: 

0xc0300014: 0x    5028 (40 C)

 

PS:

I have question about FakeSMC (yours) vs Rehabman ( https://github.com/RehabMan/OS-X-FakeSMC-kozlek: also heavy load, but in this case of GPU FAN full speed :)

Both work as they should - i use rehabmans.

As i tried yours, for radeonMonitor tests there was some ??? about the FAN of the RX 460:

With your FakeSMC the GPU FAN runs full speed (for about 5 Seconds) at startup (Desktop appears) and at every wakeup (for me main problem).

With rehabmans the gpu fan stay quite in same situations (as it should).

Both with Sierra, no other change.

Can it be that some diff in SMC keys (exist or not or diff in value) can make that different FAN handling?

 

EDIT: I uploaded SMC -l of your & rehab Fakesmc

What can be they keys, values belong to the annoying full speed fan at start & wake?

SMC Slice: GPU fan runs full speed for 5 sec at startup  & wakeup
Last login: Wed Nov 29 12:49:54 on ttys000
GA-EP35:~ andreasm$ /Users/andreasm/Desktop/smc 
Apple System Management Control (SMC) tool 0.01
Usage:
/Users/andreasm/Desktop/smc [options]
    -f         : fan info decoded
    -h         : help
    -k <key>   : key to manipulate
    -l         : list all keys and values
    -r         : read the value of a key
    -w <value> : write the specified value to a key
    -v         : version

GA-EP35:~ andreasm$ /Users/andreasm/Desktop/smc -l
  #KEY  [ui32]  40 (bytes 00 00 00 28)
  $Num  [ui8 ]  1 (bytes 01)
  ACID  [ch8*]  (bytes ba be 3c 45 c0 03 10 43)
  ALI0  [{ali]  (bytes 06 01 02 00)
  ALRV  [ui16]  1 (bytes 00 01)
  ALV0  [{alv]  (bytes 01 01 03 b7 00 a3 00 15 6a f4)
  CLKH  [{clh]  (bytes 00 00 70 80 00 01 19 40)
  CLKT  [ui32]  162 (bytes 00 00 b3 a2)
  EPCI  [flag]  (bytes 06 90 07 00)
  FNum  [ui8 ]  (bytes 00)
  LSOF  [flag]  (bytes 01)
  LSSB  [{lso]  (bytes 01 01)
  LsNM  [ui8 ]  (bytes 01)
  LsbV  [{rev]  (bytes 01 04 0a 00 06)
  MOST  [ui16]  3 (bytes 80 03)
  MSDW  [ui8 ]  (bytes 01)
  MSPS  [{msp]  (bytes 00)
  MSSD  [si8 ]  (bytes 03)
  NATJ  [ui8 ]  (bytes 02)
  NTOK  [ui8 ]  (bytes 01)
  NVPR  [ui8 ]  (bytes 00)
  OSK0  [ch8*]  (bytes 6f 75 72 68 61 72 64 77 6f 72 6b 62 79 74 68 65 73 65 77 6f 72 64 73 67 75 61 72 64 65 64 70 6c)
  OSK1  [ch8*]  (bytes 65 61 73 65 64 6f 6e 74 73 74 65 61 6c 28 63 29 41 70 70 6c 65 43 6f 6d 70 75 74 65 72 49 6e 63)
  REV   [{rev]  (bytes 02 11 0f 00 00 16)
  RMde  [char]  (bytes 41)
  RPlt  [ch8*]  (bytes 64 38 00 00 00 00 00 00)
  RBr   [ch8*]  (bytes 64 38 00 00 00 00 00 00)
  BEMB  [flag]  (bytes 00)
  TC0D  [sp78]  (bytes 1f 00)
  FRC0  [freq]  (bytes 06 40)
  VC0C  [fp2e]  (bytes 3b a5)
  TC1D  [sp78]  (bytes 20 00)
  FRC1  [freq]  (bytes 06 40)
  TC2D  [sp78]  (bytes 1f 00)
  FRC2  [freq]  (bytes 06 40)
  TC3D  [sp78]  (bytes 20 00)
  FRC3  [freq]  (bytes 06 40)
  MPkC  [ui16]  0 (bytes a0 00)
  NATi  [ui16]  30 (bytes 00 1e)
  HE0N  [ui8 ]  (bytes 10)
GA-EP35:~ andreasm$ 

SMC rehabman https://github.com/RehabMan/OS-X-FakeSMC-kozlek
GPU FAN sosnt run full speed at startup / wakeup

GA-EP35:~ andreasm$ /Users/andreasm/Desktop/smc -l
  #KEY  [ui32]  46 (bytes 00 00 00 2e)
  FNum  [ui8 ]  0 (bytes 00)
  HWS0  [ch8*]  (bytes 47 69 67 61 62 79 74 65)
  HWS1  [ch8*]  (bytes 5a 37 37 2d 44 53 33 48)
  RPlt  [ch8*]  (bytes 64 38 00 00 00 00 00 00)
  RBr   [ch8*]  (bytes 64 38 00 00 00 00 00 00)
  TC0D  [sp78]  (bytes 27 00)
  TC1D  [sp78]  (bytes 29 00)
  TC2D  [sp78]  (bytes 27 00)
  TC3D  [sp78]  (bytes 28 00)
  TCAD  [sp78]  (bytes 2a 00)
  MlC0  [fp88]  (bytes 20 00)
  CC0C  [ui32]  128 (bytes 00 00 0c 80)
  MlC1  [fp88]  (bytes 20 00)
  CC1C  [ui32]  128 (bytes 00 00 0c 80)
  MlC2  [fp88]  (bytes 1f 00)
  CC2C  [ui32]  28 (bytes 00 00 0c 1c)
  MlC3  [fp88]  (bytes 1f 00)
  CC3C  [ui32]  28 (bytes 00 00 0c 1c)
  CCPA  [ui32]  21 (bytes 00 00 0c 15)
  PCTR  [sp78]  (bytes 17 92)
  PCPC  [sp78]  (bytes 12 4e)
  PCPG  [sp78]  (bytes 00 00)
  $Adr  [ui32]  0 (bytes 00 00 03 00)
  $Num  [ui8 ]  1 (bytes 01)
  ACID  [ch8*]  (bytes 85 fc 04 4d d8 12 7a f4)
  ALI0  [{ali]  (bytes 07 01 02 00)
  ALRV  [ui16]  1 (bytes 00 01)
  ALV0  [{alv]  (bytes 01 10 06 75 01 20 00 b6 0e e0)
  LsNM  [ui8 ]  1 (bytes 01)
  LsbV  [{rev]  (bytes 01 04 0a 00 06)
  MSLD  [ui8 ]  0 (bytes 00)
  MSSD  [si8 ]  (bytes 05)
  MSSP  [si8 ]  (bytes 05)
  NATJ  [ui8 ]  2 (bytes 02)
  OSK0  [ch8*]  (bytes 6f 75 72 68 61 72 64 77 6f 72 6b 62 79 74 68 65 73 65 77 6f 72 64 73 67 75 61 72 64 65 64 70 6c)
  OSK1  [ch8*]  (bytes 65 61 73 65 64 6f 6e 74 73 74 65 61 6c 28 63 29 41 70 70 6c 65 43 6f 6d 70 75 74 65 72 49 6e 63)
  REV   [{rev]  (bytes 02 11 0f 00 00 16)
  RMde  [char]  (bytes 41)
  RVBF  [{rev]  (bytes 01 30 0f 00 00 03)
  RVUF  [{rev]  (bytes 01 30 0f 00 00 03)
  BEMB  [flag]  (bytes 00)
  EPCI  [ui32]  0 (bytes 06 90 07 00)
  NATi  [ui16]  30 (bytes 00 1e)
  NTOK  [ui8 ]  1 (bytes 01)
  HE0N  [ui8 ]  16 (bytes 10)
GA-EP35:~ andreasm$ 

Share this post


Link to post
Share on other sites

Someone with Vega 10 test, please,

./RadeonDump -r 16658,16660

or

./RadeonDump -r 59968,59970

 

@mitch_de

Great!

So we know how to get temperature from Baffin family cards. And so my RadeonMonitor latest version should work for you? It already contains this method.

May be you test it with other FakeSMC?

About GPU FAN I don't know. It looks like GPU initializing but I nowhere do this. Only in Clover RadeonDeInit what I think is common for both your cases.

 

 

Ok that sounds like a lot of work. Is it something you are able to do ?

 

Thanks !

It is easy but requires a time. May be today evening I'll make it.

Share this post


Link to post
Share on other sites

Hope this kext will not crash and will show Radeon temperature.

doesn't crash anymore, but GPU 0 Core Temp -127° C ?!? (and NO, it is NOT cooled by liquid oxygen, just a one mile diameter fan with a million RpS)

 

Bildschirmfoto2017-11-29um18.45.38.png

but anyway... nice job.

Share this post


Link to post
Share on other sites

doesn't crash anymore, but GPU 0 Core Temp -127° C ?!? (and NO, it is NOT cooled by liquid oxygen, just a one mile diameter fan with a million RpS)

 

 

but anyway... nice job.

Can you, please, look into system.log or dmesg to find messages from RadeonMonitor?

Share this post


Link to post
Share on other sites

Hi, also for RX 460 - static (no changes under gpu load, idle) at -127 Celsius.

Nothing shown in dmesg & any log - Sierra.

Share this post


Link to post
Share on other sites

HD 7790  GPU 0

 

17    0 0xffffff7f8397a000 0x5000     0x5000     org.slice.RadeonMonitor (1.3.1) A388BA0F-9378-333A-8061-C9FE496C5B40 <16 12 7 4 3>

 

post-1113740-0-13405200-1512020964_thumb.png

Share this post


Link to post
Share on other sites

HD 7790  GPU 0

 

17    0 0xffffff7f8397a000 0x5000     0x5000     org.slice.RadeonMonitor (1.3.1) A388BA0F-9378-333A-8061-C9FE496C5B40

 

attachicon.gifScreen Shot 2017-11-30 at 12.47.46.png

 

Picos-Mac-Pro:radeon pico$ ./RadeonDump1 -r 714,7f4

 

Found a device of class RadeonPCI: IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/PEGP@1/IOPP/GFX1@0/RadeonPCI

it matched on name "ATY_GPU"

0x0714: 0x00000000

0x0718: 0x00000000

0x071C: 0x00000000

0x0720: 0x00000000

0x0724: 0x00000000

0x0728: 0x00000000

0x072C: 0x00000000

0x0730: 0x00000000

0x0734: 0x00000000

0x0738: 0x00000000

0x073C: 0x00000000

0x0740: 0x00000000

0x0744: 0x00000000

0x0748: 0x00000000

0x074C: 0x00000000

0x0750: 0x00000000

0x0754: 0x00000000

0x0758: 0x00000000

0x075C: 0x00000000

0x0760: 0x00000000

0x0764: 0x00000000

0x0768: 0x00000000

0x076C: 0x00000000

0x0770: 0x00000000

0x0774: 0x00000000

0x0778: 0x00000000

0x077C: 0x00000000

0x0780: 0x00000000

0x0784: 0x00000000

0x0788: 0x00000000

0x078C: 0x00000000

0x0790: 0x00000000

0x0794: 0x00000000

0x0798: 0x00000000

0x079C: 0x00000000

0x07A0: 0x00000000

0x07A4: 0x00000000

0x07A8: 0x00000000

0x07AC: 0x00000000

0x07B0: 0x00000000

0x07B4: 0x00000000

0x07B8: 0x00000000

0x07BC: 0x00000000

0x07C0: 0x00000000

0x07C4: 0x00000000

0x07C8: 0x00000000

0x07CC: 0x00000000

0x07D0: 0x00000000

0x07D4: 0x00000000

0x07D8: 0x00000000

0x07DC: 0x00000000

0x07E0: 0x00000000

0x07E4: 0x00000000

0x07E8: 0x00000000

0x07EC: 0x00000000

0x07F0: 0x00000000

0x07F4: 0x00000000

 

Picos-Mac-Pro:radeon pico$  ./RadeonDump1 -n 6b0,c0300e0c

Found a device of class RadeonPCI: IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/PEGP@1/IOPP/GFX1@0/RadeonPCI

it matched on name "ATY_GPU"

0xc0300e0c: 0x       0

It looks like HD7790 is other family. I see no a good method to get temperature for it.

 

Waiting for tests with other cards.

Share this post


Link to post
Share on other sites

It looks like HD7790 is other family. I see no a good method to get temperature for it.

 

Waiting for tests with other cards.

 

wake after sleep shown GPU Core -68

 

post-1113740-0-10317600-1512025892_thumb.png

Share this post


Link to post
Share on other sites

I found the mistake
Here
https://sourceforge.net/p/hwsensors/hwsensors3/code3/HEAD/tree/trunk/plugins/GPUSensors/RadeonMonitor/ATICard.cpp#l21
line:
IOPhysicalAddress bar = (IOPhysicalAddress)((VCard->configRead32(0x20)) & ~0x3f);
Must be 0x24 instead of 0x20

I can compile only in evening. If someone do it now it will be great!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By Slice
      Guys,
      Don't mix 6.18 and 3.41.
       
      There are three different projects for monitoring temperatures, voltages, fans speed and other hardware parameters:
      Initially it was FakeSMC with plugins for producing SMC keys for hardware parameters for different hardware. But sometimes ago Kozlek separated own version of FakeSMC and producing new set of plugins while I stay with good working version 3. So..
      1. FakeSMC v3 with Hardware Sensors3  which I still supported.
      2. FakeSMC v6 (rev1800) by Kozlek and supported by Rehabman. AFAIK both are abandoned and the project is not supported. Or may be maintained by coauthors.
      3. New VirtualSMC by vit9696 with own set of sensors kexts. It depends on Lilu.kext. The project is in active development.
      All three project have incompatible interfaces sensors<->SMC so they are incompatible with each other.
       
      There are applications for monitoring hardware parameters and they commonly depends on these projects.
      1. iStat, iStatMenu, iStatPro compatible with real Macs because they use SMC keys just like those presents in real Macs.
      2. HWMonitorSMC by Navi (initial codes from Kozlek)  used in my HWSensors3.
      3. HWMonitor by Kozlek with graphics like in IntelPowerGadget used in his HWSensors version.
      4. HWMonitorSMC2 by Vector_Sigma tends to be universal supporting all project. It also may use sensors information produces by Apple graphics and by IntelPowerGadget.
       
      Let us discuss here differences and common ideas for this projects.
       
    • By Slice
      This thread devoted to share information about different SMC keys found or investigated anywhere.
       
      What are they?
      SMC keys is a somehow language to speak between macOS and hardware microcontroller presented in real Mac and absent in Hackintosh.
      They inform macOS about Hardware ID and current status. Moreover macOS can write something through SMC protocol to control hardware.
      FakeSMC ( ©Netkas) is the driver to emulate this microcontroller on PC having no such device which is necessary to boot macOS here.
      But FakeSMC contain only ~20 keys while real Mac answers ~200 keys.
      Some keys we added by HWSensors project reporting temperatures, FAN speeds, voltages etc.
      Some keys are model dependent was added by Clover to be sure if user changed model in GUI then corresponding keys will be changed automatically.
      Clover sets
      LogDataHub(&gEfiMiscSubClassGuid, L"RPlt", &gSettings.RPlt, 8);
      LogDataHub(&gEfiMiscSubClassGuid, L"RBr", &gSettings.RBr, 8);
      LogDataHub(&gEfiMiscSubClassGuid, L"EPCI", &gSettings.EPCI, 4);
      LogDataHub(&gEfiMiscSubClassGuid, L"REV", &gSettings.REV, 6);
      LogDataHub(&gEfiMiscSubClassGuid, L"BEMB", &gSettings.Mobile, 1);
      BEMB - is a mobility sign. =0 -desktop, =1 - mobile.
      REV - SMC hardware revision, changes sometimes with Apple updates.
      RPlt, RBr and EPCI is hardware capabilities, noticed used in Intel HD drivers.
       
      Structure.
      All SMC keys consists of name 4 ascii chars as 32bit integer, type and value.
      Types:
       "flag", len 1
       "ui8 ", len 1
       "ui16", len 2
       "sp78", len 2
       "ui32", len 4
      "fp2e", len 2
      "fpe2", len 2
      "{rev", and others...
       
      List of known keys
      SMC_list.plist.zip
      More keys will be discussed in the thread
       
       
      Feel free to share you knowledge and ask about noticed keys.
    • By Slice
      As I see many novices in the forum ask "How to make my Radeon working? I have bad resolution, no QE/CI...." and so on. They come to the section and have no find an answer here because all Radeons are different and they don't know where else they read about this.
      I want to explain all steps needed for launching the Radeon family of videocards.
       
      Bootloader.
      I will speak about Clover because I maintain this bootloader to know recent hardware and modern OSX. Not sure if you will have the same result with other bootloaders. I am carefully checking the injecting of ATI card and correcting it times to times. I am also accessible for bug reports.
       
      OSX version.
      Older card require older system, newer cards require new system.
      ATIRadeon9000 is possible to launch under Tiger.
      ATIRadeonMobilityX1400 requires 10.5-10.6. See RadeonHD topic.
      As I see RadeonHD3xxx was successful only in 10.5
      For new AMDRadeonHD7xxx there must be 10.8.3+ system.
       
      DeviceID.
      This must be the first question before asking about the card.
      You may know the device-id from Windows->DeviceManger->VideoCard.properties->compatibleIDs
      You may boot into system in safe mode (key -x) and see system profiler
       
      And you may boot into Clover GUI, press F2 and get preboot.log. Find here something like
      2:709 0:000 PCI (00|01:00.00) : 1002 6758 class=030000 2:709 0:000 Found Radeon model=AMD Radeon HD 6670 Series It means my DeviceID=6758 (these are hex numbers)
      Then you must check that Apple's drivers support your DeviceID. If not then add it!
      For example HD7850 has DeviceID=6819. If we look into ATI7000Controller (AMD7000... in new systems) we find 6818 here but no 6819!
       
       
      I show you how to do this with terminal commands. Launch /Application/Utilities/Terminal.app. Type in opened window:
       
      cp /System/Library/Extensions/ATI7000Controller.kext/Contents/Info.plist ~/Desktop So you get a copy of the Info.plist on Desktop. Edit it with TextEdit. Change 68181002 -> 68191002.
      Don't edit this file directly in the system folder! 
      Then copy back by terminal. Don't use finder to copy kexts! They will have wrong permissions in this case.
      sudo cp ~/Desktop/Info.plist /System/Library/Extensions/ATI7000Controller.kext/Contents/ sudo rm -r -v /System/Library/Caches/com.apple.kext.caches/* Second command make sure next reboot the kext will use your edited info.plist.
      The same operation you must do with a kext AMDRadeonAccelerator or ATIRadeonX2000 or other one. Check all candidates if they contain such list of possible IDs and choose closest to you.
       
      FakeID
      Since Clover revision 1971+ you may just inject new DeviceID into DSDT instead of correcting kexts. See instruction here.
       
      GraphicsEnabler or Injector
      OSX needs to know some properties (Model name, Family, etc...) that must be somehow injected at boot time. Yes, also real Macs got DeviceProperties string from firmware.
      Alternatives:
      1. Set InjectATI=Yes in Clover (same as GE=y in Chameleon).
      2. Use custom string made with gfxutil. For whom who knows.
      3. Write _DSM into DSDT. You should know what to write.
      4. Use some kext like ATY_init.kext or Natit.kext. If you are sure that the kext is for your card namely.
      I want to say that all this methods make the same thing. Differencies in their tuning.
      The Clover do this automatically for most known cards at this moment.
       
      Connectors.
      As you may see to start HD5000-7000 some strange names used: Pithecia, Orangutan, Elodea... What are they?
      They are configs for framebuffer. Predefined configs how connectors are solded for cards used in real Macs. Strange but these configs rear coincide with PC card. Usually gurus make advice "choose a framebuffer that most appropriate for your card". The chances 1:10. In most cases you may find a FB name that gives you main monitor working. Or nothing at all.
      Great respect to bcc9 who gives us a method to correct one of config to be exactly for you. See here.
      My retelling for Clover is here
      Success example in the thread in posts 44-52
       
      Radeon Mobility
      I tested Clover's methods with two users having Mobility Radeon HD5470 and HD5650M. We found that full memory and QE/CI will be achieved if we set in Clover's config
      LoadVBios=Yes
      even thou no file with bios is provided. This is the key to make Radeon Mobility working!
      Other problem is bad gradients or artifacts. For this case Clover accept the key
      InjectEDID=Yes
      and sometimes you also need to inject CustomEDID.
      See Clover instructions for details.
       
      And my results.
      Gigabyte Radeon HD6670
      <key>Graphics</key> <dict> <key>GraphicsInjector</key> <true/> <key>InjectEDID</key> <true/> <key>FBName</key> <string>Ipomoea</string> <key>LoadVBios</key> <false/> <key>VideoPorts</key> <integer>3</integer> <key>PatchVBios</key> <true/> </dict> <key>KernelAndKextPatches</key> <dict> <key>KernelCpu</key> <false/> <key>ATIConnectorsController</key> <string>6000</string> <key>ATIConnectorsData</key> <string>000400000403000000010000120401050008000004020000000100001102040310000000100000000001000000000002</string> <key>ATIConnectorsPatch</key> <string>040000000403000000010000100001061000000010000000000100000000000100080000040200000001000012040403</string> VTX Radeon HD5570
      <key>Graphics</key> <dict> <key>PatchVBios</key> <false/> <key>FBName</key> <string>Baboon</string> <key>VideoPorts</key> <string>3</string> <key>GraphicsInjector</key> <string>Yes</string> <key>LoadVBios</key> <string>No</string> </dict> <key>KernelAndKextPatches</key> <dict> <key>Debug</key> <false/> <key>KernelCpu</key> <false/> <key>ATIConnectorsController</key> <string>5000</string> <key>ATIConnectorsData</key> <string>040000001400000000010000010201030008000000020000007100002205020110000000100000000001000000100002</string> <key>AppleRTC</key> <true/> <key>ATIConnectorsPatch</key> <string>040000001400000000010000010001040008000000020000007100002200020510000000100000000001000000000002</string> <key>AsusAICPUPM</key> <false/> <key>KextsToPatch</key> <array> <dict> <key>Name</key> <string>AppleAHCIPort</string> <key>Find</key> <data>RXh0ZXJuYWw=</data> <key>Replace</key> <data>SW50ZXJuYWw=</data> </dict> </array> </dict> See PatchVBios=No
      for this card "yes" leads to black screen. Use with precautions.
       
      A sample for Radeon R7 240
       
      UPDATE for ElCapitan.
      It seems has more problems. My HD6670 is not working in ElCapitan OOB unlike Mavericks.
      I had to set FakeID=0x67401002 as correspond to real iMac12,2 and set this model in SMBIOS section.
      It related to GraphicsPM or GraphicsControl.
      Look these kexts to decide what you can do for your configuration.
       
      HighSierra requires change these kexts by version from Sierra 10.12.6
      for Radeon HD6xxx
      AMDRadeonX3000.kext AMDRadeonX3000GLDriver.bundle IOAccelerator2D.plugin IOAcceleratorFamily2.kext .  for Radeon HD7xxx and up AMDRadeonX4000.kext AMDRadeonX4000GLDriver.bundle IOAccelerator2D.plugin IOAcceleratorFamily2.kext .    Black screen after wake problem resolved by follow method radeon_bios_decode.0.2.zip
      ati-personality.pl.0.15.zip
      ati-personality.pl.0.15a.zip
    • By Slice
      Hi all,
       
      I created an installer for my version of FakeSMC with plugins and applications latest revision.
       
      Compatibility from 10.6 up to 10.15.
      Test, please.

      Download here: HWSensors.pkg.zip
      See my signature
       
      02.11.2019
      New project home
      https://github.com/CloverHackyColor/FakeSMC3_with_plugins
      FakeSMC v3.5.3 and plugins
       
      HWMonitorSMC2 at
      https://github.com/CloverHackyColor/HWMonitorSMC2
       
       
      FakeSMC 3.4.0 revision 751
      HWSensors.pkg-751.zip
       
      New project home is
      https://sourceforge.net/projects/hwsensors3.hwsensors.p/
      where you can download most recent versions.
      Now it is FakeSMC 3.4.1
       
      Explanations about the difference between versions 3 and 6
        #137 
       
      20.05.2016
      Revision 32 with explanation at    #220 
       
      10.10.2017
      FakeSMC is 3.5.0 compatible with High Sierra.
      New plugin VoodooBatterySMC created on the base of VoodooBattery by Superhai but with SMC keys generating to show Battery voltage and amperage. As well it created key BATP needed for right speedstep and FileVault2.
      Other kexts revised.
×