Jump to content

ATI Framebuffer development


  • Please log in to reply
465 replies to this topic

#401
tt365

tt365

    InsanelyMac Protégé

  • Members
  • Pip
  • 5 posts
I'm new to OS X and graphics development, but I might be able to lend a hand. And I have a laptop I'd love to get working properly (Dell 1705 w/X1400M graphics card). I'll report back later after I've had a chance to test RadeonDump and get XCode installed on the laptop so I can build. It sounds like my hardware is very similiar to Dong's, so I'm not sure I can do much for diversity, but I can verify results and try to help debug/port. Running OSX 10.5.5 booting from an EFI partition.

#402
Nick14

Nick14

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPipPip
  • 1,125 posts
  • Gender:Male
What about replacing the X1000 GL driver to 9700 GL would that work ??

#403
netkas

netkas

    InsanelyMac Legend

  • Developers
  • 616 posts
  • Gender:Male
to Slice and whoever else develop those drivers

difference beetwin rv6xx and rv7xx - different FB_LOCATION var, and a way to get dcc info(it has to be got directly via gpio)

first can be seen here - http://cgit.freedesk...f5435fded0a5e78

and here http://cgit.freedesk...f5435fded0a5e78

+ R7XX_MC_VM_FB_LOCATION = 0x2024,
+
R6XX_MC_VM_FB_LOCATION = 0x2180,

#404
mitch_de

mitch_de

    InsanelyMacaholic

  • Local Moderators
  • 2,884 posts
  • Gender:Male
  • Location:Stuttgart / Germany

to Slice and whoever else develop those drivers

difference beetwin rv6xx and rv7xx - different FB_LOCATION var, and a way to get dcc info(it has to be got directly via gpio)

Hi netkas (FB guru :( )
I had some discussion with lastexile about framebuffer triakis vs framebuffer lamna plugin for my MSI 3850 512 MB (has an onboard HD Audio dev ID too, )
lastexile means "avoid triakis because bad powermanagement (fan)".
But that triakis fb is the only one which worked for my MSI 3850.
natit (from lastexile, 19.9.08 10.5.5 package) gives kernel panic / gfxstring blue screen (both using lamna fb)
gfxstring(link to ATY triakis insted of lamna plugin) works.
Do you know who made this triakis (Apple / X labs?) and why my card may have problmes with lamna, lastexile and other users (not all!) can use ?
Can it be the added HD Audio device or differences in the ATOMBIOSES of some cards ?
Thanks netkas - i dont think i get an solution but i am very interested to get somewhen an ati_semiguru :unsure:

EDIT:
I tested an other Triakis plugin (is within ATINDRV.kext - triakis.kext with newer version number than i use with success) , also blue screen like using Lamna plugin.
So i am sure that bluescreen on ATI 3850/3870 has to do with some framebuffer things (adresses?!)
Are there some tools (maybe like some Test.kext which show internals of ATI cards? ) which can show used adresses / needed adressspaces which may vary between different ATI 3850/3870 cards ?

#405
Slice

Slice

    InsanelyMacaholic

  • Local Moderators
  • 2,973 posts
  • Gender:Male
  • Location:Moscow

to Slice and whoever else develop those drivers

difference beetwin rv6xx and rv7xx - different FB_LOCATION var, and a way to get dcc info(it has to be got directly via gpio)

first can be seen here - http://cgit.freedesk...f5435fded0a5e78

and here http://cgit.freedesk...f5435fded0a5e78

+ R7XX_MC_VM_FB_LOCATION = 0x2024,
+
R6XX_MC_VM_FB_LOCATION = 0x2180,

Thank netkas for the attention to the theme.
I know. Different Rxxx have different registers. FB_LOCATION - is one of the problem.
It is not really a problem to write conditions
if(chip == R7XX) {} else {}
The real problem is to write all that we already know.

So i am sure that bluescreen on ATI 3850/3870 has to do with some framebuffer things (adresses?!)
Are there some tools (maybe like some Test.kext which show internals of ATI cards? ) which can show used adresses / needed adressspaces which may vary between different ATI 3850/3870 cards ?

I don't have the card and so don't know about triakis/lamna.
But I remember some observation about bluescreen. Some ATI users resolve the problem by using IONDRVSupport.kext version 1.4.3. You can find it at AGPGart FAQ.
I always dream about tools to show addresses used by Radeon. No idea.
May be write to screen some watermark and then scan all memory to find it?

#406
Eddie94

Eddie94

    iDeneb Team Member

  • Members
  • PipPipPipPipPipPipPipPip
  • 1,067 posts
  • Gender:Male
  • Location:Italy
Slice, with atilead.kext + radeon pci i have this
ATI RADEON XPRESS 200M Series:

Modello Chipset: ATI RADEON XPRESS 200M Series
Tipo: Monitor
Bus: PCI
VRAM (totale): 256 MB
Fornitore: ATI (0x1002)
ID dispositivo: 0x5a62
ID revisione: 0x0000
Versione driver EFI: 01.00.068
Monitor:
Monitor:
Risoluzione: 1024 x 768
Profondit: Colore 32-bit
Core Image: Software
Monitor principale: S
Mirror: Spento
Online: S
Quartz Extreme: Non Supportata
the bus isn't pcie, but pci, it is showwing at monitor and not at Display :(,with ati.kext it hangs at start!, why? (i'm usign iDeneb 10.5.5)!
I will tr with the open ati files!

