PDA

View Full Version : AppleVIAATA, JMicron and AppleNForceATA over 4gb RAM bug solved!


Voyn1x
11-05-2008, 02:58 PM
I know this issue has affected many members here, i'm glad to report it seems to have been solved at last. Obviously post any driver feedback in the original thread. :)


Basically, the problem is when you have more than 3 gb of ram (some says 2.5 gb) and AppleVIAATA driver (I think JMicron IDE driver also has this problem).

In my case, I've got 2 IDE HDD and when I upgraded to 4 gb of ram, my desktop started to freeze, or give kernel panics.

After some hours of googling and looking for the driver to solve my issue, i finally made a custom driver that made it.

The problem whas that AppleVIAATA driver used 32 bits addresses to make DMA. In an environment with 4 gb of ram, you need 64 bits addresses. I've rewrited some code so that this kext uses a kernel api wich supports 64 bits.

I think the problem is solved. To generate kernel panics, i used Rember to test all memory, and while this was running, i started to browse mi IDE hdd. After rewriting the driver, i had no more panics!

FAQ:
1- DOES THIS MEAN THE BUG IS SOLVED?
NO! Need testing, i've finished 30 minutes ago and i couldn't test it as much as needed to say it works fine.

2- IS IT A REPLACEMENT FOR APPLEVIAATA.KEXT?
NO! It only solved my IDE problems (I removed some PCIID from Info.plist)

3- CAN I HAVE THE SOURCE CODE TO KEEP DEVELOPMENT?
YES! Just tell me where can i upload it (svn like google code) whithout any legal violation.

4- DO YOU KNOW HOW TO WRITE IN ENGLISH?
NO! I've done such an effort to write this post that i think i'm loosing my mind.

If you need some help, or have some comments, or find some bugs, just post in this thread.

EDIT: JMicronATA added. There are two options. One for debugging, in case it doesn't work. I cannot test them cause i don't have such hardware. Please post info and screenshots of kernel panics booting with -v debug=0x100

