Quantcast
Channel: Linux Device Hacking - uBoot
Viewing all articles
Browse latest Browse all 902

NSA310 not booting after flashing 2017.07 U-Boot Kirkwood (1 reply)

$
0
0
Hi All!

First of all thanks to bodhi for all your work!

Today I tried flashing Uboot to my NSA310 by following instructions from https://forum.doozan.com/read.php?3,12381

Everything went well until I rebooted and it didn't come back up. I hope someone can point me in a direction that brings this thing back to live.

The device turns on, but I do not get any packages from it at all when I on my computer tcpdump on the interface directly connected to the device (I would at least expect an arp lookup of the netconsole server ip).

The USB drive that I am trying to boot from has Debian-4.12.1-kirkwood-tld-1-rootfs-bodhi.tar.bz2 installed.

Here is a log of what I did:

$ telnet 192.168.87.253
nsa310 login: root
Password: 
BusyBox v1.17.2 (2016-03-11 17:11:16 CST) built-in shell (ash)
Enter 'help' for a list of built-in commands.

~ # mount
rootfs on / type rootfs (rw)
/proc on /proc type proc (rw,relatime)
/sys on /sys type sysfs (rw,relatime)
none on /proc/bus/usb type usbfs (rw,relatime)
devpts on /dev/pts type devpts (rw,relatime,mode=600)
/dev/mtdblock6 on /zyxel/mnt/nand type yaffs2 (ro,relatime)
/dev/sda1 on /zyxel/mnt/sysdisk type ext2 (ro,relatime,errors=continue)
/dev/loop0 on /ram_bin type ext2 (ro,relatime,errors=continue)
/dev/loop0 on /usr type ext2 (ro,relatime,errors=continue)
/dev/loop0 on /lib/security type ext2 (ro,relatime,errors=continue)
/dev/loop0 on /lib/modules type ext2 (ro,relatime,errors=continue)
/dev/ram0 on /tmp/tmpfs type tmpfs (rw,relatime,size=5120k)
/dev/ram0 on /usr/local/etc type tmpfs (rw,relatime,size=5120k)
/dev/ram0 on /usr/local/var type tmpfs (rw,relatime,size=5120k)
/dev/mtdblock4 on /etc/zyxel type yaffs2 (rw,relatime)
/dev/md0 on /i-data/ea498e69 type ext4 (rw,noatime,barrier=0,data=writeback,usrquota)
/dev/md0 on /usr/local/zy-pkgs type ext4 (rw,noatime,barrier=0,data=writeback,usrquota)
/dev/md0 on /etc/zyxel/zy-pkgs type ext4 (rw,noatime,barrier=0,data=writeback,usrquota)
/dev/md0 on /usr/local/apache/htdocs/adv,/pkg type ext4 (rw,noatime,barrier=0,data=writeback,usrquota)
nfsd on /proc/fs/nfsd type nfsd (rw,relatime)
/dev/md0 on /usr/local/apache/web_framework/data/cache type ext4 (rw,noatime,barrier=0,data=writeback,usrquota)
/dev/mtdblock4 on /usr/local/apache/web_framework/data/config type yaffs2 (rw,relatime)

~ # cat /etc/fstab
/dev/ram0       /               ext2    defaults        0       0
none            /proc           proc    defaults        0       0
none            /sys            sysfs   defaults        0       0
none            /dev/pts        devpts  defaults        0       0

~ # cat /proc/cpuinfo
Processor	: Feroceon 88FR131 rev 1 (v5l)
BogoMIPS	: 1199.30
Features	: swp half thumb fastmult edsp
CPU implementer : 0x56
CPU architecture: 5TE
CPU variant	: 0x2
CPU part	: 0x131
CPU revision	: 1

Hardware	: Feroceon-KW
Revision	: 0000
Serial		: 0000000000000000
~ # cat /proc/meminfo
MemTotal:	  247952 kB
MemFree:	    7704 kB
Buffers:	   23540 kB
Cached: 	  166952 kB
SwapCached:	       0 kB
Active: 	   49508 kB
Inactive:	  157528 kB
Active(anon):	    6928 kB
Inactive(anon):    26376 kB
Active(file):	   42580 kB
Inactive(file):   131152 kB
Unevictable:	   14812 kB
Mlocked:	       0 kB
SwapTotal:	  524280 kB
SwapFree:	  524280 kB
Dirty:		       0 kB
Writeback:	       0 kB
AnonPages:	   31388 kB
Mapped: 	   12796 kB
Slab:		   13796 kB
SReclaimable:	    2984 kB
SUnreclaim:	   10812 kB
PageTables:	    1004 kB
NFS_Unstable:	       0 kB
Bounce: 	       0 kB
WritebackTmp:	       0 kB
CommitLimit:	  648256 kB
Committed_AS:	  315308 kB
VmallocTotal:	  385024 kB
VmallocUsed:	     608 kB
VmallocChunk:	  382828 kB
~ # dmesg
Linux version 2.6.31.8 (root@BuildMachine) (gcc version 4.3.2 (sdk3.3-ct-ng-1.4.1) ) #2 Fri Mar 11 17:35:20 CST 2016
CPU: Feroceon 88FR131 [56251311] revision 1 (ARMv5TE), cr=00053977
CPU: VIVT data cache, VIVT instruction cache
Machine: Feroceon-KW
Using UBoot passing parameters structure
Memory policy: ECC disabled, Data cache writeback
On node 0 totalpages: 65536
free_area_init_node: node 0, pgdat c0849988, node_mem_map c0868000
  Normal zone: 512 pages used for memmap
  Normal zone: 0 pages reserved
  Normal zone: 65024 pages, LIFO batch:15
Built 1 zonelists in Zone order, mobility grouping off.  Total pages: 65024
Kernel command line: console=ttyS0,115200 mtdparts=nand_mtd:0x100000(uboot),0x80000(uboot_env),0x80000(key_store),0x80000(info),0x200000(etc),0x600000(kernel_1),0x37C0000(rootfs1),0x600000(kernel_2),0x37C0000(rootfs2) root=/dev/nfs rw init=/init
PID hash table entries: 1024 (order: 10, 4096 bytes)
Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
Memory: 256MB = 256MB total
Memory: 244992KB available (5304K code, 300K data, 2804K init, 0K highmem)
Hierarchical RCU implementation.
NR_IRQS:128
Console: colour dummy device 80x30
Calibrating delay loop... 1199.30 BogoMIPS (lpj=5996544)
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
NET: Registered protocol family 16
Feroceon L2: Enabling L2
Feroceon L2: Cache support initialised.

CPU Interface
-------------
SDRAM_CS0 ....base 00000000, size 256MB
SDRAM_CS1 ....disable
SDRAM_CS2 ....disable
SDRAM_CS3 ....disable
PEX0_MEM ....base e0000000, size 128MB
PEX0_IO ....base f2000000, size   1MB
PEX1_MEM ....no such
PEX1_IO ....no such
INTER_REGS ....base f1000000, size   1MB
NFLASH_CS ....base fa000000, size   2MB
SPI_CS ....base f4000000, size	16MB
BOOT_ROM_CS ....no such
DEV_BOOTCS ....no such
CRYPT_ENG ....base f0000000, size   2MB

  Marvell Development Board (LSP Version KW_LSP_5.1.3_patch18)-- RD-88F6281A  Soc: 88F6281 A1 LE

 Detected Tclk 200000000 and SysClk 400000000
