Help - Search - Members - Calendar
Full Version: ALi/ULi ATA Controller (PATA/SATA)
InsanelyMac Forum > OSx86 Project > Hardware and Drivers > SATA/IDE Controllers
~Eureka
Hi guys,

Here is the AppleALiATA-6 I have revised. It is based on AppleVIAATA-6 source code. It supports ALi/ULi pata/sata chipsets. I have tested it on the ASUS K8U-X motherboard. Drives are UDMA enabled and fully working on PATA Controller (M5229). I have tested the SATA Controller (M1689/M1567) and it works, too.

In addition, AppleVIAATA and AppleOnboardPCATA should be removed or at least ALi/ULi ID inside of it to avoid conflicts. If you have ALi/ULi motherboard, you can give it a try.

Chun-Nan

P.S. I have not tested this driver under Tiger, but it should work.

CODE
| | | | +-o AppleALiATADriver
| | | | | {
| | | | | "IOProviderClass" = "AppleALiATAChannel"
| | | | | "IOProbeScore" = 0x0
| | | | | "Drive 1 Ultra DMA Mode" = 0x6
| | | | | "Drive 0 PIO Mode" = 0x4
| | | | | "CFBundleIdentifier" = "com.apple.driver.AppleALiATA"
| | | | | "Drive 0 Ultra DMA Mode" = 0x5
| | | | | "Physical Interconnect" = "ATA"
| | | | | "IOMatchCategory" = "IODefaultMatchCategory"
| | | | | "IOPowerManagement" = {"ChildrenPowerState"=0x2,"CurrentPowerState"=0x2}
| | | | | "IOClass" = "AppleALiATADriver"
| | | | | "Drive 1 PIO Mode" = 0x4
| | | | | }
| | | | |

==========
Source code: Click to view attachment
==========
Update: 10/15/2008
1. Complied under Tiger and it should work both with Tiger and Leopard.
2. Replaced "createChannelCommands" with codes from AppleIntelPIIXPATA.

Click to view attachment
tianzjzi
good! i have a p4twins motherbord,it should be work! thanks
rjstrat
QUOTE(Chun-Nan @ Aug 25 2008, 01:22 PM) *
Hi guys,

