Help - Search - Members - Calendar
Full Version: Anyone Have SB600 SATA Support for ATI Chipsets
InsanelyMac Forum > OSx86 Project > Hardware and Drivers > SATA/IDE Controllers
anarchy99
Anyone Have SB600 SATA Support for ATI Chipsets
i see SB450 works with a hack anyone have a idea about making the SB600

thanks
anarchy99
anyone
jedavis1
I would add my inquires to this. I have the same SB chipset in a Dell that I can't get to work with SATA and poorly with PATA (It is more like PITA)
XStylus
Ditto on this request. I've got a new Acer Aspire 5100-3949 that would love to stretch its legs with OSX, if it could just see the hard drive. smile.gif
knifeyspoony
"Me too." I bought a Dell Vostro 1000 like a lotta other people did on Black Friday. Same chipset, no disk drive recognized.
max240p
I've got SB600 (ATI CrossFire Xpress 3200)... So, I have a same problem to find SATA driver. Has anybody found?
thisballs
same here -- vostro 1000. anybody working on a chipset driver?Dittobean to this.Got a p4 running with Leopard, but I want it on my vostro notebook.Awesome laptop, takes care of everything, just hoping to get some extra functionality out of it. I need a laptop that can boot multiple OS's.I think partially it's better to get Mac on IBM-style hardware, vs get a mac and run other OS's on it because I don't know about other OS's hardware support.Maybe I should sell this @ $400 and spend the extra $200 on a macbook with better stats (2.2 ghz, 2gb, 160gb hdd, 13.3" screen, which would be the only downgrade, dvd burner, etc.)Damn Leopard for being the coolest f'n OS out there. Only thing Apple has ever done that I would spend my money on.
zerbo
I would also like this to see as i have also just bought a dell with a SB600 SATA Support for ATI Chipsets , as i can t fina anyone that has found a way around this
OSXlovah
check out this post here.

all i can say that i've forgotten check the chipset drivers when installing Leopard, so when first time booting from HDD, i got the "Still waiting for root device" error.

then, under XP, with the help of MacDrive, i've copied the kext files from the link above to the Extensions folder on my Leopard partition. then booted with "-f".

it worked fine...the only problem is that atm i can only boot into Leopard with -f...so i guess the manually copied files didn't install well. also i'm experiencing rather slow speeds when using Leopard...

hope this helps smile.gif
OSXlovah
installed both kext files from the .zip with kexthelper. now Leopard boots just fine and i also can confirm that speeds are far better.
dasepsilon
can anyone tell me how exactly SB600 works with SATA drives?
is AHCI used, or is it natively IDE?
i tried to get my SB700 working by recompiling the AppleOnboardATA
kext, as described by dcat, but no go, neither in IDE mode nor in AHCI.
can anyone give me his device ID on a working leopard install?
venomq
QUOTE(dasepsilon @ Apr 20 2008, 11:13 AM) *
can anyone tell me how exactly SB600 works with SATA drives?
is AHCI used, or is it natively IDE?
i tried to get my SB700 working by recompiling the AppleOnboardATA
kext, as described by dcat, but no go, neither in IDE mode nor in AHCI.
can anyone give me his device ID on a working leopard install?

hey i need to know if you did it with the sb700!

i have the same chipset plus the amd 9500 phenom x4
tomog76
i have the same problem

my chipsets are South Bridge = ATIXpress 1250 (RS600)
and my North Bridge = ATI SB600

any suggestions
Rockviech
same here, cant even boot leopard dvd

hangs at ioapic, get pass this with putting laptop to sleep and back, but then get still waiting for root device.
LawlessPPC
try looking for the phenom & AMD 10.5.4 release its mentioned in the releases section

L8rs
LawlessPPC

try looking for the phenom & AMD 10.5.4 release its mentioned in the releases section

