Jump to content

New AGPGart


Slice
 Share

941 posts in this topic

Recommended Posts

@ Slice

 

This is probably not very important but I noticed differences between IOPCIFamily 2.4.3 and 2.2 on Tiger and 2.4.3 and 2.4 on Leopard.

 

The difference is the same for both Leopard and Tiger so its related to your IOPCIFamily 2.4.3.When booting single user I manage to get some information that is being "pushed out" later in the boot process, here is my find:

 

dmesg:2.4.3 (Both Tiger and Leopard)

 

DEBUG fixing subordinate bus setting on P0P1 device(1, 0) - was 1 now 255

AGP: Found VIA AGP bridge for AMD

AGPBridge buses: pri 0 secBus 1 subBus 255 BridgeDev 0

AGPGart subBus corrected

AGPgart: BridgeMemoryRange [f9f00000, fbffffff]

AGPgart: BridgePrefetchableMemoryRange [f0000000, f8ffffff]

AGPgart: BridgeIORange [0000f000, 00000fff]

AGP: saveBridgeState OK

AGP create nub for 004210de bus=1 cap=68

AGPGart: publishNub display

 

2.2 or 2.4 (2.2 in Tiger and 2.4 in Leopard)

 

AGP: Found VIA AGP bridge for AMD

AGPBridge buses: pri 0 secBus 1 subBus 1 BridgeDev 0

AGPgart: BridgeMemoryRange [f9f00000, fbffffff]

AGPgart: BridgePrefetchableMemoryRange [f0000000, f8ffffff]

AGPgart: BridgeIORange [0000f000, 00000fff]

AGP: saveBridgeState OK

AGP create nub for 004210de bus=1 cap=68

AGPGart: publishNub display

 

I'm sending the dmesg outputs zipped.

 

 

@ Common Sense and SliceI'll be standing by, what ever you guys need, let me know.

 

Thanks! I'm also ready to do some testing, just don't know what to test next :P

 

I'm starting to get a feeling that the Leopard problem lies in the ACPI classes and that can spell trouble as there are no sources for them, some user on another forum suggested graphics drivers and if it's in there the problem occurs we are screwed.

 

On the other hand PowerPC works with AGP in Leopard but perhaps the ACPI classes implement something different for PowerPC and Intel? Perhaps its the kernel thats to blame?

 

@ Slice

 

What do you think is the problem if you were to take a guess?

cs_single_user_dmesg.zip

Link to comment
Share on other sites

I've been following this thread with great interest.

If there's anything I can do to help, please let me know.

 

I have full acceleration but my card is recognized as PCI.

 

Performance seems good in the Quake 4 and Tomb Raider Anniversay demos - but at 640x480.

At 1024x768 and above I get massive slowdowns.

 

I'm a little bit scared of using the terminal but if it's for the greater good I think I can do it. :thumbsup_anim:

Link to comment
Share on other sites

This is probably not very important but I noticed differences between IOPCIFamily 2.4.3 and 2.2 on Tiger and 2.4.3 and 2.4 on Leopard.

 

The difference is the same for both Leopard and Tiger so its related to your IOPCIFamily 2.4.3.When booting single user I manage to get some information that is being "pushed out" later in the boot process, here is my find:

 

dmesg:2.4.3 (Both Tiger and Leopard)

 

DEBUG fixing subordinate bus setting on P0P1 device(1, 0) - was 1 now 255

AGP: Found VIA AGP bridge for AMD

AGPBridge buses: pri 0 secBus 1 subBus 255 BridgeDev 0

AGPGart subBus corrected

AGPgart: BridgeMemoryRange [f9f00000, fbffffff]

AGPgart: BridgePrefetchableMemoryRange [f0000000, f8ffffff]

AGPgart: BridgeIORange [0000f000, 00000fff]

AGP: saveBridgeState OK

AGP create nub for 004210de bus=1 cap=68

AGPGart: publishNub display

 

2.2 or 2.4 (2.2 in Tiger and 2.4 in Leopard)

 

AGP: Found VIA AGP bridge for AMD

AGPBridge buses: pri 0 secBus 1 subBus 1 BridgeDev 0

AGPgart: BridgeMemoryRange [f9f00000, fbffffff]

