Jump to content

ATI Radeon HD4350 PCIe


  • Please log in to reply
242 replies to this topic

#101
ANARCHiNTOSH

ANARCHiNTOSH

    Loldermort!!!!

  • Members
  • PipPipPipPip
  • 221 posts

There's an obvious OpenGL performance gain/difference. More apps have trouble with OpenGL in 10.6.3, so it could be failing miserably at something, which is showing as a performance gain. For instance Xcode's Core Image Fun House.app distorts and has the green problem whenever a filter is applied, but doesn't have this problem with 10.6.2. Photoshop still requires that Use For Image Display be turned off in Advanced OpenGL Drawing. I tried to do some OpenGL debugging, but I'm clueless when it comes to OpenGL, so it was rather pointless.

There are some reports of similar issues with retail Macs, see the Apple Support Forums. The ATI Radeon X1600 seems to be a popular card with reports of retail problems. If this is anything similar to the retail issue, then I'm inclined to believe that it has to do with the memory management in the ATI driver.

I don't know if this has anything to do with it, but without the ATI4500 kext loaded, my card reports 256MB of VRAM in Profiler, so perhaps it isn't using the VRAM properly. Is there any difference in the 45xx vs 43xx series when it comes to memory management? I tried using atMonitor to monitor the VRAM usage (suggested in the Apple Support thread), but I get a Kernel Panic (due to my using legacy kernel no doubt). If someone with vanilla kernel wants to give it a try, please report back if there's anything interesting.


@ANARCHiNTOSH: Nice work on the injection kext :P

Thanks! im looking to increase what it does, at least to fix the green apple/these OpenGL errors and
hopefully to replace the GraphicsEnabler=Yes/DSDT injector.


It was really easy to make, i adapted the concept from a similiar kext for GTX295, which also needed a device-id injected.
All thats inside is a plist that overwrites a part of the ATI4500 kext plist. (a lot like LegacyHDA.kext does for AppleHDA.kext)

i tried atMonitor and it worked, but im not really sure what im looking for?
nothing particularly remarkable struck me, apart from getting no reading from gpu usage or gpu temperature (which isnt particyularly surprising on osx86).
vRam seemed all right, never really rising above 30% usage though.

apparently 4550 users are having the same problem:
http://www.tonymacx8....php?f=7&t=1388

i think to fix the green all that needs to be done is find the offending code in the offending kext and overwrite it
with the 10.6.2 code, which can be done either manually or with the injector kext (legacy style).
shouldnt be too hard, its just finding the code which is timeconsuming



@everyone:
if you want the green apple and OpenGL errors fixed on 10.6.3, follow the steps in post 100 to help me find out which kext(s) is causing the problem
so i can correct it from my ATI4350.Fix.kext


#102
cerfew

cerfew

    InsanelyMac Protégé

  • Members
  • PipPip
  • 68 posts
  • Gender:Male
YES!!!!!

QE/CI finally supported! I am so happy right now.

