Jump to content

New AGPGart


Slice
 Share

941 posts in this topic

Recommended Posts

Tried latest AGPGart and I get a capability OffSet not set error I attached the logs as requested in original post

I see in your dmesg

AGP: Found ATI RS400 AGP bridge
AGP: ERROR! Capability offset not found

It means that your chipset is not AGP. You don't need AGPGart.

Hi, I dont want to sound dumb, i am a noob. But what should i do, and the information you need, how do i acces it?

Type in terminal command from my previous post.

Link to comment
Share on other sites

:)

I continue working.

I need some new information what to do. I can't change anything based on short reports. And I don't see any troubles in ioreg and dmesg. What other information can you give me?

 

Slice, ok I will think about it.

But I don't have so much time for testing in this days, so maybe I will not answer immediately.

In the meanwhile, if you want me to do some specific test just ask.

Link to comment
Share on other sites

Hi Slice,

 

You probably made all that necessory. I propose you to check twice that kexts is loaded and influence on somehow. What about repair permissions?

 

I did repairpermissions, no change.

 

bash-3.2# kextstat | egrep -i 'atir|iondrv'

56 1 0x14fb9000 0xf000 0xe000 com.apple.iokit.IONDRVSupport (1.4.3) <55 17 7 6 5 4>

72 0 0x15683000 0x53000 0x52000 com.apple.ATIRadeon9700 (5.1.8) <56 55 17 12 4 2>

 

All I get is a crashing VLC when the video comes up.

 

Perhaps you can have a look at my ioreg output as a final try? I really don't want to give up |-)

 

Thank you! :)

 

Cheers, N.M.

Link to comment
Share on other sites

Hi here is my card detail, may this will help

 

Intel® Graphics Media Accelerator Driver for Mobile Report

 

 

Report Date: 04/13/2008

Report Time[hr:mm:ss]: 15:16:43

Driver Version: 6.14.10.4831

Operating System: Windows XP* Professional, Service Pack 2 (5.1.2600)

Default Language: English

DirectX* Version: 9.0

Physical Memory: 2037 MB

Minimum Graphics Memory: 8 MB

Maximum Graphics Memory: 384 MB

Graphics Memory in Use: 13 MB

Processor: x86 family 6 Model 15 Stepping 13

Processor Speed: 1795 MHZ

Vendor ID: 8086

Device ID: 2A02

Device Revision: 0C

 

 

* Accelerator Information *

 

Accelerator in Use: Mobile Intel® 965 Express Chipset Family

Video BIOS: 1466

Current Graphics Mode: 1680 by 1050 True Color (60 Hz)

 

 

 

* Devices Connected to the Graphics Accelerator *

 

 

Active Notebook Displays: 1

 

 

* Notebook *

 

Monitor Name: Plug and Play Monitor

Display Type: Digital

Gamma Value: 2.20

DDC2 Protocol: Supported

Maximum Image Size: Horizontal: Not Available

Vertical: Not Available

Monitor Supported Modes:

1680 by 1050 (60 Hz)

Display Power Management Support:

Standby Mode: Not Supported

Suspend Mode: Not Supported

Active Off Mode: Not Supported

 

 

* SDVO Encoder Report *

 

** Encoder 1 **

Vendor ID: Silicon Image

Device ID: 170

Device Revision: 3

Major Version: 1

Minor Version: 1

 

* Other names and brands are the property of their respective owners.

Link to comment
Share on other sites

Slice, ok I will think about it.

But I don't have so much time for testing in this days, so maybe I will not answer immediately.

In the meanwhile, if you want me to do some specific test just ask.

I confirm your result:(remember our difference - same chipset but Radeon nVidia)

