Jump to content

GUIDE: HDMI Audio with unsupported on-board audio: VoodooHDA and AppleHDA at the same time.


Lord Kamina
 Share

39 posts in this topic

Recommended Posts

DISCLAIMER:I have made this guide for people using ATI/AMD GPUs because that is what I have, because as-far-as-I-know AMD uses only one audio codec and because it's what I've tried and know, works. Still, the principle should be just as valid for NVIDIA or even Intel HD cards.

 

My Build:

  • Motherboard: Asus P5G41T-M LX PLUS
  • CPU: Intel E7400, overclocked @ 3.37GHz
  • Memory: 4GB Ram DDR3 1333
  • Ethernet: Realtek RTL8169
  • Audio Codec: ALC887-VD
  • Graphics: XFX Radeon HD 5570 1GB DDR3
  • OS: Mountain Lion 10.8.2

I bought this Asus board a couple months ago and mostly it works very well. Now, when I bought it I looked at the audio codec but I didn't search for actual user experiences getting it to work (my mistake) and to my surprise, upon getting home I quickly realized that AppleHDA and my board just weren't the best of buddies.

 

Flash-forward a couple of weeks and I'm resigned to using VoodooHDA. Now, VoodooHDA doesn't make friends with my HDMI audio so I have to choose between AppleHDA and HDMI or Voodoo and on-board and frankly, that sucks.

The solution? Use both at the same time!

 

Now, usually this will result in a kernel panic. Why? Because by default both these kexts try to match devices by their PCI-Class and logically end-up trying to take control of the same devices and that's not good.

 

But, with a few minor edits it's possible to have them both coexist peacefully.

Normally, AppleHDA(AppleHDA.kext/Contents/Plugins/AppleHDAController/Contents/Info.plist) will have these lines near the bottom:

 

<key>IOClass</key>
<string>AppleHDAController</string>
<key>IOPCIClassMatch</key>
<string>0x04020000&0xFFFE0000</string>
<key>IOProviderClass</key>
<string>IOPCIDevice</string>

 

And VoodooHDA.kext/Contents/Info.plist will have these:

 

<key>IOClass</key>
<string>VoodooHDADevice</string>
<key>IOPCIClassMatch</key>
<string>0x04020000&0xFFFE0000</string>
<key>IOProviderClass</key>
<string>IOPCIDevice</string>

 

See the similarity?

Now, if instead you change them to the following (note, the actual values might and probably will change depending on your actual on-board codec and GPU)

<key>IOClass</key>

<string>AppleHDAController</string>

<key>IOPCIPrimaryMatch/key>

<string>0xaa601002</string> (0x1002:aa60 is the PCI Vendor ID for my Radeon's HDMI device, you can check these by using "System Info.app")

<key>IOProviderClass</key>

<string>IOPCIDevice</string>

And

<key>IOClass</key>

<string>VoodooHDADevice</string>

<key>IOPCIPrimaryMatch</key>

<string>0x27d88086</string> (0x8086:27d8 is the PCI Vendor ID for my on-board ALC887 device, you can check these by using "System Info.app")

<key>IOProviderClass</key>

<string>IOPCIDevice</string>

 

Now Voodoo will know to try and match only your on-board audio and AppleHDA will know to try and match only your GPU's audio.

 

Clearly, you're not yet quite done. For this to work, you will need more-or-less the same DSDT edits you would use to enable HDMI audio normally (and if you're using an AMD card like me, you need to be sure your Framebuffer is correct, which I won't go into now)

 

The only departure from the tried-and-true DSDT edit for AMD cards is the following (I'm not entirely sure it is needed but I did it this way and it worked)

You must add the layout-id that normally goes in the HDEF section to the HDAU section, like this:

Device (HDAU)

{

Name (_ADR, One)

Method (_DSM, 4, NotSerialized)

{

Store (Package (0×04)

{

“hda-gfx”,

Buffer (0x0A)

{

“onboard-1″

},

"layout-id",

Buffer (0x04)

{

0x01, 0x00, 0x00, 0x00

}

}, Local0)

DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))

Return (Local0)

}

}

 