L8rs
LawlessPPC
dasepsilon
maybe not the right place, lawlessppc,
the dvd did not boot with my sata-dvd on sb700 sad.gif
i'm not quite sure if sata was set to ide-emulation...
(zeph 10.5.1 did boot though ;D)
thanks for the excellent effort nonetheless!
LawlessPPC
QUOTE(dasepsilon @ Aug 1 2008, 12:19 AM) *
maybe not the right place, lawlessppc,
the dvd did not boot with my sata-dvd on sb700 sad.gif
i'm not quite sure if sata was set to ide-emulation...
(zeph 10.5.1 did boot though ;D)
thanks for the excellent effort nonetheless!


The thread title is "Anyone Have SB600 SATA Support for ATI Chipsets" not SB700!!!!
~Eureka
Hi,

For those who have ATI IXP600/IXP700 (SB600/SB700), if you have problems with your internal PATA devices, you can give this AppleATIATA a try to see if it works.

It works on my Acer Extensa 4420-5239 but it may conflict with AppleVIAATA.

Chun-Nan

/*
* Supported devices.
*/
#define ATA_ATI_ID 0x1002
#define ATA_ATI_IXP200 0x43491002
#define ATA_ATI_IXP300 0x43691002
#define ATA_ATI_IXP300_S1 0x436e1002
#define ATA_ATI_IXP400 0x43761002
#define ATA_ATI_IXP400_S1 0x43791002
#define ATA_ATI_IXP400_S2 0x437a1002
#define ATA_ATI_IXP600 0x438c1002
#define ATA_ATI_IXP600_S1 0x43801002
#define ATA_ATI_IXP700 0x439c1002
#define ATA_ATI_IXP700_S1 0x43901002
jomateixa
Hi Chun-Nan,

Here is my ioreg_sp file. Thanks for your help. I'm an advanced linux user but a noob in BSD/Mac.

BTW, I noticed that ATA_ATI_IXP600 is loaded at kernel boot but ATA_ATI_IXP600_S1 isn't. I'm sure about my ID's, 0x438c and 0x4380.
~Eureka
QUOTE(jomateixa @ Oct 8 2008, 05:06 PM) *
Hi Chun-Nan,

Here is my ioreg_sp file. Thanks for your help. I'm an advanced linux user but a noob in BSD/Mac.

BTW, I noticed that ATA_ATI_IXP600 is loaded at kernel boot but ATA_ATI_IXP600_S1 isn't. I'm sure about my ID's, 0x438c and 0x4380.


Hi jomateixa,

I have checked your ioreg_sp.txt. Both ATA_ATI_IXP600 and ATA_ATI_IXP600_S1 are loaded. I assumed your DVD is a PATA device. If so, it seems that it doesn't get the correct memory resource compared to the SATA devie (the IODeviceMemory value).

CODE

| | +-o IDEC@14,1 <class IOPCIDevice, registered, matched, active, busy 0, retain 10>
| | | | {
| | | | "IOPCIResourced" = Yes
| | | | "IOInterruptControllers" = ("io-apic-0")
| | | | "IOName" = "pci1002,438c"
| | | | "subsystem-id" = <27160000>
| | | | "IODeviceMemory" = ({"parent"=({"address"=0x0,"length"=0x10000}),"offset"=0xff00,"length"=0x10})
| | | | "class-code" = <82010100>
| | | | "IOPowerManagement" = {"CurrentPowerState"=0x2}
| | | | "revision-id" = <00000000>
| | | | "IOInterruptSpecifiers" = (<1000000007000000>)
| | | | "assigned-addresses" = <20a100810000000000ff00000000000010000000>
| | | | "built-in" = <00>
| | | | "acpi-device" = "IOACPIPlatformDevice is not serializable"
| | | | "device-id" = <8c430000>
| | | | "vendor-id" = <02100000>
| | | | "acpi-path" = "IOACPIPlane:/_SB/PCI0@0/IDEC@140001"
| | | | "subsystem-vendor-id" = <43100000>
| | | | "name" = "pci1002,438c"
| | | | "reg" = <00a100000000000000000000000000000000000010a1000100000000000000000000000008000
0014a100010000000000000000000000000400000018a10001000000000000000000000000080000
01ca100010000000000000000000000000400000020a100010000000000000000000000001000000
>
| | | | "compatible" = <706369313034332c3136323700706369313030322c3433386300706369636c6173732c3031303
383200>
| | | | }
| | | |