AGPgart: BridgePrefetchableMemoryRange [f0000000, f8ffffff]

AGPgart: BridgeIORange [0000f000, 00000fff]

AGP: saveBridgeState OK

AGP create nub for 004210de bus=1 cap=68

AGPGart: publishNub display

I already corrected back subbus to 1, else AGP don't work. It was main problem why AGPGart 260 doesn't work with my or Chun-Nan IOPCIFamily

I'm sending the dmesg outputs zipped.

Thanks! I'm also ready to do some testing, just don't know what to test next :)

I'm starting to get a feeling that the Leopard problem lies in the ACPI classes and that can spell trouble as there are no sources for them, some user on another forum suggested graphics drivers and if it's in there the problem occurs we are screwed.

On the other hand PowerPC works with AGP in Leopard but perhaps the ACPI classes implement something different for PowerPC and Intel? Perhaps its the kernel thats to blame?

What do you think is the problem if you were to take a guess?

I show you in previous post that hammer (AMD) tracing differ in Tiger and Leo. We have no access to AppleACPIPCI but we can correct the situation inside AGPGart. How? I think it is a task for you: look for AMD documentation about memory controller in AMD64 CPU. I have only Intel CPUs and can't make any experiments.

 

I've been following this thread with great interest.

If there's anything I can do to help, please let me know.

I have full acceleration but my card is recognized as PCI.

Performance seems good in the Quake 4 and Tomb Raider Anniversay demos - but at 640x480.

At 1024x768 and above I get massive slowdowns.

I'm a little bit scared of using the terminal but if it's for the greater good I think I can do it. :(

There is no place for teach a novice. Please read FAQs and the Topic.

If you are successful in pci mode it is interesting to see your tests in AGP mode. So try please AGPGart. If you can work in AGP mode run XBench and GioFX OpenMark. Both are free program.

 

2 toadspit

I found a crash for you. With this version you might be more successful.

 

4 All

These versions contain all corrections that I previously mention and useful traces. Try again!

 

 

NEXT

IOPCIFamily244.kext.zip

Link to comment
Share on other sites

mattiL, what does "works" mean? AGP gart acceleration working? ;) Could you send benchmarks of your system with and without AGPGart installed?
He does not have QE/CI working and therefore he can boot into the GUI.
I've been following this thread with great interest.If there's anything I can do to help, please let me know.I have full acceleration but my card is recognized as PCI.Performance seems good in the Quake 4 and Tomb Raider Anniversay demos - but at 640x480. At 1024x768 and above I get massive slowdowns. I'm a little bit scared of using the terminal but if it's for the greater good I think I can do it. ;)

 

Great to see people interested in AGPGart!

 

do you know how to install kexts? Copying them into extensions directory, repairing permissions, clearing cache and modifying plists?

 

Tell me how advanced you are and I will take it from there!

Link to comment
Share on other sites

Intel 865 chipset here with a PNY nVidia 6600GT 128mb AGP card.

 

Using the two latest kexts for AGPGard and IOPCIFamily I am unable to boot to the desktop UNLESS my aperture in the BIOS is set to 4mb, anything higher and I never see the desktop.

 

When set to 4mb I do get to the desktop but without CI/QE being enabled.

 

If I knew more I would help out... but driver coding is not my forte. :thumbsup_anim:

 

EDIT: I have provided my ioreg dump at least a couple times in the past, if you need or want a fresh copy just let me know and I can post one.

Link to comment
Share on other sites

@ Slice

 

If I would like to write over (50), (5c) and (e4) as written in the trace for agp hammer would the correct way to do this be:

 

pciwrite32(hammer, 0x50,0x00000000);
pciwrite32(hammer, 0x5c,0xfd9be7c0);
pciwrite32(hammer, 0xe4,0x08620020);
  pciwrite32(hammer, PLACE_TO_WRITE_OVER, NEW_VALUE);

If its not then please tell me how to change these values manually so that I can start changing values and see if I can get them to change in the debug output. With these function calls nothing is changing and yes I suspect that i'm doing it wrong :)

Link to comment
Share on other sites

do you know how to install kexts? Copying them into extensions directory, repairing permissions, clearing cache and modifying plists?

 

Thanks CS.

 

