Jump to content

Darwin nForce4 ATA/SATA controller


Guest bikedude880
 Share

1,033 posts in this topic

Recommended Posts

Guest bikedude880

Since I have so much free time, I decided to try and write a driver for the nForce series chipsets (nForce/nForce2/nForce3/nForce4) based on the AppleOnboardPCATA kext. This is only a test and I don't expect much to come out of it.

 

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

 

MeDevil has successfully figured out the core problem behind the "Device blocking bus" error. ATA/SATA is recognized, drives are UDMA enabled, and will work with most chipsets after the correct device id is added to the plist file (there are already several id's in there.)

 

Download link

Link to comment
Share on other sites

Ok installed on Nforce 4 SLI board. It works in the sense that I can see ATA and SATA drives and access them. Speed seems a bit slower. Copy at 43 MB a second. I copied 4 GIG of files to SATA Drive on FAT32 Partition, dmg fail checksum when copied to SATA, data corruption still taking place. Hope this helps.

Edited by macwanabe
Link to comment
Share on other sites

What i am running :

- mobo A8N-E with AMD64 X2 3800, ATI X1600, 3x ATA, 1x SATA disks.

- OSX_1048_AMD_SSE3.iso updated with OSX_1048_AMD_SSE3_PPF2, amd_1048_new.txt applied

- SecUpd2006-007Intel.pkg with secupd.txt applied

 

Boot fine apparently no problems but when i check in logs please see what i found:

 

kernel[0]: IOATAController device blocking bus.

kernel[0]: IOATAController device blocking bus.

mDNSResponder: mDNSPlatformRawTime: last_mach_absolute_time 066372A700000013

mDNSResponder: mDNSPlatformRawTime: this_mach_absolute_time 066364F700000013

kernel[0]: IOATAController device blocking bus.

kernel[0]: jnl: flushing fs disk buffer returned 0x3c

diskarbitrationd[57]: disk1s2 hfs 5F6A1098-CA22-3F01-983F-F60CB5527410 SATA /Volumes/SATA

 

Otherwise with small files <= 650MB the checksum is always the same.

With big files at the second try the checksum is diffrent.

 

MD5 (/Volumes/SATA/OPERATING SYSTEM - CD-DVD/Mac OS X 10.4.6 Retail Install DVD (PPC)/Mac OS X Install DVD.dmg) = ced07c1007caab786a185f0f7e148470

 

MD5 (/Volumes/SATA/OPERATING SYSTEM - CD-DVD/Mac OS X 10.4.6 Retail Install DVD (PPC)/Mac OS X Install DVD.dmg) = ffe439e2db58201747dfc352dc9433b2

Link to comment
Share on other sites

why not start with Hamlo's driver and try to fix that one??

Up so far, nobody has really written a kext from scratch (i.e. mine was based on nForceATA, hamlo's latest was a remix of different kexts with some custom pieces, and i dunno about this one).

But as I said, I think writing from scratch is useless unless we understand WHAT'S FAILING first. Cause If I were to write a new kext, I would end up copy VIAATA's, "Because that one should have worked ".

So I think it's better to just try to edit current avalaible kexts ("try & crash & try again with a different value" procedure) than to lose time rewriting.

Link to comment
Share on other sites

Guest bikedude880

This one is based off of Apples older nForce kext. It sounds like timing is still off and a couple of access registers are not properly mapped. I will take a look at it when I have the time.

Link to comment
Share on other sites

Guest bikedude880
Up so far, nobody has really written a kext from scratch (i.e. mine was based on nForceATA, hamlo's latest was a remix of different kexts with some custom pieces, and i dunno about this one).

But as I said, I think writing from scratch is useless unless we understand WHAT'S FAILING first. Cause If I were to write a new kext, I would end up copy VIAATA's, "Because that one should have worked ".

So I think it's better to just try to edit current avalaible kexts ("try & crash & try again with a different value" procedure) than to lose time rewriting.

 

I'm currently working at getting the VIA ATA kext working with the SiS chipset and it has roughly the same source as the nForce ATA kext. I will try to output error message to the system log.

Link to comment
Share on other sites

Guest bikedude880
Good to know tat somebody is still trying to make this work.... :D

 

It would work even better if I could find the proper timing values and registers ;)

Link to comment
Share on other sites

Please find attached 3 files from FreeBSD sources, not sure it could be helpfull

but in ata-chipset.c there is a lot timing

 

From the man page i post here :

http://forum.insanelymac.com/index.php?sho...091&st=120#

 

The currently supported ATA/SATA controller chips are:

.......

nVidia: nForce, nForce2, nForce2 MCP, nForce3, nForce3 MCP,

nForce3 Pro, nForce4.

 

Good work, i try by myself to understand how it works but my knowledge is

inadequate.

ata_from_free_BSD.zip

Link to comment
Share on other sites

Guest bikedude880
Please find attached 3 files from FreeBSD sources, not sure it could be helpfull

but in ata-chipset.c there is a lot timing

...

 

The problem with the timing in that file is that they are in the format 0x28269008 and not 0x13 .

 

what about nForce 410/430 controllers?!? I try this one with mine, but it didn't even initializated, and I got still waiting bla bla bla again... AppleVIAATA detected my controller but frozed just after that with a read/write error

 

Working on that. My focus is in other places.

Leopard.

 

Link to comment
Share on other sites

Guest bikedude880
please someone!! make it working on 410/430!!! :thumbsup_anim:

 

I don't know what more to do to get my notebook SATA HD working on OSX . . . :)

 

Give it time, these things don't just pop out of people asses :P

 

Granted I have been a tad busy doing other things, I have not forgotten about this project. I'll take a look at it tonight.

Link to comment
Share on other sites

doesn't anyone know how to make this driver work?? it's been a work in progress for ages with countless threads and yet still the best solution is this VIAATA kext which just corrupts files. With some of the work you guys are doing, rewriting kernels, getting leopard running, a mere SATA Driver can't be that much of a challenge, anyways I think its great that some people are continually trying and showing support and i thank them for that but still as yet we have no solution. So what's the latest on this?

Link to comment
Share on other sites

Guest bikedude880
Bikedude880...I know this can get irritating,but could'nt resist...any UPDATES ??

 

Not as of yet. I've been busy with the holidays, Leo, and whatever bit of life I have left. :P

 

Hopefully when the New Year comes, so will some new development ;)

Link to comment
Share on other sites

 Share

×
×
  • Create New...