Jump to content

Darwin nForce4 ATA/SATA controller


Guest bikedude880
 Share

1,033 posts in this topic

Recommended Posts

I didn't mean to down ya, ghaza. I commend you for what you've done so far (even though its not tangible stuff as of yet.)

It's just usually it seems around here someone says something and nothing happens.

I guess I really just wanna get this chipset working properly.

Vista is making me crazy, man!

Link to comment
Share on other sites

I didn't mean to down ya, ghaza. I commend you for what you've done so far (even though its not tangible stuff as of yet.)

It's just usually it seems around here someone says something and nothing happens.

I guess I really just wanna get this chipset working properly.

Vista is making me crazy, man!

 

I know the feeling...why do you think I'm trying this? I got it working with the external disk but it is an ugly solution. I've got four 500GB Deskstars that are sitting idle and I want to use them for something more than Vista. Next trick if I manage to pull this off would be to check out some sort of RAID driver. As far as I know Linux driver doesn't support NForce RAID either so it may be a bit harder to figure out.

Link to comment
Share on other sites

Guest AaloPalto
The benefits would be a driver that fully supported NCQ as well as (hopefully) other ADMA chipsets.

 

You should try to get the NVSATA to work stable an w/o errors, before implementing additional features?

I think you have to change major parts of IOATAFamily to do this, means i doubt you will be succesfull on that.

Link to comment
Share on other sites

You should try to get the NVSATA to work stable an w/o errors, before implementing additional features?

I think you have to change major parts of IOATAFamily to do this, means i doubt you will be succesfull on that.

 

I think that the NCQ support will basically come for 'free' once I get the ADMA engine working, at least from the controller driver perspective. It may be that the client of IOATADevice objects cannot make use of that support without modification, in which case that will be out of scope for me. In any case of course I am developing this in steps and my first priority will be basic support for SATA ATA devices. The Linux driver documents that ATAPI commands aren't processed by ADMA even though the ADMA spec states that they should, so working around that will be a lesser priority for me. Right now I'm not thinking I'll have to change major parts of IOATAFamily; I think I can accomplish what I need to by subclassing IOATACommand, IOATADevice, and IOATAController (the trickier parts), while implementing new channel and root nubs (trivial). In any case the end result will be a completely new driver rather than a hack of the existing ATA code, which will make deployment simpler (no need to replace existing kexts or worry about overwrites by system updates). By the way, I think I have a suspect for what is wrong with the existing drivers that further enforces my desire to write a new driver. All of the existing PCI ATA drivers (AppleVIAATA, ApplePIIXATA, AppleOnboardPCATA) use the bus mastering ATA registers, which are located at PCI BAR 4. On an ADMA chipset, PCI BAR 4 is not I/O mapped to the bus mastering registers but instead is a memory-mapped region to the ADMA registers and ATA shadow registers. I haven't done enough digging to figure out what the exact behavior should be if the driver does not find the bus master registers as expected, but the use of them is buried deep enough in the IOATAFamily code that fixing the existing drivers to NOT use them would probably be very tricky.

Link to comment
Share on other sites

Ghakazian, as an end user of this chipset, I am really happy to see somebody like you are working hard on this. I'm not a real programmer/hacker, but just wondering if there is anything users can do to help you through?

 

Really appreciate your great post here! :thumbsup_anim::trumpet:

Link to comment
Share on other sites

Ghakazian, as an end user of this chipset, I am really happy to see somebody like you are working hard on this. I'm not a real programmer/hacker, but just wondering if there is anything users can do to help you through?

 

Really appreciate your great post here! :happymac::trumpet:

 

Not at the moment but certainly as I get some code going I will probably be looking for testers. People who have working osx86 installs on machines with nforce 430 chipsets (mine is ASUS P5N SLI) via either PATA or USB disks will be most useful early-on, as the first driver versions will likely not be useful for installation.

Link to comment
Share on other sites

this terrible chipset.

 

It's not really the chipset's fault that OS X doesn't have drivers now, is it? I'm not happy with nForce chipsets right now, but that's certainly not why...

 

The development community over here is pretty pathetic, I must say. Whatever happened to helping each other out?

 

Yep. Great way to get anybody who was still interested in developing this to talk to you. Call them pathetic...

Link to comment
Share on other sites

The chipset really isn't that great, dude.

I've seen $20 SATA cards that perform better.

 

And I stick to the development community sucking on here/

It mainly (not all, but mostly) consists of 20 15 year olds that modify the Info.plist of an already existing kext to support their vendor/device ID and call it "khalids new SATA driver" etc etc.

 

Flame me again, but it's true.

Hell, even ghaza seems to realize this.

 

Anyway dude, don't get your panties all in a bunch over a post I made while pissed at the situation.

I offered to help with this code too, by the way. No one replied though.

That's why I called the dev community pathetic.

Good day, bruh.

Link to comment
Share on other sites

Not at the moment but certainly as I get some code going I will probably be looking for testers. People who have working osx86 installs on machines with nforce 430 chipsets (mine is ASUS P5N SLI) via either PATA or USB disks will be most useful early-on, as the first driver versions will likely not be useful for installation.

 

Well, when that time comes, sign me up! I helped MeDevil test his driver some time ago in his # untill he stopped coming on... :(

But in all seriousness, I'm very excited to see someone set aside some time to help the community out. I wish you the best of luck... seriously! Don't hesitate to use our machines as guinea pigs, lol

Link to comment
Share on other sites

The chipset really isn't that great, dude.

