Hi,
Couple of months ago my RN104 failed to boot after a power failure. I didn't really know what happened, but after much googling I stumbled upon this forum which has been super cool.
I picked up a ttl usb serial to plug into the back. If anyone is curious. There's 4 pins (in the shape of s square): GND/RX/TX/3.3V.
GND:If you have a multi-meter, you can figure out which one is GND, by OHM metering between 4 pins and the metal case (with RN104 unplugged and unpowered) . if you have 0 Ohms you have a short, and therefore it is ground pin (GND). If its like 10-20 Ohms , its not a ground.
RX: Diagonal to GND, is TX on the RN104 board, where you need to plug in your RX (from your TTL),
TX Then you're about 50/50 to guess where the TTL TX goes.
3.3vDo not plug in the 3.3v, it will short the whole thing won't work.
and if you do boot RN104 after loading putty's serial option and see $#$#@$@ instead of words, the rate is wrong, needs to be set to 115200 for RN104
I write this because there's no good description of which pin is which from googling.
I've followed the HOWTO:Restore ReadyNAS RN102/104 to original state : https://forum.doozan.com/read.php?3,122974 and I had a problem at the end where my step 7 looked like :
And the one from the howto looked like
So, that means...of the 5 things to flash, u-boot, u-boot-env, uImage, minirootfs, ubifs; u-boot or u-boot-env enviroments are the problem, as i've reflashed ulimage/minirootfs/ubifs and I still have an issue.
So more googling, from RN104 bricked's thread :https://forum.doozan.com/read.php?3,107689 , and RN2120v2 bricked thread: https://forum.doozan.com/read.php?3,95249, they seem to have "created?" the U-boot.bin file from the READYNASOSxxx.img file.
My questions at this point are
1) Am I on the right track? [Outputs of mtdparts / boot start-up / printenv are below ]
2) How do you turn the readynas firmware into a U-boot.bin, is that from the original file (tarball?) or the "u-boot-rn104-2.0.img" recovery file in the tarball , and then .....how?
This is what my boot looks like:
mtdparts
printenv
Couple of months ago my RN104 failed to boot after a power failure. I didn't really know what happened, but after much googling I stumbled upon this forum which has been super cool.
I picked up a ttl usb serial to plug into the back. If anyone is curious. There's 4 pins (in the shape of s square): GND/RX/TX/3.3V.
GND:If you have a multi-meter, you can figure out which one is GND, by OHM metering between 4 pins and the metal case (with RN104 unplugged and unpowered) . if you have 0 Ohms you have a short, and therefore it is ground pin (GND). If its like 10-20 Ohms , its not a ground.
RX: Diagonal to GND, is TX on the RN104 board, where you need to plug in your RX (from your TTL),
TX Then you're about 50/50 to guess where the TTL TX goes.
3.3vDo not plug in the 3.3v, it will short the whole thing won't work.
and if you do boot RN104 after loading putty's serial option and see $#$#@$@ instead of words, the rate is wrong, needs to be set to 115200 for RN104
I write this because there's no good description of which pin is which from googling.
I've followed the HOWTO:Restore ReadyNAS RN102/104 to original state : https://forum.doozan.com/read.php?3,122974 and I had a problem at the end where my step 7 looked like :
Marvell>> printenv bootargs bootargs=console=ttyS0,115200 Marvell>> printenv bootcmd bootcmd=usb start;fatload usb 0:1 0x2000000 /uImage-recovery;fatload usb 0:1 0x3000000 /initrd-recovery.gz;nand read 0x1000000 0xD4000 0x6000; bootm 0x2000000 0x3000000 0x1000000 Marvell>> printenv mtdparts mtdparts=mtdparts=armada-nand:0x180000@0(u-boot),0x20000@0x180000(u-boot-env),0x600000@0x200000(uImage),0x400000@0x800000(minirootfs),-(ubifs)
And the one from the howto looked like
Marvell>> printenv bootargs bootargs=console=ttyS0,115200 Marvell>> printenv bootcmd bootcmd=nand read 0x2000000 0x200000 0x600000; nand read 0x3000000 0x800000 0x400000; bootm 0x2000000 0x3000000 0x1000000 Marvell>> printenv mtdparts mtdparts=mtdparts=armada-nand:0x180000@0(u-boot),0x20000@0x180000(u-boot-env),0x600000@0x200000(uImage),0x400000@0x800000(minirootfs),-(ubifs)
So, that means...of the 5 things to flash, u-boot, u-boot-env, uImage, minirootfs, ubifs; u-boot or u-boot-env enviroments are the problem, as i've reflashed ulimage/minirootfs/ubifs and I still have an issue.
So more googling, from RN104 bricked's thread :https://forum.doozan.com/read.php?3,107689 , and RN2120v2 bricked thread: https://forum.doozan.com/read.php?3,95249, they seem to have "created?" the U-boot.bin file from the READYNASOSxxx.img file.
My questions at this point are
1) Am I on the right track? [Outputs of mtdparts / boot start-up / printenv are below ]
2) How do you turn the readynas firmware into a U-boot.bin, is that from the original file (tarball?) or the "u-boot-rn104-2.0.img" recovery file in the tarball , and then .....how?
This is what my boot looks like:
BootROM 1.08
Booting from NAND flash
General initialization - Version: 1.0.0
High speed PHY - Version: 2.1.4 (COM-PHY-V20)
Update PEX Device ID 0x6710
High speed PHY - Ended Successfully
0000
DDR3 Training Sequence - Ver 5.7.1
DDR3 Training Sequence - Run without PBS.
DDR3 Training Sequence - Ended Successfully
BootROM: Image checksum verification PASSED
__ __ _ _
| \/ | __ _ _ ____ _____| | |
| |\/| |/ _` | '__\ \ / / _ \ | |
| | | | (_| | | \ V / __/ | |
|_| |_|\__,_|_| \_/ \___|_|_|
_ _ ____ _
| | | | | __ ) ___ ___ | |_
| | | |___| _ \ / _ \ / _ \| __|
| |_| |___| |_) | (_) | (_) | |_
\___/ |____/ \___/ \___/ \__|
** LOADER **
U-Boot 2011.12-gec25d27-dirty (Oct 26 2015 - 16:56:14) Marvell version: v2011.12 2014_T2.0p1
06/23/2015 ReadyNAS-104 V2.0
Board: DB-88F6710-BP
SoC: MV6710 A1
CPU: Marvell PJ4B v7 UP (Rev 1) LE
CPU @ 1200 [MHz]
L2 @ 600 [MHz]
TClock @ 200 [MHz]
DDR @ 600 [MHz]
DDR 16Bit Width, FastPath Memory Access
DRAM: 512 MiB
Map: Code: 0x1feef000:0x1ff9f514
BSS: 0x1ffef8a0
Stack: 0x1f9eeef8
Heap: 0x1f9ef000:0x1feef000
NAND: (ID 0xf1ad) 128 MiB
MMC: MRVL_MMC: 0
Bad block table found at page 65472, version 0x01
Bad block table found at page 65408, version 0x01
Initialize and scan all PCI interfaces
PEX unit.port(active IF[-first bus]):
------------------------------------------
PEX 0: Root Complex Interface, Detected Link X1, GEN 2.0
PEX 1: Root Complex Interface, Detected Link X1, GEN 2.0
FPU not initialized
USB 0: Host Mode
USB 1: Host Mode
Shutting down unused interfaces:
SDIO
AUDIO
TDM
Modules/Interfaces Detected:
RGMII0 Phy
RGMII1 Phy
PEX0 (Lane 0)
PEX1 (Lane 1)
SATA0 (Lane 2)
SATA1 (Lane 3)
Net: egiga0, egiga1 [PRIME]
Power On!
FDT loaded successfully
Hit any key to stop autoboot: 0
(Re)start USB...
USB: Active port: 0
Register 10011 NbrPorts 1
USB EHCI 1.00
scanning bus for devices... 1 USB Device(s) found
scanning bus for storage devices... 0 Storage Device(s) found
** Invalid boot device **
** Invalid boot device **
NAND read: device 0 offset 0xd4000, size 0x6000
24576 bytes read: OK
Wrong Image Format for bootm command
ERROR: can't get kernel image!
mtdparts
Marvell>> mtdparts device nand0 <armada-nand>, # parts = 5 #: name size offset mask_flags 0: u-boot 0x000000180000 0x000000000000 0 1: u-boot-env 0x000000020000 0x000000180000 0 2: uImage 0x000000600000 0x000000200000 0 3: minirootfs 0x000000400000 0x000000800000 0 4: ubifs 0x000007400000 0x000000c00000 0 active partition: nand0,0 - (u-boot) 0x000000180000 @ 0x000000000000 defaults: mtdids : none mtdparts: none
printenv
Marvell>> printenv AC_Power_fail_detect=open CASset=min HW_version=MVT MALLOC_len=5 Manufacturer=NETGEAR Product=ReadyNAS 104 SKUNum=RN104 SerialNum=3EPC48EE00147 Startup=Normal UUID=a272fe66-1d7d-11e4-95e4-28c68e36b8b0 Version=V1.0 autoload=no bootargs=console=ttyS0,115200 bootargs_end=:10.4.50.254:255.255.255.0:KW40:eth0:none bootargs_root=root=/dev/nfs rw bootcmd=usb start;fatload usb 0:1 0x2000000 /uImage-recovery;fatload usb 0:1 0x3000000 /initrd-recovery.gz;nand read 0x1000000 0xD4000 0x6000; bootm 0x2000000 0x3000000 0x1000000 bootcmd_fdt=tftpboot 0x2000000 $image_name;tftpboot $fdtaddr $fdtfile;setenv bootargs $console $mtdparts $bootargs_root nfsroot=$serverip:$rootpath ip=$ipaddr:$serverip$bootargs_end $mvNetConfig video=dovefb:lcd0:$lcd0_params clcd.lcd0_enable=$lcd0_enable clcd.lcd_panel=$lcd_panel; bootz 0x2000000 - $fdtaddr; bootcmd_ubi=ubi part ubifs; ubifsmount rootfs; ubifsload 0x2000000 kernel; ubifsload 0x3000000 initrd.gz; bootm 0x2000000 0x3000000 0x1000000 bootdelay=0 cacheShare=no console=console=ttyS0,115200 disL2Cache=yes disaMvPnp=no eeeEnable=no enaAutoRecovery=yes enaClockGating=yes enaExtDisk=no enaFPU=no enaMonExt=no enaWrAllo=no envver=3 eth1addr=28:C6:8E:36:B8:B1 eth1mtu=1500 ethact=egiga1 ethaddr=28:C6:8E:36:B8:B0 ethmtu=1500 ethprime=egiga1 fdt_skip_update=no fdtaddr=0x1000000 fdtfile=armada-370-db.dtb image_name=uImage initrd_name=uInitrd load_addr=0x02000000 loadaddr=0x02000000 mtddevname=u-boot mtddevnum=0 mtdids=nand0=armada-nand mtdparts=mtdparts=armada-nand:0x180000@0(u-boot),0x20000@0x180000(u-boot-env),0x600000@0x200000(uImage),0x400000@0x800000(minirootfs),-(ubifs) mvNetConfig=mv_net_config=1,(00:50:43:11:11:11,0:1:2:3:4),mtu=1500 mv_pon_addr=00:50:43:00:00:02 nandEcc=1bit netbsd_en=no netretry=no partition=nand0,0 pcieTune=no pexMode=rc pxe_files_load=:default.arm-armada370-db:default.arm-armadaxp:default.arm pxefile_addr_r=3100000 rcvrip=169.254.100.100 sata_delay_reset=0 sata_dma_mode=yes setL2CacheWT=no standalone=fsload $load_addr $image_name;setenv bootargs $console $mtdparts root=/dev/mtdblock0 rw ip=$ipaddr:$serverip$bootargs_end; bootm $load_addr; stderr=serial stdin=serial stdout=serial usb0Mode=host usb1Mode=host usb2Mode=device usbActive=0 vxworks_en=no yuk_ethaddr=00:00:00:EE:51:81