Marvell USB EHCI Host controller #0: c8040740
PEX0 interface detected Link X1
pci 0000:00:01.0: reg 10 io port: [0xf0000000-0xf00000ff]
pci 0000:00:01.0: reg 18 64bit mmio: [0x40000000-0x40000fff]
pci 0000:00:01.0: reg 20 64bit mmio: [0x40004000-0x40007fff]
pci 0000:00:01.0: reg 30 32bit mmio: [0x000000-0x00ffff]
pci 0000:00:01.0: supports D1 D2
pci 0000:00:01.0: PME# supported from D0 D1 D2 D3hot D3cold
pci 0000:00:01.0: PME# disabled
PCI: bus0: Fast back to back transfers disabled
mvPexLocalBusNumSet: ERR. Invalid PEX interface 1
bio: create slab <bio-0> at 0
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
cfg80211: Calling CRDA to update world regulatory domain
NET: Registered protocol family 2
IP route cache hash table entries: 2048 (order: 1, 8192 bytes)
TCP established hash table entries: 8192 (order: 4, 65536 bytes)
TCP bind hash table entries: 8192 (order: 3, 32768 bytes)
TCP: Hash tables configured (established 8192 bind 8192)
TCP reno registered
NET: Registered protocol family 1
rtc mv_rtc: rtc core: registered kw-rtc as rtc0
RTC registered
cpufreq: Init kirkwood cpufreq driver
cpufreq: High frequency: 1200000KHz - Low frequency: 400000KHz
cpufreq: Setting CPU Frequency to 1200000 KHz
cpufreq: Setting PowerSaveState to off
XOR registered 4 channels
XOR 2nd invalidate WA enabled
mvCesaInit: sessions=640, queue=64, pSram=f0000000
Warning: TS unit is powered off.
gpio_dev = fd00000
LED_SET_CTL_IOC_NUM= 6702
High gpio polarity = 50
High gpio polarity = 70
Enable Interrupt
mv88f6281_wdt: Watchdog Timer timeout = 8 sec.
mv88f6281_wdt: HW Watchdog timeout    = 15 sec.
VFS: Disk quotas dquot_6.5.2
Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
Installing knfsd (copyright (C) 1996 okir@monad.swb.de).
JFFS2 version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
fuse init (API version 7.12)
SGI XFS with security attributes, large block/inode numbers, no debug enabled
SGI XFS Quota Management subsystem
yaffs built Mar 11 2016 17:19:52 Installing.




YAFFS-WARNING CONFIG_YAFFS_ALWAYS_CHECK_CHUNK_ERASED selected.



msgmni has been set to 478
alg: No test for cipher_null (cipher_null-generic)
alg: No test for ecb(cipher_null) (ecb-cipher_null)
alg: No test for digest_null (digest_null-generic)
alg: No test for compress_null (compress_null-generic)
alg: No test for stdrng (krng)
Block layer SCSI generic (bsg) driver version 0.4 loaded (major 252)
io scheduler noop registered
io scheduler cfq registered (default)
Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
serial8250.0: ttyS0 at MMIO 0xf1012000 (irq = 33) is a 16550A
console [ttyS0] enabled
brd: module loaded
loop: module loaded
Integrated Sata device found
IRQ 21/mvSata: IRQF_DISABLED is not guaranteed on shared IRQs
Wake up disk0......
Wake up disk1......
scsi0 : Marvell SCSI to SATA adapter
scsi1 : Marvell SCSI to SATA adapter
scsi 0:0:0:0: Direct-Access		 WD5000AVDS-63U7B 01.0 PQ: 0 ANSI: 5
EnablePowerSaving
PowerSavingTime = 15
sd 0:0:0:0: [sda] Sector size 0 reported, assuming 512.
sd 0:0:0:0: [sda] 976773168 512-byte logical blocks: (500 GB/465 GiB)
sd 0:0:0:0: [sda] 0-byte physical blocks
sd 0:0:0:0: Attached scsi generic sg0 type 0
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Mode Sense: 23 00 10 00
Loading Marvell Ethernet Driver:
  o Cached descriptors in DRAM
  o DRAM SW cache-coherency
  o 0 Giga ports supported
  o Single RX Queue support - ETH_DEF_RXQ=0
  o Single TX Queue support - ETH_DEF_TXQ=0
  o TCP segmentation offload (TSO) supported
  o Large Receive offload (LRO) supported
  o Receive checksum offload supported
  o Transmit checksum offload supported
  o Network Fast Processing (Routing) supported - (Disabled)
  o Driver ERROR statistics enabled
  o Proc tool API enabled
  o SKB Reuse supported - (Disabled)
  o SKB Recycle supported - (Disabled)
  o Rx descripors: q0=128
  o Tx descripors: q0=532
  o Loading network interface(s):