From the Finder I'm fine with these things, I know how to use kexthelper and plisteditpro.

 

What I'm worried about is getting stuck at the command prompt and having to weed out things from there if it doesn't reboot successfully.

 

Good thing I'm dual booting with XP so I won't be completely lost.

 

Do you think my results would be of any help though? Everywhere I look I see people saying that AGPGart won't work in Leopard on i865PE chipset.

 

-bk

Link to comment
Share on other sites

mattiL, what does "works" mean? AGP gart acceleration working? :(

Could you send benchmarks of your system with and without AGPGart installed?

 

 

"works" means I can start the laptop, no kernel panic, and that I still can see AGP in System Profiler instead of PCI when running without AGPGart (and CI is in software, is it supposed to be in hardware ? probably).

 

I attach xbench with and without AGPGart, not a big difference in the results, slightly higher with AGPGart.

20080218_xbench.zip

20080219_no_AGPGart.zip

Link to comment
Share on other sites

Thanks CS.

 

From the Finder I'm fine with these things, I know how to use kexthelper and plisteditpro.

 

What I'm worried about is getting stuck at the command prompt and having to weed out things from there if it doesn't reboot successfully.

 

Good thing I'm dual booting with XP so I won't be completely lost.

 

Do you think my results would be of any help though? Everywhere I look I see people saying that AGPGart won't work in Leopard on i865PE chipset.

 

-bk

 

If you can install kexts with kexthelper and edit plists then your almost set! You can install AGPGart and try it since that requires installing the kext and modifying the plist with some options.

 

If it doesn't work for you and you need to uninstall AGPGart you can do the following:

 

Option 1

--------

 

Boot with -s -x -v -f flags

 

type:

cd /System/Library/Extensions

rm -rf AGPGart.kext

rm -f ../Extensions.mkext*

reboot

 

and then boot normal

 

Option 2

--------

 

Boot with -x -v -f flags

 

You will get into Mac OS X as usual but in single user mode (much like windows fail safe mode)

and you can remove AGPGart and Extensions.mkext and possibly files like Extensions.mkext.xcgxcf or similair (located in /System/Library/Extensions) as you would normally do using finder.

reboot

 

and then boot normal

 

if you get a kernel panic and cannot boot into anything in mac os x whatsoever you can easily delete AGPGart.kext and Extensions.mkext from windows using macdrive which allows you to access mac harddrives just like windows harddrives from windows or you can use transmac which also is a easy to use program that lets you manage macintosh drives from windows.

 

So whatever happens with you Mac OS X you can always recover from it pretty easy.

 

Getting familiar with this is a really good start and then really the only thing you need to be able to do more is producing debug output like dmesg and ioreg when you are not able to use the computer normally for instance a black screen in Mac OS X but fully working computer.

 

Give it a shot and see if you can comfortably install AGPGart and remove it if it doesn't work for you. Im getting back to you with information on how to produces those logs when AGPGart is failing, but ofcourse if system is not failing its pretty easy you just type:

 

sudo dmesg > dmesg.txt

sudo ioreg -l -x -w 2048 >ioreg.txt

Link to comment
Share on other sites

wich modification needed to let it work with nVidias IGP?

 

If it already works correctly in pci mode then AGPGart has the potential to make it work, if your motherboard chipset is supported by AGPGart. Currently AGPGart only works for VIA on AMD systems I think but it might work on NVIDIA nforce as well and maybe some ULI chipsets. If it works then it will only work in Tiger as Leopard makes AGPGart incompatible for some strange reason.

Link to comment
Share on other sites

Alright, got MacDrive installed and working on the XP side so I should be all set if anything goes wrong. Thanks for the guide!

 

What about the IOCPIFamily.kext, do I need that? I have version 2.4 on my system.

 

From Slice's initial post it looks like I have to compile and install version 2.4.3

 

Can you show me how to compile IOPCIFamily.kext properly? I tried building from the Project File using XCode 3.0 and got 23 warnings!

Then I looked in the build folder naively expecting to see a shiny new IOPCIFamily.kext, but it looks like it doesn't work that way.

Link to comment
Share on other sites

here is my traces. It doesn't KP anymore on the previous point, but still doesn't work.

In normal mode LCD shut down. In safe mode etc/rc loads, but the monitor is all messed up in cyan, blue and purple colors like in an LSD trip. What there was inside your last version kexts ? :(

It is a new for me. May be you need to try other version of titan-natit, OpenGL.framework, CoreGraphics?

System works.

Did you check here

Look here

$ cd /System/Library/Frameworks/ApplicationServices.framework/Versions\

/A/Frameworks/CoreGraphics.framework/Versions/A/Resources

$ sudo pico Configuration.plist

 

test on both 244 and 264 version

same result crappy xbench on i865 and X1600

:P

Intel 865 chipset here with a PNY nVidia 6600GT 128mb AGP card.

Using the two latest kexts for AGPGard and IOPCIFamily I am unable to boot to the desktop UNLESS my aperture in the BIOS is set to 4mb, anything higher and I never see the desktop.

When set to 4mb I do get to the desktop but without CI/QE being enabled.

EDIT: I have provided my ioreg dump at least a couple times in the past, if you need or want a fresh copy just let me know and I can post one.

Your report is interesting for me as I have the same situation: I can boot only with 4Mb of memory setting with or without AGP. But I have ATI chipset and Radeon9000IGP. What is common for us? What kexts set are you using?

Please upload file from

sudo kextstat >kextsEidola.txt

If I would like to write over (50), (5c) and (e4) as written in the trace for agp hammer would the correct way to do this be:

 

pciwrite32(hammer, 0x50,0x00000000);
pciwrite32(hammer, 0x5c,0xfd9be7c0);
pciwrite32(hammer, 0xe4,0x08620020);
  pciwrite32(hammer, PLACE_TO_WRITE_OVER, NEW_VALUE);

If its not then please tell me how to change these values manually so that I can start changing values and see if I can get them to change in the debug output. With these function calls nothing is changing and yes I suspect that i'm doing it wrong :(

Why you understand me in reverse order again? I say that good values are

(50)=0fc29778 (5c)=fd9be7c0 (e4)=08670020

It may be good writings for Leo

pciwrite32(hammer, 0x5c,pciread32(hammer, 5c) | 0x800);

pciwrite32(hammer, 0xe4,pciread32(hammer, e4) | 0x40000);

I think that (50) is a result, so we don't write it, only read.

Try and report!

 

What about the IOCPIFamily.kext, do I need that? I have version 2.4 on my system.

From Slice's initial post it looks like I have to compile and install version 2.4.3

Can you show me how to compile IOPCIFamily.kext properly? I tried building from the Project File using XCode 3.0 and got 23 warnings!

Then I looked in the build folder naively expecting to see a shiny new IOPCIFamily.kext, but it looks like it doesn't work that way.

Dunno about your warning but I said that the Apple founds a mistake in v2.4 that is base of 2.4.3 and publish sources 130.1 that is slightly differ. These sources are the base of 2.4.4.

What I change?

1. Bus renumbering and resource distribution as in v1.7. It is useful for PCCard, Airport and other external devices. Why Apple exclude these codes? Because of different hardware. For Apples hardware all works good.

Chun-Nan made the same corrections by own method.

2. getNubAddress. The new Apple's method works good only for the case when all hardware is supported. So not for hackintosh. I choose old method and got more working and more faster hackintoshes with two different configurations.

3. I insert some operations for AGP host controller support and want to see any changes from user's reports.

4. With my compilation I explicitly define PIO and choose NO_RENDERVOUZ_KERNEL cause I have 10.4.6. And this kext works fine in 10.4.9. Someone already use it in Leo without crashes...

P.S. I build IOPCIFamily with XCode 2.5 choosing 10.4.x SDK.

Link to comment
Share on other sites

Your report is interesting for me as I have the same situation: I can boot only with 4Mb of memory setting with or without AGP. But I have ATI chipset and Radeon9000IGP. What is common for us? What kexts set are you using?

Please upload file from

sudo kextstat >kextsEidola.txt

 

File is attached, let me know if you need me to do anything else Slice.

 

Also, thank you for all your hard work on this issue, it is appreciated! :)

 

One note, without AGPGart I can boot with any aperture size, however, with AGPGart I can only boot to a visible desktop when set to 4mb. With other sizes the system either boots, but with no screen, or locks up at some point after it should be showing a screen of some sort.

 

-Eidola

 

kextsEidola.txt

Link to comment
Share on other sites

What there was inside your last version kexts ? :)