I've seen $20 SATA cards that perform better.

 

And I stick to the development community sucking on here/

It mainly (not all, but mostly) consists of 20 15 year olds that modify the Info.plist of an already existing kext to support their vendor/device ID and call it "khalids new SATA driver" etc etc.

 

Flame me again, but it's true.

Hell, even ghaza seems to realize this.

 

Anyway dude, don't get your panties all in a bunch over a post I made while pissed at the situation.

I offered to help with this code too, by the way. No one replied though.

That's why I called the dev community pathetic.

Good day, bruh.

 

So let me get this straight.

 

1. You're angry, because you can't run a pirated operating system on incompatible hardware.

 

2. You're asking for a person with a high level of familiarity with the MCP51 chipset (likely only obtainable under NDA), BSD mach kernel drivers, and the Mac OS IOKit framework, to write you a driver for the pirated operating system to run on your imcompatible hardware, for free, in their spare time.

 

3. You don't get an immediate response to your request. This also makes you angry.

 

4. That anger is an excuse to insult other members of the forum, who have provided solutions in the past.

 

I have four questions for you.

 

1. Do you REALLY think your request is reasonable?

 

2. If you really want to run Mac OS on SATA hard drives, why haven't you bought a Mac? The Mac Pro has both hardware and software SATA RAID support.

 

3. What significant contributions have you made to the community?

 

4. How old are you?

Link to comment
Share on other sites

tokyovigilante (are you really from tokyo?), I never said ONCE I wanted someone to write me a driver.

Maybe you need to practice your reading skills. (Just a suggestion, don't take it personal.)

I asked simply for medevil or anyone else that's worked with this chipset for information regarding it, so I (I bolded that so you could read it PROPERLY. I I I I I as in ME!) could attempt to make a port of the driver to our lovely OSX.

 

And yes, while I may be running a pirated copy on my laptop, I do have a REAL (yes real as in tangible!) Mac sitting only a few feet away.

And while it does work & do everything I request of it, it simply isn't portable.

Hell, I'd have bought a MB/MBP if I could have got one for the price I paid for this lovely laptop.

Just thought I'd letcha' know.

Good day, buddy!

Link to comment
Share on other sites

I just wanted to point out that everyone installing OSX isn't doing so via pirated versions. I'm not one of those folks, however. :D
Those that haven't (myself not included, although I have two other real Macs in the house) are violating the licence clause which states the OS may not be installed on "beige box" PCs.
tokyovigilante (are you really from tokyo?), I never said ONCE I wanted someone to write me a driver.Maybe you need to practice your reading skills. (Just a suggestion, don't take it personal.)I asked simply for medevil or anyone else that's worked with this chipset for information regarding it, so I (I bolded that so you could read it PROPERLY. I I I I I as in ME!) could attempt to make a port of the driver to our lovely OSX.And yes, while I may be running a pirated copy on my laptop, I do have a REAL (yes real as in tangible!) Mac sitting only a few feet away.And while it does work & do everything I request of it, it simply isn't portable.Hell, I'd have bought a MB/MBP if I could have got one for the price I paid for this lovely laptop.Just thought I'd letcha' know.Good day, buddy!
If you have the requisite knowledge to write an IOKit driver for the MCP51, and only require the technical implementation details, then I take my hat off to you. That doesn't excuse you from your attitude and insulting comments.

 

No, I'm not from Tokyo.

Link to comment
Share on other sites

The chipset really isn't that great, dude.

I've seen $20 SATA cards that perform better.

 

Really, because last time I checked, SATA controllers that cost $20 were PCI. I could run a RAID on an nForce 430-equipped board that would easily max out the 133MB/s 33MHz, 32-bit PCI is capable of. Bar that, I haven't seen any specific performance problems with NVidia's SATA controllers anyway. They're usually within a hair of the performance of the controllers built into Intel's ICHs... Ever used a Silicon Image SATA controller? That's what's on most cheap SATA cards, and last time I used one of those I almost ended up chucking it out of the window.

 

Anyway dude, don't get your panties all in a bunch over a post I made while pissed at the situation.

I offered to help with this code too, by the way. No one replied though.

That's why I called the dev community pathetic.

Good day, bruh.

 

You can't offer to help code something nobody else is working on, because help implies collaboration, which there cannot be if only you are willing to work on it. Anyway, bitterly complaining in combination with insulting people isn't going to get you anywhere, and certainly isn't going to make people like you.

Link to comment
Share on other sites

Anyone interested in an interim PIO-mode-only driver for the NForce 430 chipset? This would be extrememly ugly in performance (max aroung 16MB/s I think) but I think I could get something along these lines working very quickly while the ADMA driver is going to take some time.

Link to comment
Share on other sites

Anyone interested in an interim PIO-mode-only driver for the NForce 430 chipset? This would be extrememly ugly in performance (max aroung 16MB/s I think) but I think I could get something along these lines working very quickly while the ADMA driver is going to take some time.

 

As I said, I would be very glad to try anything for this test driver... :P

Link to comment
Share on other sites

I'll join in testing (as an average person...I dunno how much everyone else knows in comparison to me) later in the game. I don't really have a place to save all my important stuff right now to be fooling around, or the time.

 

I'm so glad to see you're making some sort of progress! :D

Link to comment
Share on other sites

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.

Link to comment
Share on other sites

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.

Congratulations, that sounds really promising.

 

Do you have the source up anywhere?

Link to comment
Share on other sites

 Share

×
×
  • Create New...