with 265b2 I have hardware OpenGL :) with breaking :(

with 265f I have only software OpenGL :( but fast Quatrz graphic. :)

The difference is

		OUTREG(ATI_GART_CACHE_CNTRL, 1); //ENTRY_
	for (int i = 0; i < 20000; i++)
	{
		temp = INREG(ATI_GART_CACHE_CNTRL) & 1;
		if(temp == 0) break;
	}
//		OUTREG(ATI_GART_CACHE_CNTRL, 0);

265b2 CACHE_CNTRL=1

265f CACHE_CNTRL=0

There is one more possible setting

CACHE_ENTRY_CNTRL

but I have no example how to use it. F..g Linux don't use it!

It seems to be needed.

Can you advice me something?

 

Hi Slice,

I did repairpermissions, no change.

 

bash-3.2# kextstat | egrep -i 'atir|iondrv'

56 1 0x14fb9000 0xf000 0xe000 com.apple.iokit.IONDRVSupport (1.4.3)

72 0 0x15683000 0x53000 0x52000 com.apple.ATIRadeon9700 (5.1.8)

 

All I get is a crashing VLC when the video comes up.

 

Perhaps you can have a look at my ioreg output as a final try? I really don't want to give up |-)

I checked your ioreg.

Your chipset

AGPBridge = 2532

HostBridge = 2530

VGA card = 4a49

All of them is supported by AGPGart and ATIRadeon9700.

But I don't see AGPGart is loaded! Why?

Try to type in terminal

sudo -s

kextload -v AGPGart.kext

tail -n 30 /var/log/system.log

analyze what is the problem.

 

2 Araikus

I don't see your graphic is AGP.

AFAIK 965 chipset is PCIE.

 

2 Mihait39

If you are right it would be revelation.

Link to comment
Share on other sites

nope...no work

what would it be to use quartz debugger to enable quartz with agpgart and aperture size >= 256mb.would this combination crash the computer?

If you are interesting I can show my investigations. Driver ATIRadeon9700 (as well as 8500 and X1000):

		shr	eax, 0Ah   // aperture size obtained from AGPDevice
	mov	[esi+834h], eax
	sub	eax, 8000h
	cmp	eax, (offset loc_17FFC+4)  // 18000h
	jbe	loc_4D29

loc_4BAA:			; CODE XREF: __ZN20IOATIR300Accelerator12configureAGPEP9IOService+17Cj
			; __ZN20IOATIR300Accelerator12configureAGPEP9IOService+25Cj
	xor	eax, eax  //not successful
	add	esp, 30h
	pop	ebx
	pop	esi
	pop	ebp
	retn

So aperture_size/2^10 must be [8000h..20000h]. =>

Aperture_size = [2000000..8000000]=[32Mb..128Mb]

It is ATI driver restriction for configureAGP.

Dunno about nVidia but I think the same.

Link to comment
Share on other sites

Hi Slice,

 

I checked your ioreg.

Your chipset

AGPBridge = 2532

HostBridge = 2530

VGA card = 4a49

All of them is supported by AGPGart and ATIRadeon9700.

But I don't see AGPGart is loaded! Why?

Try to type in terminal

sudo -s

kextload -v AGPGart.kext

tail -n 30 /var/log/system.log

analyze what is the problem.

 

OOPS! Did I make a BIG mistake with AGPGart there? ("AGPGart, ah, do I need to load this?" ;-)

 

So I downloaded your AGPGart 2.6.5f, installed it in /System/Library/Extensions/

 

When I boot, it hangs..

 

Last things I see are i.e.:

 

AGP: Found Intel 82860 host to AGPBridge

AGP: SaveBridgeState OK

AGP: Create nub for 4a491002 bus=1 cap=88

AGPart: publishnub display

AGP: Coherence support: no

AGP: Gart is 32 bit capaple

AGP: Found an AGP 2.0 compliant device.

AGPINTEL: Aperture [F0000000, 08000000]

^

|

<here it hangs, and all the boot output (-v) stays in front of me, nothing more happens>

 

So I read through some older posts (i.e. 138, 343) and tried changing AGP_Mode.. no change

 

When I boot without AGPGart, and then load it manually:

 

bash-3.2# kextload -v AGPGart.kext

kextload: extension AGPGart.kext appears to be loadable

kextload: loading extension AGPGart.kext

kextload: AGPGart.kext loaded successfully

kextload: sending personalities to kernel:

kextload: from extension /System/Library/Extensions/IOPCIFamily.kext:

kextload: IOPCI2PCIBridge-Name

kextload: IOPCI2PCIBridge-i386

kextload: IOPCI2PCIBridge-PCI

kextload: from extension /System/Library/Extensions/AGPGart.kext:

kextload: AGPGart

kextload: sending 4 personalities to the kernel

kextload: matching started for AGPGart.kext

 

No ouput from <bash-3.2# tail -f /var/log/system.log> when doing the above!

 

bash-3.2# kextstat | grep -i AGP

85 0 0x16285000 0x9000 0x8000 com.slice.driver.AGPGart (2.6.5) <17 12>

 

AND after a while the AGPGart driver is no longer there/loaded:

 

bash-3.2# kextstat | grep -i AGP

bash-3.2#

 

So it crashes also after loading manually?

 

But even after this I still don't see any output from tail -f system.log

 

Feeling like getting close now! :-) What else can I try? Should I try and make some more adjustments to Info.plist, which ones please?

 

