Example of an update on a drive with unsupported firmware

From ThinkWiki
Jump to: navigation, search

Download the files

To be able to flash with the new firmware, you need to download the iso from IBM. You will also need the appropriate floppy disk file. Yes, this is done using a floppy disk!

I had a 60GB Hitatchi TravelStar HTS548060M9AT00, which is listed as HTS5480xxM9AT00 on the IBM pages, so I downloaded the Floppy disk FWHD3413.exe. Then I burned the iso and I executed FWHD3413.exe to get a bootable floppy disk. Upon booting from the CD, it showed me that I had Firmware revision MGBOA53A and that there was no new firmware.

Prepare the files

Next, I took the floppy with the idea I could update the files on it to get the newest firmware, so I copied over FW.exe and FW.PRO from the CD.

FW.PRO

Now I only needed my firmware update tool and the according Firmware. So I opened FW.PRO and I searched for the according section which looked like this:

;   HGST :  HTS5480**M9AT00
;
; HTS548040M9AT00 40.0GB
"HTS548040M9AT00","MG2OA50A","MG2OA5PA","MG2IA5PA.bin","hfui12L.exe","IA5PA","/u MRLA5PA.tbl"
"HTS548040M9AT00","MG2OA55A","MG2OA5PA","MG2IA5PA.bin","hfui12L.exe","IA5PA","/u MRLA5PA.tbl"
"HTS548040M9AT00","MG2OA5BA","MG2OA5PA","MG2IA5PA.bin","hfui12L.exe","IA5PA","/u MRLA5PA.tbl"
"HTS548040M9AT00","MG2OA5DA","MG2OA5PA","MG2IA5PA.bin","hfui12L.exe","IA5PA","/u MRLA5PA.tbl"
"HTS548040M9AT00","MG2OA5HA","MG2OA5PA","MG2IA5PA.bin","hfui12L.exe","IA5PA","/u MRLA5PA.tbl"
;
; HTS548060M9AT00 60.0GB
"HTS548060M9AT00","MGBOA50A","MGBOA5PA","MGBIA5PA.bin","hfui12L.exe","IA5PA","/u MRLA5PA.tbl"
"HTS548060M9AT00","MGBOA55A","MGBOA5PA","MGBIA5PA.bin","hfui12L.exe","IA5PA","/u MRLA5PA.tbl"
"HTS548060M9AT00","MGBOA5BA","MGBOA5PA","MGBIA5PA.bin","hfui12L.exe","IA5PA","/u MRLA5PA.tbl"
"HTS548060M9AT00","MGBOA5DA","MGBOA5PA","MGBIA5PA.bin","hfui12L.exe","IA5PA","/u MRLA5PA.tbl"
"HTS548060M9AT00","MGBOA5HA","MGBOA5PA","MGBIA5PA.bin","hfui12L.exe","IA5PA","/u MRLA5PA.tbl"
;

There wasn't any section for my MGBOA53A firmware, so I created it. I just copied the line above it and changed it a little bit. I changed the firmware revision to my revision and /u to /f to force the update:

"HTS548060M9AT00","MGBOA53A","MGBOA5PA","MGBIA5PA.bin","hfui12L.exe","OA5PA","/f MRLA5PA.tbl"

After having done this, I saved the file and I copied all mentioned files in the above section from the CD to the floppy. These were MGBIA5PA.bin, hfui12L.exe and MRLA5PA.tbl

SOMETHING.tbl

Next, I had to change MRLA5PA.tbl because the firmware update exe look for the correct information inside of it. My firmware revision was missing too and I needed a correct checksum so that hfui12L.exe would update my drive's firmware. This is the original file:

;*****************************************************************************
;  Revup parameter table for Moraga-LP Family
;                                                                   2008/03/14
;                                                               Rev A5?A->A5PA
;*****************************************************************************
;
#Parameter Table
;(Format: Table name, Offset[hex], Length[dec])
A50A -> A5PA RAM
ZONE  Offset   0  Length  912
SRVM  Offset   0  Length 1536
CHNL  Offset   0  Length  200
CHNL  Offset  C9  Length 3895
;
A55A -> A5PA RAM
ZONE  Offset   0  Length  912
SRVM  Offset   0  Length 1536
CHNL  Offset   0  Length 4096
;
A5BA -> A5PA RAM
ZONE  Offset   0  Length  912
SRVM  Offset   0  Length 1536
CHNL  Offset   0  Length 4096
;
A5DA -> A5PA RAM
ZONE  Offset   0  Length  912
SRVM  Offset   0  Length 1536
CHNL  Offset   0  Length 4096
;
A5HA -> A5PA RAM
ZONE  Offset   0  Length  912
SRVM  Offset   0  Length 1536
CHNL  Offset   0  Length 4096
;
#Checksum Table
; BIN checksum
;moB?axxx.br
;moA?axxx.br
;mo4?axxx.br
;mo3?axxx.br
;mo2?axxx.br
;mo1?axxx.br
;-----------------------------------------------------------------------------
; Apple model
;-----------------------------------------------------------------------------
; BIN checksum
00000000
00000000
00000000
00000000
00000000
00000000
;-----------------------------------------------------------------------------
; IBM model
;-----------------------------------------------------------------------------
; BIN checksum
FA29DE0D
F76F94DE
7DF5F7B7
FD2BFC0E
E26DB1B2
0C33B80A
;-----------------------------------------------------------------------------
; OEM generic model
;-----------------------------------------------------------------------------
; BIN checksum
00000000
00000000
00000000
00000000
00000000
00000000

Again, I had to add a section for my firmware revision. Because it was exactly the same for all revisions except for one I took one of those and put it between A50A and A55A. This is a copy of A55A with only the revision number changed:

A53A -> A5PA RAM
ZONE  Offset   0  Length  912
SRVM  Offset   0  Length 1536
CHNL  Offset   0  Length 4096
;

Then, hfui12L.exe checks the checksum and the firmware we want to upload doesn't match the OEM checksum, right? So I copied the checksum from the IBM to the OEM section:

;-----------------------------------------------------------------------------
; IBM model
;-----------------------------------------------------------------------------
; BIN checksum
FA29DE0D
F76F94DE
7DF5F7B7
FD2BFC0E
E26DB1B2
0C33B80A
;-----------------------------------------------------------------------------
; OEM generic model
;-----------------------------------------------------------------------------
; BIN checksum
FA29DE0D
F76F94DE
7DF5F7B7
FD2BFC0E
E26DB1B2
0C33B80A

Update the firmware

After all this I booted from the floppy and I updated the firmware. I got some error code and this:

Updating Drive 0
...reading microcode
...downloading microcode
!!!!! FAIL !!!!!

So I thought it had failed, I rebooted and the 2010 Error was gone. Everything works perfectly!

Helpful Links (source of the information)

This guy did it a little bit differently, he didn't have to change all the firmware codes to get it working.

I found another part of the answer in the forum.thinkpads.com and a link to another successful flash on notebookforums.com.

I hope this helps you.