#407
erudified

erudified

    InsanelyMac Protégé

  • Members
  • Pip
  • 25 posts
Hey guys,

I've been sidetracked for a while and haven't felt like messing with this, but I'm going to hack on it a bit more now.

I'm basing my work off of the kernel modesetting work for r5xx by glisse/airlied/etc in the Linux world.

It's modular, based off of the kgrids atombios parser, and overall much much easier to understand. The modesetting functionality is pretty much completely separate from all of the X11 specific bits in this codebase so it should be way easier!

#408
ridgeline

ridgeline

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 532 posts
  • Gender:Male
  • Location:Cape Coral, FL
I hear the issue with ATi Mobility series chips is frame buffer is there any break through in this department? I am using a Mobility 34XX HD Dev ID 95c4 I would almost kill for a working solution

#409
erudified

erudified

    InsanelyMac Protégé

  • Members
  • Pip
  • 25 posts

I hear the issue with ATi Mobility series chips is frame buffer is there any break through in this department? I am using a Mobility 34XX HD Dev ID 95c4 I would almost kill for a working solution


I believe that card is actually supported in the latest Snow Leopard builds - it's pretty unlikely that any of the stuff being worked on in this thread will ever support anything newer than r500 cards. I'm targetting the X1400 (devid 0x71451002) specifically right now.

#410
ridgeline

ridgeline

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 532 posts
  • Gender:Male
  • Location:Cape Coral, FL
Well I know that some of the info was added in the Macbook/Pro update and after updating a few things we noticed that the card was asking for megaladon...... however with the help of a couple of people we used an old natit and adjusted the kext and now I can boot up with my card.... I can see it however i do not have full support and I still can not get out of default resolution.....

Here is the code I get in verbose this maybe the problem could you tell me what I may want to check?

07/11/08 23:45:09 com.apple.kextd[9] /System/Library/Extensions/ATINDRV.kext/Contents/PlugIns/ATY_Megalodon.kext/Contents/MacOS/ATY_Megalodon isn't a valid mach-o, bad symbols
07/11/08 23:45:09 kextd[29] error mapping module file /System/Library/Extensions/ATINDRV.kext/Contents/PlugIns/ATY_Megalodon.kext/Contents/MacOS/ATY_Megalodon
07/11/08 23:45:09 kextd[29] can't map module files
07/11/08 23:45:09 kextd[29] can't check load addresses of modules
07/11/08 23:45:09 kextd[29] a link/load error occured for kernel extension /System/Library/Extensions/ATINDRV.kext/Contents/PlugIns/ATY_Megalodon.kext

#411
Slice

Slice

    InsanelyMacaholic

  • Local Moderators
  • 2,973 posts
  • Gender:Male
  • Location:Moscow
For those who have black screen on Laptop LCD and good image on outer CRT.

I had the same issue with IntelX3100 on Dell Laptop. Now all is OK!
I patched DSDT.
http://forum.insanel...o...=133683&hl=

Namely. I erase from DeviceTree the follow devices: VID2, CRT, TV and DVI. Only LCD remains.
Try!
May be you need no new framebuffer.

#412
Eddie94

Eddie94

    iDeneb Team Member

  • Members
  • PipPipPipPipPipPipPipPip
  • 1,067 posts
  • Gender:Male
  • Location:Italy
Slice, have you a soluction for hangs at starts with ati.kext?

#413
Slice

