Jump to content

New AGPGart


Slice
 Share

941 posts in this topic

Recommended Posts

i have here the 2 files maybe someone could helpl me, there are many with this type of card

ATIRadeon 1100 deviceID=5975 is not supported. Needs investigations.

 

Slice, i finally manage to load the AGPGart.kext at system start, there is the results: (ASUS K8N, AMD Sempron3000, NVidia Quadro FX4000, QE and CI supported)

Leo+AMD+nVidia AGP = old problem, still unresolved

 

More general question:

1. If you look at my specification - which AGPGart kext to use?

2. Should I stay with NVinject or should I move to something else?

1. Try any.

2. I see no differencies. It is injector only.

 

Somewhere at the forum I saw that nVidia 5xxx is not supported in Leo.

Link to comment
Share on other sites

Here is my config:

http://www.ganeadaniel.ro/Report.htm

Can you please investigate there are a lot of users that have this type of card

i test the kext if you modify.

 

Daniel

 

ATIRadeon 1100 deviceID=5975 is not supported. Needs investigations.

 

 

Leo+AMD+nVidia AGP = old problem, still unresolved

 

 

1. Try any.

2. I see no differencies. It is injector only.

 

Somewhere at the forum I saw that nVidia 5xxx is not supported in Leo.

Link to comment
Share on other sites

Here is my config:

http://www.ganeadaniel.ro/Report.htm

Can you please investigate there are a lot of users that have this type of card

i test the kext if you modify.

 

Daniel

It needs work as correct-check-correct-check-correct-check... every 2 minutes. I have no such card so this work is impossible at my site. Needs developer with such card.

Link to comment
Share on other sites

to Slice,

Thank you for your effort! i've successfully installed leo 10.5.2 without a graphics driver, my video card is ati HD 2400 pro AGP. What ever version AGPGart i used, the screen will stop at

"AppleVIAATADriver: VIA 8237 (CMD 0x1f0, CTR 0x3f4, IRQ 14, BM 0xfc00)

AGP create nub for 94c41002 bus=1 cap=88

AGPGart: publishNub display" even with -x -v -s the same result!

could you please help me out?

 

Thanks a lot

Link to comment
Share on other sites

  • 2 weeks later...
Slice, i finally manage to load the AGPGart.kext at system start, there is the results: (ASUS K8N, AMD Sempron3000, NVidia Quadro FX4000, QE and CI supported) Logs: Archive.zip

 

