Jump to content

Darwin nForce4 ATA/SATA controller


Guest bikedude880
 Share

1,033 posts in this topic

Recommended Posts

I just wanted to give everyone a quick update. It looks like I've got the previously-mentioned PIO mode driver working, with one caveat...it doesn't work with 48-bit extended LBA. When I enable LBA I get invalid volume errors and eventual hang. SO...after I clean things up a bit, hopefully tonight, I will try and get out a build of the PIO-mode driver for folks to play around with. You won't be able to use more than 128GB but it will be better than nothing.

Awesome work, ghakazian! This is great news!

Link to comment
Share on other sites

hey i have a running installatoion of osx via my thumb drive on my hp tx1000 notebook everything works leaving the sata even the touchh screen works tooooooooo..............

ghaka i can test the drivers for my notebook.... ^_^

Link to comment
Share on other sites

Hi!

 

Did someone manage to install osx onto an external drive connecting via usb? I tried 5 versions but none worked. Uphuck for example hangs at "Started CPU 01". The Jas release works but only when no external drive is attached. This is not much of a help because I also have nforce430. If I attach the usb drive later than I can install osx, but by the first boot it stops by AppleNvidiaNforceATA: ...

I think the next kext is AppleIOUSBOHCI, or something.

 

Any ideas?

 

Thx in advance,

 

ahorvath

Link to comment
Share on other sites

Hi!

 

Did someone manage to install osx onto an external drive connecting via usb? I tried 5 versions but none worked. Uphuck for example hangs at "Started CPU 01". The Jas release works but only when no external drive is attached. This is not much of a help because I also have nforce430. If I attach the usb drive later than I can install osx, but by the first boot it stops by AppleNvidiaNforceATA: ...

I think the next kext is AppleIOUSBOHCI, or something.

 

Any ideas?

 

Thx in advance,

 

ahorvath

 

I've got mine installed to a 2.5" IDE in a USB enclosure. I installed with JaS 1.4.8 SSE2+SSE3. Nothing really unique on the install...the USB drive shows up in Disk Utility and can be erased and installed to. Just make sure you have a FAT32 or Mac OS Extended filesystem on it first. I'm installing on an ASUS P5N-SLI; had to specify "platform=x86pc" before booting the DVD in order for the installed OS to boot okay afterwards, but that was the only trick I had to do, and it didn't actually affect installing to USB.

 

By the way, I ran into a hiccup getting the driver working; namely I ran into problems trying to update to 8.9 kernel and ended up having to rebuild my OSX box. Hope to have it up tonight though.

Link to comment
Share on other sites

Thx for your reply ghakazian. With the Jas version I managed to install OSX to the USB drive without unplugging it while the installer starts. But the result is the same. Does not matter what boot argument I use I cannot make it step over this wicked "Started CPU 01" message.

It makes me angry because I wanted to dig a bit into the nforce stuff and maybe test your driver.

 

Now I am trying the Uphuck 1.4r3. This is the sixth osx version, I hope some digital Goddess will smile upon me this time :-)

 

Bye!

 

ahorvath

Link to comment
Share on other sites

Thx for your reply ghakazian. With the Jas version I managed to install OSX to the USB drive without unplugging it while the installer starts. But the result is the same. Does not matter what boot argument I use I cannot make it step over this wicked "Started CPU 01" message.

It makes me angry because I wanted to dig a bit into the nforce stuff and maybe test your driver.

 

Now I am trying the Uphuck 1.4r3. This is the sixth osx version, I hope some digital Goddess will smile upon me this time :-)

 

Bye!

 

ahorvath

 

Post your configuration and describe your panic in more details, so people can give you more help.

Link to comment
Share on other sites

My config:

MSI M673 notebook:

 

-AMD® Mobile Processor Turion64x2

-NVIDIA GeForce Go 6100 (C51MV)+ nForce Go 430 (MCP51M) Chipset

-NVidia Geforce Go 7400 256MB Turbo Cache

-SATA HDD 120G

-Azalia / SB compatible soundcard

-1G DDR2

 

Since it's an nforce 430 I decided to install osx to an external drive. This works, but I cannot boot the freshly installed os.

If I set cpus=2 then there is no kernel panic. But whatever I do Uphuck DVDs stop at "Started CPU 01", Jas DVD stops at "AppleNvidiaNforceATA: ..."

 

 

This is what I experience. What else may be useful?

 

Thx,

 

ahorvath

Link to comment
Share on other sites

You might also try disabling one of your cores in BIOS before doing the install. I believe I read somewhere that that can cause some problems during install; you can re-enable them I think after install. *shrug*.

 

Finally got my system up and running. Got the PIO mode driver working, or at least it appears to work so far. I have yet to try moving my system files to it but am going to try that right now. Extended LBA continues to be a problem so that is disabled right now. This is actually really simple; it is the AppleVIAATA.kext with UDMA, MDMA, and Extended LBA disabled. The PIO mode ended up being the same as AppleGenericPCATA that I first used so rather than doing the frankenstein thing I just modified AppleVIAATA.

 

Here is the first stab at the driver. Let me know how it works. The Info.plist file has an entry for only the first SATA controller on NForce430 (0x026610de). To use both channels (or all if you have more), just add the appropriate controller ID (for mine it would be 0x026710de).

AppleVIAATA.kext.zip

Link to comment
Share on other sites

Woot!

Sep 14 01:09:38 localhost kernel[0]: AppleVIAATADriver: VIA 8237 SATA (CMD 0x960, CTR 0xb60, IRQ 23, BM 0xcc08)

Seems to be working fine over here :)

EDIT:

Oh my god. I'm actually writing to my sata disk... help... my heart just stopped. I can't breathe.I used ntfs-3g to write to my windows vista disk. Something tells me, though, that it won't be installed there for much longer...

Link to comment
Share on other sites

Like I mentioned before, don't expect much in the way of performance, and the no-extended-LBA really bites, at least for me sitting on four 500GB Hitachis. But at least now hopefully I can move my dev off of this USB which seems really slow. Thats why I only used one controller's device ID; I can work on my ADMA driver and have it match to the second controllerOkay, I am happy...I just dd'ed my OSX install from USB to SATA from a linux bootcd and was able to boot off SATA on the first try. Seems to be a bit faster than the USB drive so all is good. Now on to the hard stuff :)

Link to comment
Share on other sites

Here are some dev ID's I placed in the info.plist. Maybe some of them can be helpful for those that don't know how to find them.

	
<key>VIA SATA Controller</key>
	<dict>
			   ...
		<string>]0x31491106 0x005410de 0x005510de 0x003610de 0x003e10de 0x026610de 0x026710de 0x037e10de 0x037f10de 0x03f610de 0x03f710de 0x03e710de 0x00ee10de 0x00e310de 0x045c10de 0x045d10de 0x045e10de 0x045f10de </string>
			  ...
	</dict>

 

As for performance, well, lets just say I understand why PIO was succeeded. While writing to my sata disk, I noticed kernel_task using 50% on both cores. Did PIO use this much processing power back in the day while writing to disks or other storage devices?

Link to comment
Share on other sites

Here are some dev ID's I placed in the info.plist. Maybe some of them can be helpful for those that don't know how to find them.

	
 <key>VIA SATA Controller</key>
	 <dict>
				...
		 <string>]0x31491106 0x005410de 0x005510de 0x003610de 0x003e10de 0x026610de 0x026710de 0x037e10de 0x037f10de 0x03f610de 0x03f710de 0x03e710de 0x00ee10de 0x00e310de 0x045c10de 0x045d10de 0x045e10de 0x045f10de </string>
			   ...
	 </dict>

 

As for performance, well, lets just say I understand why PIO was succeeded. While writing to my sata disk, I noticed kernel_task using 50% on both cores. Did PIO use this much processing power back in the day while writing to disks or other storage devices?

My initial comment of it seeming faster was based purely on BIOS loading kexts, which is faster than USB emulation apparently. A multithreaded OS however brings it to its knees. Back in the day I imagine the cpu hit wasn't quite as noticable because ppl didn't run many multithreaded apps. This is horrible right now and I may have to go back to USB. Let the ADMA work proceed as quickly as possible! I was hoping this would work as stopgap but oh well.

Link to comment
Share on other sites

I installed the kext, used NTFS-3g. When I complete a transfer I don't seem to have the right permissions, it says I don't have the right permissions. But thats nothing to do with the driver.

 

Edit: Fat32 works fine. I can even format to HFS+ partitions perfectly. 1gb takes 4 minutes to transfer. However if there is more than 2 partitions on the disk, when trying to access them it freezes.

 

When I am copying something, it uses half the cpu resources as mentioned. One of the cores seem to spike to 100% regularly.

 

The drive shows up as 128GB. It seems to work. Thank you, good job. :unsure: You,ve made my day.

 

Now i will see if I can boot off it and and install to it....

Link to comment
Share on other sites

Thanks ghakazian will surely try it out wen i reach home dude ..is there a way we can include this driver inside tubgirls image as my gf has my bootable disk ... will post the progresss soon as i can get hold on my disk drive... ;)

Link to comment
Share on other sites

Update: It works! albeit a little slow at startup.

 

I patched a tubgirl which boots, formats (128GB only) and it installs like normal and boots up fine. Although while loading darwin it does get stuck sometimes. Good news all round :)

 

CPU Usage is high as expected while accessing the disk.. which is what slows things down in general.

 

Edit: I screwed up about the Xbench thingy. I was tired at the time. SATA is slow.

 

Btw, I am typing off my SATA drive now. Happy times. Keep up the good work.

Link to comment
Share on other sites

Hey Nec, you won't find an actual Extensions folder. Instead, you'll find an Extensions.mkext that you'll have to unpack into a local folder on your HDD.

 

I patched my Tubgirl 10.4.8 Install disk last night and installed from it. As I type, I'm making a new Extensions.mkext with the modified .kext's for the Tubgirl 10.4.10 disk. Also, don't forget to remove MeDevils' AppleNForceATA.kext from the PlugIns folder within IOATAFamily.kext if it was included on the dvd. Not quite sure if it's neccesary, but I didn't know what the result of two sata modules trying to load would be, lol.

Link to comment
Share on other sites

Also, don't forget to remove MeDevils' AppleNForceATA.kext from the PlugIns folder within IOATAFamily.kext if it was included on the dvd. Not quite sure if it's neccesary, but I didn't know what the result of two sata modules trying to load would be, lol.

When I removed the AppleNForceATA.kext my IDE drive became extremely slow and any access would max out my CPU. Keep it.

Link to comment
Share on other sites

 Share

×
×
  • Create New...