Here is the AppleALiATA-6 I have revised. It is based on AppleVIAATA-6 source code. It supports ALi/ULi pata/sata chipsets. I have tested it on the ASUS K8U-X motherboard. Drives are UDMA enabled and fully working on PATA Controller. (However, I don't have SATA devices right now so I cannot test the SATA Controller.)

CODE
| | | | +-o AppleALiATADriver
| | | | | {
| | | | | "IOProviderClass" = "AppleALiATAChannel"
| | | | | "IOProbeScore" = 0x0
| | | | | "Drive 1 Ultra DMA Mode" = 0x6
| | | | | "Drive 0 PIO Mode" = 0x4
| | | | | "CFBundleIdentifier" = "com.apple.driver.AppleALiATA"
| | | | | "Drive 0 Ultra DMA Mode" = 0x5
| | | | | "Physical Interconnect" = "ATA"
| | | | | "IOMatchCategory" = "IODefaultMatchCategory"
| | | | | "IOPowerManagement" = {"ChildrenPowerState"=0x2,"CurrentPowerState"=0x2}
| | | | | "IOClass" = "AppleALiATADriver"
| | | | | "Drive 1 PIO Mode" = 0x4
| | | | | }
| | | | |


In addition, AppleVIAATA should be removed or at least ALi/ULi ID inside of it to avoid conflicts. If you have ALi/ULi motherboard, you can give it a try.

Chun-Nan

P.S. I have not tested this driver under Tiger, but it should work.

==========

Click to view attachment


Hi Chun-Nan,
Thanks for working on Ali/Uli Driver, this has been big problem for many of us with notebooks that have the Ali m5229 Bus master controller ( 0x522910b9 ).
I have tried your kext but still get the 'waiting for root device' error on boot.
I can test anything you need if you are interested. I've attached ioreg, and dmesg. I am using Tiger 10.4.11, also, this laptop is ATA only, no SATA, I don't know if this makes a difference. I have also removed AppleVIAATA.kext and deleted mkext.
I already use your IOPCIFamily.kext and it works great.
Thanks again,
rj
~Eureka
QUOTE(rjstrat @ Aug 30 2008, 03:17 PM) *
Hi Chun-Nan,
Thanks for working on Ali/Uli Driver, this has been big problem for many of us with notebooks that have the Ali m5229 Bus master controller ( 0x522910b9 ).
I have tried your kext but still get the 'waiting for root device' error on boot.
I can test anything you need if you are interested. I've attached ioreg, and dmesg. I am using Tiger 10.4.11, also, this laptop is ATA only, no SATA, I don't know if this makes a difference. I have also removed AppleVIAATA.kext and deleted mkext.
I already use your IOPCIFamily.kext and it works great.
Thanks again,
rj


Hi rjstrat,

If possible, can you post the picture of "waiting for root device" while using AppleALiATA under single user mode? I would like to know if there are other error messages shown. Thanks.

Chun-Nan
rjstrat
QUOTE(Chun-Nan @ Aug 30 2008, 05:18 PM) *
Hi rjstrat,

If possible, can you post the picture of "waiting for root device" while using AppleALiATA under single user mode? I would like to know if there are other error messages shown. Thanks.

Chun-Nan



Hi Chun-Nan,
I am away from my hack right now so I will post pics later.
It detects Ali M5229 chip but says 'unable to find root device', go's thru pccard detection/setup, gets to firewire detection, and hangs with error 'still waiting for root device'. It appears that when Ali M5229 chip is detected, the hard drive freezes ( light stuck on ). There are no other error messages displayed and I don't see any info from hard drive set up other than initial detection. This is an IGP ( shared graphics memory )notebook, do you think this could be issue?

I will post more info later, Thanks again,

rj
~Eureka
QUOTE(rjstrat @ Sep 2 2008, 09:17 AM) *
Hi Chun-Nan,
I am away from my hack right now so I will post pics later.
It detects Ali M5229 chip but says 'unable to find root device', go's thru pccard detection/setup, gets to firewire detection, and hangs with error 'still waiting for root device'. It appears that when Ali M5229 chip is detected, the hard drive freezes ( light stuck on ). There are no other error messages displayed and I don't see any info from hard drive set up other than initial detection. This is an IGP ( shared graphics memory )notebook, do you think this could be issue?

I will post more info later, Thanks again,

rj


Hi rjstrat,

Are there any error messages related to IOATAController or something like that?

Chun-Nan
rjstrat
QUOTE(Chun-Nan @ Sep 3 2008, 08:06 PM) *
Hi rjstrat,

Are there any error messages related to IOATAController or something like that?

Chun-Nan


Hi Chun-Nan,
There are no errors displayed, until I use power button to shut down, it flashes something like 'IOATAController device blocking bus'.

rj
~Eureka
QUOTE(rjstrat @ Sep 3 2008, 07:44 PM) *
Hi Chun-Nan,
There are no errors displayed, until I use power button to shut down, it flashes something like 'IOATAController device blocking bus'.

rj


Hi rjstrat,

You can try this one to see if it works. Let me know the result. Thanks.

Chun-Nan

Click to view attachment
gengstapo
hi guys,

just askin, if i install in my kaly 10.5.2, could it enable the burn support to cd/ dvd?

TQ
rjstrat
QUOTE(Chun-Nan @ Sep 6 2008, 03:09 AM) *
Hi rjstrat,

You can try this one to see if it works. Let me know the result. Thanks.

Chun-Nan



Hi Chun-Nan,
Thanks for helping me with this. With new .kext I still get boot hang right after firewire set up with 'still waiting for root device' error, and when I hold power button to shut down, it say's 'IOATADevice blocking bus'. I took a picture of screen, don't know if it will help much.
Is there any info I can give that would be more helpful?
Thanks again,
rj
bellaco
Hi i installed your AliUli.kext and it worked the moment i install it, after that i removed
the appleviiata.kext as sugessted and restart and now i boot hang whats up?

I am using kalyway 10.5.2 on a Gigabyte GA-K8U/Uli M1689, dualboot
Ide0 Seagate with chain0 XP
Westerndigital Backup
Ide1 Liteon DVD Burner
Seagate Barracuda(OSX)disk for mac only
Sata Maxtor drive

I have tried the safe boot -x and -v,-F and nothing
I was very excited because i could access the maxtor sata drive and then i cant boot.
How can i return where i was or fix this?

Thanks.
~Eureka
QUOTE(bellaco @ Sep 10 2008, 01:05 AM) *
Hi i installed your AliUli.kext and it worked the moment i install it, after that i removed
the appleviiata.kext as sugessted and restart and now i boot hang whats up?

I am using kalyway 10.5.2 on a Gigabyte GA-K8U/Uli M1689, dualboot
Ide0 Seagate with chain0 XP
Westerndigital Backup
Ide1 Liteon DVD Burner
Seagate Barracuda(OSX)disk for mac only
Sata Maxtor drive

I have tried the safe boot -x and -v,-F and nothing
I was very excited because i could access the maxtor sata drive and then i cant boot.
How can i return where i was or fix this?

Thanks.


Hi bellaco,

Sorry that it caused your system hang. You can boot with kalyway DVD and go to the terminal to copy appleviiata.kext back to your OSX Disk. (appleviiata should be located in /System/Library/Extensions) It should fix the problem.

In order to help me find the problem, can you boot with -f -s and let me know what error messages it showed or take a picture if possibl? Thanks.

Chun-Nan
rjstrat
QUOTE(Chun-Nan @ Sep 10 2008, 02:36 AM) *
Hi bellaco,

Sorry that it caused your system hang. You can boot with kalyway DVD and go to the terminal to copy appleviiata.kext back to your OSX Disk. (appleviiata should be located in /System/Library/Extensions) It should fix the problem.

In order to help me find the problem, can you boot with -f -s and let me know what error messages it showed or take a picture if possibl? Thanks.

Chun-Nan


Hi Chun-Nan,
I also tried -f -s boot and got same result, boot freeze at same spot, no difference from photo I posted. When I power off it still flashes 'IOATADevice blocking bus'.
I am willing to help any way I can. Is there any other way to debug driver?
Thanks,
rj
~Eureka
QUOTE(rjstrat @ Sep 10 2008, 04:35 PM) *
Hi Chun-Nan,
I also tried -f -s boot and got same result, boot freeze at same spot, no difference from photo I posted. When I power off it still flashes 'IOATADevice blocking bus'.
I am willing to help any way I can. Is there any other way to debug driver?
Thanks,
rj


Hi rjstrat,

Please try this one to see if it works. I have revised it and also turned on the debug info function.

I will suggest you leave AppleGenericPCATA in the extension folder. You can boot with "aliata=0" to prevent AppleALiATA from loading so that if AppleALiATA doesn't work, you can still use AppleGenericPCATA.

Let me know the result. If possibe, post the pictures under single user mode. Thanks.

Chun-Nan

Click to view attachment
rjstrat
QUOTE(Chun-Nan @ Sep 11 2008, 01:55 AM) *
Hi rjstrat,

Please try this one to see if it works. I have revised it and also turned on the debug info function.

I will suggest you leave AppleGenericPCATA in the extension folder. You can boot with "aliata=0" to prevent AppleALiATA from loading so that if AppleALiATA doesn't work, you can still use AppleGenericPCATA.

Let me know the result. If possibe, post the pictures under single user mode. Thanks.

Chun-Nan

Click to view attachment

Hi Chun_Nan,
Still get 'root device' error, but hopefully you can get useful info from debug.
What I have noticed is that as soon as the m5229 chip is detected the drive light stays lit but with no drive activity, hard drive frozen, with no recovery, that's why can't boot -f -s or -x. Maybe once the ATA controller is detected/set up, there needs to be some kind of break command, or fresh drive scan. I really don't know, as it is well beyond my capability to interpret code. I hope there's something you can do. I'm ready to test anything you have.
Thanks again,
rj
~Eureka
QUOTE(rjstrat @ Sep 11 2008, 07:15 PM) *
Hi Chun_Nan,
Still get 'root device' error, but hopefully you can get useful info from debug.
What I have noticed is that as soon as the m5229 chip is detected the drive light stays lit but with no drive activity, hard drive frozen, with no recovery, that's why can't boot -f -s or -x. Maybe once the ATA controller is detected/set up, there needs to be some kind of break command, or fresh drive scan. I really don't know, as it is well beyond my capability to interpret code. I hope there's something you can do. I'm ready to test anything you have.
Thanks again,
rj


Hi rjstrat,

Sorry for the late reply. I checked your ioreg again. It showed that you have "pci10b9,1533" (ISA bridge) on your notebook. I think maybe that is the reason. However, the desktop I use doesn't have that device. I will check linux/freebsd source code to see if I can figure out anything.

If possible, I would like you to try this AppleATAPort kext to see if it works on your notebook. (However, it only supports up to UDMA2.) You can leave AppleGenericPCATA in the extension folder, without AppleALiATA. You can boot with "ataport=0" to prevent AppleATAPort from loading in case that it doesn't work, you can still use AppleGenericPCATA.

Let me know the result. Thanks.

Chun-Nan

Click to view attachment
rjstrat
QUOTE(Chun-Nan @ Sep 17 2008, 04:03 AM) *
Hi rjstrat,

Sorry for the late reply. I checked your ioreg again. It showed that you have "pci10b9,1533" (ISA bridge) on your notebook. I think maybe that is the reason. However, the desktop I use doesn't have that device. I will check linux/freebsd source code to see if I can figure out anything.

If possible, I would like you to try this AppleATAPort kext to see if it works on your notebook. (However, it only supports up to UDMA2.) You can leave AppleGenericPCATA in the extension folder, without AppleALiATA. You can boot with "ataport=0" to prevent AppleATAPort from loading in case that it doesn't work, you can still use AppleGenericPCATA.

Let me know the result. Thanks.

Chun-Nan

Click to view attachment



Hi Chun-Nan,
Thanks for the .kext, I'll try it later today.
The south bridge is actually Ali M1535+. I don't know if that makes a difference.
I will post results later.
Thanks again,
rj
rjstrat
QUOTE(rjstrat @ Sep 17 2008, 06:50 AM) *
Hi Chun-Nan,
Thanks for the .kext, I'll try it later today.
The south bridge is actually Ali M1535+. I don't know if that makes a difference.
I will post results later.
Thanks again,
rj


Hi Chun-Nan,
Sorry so long for reply, I've been out of town.
I tried the .kext and boot still hangs at 'still waiting for root device', only difference is I don't see any chip detection for ATA/IDE device, but otherwise, same as before, so when I power off, it still flashes 'IOATADevice blocking bus' error before shutting down.
I'm ready to test anything else you might have.
Thanks again,
rj
~Eureka
QUOTE(rjstrat @ Sep 24 2008, 05:29 AM) *
Hi Chun-Nan,
Sorry so long for reply, I've been out of town.
I tried the .kext and boot still hangs at 'still waiting for root device', only difference is I don't see any chip detection for ATA/IDE device, but otherwise, same as before, so when I power off, it still flashes 'IOATADevice blocking bus' error before shutting down.
I'm ready to test anything else you might have.
Thanks again,
rj


Hi rjstrat,

Can you try this kext to see if it works? (It is compiled under Leopard because I don't have Tiger installed right now.)

Thanks.

Chun-Nan

Click to view attachment
rjstrat
QUOTE(~Eureka @ Oct 11 2008, 05:43 PM) *
Hi rjstrat,

Can you try this kext to see if it works? (It is compiled under Leopard because I don't have Tiger installed right now.)

Thanks.

Chun-Nan

Click to view attachment


Hi Chun-Nan,
Thanks for continued work on this driver.
I tried .kext and got this on boot:
CODE
15AppleALiATARoot is not compatible with its superclass, 9IOService superclass changed?
\^[[33mFailed to load extension com.apple.driver.AppleALiATA.
\^[[0mCouldn't alloc class "AppleALiATARoot"

I have attached dmesg, maybe I could compile your source under Tiger?
Thanks again,
rj
~Eureka
QUOTE(rjstrat @ Oct 13 2008, 08:34 AM) *
Hi Chun-Nan,
Thanks for continued work on this driver.
I tried .kext and got this on boot:
CODE
15AppleALiATARoot is not compatible with its superclass, 9IOService superclass changed?
\^[[33mFailed to load extension com.apple.driver.AppleALiATA.
\^[[0mCouldn't alloc class "AppleALiATARoot"

I have attached dmesg, maybe I could compile your source under Tiger?
Thanks again,
rj


Hi rjstrat,

That is what I was afraid of. I have uploaded the source code on the 1st post. You can try to compile it under Tiger to see if it works. Let me know the result. Thanks.

Chun-Nan
rjstrat
QUOTE(~Eureka @ Oct 14 2008, 11:59 AM) *
Hi rjstrat,

That is what I was afraid of. I have uploaded the source code on the 1st post. You can try to compile it under Tiger to see if it works. Let me know the result. Thanks.

Chun-Nan



Hi Chun-Nan,
I tried to recompile .kext in Tiger Xcode, but still unable to use driver.
I no longer get error message on boot, but no chip detection either, boot continues
with the apple generic ata .kext. I am able to load kext thru kextload with no errors.
I have also tried to remove generic ata kext, but then no boot, for some reason ALiATA.kext is not detecting chip.
Maybe I'm doing something wrong?
Again, all your help is greatly appreciated.
Thanks,
rj
seakon
Hi Chun-Nan:
rolleyes.gif Having heared of u for a long time ,And I am using that kind of ide controller ,got tiger 10.4.11,and downloading xcodes ,going to compile the source code U post #1.
AND I got "superclass" error after using aliata U post .
The downloading may take some hours (:-( My 1.5M adsl in China).
BTY,motherboard:asus p5rd1-vm,desktop.ide only no sata.

And thanks for your drivers..:-)
Seakon
seakon
It works perfectly..
THK SOOOOOOOOOOOOO MUCH
lunux
Thank you Chu Nan

your kext AppleATAPort is perfect for my system, it was extremely slow ,but thanks to your kext now runs very fast. My is a laptop Packard Bell AMD Sempron ( LEO4All V2) I/O M1573 ALI /ULI south bridge 1573 bus PCI-Express Link ULI HD Audio M 1573 , ATI xpress 200 video .
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.