EDIT: AppleNForceATA added. Same options as JMicron. Not tested (don't have such hardware)

EDIT: Version 0.6 of JMicronATA, now with interal Icon displayed.




Source (http://forum.insanelymac.com/index.php?showtopic=127611)

LawlessPPC
11-05-2008, 11:37 PM
i can vouch for nfarce430

bhast2
11-11-2008, 09:21 PM
Works great on my system
I am now running 4 GBs of ram

Creatorp
01-18-2010, 10:47 PM
Um...which exactly do i donwload from the google site?

lanceomni
01-18-2010, 11:50 PM
Try the one linked in my signature. Please backup you existing extensions prior to installing

Creatorp
01-18-2010, 11:54 PM
i know but then it tells me to download from google code source and i have the options of
patch.diff (http://darwin-ata.googlecode.com/files/patch.diff) ALPS GlidePoint voodoo patch (http://code.google.com/p/darwin-ata/downloads/detail?name=patch.diff&can=2&q=) Jul 09 (http://code.google.com/p/darwin-ata/downloads/detail?name=patch.diff&can=2&q=) 6.7 KB (http://code.google.com/p/darwin-ata/downloads/detail?name=patch.diff&can=2&q=) 161 (http://code.google.com/p/darwin-ata/downloads/detail?name=patch.diff&can=2&q=)
AppleNForceATA.kext(UNTESTED).zip (http://darwin-ata.googlecode.com/files/AppleNForceATA.kext%28UNTESTED%29.zip) AppleNForceATA 0.1 binary with support for more devices. NEVER TESTED (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleNForceATA.kext%28UNTESTED%29.zip&can=2&q=) Apr 2009 (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleNForceATA.kext%28UNTESTED%29.zip&can=2&q=) 26.9 KB (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleNForceATA.kext%28UNTESTED%29.zip&can=2&q=) 1423 (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleNForceATA.kext%28UNTESTED%29.zip&can=2&q=)
X3100-slashack.zip (http://darwin-ata.googlecode.com/files/X3100-slashack.zip) X3100 drivers. (Cannot upload 3 mb on insanelymac, nothing to do with darwin-ata) (http://code.google.com/p/darwin-ata/downloads/detail?name=X3100-slashack.zip&can=2&q=) Dec 2008 (http://code.google.com/p/darwin-ata/downloads/detail?name=X3100-slashack.zip&can=2&q=) 3.0 MB (http://code.google.com/p/darwin-ata/downloads/detail?name=X3100-slashack.zip&can=2&q=) 3157 (http://code.google.com/p/darwin-ata/downloads/detail?name=X3100-slashack.zip&can=2&q=)
AppleVIAATA.kext-v0.2.zip (http://darwin-ata.googlecode.com/files/AppleVIAATA.kext-v0.2.zip) AppleVIAATA.kext v0.2 (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleVIAATA.kext-v0.2.zip&can=2&q=) Dec 2008 (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleVIAATA.kext-v0.2.zip&can=2&q=) 25.8 KB (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleVIAATA.kext-v0.2.zip&can=2&q=) 3024 (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleVIAATA.kext-v0.2.zip&can=2&q=)
AppleATIATA.kext.zip (http://darwin-ata.googlecode.com/files/AppleATIATA.kext.zip) AppleATIATA.kext v0.1 (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleATIATA.kext.zip&can=2&q=) Dec 2008 (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleATIATA.kext.zip&can=2&q=) 24.2 KB (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleATIATA.kext.zip&can=2&q=) 1345 (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleATIATA.kext.zip&can=2&q=)
AppleATIATA.kext(DEBUG).zip (http://darwin-ata.googlecode.com/files/AppleATIATA.kext%28DEBUG%29.zip) AppleATIATA.kext v0.1 (DEBUG) (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleATIATA.kext%28DEBUG%29.zip&can=2&q=) Dec 2008 (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleATIATA.kext%28DEBUG%29.zip&can=2&q=) 25.1 KB (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleATIATA.kext%28DEBUG%29.zip&can=2&q=) 173 (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleATIATA.kext%28DEBUG%29.zip&can=2&q=)
AppleNForceATA.kext(10_4).zip (http://darwin-ata.googlecode.com/files/AppleNForceATA.kext%2810_4%29.zip) AppleNForceATA.kext v0.1 compiled for 10.4.8 (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleNForceATA.kext%2810_4%29.zip&can=2&q=) Nov 2008 (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleNForceATA.kext%2810_4%29.zip&can=2&q=) 140 KB (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleNForceATA.kext%2810_4%29.zip&can=2&q=) 1498 (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleNForceATA.kext%2810_4%29.zip&can=2&q=)
AppleNForceATA.kext(10_4_DEBUG).zip (http://darwin-ata.googlecode.com/files/AppleNForceATA.kext%2810_4_DEBUG%29.zip) AppleNForceATA.kext v0.1 (DEBUG) compiled for 10.4.8 (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleNForceATA.kext%2810_4_DEBUG%29.zi p&can=2&q=) Nov 2008 (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleNForceATA.kext%2810_4_DEBUG%29.zi p&can=2&q=) 142 KB (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleNForceATA.kext%2810_4_DEBUG%29.zi p&can=2&q=) 199 (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleNForceATA.kext%2810_4_DEBUG%29.zi p&can=2&q=)
AppleVIAATA.kext(10_4_DEBUG).zip (http://darwin-ata.googlecode.com/files/AppleVIAATA.kext%2810_4_DEBUG%29.zip) AppleVIAATA v0.1 (DEBUG) compiled for 10.4.8 (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleVIAATA.kext%2810_4_DEBUG%29.zip&can=2&q=) Nov 2008 (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleVIAATA.kext%2810_4_DEBUG%29.zip&can=2&q=) 26.7 KB (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleVIAATA.kext%2810_4_DEBUG%29.zip&can=2&q=) 98 (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleVIAATA.kext%2810_4_DEBUG%29.zip&can=2&q=)
AppleVIAATA.kext(10_4).zip (http://darwin-ata.googlecode.com/files/AppleVIAATA.kext%2810_4%29.zip) AppleVIAATA v0.1 compiled for 10.4.8 (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleVIAATA.kext%2810_4%29.zip&can=2&q=) Nov 2008 (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleVIAATA.kext%2810_4%29.zip&can=2&q=) 137 KB (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleVIAATA.kext%2810_4%29.zip&can=2&q=) 309 (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleVIAATA.kext%2810_4%29.zip&can=2&q=)
JMicronATA.kext(10_4).zip (http://darwin-ata.googlecode.com/files/JMicronATA.kext%2810_4%29.zip) JMicronATA v0.6 compiled for 10.4.8 (http://code.google.com/p/darwin-ata/downloads/detail?name=JMicronATA.kext%2810_4%29.zip&can=2&q=) Nov 2008 (http://code.google.com/p/darwin-ata/downloads/detail?name=JMicronATA.kext%2810_4%29.zip&can=2&q=) 23.6 KB (http://code.google.com/p/darwin-ata/downloads/detail?name=JMicronATA.kext%2810_4%29.zip&can=2&q=) 565 (http://code.google.com/p/darwin-ata/downloads/detail?name=JMicronATA.kext%2810_4%29.zip&can=2&q=)
JMicronATA.kext(10-4_DEBUG).zip (http://darwin-ata.googlecode.com/files/JMicronATA.kext%2810-4_DEBUG%29.zip) JMicronATA v0.6 (DEBUG) compiled for 10.4.8 (http://code.google.com/p/darwin-ata/downloads/detail?name=JMicronATA.kext%2810-4_DEBUG%29.zip&can=2&q=) Nov 2008 (http://code.google.com/p/darwin-ata/downloads/detail?name=JMicronATA.kext%2810-4_DEBUG%29.zip&can=2&q=) 24.5 KB (http://code.google.com/p/darwin-ata/downloads/detail?name=JMicronATA.kext%2810-4_DEBUG%29.zip&can=2&q=) 116 (http://code.google.com/p/darwin-ata/downloads/detail?name=JMicronATA.kext%2810-4_DEBUG%29.zip&can=2&q=)
JMicronATA.kext(JMB360).zip (http://darwin-ata.googlecode.com/files/JMicronATA.kext%28JMB360%29.zip) JMicronATA v0.6 with JMB360 support (http://code.google.com/p/darwin-ata/downloads/detail?name=JMicronATA.kext%28JMB360%29.zip&can=2&q=) Oct 2008 (http://code.google.com/p/darwin-ata/downloads/detail?name=JMicronATA.kext%28JMB360%29.zip&can=2&q=) 25.4 KB (http://code.google.com/p/darwin-ata/downloads/detail?name=JMicronATA.kext%28JMB360%29.zip&can=2&q=) 1259 (http://code.google.com/p/darwin-ata/downloads/detail?name=JMicronATA.kext%28JMB360%29.zip&can=2&q=)
JMicronATA.kext(DEBUG).zip (http://darwin-ata.googlecode.com/files/JMicronATA.kext%28DEBUG%29.zip) JMicronATA v0.6 (DEBUG) (http://code.google.com/p/darwin-ata/downloads/detail?name=JMicronATA.kext%28DEBUG%29.zip&can=2&q=) Oct 2008 (http://code.google.com/p/darwin-ata/downloads/detail?name=JMicronATA.kext%28DEBUG%29.zip&can=2&q=) 25.4 KB (http://code.google.com/p/darwin-ata/downloads/detail?name=JMicronATA.kext%28DEBUG%29.zip&can=2&q=) 312 (http://code.google.com/p/darwin-ata/downloads/detail?name=JMicronATA.kext%28DEBUG%29.zip&can=2&q=)
JMicronATA.kext.zip (http://darwin-ata.googlecode.com/files/JMicronATA.kext.zip) JMicronATA v0.6 (http://code.google.com/p/darwin-ata/downloads/detail?name=JMicronATA.kext.zip&can=2&q=) Oct 2008 (http://code.google.com/p/darwin-ata/downloads/detail?name=JMicronATA.kext.zip&can=2&q=) 25.1 KB (http://code.google.com/p/darwin-ata/downloads/detail?name=JMicronATA.kext.zip&can=2&q=) 3183 (http://code.google.com/p/darwin-ata/downloads/detail?name=JMicronATA.kext.zip&can=2&q=)
AppleNForceATA.kext(DEBUG).zip (http://darwin-ata.googlecode.com/files/AppleNForceATA.kext%28DEBUG%29.zip) AppleNForceATA.kext v0.1 (DEBUG) (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleNForceATA.kext%28DEBUG%29.zip&can=2&q=) Oct 2008 (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleNForceATA.kext%28DEBUG%29.zip&can=2&q=) 29.3 KB (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleNForceATA.kext%28DEBUG%29.zip&can=2&q=) 512 (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleNForceATA.kext%28DEBUG%29.zip&can=2&q=)
AppleNForceATA.kext.zip (http://darwin-ata.googlecode.com/files/AppleNForceATA.kext.zip) AppleNForceATA.kext v0.1 (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleNForceATA.kext.zip&can=2&q=) Oct 2008 (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleNForceATA.kext.zip&can=2&q=) 29.0 KB (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleNForceATA.kext.zip&can=2&q=) 2976 (http://code.google.com/p/darwin-ata/downloads/detail?name=AppleNForceATA.kext.zip&can=2&q=)
JMicronATA.kext(Unmodified).zip (http://darwin-ata.googlecode.com/files/JMicronATA.kext%28Unmodified%29.zip) JMicronATA Unmodified, just for testing. v0.2 (http://code.google.com/p/darwin-ata/downloads/detail?name=JMicronATA.kext%28Unmodified%29.zip&can=2&q=) Oct 2008 (http://code.google.com/p/darwin-ata/downloads/detail?name=JMicronATA.kext%28Unmodified%29.zip&can=2&q=) 23.5 KB (http://code.google.com/p/darwin-ata/downloads/detail?name=JMicronATA.kext%28Unmodified%29.zip&can=2&q=) 239 (http://code.google.com/p/darwin-ata/downloads/detail?name=JMicronATA.kext%28Unmodified%29.zip&can=2&q=)

lanceomni
01-19-2010, 12:00 AM
Im sorry I forgot I had linked to the thread and not to an actual file. Here is a direct link:
http://darwin-ata.googlecode.com/files/AppleNForceATA.kext.zip

You can use an application like KextHelper and you can also manually install as described below.

Manually install a kext
Manually Installing a Kext
You can manually install drivers (kexts) by following the instructions below. Be sure to do your research and make sure that what you are installing will work. It is highly recommended that you do steps 2, 3 & 4 to backup your extensions folder. This will make it possible to recover from a non booting system

Place the kext you wish to install on your desktop (The following commands rely on it being on the desktop).

1. Give yourself root privileges so that you can modify files.
sudo -s
2. Make a backup copy of your kexts. First we will make a directory called "backup" in our root directory to store them. Open Terminal and type:
mkdir /backup
3. Change directories to /System/Library This will shorten some of the commands we have to type in.
cd /System/Library
4. Copy your kexts to the new "backup" folder.
cp -r Extensions/ /backup/
5. Copy the kext from your desktop to the extensions folder (Replace MYKEXT.kext with the name of the kext you want to install.
cp ~/Desktop/MYKEXT.kext Extensions/MYKEXT.kext
Repeat step 5. for each additional kext.

6. Set the proper permissions for the extensions folder.
chmod -R 755 Extensions/
7. Set the proper ownership for the extensions folder.
chown -R root:wheel Extensions/
8. Touch the extensions folder
touch Extensions/
9. Remove the extensions cache to force OSX to rebuild it with our new kext.
rm -rf Extensions.mkext
10. Repair permissions to your drive.
diskutil repairpermissions /

11. Reboot using the boot-flags -v -f
-v Verbose Mode displays useful information during the boot process.
-f Forces OSX to load kexts from the extensions folder instead of the cache file. We did delete the cache file so this is just a precaution.