Jan 26 13:55:46 localhost kernel[0]: AGP: Found NVIDIA nForce3-250 AGP Controller
Jan 26 13:55:46 localhost kernel[0]: AGP: saveBridgeState OK
Jan 26 13:55:46 localhost kernel[0]: AGP create nub for 004e10de bus=1 cap=68
Jan 26 13:55:46 localhost kernel[0]: AGPGart: publishNub display
...
Jan 26 13:55:49 localhost kernel[0]: NVinject: Probing.
Jan 26 13:55:49 localhost kernel[0]: NVinject: Setting NVPM=<data not shown>
Jan 26 13:55:49 localhost kernel[0]: NVinject: Setting NVCAP=<data not shown>
Jan 26 13:55:49 localhost kernel[0]: NVinject: Setting rom-revision=NVinject 0.2.0
Jan 26 13:55:49 localhost kernel[0]: NVinject: Setting @0,compatible=NVDA,NVMac
Jan 26 13:55:49 localhost kernel[0]: NVinject: Setting IOName=display
Jan 26 13:55:49 localhost kernel[0]: NVinject: Setting @1,name=NVDA,Display-B
Jan 26 13:55:49 localhost kernel[0]: NVinject: Setting @2,#adress-cells=<data not shown>
Jan 26 13:55:49 localhost kernel[0]: NVinject: Setting @2,hwsensor-params-version=<data not shown>
Jan 26 13:55:49 localhost kernel[0]: NVinject: Setting @0,name=NVDA,Display-A
Jan 26 13:55:49 localhost kernel[0]: NVinject: Setting @1,compatible=NVDA,NVMac
Jan 26 13:55:49 localhost kernel[0]: NVinject: Setting @2,#size-cells=<data not shown>
Jan 26 13:55:49 localhost kernel[0]: NVinject: Setting @2,compatible=NVDA,sensor-parent
Jan 26 13:55:49 localhost kernel[0]: NVinject: Setting @2,device_type=NVDA,gpu-diode
Jan 26 13:55:49 localhost kernel[0]: NVinject: Setting @2,reg=<data not shown>
Jan 26 13:55:49 localhost kernel[0]: NVinject: Setting @1,device_type=display
Jan 26 13:55:49 localhost kernel[0]: NVinject: Setting model=Graphics by NVIDIA
Jan 26 13:55:49 localhost kernel[0]: NVinject: Setting @0,device_type=display
Jan 26 13:55:49 localhost kernel[0]: NVinject: Setting name=NVDA,Parent
Jan 26 13:55:49 localhost kernel[0]: NVinject: Setting device_type=NVDA,GeForce
Jan 26 13:55:49 localhost kernel[0]: NVinject: Setting @2,hwctrl-params-version=<data not shown>
Jan 26 13:55:49 localhost kernel[0]: NVinject: Setting @2,name=sensor-parent
Jan 26 13:55:49 localhost kernel[0]: Matching service count = 0
Jan 26 13:55:50 localhost kernel[0]: AGP: Coherence support: no
Jan 26 13:55:50 localhost kernel[0]: AGP: GART is 32 bit capable
Jan 26 13:55:50 localhost kernel[0]: AGP: Found an AGP 3.0 compliant device.
Jan 26 13:55:50 localhost kernel[0]: AGPAMD: 1 hammers found
Jan 26 13:55:50 localhost kernel[0]: AGPAMD apbase=f0000000
Jan 26 13:55:50 localhost kernel[0]: AGPAMD: aperture [f0000000, 08000000]
Jan 26 13:55:50 localhost kernel[0]: AGPAMD trace hammer PCI space
Jan 26 13:55:50 localhost kernel[0]: (00)=11031022   (04)=00000000   (08)=06000000   (0c)=00800000   
Jan 26 13:55:50 localhost kernel[0]: (10)=00000000   (14)=00000000   (18)=00000000   (1c)=00000000   
Jan 26 13:55:50 localhost kernel[0]: (20)=00000000   (24)=00000000   (28)=00000000   (2c)=00000000   
Jan 26 13:55:50 localhost kernel[0]: (30)=00000000   (34)=00000000   (38)=00000000   (3c)=00000000   
Jan 26 13:55:50 localhost kernel[0]: (40)=00003bff   (44)=00400040   (48)=00000000   (4c)=00000000   
Jan 26 13:55:50 localhost kernel[0]: (50)=00000000   (54)=00000000   (58)=00000000   (5c)=7fffb540   
Jan 26 13:55:50 localhost kernel[0]: (60)=000000fe   (64)=00000000   (68)=00000000   (6c)=00000000   
Jan 26 13:55:50 localhost kernel[0]: (70)=51020111   (74)=50008011   (78)=08003800   (7c)=0000221b   
Jan 26 13:55:50 localhost kernel[0]: (80)=23070000   (84)=20132113   (88)=00000000   (8c)=00000000   
Jan 26 13:55:50 localhost kernel[0]: (90)=00000005   (94)=00000078   (98)=00032b70   (9c)=00000000   
Jan 26 13:55:50 localhost kernel[0]: (a0)=00000000   (a4)=00000000   (a8)=00000000   (ac)=00000000   
Jan 26 13:55:50 localhost kernel[0]: (b0)=00000000   (b4)=00000000   (b8)=0000003f   (bc)=00000000   
Jan 26 13:55:50 localhost kernel[0]: (c0)=00000000   (c4)=00000000   (c8)=00000000   (cc)=00000000   
Jan 26 13:55:50 localhost kernel[0]: (d0)=00000000   (d4)=04e20707   (d8)=00400000   (dc)=00000000   
Jan 26 13:55:50 localhost kernel[0]: (e0)=00000000   (e4)=145a0120   (e8)=00000508   (ec)=00000000   
Jan 26 13:55:50 localhost kernel[0]: (f0)=00000000   (f4)=00000000   (f8)=00000000   (fc)=00000000   
Jan 26 13:55:50 localhost kernel[0]: AGPAMD trace host PCI space
Jan 26 13:55:50 localhost kernel[0]: (00)=00e110de   (04)=00b00106   (08)=060000a1   (0c)=00000000   
Jan 26 13:55:50 localhost kernel[0]: (10)=f0000008   (14)=00000000   (18)=00000000   (1c)=00000000   
Jan 26 13:55:50 localhost kernel[0]: (20)=00000000   (24)=00000000   (28)=00000000   (2c)=813f1043   
Jan 26 13:55:50 localhost kernel[0]: AGP: Setting 08 data rate
Jan 26 13:55:50 localhost kernel[0]: AGP: command written target=00000312 master=1f00e312
Jan 26 13:55:50 localhost kernel[0]: AGP memory 058ba000 length 00001000 offset 00000000 cnt 00000000
Jan 26 13:55:50 localhost kernel[0]: AGP memory 058ba000 length 00001000 offset 00001000 cnt 00000001
Jan 26 13:55:50 localhost kernel[0]: AGP memory 058ba000 length 00001000 offset 00002000 cnt 00000002

 

