Jump to content

AMD Radeon HD 7570M on Mavericks


Joni_78
 Share

13 posts in this topic

Recommended Posts

I installed Mavericks (Clover) on my laptop and everything seems to work fine except GPU. My laptop has both HD4000 and AMD Radeon HD 7570M, but unfortunately laptop manufacturer hasn't added any options to disable Radeon from BIOS, so my only option is to get drivers for Mobility 7570 working.

 

GPU kind of works, but seems to stutter slightly for example when launching launchpad or moving windows. Safari has a lot of flickering. I wonder if I have the right kexts in use, what kexts should I edit from Mavericks that might work for Mobility Radeon? Also what causes that flicker?

 

AMD Mobility Radeon HD 7570M:

 

Thames [Radeon HD 7550M/7570M/7650M] Ven ID 1002 Dev ID 6841

Link to comment
Share on other sites

@freeuser16

Thanks for wanting to help :). I've made some progress with this, though it wasn't easy as HP likes to add VGA BIOS in system BIOS and it can't be dumped with Clover or CPU-Z.

I managed to extract VGA BIOS from my HP Insyde BIOS but i'm little lost with this.

This is from BIOS decoder. It shows 5 connectors.

ATOM BIOS Rom:
SubsystemVendorID: 0x103c SubsystemID: 0x179d
IOBaseAddress: 0x0000
Filename: BR42926.004
BIOS Bootup Message:
HP/IEC Clavin/Casper Thames Pro GDDR5 128Mx16 64bit 500e/600m 0.9V         
PCI ID: 1002:6841
Connector at index 0
Type [@offset 44650]: LVDS (7)
Encoder [@offset 44654]: INTERNAL_UNIPHY (0x1e)
i2cid [@offset 44760]: 0x90, OSX senseid: 0x1
Connector at index 1
Type [@offset 44660]: DisplayPort (10)
Encoder [@offset 44664]: INTERNAL_UNIPHY1 (0x20)
i2cid [@offset 44783]: 0x94, OSX senseid: 0x5
Connector at index 2
Type [@offset 44670]: DisplayPort (10)
Encoder [@offset 44674]: INTERNAL_UNIPHY1 (0x20)
i2cid [@offset 44810]: 0x91, OSX senseid: 0x2
Connector at index 3
Type [@offset 44680]: DisplayPort (10)
Encoder [@offset 44684]: INTERNAL_UNIPHY2 (0x21)
i2cid [@offset 44837]: 0x92, OSX senseid: 0x3
Connector at index 4
Type [@offset 44690]: VGA (1)
Encoder [@offset 44694]: INTERNAL_KLDSCP_DAC1 (0x15)
i2cid [@offset 44864]: 0x97, OSX senseid: 0x8

With ATI personalities tool I get this on Mavericks. It shows personalities with only 3 connectors. I had to edit this tool though to make it work on Maverics, so i'm not 100% sure it works correctly.