Once more: many many thanks for your help! :P

 

Cheers,

 

N.M.

Link to comment
Share on other sites

2 Never Mind

First time you boot up to

AGPINTEL: Aperture [F0000000, 08000000]

So AGPGart is loaded successfully. Then it hangs...

May be two reason

1. Bad AGP_Mode because you have AGP 2.0. I see other users have problem with 2.0. Some differencies with 3.0 that I miss. ( I know only 3.0 but driver for 2.0 was written before me).

2. Bad AGP_Base. You use F0000000 = 4 026 531 840 decimal. You may try 0 or 0xe0000000 or 0xf8000000 or 0xe8000000.

Manual kextload show you that all is OK but place for AGPGart is busy by IOPCI2PCIBridge.

 

You can try to boot with AGPGart but without ATIRadeon9700GA.plugin. It is not good practice but you can get new information.

 

2 RenKastle

Don't know about embedded Intel graphics. I think you need no AGPGart while for my RadeonIGP I use it. May be other developer can adjust AGPGart to IntelIGP but not me.

Link to comment
Share on other sites

So aperture_size/2^10 must be [8000h..20000h]. =>Aperture_size = [2000000..8000000]=[32Mb..128Mb]It is ATI driver restriction for configureAGP. Dunno about nVidia but I think the same.

hmmm...so no quartz for aperture >128 :(could you mod the ati driver to use a higher aperture?i would like to provide more help in this project but I'm very busy with school ;). i can only test new drivers when i have some time.

OFFTOPIC:the site is working really slow for me.is this only me who have this problem or * ?

Link to comment
Share on other sites

Hiya Slice,

 

2 Never Mind

First time you boot up to

 

So AGPGart is loaded successfully. Then it hangs...

May be two reason

1. Bad AGP_Mode because you have AGP 2.0. I see other users have problem with 2.0. Some differencies with 3.0 that I miss. ( I know only 3.0 but driver for 2.0 was written before me).

2. Bad AGP_Base. You use F0000000 = 4 026 531 840 decimal. You may try 0 or 0xe0000000 or 0xf8000000 or 0xe8000000.

Manual kextload show you that all is OK but place for AGPGart is busy by IOPCI2PCIBridge.

 

You can try to boot with AGPGart but without ATIRadeon9700GA.plugin. It is not good practice but you can get new information.

 

Okay, I removed the ATIRadeo9700GA.plugin for test, added 0xe8000000 in the AGPGart.kext->Info.plist and then it booted, dmesg says now:

 

AGP: Found Intel 82860 host to AGP bridge

AGP: saveBridgeState OK

AGP create nub for 4a491002 bus=1 cap=88

AGPGart: publishNub display

display: family specific matching failsdisplay: family specific matching fails

display: family specific matching fails

AGP: Coherence support: no

AGP: GART is 32 bit capable

AGP: Found an AGP 2.0 compliant device.

AGPINTEL: aperture [e8000000, 08000000]

AGPINTEL trace PCI space

(00)=25308086 (04)=20900106 (08)=06000004 (0c)=00000000

(10)=e8000008 (14)=00000000 (18)=00000000 (1c)=00000000

(20)=00000000 (24)=00000000 (28)=00000000 (2c)=010c1028

AGP: Device is in legacy mode, setting 04 data rate

AGP memory 16d5b000 length 00001000 offset 00000000 cnt 00000000

AGP memory 16d5b000 length 00001000 offset 00001000 cnt 00000001

AGP memory 16d5b000 length 00001000 offset 00002000 cnt 00000002

display: Not usable

display: vram [f0000000:08000000]

 

bash-3.2# kextstat | egrep -i 'atir|iond|agpg'

37 0 0x15401000 0x9000 0x8000 com.slice.driver.AGPGart (2.6.5) <17 12>

57 1 0x15035000 0xf000 0xe000 com.apple.iokit.IONDRVSupport (1.4.3) <56 17 7 6 5 4>

70 0 0x15477000 0x53000 0x52000 com.apple.ATIRadeon9700 (5.1.8) <57 56 17 12 4 2>

 

They seem to keep running. When I now play divx files, they don't look green and purple anymore, and it might be my imagination, but doing windows stuff seems a bit faster now, so those are improvements already :)

 

For DVD, still the same. When I play DVD, macDVDplayer, VLC: when the video comes up it crashes.

 

Is the above information enough? Let me know what more info I can provide if needed.

 

Thank you!

 

Regards,

 

N.M

Link to comment
Share on other sites

2 Never Mind

look

display: vram [f0000000:08000000]

It mean address for flat framebuffer=0xf0000000 so why your previous attempt with AGP_Base=0xf0000000 is failed. They must be different addresses! For you the best is 0xe8000000?!

May be better 0xf8000000?

Now you can try again with GA.plugin.

 

About DVD playback. It is my headache.

Look here

http://forum.insanelymac.com/index.php?sho...;hl=DVDplayback

Link to comment
Share on other sites

I confirm your result:(remember our difference - same chipset but Radeon <-> nVidia)

with 265b2 I have hardware OpenGL :) with breaking ;)

