Corruption of Hard Disk Firmware.
What is the firmware?
The firmware is the software of the hard disk drive (HDD). It is best to think of it as the ‘operating system’ of the HDD; without it the HDD would not even spin up to the correct speed. Just like Windows or OSX it too can be come corrupt. The revision of the firmware is usually listed on the white label on the front of the hard disk drive. This is most obvious on Seagate and Samsung HDDs. In general the firmware is stored on the platter surface. When a hard disk drive has a firmware failure there can be a number of different symptoms.
Typical symptoms include:
- Hard disk drive is not recognised by the computer / BIOS
- Incorrect model number listed by the computer
- Incorrect disk capacity listed by the computer
- Clicking or tapping noise
- Hard disk drive performing extremely slowly
- Hard disk drive detecting OK, but no sectors are addressable
- Intermittent spin up and spin down
The symptoms shown in hard disk drive firmware failure vary considerably based on the HDD manufacturer, age, and model of the disk. To confirm that a HDD has a firmware failure it is nearly always necessary to complete a full set of diagnostic tests.
Why do firmware failures happen?
You may have experienced software like Adobe Flash or Internet Explorer crash on your PC. Usually the manufacturer of the software will release an update to stop this by fixing the ‘bugs’ in the software. Like many other forms of software, the HDD’s firmware can have bugs too. We see certain models of hard disk drive in for recovery again, and again, and again. For example the Seagate Barracuda 7200.11, and 7200.12, and also the Western Digital WD5000AAKS Tornado ROM/firmware failure.
Firmware failures often occur as a secondary fault. Most frequently the primary fault is a high number of unreadable (bad) sectors. This can cause certain parts of the firmware to become corrupt, in particular the growth defect list (G-List) and the S.M.A.R.T. firmware modules.
How do you access the firmware?
In order to edit the firmware modules it is necessary to access the service area (SA). This is an area on the platters’ surface. Most hard disk drives (with the exception of Toshiba HDDs) store the critical firmware modules on the platter. Typically the firmware is stored on two sides of a single platter. Usually known as the primary and secondary service area. The secondary SA is used as a backup to correct corrupt firmware modules in the primary (or vice-versa).
It is not possible to access this area without specialist equipment. There are a small number of manufacturers of such equipment. These include Ace Laboratory’s PC3000, Salvation Data’s HDD Doctor Suite and Atola’s Insight. All of these products require a significant investment to own and to learn how to use properly. It is unlikely that you will find any PC shop or IT support company with access to this equipment.
How do you fix the firmware?
Again, the techniques used vary significantly depending on the HDD manufacturer. In most cases the first thing to do if possible is to backup a copy of the entire service area. The data in this area is stored in an assortment of ‘tracks’. A copy of the read only memory (ROM) is also taken. Then after this an attempt to backup the individual firmware modules is made. The tracks are made up of the firmware modules, but the firmware modules are not individually addressable in this form.
Once a full backup is made it is safe to edit the firmware modules. This may involve manual editing with a hex-editor. Or it may involve loading working firmware modules from a donor HDD to write over the corrupt modules in the failed patient HDD.
If the corrupt modules have been repaired correctly then when the drive is next powered on it should detect normally and the data will be accessible. A full sector by sector clone of the hard disk drive is then made using hardware disk imaging equipment as is it is likely there will be unreadable (bad) sectors. Once this is complete the filesystem is rebuild and the data, in the form of files, is extracted and tested.