CODE

| | +-o SATA@12 <class IOPCIDevice, registered, matched, active, busy 0, retain 11>
| | | | {
| | | | "IOPCIResourced" = Yes
| | | | "IOInterruptControllers" = ("io-apic-0")
| | | | "IOName" = "pci1002,4380"
| | | | "subsystem-id" = <27160000>
| | | | "IODeviceMemory" = ({"parent"=({"address"=0x0,"length"=0x10000}),"offset"=0xe800,"length"=0x8},{"parent"=({"address"=0x0,"length"=0x10000}),"offset"=0xe400,"length"=0x4},{"parent"=({"address"=0x0,"length"=0x10000}),"offset"=0xe000,"length"=0x8},{"parent"=({"address"=0x0,"length"=0x10000}),"offset"=0xdc00,"length"=0x4},{"parent"=({"address"=0x0,"length"=0x10000}),"offset"=0xd800,"l$
| | | | "class-code" = <8f010100>
| | | | "IOPowerManagement" = {"ChildrenPowerState"=0x2,"CurrentPowerState"=0x2}
| | | | "revision-id" = <00000000>
| | | | "IOInterruptSpecifiers" = (<1600000007000000>)
| | | | "assigned-addresses" = <109000810000000000e800000000000008000000149000810000000000e400000000000004000
00189000810000000000e0000000000000080000001c9000810000000000dc000000000000040000
0209000810000000000d800000000000010000000249000820000000000fcbffe000000000004000
>
| | | | "built-in" = <00>
| | | | "acpi-device" = "IOACPIPlatformDevice is not serializable"
| | | | "device-id" = <80430000>
| | | | "vendor-id" = <02100000>
| | | | "acpi-path" = "IOACPIPlane:/_SB/PCI0@0/SATA@120000"
| | | | "subsystem-vendor-id" = <43100000>
| | | | "name" = "pci1002,4380"
| | | | "reg" = <00900000000000000000000000000000000000001090000100000000000000000000000008000
00149000010000000000000000000000000400000018900001000000000000000000000000080000
01c90000100000000000000000000000004000000209000010000000000000000000000001000000
2490000200000000000000000000000000040000>
| | | | "compatible" = <706369313034332c3136323700706369313030322c3433383000706369636c6173732c3031303
386600>
| | | | }
| | | |


Try this IOPCIFamily to see if it works. Make sure you backup the original IOPCIFamily. You can use tools (like OSXTool or kexthelper) to install the kexts or you can try these steps:

1. Make sure "IOPCIFamily" is inside "System/Library/Extensions"
2. Open "Terminal"
3. Type "sudo -s"
4. Type "chown -R 0:0 /System/Library/Extensions/IOPCIFamily*"
5. Type "chmod -R 755 /System/Library/Extensions/IOPCIFamily*"
6. Type "touch /System/Library/Extensions"
7. Exit "Terminal"
8. Reboot the OSX

Let me know the result. Thanks.

Chun-Nan

Leopard:
http://forum.insanelymac.com/index.php?act...st&id=34679

Tiger:
http://forum.insanelymac.com/index.php?act...st&id=34680
jomateixa
Thanks Chun-Nan. Yes my DVD is P-ATA (Linux kernel loads the ATIIXPATA module)

I did exactly what you said and now, the "length" and "offset" fields have different values for the device 0x438c, but the DVD drive is still unrecognized. This is frustrating. There's any way to know the correct memory values?

Thanks again and again for your help.

Here the new ioreg_sp:
~Eureka
QUOTE(jomateixa @ Oct 8 2008, 07:00 PM) *
Thanks Chun-Nan. Yes my DVD is P-ATA (Linux kernel loads the ATIIXPATA module)

I did exactly what you said and now, the "length" and "offset" fields have different values for the device 0x438c, but the DVD drive is still unrecognized. This is frustrating. There's any way to know the correct memory values?

Thanks again and again for your help.

Here the new ioreg_sp:


Hi jomateixa,

Try this AppleATIATA with the IOPCIFamily you just replaced to see if it works. If system stops booting or boots slowly, try to boot with "-f".

Let me know the result (ioreg_sp.txt). Thanks.

Chun-Nan

BTW, is it possible for you to find out whether your DVD is attched to primary ATA or secondary ATA under other OS sytem?

Click to view attachment
jomateixa
QUOTE(~Eureka @ Oct 9 2008, 01:49 AM) *
Hi jomateixa,

Try this AppleATIATA with the IOPCIFamily you just replaced to see if it works. If system stops booting or boots slowly, try to boot with "-f".

Let me know the result (ioreg_sp.txt). Thanks.

Chun-Nan

BTW, is it possible for you to find out whether your DVD is attched to primary ATA or secondary ATA under other OS sytem?

Click to view attachment


No result, still the same. I will try to find where is attached the DVD and all information I can find about it. Here the last ioreg_sp file, now I have to go to bed. Cheers !! We talk tomorrow. And thank you ...


jomateixa
Hello Chun-Nan,

My DVD is attached to Tertiary controller- Slave (but BIOS prompt says Primary slave). Here's some BUS info I copy-pasted, It's not very interesting but maybe it helps.

There's a thing I didn't mentioned: I had to install the OS/X system putting my SATA HDD inside another computer in order to boot from the Install DVD, so when in OS installation there was another DVD (IDE) drive. I thought it was not important but possibly I don't have the correct kexts loaded.

Cheers
jomateixa
@Chun-Nan

I don't want to take more of your time, you tried to help me. But as a last thing, can you tell me what modification you did to the AppleATIATA_test file? I only want to learn how to hack these files in order to do my own tests instead to answer people. If it's not too hard, can you teach me a little or tell me where can I look for information?

Thank you.
~Eureka
QUOTE(jomateixa @ Oct 10 2008, 04:38 PM) *
@Chun-Nan

I don't want to take more of your time, you tried to help me. But as a last thing, can you tell me what modification you did to the AppleATIATA_test file? I only want to learn how to hack these files in order to do my own tests instead to answer people. If it's not too hard, can you teach me a little or tell me where can I look for information?

Thank you.


Hi jomateixa,

Sorry for the late reply. I have been busy with other stuff.

According to the source code from freebsd, IXP600 (SB600) & IXP700 (SB700) only have 1 PATA channel. Therefore, the AppleATIATA I revised will only create 1 PATA channel for IXP600 and IXP700 and it will only create the primary channel.

On AppleATIATA_test, I changed from creating 1 PATA channel to creating 2 PATA channels. However, it didn't slove your PATA device problem. (That is the main difference between the original one and the test one.)

I haven't found the reason why your PATA device didn't show up. Maybe it has something to do with the IOATAFamily you are using now. Do you know which IOATAFamily are you using now? (Are you using the retail Leopard install?)

I have turned on the debug info function. Hopefully, we can find out where it failed. If possible, post the dmesg result as a file here after trying it. Thanks.

Chun-Nan

Click to view attachment
jomateixa
Hi Chun-Nan,

You can only enable two PATA channels? Could I have the DVD drive connected to 3rd or 4th channel (if exist)?

Here you have the dmesg output and the IOATAFamily I'm using now (the one that comes with Leo4allv3), but I tested several others without result , for example the one provided here by blubbla http://forum.insanelymac.com/index.php?sho...p;#entry472484

Thanks!
~Eureka
QUOTE(jomateixa @ Oct 12 2008, 03:49 AM) *
Hi Chun-Nan,

You can only enable two PATA channels? Could I have the DVD drive connected to 3rd or 4th channel (if exist)?

Here you have the dmesg output and the IOATAFamily I'm using now (the one that comes with Leo4allv3), but I tested several others without result , for example the one provided here by blubbla http://forum.insanelymac.com/index.php?sho...p;#entry472484

Thanks!


Hi jomateixa,

If possible, I need you to test these two AppleATIATA with the IOPCIFamily at the following the link.

Leopard:
http://forum.insanelymac.com/index.php?act...st&id=36060

Post the dmesg results as files here, especially the message like this:

[CH0] _tfCylLoReg: 12
[CH0] _tfCylHiReg: 0
[CH1] _tfCylLoReg: ff
[CH1] _tfCylHiReg: ff

Thanks.

Chun-Nan

Click to view attachment
Click to view attachment

In addition, can you find out what I/O port addresses are your PATA device using under other OS System, such as (0x1f0,0x3f4), (0x170,0x374), etc?
jomateixa
Hi Chun-Nan, here are the files.

Ok I will try to find the I/O PATA addresses, but I really don't know how to do it yet. I will try a dmesg into Debian.

Cheers




~Eureka
QUOTE(jomateixa @ Oct 12 2008, 02:01 PM) *
Hi Chun-Nan, here are the files.

Ok I will try to find the I/O PATA addresses, but I really don't know how to do it yet. I will try a dmesg into Debian.

Cheers


Hi jomateixa,

Thanks for the file. That is interesting. On dmesg_legacy.rtf, it showed two CH0 values. Maybe that is the reason why PATA devie didn't show up, the second values overrides the first values.

If possible, can you try to find out if it shows two CH0 values everytime while using legacy one? Thanks.

Chun-Nan
jomateixa
QUOTE(~Eureka @ Oct 12 2008, 08:07 PM) *
Hi jomateixa,

Thanks for the file. That is interesting. On dmesg_legacy.rtf, it showed two CH0 values. Maybe that is the reason why PATA devie didn't show up, the second values overrides the first values.

If possible, can you try to find out if it shows two CH0 values everytime while using legacy one? Thanks.

Chun-Nan


Thanks Chun-Nan,

You mean rebooting and seeing if CH0 values are ever the same?

Here the Debian dmesg file with addresses and IRQ values.

------ EDIT -------

My opinion is that DVD PATA device is connected to ATA channel 1 but the driver only search in channel 0 (the last CH0=ff values you're talking about appears at the end of kernel boot, just at the same point as when I get the SearchingDrives pointer little-hang). If you see the debian_dmesg file, you will notice that PATA drive is at the line after the string ata5.01

--------------------
~Eureka
QUOTE(jomateixa @ Oct 12 2008, 02:14 PM) *
Thanks Chun-Nan,

You mean rebooting and seeing if CH0 values are ever the same?

Here the Debian dmesg file with addresses and IRQ values.

------ EDIT -------

My opinion is that DVD PATA device is connected to ATA channel 1 but the driver only search in channel 0 (the last CH0=ff values you're talking about appears at the end of kernel boot, just at the same point as when I get the SearchingDrives pointer little-hang)

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


Hi jomateixa,

Thanks for the file. That is even more interesting. According to dmesg_debian, your PATA device is using ctl 0x3f6 instead of ctl 0x3f4.

Please try this AppleATIATA with the IOPCIFamily posted on Post #28. If possible, post the dmesg result here. Thanks.

Chun-Nan

Click to view attachment
jomateixa
Thanks Chun-Nan,

Definitely my PATA is fuxxing wicked, I hope we can fix it any time! Maybe it helps other people. See the next file.

Well now I'm going to have dinner (here in Spain is 11 PM). Talk to you later if you are still here. Thank you very much for your effort!


------ EDIT ------
BTW, what about ctl 0x376?

jomateixa
~Eureka
QUOTE(jomateixa @ Oct 12 2008, 03:02 PM) *
Thanks Chun-Nan,

Definitely my PATA is fuxxing wicked, I hope we can fix it any time! Maybe it helps other people. See the next file.

Well now I'm going to have dinner (here in Spain is 11 PM). Talk to you later if you are still here. Thank you very much for your effort!

jomateixa


Hi jomateixa,

Thanks for the file. The CH0 still appeared twice. We need to find out why the CH0 showed twice and it cannot be 0xff value, either.

Chun-Nan
jomateixa
Thanks Chun-Nan,

Only a few questions, what about this line?

CODE
ata6: PATA max UDMA/100 cmd 0x170 ctl 0x376 bmdma 0xff08 irq 15


Can you insert both 0x3f6 and 0x376?

I still want to learn how to hack this, what file/s do you modify? Do you recompile the kext with Xcode?
~Eureka
QUOTE(jomateixa @ Oct 12 2008, 04:42 PM) *
Thanks Chun-Nan,

Only a few questions, what about this line?

CODE
ata6: PATA max UDMA/100 cmd 0x170 ctl 0x376 bmdma 0xff08 irq 15


Can you insert both 0x3f6 and 0x376?

I still want to learn how to hack this, what file/s do you modify? Do you recompile the kext with Xcode?


Hi jomateixa,

Yes, I changed both 0x3f4 and 0x374 to 0x3f6 and 0x376 but it still didn't help.

I need to collect more informaiton. Can you try this AppleATIATA and post the dmesg here again? Thanks.

Chun-Nan

Click to view attachment
jomateixa
Hi Chun-Nan,

With this file there's more register values and lamentably the dmesg have a limited buffer and I can't get the first values. Tomorrow I will collect the values manually. I have to go to sleep.

Cheers!
~Eureka
QUOTE(jomateixa @ Oct 12 2008, 05:20 PM) *
Hi Chun-Nan,

With this file there's more register values and lamentably the dmesg have a limited buffer and I can't get the first values. Tomorrow I will collect the values manually. I have to go to sleep.

Cheers!


Hi jomateixa,

You can boot into single user mode to get dmesg message there.

I will open another topic to avoid hijacking this topic. tongue.gif

Chun-Nan

Edit:
Here is the link: http://forum.insanelymac.com/index.php?showtopic=130895
You can post dmesg result there. In addition, I posted the source code of AppleATIATA there.
DanielSCC
Hi Chun-Nan,

i just have a question regarding the SB600 kexts, im using the kexts from lawless PPC 10.5.4. I installed OSX successfully, i even updated it to 10.5.5, but MAC OS still takes a long time to load, and to run the software. So, my question is, do you know if there are any newer (faster) versions of this kext? I have been looking for an updated version of this kext but i couldnt find it.

Thanx in advance...

Daniel
~Eureka
QUOTE(DanielSCC @ Oct 15 2008, 11:12 PM) *
Hi Chun-Nan,

i just have a question regarding the SB600 kexts, im using the kexts from lawless PPC 10.5.4. I installed OSX successfully, i even updated it to 10.5.5, but MAC OS still takes a long time to load, and to run the software. So, my question is, do you know if there are any newer (faster) versions of this kext? I have been looking for an updated version of this kext but i couldnt find it.

Thanx in advance...

Daniel


Hi DanielSCC,

Are you getting "IOKitWaitQuiet() timed out" message or something like that? If so, that may be the reason why it taks a long time to boot.

I am not sure what kexts are included on lawless PPC 10.5.4. You can try the AppleATIATA posted on the following link to see if it makes any difference.
http://forum.insanelymac.com/index.php?showtopic=130895

Chun-Nan
DanielSCC

Im not getting any warnings or messages, It's just the fact that it takes a long time to load files in the HD, (IDE), or software like GarageBand, Itunes, or iMovie. Everything is working correctly, but I think it should be faster because im using a quad-core processor and 4GB of 1066 RAM.

Im gonna try the kexts you suggested me, ill tell you what happened as soon as i get back home.
Thanks a lot Chun-Nan

Daniel
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.