Kext /System/Library/Extensions/AMD2400Controller.kext/Contents/MacOS/AMD2400Controller
Personality: Iago
ConnectorInfo count in decimal: 0
Disk offset in decimal 539520
Kext /System/Library/Extensions/AMD2600Controller.kext/Contents/MacOS/AMD2600Controller
Personality: Hypoprion
ConnectorInfo count in decimal: 0
Disk offset in decimal 539488
Personality: Lamna
ConnectorInfo count in decimal: 0
Disk offset in decimal 539520
Kext /System/Library/Extensions/AMD3800Controller.kext/Contents/MacOS/AMD3800Controller
Personality: Megalodon
ConnectorInfo count in decimal: 0
Disk offset in decimal 539472
Personality: Triakis
ConnectorInfo count in decimal: 0
Disk offset in decimal 539520
Kext /System/Library/Extensions/AMD4600Controller.kext/Contents/MacOS/AMD4600Controller
Personality: Flicker
ConnectorInfo count in decimal: 0
Disk offset in decimal 535312
Personality: Gliff
ConnectorInfo count in decimal: 0
Disk offset in decimal 535360
Personality: Shrike
ConnectorInfo count in decimal: 0
Disk offset in decimal 535408
Kext /System/Library/Extensions/AMD4800Controller.kext/Contents/MacOS/AMD4800Controller
Personality: Cardinal
ConnectorInfo count in decimal: 0
Disk offset in decimal 531248
Personality: MotMot
ConnectorInfo count in decimal: 0
Disk offset in decimal 531280
Personality: Quail
ConnectorInfo count in decimal: 0
Disk offset in decimal 531312
Kext /System/Library/Extensions/AMD5000Controller.kext/Contents/MacOS/AMD5000Controller
Personality: Douc
ConnectorInfo count in decimal: 0
Disk offset in decimal 635296
Personality: Langur
ConnectorInfo count in decimal: 0
Disk offset in decimal 635344
Personality: Uakari
ConnectorInfo count in decimal: 0
Disk offset in decimal 635392
Personality: Zonalis
ConnectorInfo count in decimal: 0
Disk offset in decimal 635456
Personality: Alouatta
ConnectorInfo count in decimal: 0
Disk offset in decimal 635552
Personality: Hoolock
ConnectorInfo count in decimal: 0
Disk offset in decimal 635616
Personality: Vervet
ConnectorInfo count in decimal: 0
Disk offset in decimal 635664
Personality: Baboon
ConnectorInfo count in decimal: 0
Disk offset in decimal 635728
Personality: Eulemur
ConnectorInfo count in decimal: 0
Disk offset in decimal 635776
Personality: Galago
ConnectorInfo count in decimal: 0
Disk offset in decimal 635824
Personality: Colobus
ConnectorInfo count in decimal: 0
Disk offset in decimal 635872
Personality: Mangabey
ConnectorInfo count in decimal: 0
Disk offset in decimal 635920
Personality: Nomascus
ConnectorInfo count in decimal: 0
Disk offset in decimal 635968
Personality: Orangutan
ConnectorInfo count in decimal: 0
Disk offset in decimal 636048
Kext /System/Library/Extensions/AMD6000Controller.kext/Contents/MacOS/AMD6000Controller
Personality: Pithecia
ConnectorInfo count in decimal: 0
Disk offset in decimal 648896
Personality: Bulrushes
ConnectorInfo count in decimal: 0
Disk offset in decimal 648928
Personality: Cattail
ConnectorInfo count in decimal: 3
Disk offset in decimal 649024
0000000    02  00  00  00  40  00  00  00  29  05  00  00  00  00  00  05
0000010    00  04  00  00  04  03  00  00  00  01  00  00  11  02  01  01
0000020    00  04  00  00  00  01  00  00  00  09  10  00  21  03  02  02
0000030
Personality: Hydrilla
ConnectorInfo count in decimal: 0
Disk offset in decimal 649088
Personality: Duckweed
ConnectorInfo count in decimal: 0
Disk offset in decimal 649168
Personality: Fanwort
ConnectorInfo count in decimal: 3
Disk offset in decimal 649232
0000000    02  00  00  00  40  00  00  00  29  05  00  00  00  00  00  04
0000010    00  04  00  00  04  03  00  00  00  01  00  00  11  02  01  01
0000020    00  04  00  00  00  01  00  00  00  09  10  00  21  03  02  02
0000030
Personality: Elodea
ConnectorInfo count in decimal: 0
Disk offset in decimal 649296
Personality: Kudzu
ConnectorInfo count in decimal: 0
Disk offset in decimal 649376
Personality: Gibba
ConnectorInfo count in decimal: 0
Disk offset in decimal 649408
Personality: Lotus
ConnectorInfo count in decimal: 0
Disk offset in decimal 649488
Personality: Ipomoea
ConnectorInfo count in decimal: 0
Disk offset in decimal 649536
Personality: Muskgrass
ConnectorInfo count in decimal: 0
Disk offset in decimal 649584
Personality: Juncus
ConnectorInfo count in decimal: 0
Disk offset in decimal 649648
Personality: Osmunda
ConnectorInfo count in decimal: 0
Disk offset in decimal 649712
Personality: Pondweed
ConnectorInfo count in decimal: 0
Disk offset in decimal 649776
Personality: Spikerush
ConnectorInfo count in decimal: 3
Disk offset in decimal 649824
0000000    02  00  00  00  40  00  00  00  29  05  01  00  00  00  00  05
0000010    00  04  00  00  04  03  00  00  00  01  02  00  11  02  01  01
0000020    00  04  00  00  00  01  00  00  00  09  02  00  21  03  02  02
0000030
Personality: Typha
ConnectorInfo count in decimal: 0
Disk offset in decimal 649888
Kext /System/Library/Extensions/AMD7000Controller.kext/Contents/MacOS/AMD7000Controller
Personality: Aji
ConnectorInfo count in decimal: 0
Disk offset in decimal 662624
Personality: Buri
ConnectorInfo count in decimal: 0
Disk offset in decimal 662688
Personality: Chutoro
ConnectorInfo count in decimal: 0
Disk offset in decimal 662752
Personality: Dashimaki
ConnectorInfo count in decimal: 0
Disk offset in decimal 662832
Personality: Ebi
ConnectorInfo count in decimal: 0
Disk offset in decimal 662896
Personality: Gari
ConnectorInfo count in decimal: 0
Disk offset in decimal 662976
Personality: Futomaki
ConnectorInfo count in decimal: 0
Disk offset in decimal 663056
Personality: Hamachi
ConnectorInfo count in decimal: 0
Disk offset in decimal 663120
Personality: OPM
ConnectorInfo count in decimal: 0
Disk offset in decimal 663184
Personality: Ikura
ConnectorInfo count in decimal: 0
Disk offset in decimal 663280
Personality: IkuraS
ConnectorInfo count in decimal: 0
Disk offset in decimal 663296
Personality: Junsai
ConnectorInfo count in decimal: 0
Disk offset in decimal 663392
Personality: Kani
ConnectorInfo count in decimal: 0
Disk offset in decimal 663488
Personality: KaniS
ConnectorInfo count in decimal: 0
Disk offset in decimal 663504
Personality: DashimakiS
ConnectorInfo count in decimal: 0
Disk offset in decimal 663600
Personality: Maguro
ConnectorInfo count in decimal: 0
Disk offset in decimal 663664
Personality: MaguroS
ConnectorInfo count in decimal: 0
Disk offset in decimal 663680