Slice

    InsanelyMacaholic

  • Local Moderators
  • 2,973 posts
  • Gender:Male
  • Location:Moscow

Slice, have you a soluction for hangs at starts with ati.kext?

Sorry, I didn't make changes in Ati.kext very long time cause I am busy with LAN problem. I am only one and have very few time for more then one problem.

TODO:
if (rinfo->ChipFamily < CHIP_FAMILY_R520) 		rinfo->fb_local_base = INREG(MC_FB_LOCATION) << 16;

 	else //TODO

 		rinfo->fb_local_base = rinfo->fb_base_phys;

	  IOLog("ATIFB: fb_phys_base=%08lx fb_local_base=%08lx\n", rinfo->fb_base_phys, rinfo->fb_local_base);
Must be corrected as Netkas said.
Radeon_CardDetect(PCIDevice);
For ATOMBIOS we have no Card name - take it from list (as in Dong driver)

if ((data = OSDynamicCast(OSData, provider->getProperty("display-type")))
Need to use this value to inject good EDID:
sprintf(name, "%s,EDID",radeon_get_mon_name(rinfo->MonType));
This method works only for R300. So use injected display-type.

radeon_check_modes(rinfo, 0); 	radeon_set_fbinfo (rinfo);
After that we have array of video modes but currently they are not used except initial one.

With good EDID injected you must have working driver. Else - debugging needed.

#414
Eddie94

Eddie94

    iDeneb Team Member

  • Members
  • PipPipPipPipPipPipPipPip
  • 1,067 posts
  • Gender:Male
  • Location:Italy
Slice when can you fix the error with sti.kext?i can whait!

#415
Slice

Slice

    InsanelyMacaholic

  • Local Moderators
  • 2,973 posts
  • Gender:Male
  • Location:Moscow

With good EDID injected you must have working driver. Else - debugging needed.

You must find good EDID for your monitor.
You must make debugging.

#416
ole2

ole2

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 180 posts
  • Gender:Male
  • Location:Grenoble, France

I hear the issue with ATi Mobility series chips is frame buffer is there any break through in this department? I am using a Mobility 34XX HD Dev ID 95c4 I would almost kill for a working solution

I have same device in my ASUS laptop, so please keep me informed, if you'll find a solution.
so far I know, it's compatible with x2400 (maybe)

and it's 2 times thinner bus than HD 36xx (64 against 128, so maybe the problem is in high-half range register(s), helping to address highest 64 bit of the dedicated DDR3 memory bus, which register(s) is not used in HD 34xx)

for HD36xx the solution is here
and this is only about OpenGL part (hardware graphics acceleration)

as about LCD display resolution, which you may have 1200x800 (apart from VESA 1024x768), this is possible (needs to be checked) with ATILead from here

one again, please post in respective Topic if you'll find the way.
another thread involved is here

#417
ole2

ole2

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 180 posts
  • Gender:Male
  • Location:Grenoble, France

It is new for me. Thanks for the information. I will try it.
About correction of my Ati.kext I am sorry for delay. I am busy with another tasks now but I am always here catching news.
Does it work for you? I can't check cause I need 8500. Other testers?


I've downloaded that archive and investigated it's content.
according to following article and binary internals I confirm, it contain both PowerPC and Intel binaries.
which mean, it may be used in Intel Tiger also, however doesn't mean it's API compatible with Leo expectancy.

#418
ridgeline

ridgeline

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 532 posts
  • Gender:Male
  • Location:Cape Coral, FL
Wow you have really done your homework i think that the ATiLead is a step in the right direction I will investigate that more today....
Thanks, Mark

#419
ridgeline

ridgeline

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 532 posts
  • Gender:Male
  • Location:Cape Coral, FL
Okay I was wondering if someone could look at this and tell me what they think.
I have installed the latest 9f23 installer extracted and installed the latest ait drivers from the macbook update 1.2 and then inserted a efi string that was made by H4ckster, and now i see my card in the abou7t this mac however I do not have a res option or qe/ci can anyone help?

#420
PainWarlock

PainWarlock

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 140 posts
  • Gender:Male

Okay I was wondering if someone could look at this and tell me what they think.
I have installed the latest 9f23 installer extracted and installed the latest ait drivers from the macbook update 1.2 and then inserted a efi string that was made by H4ckster, and now i see my card in the abou7t this mac however I do not have a res option or qe/ci can anyone help?

aparently in the next kalyway theres going to be 3450 support it will be released in 2 weeks





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