10.6.2, using the kernel posted above somewhere (i think it's designed for 10.6.3.)

Chameleon RC4 with PCEFI 10.6.

ATISupport, ATI4500Controller, ATIFramebuffer, and ATIx2000 kexts are what is loaded.

This is so exciting! I am willing to provide more specific details if requested.

#103
Remeren

Remeren

    InsanelyMac Protégé

  • Members
  • Pip
  • 9 posts
yes for the life of me all i can get is it to show that is it a ATI Radeon 4300 Series nothing else beyond that works i dont have the extensions loading nothing....HELP!! cerfew

Attached Files



#104
cerfew

cerfew

    InsanelyMac Protégé

  • Members
  • PipPip
  • 68 posts
  • Gender:Male
Did you add your DevID to the atix2000 kext?

#105
ANARCHiNTOSH

ANARCHiNTOSH

    Loldermort!!!!

  • Members
  • PipPipPipPip
  • 221 posts

yes for the life of me all i can get is it to show that is it a ATI Radeon 4300 Series nothing else beyond that works i dont have the extensions loading nothing....HELP!! cerfew

have you followed the !FORWARD! guide properly, that should be foolproof

#106
hermann88

hermann88

    InsanelyMac Protégé

  • Members
  • Pip
  • 11 posts
  • Gender:Male
I've got an issues with my video card. It is an EAH4350 1GB. I've got black screen and no signal from vga or dvi. I tried with some bootloader , graphicsenabler, atikexts, and adding id... can someone help me?

#107
DIMAN0id

DIMAN0id

    InsanelyMac Protégé

  • Members
  • Pip
  • 2 posts
  • Gender:Male
  • Location:Moscow

Without any graphics enabler kext or in com.apple.Boot.plist the following dsdt hack, adapted from hack #13 in the DSDTSE app, seems to work for me.

Device (GFX0)
				{
					Name (_ADR, Zero)
					Name (_SUN, One)
					Method (_DSM, 4, NotSerialized)
					{
						Store (Package (0x1E)
						{
							"@0,compatible",
							Buffer (0x0E)
							{
							   "ATY,Peregrine"
							},

							"@0,deviceType",
							Buffer (0x08)
							{
							   "display"
							},

							"@0,VRAM,memsize",
							Buffer (0x04)
							{
								0x00, 0x00, 0x00, 0x20
							},

							"@0,display-connect-flags",
							Buffer (0x02)
							{
								 0x00, 0x04
							},

							"@0,name",
							Buffer (0x0E)
							{
								"ATY,Peregrine"
							},

							"@1,compatible",
							Buffer (0x0E)
							{
							   "ATY,Peregrine"
							},

							"@1,device_type",
							Buffer (0x08)
							{
								"display"
							},

							"@1,VRAM,memsize",
							Buffer (0x08)
							{
								 0x00, 0x00, 0x00, 0x20
							},

							"@1,display-connect-flags",
							Buffer (0x02)
							{
								 0x00, 0x04
							},

							"@1,name",
							Buffer (0x0E)
							{
								"ATY,Peregrine"
							},

							"ATY,Card#",
							Buffer (0x0E)
							{
								"109-B77101-00"
							},

							"ATY,Rom#",
							Buffer (0x0F)
							{
								"113-B7710C-176"
							},

							"device_type",
							Buffer (0x14)
							{
								 "ATY,PeregrineParent"
							},

							"VRAM,totalsize",
							Buffer (0x04)
							{
								 0x00, 0x00, 0x00, 0x20
							},

							"model",
							Buffer (0x17)
							{
								 "ATI Radeon 4300 Series"
							}
					  }, Local0)
					  DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
					  Return (Local0)
				 }

Try it and let me know :D


All work fine. But in the end it was necessary to add one more symbol "}".

#108
Grim Reaper

Grim Reaper

    InsanelyMac Protégé

  • Members
  • PipPip
  • 75 posts
  • Gender:Male
  • Location:Toronto, Canada (Crack smoking Mayor Rob Ford's city)

YES!!!!!

QE/CI finally supported! I am so happy right now.

10.6.2, using the kernel posted above somewhere (i think it's designed for 10.6.3.)

Chameleon RC4 with PCEFI 10.6.

ATISupport, ATI4500Controller, ATIFramebuffer, and ATIx2000 kexts are what is loaded.

This is so exciting! I am willing to provide more specific details if requested.


I have been trying to get this working with QE/CI for two months!

Yes, please provide more specific details. Include hyperlinks to the source of the files and the steps, in order, of what you did.

#109
ANARCHiNTOSH

ANARCHiNTOSH

    Loldermort!!!!

  • Members
  • PipPipPipPip
  • 221 posts

I have been trying to get this working with QE/CI for two months!

Yes, please provide more specific details. Include hyperlinks to the source of the files and the steps, in order, of what you did.


i already did exactly that! i even wrote a kext
click here

@DIMAN0id thanks for fixing the dsdt thing, i just copied and pasted the original without the extra },
no wonder it didnt work. i will try it when i get the chance

#110
cerfew

cerfew

    InsanelyMac Protégé

  • Members
  • PipPip
  • 68 posts
  • Gender:Male
First of all, I used Chameleon RC4 downloadable from the Chameleon website. You can find the link to it in the News listings here.

I used the 10.6 PCEFI downloadable here: http://netkas.org/?p=372

I using OSX 10.6.2.

I used the kext package in post #68. Not sure if that part made any difference.

I used the qoopz/nawcom legacy kernel because I'm on AMD. I couldn't get graphics before doing this, that may be the main step.

I think that's all. Can we have a mod sticky this? Seeing as we now have support.

#111
parannoyed

parannoyed

    InsanelyMac Protégé

  • Members
  • Pip
  • 9 posts
I was looking at the DSDT code posted and started poking around in IORegistryExplorer, trying to figure out why the "green" problems are happening. I may have no idea what I'm talking about, but this would cause a problem as far as I can tell. My memory sizes aren't matching up. If I'm reading this correctly, then this could definitely cause the "green" and distortion issues. Is there anyone with more experience with this sort of thing? If my BIOS didn't dump so horribly, I'd try the DSDT code, but judging from the amount of errors I have (parts of the code don't make sense) I think it's going to take a while to get my DSDT.aml compiled. Is there any other way to inject the proper memory amount?

[codebox]IOService:/AppleACPIPlatformExpert/PCI0@180000/AppleACPIPCI/PCE2@2/IOPCI2PCIBridge/display@0

IODeviceMemory:
<array>
<array>
<dict>
<key>address</key>
<integer>-805306368</integer>
<key>length</key>
<integer>268435456</integer>
</dict>
</array>
<array>
<dict>
<key>address</key>
<integer>-22085632</integer>
<key>length</key>
<integer>65536</integer>
</dict>
</array>
<string>IOSubMemoryDescriptor is not serializable</string>
<array>
<dict>
<key>address</key>
<integer>-22282240</integer>
<key>length</key>
<integer>131072</integer>
</dict>
</array>
</array>


VRAM,totalsize:
<integer>536870912</integer>

ATY,memsize
<integer>536870912</integer>

[/codebox]

#112
ANARCHiNTOSH

ANARCHiNTOSH

    Loldermort!!!!

  • Members
  • PipPipPipPip
  • 221 posts
@parannoyed

i would guess an efi string would also work.
that or patching the offending code (in whatever kext it is, probably 4500Controller or ATIRadeonX2000)
which is either in the kext plist (unlikely i now think) or the kext executable (the one in Contents/MacOS/)
kext executable can be patched with hexfiend: http://ridiculousfish.com/hexfiend/

for dual monitors and to fix the ocasional failed display wake from sleep this could help.
its a videorom to dsdt converter, and it works for 4870. you put the converted rom dump in dsdt like the attached example shows and it enables all the good extra stuff

once we discover it all ill make a comprehensive guide
i could try and put all of this into my kext.... but i think hacks in dsdt give faster boot time as its loaded all at once
by chameleon rather than one by one by os x.
so keeping the kext as a dummy kext for just device-id is best

UPDATE:
wow i cannot get the dsdt injector to work no matter what i do. i get no compile errors with DSDTSE
but i always get a kp on boot. can anyone who is using it successfully tell me exactly how they put it in?
i followed the instructions for where to place it from hack 13 in DSDTSE (in the PCI0 section).

could someone please upload their ATi modded dsdt that works? just so i can learn by example

#113
Remeren

Remeren

    InsanelyMac Protégé

  • Members
  • Pip
  • 9 posts
Well, i have to report that its working ....well sorta.

I have four resolutions I can choose and it detects all of my Video Ram now. However i am not getting ne video output from vga or hdmi connector. I spoke to JaS on irc.osx86.hu, however the boot files he made for me, made things worse the display did not shut off ne more but GFX didnt show up as 4350 ne more but res'es was still there. right now hacktosh is booted that is where I sent this msg from thru screen sharing on my emac. So if you have any questions for me just post msg here i read my email on daily/hourly basis.

Thanks

Tim

Attached Files



#114
parannoyed

parannoyed

    InsanelyMac Protégé

  • Members
  • Pip
  • 9 posts

i followed the instructions for where to place it from hack 13 in DSDTSE (in the PCI0 section).


I wound up spending all night getting my DSDT working. The ECS A780GM-A BIOS dumps horribly. If anyone else with this board needs a working DSDT, you can message me.

Anyways, if you look in IORegistryExplorer (part of Xcode), you'll find where to place the gfx0 code. For me it's at:
IOService:/AppleACPIPlatformExpert/PCI0@180000/AppleACPIPCI/PCE2@2/IOPCI2PCIBridge/display@0
Which places my DSDT code somewhere like:
PCI0/PCE2/GFX0
I'm pretty sure that PCI0/GFX0 is wrong (where DSDTSE tells you to put it). Retail Mac DSDT put onboard video at PCI0/P0P2/GFX0. PCE1 if you get the SLOT-1 display message on boot, and PCE2 if you get SLOT-2. Although, I used to get SLOT-2 on boot, but now it's SLOT-1 after using GFX0, so it's best to check IOReg.

Results: I can change my model string, so I know it's injecting it. I figured that I'd try to reduce the total VRAM to see if it was trying to use more memory than it knew what to do with, BUT changing the VRAM entries to "0x00, 0x00, 0x00, 0x10" (that should be 256M) does not work. It still shows "0x20000000" in IOReg. I'm not sure if I need to be using a different format than "0x00, 0x00, 0x00, 0x10", because it doesn't show up in IOReg that way. That will be my next test, trying to use Memory32Fixed or something like that, rather than Buffer.

I've been looking through retail DSDT dumps trying to figure out a fix. Found a bunch of them at ProjectOSX. If the DSDT doesn't work out, it's on the the binary driver :). I've always avoided learning ASM out of laziness, but I guess now I have a reason.

#115
evanbradford

evanbradford

    InsanelyMac Protégé

  • Just Joined
  • Pip
  • 3 posts
I've got SL 10.6.3 running on my GIGABYTE EP45-UD3R, and everything starts up fine using an ATI x1900 card. However, when I try to boot the computer with my GIGABYTE GV-R435OC, it stalls on the apple screen, and then gives me the "you need to restart you computer. etc etc" screen. Any ideas on this? I used the kext you provided in this thread, and am using Chameleon RC3 and PC EFI 10.6.

#116
cerfew

cerfew

    InsanelyMac Protégé

  • Members
  • PipPip
  • 68 posts
  • Gender:Male
You should have installed I believe four kexts from that package.
Are you using VGA or DVI?
Intel or AMD?
If AMD- what kernel?

#117
Grim Reaper

Grim Reaper

    InsanelyMac Protégé

  • Members
  • PipPip
  • 75 posts
  • Gender:Male
  • Location:Toronto, Canada (Crack smoking Mayor Rob Ford's city)

i already did exactly that! i even wrote a kext
click here

@DIMAN0id thanks for fixing the dsdt thing, i just copied and pasted the original without the extra },
no wonder it didnt work. i will try it when i get the chance



I PM'd you about your link not opening the specific posting you referred to but I don't need you to reply because I searched through your postings and found the relevant one. Thanks.

#118
Remeren

Remeren

    InsanelyMac Protégé

  • Members
  • Pip
  • 9 posts
i noticed no response really to my plea of why i have no video output could it be b/c of my dsdt file or something else i was told to change the framebuffer in chameleon. :happymac:

#119
evanbradford

evanbradford

    InsanelyMac Protégé

  • Just Joined
  • Pip
  • 3 posts
I tried to get it working using DVI, but I can use VGA if I need to. I'm running Intel C2D. Any help would be very much appreciated, thanks!

#120
cerfew

cerfew

    InsanelyMac Protégé

  • Members
  • PipPip
  • 68 posts
  • Gender:Male
C2D, that means you can't use the vanilla kernel, am I right? Find my post a few posts up and follow the instructions in it, should help.





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

© 2014 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   PHP hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy