Mixing OEM firmware with retail firmware is very dangerous, even when things appear to be matched. In fact it is not always safe to mix retail versions, either. For example, Seagate warns that applying 7200.11 SDxx firmware to a drive with CCxx firmware will render it inoperable.
The OP's example shows a ST2000DM001-
9YN164 OEM drive and a ST2000DM001-
1CH164 retail drive. The model number suffixes denote two completely different architectures, as is confirmed by the terminal log. You must not apply 9YN164 firmware to a 1CH164 drive or vice versa.
Seagate's update packages include a configuration file. This file determines whether the user's drive is a suitable candidate for the update, and then applies the appropriate firmware image to the drive.
Here are the configuration files for the CC4C, CC4D, CC4H and CC9D updates:
http://www.users.on.net/~fzabkar/HDD/GRCC4CD9.TXThttp://www.users.on.net/~fzabkar/HDD/GR-CC4H.TXTThe files would suggest that CC9D firmware must not be applied to CC4x drives and vice versa.
Here is a Dell update that appears counterintuitive:
http://www.users.on.net/~fzabkar/dell_fw_cfg.txtNotice that 0003SDM1 firmware is updated to 0004SDM1, and 0002SDM1 is updated to 0005SDM1.
However, the configuration file applies 0004SDM1 firmware to D003SDM1 and 0001DEM1 drives, so in this case mixing OEM and retail firmware appears OK.
Here is another case where one can go wrong:
http://www.users.on.net/~fzabkar/HDD/SN06BCFG.TXTQuote:
ST31000340NS MS01BB.SDN1.SN0421.SN04.b0fa SN06b.lod
ST31000340NS MS01BB.SDN1.SN0424.SN04.b0fa SN06b.lod
ST31000340NS MS03BB.SDN1.AJ0309.CN04.B0FE SN06b.lod
ST31000340NS MS03BB.SDN1.AL0P00.SN05.B101 SN06b.lod
ST31000340NS MS03BB.SDN1.AU0200.AN05.B101 SN06b.lod
http://www.users.on.net/~fzabkar/HDD/SN16BCFG.TXTQuote:
ST31000340NS MS010B.SDN2.SN04N7.SN04.B0FA SN16b.lod
ST31000340NS MS01B0.SDN2.N36100.SN03.B0FA SN16b.lod
ST31000340NS MS031B.SDN2.AU0100.SN15.B101 SN16b.lod
ST3750330NS MS010B.SDN2.SN04N7.SN04.B0FA SN16b.lod
ST3750330NS MS01B0.SDN2.N36100.SN03.B0FA SN16b.lod
ST3750330NS MS031B.SDN2.AU0100.SN15.B101 SN16b.lod
For example, notice that SN04 firmware upgrades to SN06 in the first case, but upgrades to SN16 in the second case. The difference is in the drive's part number.
Here is yet another possible pitfall:
http://www.users.on.net/~fzabkar/HDD/PH-CC46.TXTQuote:
ST316031?AS;PH0G2?.CCD3.AA????.CC3?.C2??;PHCC461H.LOD;PH0G2C.CCD4.GZ019Y.CC46.C26C
ST316031?AS;PH0G2?.CCD3.AA????.CC3?.D2??;PHCC462H.LOD;PH0G2D.CCD4.GZ019Y.CC46.D26C
Notice that the ST316031?AS drives come in 1-head and 2-head versions, each requiring a different LOD file (PHCC46
1H.LOD versus PHCC46
2H.LOD).
However, the same configuration file would suggest that one can mix certain OEM (HPxx) and retail firmware in this particular case:
Quote:
ST316031?AS;PH0G2?.HPD1.BZ????.HP1?.C2??;PHCC461H.LOD;PH0G2C.CCD4.GZ019Y.CC46.C26C
ST316031?AS;PH0G2?.HPD1.BZ????.HP1?.D2??;PHCC462H.LOD;PH0G2D.CCD4.GZ019Y.CC46.D26C
ST316031?AS;PH0G2?.HPD2.DS????.HP2?.C2??;PHCC461H.LOD;PH0G2C.CCD4.GZ019Y.CC46.C26C
ST316031?AS;PH0G2?.HPD2.DS????.HP2?.D2??;PHCC462H.LOD;PH0G2D.CCD4.GZ019Y.CC46.D26C
ST316031?AS;PH0G2?.HPD4.AA????.HP0?.C2??;PHCC461H.LOD;PH0G2C.CCD4.GZ019Y.CC46.C26C
ST316031?AS;PH0G2?.HPD4.AA????.HP0?.D2??;PHCC462H.LOD;PH0G2D.CCD4.GZ019Y.CC46.D26C
I have examined some firmware update packages and found that they generally replace the entire ROM on the PCB (older models), or the ROM's code modules (F3 architecture). Some updates also replace one or more of the SA overlay modules (in a reserved area on the platters). When firmware is updated, one must be certain that the new modules are compatible with the existing ones, otherwise the drive will be rendered inoperable.
Analysis of Seagate F3 Firmware Update and Seagate LOD firmware image file:
http://www.alexsoft.org/viewtopic.php?f=59&t=816ZOC scripts - Seagate LOD files parsing:
http://www.alexsoft.org/viewtopic.php?f ... 815&p=3162Tip: Locating ROM and SA resources in firmware updates:
http://www.alexsoft.org/viewtopic.php?f=59&t=705BTW, don't be surprised if the latest Barracuda update doesn't work. The configuration file has a bug that points the updater to a non-existent LOD file. I reported this bug to Seagate more than 2.5 years ago, and supplied a workaround in their forum (rename the files at the DOS prompt). However, their old forum was flushed down the toilet on April Fool's Day of this year, and the bug was still present some two years afterwards, according to feedback at Tom's Hardware.