Jump to content

[Solution] Unknown AHCI, Orange Disk Icons in 10.5.2 to 10.5.6 for Intel and JMicron


Gujal
 Share

152 posts in this topic

Recommended Posts

maybe this is a stupid question but, is this fix only to have the right icons or is for something else?

 

I don't see the problem to have orange or grey icons

 

but if it is for having a better performance I'll do it

 

Anybody can tell me?

 

Thanks

Link to comment
Share on other sites

maybe this is a stupid question but, is this fix only to have the right icons or is for something else?

 

I don't see the problem to have orange or grey icons

 

but if it is for having a better performance I'll do it

 

Anybody can tell me?

 

Thanks

 

with this kexts my results in xbench (disk results) are much better

 

before 60mb/s now 100mb/s

 

disk xbench from 72 points to 93....

 

don't know why but it's true....

 

just install

 

my spec: ga-g31m-s2 wd6400aaks 4GB 7600gs

Link to comment
Share on other sites

Are you sure the SATA controller is in AHCI? It would be recognised as SATA Controller and Silver disks if it is in IDE mode. The orange icon and unknown AHCI controller issue is only when SATA is set to AHCI mode.

 

Yes, always have AHCI enabled. When there is more time i will reproduce this procedure. (Maybe because i reinstalled this 10.5.5 image with orange icons from a 10.5.5 install with silver disks?)

Link to comment
Share on other sites

Can you let me know which kext is clashing. I am running Retail install and dont have panic. I would presume this JMicron definition would clash with AppleVIAATA.kext (which is not part of Retail install) and nothing else.

Thanks for your input

JmicronATA.kext info.plist lack ids so it clashed with AppleAHCIport.kext info.plist

I just added the following value to jmicronATA.kext info.plist than it works fine

 

2qbru34.png

Link to comment
Share on other sites

Hello guys. I tried the ACHI fix on 10.5.5 and it worked fine but I'm having trouble with it on 10.5.6. When I install the kexts I get a waiting for root device error. I get the following errors.

 

24IOAHCIBlockStorageDevice is not compatible with its superclass, 20IOAHCIBlockStorageDevice superclass changed?

Failed to load extension com.apple.iokit.IOAHCIBlockStorage.

Couldn't alloc class "AppleAHCIDiskDriver"

 

 

Do any of you brainiac know what this means? I am stumped. This on a Gigabyte Ep35-DS3L Motherboard. I am lost. Can I ask another question, How do you guys know so much. Is there something I can read to more familarize myself?

Link to comment
Share on other sites

OK. I ran the update again and did the AHCI Updates and one other IOAHCIBlockStorageiconfix.kext that was in this thread. I got the silver drives back but now when I go to create a folder on the boot hard disk I get a Authentication required. Actually I get it when I do anything, like delete a file, move file or anything else like that there.

 

Man, I lossing my hair. This update was the hardest I have ever done. Thank you all for the all the work that has been done.

Link to comment
Share on other sites

OK. I ran the update again and did the AHCI Updates and one other IOAHCIBlockStorageiconfix.kext that was in this thread. I got the silver drives back but now when I go to create a folder on the boot hard disk I get a Authentication required. Actually I get it when I do anything, like delete a file, move file or anything else like that there.

 

Man, I lossing my hair. This update was the hardest I have ever done. Thank you all for the all the work that has been done.

 

Looks like your permissions are stuffed. Try going into Disk utility and repair permissions

Link to comment
Share on other sites

Looks like your permissions are stuffed. Try going into Disk utility and repair permissions

 

 

OK. I am dumb. I just remembered that I should right click on the drive and see what the permission where. Low and behold they were set to read only. Sorry for wasting space and your time. As always, thanks to all the work all you guys are doing. I just wish I knew more so I could contribute.

 

THANKS AGAIN! :blink:

Link to comment
Share on other sites

with this kexts my results in xbench (disk results) are much better

 

before 60mb/s now 100mb/s

 

disk xbench from 72 points to 93....

 

don't know why but it's true....

 

just install

 

my spec: ga-g31m-s2 wd6400aaks 4GB 7600gs

 

xbench goes from 89 to 93 not a big difference

also if you do more than a test you will see there is always from 3 to 8 points diffence

I don't think this kext make the difference

Link to comment
Share on other sites

xbench goes from 89 to 93 not a big difference

also if you do more than a test you will see there is always from 3 to 8 points diffence

I don't think this kext make the difference

These kexts are not a about performance. In fact they are the same binaries that are released by Apple

There are two kexts patched.

The changes in the first kext are Device IDs for the various AHCI controllers (Intel, JMicron, NVidia) so that in System Profiler it will show the correct Controller name instead of the "Unknown AHCI Controller"