mvFpRuleDb (c8f5a000): 2048 entries, 8192 bytes
Counter=0, opIdx=6, overhead=16
Counter=1, opIdx=2, overhead=0
Counter=2, opIdx=1, overhead=18
Counter=3, opIdx=2, overhead=0
NAND device: Manufacturer ID: 0xec, Chip ID: 0xf1 (Samsung NAND 128MiB 3,3V 8-bit)
Scanning device for bad blocks
Bad eraseblock 962 at 0x000007840000
9 cmdlinepart partitions found on MTD device nand_mtd
Using command line partition definition
Creating 9 MTD partitions on "nand_mtd":
0x000000000000-0x000000100000 : "uboot"
sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, supports DPO and FUA
sd 0:0:0:0: [sda] Sector size 0 reported, assuming 512.
0x000000100000-0x000000180000 : "uboot_env"
0x000000180000-0x000000200000 : "key_store"
0x000000200000-0x000000280000 : "info"
 sda:
0x000000280000-0x000000480000 : "etc"
0x000000480000-0x000000a80000 : "kernel_1"
0x000000a80000-0x000004240000 : "rootfs1"
0x000004240000-0x000004840000 : "kernel_2"
 sda1 sda2
0x000004840000-0x000008000000 : "rootfs2"
sd 0:0:0:0: [sda] Sector size 0 reported, assuming 512.
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
ehci_marvell ehci_marvell.70059: Marvell Orion EHCI
ehci_marvell ehci_marvell.70059: new USB bus registered, assigned bus number 1
sd 0:0:0:0: [sda] Attached SCSI disk
ehci_marvell ehci_marvell.70059: irq 19, io base 0xf1050100
ehci_marvell ehci_marvell.70059: USB 2.0 started, EHCI 1.00
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
uhci_hcd: USB Universal Host Controller Interface driver
usbcore: registered new interface driver usblp
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
usbcore: registered new interface driver ums-datafab
usbcore: registered new interface driver ums-freecom
usbcore: registered new interface driver ums-jumpshot
usbcore: registered new interface driver ums-sddr09
usbcore: registered new interface driver ums-sddr55
usbcore: registered new interface driver ums-usbat
mice: PS/2 mouse device common for all mice
i2c /dev entries driver
hwmon-vid: Unknown VRM version of your CPU
md: linear personality registered for level -1
md: raid0 personality registered for level 0
md: raid1 personality registered for level 1
cpufreq: Setting CPU Frequency to 1200000 KHz
cpufreq: Setting PowerSaveState to off
sdhci: Secure Digital Host Controller Interface driver
sdhci: Copyright(c) Pierre Ossman
mmc0: mvsdio driver initialized, lacking card detect (fall back to polling)
usbcore: registered new interface driver hiddev
usbcore: registered new interface driver usbhid
usbhid: v2.6:USB HID core driver
TCP cubic registered
NET: Registered protocol family 10
lo: Disabled Privacy Extensions
Mobile IPv6
IPv6 over IPv4 tunneling driver
sit0: Disabled Privacy Extensions
ip6tnl0: Disabled Privacy Extensions
NET: Registered protocol family 17
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
rtc mv_rtc: setting system clock to 2019-02-28 17:10:02 UTC (1551373802)
Freeing init memory: 2804K
usb 1-1: new high speed USB device using ehci_marvell and address 2
In hub_port_init, and number is 0, retry 0, port 1 .....
usb 1-1: configuration #1 chosen from 1 choice
hub 1-1:1.0: USB hub found
hub 1-1:1.0: 4 ports detected
r8168 Gigabit Ethernet driver 8.023.00-NAPI loaded
r8168 0000:00:01.0: no MSI. Back to INTx.
 Set LED ...