When I google personalities, I see Cattail has 4 connectors not 3. I think this is from Lion.

Personality: Cattail
ConnectorInfo count in decimal: 4
Disk offset in decimal 500668
0000000 02 00 00 00 40 00 00 00 29 05 00 00 00 00 00 05
0000010 00 04 00 00 04 03 00 00 00 01 00 00 11 02 01 01
0000020 00 04 00 00 00 01 00 00 00 01 00 00 21 03 02 02
0000030 00 04 00 00 00 01 00 00 00 01 00 00 12 04 03 03
0000040

I'm not quite sure what personality should I use.

Also, if I edit Cattail like this:

0000000 02 00 00 00 40 00 00 00 29 05 00 00 00 00 00 01
0000010 00 04 00 00 04 03 00 00 00 01 00 00 11 02 01 05
0000020 00 04 00 00 00 01 00 00 00 01 00 00 21 03 02 02
0000030 00 04 00 00 00 01 00 00 00 01 00 00 12 04 03 03

I get picture on laptop but it has weird colours like pink and green. I still see the text and all and it shows QE/CI is enabled.

 

post-1269647-0-54737800-1387197905_thumb.jpg

If I use Ipomoea and edit it's VGA line like this:

10000000100000000001000000000008

I get perfect picture on the external monitor trough VGA and QE/CI is enabled.

What am I doing wrong with the laptop internal monitor?