What does mean your question? You want to look new sources?

Your previous stop was at Radeon registers while you have nVidia. I made more careful check a type of VGA.

Second problem is Aperture address. For you I set manually address from your ioreg. It is not good programming but I want to get a result at any price.

 

One note, without AGPGart I can boot with any aperture size, however, with AGPGart I can only boot to a visible desktop when set to 4mb. With other sizes the system either boots, but with no screen, or locks up at some point after it should be showing a screen of some sort.

Surprisingly!

As I understand you use PC-EFI and no natit. What do you think about some GFX-string concerning memory sizes?

Probably, for i865 chipset AGPGart set incorrect aperture base address or this address is not registered in system. Or this address range has zero size that system correct to minimum value of 4Mb.

One note:

   17   18 0x413e5000 0x10000	0xf000	 com.apple.iokit.IOPCIFamily (2.4.1) <7 6 5 4>

And what about 2.4.4? Is there any difference?

Link to comment
Share on other sites

Dunno about your warning but I said that the Apple founds a mistake in v2.4 that is base of 2.4.3 and publish sources 130.1 that is slightly differ. These sources are the base of 2.4.4.

What I change?

1. Bus renumbering and resource distribution as in v1.7. It is useful for PCCard, Airport and other external devices. Why Apple exclude these codes? Because of different hardware. For Apples hardware all works good.

