Jump to content

ATI HD framebuffer driver (10.5/10.6) with source code


  • Please log in to reply
900 replies to this topic

#661
lseba

lseba

    InsanelyMac Protégé

  • Members
  • Pip
  • 34 posts
  • Gender:Male
  • Location:argentina
well, i dont have the knowledge either to program a driver. i don exctly know how the driver works, but i think that i have two displays connected to my lap. one works, the other doesnt. maybe someone more experienced than me can look at the ioreg dump and detect a flag or a wrong value in the display section that leads to the problem
and thats what i hope.

#662
kizwan

kizwan

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPipPipPip
  • 1,422 posts

maybe someone more experienced than me can look at the ioreg dump and detect a flag or a wrong value in the display section that leads to the problem
and thats what i hope.

Yeah, I hope the same thing too. I'm also hoping someone with advanced skill to look into the driver. What I know is that iMac with ATI mobility graphic card doesn't use LVDS connector, it use displayport instead. I also read that vanilla driver doesn't support LVDS. I believe 99% it is true because if it does, we should see monitor/display connected to ATI card in IOReg but unfortunately not. Don't get me wrong. I'm hoping the same thing too & to be honest I haven't given up yet.

#663
Guest: NeatMonster_*

Guest: NeatMonster_*
  • Guests
Hi, I've an ATi Radeon Mobility HD 4570. I've deleted all ATI*.kext. I'm trying to install RadeonHD.kext but Mac OS X tells me it can't be installed. Please help me and tell me if I can get QE. Thanks in advance.

#664
lseba

lseba

    InsanelyMac Protégé

  • Members
  • Pip
  • 34 posts
  • Gender:Male
  • Location:argentina
@neatmonster
osx says so because it detected that the ownership and permissions of radeonHD.kext are wrong. installit with kexthelper . no QE with radeonHD

@kizwan

I also read that vanilla driver doesn't support LVDS. I believe 99% it is true because if it does, we should see monitor/display connected to ATI card in IOReg but unfortunately not


that is not true. my display panel shows up in ioreg. it is attached in my first post. ioreg shows 2 dispalys one is external via displayport and the other is internal-lvds

thats why i think it could be fixed

#665
kizwan

kizwan

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPipPipPip
  • 1,422 posts

that is not true. my display panel shows up in ioreg. it is attached in my first post. ioreg shows 2 dispalys one is external via displayport and the other is internal-lvds

thats why i think it could be fixed

You're very lucky. Most probably your internal LCD is connected to displayport. I have found several notebook use displayport instead conventional lvds. Most of us couldn't get the internal display detected at all. Do you mind posting IOReg dump using IORegistryExplorer? It is hard to look in text-base file. Have you tried using display override to force load the EDID value of your internal LCD?

#666
Guest: NeatMonster_*

Guest: NeatMonster_*
  • Guests

@neatmonster
osx says so because it detected that the ownership and permissions of radeonHD.kext are wrong. installit with kexthelper . no QE with radeonHD


