View Single Post
Old 11-17-2012, 10:55 PM
mactalla mactalla is offline
Registered User
Join Date: Oct 2012
Posts: 13
POST ID # = 614171
mactalla Reputation: 10

A shame it wasn't as easy for you. One thought is that your drive isn't in AHCI mode. Looks like (some?) Macs put the drive in IDE (legacy) mode when booting something other than OSX. If this is the case on your MBP it would explain why the updating tool fails to detect the drive. Detection only works if it can talk AHCI to the drive, otherwise it just sees a 'dumb' hdd and can't get firmware info from it. This is also why you cannot update the firmware if the drive is connected with USB.

If/when you want to pursue this, here's how to tell if you've run into this problem:
Boot into a LiveCD (any distro will do).
lspci -vnn | grep SATA
This will spit out information about your SATA controller. You will likely see "SATA IDE Controller" in which case it's running in IDE mode instead of AHCI and you can try the following steps:

From what the above command spat back at you, remember (okay, write down) the code within square brackets. eg: if you got this
00:1f.2 IDE interface [0101]: Intel Corporation 5 Series/3400 Series Chipset 4 port SATA IDE Controller [8086:3b28] (rev 06) (prog-if 8f [Master SecP SecO PriP PriO])
then you want to remember 8086:3b28

That will let us identify the controller in computer-speak.

Now we want to have it identify itself as AHCI capable. This will vary depending on the chipset inside your MBP. If yours reports "5 series/3400 series" as in the above example, then your magic number is "90.b=60". If you have an nVidia chipset or a different series of Intel chipset then ask Google for the command for you "setpci ahci <chipset info>" would be a good search. Or post here and I'll see if I can help.

Now with those two awkward numbers we can do something useful. Run the following commands. Lines beginning with # are comments to explain what we're doing and don't actually do anything themselves. So you can skip them.

# Be root. Saves us having to write 'sudo' many times
sudo su -
# Read the current value. For debugging info.  Replace 0806:3b28 with your magic number and 90.b with the first part of your other magic number.
setpci -d 8086:3b28 90.b
# Set the value we want. Replace the magic numbers with yours.
setpci -d 8086:3b28 90.b=60
# Read it again.  It should be the new value.
setpci -d 8086:3b28 90.b
# Unload the controller
echo 1 > /sys/bus/pci/devices/0000\:00\:1f.2/remove
# Reload it.  This time it should report itself as AHCI
echo 1 > /sys/bus/pci/rescan
# Check if it worked.  This time we should see a reference to AHCI and not to IDE.
lspci -vnn | grep SATA
If that went smoothly then the update utility should now be able to probe your drive.

Originally Posted by dOCZ View Post
- you can't run chmod commands on a FAT32 flashdrive, you must format it to a linux partition in order to change permissions/run executables
The LiveCD should give you a usable filesystem that you could copy the file to, set the executable permissions, run, etc. Now since it's not backed by anything that'll survive a reboot (it's in RAM) you'd have to repeat it again the next time. It's an option if you find yourself short of thumb drives.
Reply With Quote