Chun-Nan made the same corrections by own method.

2. getNubAddress. The new Apple's method works good only for the case when all hardware is supported. So not for hackintosh. I choose old method and got more working and more faster hackintoshes with two different configurations.

3. I insert some operations for AGP host controller support and want to see any changes from user's reports.

4. With my compilation I explicitly define PIO and choose NO_RENDERVOUZ_KERNEL cause I have 10.4.6. And this kext works fine in 10.4.9. Someone already use it in Leo without crashes...

P.S. I build IOPCIFamily with XCode 2.5 choosing 10.4.x SDK.

 

Okay, so it sounds like I really do need this to test your AGPGART for best results.

 

My problem is that I can't figure out how to compile it myself. I just end up with a build folder full of strange things I don't know what to do with.

 

I think I'll leave this topic to you guys because I have no idea what I'm doing. Sorry for wasting your time.

Link to comment
Share on other sites

As I understand you use PC-EFI and no natit. What do you think about some GFX-string concerning memory sizes?

Probably, for i865 chipset AGPGart set incorrect aperture base address or this address is not registered in system. Or this address range has zero size that system correct to minimum value of 4Mb.

One note:

   17   18 0x413e5000 0x10000	0xf000	 com.apple.iokit.IOPCIFamily (2.4.1) <7 6 5 4>

And what about 2.4.4? Is there any difference?

 

Actually, I am using Titan as it is the only one I have seemed able to get a working EDID string to drive my SGI 1600SW properly. I do not use PC-EFI at this time, though I may try it in the future.

 

I tried the 2.4.4 IOPCIFamily and it seemed to behave the same as 2.4.1; the 4mb aperture size allows a boot, without CI/QE, but anything higher fails to boot properly.

 

-Eidola

Link to comment
Share on other sites

Hey, can anyone tell me if these AGPGart drivers will fix my Intel865GME problems? and whether or not it will work in 10.4.8?

 

I coded my own driver, but I still don't have Core Image, OpenGL, or Quartz Extreme support.

 

One site I was one said that my graphics card chipset was Intel 852 (Intel Extreme Graphics)

 

If this works I will be totally amazed.

Link to comment
Share on other sites

There was mention that the AGPGart would support SiS chipsets.

I am running an iATKOS 10.5.1 install that has been updated to 10.5.2 with the update from Apple on a:

Asus P5S-MX SE 1.8 core2duo

SiS 671FX NorthBridge

SiS 968 SouthBridge

SiS Mirage 3 for the graphics

 

I have tried so far with no luck so far, I would love to get QE / CI running if possible.

Any help would be appreciated

Attached is my ioreg output.

 

Thanks

ioregMRmenellis.txt

Link to comment
Share on other sites

 Share

×
×
  • Create New...