[Problem] Dell R720xd iDRAC BIOS Recovery

Someone up above has done it, but you have to flash the firmware to the SD card, then take that SD card to another host to unpack/repack and change device paths for the Linux squash filesystem.

If anyone happening by this thread happens to have a copy of iDRAC7 1.30.30 firmware that they wouldn’t mind passing on it would be appreciated. I have a server that can’t find a valid firmware image, and I’d like to try flashing it with the iDRAC version that it shipped with. It looks like the previous versions on Dell’s website only go back to 1.57.57,A00

I join the problem with the corrupted EMMC. I have been trying to boot from the SD with the steps you indicate. But I can’t get it:

Here is the current boot.

U-Boot 2009.08 (Jun 03 2013 - 03:47:19) Avocent (0.0.3) EVB, Build: jenkins-idrac-yocto-release-264

CPU: SH-4A
BOARD: R0P7757LC00xxRL (C0 step) board
BOOT: Secure, HRK generated
DRAM:  240MB
  (240MB of 256MB total DRAM is available on U-Boot)
ENV:   Using primary env area.
In:    serial
Out:   serial
Err:   serial
PCIe:  Bridge loaded with 0x18000 bytes
WDT2:  Booted Lower Vector, 'uboot1'
sh_mmcif: 0, sh-sdhi: 1
Net:   sh_eth.0, sh_g_eth.0
INFO: 00:003 Start-up -to- util_idrac_main()
INFO: 00:004 U-Boot 2009.08 (Jun 03 2013 - 03:47:19) Avocent (0.0.3) EVB
INFO: 00:006 U-Boot checkin date(07-30-2012) Version(1.0.179)
INFO: 00:006 iDRAC PPID <NULL>
INFO: 00:003 SPI NOR init 4096 KiB MX25L3206E bus=0 cs=0, speed=1000000, mode=3
INFO: 00:008 SH-4A Product: Major Ver=0x31  Minor Ver=0x14 C4 Little endian
             Family=0x10    Major Ver=0x30  Minor Ver=0x0b
PASS: 00:015 Dedicated monolithic mgmt NIC disabled
INFO: 00:129 BCM54610 OUI=0x3fffff  Model=0x3f  Revision=0x0f PhyAddr=1
INFO: 00:260 SD CARD:   Device: sh-sdhi   Manufacturer ID: 1b   OEM: 534d
             Name: 00000   Tran Speed: 25000000   Rd Block Len: 512
             SD version 2.0   High Capacity: Yes   Capacity: -353370112
INFO: 00:473 EMMC:   Device: sh_mmcif   Manufacturer ID: 90   OEM: 14a
             Name: HYNIX   Tran Speed: 25000000   Rd Block Len: 512
             MMC version 4.0   High Capacity: Yes   Capacity: 0
INFO: 00:018 CPLD: Major Ver=0x1  Minor Ver=0x0  Maint Ver=0x3
             Planar: Type=0x04  Rev=0x8  Rework=0x0  Scratch/PathRetry=0x00
PASS: 00:014 Coin cell detected good,  AD=0x384 low water=0x2c1
PASS: 00:008 PCIe C0 Ver=0.13 MCTP en, CRC=0x19592849 @0x8efbf4fc cnt=0x18000
INFO: 00:007 Init PCIe mailbox(PCIe 0xFFEE0150=0x40010000)
INFO: 00:006 mode=normal
INFO: 00:002 reset_cause=ac
PASS: 00:005 Booted Lower Vector, 'uboot1' wdt2cnt=0
INFO: 00:005 wdt0cnt=0
PASS: 00:002 Clear CH1/CH2, clear 4K shared memory@0xffcaa000 on AC power up
PASS: 00:008 SMR0 no sermux env, default 0xd4
INFO: 00:004 GRACR=0x3c HISEL=0x00 SIRQCR5_D=0x03 SIRQCR6_D=0x01 LADMSK0=0xff2
             MRSTCR0=0xfedffe7f MRSTCR1=0xfff3ff0f MRSTCR2=0x7f80feff
             BARMAP=0x1 BCR=0x85000000 NCER=0x01fc NCMCR=0x0006 NCCSR=0x0303
PASS: 00:021 etherc0=90:B1:1C:59:61:3F
             getherc0=90:B1:1C:59:61:40
INFO: 00:010 Fan logic for monolithic planar type 4
             fan1 - def 0000 1fff 3d   fan2 - def 0000 1fff 3d
             fan3 - def 0000 1fff 3d   fan4 - def 0000 1fff 3d
             fan5 - def 0000 1fff 3d   fan6 - def 0000 1fff 3d
             fan7 - def 0000 1fff 3d   fan8 - def 0000 1fff 3d
INFO: 00:076 Env and backup CRC'ed ok

Extended partiton size is 0x1bffff
Clear beginning MASER, start_blk=0x126009 blk_cnt=0x7000
*** create default partitions ***
No.  Type  Status    Start      Size             System
-----------------------------------------------------------
 1     P     80          1      8000    16 MB    Linux
 2     P     00       8001     37c00   111 MB    Empty
 3     P     00      3fc01       400   512 KB    Empty
 4     E     00      40001    1bffff   895 MB    Extended
 5     L     00      40002      8000    16 MB    Linux
 6     L     00      48003     37c00   111 MB    Empty
 7     L     00      7fc04       400   512 KB    Empty
 8     L     00      80005     a0000   320 MB    Empty
 9     L     00     120006      2000     4 MB    Empty
10     L     00     122007      2000     4 MB    Empty
11     L     00     124008      2000     4 MB    Empty
12     L     00     126009     d9ff7   435 MB    Linux

 1     Name: sh-linux
       Type: SuperH Linux Kernel Image (gzip compressed)
       Data Size: 0x26c395 bytes (0x1362 blocks)
       Load Address: 80001000
       Entry Point:  80002000

 2     Type: SquashFS
       Data Size: 0x38d15f4 bytes (0x1c68b blocks)

 3     Unknown Image

 4     Unknown Image

 5     Name: sh-linux
       Type: SuperH Linux Kernel Image (gzip compressed)
       Data Size: 0x26c395 bytes (0x1362 blocks)
       Load Address: 80001000
       Entry Point:  80002000

 6     Type: SquashFS
       Data Size: 0x38d15f4 bytes (0x1c68b blocks)

 7     Unknown Image

 8     Unknown Image

 9     Type: SquashFS
       Data Size: 0x7212c bytes (0x391 blocks)

10     Type: SquashFS
       Data Size: 0x7212c bytes (0x391 blocks)

11     Unknown Image

12     Unknown Image

*** partition size changed ***
*** create default partitions ***
No.  Type  Status    Start      Size             System
-----------------------------------------------------------
 1     P     80          1      8000    16 MB    Linux
 2     P     00       8001     37c00   111 MB    Empty
 3     P     00      3fc01       400   512 KB    Empty
 4     E     00      40001    1bffff   895 MB    Extended
 5     L     00      40002      8000    16 MB    Linux
 6     L     00      48003     37c00   111 MB    Empty
 7     L     00      7fc04       400   512 KB    Empty
 8     L     00      80005     a0000   320 MB    Empty
 9     L     00     120006      2000     4 MB    Empty
10     L     00     122007      2000     4 MB    Empty
11     L     00     124008      2000     4 MB    Empty
12     L     00     126009     d9ff7   435 MB    Linux

 1     Name: sh-linux
       Type: SuperH Linux Kernel Image (gzip compressed)
       Data Size: 0x26c395 bytes (0x1362 blocks)
       Load Address: 80001000
       Entry Point:  80002000

 2     Type: SquashFS
       Data Size: 0x38d15f4 bytes (0x1c68b blocks)

 3     Unknown Image

 4     Unknown Image

 5     Name: sh-linux
       Type: SuperH Linux Kernel Image (gzip compressed)
       Data Size: 0x26c395 bytes (0x1362 blocks)
       Load Address: 80001000
       Entry Point:  80002000

 6     Type: SquashFS
       Data Size: 0x38d15f4 bytes (0x1c68b blocks)

 7     Unknown Image

 8     Unknown Image

 9     Type: SquashFS
       Data Size: 0x7212c bytes (0x391 blocks)

10     Type: SquashFS
       Data Size: 0x7212c bytes (0x391 blocks)

11     Unknown Image

12     Unknown Image

INFO: 06:834 Sync eMMC/SPI NOR/Alternate u-boot images
PASS: 00:257 Current u-boot1 1.0.179 verified with 'ubootN1'
             Trailer Struct - Missing start token, exp=0xc0de1111 rec=0x1
             U-boot2 in sync with u-boot1 1.0.179
FAIL: 00:328 Verify OS Images N-1: Kernel crc exp=0x1139a4c6 rec=0x191f67a5
             blk_start=0x40002 blk_size=0x1362 ENV bcnt=0x26c3d5
PASS: 00:169 Boot device=emmc  Boot partition1/N
             Boot Path Retry:P1/N=0 P5/N-1=3  swapping to P1/N
INFO: 00:011 Sync eMMC/SPI NOR/Alternate u-boot images
PASS: 00:258 Current u-boot1 1.0.179 verified with 'ubootN'
             Trailer Struct - Missing start token, exp=0xc0de1111 rec=0x1
             U-boot2 in sync with u-boot1 1.0.179
FAIL: 00:218 Verify OS Images N: Kernel crc exp=0x1139a4c6 rec=0xc26079b6
             blk_start=0x1 blk_size=0x1362 ENV bcnt=0x26c3d5
FAIL: 00:012 Boot device=emmc  Boot partition1/N
             Boot Path Retry:P1/N=3 P5/N-1=3  P1/N now expired
INFO: 00:000 09:191


WDT2: Disabled


######################################################################
** No bootable iDRAC image is found **
** (System Health & ID LED is flashing amber at ~1/2 second rate).
To Recover iDRAC via an SD card.
1)  Format SD using FAT on a Windows box or EXT3 using Linux.
2)  Copy 'firmimg.d7' to root path.
3)  Insert SD card.
4)  System Health & ID button solid amber durning recover.
5)  Both boot paths are flashed.
######################################################################

Polling for SD card state change  |

And the variables in U-boat

iDRAC7=> printenv
bootdelay=3
baudrate=115200
bootfile="all.bin"
offset=8a000000
offset_kernel=8a100000
offset_rootfs=8a300000
ps_start=a8040000
envps_on_flash=a8030000
envps_size=10000
flash_0_start=a8000000
kernel_load=88000000
kernel_start=a8100000
sd_kernel_start=1
kernel_size=200000
rootfs_start=a8300000
rootfs_load=8a000000
rootfs_size=d00000
rootfs_size_in_long=340000
ps_size=C0000
erase_env=ps erase env
erase_ps=set fl_start $(ps_start);set fl_size $(ps_size);run erase
erase=protect off $(fl_start) +$(fl_size);erase $(fl_start) +$(fl_size);protect on $(fl_start) +$(fl_size)
netboot=bootp; bootm
uboot_start=a8000000
bu=set interface tftp;set bootfile $(rootpath)bootloader.bin;set fl_start $(uboot_start);run uploadfile
au=run fwu_au erase_ps erase_env
ku=run sd_ku
ru=run sd_ru
sd_ku=fwu dev 1;set interface tftp;set bootfile kernel.bin;set sdstart $(fwu_kernel_start);run uploadsd
sd_ru=fwu dev 1;set interface tftp;set bootfile rootfs.squashfs;set sdstart $(fwu_rootfs_start);run uploadsd
uploadsd=$(interface) $(offset) $(rootpath)$(bootfile);getsdblk;mmc write 0 $(offset) $(sdstart) $(sdblknum)
fwu_au=tftp $(offset) $(rootpath)$(fwuimage);fwu update $(offset)
spi_boot=bootm $(kernel_start) $(rootfs_start)
nfs_boot=run nfsargs;run nfs_load_kernel
sd_boot=fwu dev 1; fwu boot;
nfs_load_kernel=fwu dev 1; mmc read 0 $(kernel_load) $(fwu_kernel_start) 1000;run nfsargs;bootm $(kernel_load)
uploadfile=$(interface) $(offset);protect off $(fl_start) +$(filesize);erase $(fl_start) +$(filesize);cp.b $(offset) $(fl_start) $(filesize);protect on $(fl_start) +$(filesize)
fwuimage=firmimg.d7
netdev=eth0
nfsip=
nfsroot=/nfsroot
console=ttyS2
initrdargs=set bootargs console=$(console) root=$(rootpath);bootm $(kernel_start) $(rootfs_start)
nfsargs=set bootargs console=$(console),$(baudrate) $(optarg) ethaddr=$(ethaddr) mem=$(mem) nfsroot=$(nfsip):$(nfsroot) root=/dev/nfs rw ip=$(ipaddr):$(nfsip):$(gatewayip):$(netmask):$(hostname):$(netdev):off
sbu=run spi_sbu
sku=fwu dev 1;set interface loadb;set bootfile kernel.bin;set sdstart $(fwu_kernel_start);run uploadsd
sru=fwu dev 1;set interface loadb;set bootfile kernel.bin;set sdstart $(fwu_kernel_start);run uploadsd
mac_source=0
autoload=n
uboot_offset=0
uboot_size=30000
write_spi=sf probe 0;sf erase $(spi_offset) $(size_to_spi);sf write $(offset) $(spi_offset) $(size_to_spi)
spi_bu=set interface tftp;set bootfile $(rootpath)bootloader.bin;$(interface) $(offset);set spi_offset $(uboot_offset);set size_to_spi $(uboot_size);run write_spi
spi_sbu=set interface loadb;$(interface) $(offset);set spi_offset $(uboot_offset);set size_to_spi $(uboot_size);run write_spi
m0_inf=1
m0_act=1
dmn=disabled
hostname=idrac7
bootnfs=tftp 82000000 $(bootfile); run nfsargs; bootm
etherc0=90:B1:1C:59:61:3F
getherc0=90:B1:1C:59:61:40
macs_in_res1=yes
fwu_kernel_load=0x82000000
fwu=mmc sd
FWN=0x26c3d5_0x1139a4c6,0x38d2000_0x80668c52,0x57ff4_0xf0dc6379,0x73000_0x3ad0249b
bootcmd=fwu dev 1
benv=ootargs=root=/dev/mmcblk1p6 rootwait rw rootfstype=squashfs mem=239616k console=ttyS2,115200 <NULL> mac1=90:B1:1C:59:61:3F mac2=90:B1:1C:59:61:40 mode=vhard reset_cause=ac nmi_buf=0x83000000 quiet
fwu_spi_uboot1_start=0x0
fwu_spi_uboot2_start=0x80000
platform_id=DDRB
filesize=3C096DD
fileaddr=81000000
gatewayip=192.168.0.1
netmask=255.255.255.0
ipaddr=192.168.0.120
serverip=192.168.0.100
fwu_kernel_offset=81000200
fwu_rootfs_offset=8126c600
fwu_uboot_offset=84b3e600
fwu_uboot_size=57ff4
fwu_platform_offset=84b96600
fwu_platform_size=398
FWN1=0x26c3d5_0x1139a4c6,0x38d2000_0x80668c52,0x57ff4_0xf0dc6379,0x73000_0x3ad0249b
verify=no
dell_version=U-Boot checkin date(07-30-2012) Version(1.0.179)
stdin=serial
stdout=serial
stderr=serial
ethaddr=90:B1:1C:59:61:3F
eth2addr=90:B1:1C:59:61:40
mem=239616k
ethrotate=no
nmi_buf=0x83000000
runtime_args=mode=vhard reset_cause=ac nmi_buf=0x83000000
fwudev=evb
bootargs=root=/dev/mmcblk1p6 rootwait rw rootfstype=squashfs mem=239616k console=ttyS2,115200 <NULL> mac1=90:B1:1C:59:61:3F mac2=90:B1:1C:59:61:40  mode=vhard reset_cause=ac nmi_buf=0x83000000 quiet
fwu_kernel_start=40002
fwu_rootfs_start=48003
fwu_platform_start=122007
fwu_uboot_start=7fc04
fwu_kernel_size=1362
fwu_rootfs_size=1c68b
fwummc=emmc
ethact=sh_eth.0
ver=U-Boot 2009.08 (Jun 03 2013 - 03:47:19) Avocent (0.0.3) EVB

Environment size: 4272/65532 bytes

Before doing this SD card test, I tried to recover the emmc but it gives me a write error.

I am currently debating whether to buy an emmc chip and make the switch or keep trying with the SD.