The changes in the second kext is that the AHCI SATA ports are defined as Internal and this change makes Finder to display Aluminum/Silver icons on Desktop.

 

So, once again, these kexts are not about performance, they are only for cosmetic reasons.

Link to comment
Share on other sites

These kexts are not a about performance. In fact they are the same binaries that are released by Apple

There are two kexts patched.

The changes in the first kext are Device IDs for the various AHCI controllers (Intel, JMicron, NVidia) so that in System Profiler it will show the correct Controller name instead of the "Unknown AHCI Controller"

The changes in the second kext is that the AHCI SATA ports are defined as Internal and this change makes Finder to display Aluminum/Silver icons on Desktop.

 

So, once again, these kexts are not about performance, they are only for cosmetic reasons.

 

OK I see that there are no changes about performance but as I said xbench disk result (only disk result !!! ) form about 70 to about 90.....checked this on two instalations ...I have got GA-G31M-S2L...

 

that's not only xbench....I see it during booting MAC OS... don't know why.....I have KALYWAY 10.5.1...upgraded to 10.5.6.....maybe kext from this distribution doesn't work good with my MB....don't know...

 

changed two disk because of poor performance (don't know why )

 

I used kext form this topic...because I've read that someone has the same situation......better performance......and that's TRUE.....maybe only with my MB or Kalyway distribution ...don't know...but it works!!!

 

p.s. sorry about my poor english :( do my best :santa:

Link to comment
Share on other sites

OK. I ran the update again and did the AHCI Updates and one other IOAHCIBlockStorageiconfix.kext that was in this thread. I got the silver drives back but now when I go to create a folder on the boot hard disk I get a Authentication required. Actually I get it when I do anything, like delete a file, move file or anything else like that there.

 

Man, I lossing my hair. This update was the hardest I have ever done. Thank you all for the all the work that has been done.

 

I get the same error as you did. How did you recover from the problem? I can't boot after trying a kext update.

Link to comment
Share on other sites

JmicronATA.kext info.plist lack ids so it clashed with AppleAHCIport.kext info.plist

I just added the following value to jmicronATA.kext info.plist than it works fine

 

2qbru34.png

 

I believe I have found the reason why the AHCI fix clash with the JMicronATA. The JMicron chipset contains 2 controllers, a SATA controller and a PATA controller, detected as 2 independent devices, but both of then share the same vendor id and device id, they differentiate only in the class id.

But the AppleAHCIport.kext and most of the available JMicronATA.kext try to match them using only the device id so I believe thats the reason why they are clashing.

I have modified the plist for both drivers to include the right class and I think they should work now. I have tried in my system and it seems to work without crashes, but I only have a DVD IDE device and no SATA devices. I have tried setting the controller in the three posible modes in the BIOS and it seems to get matched right in all three modes, but I'm not sure if the SATA ports will work when set to IDE compatibility mode.

 

Also note my mobo has a JMicron JMB363 chipset, so I used the class id for that particular 363 chipset, I havent checked if the other JMicron variants have different class id's but I presume they are all the same.

 

Info.plist for the AppleAHCIPort.kext in the AHCIfixv2 with 10.5.6 kexts package in this thread:

 

AppleAHCIPort.Info.plist.zip

 

Info.plist for the JMicronATA.kext v0.6 available in darwin-ata page and discussed in this thread about ATA drivers patched for over 4 Gb memory:

 

JMicronATA.Info.plist.zip

 

Please try it if you can, specially if you have SATA devices plugged in.

Link to comment
Share on other sites

I believe I have found the reason why the AHCI fix clash with the JMicronATA. The JMicron chipset contains 2 controllers, a SATA controller and a PATA controller, detected as 2 independent devices, but both of then share the same vendor id and device id, they differentiate only in the class id.

But the AppleAHCIport.kext and most of the available JMicronATA.kext try to match them using only the device id so I believe thats the reason why they are clashing.

I have modified the plist for both drivers to include the right class and I think they should work now. I have tried in my system and it seems to work without crashes, but I only have a DVD IDE device and no SATA devices. I have tried setting the controller in the three posible modes in the BIOS and it seems to get matched right in all three modes, but I'm not sure if the SATA ports will work when set to IDE compatibility mode.

 

Also note my mobo has a JMicron JMB363 chipset, so I used the class id for that particular 363 chipset, I havent checked if the other JMicron variants have different class id's but I presume they are all the same.

 

Info.plist for the AppleAHCIPort.kext in the AHCIfixv2 with 10.5.6 kexts package in this thread:

 

AppleAHCIPort.Info.plist.zip

 

Info.plist for the JMicronATA.kext v0.6 available in darwin-ata page and discussed in this thread about ATA drivers patched for over 4 Gb memory:

 

JMicronATA.Info.plist.zip

 

Please try it if you can, specially if you have SATA devices plugged in.

 

 

You're messing this big. JMicronATA is the driver for JMicron JMB363 and many more. AppleAHCIPort was made by apple primary for many Intel Chipsets. Most motherboards with JMicron has both, JMicron and some ICH-X by Intel. If u use your AppleAHCIPort for JMicron, it might work, but not as expected. JMicron is working right for many JMB36X controllers. I don't understand why u need AppleAHCIPort for JMicron.

Link to comment
Share on other sites

Pleas excuse me I wasnt trying to create any mess, just trying to fix the crashes caused by both of this drivers together.

I wasnt aware the JMicronATA driver supported both RAID/AHCI mode and IDE mode for the SATA, I assumed it was only for the ATA ports and the SATA ports in IDE mode. In fact the original JMicron driver plist is written so it only matches the PATA controller and not the RAID/AHCI controller, although your patched version matches any.

Again I dont have any SATA devices plugged in but with only the JMicron driver I get no JMicron SATA ports detected, even if they are empty, shouldnt they be detected same way as the ICH SATA ports are?

Link to comment
Share on other sites

Pleas excuse me I wasnt trying to create any mess, just trying to fix the crashes caused by both of this drivers together.

I wasnt aware the JMicronATA driver supported both RAID/AHCI mode and IDE mode for the SATA, I assumed it was only for the ATA ports and the SATA ports in IDE mode. In fact the original JMicron driver plist is written so it only matches the PATA controller and not the RAID/AHCI controller, although your patched version matches any.

Again I dont have any SATA devices plugged in but with only the JMicron driver I get no JMicron SATA ports detected, even if they are empty, shouldnt they be detected same way as the ICH SATA ports are?

 

 

JMicron is a mess by itself, so it's anyones fault. In the other thread some users reported having JMicron sata ports working. In fact, the report some are not working in IDE mode. Don't worry if the driver doesn't detect all empty ports, some don't even bother if there's nothing plugged.

Link to comment
Share on other sites

Isnt it very strange that, with the JMicronATA drivers, the SATA ports dont show up in the SATA section of System Profiler if you set the JMicron to RAID/AHCI mode driver, but with the AppleAHCIport taking control of the JMicron, they do show up and they seemed to work for Gujal even with some disc properly detected:

 

http://forum.insanelymac.com/index.php?act...st&id=40737

 

Are you sure the JMicronATA driver support both IDE and AHCI/RAID modes for the SATA ports? Looking at the kext it seems to be only linked with the IOATAFamily and not the IOAHCIFamily.

Link to comment
Share on other sites

Isnt it very strange that, with the JMicronATA drivers, the SATA ports dont show up in the SATA section of System Profiler if you set the JMicron to RAID/AHCI mode driver, but with the AppleAHCIport taking control of the JMicron, they do show up and they seemed to work for Gujal even with some disc properly detected:

 

http://forum.insanelymac.com/index.php?act...st&id=40737

 

Are you sure the JMicronATA driver support both IDE and AHCI/RAID modes for the SATA ports? Looking at the kext it seems to be only linked with the IOATAFamily and not the IOAHCIFamily.

 

This also seems weird to me. Even though i don't have any JMicron hardware, i'm telling you so because i've read this thread and it seems everyone use JMicronATA and some had issues with SATA drives and JMicron.

 

I've looked the code, and i agree with you: this JMIcron driver is only for ATA devices, but why are there users looking for this kext with SATA drives? Maybe they are a bit confused and some are setting the bios wrong.

 

I'm sorry if i confused, but i'll make some research with this JMicron. (I use AppleVIAATA for my ata drives only, and i don't have a board with a JMicron chipset. not even to borrow. So i'll trust you and all your issues.

Link to comment
Share on other sites

As you can see in my sig, I have SATA2 HDDs connected to both ICH8 and JMicron, both of which are set to AHCI mode. JMicronATA.kext is also loaded in my system so that I can use my LG IDE DVD Drive which is plugged into JMicron IDE Port. I stay away from AppleVIAATA.kext as it tries to take over JMicron SATA port as well as IDE.

I have 4GB RAM and have no issues whatsoever with these kexts.

I also have a eSATA drive which I connect to my built in eSATA Port (Jmircon) on the motherboard for TimeMachine backups.

As long as they are all set to AHCI there are no issues.

Link to comment
Share on other sites

As you can see in my sig, I have SATA2 HDDs connected to both ICH8 and JMicron, both of which are set to AHCI mode. JMicronATA.kext is also loaded in my system so that I can use my LG IDE DVD Drive which is plugged into JMicron IDE Port. I stay away from AppleVIAATA.kext as it tries to take over JMicron SATA port as well as IDE.

I have 4GB RAM and have no issues whatsoever with these kexts.

I also have a eSATA drive which I connect to my built in eSATA Port (Jmircon) on the motherboard for TimeMachine backups.

As long as they are all set to AHCI there are no issues.

 

Are you using the JMicronATA.kext i´ve modified? or the original one? The original one fails with more than 3 gb of RAM. In DVD drives is not as common as with HDD, but if you run rember and test all the memory, and then try to burn a dvd, it will panic.

Link to comment
Share on other sites

As you can see in my sig, I have SATA2 HDDs connected to both ICH8 and JMicron, both of which are set to AHCI mode. JMicronATA.kext is also loaded in my system so that I can use my LG IDE DVD Drive which is plugged into JMicron IDE Port. I stay away from AppleVIAATA.kext as it tries to take over JMicron SATA port as well as IDE.

I have 4GB RAM and have no issues whatsoever with these kexts.

I also have a eSATA drive which I connect to my built in eSATA Port (Jmircon) on the motherboard for TimeMachine backups.

As long as they are all set to AHCI there are no issues.

 

The original JMicronATA driver v1.0's plist has the correct IOPCIClassMatch for the PATA controller only, thats why it works, thats where I got the hint for my mod.

The 4Gb-patched JMicronATA from darwin, and the second version available currently in JMicron's FTP has no classmatch statement so it will take over both SATA and PATA Jmicron controllers when the JMicron is set to RAID or AHCI mode.

Your modified AppleAHCIPort's plist also has no IOPCIClassMatch statement for the JMicron so it will be loaded for both the SATA and the PATA controller which I believe is wrong (no AHCI driver will drive a PATA controller and no ATA driver will drive an AHCI controller). If you have the right JMicronATA kexts loaded it wont be a problem, if you have the wrong one they will clash. If you have no JMicronATA nor AppleVIAATA loaded I'm not sure what will happen but probably a crash too...

AppleVIAATA's plist also has JMicron generic vendor and device id too, so if it will take over both JMicron SATA and PATA ports but all of then will be considered SATA, which is wrong too. I'm not sure the source of that AppleVIA but I believe the Jmicron id doesnt belong there...

 

@slashack: do you know if the JMicronATA driver supports both SATA and PATA ports?

Link to comment
Share on other sites

The original JMicronATA driver v1.0's plist has the correct IOPCIClassMatch for the PATA controller only, thats why it works, thats where I got the hint for my mod.

The 4Gb-patched JMicronATA from darwin, and the second version available currently in JMicron's FTP has no classmatch statement so it will take over both SATA and PATA Jmicron controllers when the JMicron is set to RAID or AHCI mode.

Your modified AppleAHCIPort's plist also has no IOPCIClassMatch statement for the JMicron so it will be loaded for both the SATA and the PATA controller which I believe is wrong (no AHCI driver will drive a PATA controller and no ATA driver will drive an AHCI controller). If you have the right JMicronATA kexts loaded it wont be a problem, if you have the wrong one they will clash. If you have no JMicronATA nor AppleVIAATA loaded I'm not sure what will happen but probably a crash too...

AppleVIAATA's plist also has JMicron generic vendor and device id too, so if it will take over both JMicron SATA and PATA ports but all of then will be considered SATA, which is wrong too. I'm not sure the source of that AppleVIA but I believe the Jmicron id doesnt belong there...

 

@slashack: do you know if the JMicronATA driver supports both SATA and PATA ports?

 

I looked at the code and there´s no evidence there that JMicronATA supports SATA mode operation. I think it will work with SATA as IDE for the JMicron SATA port only. As far as I know, every motherboard with JMicron chipset has two SATA controllers, one Intel ICHX and the JMicron, which supports IDE too.

 

About the Info.plist files, you can use any Info.plist file with my patched JMicronATA. The one it has is the one that XCode generates. I´ve only modified the source to use 64 bit memory adresses (needed to address more than 4 gb of RAM), so there´s no problem with dev ids and that stuff. Just modify the plist as needed, but don´t change the dependencies section. You may remove and modify ids or classes, but you cant add any new dev id because the kext itself checks for devices ids and compatibility. If u want to try a new devid, just ask and i´ll add it into the kext to try it.

Link to comment
Share on other sites

Are you using the JMicronATA.kext i´ve modified? or the original one? The original one fails with more than 3 gb of RAM. In DVD drives is not as common as with HDD, but if you run rember and test all the memory, and then try to burn a dvd, it will panic.

I am using the original JmicronATA 1.0 kext. You may be right as I use my LG DVD Drive (DVDROM) very rarely. I have a Pioneer SATA DVDRW drive connected to ICH8 (AHCI) which I use for all burning. I will run through rember and then try to play a DVD on the LG Drive to see if I get the kernel panic and will report back.

Link to comment
Share on other sites

  • 2 weeks later...
 Share

×
×
  • Create New...