and

 

Jan 26 14:37:05 miqlass-mac-pro kernel[0]: NVDA(OpenGL): Channel exception!  status = 0xffff info32 = 0x6 = Fifo: Parse Error
Jan 26 14:37:05 miqlass-mac-pro kernel[0]: 0000000b
Jan 26 14:37:06 miqlass-mac-pro kextd[10]: writing kernel link data to /var/run/mach.sym
Jan 26 14:37:07 miqlass-mac-pro kernel[0]: NVDA(OpenGL): Channel exception!  status = 0xffff info32 = 0x6 = Fifo: Parse Error
Jan 26 14:37:07 miqlass-mac-pro kernel[0]: 0000000b
Jan 26 14:37:08 miqlass-mac-pro kernel[0]: NVDA(OpenGL): Channel exception!  status = 0xffff info32 = 0x6 = Fifo: Parse Error
Jan 26 14:37:08 miqlass-mac-pro kernel[0]: 0000000b
Jan 26 14:37:08 miqlass-mac-pro kernel[0]: NVDA(OpenGL): Channel exception!  status = 0xffff info32 = 0x6 = Fifo: Parse Error
Jan 26 14:37:08 miqlass-mac-pro kernel[0]: 0000000b
Jan 26 14:37:08 miqlass-mac-pro kernel[0]: NVDA(OpenGL): Channel exception!  status = 0xffff info32 = 0x6 = Fifo: Parse Error
Jan 26 14:37:08 miqlass-mac-pro kernel[0]: 0000000b

 

I tested with these AGP_Base values:

 