with 265f I have only software OpenGL :P but fast Quatrz graphic. :)

The difference is

		OUTREG(ATI_GART_CACHE_CNTRL, 1); //ENTRY_
	for (int i = 0; i < 20000; i++)
	{
		temp = INREG(ATI_GART_CACHE_CNTRL) & 1;
		if(temp == 0) break;
	}
//		OUTREG(ATI_GART_CACHE_CNTRL, 0);

265b2 CACHE_CNTRL=1

265f CACHE_CNTRL=0

There is one more possible setting

CACHE_ENTRY_CNTRL

but I have no example how to use it. F..g Linux don't use it!

It seems to be needed.

Can you advice me something?

 

Slice, I have no blind idea how to set them!!

My proposal: you could build a kext where we can modify these value in Info.plist, and I could "try and guess"..

Link to comment
Share on other sites

OK!

I made version 266 with new custom value FlushTimeout. It is useful only for ATI chipset. For other no changes.

Strange but this version works as 265b2 i.e. with hardwareOpenGL (with all my problems of RadeonIGP).

 

New version of IONDRVSupport.kext. It works even in Tiger 10.4.6 but contains new features and corrections from latest version.

If you type in terminal

tail -n 50 /var/log/system.log | grep IONDRV

you may see tracing from the kext

IONDRV: ATIM baseAddr=d0000000 rowBytes=00001000 Width=00000400 height=00000300 depth=00000020

Dunno what else I need.

Picture_3.png

Link to comment
Share on other sites

Hiya,

 

2 Never Mind

look

 

It mean address for flat framebuffer=0xf0000000 so why your previous attempt with AGP_Base=0xf0000000 is failed. They must be different addresses! For you the best is 0xe8000000?!

May be better 0xf8000000?

Now you can try again with GA.plugin.

 

About DVD playback. It is my headache.

Look here

http://forum.insanelymac.com/index.php?sho...;hl=DVDplayback

 

Here are the results:

 

Without the ATIRadeon9700GA.plugin:

 

AGP_Base=0xf8000000 --> boot's up till the desktop, but then everything becomes really slow (windows, dock), which is basically unworkable. 100% cpu usage?

AGP_Base=0xe8000000 --> boot's up till the desktop, and then it seems to go fine, but Quartz Extreme: Not Supported

 

With the plugin:

 

Both AGP_Base=0xf8000000 and AGP_Base=0xe8000000 makes the pc crash before login screen comes up, sometimes I can see the mouse appearing above the startup/verbose/-v text...

 

So with the plugin there, still no luck |-)

 

I'm lost now |-)

 

Any more ideas? |-)

 

Cheers, N.M.

Link to comment
Share on other sites

OK!

I made version 266 with new custom value FlushTimeout. It is useful only for ATI chipset. For other no changes.