Link to comment
Share on other sites

Set encoder of LVDS to 1 instead of 0, it should fix weird colours. However, you might get a problem with reduced colour depth. It's necessary to check it with some tool, fe. this one http://www.lagom.nl/lcd-test/gradient.php

 

There is no difference what personality you edit. Even if it has less connectors than your video bios dump, it only means that some of them won't work. Maybe it's a bit better to patch personality which is designed for mobile cards (the ones that originally have LVDS connector).

Link to comment
Share on other sites

Set encoder of LVDS to 1 instead of 0, it should fix weird colours. However, you might get a problem with reduced colour depth. It's necessary to check it with some tool, fe. this one http://www.lagom.nl/lcd-test/gradient.php

 

There is no difference what personality you edit. Even if it has less connectors than your video bios dump, it only means that some of them won't work. Maybe it's a bit better to patch personality which is designed for mobile cards (the ones that originally have LVDS connector).

 

Thanks :) Strange I got it working about the same time you posted this. :D

http://www.insanelymac.com/forum/topic/277042-amd-radeon-hd-6650m-graphics-enabler-dsdt-hdmi-audio-acer-aspire-7750g-2674g50mnkk-gradients-fixed/page-38?do=findComment&comment=1976677

 

Didn't know why it worked though until I saw your post. It' working now but the gradients are bad like you said, especially on launchpad.

 

Any way to fix it?

Link to comment
Share on other sites

Read the thread starting from this post: http://www.insanelymac.com/forum/topic/277042-amd-radeon-hd-6650m-graphics-enabler-dsdt-hdmi-audio-acer-aspire-7750g-2674g50mnkk-gradients-fixed/?p=1933143

 

You have to create a new EDID for your monitor with FixEDID and modify it a bit if I remember correctly.

I got some time to try this today. I got my original EDID and I edited it.

 

I've been trying to find what would be the best way to replace the old EDID. Is it DSDT or?

Link to comment
Share on other sites

I got some time to try this today. I got my original EDID and I edited it.

 

I've been trying to find what would be the best way to replace the old EDID. Is it DSDT or?

… or Clover

Screen Shot 2013-12-21 at 23.16.31.png

Link to comment
Share on other sites

 

I was going to ask you about this.

 

I tested it last night and didn't get it to work.

 

This is the EDID of my LVDS from ioreg -l (I checked and it's the same on Windows)

00FFFFFFFFFFFF0030E458020000000000150104802313780A1BE59E595098260E505400000001010101010101010101010101010101643240B8628424304060354059C210000019982140B8628424304060354059C21000001900000000000000000000000000000000000000000002000C49FF0A3C64292D4164000000001F

I changed first bit of basic params like this according to freeuser16's discovery.

00FFFFFFFFFFFF0030E458020000000000150104902313780A1BE59E595098260E505400000001010101010101010101010101010101643240B8628424304060354059C210000019982140B8628424304060354059C21000001900000000000000000000000000000000000000000002000C49FF0A3C64292D4164000000001F

Added CustomEDID into config.plist (converted EDID into data field with PlistEdit Pro)

        <key>Graphics</key>
	<dict>
		<key>CustomEDID</key>
		<data>
		AP///////wAw5FgCAAAAAAAVAQSQIxN4ChvlnllQmCYOUFQAAAABAQEBAQEB
		AQEBAQEBAQEBZDJAuGKEJDBAYDVAWcIQAAAZmCFAuGKEJDBAYDVAWcIQAAAZ
		AAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAMSf8KPGQpLUFkAAAAAB8=
		</data>
		<key>FBName</key>
		<string>Elodea</string>
		<key>Inject</key>
		<true/>
		<key>LoadVBios</key>
		<true/>
		<key>PatchVBios</key>
		<false/>
	</dict>

Then rebooted and checked ioreg, but the first bit of the basic params was still 8. Any ideas why it didn't work? 

Link to comment
Share on other sites

 Share

×
×
  • Create New...