eth%d: RTL8168B/8111B at 0xd0900000, 50:67:f0:52:9e:d9, IRQ 9
r8168: This product is covered by one or more of the following patents: US5,307,459, US5,434,872, US5,732,094, US6,570,884, US6,115,776, and US6,327,625.
eth0: Identified chip type is 'RTL8168D/8111D'.
r8168  Copyright (C) 2011  Realtek NIC software team <nicfae@realtek.com>
 This program comes with ABSOLUTELY NO WARRANTY; for details, please see http://www.gnu.org/licenses/.
 This is free software, and you are welcome to redistribute it under certain conditions; see http://www.gnu.org/licenses/.
r8168: egiga0: link down
ADDRCONF(NETDEV_UP): egiga0: link is not ready
yaffs: dev is 32505862 name is "mtdblock6" ro
yaffs: passed flags ""
yaffs: Attempting MTD mount of 31.6,"mtdblock6"
yaffs_read_super: isCheckpointed 0
r8168: egiga0: link up
ADDRCONF(NETDEV_CHANGE): egiga0: link becomes ready
r8168: egiga0: link up
yaffs: dev is 32505860 name is "mtdblock4" rw
yaffs: passed flags ""
yaffs: Attempting MTD mount of 31.4,"mtdblock4"
yaffs_read_super: isCheckpointed 0
NTFS driver 2.1.29 [Flags: R/O MODULE].
tntfs: module license 'Commercial. For support email ntfs-support@tuxera.com.' taints kernel.
Disabling lock debugging due to kernel taint
Tuxera NTFS driver 3011.12.23 [Flags: R/W MODULE].
PPP generic driver version 2.4.2
PPP MPPE Compression module registered
PPP Deflate Compression module registered
NET: Registered protocol family 24
PPP BSD Compression module registered
egiga0: no IPv6 routers present
md: md0 stopped.
md: bind<sda2>
md0: detected capacity change from 0 to 499577782784
 md0: unknown partition table
EXT4-fs (md0): barriers disabled
kjournald2 starting: pid 1588, dev md0:8, commit interval 5 seconds
EXT4-fs (md0): warning: checktime reached, running e2fsck is recommended
EXT4-fs (md0): internal journal on md0:8
EXT4-fs (md0): delayed allocation enabled
EXT4-fs: file extents enabled
EXT4-fs: mballoc enabled
EXT4-fs (md0): mounted filesystem with writeback data mode
DisablePowerSaving
TimerState = 1
EnablePowerSaving
PowerSavingTime = 15
Adding 524280k swap on /i-data/.zyxel/swap_ul6545p.  Priority:-1 extents:4 across:542712k
svc: failed to register lockdv1 RPC service (errno 97).
Uncached vma c231c5f8 (addr 40b3c000 flags 080000ff phy 04970000) from pid 5286
Uncached vma c231c548 (addr 40b3f000 flags 080000ff phy 04970000) from pid 5286
Uncached vma c231c548 (addr 406fe000 flags 080000ff phy 04970000) from pid 1367
Uncached vma c231c548 (addr 406fe000 flags 080000ff phy 04970000) from pid 1367
nfsd: peername failed (err 107)!

// Step 1.
~ #  cat /etc/fw_env.config
# Configuration file for fw_(printenv/saveenv) utility.
# Up to two entries are valid, in this case the redundand
# environment sector is assumed present.
# Notice, that the "Number of sectors" is ignored on NOR.

# MTD device name	Device offset	Env. size	Flash sector size	Number of sectors
# NAND example
/dev/mtd1		0x0000		0x20000 	0x20000 		4