Once all that is done, you need to edit AppleHDA proper:

 

Since Mountain Lion supports ATI HDMI audio OOB, you only need to change the layout/pathmap to suit your card. You will find numerous tutorials explaining in details how to do that. For now, what I did was use layout id: 1 and defined it thus:

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com...yList-1.0.dtd">

<plist version="1.0">

<dict>

<key>LayoutID</key>

<integer>1</integer>

<key>PathMapRef</key>

<array>

<dict>

<key>CodecID</key>

<array>

<integer>268610049</integer> (My Radeon's codec ID in decimal, should be the same for all ATI/AMD cards)

</array>

<key>HDMI</key>

<dict/>

<key>Outputs</key>

<array>

<string>HDMI</string>

</array>

<key>PathMapID</key>

<integer>268610049</integer> (Following Apple's example on a layout that included an Nvidia HDMI audio, I used the Device ID as the PathMapID, the actual number is mostly irrelevant as long as it matches Platforms.xml though)

</dict>

</array>

</dict>

</plist>

And then in Platforms.xml, I did this:

<key>PathMaps</key>

<array>

<dict>

<key>PathMap</key>

<array>

<array>

<array>

<array>

<dict>

<key>NodeID</key>

<integer>3</integer>

</dict>

<dict>

<key>NodeID</key>

<integer>2</integer>

</dict>

</array>

</array>

</array>

</array>

<key>PathMapID</key>

<integer>268610049</integer> See? Same ID

</dict>

</array>

 

The Node IDs I just get from a codec dump of my HDMI card done in Linux.

After all this was done, I deleted all other layouts and Pathmaps (left the DSP section alone, though) and compressed those XMLs again using zlib.pl, just ran MyFix, rebooted and all was working as expected.

I am attaching both my own modified AppleHDA (done as per the instructions here, the binary itself is intact, I just messed with the Info.plists, pathmaps and whatnot) and my IORegistry so you can have fun with it:

AppleHDA_HDMI.kext.zip

Tiamat_Voodoo_AppleHDA.ioreg.zip

  • Like 3
Link to comment
Share on other sites

  • 5 months later...

Blood, sweat and tears! Definitely wouldn't have gotten it working without your blog and commenting here and there.

 

Thought it is a easy process :D . But no!!!!

Tried your procedure, for me not working :( .

Any suggestion?

Thank you

Palash

Link to comment
Share on other sites

The only way to know what's wrong in your attempt would be to provide more detail. Whether you're using a DSDT or not, whether you're using GraphicsEnabler=Yes or not, which Framebuffer you are actually working under, whether that framebuffer has all connectors properly defined, etc.

 

At the very least you should specify those and get/upload an IORegistry. Now, keep in mind that the kext I attached here won't work in 10.8.3 because 10.8.3 changed AppleHDA and increased the version numbers for it and most of its dependencies, among other stuff. Obviously, you can take a fresh 10.8.3 kext and modify it in the same way and it will work.

Link to comment
Share on other sites

I have patched my graphics kexts using this guide - http://www.insanelym...n/#entry1655903 (Old method), works fine :D .

Apple default Shrike frame buffer for ATI Radeon HD 4600 series :

02 00 00 00 40 00 00 00 09 01 00 00 02 01 00 03

02 00 00 00 00 01 00 00 09 01 00 00 20 01 02 02

00 04 00 00 04 03 00 00 00 01 00 00 10 00 01 01 replaced with -

My card frame buffer:

02 00 00 00 40 00 00 00 09 01 00 00 12 00 02 07 LVDS

10 00 00 00 10 00 00 00 00 01 00 00 00 10 00 01 VGA

00 08 00 00 00 02 00 00 00 01 00 00 10 01 01 02 HDMI

For inject graphics using ATY_Init.kext, No GraphicsEnabler=Yes/No flag on boot.plist, Using DSDT.

 

To patch HDMI taken a fresh kext from 10.8.3, but failed. HDMI pins seems similar to you. Tried both radeon default codec id - as you said -268610049 & mine 268610104 (0x1002aa38). Only one thing no device entry on audio, but can increase or decrease volume(of what don't know :P )!!!

Attached edited AppleHDA.kext, DSDT, ioreg & voodoo dump files for your consideration.

Thank you

Palash

Audio files.zip

Link to comment
Share on other sites

I haven't looked more in-depth than this yet but one error I've found is in your edit of AppleHDA, where you put

 

 

 

  <key>IOPCIClassMatch</key>
  <string>0xaa381002</string>

 

It should be

 

 

  <key>IOPCIPrimaryMatch</key>
  <string>0xaa381002</string>

 

Try that and report.

Link to comment
Share on other sites

I haven't looked more in-depth than this yet but one error I've found is in your edit of AppleHDA, where you put

 

 

 

<key>IOPCIClassMatch</key>
<string>0xaa381002</string>

 

It should be

 

 

<key>IOPCIPrimaryMatch</key>
<string>0xaa381002</string>

 

Try that and report.

 

Corrected & found the device :D .

This time the device has no output controls :( .

post-775552-0-96490700-1367750129_thumb.jpg

Follow the picture, have patched the device on layout 1, but device is showing on 12. Don't know actual fact with this. I have also also tried by renaming the layout 1 to layout 12 :) (obviously also changed info). Remains same.

Now attached ioreg with voodoo+apple combined, please give a look on this.

ioreg.zip

Thank you

Palash

Link to comment
Share on other sites

Corrected & found the device :D .

This time the device has no output controls :( .

post-775552-0-96490700-1367750129_thumb.jpg

Follow the picture, have patched the device on layout 1, but device is showing on 12. Don't know actual fact with this. I have also also tried by renaming the layout 1 to layout 12 :) (obviously also changed info). Remains same.

Now attached ioreg with voodoo+apple combined, please give a look on this.

ioreg.zip

Thank you

Palash

 

Do keep in mind you will never get output controls for HDMI. It's always assumed you will handle volume and such from the device itself. (even on vainilla Mac with Thunderbolt)

 

From your IOReg I am gathering that your on-board audio is being picked with Layout 12 but the HDMI is Layout 1. The whole point of this fix is to be able to use both devices in a completely independent manner from each other, since it may happen that one is supported well with one kext and the other with the other.

 

AppleHDA is now attached to HDAU and Voodoo is attached to HDEF; that's as it should be. Make sure the rest of the HDMI settings are as I instructed in my first post and then just test it. Remember that you need to boot the mac with the HDMI device already connected for it to work properly. To my knowledge that is something nobody's been able to fix yet.

Link to comment
Share on other sites

May be you are right, will never get output control with HDMI :( .

As the kexts loading on their own points- AppleHDA for HDAU & Voodoo for HDEF, But the device seems not work !!!

Controled again n again got nothing, Although I havn't knowledge more than your guide :P .

Don't know more than this what can do :idea:

Thank you

Palash

Link to comment
Share on other sites

The Output controls thing is not a bug, it's just how OSX is designed.

 

So... You connect the monitor, get picture but no sound? If that's the case, reboot with the HDMI connected and get a new IOReg, post that along with the kext and DSDT you're currently using.

 

Something else I noticed, atleast from your codec dumps (cannot open ioregs on my phone); your audio codec is not 0xaa381002, it's 0xaa011002

Link to comment
Share on other sites

The Output controls thing is not a bug, it's just how OSX is designed.

 

So... You connect the monitor, get picture but no sound? If that's the case, reboot with the HDMI connected and get a new IOReg, post that along with the kext and DSDT you're currently using.

 

Something else I noticed, atleast from your codec dumps (cannot open ioregs on my phone); your audio codec is not 0xaa381002, it's 0xaa011002

Yes, when connect the monitor seems ok, except sound. Tested with display connected, no change at all :( .

I have also noticed that on dump file, but with this also a doubt. If run system info.app shows device aa38.

 

On the other hand if I use 0xaa011002 device not shows, If I use 0xaa381002 device shows on System info & About this Mac.

One more addition, with AIDA64 from windows got this -

HD Audio

[ ATI RV710/730/740 - High Definition Audio Controller ]

Device Properties:
Device Description ATI RV710/730/740 - High Definition Audio Controller
Device Description (Windows) High Definition Audio Controller
Bus Type PCI
Bus / Device / Function 1 / 0 / 1
Device ID 1002-AA38
Subsystem ID 1028-0447
Revision 00
Hardware ID PCI\VEN_1002&DEV_AA38&SUBSYS_04471028&REV_00

[ ATI Radeon HDMI ]

Device Properties:
Device Description ATI Radeon HDMI
Device Description (Windows) High Definition Audio Device
Device Type Audio
Bus Type HDAUDIO
Device ID 1002-AA01
Subsystem ID 00AA-0100
Revision 1001
Hardware ID HDAUDIO\FUNC_01&VEN_1002&DEV_AA01&SUBSYS_00AA0100&REV_1001

[ Intel Ibex Peak PCH - High Definition Audio Controller [b-3] ]

Device Properties:
Device Description Intel Ibex Peak PCH - High Definition Audio Controller [b-3]
Device Description (Windows) High Definition Audio Controller
Bus Type PCI
Bus / Device / Function 0 / 27 / 0
Device ID 8086-3B56
Subsystem ID 1028-0447
Revision 06
Hardware ID PCI\VEN_8086&DEV_3B56&SUBSYS_04471028&REV_06

[ IDT 92HD81B1X ]

Device Properties:
Device Description IDT 92HD81B1X
Device Description (Windows) IDT High Definition Audio CODEC
Device Type Audio
Bus Type HDAUDIO
Device ID 111D-7605
Subsystem ID 1028-0447
Revision 1001
Hardware ID HDAUDIO\FUNC_01&VEN_111D&DEV_7605&SUBSYS_10280447&REV_1001

 

From device manager of windows 8 got -

IDT High def. audio:

hardware id -

HDAUDIO\FUNC_01&VEN_111D&DEV_7605&SUBSYS_10280447&REV_1001

compitable id -

HDAUDIO\FUNC_01&CTLR_VEN_8086&CTLR_DEV_3B56&VEN_111D&DEV_7605&REV_1001

 

High def. Audio:

hardware id - HDAUDIO\FUNC_01&VEN_1002&DEV_AA01&SUBSYS_00AA0100&REV_1001

compitable id -HDAUDIO\FUNC_01&CTLR_VEN_1002&CTLR_DEV_AA38&VEN_1002&DEV_AA01&REV_1001.

Now please tell me which one exactly have to use?

 

Attached necessary files for you ioreg,DSDT,AppleHDA.zip.

 

Thank you

Palash

Link to comment
Share on other sites

From what I have seen, you have edited everything correctly and OSX _THINKS_ it's giving you audio through that HDMI. If you're not getting anything it most likely means that the error is in the Framebuffer edit you made and that's what you need to correct.

 

I might be able to help you with that if you post your card bios dump and the personality you're using, etc etc.

Link to comment
Share on other sites

From what I have seen, you have edited everything correctly and OSX _THINKS_ it's giving you audio through that HDMI. If you're not getting anything it most likely means that the error is in the Framebuffer edit you made and that's what you need to correct.

 

I might be able to help you with that if you post your card bios dump and the personality you're using, etc etc.

 

Ok, Thank you very much for your interest.

My modded Shrike personalities :

 

02 00 00 00 40 00 00 00 09 01 00 00 12 00 02 07 LVDS

10 00 00 00 10 00 00 00 00 01 00 00 00 10 00 01 VGA

00 08 00 00 00 02 00 00 00 01 00 00 20 01 01 02 HDMI

 

Attached video bios from windows & connectors info.

vga bios.zip

Link to comment
Share on other sites

Whoops, sorry. I've been working a lot this week and had forgotten about this.

 

Try the following:

 

 

 

02 00 00 00 40 00 00 00 09 01 00 00 12 00 02 07  LVDS 
10 00 00 00 10 00 00 00 00 01 00 00 00 10 00 01  VGA
00 08 00 00 04 02 00 00 00 01 00 00 22 05 06 02  HDMI

 

And report back.

Link to comment
Share on other sites

Whoops, sorry. I've been working a lot this week and had forgotten about this.

 

Try the following:

 

 

 

02 00 00 00 40 00 00 00 09 01 00 00 12 00 02 07 LVDS
10 00 00 00 10 00 00 00 00 01 00 00 00 10 00 01 VGA
00 08 00 00 04 02 00 00 00 01 00 00 22 05 06 02 HDMI

 

And report back.

 

Tested.

Normally Laptop display - ok.

DVI/VGA not working !!!

 

When start with DVI/VGA connected, Laptop display goes black :( .

 

Thank you

Palash

Link to comment
Share on other sites

What about HDMI?

 

Check you applied the patch correctly. If you look closely you will notice that the only thing I actually changed was the HDMI entry. The VGA shouldn't be affected AT ALL by my edit.

 

Also, as far as I can tell, your laptop DOES NOT have DVI. Just HDMI, VGA and internal screen, right?

 

Not to mention, I think most ATI cards support only two of those three at a time. I don't think you can have all three working simultaneously. At least I know on my Hackintosh I canot have DVI, HDMI and VGA at the same time (It's a desktop card) even when the three work perfectly fine on their own (or with up to one other)

Link to comment
Share on other sites

What about HDMI?

 

Check you applied the patch correctly. If you look closely you will notice that the only thing I actually changed was the HDMI entry. The VGA shouldn't be affected AT ALL by my edit.

 

Also, as far as I can tell, your laptop DOES NOT have DVI. Just HDMI, VGA and internal screen, right?

 

Not to mention, I think most ATI cards support only two of those three at a time. I don't think you can have all three working simultaneously. At least I know on my Hackintosh I canot have DVI, HDMI and VGA at the same time (It's a desktop card) even when the three work perfectly fine on their own (or with up to one other)

 

Yes, you are right.

I have no deep knowledge about this.

As you have changed HDMI info only, it might not effect other output. Strangely external display not working!!! So I can't test HDMI :( .

Would you please have a look on framebuffer edit, what goes wrong with others.

Thank you

Palash

Link to comment
Share on other sites

Okay...

 

1) Get me a log of a verbose boot.

2) Get a new IOReg

3) Why are you using ATY_Init.kext? You're already using a DSDT, which means you can easily implement Beta's method (http://rampagedev.wo...rd-into-a-dsdt/) and get rid of ATY_Init altogether.

4) I have no idea whether this makes any sort of difference at all or not but in my particular case, I got audio to work with

 

 

						 "hda-gfx",
						 Buffer (0x0A)
						 {
"onboard-2"
						 },

 

Most guides use onboard-1, but that didn't work for me. So you can also try changing that. Just make sure to remember that code is used several times, so you need to change all instances. (At least I put it on the GFX0 inside the PEGP device, on the HDAU and also on the HDEF, though come to think of it, that probably is irrelevant)

 

And keep in mind that I'm not an expert or anything, I learned by tinkering and trying different things and probably so will you if you keep at it.

Link to comment
Share on other sites

Okay...

 

1) Get me a log of a verbose boot.

2) Get a new IOReg

3) Why are you using ATY_Init.kext? You're already using a DSDT, which means you can easily implement Beta's method (http://rampagedev.wo...rd-into-a-dsdt/) and get rid of ATY_Init altogether.

4) I have no idea whether this makes any sort of difference at all or not but in my particular case, I got audio to work with

 

 

						 "hda-gfx",
						 Buffer (0x0A)
						 {
"onboard-2"
						 },

 

Most guides use onboard-1, but that didn't work for me. So you can also try changing that. Just make sure to remember that code is used several times, so you need to change all instances. (At least I put it on the GFX0 inside the PEGP device, on the HDAU and also on the HDEF, though come to think of it, that probably is irrelevant)

 

And keep in mind that I'm not an expert or anything, I learned by tinkering and trying different things and probably so will you if you keep at it.

I have also tried to get rid of ATY_Init, but if I add graphics injection on DSDT system doesn't boot !!!

Anyway I am injecting graphics with ATY_Init kext, Don't know misteriously can't launch with DSDT - http://www.insanelymac.com/forum/topic/259251-dsdt-code-for-enabling-ati-mobility-radeon-hd-4650-in-shrike/

 

Tried by adding -

 

Device (PEGP)

{

Name (_ADR, 0x00010000)

Method (_PRW, 0, NotSerialized)

{

Return (GPRW (0x09, 0x03))

}

Device (GFX0)

{

Name (_ADR, Zero)

Name (_SUN, One)

Method (_DSM, 4, NotSerialized)

{

Store (Package (0x58)

{

"@0,AAPL,boot-display",

Buffer (0x04)

{

0x01, 0x00, 0x00, 0x00

},

"@0,ATY,EFIDisplay",

Buffer (0x06)

{

"TMDSB"

},

"@0,compatible",

Buffer (0x0B)

{

"ATY,Shrike"

},

"@0,connector-type",

Buffer (0x0B)

{

0x00, 0x04, 0x00, 0x00

},

"@0,device_Type",

Buffer (0x12)

{

"ATY,ShrikeParent"

},

"@0,display-connect-flags",

Buffer (0x04)

{

0x00, 0x00, 0x04, 0x00

},

"@0,display-type",

Buffer (0x04)

{

"LCD"

},

"@0,name",

Buffer (0x0B)

{

"ATY,Shrike"

},

"@0,VRAM,memsize",

Buffer (0x04)

{

0x00, 0x00, 0x00, 0x40

},

"@1,compatible",

Buffer (0x0B)

{

"ATY,Shrike"

},

"@1,connector-type",

Buffer (0x0B)

{

0x04, 0x00, 0x00, 0x00

},

"@1,device_Type",

Buffer (0x12)

{

"ATY,ShrikeParent"

},

"@1,display-connect-flags",

Buffer (0x04)

{

0x00, 0x00, 0x00, 0x00

},

"@1,display-type",

Buffer (0x04)

{

"LCD"

},

"@1,name",

Buffer (0x0B)

{

"ATY,Shrike"

},

"@1,VRAM,memsize",

Buffer (0x04)

{

0x00, 0x00, 0x00, 0x40

},

"AAPL,EMC-Display-List",

Buffer (0x40)

{

/* 0000 */ 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

/* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

/* 0010 */ 0x06, 0x10, 0x00, 0x00, 0x1B, 0x92, 0x00, 0x00,

/* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

/* 0020 */ 0x06, 0x10, 0x00, 0x00, 0x1C, 0x92, 0x00, 0x00,

/* 0028 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

/* 0030 */ 0x06, 0x10, 0x00, 0x00, 0x21, 0x92, 0x00, 0x00,

/* 0038 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00

},

"AAPL,aux-power-connected#",

Buffer (0x04)

{

0x01, 0x00, 0x00, 0x00

},

"AAPL,backlight-control#",

Buffer (0x04)

{

0x00, 0x00, 0x00, 0x00

},

"AAPL,slot-name#",

Buffer (0x07)

{

"Slot-1"

},

"AAPL01,Coherency#",

Buffer (0x04)

{

0x01, 0x00, 0x00, 0x00

},

"ATY,Card#",

Buffer (0x0F)

{

"113-B148xx-00"

},

"ATY,Copyright#",

Buffer (0x32)

{

"Copyright AMD Inc. All Rights Reserved. 2005-2008"

},

"ATY,DeviceID#",

Buffer (0x02)

{

0x80, 0x94

},

"ATY,EFICompileDate#",

Buffer (0x0C)

{

"Dec 18 2007"

},

"ATY,EFIDriverType",

Buffer (One)

{

0x02

},

"ATY,EFIEnabledMode",

Buffer (One)

{

0x01

},

"ATY,EFIOrientation",

Buffer (0x02)

{

0x02, 0x00

},

"ATY,EFIVersion",

Buffer (0x0A)

{

"01.00.236"

},

"ATY,EFIVersionB",

Buffer (0x14)

{

"113-B14801-023"

},

"ATY,EFIVersionE",

Buffer (0x0F)

{

"113-B1480A-236"

},

"ATY,MCLK",

Buffer (0x04)

{

0xE9, 0xCA, 0x00, 0x00

},

"ATY,MemRevisionID",

Buffer (0x02)

{

0x01, 0x00

},

"ATY,MemVendorID",

Buffer (0x02)

{

0x06, 0x00

},

"ATY,PlatformInfo",

Buffer (0x80)

{

/* 0000 */ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

/* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

/* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

/* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

/* 0020 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

/* 0028 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

/* 0030 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

/* 0038 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

/* 0040 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

/* 0048 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

/* 0050 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

/* 0058 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

/* 0060 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

/* 0068 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

/* 0070 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

/* 0078 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00

},

"ATY,EFIDispConfig#",

Buffer (0x09)

{

/* 0000 */ 0x45, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01

},

"ATY,SCLK",

Buffer (0x04)

{

0xAF, 0x57, 0x00, 0x00

},

"ATY,VendorID#",

Buffer (0x02)

{

0x02, 0x10

},

"ATY,Rom#",

Buffer (0x0F)

{

"113-B1480A-236"

}

binimage-----------------

},

"device_type",

Buffer (0x11)

{

"ATY,ShrikeParent"

},

"VRAM,totalsize",

Buffer (0x04)

{

0x00, 0x00, 0x00, 0x40

},

"model",

Buffer (0x1C)

{

"ATI Radeon HD 550v"

},

"name",

Buffer (0x11)

{

"ATY,ShrikeParent"

}

}, Local0)

DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))

Return (Local0)

}

 