Many thanks, it works now. I was realy... Never solutions for Quartz Extreme ? So sad :(.

#667
Time2Retire

Time2Retire

    Retired

  • Retired Developers
  • 1,012 posts
  • Gender:Female
  • Location:anonymouse.eu

Figure that some other ppl may also encounter such compilation problems, I decide to share my experience here.
The last time I do the compilation was a couple years ago and not much can be remembered. So I downloaded the source code from apple's site and try to compile it again today.

My system is still in 10.6.3, so I downloaded the corresponding IOGraphicsFamily package. A initial compilation produced all kinds of errors and warnings including the one you mentioned. So I need to check each of them and fix it.

From my past experience, it is an fact that those header files are really missing in our system's framework folder where the compiler is trying to search. But these files actually have a copy in the IOGraphicsFamily project itself. To solve the problem, simply copy them to the system path. Open a terminal, cd to the project directory and do below things:
cd IOGraphicsFamily
sudo cp ./IOKit/graphics/*.h /System/Library/Frameworks/Kernel.framework/Versions/A/Headers/IOKit/graphics/
sudo cp ./IOKit/i2c/*.h /System/Library/Frameworks/Kernel.framework/Versions/A/Headers/IOKit/i2c/

Here, I not only copied the missing header files, also overwrote those already existing header files. I only find out that I need do this after I encounter a lot errors without a clue and finally it turns out that these existing header files are not updated to correct version by Mac OSX's system update at all...

Thank you SO much for this, but I am hesitant to overwrite files. That's why I started to write some command line tools, but now I'm stuck getting a IOFBConnectRef connectRef from either a io_service_t or io_connect_t Do you happen to know how to do this? This is what I tried (in a nut shell):
IOMasterPort(MACH_PORT_NULL, &masterPort);service = IOServiceGetMatchingService(masterPort, IOServiceMatching("IOFramebuffer"));    if (service)	{		kr = IOServiceOpen(service, mach_task_self(), 0, &connect);				if (kr)		{					gConnectRefDict = CFDictionaryCreateMutable(kCFAllocatorDefault, (CFIndex) 0,														(CFDictionaryKeyCallBacks *) 0,														(CFDictionaryValueCallBacks *) 0 );			if (gConnectRefDict)			{				printf("Have gConnectRefDict\n");				CFDictionarySetValue(gConnectRefDict, (const void *) (uintptr_t) connect, connectRef);							connectRef = IOFBConnectToRef(connect);                       }		}		IOServiceClose(connect);    }    IOObjectRelease(service);
But I keep getting a segmentation fault. And what I want to do, is to read IOFBConnect to see what values are being used.

@Kizwan: I think it's this "IODisplayConnectFlags" = <c4410000> vs "IODisplayConnectFlags" = <84410000> we're looking for. The latter being external DVI as that's what I see here with a Samsung SyncMaster connected to my hack.

And "IODisplayConnectFlags" is defined in IOGraphicsTypes.h as kIODisplayConnectFlagsKey so we might/should be able to find more about it. Like in IODisplay:Start in IODisplay.cpp where I found this:
[	fConnection->getAttributeForConnection(kConnectionFlags, &connectFlags);
	uint32_t flagsData = (uint32_t) connectFlags;
	setProperty(kIODisplayConnectFlagsKey, &flagsData, sizeof(flagsData));
Which basically means that we can change it by using the 'flgs' (kConnectionFlags) parameter (on the display wranger?) to change it.

#668
senygma

senygma

    InsanelyMac Protégé

  • Just Joined
  • Pip
  • 3 posts
I have been following this post this month, I really must commend mainly Dong and all the others who have been working and making this progress. just brilliant...

On another note... The Specs for my system are as follows:

Inspiron 6400
1.83 reads as 1.92 GHz Intel Core 2 Duo
ATI Radeon X1400 256MB
4 GB 667 MHZ DDR2 SDRAM
Leopard 10.5.8
- Ideneb 10.5.8
- VoodooPS2, VoodooTSCSync
- ATIRadeonX1000 (7145)
- 10.5.x RadeonHD.kext (posted by Dong to fix hardware cursor, added my EDID)

I just installed Snow Loeopard 10.6.4
- ##### Method/#####.
- Disabled Graphics enabler option in the com.apple.plist in /Extra folder
- 10.6.x RadeonHD.kext (posted by Dong to fix hardware cursor, added my EDID optiona

THANKS DONG & OTHERS

-------------------------------------------------

PROBLEMS:

10.5.8

- I may need some advice on a power managment, I only see VoodooBattery.kext, I find my cpu is running hot really quick as compared when running the 10.6. Please Help


-Not sure if you were able to get Wireless/or this other Card slot working, not the card reader the other one next to it.

10.6

-Dong, if I am not mistaken you have a smiliar system, I have tried all that I have read concerning enabling Quartz in 10.6, I am not sure what I have done wrong, I am able to change my resolution from 800x600 up to 1440x900, but I still don't have Quartz.

OSx86 tools
worked at some point but now gives the error Can’t make "The domain/default pair of (com.apple.windowserver, QuartzGLEnabled) does not exist" into type boolean. (-1700)"

- I tried following "michaspoli post Feb 17 2010" and used ALL the ATI.* Kext from Snow Leopard Server Install DISC

- In ATIRadeonX1000 Kext installed on the 10.6, the IOPCIMatch string starts with "0x71871002 0x72101002 0x71DE1002 0x71451002" while on the 10.5.8 it starts with "0x71451002"

Any assistance from you or anyone else would be greatly appreciated.

#669
kizwan

kizwan

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPipPipPip
  • 1,422 posts

@Kizwan: I think it's this "IODisplayConnectFlags" = <c4410000> vs "IODisplayConnectFlags" = <84410000> we're looking for. The latter being external DVI as that's what I see here with a Samsung SyncMaster connected to my hack.

On my Dell, it only have VGA & HDMI port. I checked on my Acer Aspire 9420 (have nvidia, display working), the IODisplayConnectFlags = <84490000> on internal LCD. I will try inject both IODisplayConnectFlags (including <c4410000>) using LegacyIOGraphicsFamily.kext (Thanks to you & fred). :)

#670
derSpinner

derSpinner

    InsanelyMac Protégé

  • Just Joined
  • Pip
  • 1 posts
It is hoped the full support of ATI 3470?

#671
lseba

lseba

    InsanelyMac Protégé

  • Members
  • Pip
  • 34 posts
  • Gender:Male
  • Location:argentina
@kizwan

here im attaching my ioregistryexplorer file
there are two appledisplay
the firstone is the laptop display :
DisplayProductId 0x214

the other one is an axternal monitor via displayport to vga adaptor

hope someone can decipher something out of this

Attached Files



#672
someone1

someone1

    InsanelyMac Protégé

  • Members
  • Pip
  • 14 posts
Dong,

I have ATI Radeon HD 4350.
Do I have any luck with your kext?

#673
senygma

senygma

    InsanelyMac Protégé

  • Just Joined
  • Pip
  • 3 posts
OK..I got it fully working...Quartz Enabled and everything...I am trying to get the sound working...everything tried so far has failed

#674
senygma

senygma

    InsanelyMac Protégé

  • Just Joined
  • Pip
  • 3 posts
ok everything working...I used the voodooHDA...

#675
melpy90

melpy90

    InsanelyMac Protégé

  • Members
  • Pip
  • 31 posts
  • Gender:Male
does it works on ati 5650? i want only resolution :angel:
thx

#676
lseba

lseba

    InsanelyMac Protégé

  • Members
  • Pip
  • 34 posts
  • Gender:Male
  • Location:argentina
anyone to have a look to my ioreg in my previous post?

#677
fcollingwood

fcollingwood

    InsanelyMac Protégé

  • Members
  • Pip
  • 28 posts
I have an MSI VX600, which allegedly contains a mobility HD3410, although the OS reports it as a 3430.

I installed 10.5.7, loaded up the latest 10.5 RadeonHD kext from this thread, all good, no problems

I then rebuilt with 10.6.3, loaded up the latest 10.6 kext from this thread, and discovered I could only get native resolution if I booted in 32 bit mode. Seems the kext may be broken for 64 bit mode.

#678
agitateslowly

agitateslowly

    InsanelyMac Protégé

  • Just Joined
  • Pip
  • 1 posts
Afer turning off the Enable HW mouse curser, everything is working fast and smooth. Great job!!

Dell E1505 / 6400

#679
nofxcwb

nofxcwb

    InsanelyMac Protégé

  • Members
  • Pip
  • 12 posts
  • Gender:Male
That is just AWESOME! I've been trying to get full res for 4 months (since my very first Mac OS installation) and this works perfectly!

I tried so many things including DSDT, 3rr0rists driver, ATIInject, Evoenabler and always got black screens. I was tired and about to give up and install Seven. Many many people out there are saying that it is impossible to have an ATI Mobility Radeon X1600 working with Snow Leopard!

Well, now I have mine working thanks to Dong! BTW my laptop is an Acer Travelmate 8204 with ATI Mobility Radeon X1600 71c5 and the native resolution is 1680x1050.

Everything works flawlessly on Snow Leopard 10.6.5! Full res, full screen videos, mouse without tearing, QE/CI (was working before).

Thanks a lot Dong, you just saved me from giving up!

#680
Twa

Twa

    InsanelyMac Protégé

  • Members
  • Pip
  • 18 posts
  • Gender:Male
  • Location:Germany
  • Interests:Graphic Design, Game, Art
Anyone tested it on Radeon HD 3740 ??? :(





1 user(s) are reading this topic

1 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