~ #  cat /proc/mtd
dev:	size   erasesize  name
mtd0: 00100000 00020000 "uboot"
mtd1: 00080000 00020000 "uboot_env"
mtd2: 00080000 00020000 "key_store"
mtd3: 00080000 00020000 "info"
mtd4: 00200000 00020000 "etc"
mtd5: 00600000 00020000 "kernel_1"
mtd6: 037c0000 00020000 "rootfs1"
mtd7: 00600000 00020000 "kernel_2"
mtd8: 037c0000 00020000 "rootfs2"

// Step 2.
/i-data/ea498e69/nfs/nas/uboot-update/tools # ./fw_printenv
bootargs=console=ttyS0,115200 mtdparts=nand_mtd:0x100000(uboot),0x80000(uboot_env),0x80000(key_store),0x80000(info),0x200000(etc),0x600000(kernel_1),0x37C0000(rootfs1),0x600000(kernel_2),0x37C0000(rootfs2) root=/dev/nfs rw init=/init
bootcmd=nand read.e 0x2000000 $(kernel_addr) 0x600000; bootm 0x2000000
bootdelay=2
baudrate=115200
loads_echo=0
eth1addr=00:19:CB:00:51:82
ipaddr=10.4.50.165
serverip=10.4.50.5
rootpath=/mnt/ARM_FS/
netmask=255.255.255.0
nandEcc=1bit
kernel_addr=480000
PRODUCT_NAME=NSA-310
FEATURE_BIT=00
CONTRY_TYPE=FF
VENDOR_NAME=ZyXEL Communications Corp.
run_diag=yes
ethaddr=50:67:F0:52:9E:D9
MODEL_ID=A203

// Step 3.
/i-data/ea498e69/nfs/nas/uboot-update/tools # ./nanddump --noecc --omitoob -l 0x80000 -f mtd0 /dev/mtd0
Block size 131072, page size 2048, OOB size 64
Dumping data starting at 0x00000000 and ending at 0x00080000...
/i-data/ea498e69/nfs/nas/uboot-update/tools # md5sum mtd0 
428d03817291278c9cec6468af72f4ff  mtd0

/i-data/ea498e69/nfs/nas/uboot-update/dump # ../tools/nanddump --noecc --omitoob -f mtdtd2 /dev/mtd2
Block size 131072, page size 2048, OOB size 64
Dumping data starting at 0x00000000 and ending at 0x00080000...
/i-data/ea498e69/nfs/nas/uboot-update/dump # ../tools/nanddump --noecc --omitoob -f m-f mtd3 /dev/mtd3
Block size 131072, page size 2048, OOB size 64
Dumping data starting at 0x00000000 and ending at 0x00080000...
/i-data/ea498e69/nfs/nas/uboot-update/dump # ../tools/nanddump --noecc --omitoob -f mtd3 /d4 /dev/mtd4
Block size 131072, page size 2048, OOB size 64
Dumping data starting at 0x00000000 and ending at 0x00200000...
/i-data/ea498e69/nfs/nas/uboot-update/dump # ../tools/nanddump --noecc --omitoob -f mtd4 /d5 /dev/mtd5
Block size 131072, page size 2048, OOB size 64
Dumping data starting at 0x00000000 and ending at 0x00600000...
/i-data/ea498e69/nfs/nas/uboot-update/dump # ../tools/nanddump --noecc --omitoob -f mtd5 /d6 /dev/mtd6
Block size 131072, page size 2048, OOB size 64
Dumping data starting at 0x00000000 and ending at 0x037c0000...
/i-data/ea498e69/nfs/nas/uboot-update/dump # ../tools/nanddump --noecc --omitoob -f mtd mtd7 /dev/mtd7
Block size 131072, page size 2048, OOB size 64
Dumping data starting at 0x00000000 and ending at 0x00600000...
/i-data/ea498e69/nfs/nas/uboot-update/dump # ../tools/nanddump --noecc --omitoob -f mtd7 /d8 /dev/mtd8