Also give a try putting - gfx on board 2 & let you know.

Added verbose log info and ioreg.

 

Thank you

Palash

bmesg n ioreg.zip

Link to comment
Share on other sites

Haven't seen your logs yet... still, I don't understand why is your DSDT inject so long? You're adding a lot of flags and info in there that I'm not sure are needed.

You should backup your DSDT and try beginning from scratch with RampageDev's tutorial (unless you already did before)

 

P.S./Edit: Obviously, I mean start from scratch on the graphics thing, not the complete DSDT.

If you look at RampageDev's tutorial, you'll notice his inject is much shorter. The one you're using includes info on connectors and persobnalities and a lot of stuff that is probably being redundant. You changed your Shrike personality by patching the adequate kext, right? Or did you use some other method I'm not familiar with?

Link to comment
Share on other sites

Yes, I have also tried Rampage's method before. By this can boot the system, but graphics not launch. Think too short for my card & mine is too long as can't boot the system :D .

 

Without ATY_Init.kext, only GraphicsEnabler=Yes flag can launch the graphics, but always got a scrambled display.

Tried to fix the problem by forced display edid , not work :( .

 

And I think I patched the graphics kext (on ATIController4600.kext replaced the frame buffer personality) with the right way. As I read on forum :P .

I am hopefull with your method HDMI must be work, cause I can see the all things goes fine. Now question is what goes wrong with this?

 

Thank you

Palash

Link to comment
Share on other sites

Ok, I will put here DSDT returning bere. Before this need to correct the framebuffer, cause with your edited one screen goes black & can't fine HDMI.

Would you please put my card decode here?

Thank you

Palash

Link to comment
Share on other sites

 Share

×
×
  • Create New...