Strange but this version works as 265b2 i.e. with hardwareOpenGL (with all my problems of RadeonIGP).

 

New version of IONDRVSupport.kext. It works even in Tiger 10.4.6 but contains new features and corrections from latest version.

If you type in terminal

tail -n 50 /var/log/system.log | grep IONDRV

you may see tracing from the kext

 

Dunno what else I need.

 

 

Slice: I confirm your results (blue or black screen freeze with 64mb, 128mb, 256mb aperture, as 265b2, GUI with 32mb but no opengl). No traces in system.log with your new IONDRVSupport.

Reports in attachment, as usual!

 

Is FlushTimeout related to CACHE_ENTRY_CNTRL register??

Reports.zip

Link to comment
Share on other sites

Without the ATIRadeon9700GA.plugin:

 

AGP_Base=0xf8000000 --> boot's up till the desktop, but then everything becomes really slow (windows, dock), which is basically unworkable. 100% cpu usage?

AGP_Base=0xe8000000 --> boot's up till the desktop, and then it seems to go fine, but Quartz Extreme: Not Supported

It is very important if you confirm that different addresses give you different speed!

 

Slice: I confirm your results (blue or black screen freeze with 64mb, 128mb, 256mb aperture, as 265b2, GUI with 32mb but no opengl). No traces in system.log with your new IONDRVSupport.

Reports in attachment, as usual!

 

Is FlushTimeout related to CACHE_ENTRY_CNTRL register??

Another shocking news. How can you have the same result with nVidia as I have Radeon? :ninja:

How do you change aperture? In my BIOS there is only shared memory size!

About 32Mb look updated topic.

 

FlushTimeout is for CACHE_CNTL. I still don't know what to do with CACHE_ENTRY_CNTL.

Here is my latest sources. You can compare with previous to find what is the difference.

Link to comment
Share on other sites

How do you change aperture? In my BIOS there is only shared memory size!

 

In my BIOS I can set "AGP Aperture Size" to 32, 64, 128, 256 or Auto.

Without additive AGP video card (using infamous Radeon IGP9100 integrated chip!) that setting sets also shared memory amount.

Link to comment
Share on other sites

Hi Slice!

 

Happy happy joy joy, I just installed Callisto, and now I am on 1600x1200x32@85, which is great (for my eyes)!! :-)

 

It is very important if you confirm that different addresses give you different speed!

 

I am not sure what you mean?! 0xe8000000 seems the best for me, but without the GA.plugin loaded! Because during boot I get the crash when I load the GA.plugin.

 

I guess without the GA.plugin there will be no Quartz Extreme?

 

It would be so nice to have QE! :(

 

<update>

 

I just found out that when I put (back):

 

<key>IOProviderClass</key>

<string>IONDRVFramebuffer</string>

 

in ATIRadeon9700GA.plugin, then I get to the desktop normally, AGPGart.kext, ATIRadeon9700.kext, IONDRVSupport.kext all 3 loaded, but no QE either :P

 

But, when I put IOFramebuffer or CallistoFB in ATIRadeon9700GA.plugin, then it crashes at boottime!

 

So this has something to do with the framebuffer?

 

</update>

 

Any further thoughts on this?

 

Cheers,

 

N.M.

 

<edit2>

p.s. I am seeing now some of your other treads Slice, and that you're working on some new projects, one of which is framebuffer thingy. Wonder If I can do some testing there |-) At least I've Callisto working in Leopard 10.5.1. I'm still a n00b in all this though, know nothing |-)

</edit>

Link to comment
Share on other sites

2 Never Mind

You always welcomed as my tester.

 

2 PHICO

As I perviously said with aperture 256Mb you can't have QE supported. Decrease it to 128Mb.

Report from linux

Linux agpgart interface v0.99 © Jeff Hartmann

agpgart: Maximum main memory to use for agp memory: 440M

agpgart: Detected Apple UniNorth 1.5 chipset

agp: configuring for size idx: 4

agpgart: AGP aperture is 16M @ 0x0

While 440Mb available it uses aperture 16Mb!

As I know good aperture in MacOSX must be 32, 64 or 128Mb.

 

2 all

I'll be absent up to 21.04.2008.

Link to comment
Share on other sites

 Share

×
×
  • Create New...