0 : black window with 2 mouse cursor.
0xf0000000 : black window with 2 mouse cursor.
0x08000000 : black window with 2 mouse cursor.
0x10000000 : black window with 2 mouse cursor.
0xd8000000 : black window with 1 mouse cursor.
0xe8000000 : black window with 2 mouse cursor.
0xf8000000 : black window with 2 mouse cursor.
aperture_size : nothing, the kext not loaded. (AGPGart 2.67)
Video_RAM_size : nothing, the kext not loaded. (AGPGart (2.67)

 

Any ideas?

Thanks!

miqlas

 

 

I get exactly the same thing...

 

My card is 7800gs 256mb...

 

HELP!!!!

 

similar system to yours... GA-K8N Pro with Athlon 64 3200+...

 

If anyone knows the solution to my problem, please HELP!!!

Link to comment
Share on other sites

To Slice:

 

In the meantime my NVidia FX5700LE Agp died.

I bought ASUS AH 3650 AGP 8x 512MB DDR2 Silent, which shows as Vendor 0x1002 (ATI) and Device Id as 0x9596 (ATI Radeon HD 3650).

I saw at Other topic that Mohammadkoush had success with HD 3850 AGP.

I think that both of these cards uses the same graphic chip so the X2000xx drivers could be used in both cases.

This is more or less clear to me. The only thing is to check info.plists.

Now:

I heard that NONE of the Injectors supports 10.5.5 kexts. Is this really true?

In this case I need to back-up the kexts from 10.5.2 and reapply them after combo update?

 

(I tried the PKG Installer from lastExile .

Result: Sandbox init error, and no boot, neither in safe mode...

Link to comment
Share on other sites

Now it supports Intel, nForce, VIA, SIS and ATI chipsets. (nForce and SIS only for AMD CPU)

 

Does AGPGart 2.7.1 support VIA with AMD cpu? I have an eMachines m6811 laptop with an ATI 9600 mobility that I am trying to get working. Everything is running great except for the video.

-Cruce

Link to comment
Share on other sites

Hello Slice.

 

I need your information about which AGPGart to use:

MB: Foxconn P4M800 - Chipset VIA P4M800 Pro + 8237R Plus

CPU: Intel Celeron 3.06 Prescott SSE3

GR: Asus AH3650 AGP 8x Silent (Shows as 3600 series with ID as ATI Radeon HD 3650 - 0x9596)

 

Do I need to change IOPCIFamily.kext also and with which version - Currently running at 10.5.5?

 

Thanks in advance.

Link to comment
Share on other sites

To Slice:

 

In the meantime my NVidia FX5700LE Agp died.

I bought ASUS AH 3650 AGP 8x 512MB DDR2 Silent, which shows as Vendor 0x1002 (ATI) and Device Id as 0x9596 (ATI Radeon HD 3650).

I saw at Other topic that Mohammadkoush had success with HD 3850 AGP.

I think that both of these cards uses the same graphic chip so the X2000xx drivers could be used in both cases.

This is more or less clear to me. The only thing is to check info.plists.

Now:

I heard that NONE of the Injectors supports 10.5.5 kexts. Is this really true?

In this case I need to back-up the kexts from 10.5.2 and reapply them after combo update?

I think it is not true. New kexts must works too.

 

Does AGPGart 2.7.1 support VIA with AMD cpu? I have an eMachines m6811 laptop with an ATI 9600 mobility that I am trying to get working. Everything is running great except for the video.

-Cruce

Yes, APGGart is supporting VIA for AMD. But ATI 9600 mobility may works only in Tiger.

 

 

Do I need to change IOPCIFamily.kext also and with which version - Currently running at 10.5.5?

Not need but useful. You may use version 2.4.4.

Link to comment
Share on other sites

  • 2 weeks later...

Hello, Slice!

 

I'm trying to get AGPGart to work on this ASRock motherboard, the 939Dual-SATA2. So far, I've learned from this thread that my motherboard is tricky because of the double northbridge. See this picture for a gob of nice info about this mobo.

 

When I tried your IOPCIFamily 2.5.2, I could no longer access my IDE controller and thus cannot boot, probably due to bridging issues. Downgraded back to 2.4.4.

 

I tried AGPGart271 next. This gave me "ERROR: Capability offset not found", so I had to change AGPGart.cpp:200 to try device numbers above 0, since the AGP northbridge is on device 4. Currently, I am stuck in AGPAMD64::Configure (amd64.cpp:332) because it tells me "AGPAMD: hammers not found". I'm about to try again with a trace statement, to see if I am getting 0xFFFF for the hammer's dev/ven ID, which means that it's being accessed through the wrong bridge. I'm not sure what to do to get it on the right bridge, though.

 

Any help would be appreciated! I'll attach an ioreg once I've rebooted with the kext in place.

 

I'll attach an ioreg once I've rebooted with the kext in place.

 

Here's the files, sir. And yes, I'm getting 0xFFFF returned from pciread32(hammer, 0) (amd64.cpp:347). I'm not sure what to do next, but I'll keep researching.

ioreg.txt.zip

Link to comment
Share on other sites

Yes, strange configuration. If you can you must write into sources your devices

1. Your Host controller with AGP capabilities

	| |   +-o pci10b9,1689@4  <class IOPCIDevice, registered, matched, active, busy 0, retain 6>
| |	   {
| |		 "IOPCIResourced" = Yes
| |		 "IOName" = "pci10b9,1689"
| |		 "IODeviceMemory" = (({"address"=0xffffffffdc000000,"length"=0x4000000}))
| |		 "class-code" = <00000600>
| |		 "IOPowerManagement" = {"CurrentPowerState"=0x2}
| |		 "revision-id" = <00000000>
| |		 "assigned-addresses" = <1020004200000000000000dc0000000000000004>
| |		 "device-id" = <89160000>
| |		 "vendor-id" = <b9100000>
| |		 "name" = "pci10b9,1689"
| |		 "IOAGPFlags" = 0x1
| |		 "AGP_Target" = <>
| |		 "reg" = <0020000000000000000000000000000000000000>
| |		 "compatible" = <706369313062392c3136383900706369636c6173732c30363030303000>
| |	   }
| |

So 1689 - Host space.

For AGPB space deviceID=5246 that present in sources. OK.

Next

	IOPCIAddressSpace 	hammer = hostSpace;
hammer.s.functionNum = 3;
hammer.s.deviceNum = 24;

This is OK for you too.

But

AGPAMD64::AGPAMD64(IOService *provider)
{
//Accessor for configRead and configWrite 
bridge = (IOPCIDevice *)provider;

//PCI Space of the host bridge
AGPBSpace = bridge->space;
hostSpace = AGPBSpace;
hostSpace.s.deviceNum = 0;	
}

As I see you have

hostSpace.s.deviceNum = 4;

Try to change!

Link to comment
Share on other sites

Thanks! Let's see what I can do now...

Yes, strange configuration. If you can you must write into sources your devices

1. Your Host controller with AGP capabilities

So 1689 - Host space.

1689 is already in: (amd64.cpp:161)

		 case 0x1689:
	 case 0x5246:
			//IOLog("Matched with %08lx\n",dev);
			 return ("ULi M1689 AGP Controller");

As I see you have

hostSpace.s.deviceNum = 4;

Try to change!

 

Changed it, nothing happened. I wonder why it isn't creating a driver for 1689...

 

Other observations: AGPGart loads once twice, triggered by Natit, which itself loads twice and finds my Radeon twice. I start up to a blue screen that I bypass using a sleep corner.

 

Also, some parts from my system.log:

Mar  9 05:19:20 localhost kernel[0]: AGP: Found ULi M1689 AGP Controller
Mar  9 05:19:20 localhost kernel[0]: AGP: ERROR! Capability offset not found: device 0
Mar  9 05:19:20 localhost kernel[0]: AGP: ERROR! Capability offset not found: device 1
Mar  9 05:19:20 localhost kernel[0]: AGP: ERROR! Capability offset not found: device 2
Mar  9 05:19:20 localhost kernel[0]: AGP: ERROR! Capability offset not found: device 3
Mar  9 05:19:20 localhost kernel[0]: AGP create nub for AGP Card=71831002 bus=3 cap=88
...
Mar  9 05:19:24 Hackintosh kernel[0]: Natit: Setting model=ATI Radeon X1300 Series
Mar  9 05:19:24 Hackintosh kernel[0]: AGP: Coherence support: no
Mar  9 05:19:24 Hackintosh kernel[0]: AGP: GART is 32 bit capable
Mar  9 05:19:24 Hackintosh kernel[0]: AGP: Found an AGP 3.0 compliant device.
Mar  9 05:19:24 Hackintosh kernel[0]: AGPAMD: Checking provider IOACPIPlane:/_SB/PCI0@180000/P0P4@50000
Mar  9 05:19:24 Hackintosh kernel[0]: AGPAMD: hammers not found
Mar  9 05:19:24 Hackintosh kernel[0]: AGP: ERROR! Attach device failed.AGPGart: destroyAGPSpace

It only finds the M1689 once (0x5246), but loads Natit and AGPAMD twice.

Link to comment
Share on other sites

Well, I've enabled some trace code in IOPCIConfigurator, and got this juicy tidbit:

 

Mar  9 06:32:42 localhost kernel[0]: Found PCI device for DT entry [USB1] 13:1
Mar  9 06:32:42 localhost kernel[0]: Found PCI device for DT entry [USB2] 13:2
Mar  9 06:32:42 localhost kernel[0]: Found PCI device for DT entry [UB20] 13:3
Mar  9 06:32:42 localhost kernel[0]: Found PCI device for DT entry [PEB1] 1:0
Mar  9 06:32:42 localhost kernel[0]: Found PCI device for DT entry [PEB2] 2:0
Mar  9 06:32:42 localhost kernel[0]: NOT FOUND: PCI device for DT entry [PEB3] 3:0
Mar  9 06:32:42 localhost kernel[0]: Found PCI device for DT entry [NB95] 0:0
Mar  9 06:32:42 localhost kernel[0]: NOT FOUND: PCI device for DT entry [APC2] 0:1
Mar  9 06:32:42 localhost kernel[0]: Found PCI device for ACPI entry [P0P4] 5:0
Mar  9 06:32:42 localhost kernel[0]: Found PCI device for ACPI entry [HTT] 6:0
Mar  9 06:32:42 localhost kernel[0]: Found PCI device for ACPI entry [SBRG] 7:0
Mar  9 06:32:42 localhost kernel[0]: Found PCI device for ACPI entry [PMU] 7:1
Mar  9 06:32:42 localhost kernel[0]: Found PCI device for ACPI entry [AC97] 8:0
Mar  9 06:32:42 localhost kernel[0]: NOT FOUND: PCI device for ACPI entry [MC97] 8:1
Mar  9 06:32:42 localhost kernel[0]: Found PCI device for ACPI entry [LAN] 11:0
Mar  9 06:32:42 localhost kernel[0]: Found PCI device for ACPI entry [IDEC] 12:0
Mar  9 06:32:42 localhost kernel[0]: NOT FOUND: PCI device for ACPI entry [SATA] 18:1
Mar  9 06:32:42 localhost kernel[0]: Found PCI device for ACPI entry [USB0] 13:0
Mar  9 06:32:41 localhost kextd[10]: 0 cached, 409 uncached personalities to catalog
Mar  9 06:32:42 localhost kernel[0]: Found PCI device for ACPI entry [USB1] 13:1
Mar  9 06:32:42 localhost kernel[0]: Found PCI device for ACPI entry [USB2] 13:2
Mar  9 06:32:42 localhost kernel[0]: Found PCI device for ACPI entry [UB20] 13:3
Mar  9 06:32:42 localhost kernel[0]: Found PCI device for ACPI entry [PEB1] 1:0
Mar  9 06:32:42 localhost kernel[0]: Found PCI device for ACPI entry [PEB2] 2:0
Mar  9 06:32:42 localhost kernel[0]: NOT FOUND: PCI device for ACPI entry [PEB3] 3:0
Mar  9 06:32:42 localhost kernel[0]: Found PCI device for ACPI entry [NB95] 0:0
Mar  9 06:32:42 localhost kernel[0]: NOT FOUND: PCI device for ACPI entry [APC2] 0:1
Mar  9 06:32:42 localhost mDNSResponder mDNSResponder-171.4 (Apr 20 2008 11:59:52)[16]: starting
Mar  9 06:32:42 localhost kernel[0]: Scanning PCI bridge 0x434e000, bus 4 (0:255)
Mar  9 06:32:42 localhost kernel[0]: bridge 0x434e000 scan final bus range 4:4
Mar  9 06:32:42 localhost kernel[0]: Scanning PCI bridge 0x4305000, bus 3 (0:255)
Mar  9 06:32:42 localhost kernel[0]: Probing type 0 device class-code 030000 at 3:0:0 [cpu 1]
Mar  9 06:32:42 localhost kernel[0]: state 0
Mar  9 06:32:42 localhost kernel[0]: [10 PFM] b0000000:10000000
Mar  9 06:32:42 localhost kernel[0]: [14 I/O] d000:100
Mar  9 06:32:42 localhost kernel[0]: [18 MEM] ff4f0000:10000
Mar  9 06:32:42 localhost kernel[0]: [30 MEM] ff4c0000:20000
Mar  9 06:32:42 localhost kernel[0]: Probing type 0 device class-code 038000 at 3:0:1 [cpu 1]
Mar  9 06:32:42 Rios-Hackintosh kernel[0]: state 0
Mar  9 06:32:42 Rios-Hackintosh kernel[0]: [10 MEM] ff4e0000:10000
Mar  9 06:32:42 Rios-Hackintosh configd[14]: setting hostname to "Rios-Hackintosh.local"
Mar  9 06:32:42 Rios-Hackintosh kernel[0]: bridge 0x4305000 scan final bus range 3:3
Mar  9 06:32:42 Rios-Hackintosh kernel[0]: Scanning PCI bridge 0x43a2c00, bus 2 (0:255)
Mar  9 06:32:42 Rios-Hackintosh kernel[0]: NOT FOUND: PCI device for DT entry [PES2] 0:0
Mar  9 06:32:43 Rios-Hackintosh kernel[0]: NOT FOUND: PCI device for ACPI entry [PES2] 0:0
Mar  9 06:32:43 Rios-Hackintosh kernel[0]: bridge 0x43a2c00 scan final bus range 2:2
Mar  9 06:32:43 Rios-Hackintosh kernel[0]: Scanning PCI bridge 0x435fc00, bus 1 (0:255)
Mar  9 06:32:43 Rios-Hackintosh kernel[0]: NOT FOUND: PCI device for DT entry [PES1] 0:0
Mar  9 06:32:43 Rios-Hackintosh kernel[0]: NOT FOUND: PCI device for ACPI entry [PES1] 0:0
Mar  9 06:32:43 Rios-Hackintosh kernel[0]: bridge 0x435fc00 scan final bus range 1:1
Mar  9 06:32:43 Rios-Hackintosh kernel[0]: [ PCI configuration Phase-1b ]
Mar  9 06:32:43 Rios-Hackintosh kernel[0]: added bridge 0x434e000 bus 4:4 to index 1
Mar  9 06:32:43 Rios-Hackintosh kernel[0]: added bridge 0x4305000 bus 3:3 to index 2
Mar  9 06:32:43 Rios-Hackintosh kernel[0]: added bridge 0x43a2c00 bus 2:2 to index 3
Mar  9 06:32:43 Rios-Hackintosh kernel[0]: added bridge 0x435fc00 bus 1:1 to index 4
Mar  9 06:32:43 Rios-Hackintosh kernel[0]: [ PCI configuration Phase-4 ]
Mar  9 06:32:43 Rios-Hackintosh kernel[0]: From path: "uuid", 
Mar  9 06:32:43 Rios-Hackintosh kernel[0]: Waiting for boot volume with UUID 2AD6CCE4-C369-30CD-AB0D-0BAE99DC4FE3
Mar  9 06:32:43 Rios-Hackintosh kernel[0]: Waiting on <dict ID="0"><key>IOProviderClass</key><string ID="1">IOResources</string><key>IOResourceMatch</key><string ID="2">boot-uuid-media</string></dict>
Mar  9 06:32:43 Rios-Hackintosh kernel[0]: [ PCI configuration end ]

 

It seems to be running PCI configuration twice, and it manages to miss dev 4:0 every time. I'll try to find out why.

Link to comment
Share on other sites

Try, please, the same manipulation with 3 versions of IOPCIFamily: Apple's latest 2.5, my 2.5.4, and some from Chun-Nan. See the difference!

When I try your 2.5.4, I cannot boot since my IDE controller is hidden from IOKit. I think the same will happen with Apple's 2.5. I'll try to download and recompile it now. I'm currently using a patched 2.4.2 v243. BTW, I couldn't find the source for your 2.5.4; did you post it yet?

 

Haha, my mistake, the sources I am using are in fact yours! IOPCIFamily_103v243src downloaded from the first post. I can't seem to find Chun-nan's anywhere, though...

 

Also, the top of that new output is cut off - I can't see the very beginning:

Mar 10 00:46:11 Rios-Hackintosh shutdown[432]: reboot by rio: 
Mar 10 00:46:11 Rios-Hackintosh shutdown[432]: SHUTDOWN_TIME: 1236681971 959822
Mar 10 00:46:11 Rios-Hackintosh mDNSResponder mDNSResponder-171.4 (Apr 20 2008 11:59:52)[16]: stopping
Mar 10 00:46:11 Rios-Hackintosh com.apple.loginwindow[47]: Shutdown NOW!
Mar 10 00:46:11 Rios-Hackintosh com.apple.loginwindow[47]: System shutdown time has arrived^G^G
Mar 10 00:46:55 localhost kernel[0]: entry [MC97] 8:1
Mar 10 00:46:55 localhost DirectoryService[12]: Launched version 5.4 (v514.21)
Mar 10 00:46:55 localhost kernel[0]: Found PCI device for DT entry [LAN] 11:0
Mar 10 00:46:55 localhost kernel[0]: Found PCI device for DT entry [IDEC] 12:0

To see the beginning, I think I need to disable spammy kexts use the boot option "msgbuf=16384" to expand the dmesg buffer, then boot into single-user and dmesg > file.

 

I've been reading about how IOPCIConfigurator scans the bridge devices, but no insights yet...

Link to comment
Share on other sites

Joblo joked in the other thread that my CPU must be outside of my computer.

 

Device 24 shows up clearly for me in Windows and Linux. I wonder if something in the kernel is blocking access to this device...

 

When I check for 0x11031022 using configRead32(), I get FFFF. However, when I check using inl and outl, I get 11031022 in device 24 like I am supposed to. When I look for the implementation of configRead32, I find it buried in a closed-source AppleACPIPCI or deeper. I wonder why this is, when others are getting their AGP on AMD64 systems working fine.

 

After a closer look at ACPIPCI::configRead32() in assembly, I'm convinced that it's using PCI-e methods to get to the config space.

 

I might have to do a one-off configuration of the Hammer's gart registers in AGPAMD64::config or something.

 

Uh-oh, just tried reading the hammers using outl(0cf8) and inl(0cfc)... still ffff. Maybe AMD64 needs a different method of accessing the PCI config space? I've already tried kernel 9.2 vs 9.4, no difference, except in 9.4 I can't run VMWare. Bug found, my mistake!

 

I'm sure it isn't the northbridges now, since they're self-configuring, and they're already enumerating devices on bus 1, 2, 3, etc, including my Radeon. I don't see Linux doing anything special for the 1689/1695, either. I'll keep reading and researching. Any insights would be helpful!

Link to comment
Share on other sites

I'm confident now that my problem is with ACPI. I traced the assembly further down and found it calling ACPI functions to get the memory-mapped I/O address of the Hammer's config space. These fail because my motherboard apparently isn't reporting the Hammer correctly. I'm going to look into DSDT and compare against how linux handles this motherboard.

Link to comment
Share on other sites

Joblo joked in the other thread that my CPU must be outside of my computer.

Wow, Joblo still alive?

Device 24 shows up clearly for me in Windows and Linux. I wonder if something in the kernel is blocking access to this device...

 

When I check for 0x11031022 using configRead32(), I get FFFF. However, when I check using inl and outl, I get 11031022 in device 24 like I am supposed to. When I look for the implementation of configRead32, I find it buried in a closed-source AppleACPIPCI or deeper.

It happens when you try to read PCI bus BEFORE CreateNub method.

 

What is strange

AGP: ERROR! Capability offset not found: device 2


AGP: ERROR! Capability offset not found: device 3
AGP create nub for AGP Card=71831002 bus=3 cap=88

The last message cap=88 is actually "Capability offset" . Why did you check non-useful devices?

Link to comment
Share on other sites

Hi Slice! I got AGP working:

 

Chipset Model:	ATI Radeon X1300 Series
 Type:	Display
 Bus:	AGP
 VRAM (Total):	512 MB
 Vendor:	ATI (0x1002)
 Device ID:	0x7183
 Revision ID:	0x0000
 Displays:
Display:
 Resolution:	1280 x 1024 @ 75 Hz
 Depth:	32-bit Color
 Core Image:	Hardware Accelerated
 Main Display:	Yes
 Mirror:	Off
 Online:	Yes
 Quartz Extreme:	Supported
 QuartzGL:	Supported
 Rotation:	Supported
Display Connector:
 Status:	No display connected

 

Posting again soon with more details!

Link to comment
Share on other sites

I have a few revelations to share with you. Refer again to the PCI bus listing for my motherboard.

 

Transparent AGP2PCI and PCI2PCI bridge

The devices 00:01:00, 00:02:00 and 00:05:00 are transparent bridges, and can operate without any configuration from the OS beyond what the ACPI BIOS does. This means buses 01-03 are visible to the CPU. However, it's OS standard procedure to find out what memory regions the bridges use, which is handled by IOPCIBridge.

 

PCI Host Bridge

Devices 00:00:00 and 00:04:00 are host bridges, rather than PCI2PCI or PCI2AGP bridges. These are the ones that require special configuration for AGP. Since the AGP capability is on 00:04:00, this device (along with 00:24:03 hammer) is the one that must be handled by an IOAGPBridge subclass.

 

PCI Configuration Space access methods

I can access 00:24:03 through IO ports, but not through configRead32(). You said it's because I'm trying to access it before the nub is created? Which nub, exactly? It's not creating any IOKit entries for 00:24:xx at all. I've attached the complete debug output of PCIConfigurator, which is scanning the PCI bus using the ACPI configRead32. I'm sure this problem is due to an ACPI misconfig of some kind, because I traced the implementation of configRead32() down to ACPI routines.

 

At one point, I noticed that AGPGart::probe was being called each time the kextcache was regenerated, well after boot time. Device 24 was still FFFF at that time.

 

Restructure device driver

I think the AGPgart driver should be restructured as such:

 

Create separate IOKit personalities in the info.plist for each of AGPAMD, AGPVIA, etc. These should match to the PCI Host Bridge with AGP Capability by devid (mine is 1689), or possibly by cap. Find a correct way for AGPGart to locate and talk to AGPAMD when needed.

 

Don't call constructors, like AGPAMD::AGPAMD(). This doesn't conform to Apple's driver devel guidelines, which say you should use new() to allocate, check its return value, then call AGPAMD::init() to do initialization. I'm not sure what the consequence of calling constructors is, but this came up in my reading.

 

IOKit Timeouts

Every startup, ATIRadeonX1000 hangs up IOKit for a minute or two:

Mar 11 04:29:33 Rios-Hackintosh configd[14]: InterfaceNamer: timed out waiting for IOKit to quiesce
  Mar 11 04:29:33 Rios-Hackintosh configd[14]: InterfaceNamer: Busy services :
  Mar 11 04:29:33 Rios-Hackintosh configd[14]: InterfaceNamer:   939Dual-SATA2 [1]
  [...]
  Mar 11 04:29:33 Rios-Hackintosh configd[14]: InterfaceNamer:   939Dual-SATA2/AppleACPIPlatformExpert/PCI0@180000/AppleACPIPCI/P0P4@5/AGPGart/display@0/ATIRadeonX1000/IOService [2]

I'm still trying to find out what causes this, by booting into different sets of kexts and comparing the IOReg. This doesn't happen under certain conditions.

 

I've only managed to get rid of the unrelated blue screen by disabling Natit, which means I don't have acceleration and the mouse cursor leaves ugly droppings.

 

I'm about to reboot to track down another {censored} kernel panic that doesn't leave me a backtrace. More after the jump!

 

UPDATE

 

I've got AGP fully working by writing to 00:24:03's configuration space each time using I/O ports. However! In XBench there is no difference between with AGPGart and without. Neither is there any difference in Halo timedemo performance! I don't think I need to use AGPGart, and now I'm curious about who actually does.

 

As Slice was saying, PCI has its own form of DMA that works, so why need AGP?

system.log.zip

Link to comment
Share on other sites

:rolleyes: Hi all,

 

Been watching the forum for a while now.

 

I have been trolling the forums to fix my QE issue, thanks to you guys i have my AGP card now been recongnised by the system, although its showing up as a 9600 pro, and not the 9550 that is in there. but at least its working.

 

I installed agpgart the latest version and it picked it up from been a pci to agp card.

 

secondly i installed ATILead.KEXT and it at least now sees that it is reporting on the card, even though its not exact.

 

PROBLEM

 

i want to get QE going so i can use Ilife 09, also i am not satisfied the driver is doing what its supposed to.

 

Although its booting up really fast etc, i also cant change display modes.

 

Any thoughts?

:rolleyes:

 

ATI RADEON 9600 PRO:

 

Chipset Model: ATI RADEON 9600 PRO

Type: Display

Bus: PCI

VRAM (Total): 256 MB

Vendor: ATI (0x1002)

Device ID: 0x4153

Revision ID: 0x0000

EFI Driver Version: 01.00.068

Displays:

Display:

Resolution: 1024 x 768

Depth: 32-bit Color

Core Image: Software

Main Display: Yes

Mirror: Off

Online: Yes

Quartz Extreme: Not Supported

Link to comment
Share on other sites

 Share

×
×
  • Create New...