Thank god I had stumbled upon this forum. Thanks to your guys help, I was able to successfully update my iDRAC firmware on my R320. Although mine wasn’t ‘bricked’ it just refused to update no matter how hard I tried or what method of updating it I used. Here is my Dell Forum right from the very start and how I have included the steps that I took for fixing my issue as there aren’t many for R320/R420 users. I was starting to lose hope with my R320, although it wasn’t bricked like yours, iDRAC just refused to update no matter how hard I tried or what method I used. Luckily, the util command worked for me and updated the firmware image from the SD card. If it wasn’t for your video I would have definitely given up! Here is my conversation with on the Dell Forum with the steps I took to fix this problem for anyone that had experienced similar issues: https://www.dell.com/community/PowerEdge-Hardware-General/Unable-to-upgrade-iDRAC-7-from-2-21-21/td-p/8388296

Hi Team,

I have the same problem with my r720:

Warning ! iDRAC initialization error. Continuing to boot may yield unexpected power loss due to unknown Power inventory and various features lost such as Remote Access, Active Power Management, Thermal Management, Inventory, LCD, or System Error Reporting.

Strike F1 to continue, F2 to run system setup program

  • If I hit F2, in BIOS option, under iDRAC Setting, I have: “SWC0700: iDRAC is not ready. The configuration values cannot be accessed.”

  • If I hit F1, the boot sequence continue and complain again about iDRAC “SWC0700: iDRAC is not ready. The configuration values cannot be accessed.”
    but if I press F1, the real boot continue.

I came across

https://www.dell.com/support/kbdoc/en-au/000120131/poweredge-idrac-recovery-procedure-with-firmimg-d7

The Bios is something like 2.52 or 2.56

I am not exactly sure which iDrac version I had running.
If I have to guess, I would say something like 2.30.30.30…

I have downloaded all iDrac versions and have extracted firmimg.d7 from all of them, which are:

1.20.20
1.23.23
1.31.30
1.35.35
1.37.35
1.40.40
1.45.45
1.46.45
1.57.57
1.66.65
2.10.10.10
2.15.10.10
2.20.20.20
2.21.21.21
2.30.30.30
2.31.31.30
2.32.31.30
2.40.40.40
2.41.40.40
2.50.50.50
2.52.52.52
2.60.60.60
2.61.60.60
2.63.60.62

Which version should I use on the SD disc?

Thank you
Marco

Hi,

an update:
What caused this, might have been that one power supply was defect, when I tried to do a rebranding

I tried it the image from 2.63.60.62 after replacing the defect powersupply.

there was no LED flashing, that might be the reason why it did not try to boot from the SD card.

I left the server now powered down - and basically be thrown out … :frowning:

If anyone has an idea, please let me know.

Thanks
Marco

Hiya…

Can u share a picture with the Diagram for the RS232TTL ? i´ve got a R420 unit with the same issue, it has just arrived this week, got it off someone that was going to scrap this unit, so i am willing to give it a try.

Hi guys… so i have managed to connect the BCM_UART port and interrupt i can get idrac7 console now… so i have formated a SD card and copied the firmimage.d7 to the sd card in FAT mode .

after playing around with the cmds it gives me the following errors trying to load image from SD card.

iDRAC7=> mmc list
sh_mmcif: 0
sh-sdhi: 1
iDRAC7=> mmc rescan 1
iDRAC7=> util recover -emmc -from sd -f firmimg.d7

UTIL RECOVER:Transport:sd TargetMMC:EMMC File:firmimg.d7
UTIL RECOVER:ERROR:Could not locate ‘firmimg.d7’ in FAT or EXT2 file system.

UTIL FAIL
iDRAC7=> mmc list
sh_mmcif: 0
sh-sdhi: 1
iDRAC7=> util recover -emmc -from sd -f firmimg.d7

UTIL RECOVER:Transport:sd TargetMMC:EMMC File:firmimg.d7
UTIL RECOVER:ERROR:Could not locate ‘firmimg.d7’ in FAT or EXT2 file system.

UTIL FAIL
iDRAC7=> mmc list
sh_mmcif: 0
sh-sdhi: 1
iDRAC7=> mmc list
sh_mmcif: 0
sh-sdhi: 1
iDRAC7=> mmc rescan 1
iDRAC7=> util recover -emmc -from sd -f firmimg.d7