// Step 4.
/tmp # dmesg | grep mtd
Kernel command line: console=ttyS0,115200 mtdparts=nand_mtd:0x100000(uboot),0x80000(uboot_env),0x80000(key_store),0x80000(info),0x200000(etc),0x600000(kernel_1),0x37C0000(rootfs1),0x600000(kernel_2),0x37C0000(rootfs2) root=/dev/nfs rw init=/init
9 cmdlinepart partitions found on MTD device nand_mtd
Creating 9 MTD partitions on "nand_mtd":
yaffs: dev is 32505862 name is "mtdblock6" ro
yaffs: Attempting MTD mount of 31.6,"mtdblock6"
yaffs: dev is 32505860 name is "mtdblock4" rw
yaffs: Attempting MTD mount of 31.4,"mtdblock4"

// Step 5./6.
/tmp # ./flash_erase /dev/mtd0 0 4
Erasing 128 Kibyte @ 60000 -- 100 % complete 

/tmp # nandwrite /dev/mtd0 uboot.2017.07-tld-1.nsa310.mtd0.kwb 
Writing data to block 0
Writing data to block 20000
Writing data to block 40000
Writing data to block 60000

/tmp # fw_printenv
Warning: Bad CRC, using default environment
bootargs=console=ttyS0,115200 mtdparts=nand_mtd:0x100000(uboot),0x80000(uboot_env),0x80000(key_store),0x80000(info),0xA00000(etc),0xA00000(kernel_1),0x2FC0000(rootfs1),0xA00000(kernel_2),0x2FC0000(rootfs2) root=/dev/nfs rw init=/init
bootcmd=nand read.e 0x2000000 $(kernel_addr) 0xA00000; bootm 0x2000000
bootdelay=2
baudrate=115200
nandEcc=1bit
kernel_addr=480000
MODEL_ID=A203
PRODUCT_NAME=NSA-310
FEATURE_BIT=00
CONTRY_TYPE=FF
VENDOR_NAME=ZyXEL Communications Corp.


// Step 8.
// The guide says  'As described in step 1, u-boot envs must be defined in /etc/fw_env.config as' ..., so I updated /etc/fw_env.config to that:
/tmp # cat /etc/fw_env.config
 # MTD device name      Device offset   Env. size       Flash sector size       Number of sectors 
 /dev/mtd0 0xc0000 0x20000 0x20000


/tmp # ./flash_erase /dev/mtd0 0xc0000 1
Erasing 128 Kibyte @ c0000 -- 100 % complete 

/tmp # nandwrite -s 786432 /dev/mtd0 uboot.2016.05-tld-1.environment.img
Writing data to block c0000

/tmp # fw_setenv arcNumber 4022
/tmp # fw_setenv machid

/tmp # fw_setenv ethaddr '50:67:F0:52:9E:D9'
/tmp # fw_setenv eth1addr '00:19:CB:00:51:82'

/tmp # fw_setenv mtdparts 'nand_mtd:0x100000(uboot),0x80000(uboot_env),0x80000(key_store),0x80000(info),0x200000(etc),0x600000(kernel_1),0x37C0000(rootfs1),0x600000(kernel_2),0x37C0000(rootfs2)'

~ # fw_setenv dtb_file '/boot/dts/kirkwood-nsa310.dtb'

/tmp # fw_setenv preboot_nc 'setenv nc_ready 0; for pingstat in 1 2 3 4 5; do; sleep 1; if run if_netconsole
; then setenv nc_ready 1; fi; done; if test $nc_ready -eq 1; then run start_netconsole; fi'
/tmp # fw_setenv preboot 'run preboot_nc'
/tmp # fw_setenv ipaddr    '192.168.11.253'
/tmp # fw_setenv serverip '192.168.11.200'