UTIL RECOVER:Transport:sd TargetMMC:EMMC File:firmimg.d7
reading firmimg.d7

63064294 bytes read
UTIL RECOVER:SD load passed from FAT fs.
UTIL RECOVER:Transport time [sec:mil]: 10:897

Clear OS images in partition/s.
Clear kernelN, rootfsN, ubootN
‘EMMC’ blk size=[0x200][512] Erase to 0xffffffff
Mem buf size=[0x06000000][100663296] Total bytes=[0x08000000][134217728]
blocks[0x1:0x40001][1:262145]
mmc write failed000] Buf[0x88000000]…fill buffer…erase/write
util flash:
Failure writing blocks [1:196609] RC=0xffffffac
UTIL PASS
iDRAC7=> mmc list
sh_mmcif: 0
sh-sdhi: 1
iDRAC7=> mmc list
sh_mmcif: 0
sh-sdhi: 1
iDRAC7=> mmc rescan 1
iDRAC7=> util recover -emmc -from sd -f firmimg.d7

UTIL RECOVER:Transport:sd TargetMMC:EMMC File:firmimg.d7
reading firmimg.d7

63064294 bytes read
UTIL RECOVER:SD load passed from FAT fs.
UTIL RECOVER:Transport time [sec:mil]: 10:886

Clear OS images in partition/s.
Clear kernelN, rootfsN, ubootN
‘EMMC’ blk size=[0x200][512] Erase to 0xffffffff
Mem buf size=[0x06000000][100663296] Total bytes=[0x08000000][134217728]
blocks[0x1:0x40001][1:262145]
mmc write failed000] Buf[0x88000000]…fill buffer…erase/write
util flash:
Failure writing blocks [1:196609] RC=0xffffffac
UTIL PASS
iDRAC7=> mmc list
sh_mmcif: 0
sh-sdhi: 1
iDRAC7=> mmc list
sh_mmcif: 0
sh-sdhi: 1
iDRAC7=> mmc rescan 1
iDRAC7=> util recover -emmc -from sd -f firmimg.d7

UTIL RECOVER:Transport:sd TargetMMC:EMMC File:firmimg.d7
reading firmimg.d7

112384230 bytes read
UTIL RECOVER:SD load passed from FAT fs.
UTIL RECOVER:Transport time [sec:mil]: 19:383

Clear OS images in partition/s.
Clear kernelN, rootfsN, ubootN
‘EMMC’ blk size=[0x200][512] Erase to 0xffffffff
Mem buf size=[0x06000000][100663296] Total bytes=[0x08000000][134217728]
blocks[0x1:0x40001][1:262145]
mmc write failed000] Buf[0x88000000]…fill buffer…erase/write
util flash:
Failure writing blocks [1:196609] RC=0xffffffac
UTIL PASS
iDRAC7=>

Any ideas? when i tried to copy the firmimage.d7 to the SD card is crashed the card and usb came back up again but showing the image inside but it allways gives me erros when uploading the firmware img i will try to get a new SD card for testing.

Ok few more testing with different command and i got the following result

iDRAC7=> util recover -emmc -from sd -f firmimg.d7 -noreset -clean

UTIL RECOVER:Transport:sd TargetMMC:EMMC File:firmimg.d7
reading firmimg.d7

112384230 bytes read
UTIL RECOVER:SD load passed from FAT fs.
UTIL RECOVER:Transport time [sec:mil]: 19:382

Clear SPI LCL.
‘SPI NOR’ blk size=[0x10000][65536] Erase to 0xffffffff
Mem buf size=[0x06000000][100663296] Total bytes=[0x00180000][1572864]
blocks[0x1c:0x33][28:51]
Blocks [0x1c:0x33] Buf[0x88000000]…fill buffer…erase/write
Completed loop 1, Elapsed time in hr:min:sec:mil 17:161

Clear eMMC…~3 minutes.
‘EMMC’ blk size=[0x200][512] Erase to 0xffffffff
Mem buf size=[0x06000000][100663296] Total bytes=[0x80000000][-2147483648]
blocks[0x0:0x400000][0:4194304]
mmc write failedfff] Buf[0x88000000]…fill buffer…erase/write
util flash:
Failure writing blocks [0:196608] RC=0xffffffac
UTIL PASS
iDRAC7=>

but still getting errors.