~ # fw_printenv
bootcmd_exec=run load_uimage; if run load_initrd; then if run load_dtb; then bootm $load_uimage_addr $load_initrd_addr $load_dtb_addr; else bootm $load_uimage_addr $loa
d_initrd_addr; fi; else if run load_dtb; then bootm $load_uimage_addr - $load_dtb_addr; else bootm $load_uimage_addr; fi; fi
bootcmd=run bootcmd_uenv; run scan_disk; run set_bootargs; run bootcmd_exec
bootcmd_uenv=run uenv_load; if test $uenv_loaded -eq 1; then run uenv_import; fi
bootdelay=10
bootdev=usb
device=0:1
devices=usb ide mmc
disks=0 1 2 3
ethact=egiga0
if_netconsole=ping $serverip
led_error=orange blinking
led_exit=green off
led_init=green blinking
load_dtb_addr=0x1c00000
load_initrd_addr=0x1100000
load_uimage_addr=0x800000
load_dtb=echo loading DTB $dtb_file ...; load $bootdev $device $load_dtb_addr $dtb_file
load_initrd=echo loading uInitrd ...; load $bootdev $device $load_initrd_addr /boot/uInitrd
load_uimage=echo loading uImage ...; load $bootdev $device $load_uimage_addr /boot/uImage
mainlineLinux=yes
mtdids=nand0=orion_nand
partition=nand0,2
scan_disk=echo running scan_disk ...; scan_done=0; setenv scan_usb "usb start";  setenv scan_ide "ide reset";  setenv scan_mmc "mmc rescan"; for dev in $devices; do if
test $scan_done -eq 0; then echo Scan device $dev; run scan_$dev; for disknum in $disks; do if test $scan_done -eq 0; then echo device $dev $disknum:1; if load $dev $di
sknum:1 $load_uimage_addr /boot/uImage 1; then scan_done=1; echo Found bootable drive on $dev $disknum; setenv device $disknum:1; setenv bootdev $dev; fi; fi; done; fi;
 done
set_bootargs=setenv bootargs console=ttyS0,115200 root=LABEL=rootfs rootdelay=10 $mtdparts $custom_params
start_netconsole=setenv ncip $serverip; setenv bootdelay 10; setenv stdin nc; setenv stdout nc; setenv stderr nc; version;
stderr=serial
stdin=serial
stdout=serial
uenv_addr=0x810000
uenv_import=echo importing envs ...; env import -t $uenv_addr $filesize
uenv_init_devices=setenv init_usb "usb start";  setenv init_ide "ide reset";  setenv init_mmc "mmc rescan"; for devtype in $devices; do run init_$devtype; done;
uenv_load=run uenv_init_devices; setenv uenv_loaded 0; for devtype in $devices;  do for disknum in 0; do run uenv_read_disk; done; done;
uenv_read_disk=if test $devtype -eq mmc; then if $devtype part; then run uenv_read;  fi; else if $devtype part $disknum; then run uenv_read; fi;  fi
uenv_read=echo loading envs from $devtype $disknum ...; if load $devtype $disknum:1 $uenv_addr /boot/uEnv.txt; then setenv uenv_loaded 1; fi
usb_ready_retry=15
arcNumber=4022
ethaddr=50:67:F0:52:9E:D9
eth1addr=00:19:CB:00:51:82
mtdparts=nand_mtd:0x100000(uboot),0x80000(uboot_env),0x80000(key_store),0x80000(info),0x200000(etc),0x600000(kernel_1),0x37C0000(rootfs1),0x600000(kernel_2),0x37C0000(r
ootfs2)
preboot_nc=setenv nc_ready 0; for pingstat in 1 2 3 4 5; do; sleep 1; if run if_netconsole; then setenv nc_ready 1; fi; done; if test $nc_ready -eq 1; then run start_ne
tconsole; fi
preboot=run preboot_nc
ipaddr=192.168.11.253
serverip=192.168.11.200
dtb_file=/boot/dts/kirkwood-nsa310.dtb
~ # reboot

Viewing all articles
Browse latest Browse all 902

Trending Articles