Re: Help unbricking IOmega ix4-200d
October 21, 2017 09:02PM
kalilhabib Wrote:
-------------------------------------------------------
> bodhi Wrote:
> -------------------------------------------------------
>
> > Did the serial console output stop here? Typing
> <Return> repeatedly did not give you any prompt?
>
>
>
> I tried the return repeatedly and nothing.
> For exactly before loading the SCSI.
> I really do not know what to do. :(

Your hard disk is causing problem.

See how Reto booted with USB rootfs and new kernel in this thread:
https://forum.doozan.com/read.php?3,25120

Unplug the hardisk and use USB roots.

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: Help unbricking IOmega ix4-200d
October 23, 2017 05:09PM
> bodhi Wrote:
> -------------------------------------------------------
> Your hard disk is causing problem.
>
> See how Reto booted with USB rootfs and new kernel in this thread:
> https://forum.doozan.com/read.php?3,25120

> Unplug the hardisk and use USB roots.

Hi Bodhi,

You are "The man" able to recover the box (IX4-200D) thanks to his tip. It was the HD, but not only is this the SATA connection it seems they were rusty I used a clean contact from WURTH and changed the order of the HD. HD 4 put it in bay 1 and so on. I recovered the U-Boot with the pendrive recovery of the original OS version 2 of the original IX4-200D. Everything worked.
Now I'm super ready to put the DEBIAN in this box. Could you tell me a step by step for this procedure. Thanks a lot.
Re: Help unbricking IOmega ix4-200d
October 24, 2017 04:05PM
kalilhabib,


> Everything worked.

Cool!

> Now I'm super ready to put the DEBIAN in this box.
> Could you tell me a step by step for this
> procedure. Thanks a lot.

Create rootfs using Debian-4.12.1-kirkwood-tld-1-rootfs-bodhi.tar.bz2
https://forum.doozan.com/read.php?2,12096

Scroll down to section:

Quote

Updated 24 Jul 2017:

Basic Debian stretch Kirkwood rootfs for most Kirwood plugs:

- tarball size: 188M
- install size: 488M
- The init system used in this rootfs is sysvinit . To boot with systemd, see note 2 below.
- Installed packages: nano, avahi, ntp, busybox-syslogd (log to RAM), htop, isc-dhcp-client, dialog, bzip2, nfs server/client, iperf, ethtool, sysvinit-core, sysvinit, and sysvinit-utils.
- see LED controls in /etc/rc.local, and /etc/init.d/halt
- see some useful aliases in /root/.profile
- root password: root

Download at Dropbox:

Debian-4.12.1-kirkwood-tld-1-rootfs-bodhi.tar.bz2

md5:
bf3d29569943875df348fb5ca03b348c
sha256:
4ed5714fdb123cdb40e973f3d0754e91cd199b75a9874018f2b5dc9cfa8ae8bb

And then look at Reto thread to see how he set up envs to boot with USB rootfs:

https://forum.doozan.com/read.php?3,25120

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: Help unbricking IOmega ix4-200d
May 27, 2021 01:30PM
No es posible conectar una consola en serie con Kirwood (Marvel). He utilizado usb ttl cp2102, pl2303hx, y ch3406 pero ninguno consigue conectar con putty. Tampoco es posible la conexion con cable ethernet. Por tanto nadie explica que tipo de cable usb ttl usar, que programa usar, ni tampoco hay seguridad de archivos oficiales.
Yo tengo un ix4-200d non cloud y funcionaba bien. Leyendo en foros crei que era posible pasar de version non cloud a version cloud, y el dispositivo se me ha quedado bloqueado.
No soy experto en informatica pero si soy ingenioso y si tengo unas buenas instrucciones puedo hacer el trabajo, pero nadie dice la verdad, o estan hablando de otra cosa.
Solo me conformaba con que funcionase con la version antigua de non cloud, y aqui estan hablando de cambiarle el sistema operativo a debian, que no se ni como se hace ni para que fin.
Estoy decepcionado y desesperado por no tener el equipo nas en marcha. Incluso he ido a dos tiendas de reparacion de informatica y dicen que tampoco saben nada.
En fin, gracias a los que me han respondido con la mejor de sus intenciones, pero tengo que decir que el problema persiste y no esta resuelto.
Un saludo para todos.
Re: Help unbricking IOmega ix4-200d
May 31, 2021 02:45PM
USB flash drive formatted with ext3 on debian; creating the debian rootfs on USB drive
i used Kernel linux-5.2.9-kirkwood-tld-1 (Updated 18 Aug 2019)
  chmod -R 777 .
  sudo tar -xjf '/home/user/Downloads/Iomega IX4-200d/Debian-5.2.9-kirkwood-tld-1-rootfs-bodhi.tar.bz2' 
  cd boot
  cp -a zImage-5.2.9-kirkwood-tld-1 zImage.fdt
  cat dts/kirkwood-iomega_ix4_200d.dtb  >> zImage.fdt
  mv uImage uImage.orig
  mkimage -A arm -O linux -T kernel -C none -a 0x00008000 -e 0x00008000 -n Linux-5.2.9-kirkwood-tld-1 -d zImage.fdt  uImage
  sync



USB flash drive plugged in to the ix4 and trying to boot:
Marvell>> setenv usb_make_boot_args 'setenv bootargs console=ttyS0,115200 mtdpar
Marvell>> setenv load_initrd 'ext2load usb 0:1 0x1100000 /boot/uInitrd'
Marvell>> setenv load_uimage 'ext2load usb 0:1 0x800000 /boot/uImage'
Marvell>> setenv usb_boot 'usb start; run load_uimage; run load_initrd; bootm 0x
Marvell>> setenv bootcmd 'run usb_make_boot_args ; run usb_boot; reset'
Marvell>> boot
(Re)start USB...
USB:   scanning bus for devices... 3 USB Device(s) found
       scanning bus for storage devices... 1 Storage Device(s) found
....
.
......
............
.........................
...................................................
......................................................................................................
.................................................................................................................................................................................................................
.......................................................................

4972946 bytes read
....
.
...................
.........................
...................................................
......................................................................................................
.................................................................................................................................................................................................................
....................................................................................................................................................................................................................................................................................................................................................................................................................
....
............................................................................................................................

9713936 bytes read
## Booting image at 00000000 ...
Bad Magic Number

Bad Magic Number :/


EDIT:

ok, this was a copy paste error; should be:
setenv usb_make_boot_args 'setenv bootargs console=ttyS0,115200 root=LABEL=rootfs rootdelay=10 mtdparts=orion_nand:$(uboot_size)@$(uboot_start)(uboot),$(env_size)@$(env_start)(env),$(kernel_size)@$(kernel_start)(zImage),$(initrd_size)@$(initrd_start)(initrd),32m@0x0(flash)'
setenv load_initrd 'ext2load usb 0:1 0x1100000 /boot/uInitrd'
setenv load_uimage 'ext2load usb 0:1 0x800000 /boot/uImage'
setenv usb_boot 'usb start; run load_uimage; run load_initrd; bootm 0x800000 0x1100000'
setenv bootcmd 'run usb_make_boot_args ; run usb_boot; reset'
printenv
boot

now i am one step further but it hangs on booting the kernel:
Marvell>> setenv usb_make_boot_args 'setenv bootargs console=ttyS0,115200 root=LABEL=rootfs rootdelay=10 mtdparts=orion_nand:$(uboot_size)@$(uboot_start)(uboot),$(env_size)@$(env_start)(env),$(kernel_size)@$(kernel_start)(zImage),$(initrd_size)@$(initrd_start)(initrd),32m@0x0(flash)'
Marvell>> setenv load_initrd 'ext2load usb 0:1 0x1100000 /boot/uInitrd'
Marvell>> setenv load_uimage 'ext2load usb 0:1 0x800000 /boot/uImage'
Marvell>> setenv usb_boot 'usb start; run load_uimage; run load_initrd; bootm 0x800000 0x1100000'
Marvell>> setenv bootcmd 'run usb_make_boot_args ; run usb_boot; reset'
Marvell>> boot
(Re)start USB...
USB:   scanning bus for devices... 3 USB Device(s) found
       scanning bus for storage devices... 1 Storage Device(s) found
....
.
......
............
.........................
...................................................
......................................................................................................
............................................................................................................................................................................................................
....
.......................................................................

4972946 bytes read
....
.
......
............
.........................
...................................................
......................................................................................................
............................................................................................................................................................................................................
....
....................................................................................................................................................................................................................................................................................................................................................................................................................
....
............................................................................................................................

9713936 bytes read
## Booting image at 00800000 ...
   Image Name:   Linux-5.2.9-kirkwood-tld-1
   Created:      2021-05-31  19:52:47 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    4972882 Bytes =  4.7 MB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... OK
OK
## Loading Ramdisk Image at 01100000 ...
   Image Name:   initramfs-5.2.9-kirkwood-tld-1
   Created:      2019-08-25   2:22:50 UTC
   Image Type:   ARM Linux RAMDisk Image (gzip compressed)
   Data Size:    9713872 Bytes =  9.3 MB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK

Starting kernel ...

Uncompressing Linux... done, booting the kernel.

any ideas?



Edited 3 time(s). Last edit at 05/31/2021 03:16PM by damsma.
Re: Help unbricking IOmega ix4-200d
May 31, 2021 04:29PM
Little progress...

the old rootfs (Debian-4.4.0-kirkwood-tld-1-rootfs-bodhi.tar.bz2) seems to work, but;

Marvell>> setenv load_initrd 'ext2load usb 0:1 0x1100000 /boot/uInitrd'
Marvell>> setenv load_uimage 'ext2load usb 0:1 0x800000 /boot/uImage'
Marvell>> setenv usb_boot 'usb start; run load_uimage; run load_initrd; bootm 0x800000 0x1100000'
Marvell>> setenv bootcmd 'run usb_make_boot_args ; run usb_boot; reset'
Marvell>> boot
(Re)start USB...
USB:   scanning bus for devices... 3 USB Device(s) found
       scanning bus for storage devices... 1 Storage Device(s) found
....
.
......
............
.........................
...................................................
......................................................................................................
........................................................................................................

3164416 bytes read
....
.
......
............
.........................
...................................................
......................................................................................................
.................................................................................................................................................................................................................
..............................................................................................................................................................................................................................................................................................

7179935 bytes read
## Booting image at 00800000 ...
   Image Name:   Linux-4.4.0-kirkwood-tld-1
   Created:      2021-05-31  21:08:54 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    3164352 Bytes =  3 MB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... OK
OK
## Loading Ramdisk Image at 01100000 ...
   Image Name:   initramfs-4.4.0-kirkwood-tld-1
   Created:      2016-02-19   7:33:04 UTC
   Image Type:   ARM Linux RAMDisk Image (gzip compressed)
   Data Size:    7179871 Bytes =  6.8 MB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK

Starting kernel ...

Uncompressing Linux... done, booting the kernel.
[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Initializing cgroup subsys cpuset
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Initializing cgroup subsys cpuacct
[    0.000000] Linux version 4.4.0-kirkwood-tld-1 (root@tldDebian) (gcc version 4.9.2 (Debian 4.9.2-10) ) #1 PREEMPT Mon Jan 25 20:35:24 PST 2016
[    0.000000] CPU: Feroceon 88FR131 [56251311] revision 1 (ARMv5TE), cr=0005397f
[    0.000000] CPU: VIVT data cache, VIVT instruction cache
[    0.000000] Machine model: Iomega ix4-200d
[    0.000000] Memory policy: Data cache writeback
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 130048
[    0.000000] Kernel command line: console=ttyS0,115200 mtdparts=orion_nand:0xa0000@0x0(uboot),0x10000@0xa0000(env),0x228000@0xb0000(zImage),0x300000@0x2d8000(initrd),32m@0x0(flash) root=LABEL=rootfs rootdelay=10
[    0.000000] PID hash table entries: 2048 (order: 1, 8192 bytes)
[    0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
[    0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
[    0.000000] Memory: 503476K/524288K available (6007K kernel code, 573K rwdata, 1992K rodata, 296K init, 312K bss, 20812K reserved, 0K cma-reserved)
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
[    0.000000]     vmalloc : 0xe0800000 - 0xff800000   ( 496 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xe0000000   ( 512 MB)
[    0.000000]     modules : 0xbf000000 - 0xc0000000   (  16 MB)
[    0.000000]       .text : 0xc0008000 - 0xc07d7ef4   (8000 kB)
[    0.000000]       .init : 0xc07d8000 - 0xc0822000   ( 296 kB)
[    0.000000]       .data : 0xc0822000 - 0xc08b169c   ( 574 kB)
[    0.000000]        .bss : 0xc08b169c - 0xc08ff9d0   ( 313 kB)
[    0.000000] Preemptible hierarchical RCU implementation.
[    0.000000] 	Build-time adjustment of leaf fanout to 32.
[    0.000000] NR_IRQS:16 nr_irqs:16 16
[    0.000000] clocksource: orion_clocksource: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 9556302233 ns
[    0.000008] sched_clock: 32 bits at 200MHz, resolution 5ns, wraps every 10737418237ns
[    0.000294] Console: colour dummy device 80x30
[    0.000323] Calibrating delay loop... 1191.11 BogoMIPS (lpj=5955584)
[    0.090098] pid_max: default: 32768 minimum: 301
[    0.090203] Security Framework initialized
[    0.090272] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.090291] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.091029] Initializing cgroup subsys io
[    0.091061] Initializing cgroup subsys devices
[    0.091085] Initializing cgroup subsys freezer
[    0.091115] Initializing cgroup subsys net_cls
[    0.091190] CPU: Testing write buffer coherency: ok
[    0.091597] Setting up static identity map for 0x8200 - 0x8258
[    0.091870] mvebu-soc-id: MVEBU SoC ID=0x6281, Rev=0x3
[    0.095316] devtmpfs: initialized
[    0.099383] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.099802] prandom: seed boundary self test passed
[    0.103602] prandom: 100 self tests passed
[    0.103636] pinctrl core: initialized pinctrl subsystem
[    0.104922] NET: Registered protocol family 16
[    0.105325] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.130096] cpuidle: using governor ladder
[    0.160095] cpuidle: using governor menu
[    0.160489] Feroceon L2: Enabling L2
[    0.160531] Feroceon L2: Cache support initialised.
[    0.160895] [Firmware Info]: /ocp@f1000000/ethernet-controller@72000/ethernet0-port@0: local-mac-address is not set
[    0.160998] [Firmware Info]: /ocp@f1000000/ethernet-controller@76000/ethernet1-port@0: local-mac-address is not set
[    0.166011] No ATAGs?
[    0.201523] vgaarb: loaded
[    0.201880] usbcore: registered new interface driver usbfs
[    0.201959] usbcore: registered new interface driver hub
[    0.202021] usbcore: registered new device driver usb
[    0.203075] clocksource: Switched to clocksource orion_clocksource
[    0.257897] NET: Registered protocol family 2
[    0.258665] TCP established hash table entries: 4096 (order: 2, 16384 bytes)
[    0.258727] TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
[    0.258779] TCP: Hash tables configured (established 4096 bind 4096)
[    0.258841] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.258865] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.259053] NET: Registered protocol family 1
[    0.259439] RPC: Registered named UNIX socket transport module.
[    0.259451] RPC: Registered udp transport module.
[    0.259459] RPC: Registered tcp transport module.
[    0.259466] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.259734] Unpacking initramfs...
[    0.891038] Freeing initrd memory: 7012K (c1100000 - c17d9000)
[    0.891162] NetWinder Floating Point Emulator V0.97 (double precision)
[    0.892231] futex hash table entries: 256 (order: -1, 3072 bytes)
[    0.892301] audit: initializing netlink subsys (disabled)
[    0.892349] audit: type=2000 audit(0.880:1): initialized
[    0.892692] Initialise system trusted keyring
[    0.893062] zbud: loaded
[    0.893404] VFS: Disk quotas dquot_6.6.0
[    0.893463] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[    0.893991] NFS: Registering the id_resolver key type
[    0.894029] Key type id_resolver registered
[    0.894038] Key type id_legacy registered
[    0.894064] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[    0.894078] Installing knfsd (copyright (C) 1996 okir@monad.swb.de).
[    0.894305] jffs2: version 2.2. (NAND) (SUMMARY)  © 2001-2006 Red Hat, Inc.
[    0.894830] Key type big_key registered
[    0.914686] Key type asymmetric registered
[    0.914707] Asymmetric key parser 'x509' registered
[    0.914799] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 252)
[    0.914821] io scheduler noop registered
[    0.914837] io scheduler deadline registered
[    0.914894] io scheduler cfq registered (default)
[    0.916220] kirkwood-pinctrl f1010000.pin-controller: registered pinctrl driver
[    0.916882] irq: Cannot allocate irq_descs @ IRQ34, assuming pre-allocated
[    0.917298] irq: Cannot allocate irq_descs @ IRQ66, assuming pre-allocated
[    0.918115] mvebu-pcie mbus:pcie-controller: PCI host bridge to bus 0000:00
[    0.918135] pci_bus 0000:00: root bus resource [io  0x1000-0xfffff]
[    0.918148] pci_bus 0000:00: root bus resource [mem 0xe0000000-0xefffffff]
[    0.918161] pci_bus 0000:00: root bus resource [bus 00-ff]
[    0.918546] PCI: bus0: Fast back to back transfers disabled
[    0.918573] pci 0000:00:01.0: bridge configuration invalid ([bus 00-00]), reconfiguring
[    0.919341] pci 0000:01:00.0: disabling ASPM on pre-1.1 PCIe device.  You can enable it with 'pcie_aspm=force'
[    0.919380] PCI: bus1: Fast back to back transfers disabled
[    0.919545] pci 0000:00:01.0: BAR 14: assigned [mem 0xe0000000-0xe00fffff]
[    0.919562] pci 0000:00:01.0: BAR 13: assigned [io  0x10000-0x10fff]
[    0.919583] pci 0000:01:00.0: BAR 5: assigned [mem 0xe0000000-0xe00003ff]
[    0.919601] pci 0000:01:00.0: BAR 4: assigned [io  0x10000-0x1000f]
[    0.919619] pci 0000:01:00.0: BAR 0: assigned [io  0x10010-0x10017]
[    0.919636] pci 0000:01:00.0: BAR 2: assigned [io  0x10018-0x1001f]
[    0.919652] pci 0000:01:00.0: BAR 1: assigned [io  0x10020-0x10023]
[    0.919669] pci 0000:01:00.0: BAR 3: assigned [io  0x10024-0x10027]
[    0.919684] pci 0000:00:01.0: PCI bridge to [bus 01]
[    0.919697] pci 0000:00:01.0:   bridge window [io  0x10000-0x10fff]
[    0.919712] pci 0000:00:01.0:   bridge window [mem 0xe0000000-0xe00fffff]
[    0.919790] pcieport 0000:00:01.0: enabling device (0140 -> 0143)
[    0.920075] mv_xor f1060800.xor: Marvell shared XOR driver
[    0.953771] mv_xor f1060800.xor: Marvell XOR (Registers Mode): ( xor cpy intr )
[    0.954013] mv_xor f1060900.xor: Marvell shared XOR driver
[    0.993773] mv_xor f1060900.xor: Marvell XOR (Registers Mode): ( xor cpy intr )
[    0.994259] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[    0.995705] console [ttyS0] disabled
[    0.995767] f1012000.serial: ttyS0 at MMIO 0xf1012000 (irq = 26, base_baud = 12500000) is a 16550A
[    1.742475] console [ttyS0] enabled
[    1.747236] nand: device found, Manufacturer ID: 0xec, Chip ID: 0x75
[    1.753655] nand: Samsung NAND 32MiB 3,3V 8-bit
[    1.758209] nand: 32 MiB, SLC, erase size: 16 KiB, page size: 512, OOB size: 16
[    1.765574] Scanning device for bad blocks
[    2.110452] 5 cmdlinepart partitions found on MTD device orion_nand
[    2.116768] Creating 5 MTD partitions on "orion_nand":
[    2.121933] 0x000000000000-0x0000000a0000 : "uboot"
[    2.128123] 0x0000000a0000-0x0000000b0000 : "env"
[    2.134110] 0x0000000b0000-0x0000002d8000 : "zImage"
[    2.140306] 0x0000002d8000-0x0000005d8000 : "initrd"
[    2.146592] 0x000000000000-0x000002000000 : "flash"
[    2.154234] libphy: Fixed MDIO Bus: probed
[    2.158699] libphy: orion_mdio_bus: probed
[    2.171746] mv643xx_eth: MV-643xx 10/100/1000 ethernet driver version 1.4
[    3.253765] mv643xx_eth_port mv643xx_eth_port.0 eth0: port 0 with MAC address 00:d0:b8:1b:e2:4d
[    4.333797] mv643xx_eth_port mv643xx_eth_port.1 eth1: port 0 with MAC address 00:d0:b8:1b:e2:4e
[    4.342671] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    4.349281] ehci-pci: EHCI PCI platform driver
[    4.353835] ehci-orion: EHCI orion driver
[    4.358044] orion-ehci f1050000.ehci: EHCI Host Controller
[    4.363618] orion-ehci f1050000.ehci: new USB bus registered, assigned bus number 1
[    4.371519] orion-ehci f1050000.ehci: irq 30, io mem 0xf1050000
[    4.393110] orion-ehci f1050000.ehci: USB 2.0 started, EHCI 1.00
[    4.399379] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[    4.406234] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    4.413514] usb usb1: Product: EHCI Host Controller
[    4.418412] usb usb1: Manufacturer: Linux 4.4.0-kirkwood-tld-1 ehci_hcd
[    4.425075] usb usb1: SerialNumber: f1050000.ehci
[    4.430498] hub 1-0:1.0: USB hub found
[    4.434349] hub 1-0:1.0: 1 port detected
[    4.439227] mousedev: PS/2 mouse device common for all mice
[    4.445512] rtc-mv f1010300.rtc: rtc core: registered f1010300.rtc as rtc0
[    4.452586] i2c /dev entries driver
[    4.457648] hidraw: raw HID events driver (C) Jiri Kosina
[    4.463511] drop_monitor: Initializing network drop monitor service
[    4.470053] NET: Registered protocol family 17
[    4.474807] Key type dns_resolver registered
[    4.479916] registered taskstats version 1
[    4.484115] Loading compiled-in X.509 certificates
[    4.488984] zswap: loaded using pool lzo/zbud
[    4.501663] Key type encrypted registered
[    4.506409] rtc-mv f1010300.rtc: setting system clock to 2021-05-31 21:30:15 UTC (1622496615)
[    4.517241] Freeing unused kernel memory: 296K (c07d8000 - c0822000)
Loading, please wait...
[    4.591200] systemd-udevd[84]: starting version 215
[    4.605189] random: systemd-udevd urandom read with 7 bits of entropy available
[    4.748704] SCSI subsystem initialized
[    4.753190] usb 1-1: new high-speed USB device number 2 using orion-ehci
[    4.806605] ahci 0000:01:00.0: Disabling your PATA port. Use the boot option 'ahci.marvell_enable=0' to avoid this.
[    4.819581] sata_mv f1080000.sata: slots 32 ports 2
[    4.859815] scsi host0: sata_mv
[    4.873418] ahci 0000:01:00.0: controller can't do NCQ, turning off CAP_NCQ
[    4.880415] ahci 0000:01:00.0: controller can't do PMP, turning off CAP_PMP
[    4.887545] scsi host1: sata_mv
[    4.900006] ata1: SATA max UDMA/133 irq 33
[    4.914917] usb 1-1: New USB device found, idVendor=05e3, idProduct=0608
[    4.921672] usb 1-1: New USB device strings: Mfr=0, Product=1, SerialNumber=0
[    4.933628] ata2: SATA max UDMA/133 irq 33
[    4.941142] usb 1-1: Product: USB2.0 Hub
[    4.950805] hub 1-1:1.0: USB hub found
[    4.959047] hub 1-1:1.0: 4 ports detected
[    4.977659] ahci 0000:01:00.0: masking port_map 0x7 -> 0x3
[    5.004134] ahci 0000:01:00.0: SSS flag set, parallel bus scan disabled
[    5.010834] ahci 0000:01:00.0: AHCI 0001.0000 32 slots 3 ports 3 Gbps 0x3 impl IDE mode
[    5.051568] ahci 0000:01:00.0: flags: 64bit stag led slum part 
[    5.061943] scsi host2: ahci
[    5.066177] scsi host3: ahci
[    5.070141] scsi host4: ahci
[    5.073894] ata3: SATA max UDMA/133 abar m1024@0xe0000000 port 0xe0000100 irq 84
[    5.081357] ata4: SATA max UDMA/133 abar m1024@0xe0000000 port 0xe0000180 irq 84
[    5.088849] ata5: DUMMY
[    5.243116] usb 1-1.3: new high-speed USB device number 3 using orion-ehci
[    5.283109] ata1: SATA link down (SStatus 0 SControl F300)
[    5.354154] usb 1-1.3: New USB device found, idVendor=0781, idProduct=5530
[    5.361077] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[    5.368457] usb 1-1.3: Product: Cruzer
[    5.372223] usb 1-1.3: Manufacturer: SanDisk
[    5.391585] usb-storage 1-1.3:1.0: USB Mass Storage device detected
[    5.398328] scsi host5: usb-storage 1-1.3:1.0
[    5.404522] usbcore: registered new interface driver usb-storage
[    5.413714] usbcore: registered new interface driver uas
[    5.433144] ata3: SATA link down (SStatus 0 SControl 300)
[    5.653110] ata2: SATA link down (SStatus 0 SControl F300)
[    6.023118] ata4: SATA link down (SStatus 0 SControl 300)
[    6.404620] scsi 5:0:0:0: Direct-Access     SanDisk  Cruzer           1.20 PQ: 0 ANSI: 5
[    6.421338] sd 5:0:0:0: [sda] 62530624 512-byte logical blocks: (32.0 GB/29.8 GiB)
[    6.430941] sd 5:0:0:0: [sda] Write Protect is off
[    6.436558] sd 5:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
[    6.452160]  sda: sda1
[    6.458057] sd 5:0:0:0: [sda] Attached SCSI removable disk
[    6.467618] sd 5:0:0:0: Attached scsi generic sg0 type 0
Begin: Loading essential drivers ... done.
Begin: Running /scripts/init-premount ... done.
Begin: Mounting root file system ... Begin: Running /scripts/local-top ... done.
Begin: Running /scripts/local-premount ... done.
Begin: Waiting for root file system ... Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
done.
Gave up waiting for root device.  Common problems:
 - Boot args (cat /proc/cmdline)
   - Check rootdelay= (did the system wait long enough?)
   - Check root= (did the system wait for the right device?)
 - Missing modules (cat /proc/modules; ls /dev)
ALERT!  /dev/disk/by-label/rootfs does not exist.  Dropping to a shell!
modprobe: module i8042 not found in modules.dep
[   46.306611] uhci_hcd: USB Universal Host Controller Interface driver
[   46.322948] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[   46.339946] usbcore: registered new interface driver usbhid
[   46.345719] usbhid: USB HID core driver


BusyBox v1.22.1 (Debian 1:1.22.0-9+deb8u1) built-in shell (ash)
Enter 'help' for a list of built-in commands.

/bin/sh: can't access tty; job control turned off
(initramfs) [  106.313643] random: nonblocking pool is initialized

:/
Re: Help unbricking IOmega ix4-200d
May 31, 2021 04:46PM
damsma,

> Little progress...

Good progress! please keep posting on this thread.

The mistake you did (shown in the other post) is:

sudo tar -xjf '/home/user/Downloads/Iomega IX4-200d/Debian-5.2.9-kirkwood-tld-1-rootfs-bodhi.tar.bz2' 
  cd boot
  cp -a zImage-5.2.9-kirkwood-tld-1 zImage.fdt
  cat dts/kirkwood-iomega_ix4_200d.dtb  >> zImage.fdt
  mv uImage uImage.orig
  mkimage -A arm -O linux -T kernel -C none -a 0x00008000 -e 0x00008000 -n Linux-4.4.0-kirkwood-tld-1 -d zImage.fdt  uImage
  sync

See the full instruction on the kernel/rootfs release:

https://forum.doozan.com/read.php?2,12096

Here is the latest:

Quote

Updated 25 Aug 2019:

Basic Debian buster Kirkwood rootfs for most Kirwood plugs:

- tarball size: 209M
- install size: 536M
- The init system used in this rootfs is sysvinit . To boot with systemd, see note 2 below.
- Installed packages: nano, avahi, ntp, busybox-syslogd (log to RAM), htop, isc-dhcp-client, dialog, bzip2, nfs server/client, iperf, ethtool, sysvinit-core, sysvinit, sysvinit-utils, u-boot-tools, and mtd-utils.
- see LED controls in /etc/rc.local, and /etc/init.d/halt
- see some useful aliases in /root/.profile
- root password: root

Download at Dropbox:

Debian-5.2.9-kirkwood-tld-1-rootfs-bodhi.tar.bz2

md5:
cd8ad170aa1a9fdc2a0a1c43ab1c0721
sha256:
8ccbbced367b4c2bf3728262e882f8232aff0fecd1c0c767219a0cab49a0b9bf


And remember to check the hash of what you download, as always.

Installation:

Installation can be done on any Linux box, with a fresh USB drive (SD card or HDD would work fine too).

Note: all steps below must be done while logging in as root user (not sudo). If you are not the root user then don't continue, because the rootfs will not work.


Before you extract the rootfs, you must become root:

su -

-bodhi
===========================
Forum Wiki
bodhi's corner



Edited 1 time(s). Last edit at 05/31/2021 04:47PM by bodhi.
Re: Help unbricking IOmega ix4-200d
May 31, 2021 05:03PM
bodhi,

yes that is correct, i figured that out :)

Now it gets stuck on waiting for root device as posted in my second answer above.

Sorry for my impatience :)
Re: Help unbricking IOmega ix4-200d
May 31, 2021 07:07PM
damsma,

> yes that is correct, i figured that out :)

Cool!

> Now it gets stuck on waiting for root device as
> posted in my second answer above.

The rootf must be labeled as rootfs. Mount the USB drive on another LInux box and check the rootfs label (if it is assigned /dev/sdb):

e2label /dev/sdb1

You did not tell how did you create the partition on that Linux host. Sometime when you used GUI (i.e. gparted), it is problematic with label.

You can force the label again one more time to make sure it is saved:
e2label /dev/sdb1 rootfs
sync

Post the serial boot log here if you still have probem.

-bodhi
===========================
Forum Wiki
bodhi's corner



Edited 1 time(s). Last edit at 05/31/2021 07:08PM by bodhi.
Re: Help unbricking IOmega ix4-200d
June 01, 2021 12:34AM
bodhi,

yes!

[ ok ] Starting NTP server: ntpd.
[ ok ] Starting OpenBSD Secure Shell server: sshd.
[....] Starting busybox' klogd implementation : klogdStarting /sbin/klogd...
1240 (klogd)
. ok 

Debian GNU/Linux 8 debian ttyS0

debian login:

now i want to put the rootfs on one of the sata HDDs, how should i modify the bootargs?

setenv usb_make_boot_args 'setenv bootargs console=ttyS0,115200 mtdparts=orion_nand:$(uboot_size)@$(uboot_start)(uboot),$(env_size)@$(env_start)(env),$(kernel_size)@$(kernel_start)(zImage),$(initrd_size)@$(initrd_start)(initrd),32m@0x0(flash) root=LABEL=rootfs rootdelay=10'
setenv load_initrd 'ext2load usb 0:1 0x1100000 /boot/uInitrd'
setenv load_uimage 'ext2load usb 0:1 0x800000 /boot/uImage'
setenv usb_boot 'usb start; run load_uimage; run load_initrd; bootm 0x800000 0x1100000'
setenv bootcmd 'run usb_make_boot_args ; run usb_boot; reset'
Re: Help unbricking IOmega ix4-200d
June 01, 2021 01:02AM
damsma,

> now i want to put the rootfs on one of the sata
> HDDs, how should i modify the bootargs?

No need to. As long as the rootfs partition on SATA has label rootfs then it will be boot OK..

Note that there must be only one partition with label rootfs for the system to boot correctly. So you have to relabel the old USB rootfs partition to some other name, or remove the USB before booting.

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: Help unbricking IOmega ix4-200d
June 01, 2021 05:07AM
bodhi,

Thak you, i will try this.

Do you have any idea why the new kernel/version is not booting? Not sure if i can live with the old one :)

## Booting image at 00800000 ...
   Image Name:   Linux-5.2.9-kirkwood-tld-1
   Created:      2021-05-31  19:52:47 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    4972882 Bytes =  4.7 MB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... OK
OK
## Loading Ramdisk Image at 01100000 ...
   Image Name:   initramfs-5.2.9-kirkwood-tld-1
   Created:      2019-08-25   2:22:50 UTC
   Image Type:   ARM Linux RAMDisk Image (gzip compressed)
   Data Size:    9713872 Bytes =  9.3 MB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK

Starting kernel ...

Uncompressing Linux... done, booting the kernel.
Re: Help unbricking IOmega ix4-200d
June 01, 2021 03:10PM
bodhi,

tested it down till 4.17.2 with the same result, the kernel ist not loading

7758422 bytes read
## Booting image at 00800000 ...
   Image Name:   Linux-4.17.2-kirkwood-tld-1
   Created:      2021-06-01  20:07:41 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    4126877 Bytes =  3.9 MB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... OK
OK
## Loading Ramdisk Image at 01100000 ...
   Image Name:   initramfs-4.17.2-kirkwood-tld-1
   Created:      2021-06-01  20:07:46 UTC
   Image Type:   ARM Linux RAMDisk Image (gzip compressed)
   Data Size:    7758358 Bytes =  7.4 MB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK

Starting kernel ...

Uncompressing Linux... done, booting the kernel.
Re: Help unbricking IOmega ix4-200d
June 01, 2021 04:30PM
damsma,

With rootfs 5.2.9 on HDD, you must change to IDE loading and also the load ad resses to boot with this stock u-boot. Don't need to saty with older kernel, the kernel 5.2.9 in the rootfs should be used.

The bootargs is OK

setenv usb_make_boot_args 'setenv bootargs console=ttyS0,115200 mtdparts=orion_nand:$(uboot_size)@$(uboot_start)(uboot),$(env_size)@$(env_start)(env),$(kernel_size)@$(kernel_start)(zImage),$(initrd_size)@$(initrd_start)(initrd),32m@0x0(flash) root=LABEL=rootfs rootdelay=10'


The new envs to boot HDD rootfs


setenv load_initrd_sata 'ext2load ide 0:1 0x2100000 /boot/uInitrd'
setenv load_uimage_sata 'ext2load ide 0:1 0x800000 /boot/uImage'
setenv sata_boot 'ide reset; run load_uimage_sata; run load_initrd_sata; bootm 0x800000 0x2100000'
setenv bootcmd 'run usb_make_boot_args ; run sata_boot; reset'

After booted, install kernel header 5.2.9.

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: Help unbricking IOmega ix4-200d
June 01, 2021 04:54PM
bodhi,

Marvell>> setenv usb_make_boot_args 'setenv bootargs console=ttyS0,115200 mtdparts=orion_nand:$(uboot_size)@$(uboot_start)(uboot),$(env_size)@$(env_start)(env),$(kernel_size)@$(kernel_start)(zImage),$(initrd_size)@$(initrd_start)(initrd),32m@0x0(flash) root=LABEL=rootfs rootdelay=10'
Marvell>> setenv load_initrd_sata 'ext2load ide 0:1 0x2100000 /boot/uInitrd'
Marvell>> setenv load_uimage_sata 'ext2load ide 0:1 0x800000 /boot/uImage'
Marvell>> setenv sata_boot 'ide reset; run load_uimage_sata; run load_initrd_sata; bootm 0x800000 0x2100000'
Marvell>> setenv bootcmd 'run usb_make_boot_args ; run sata_boot; reset'
Marvell>> boot

Reset IDE: 
Marvell Serial ATA Adapter
Integrated Sata device found

** Bad partition 1 **
** Bad partition 1 **
## Booting image at 00800000 ...
Bad Magic Number


i think the HDDs are recognized as SCSI

Marvell>> ide reset

Reset IDE: 
Marvell Serial ATA Adapter
Integrated Sata device found

Marvell>> ide info

Marvell>> scsi reset

Reset SCSI
scanning bus for devices...
  Device 0: (0:0) Vendor: ATA Prod.: Hitachi HDS72105 Rev: JP2O
            Type: Hard Disk
            Capacity: 476940.0 MB = 465.7 GB (976773168 x 512)

Marvell>> scsi info
SCSI dev. 0:  (0:0) Vendor: ATA Prod.: Hitachi HDS72105 Rev: JP2O
            Type: Hard Disk
            Capacity: 476940.0 MB = 465.7 GB (976773168 x 512)
Marvell>>

my actual status is:
- kernel 4.4.0 boots well from USB, but is not booting from sata HDD
- kernel 4.17.2 to 5.2.9 is not booting from USB, did not try HDD
Re: Help unbricking IOmega ix4-200d
June 01, 2021 06:14PM
damsma,

Marvell>> setenv usb_make_boot_args 'setenv bootargs console=ttyS0,115200 mtdparts=orion_nand:$(uboot_size)@$(uboot_start)(uboot),$(env_size)@$(env_start)(env),$(kernel_size)@$(kernel_start)(zImage),$(initrd_size)@$(initrd_start)(initrd),32m@0x0(flash) root=LABEL=rootfs rootdelay=10'
Marvell>> setenv load_initrd_sata 'ext2load ide 0:1 0x2100000 /boot/uInitrd'
Marvell>> setenv load_uimage_sata 'ext2load ide 0:1 0x800000 /boot/uImage'
Marvell>> setenv sata_boot 'scsi reset; run load_uimage_sata; run load_initrd_sata; bootm 0x800000 0x2100000'
Marvell>> setenv bootcmd 'run usb_make_boot_args ; run sata_boot; reset'
Marvell>> boot


or

Marvell>> setenv usb_make_boot_args 'setenv bootargs console=ttyS0,115200 mtdparts=orion_nand:$(uboot_size)@$(uboot_start)(uboot),$(env_size)@$(env_start)(env),$(kernel_size)@$(kernel_start)(zImage),$(initrd_size)@$(initrd_start)(initrd),32m@0x0(flash) root=LABEL=rootfs rootdelay=10'
Marvell>> setenv load_initrd_sata 'ext2load scsi 0:1 0x2100000 /boot/uInitrd'
Marvell>> setenv load_uimage_sata 'ext2load scsi 0:1 0x800000 /boot/uImage'
Marvell>> setenv sata_boot 'scsi reset; run load_uimage_sata; run load_initrd_sata; bootm 0x800000 0x2100000'
Marvell>> setenv bootcmd 'run usb_make_boot_args ; run sata_boot; reset'
Marvell>> boot

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: Help unbricking IOmega ix4-200d
June 02, 2021 07:21AM
bodhi,

still no luck;

Marvell>> setenv usb_make_boot_args 'setenv bootargs console=ttyS0,115200 mtdparts=orion_nand:$(uboot_size)@$(uboot_start)(uboot),$(env_size)@$(env_start)(env),$(kernel_size)@$(kernel_start)(zImage),$(initrd_size)@$(initrd_start)(initrd),32m@0x0(flash) root=LABEL=rootfs rootdelay=10'
Marvell>> setenv load_initrd_sata 'ext2load ide 0:1 0x2100000 /boot/uInitrd'
Marvell>> setenv load_uimage_sata 'ext2load ide 0:1 0x800000 /boot/uImage'
Marvell>> setenv sata_boot 'scsi reset; run load_uimage_sata; run load_initrd_sata; bootm 0x800000 0x2100000'
Marvell>> setenv bootcmd 'run usb_make_boot_args ; run sata_boot; reset'
Marvell>> boot

Reset SCSI
scanning bus for devices...
  Device 0: (0:0) Vendor: ATA Prod.: Hitachi HDS72105 Rev: JP2O
            Type: Hard Disk
            Capacity: 476940.0 MB = 465.7 GB (976773168 x 512)
** Bad partition 1 **
** Bad partition 1 **
## Booting image at 00800000 ...
Bad Magic Number

the second one looks better but is failing on mount ext2

Marvell>> setenv usb_make_boot_args 'setenv bootargs console=ttyS0,115200 mtdparts=orion_nand:$(uboot_size)@$(uboot_start)(uboot),$(env_size)@$(env_start)(env),$(kernel_size)@$(kernel_start)(zImage),$(initrd_size)@$(initrd_start)(initrd),32m@0x0(flash) root=LABEL=rootfs rootdelay=10'
Marvell>> setenv load_initrd_sata 'ext2load scsi 0:1 0x2100000 /boot/uInitrd'
Marvell>> setenv load_uimage_sata 'ext2load scsi 0:1 0x800000 /boot/uImage'
Marvell>> setenv sata_boot 'scsi reset; run load_uimage_sata; run load_initrd_sata; bootm 0x800000 0x2100000'
Marvell>> setenv bootcmd 'run usb_make_boot_args ; run sata_boot; reset'
Marvell>> boot

Reset SCSI
scanning bus for devices...
  Device 0: (0:0) Vendor: ATA Prod.: Hitachi HDS72105 Rev: JP2O
            Type: Hard Disk
            Capacity: 476940.0 MB = 465.7 GB (976773168 x 512)
Failed to mount ext2 filesystem...
** Bad ext2 partition or disk - scsi 0:1 **
Failed to mount ext2 filesystem...
** Bad ext2 partition or disk - scsi 0:1 **
## Booting image at 00800000 ...
Bad Magic Number
Re: Help unbricking IOmega ix4-200d
June 02, 2021 04:56PM
damsma,

I've been a little occupied with other things so I've lost track of what you are trying to do here :)

Are we booting kernel on USB and rootfs on HDD? or are we trying to boot HDD roots only to see if it works?

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: Help unbricking IOmega ix4-200d
June 03, 2021 05:17AM
bodhi,

i am trying to boot from the SATA HDD only, without USB - but i think u-boot does not see the filesystem.
the HDD is formatted as EXT2 now (i tried EXT3 too with no luck)

alternatively i could try to use the nand for booting?
Re: Help unbricking IOmega ix4-200d
June 03, 2021 03:53PM
Look at the ix4 working thread to see if damacc has successfully set up to boot the ix4 with HDD rootfs only.

https://forum.doozan.com/read.php?2,22623

And jdw tutotrial about booting with kernel files on HDD raw sectors (on ix2-dl box):

https://forum.doozan.com/read.php?2,70294,70794#msg-70794

====

If the ix4 u-boot has problem with reading the HDD (I don't remember exactly), then I would recommend booting with kernel files on USB, rootfs on HDD. The 2nd best choice would be booting with kernel files on HDD raw sectors.

Don't store kernel files on NAND, becaus eventually you will wear out NAND and brick the box. To avoid wearing out NAND, people tend to not update the kernel often, that's not a best way to run a NAS.

For a router distro like OpenWrt, it is different (and there is a team worrying about security problem for you so once in awhile you'll get FW upgrade on NAND).

-bodhi
===========================
Forum Wiki
bodhi's corner



Edited 1 time(s). Last edit at 06/03/2021 03:55PM by bodhi.
Re: Help unbricking IOmega ix4-200d
June 04, 2021 06:15PM
bodhi,

i tried the raw sectors method (had to use scsi instead of ide) with partial success;

dd if=uImage of=/dev/sdb bs=1MiB seek=10
dd if=uInitrd of=/dev/sdb bs=1MiB seek=20


testing what happens after fresh boot and trying to load empty image
Hit any key to stop autoboot:  0 
Marvell>> bootm 0x40000 0x2100000
## Booting image at 00040000 ...
Bad Magic Number

trying to copy the image from HDD
Marvell>> scsi read 0x40000 0x5000 0x2000

SCSI read: device 0 block # 20480, count 8192 ... 8192 blocks read: OK
Marvell>> bootm 0x40000 0x2100000
## Booting image at 00040000 ...
   Image Name:   Linux-4.4.0-kirkwood-tld-1
   Created:      2021-06-04  22:58:16 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    3164352 Bytes =  3 MB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... Bad Data CRC

so the reading was ok, the information seems correct, but why is it failing on bad CRC, what's the reason?
Re: Help unbricking IOmega ix4-200d
June 04, 2021 10:23PM
damsma,

> so the reading was ok, the information seems
> correct, but why is it failing on bad CRC, what's
> the reason?

The most likely reason is the uImage size. When you write uImage to raw sector, make sure you adjust the uImage size in the dd commands.

Your uImage:
Data Size:    3164352 Bytes =  3 MB

Example in jdw's instruction

Data Size:    4171208 Bytes =  4 MB

So the 3MB should be rounded up to whatever number of sectors that will fit 3MB uImage. And then the dd commadn to write to raw sector should write that many sectors. And later during boot, the "ide read" command it should only read that many sectors.

You can also take a shortcut by making you uImage 4MB even (use dd command to write it to a 4MB file). And then you'll be able to use the exact commands in J's instruction.

With the new latest kernel, uImage is larger than 4MB. So the steps must be revised again whenever you upgrade the kernel to latest.

-bodhi
===========================
Forum Wiki
bodhi's corner



Edited 1 time(s). Last edit at 06/04/2021 10:27PM by bodhi.
Re: Help unbricking IOmega ix4-200d
June 05, 2021 04:29PM
Quote

You can also take a shortcut by making you uImage 4MB even (use dd command to write it to a 4MB file). And then you'll be able to use the exact commands in J's instruction.

Here is how to do that:
dd if=uImage.orig of=uImage bs=4096k conv=sync

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: Help unbricking IOmega ix4-200d
June 06, 2021 06:09AM
bodhi,

i tried that command but i did not help, so i wrote back the original 3mb kernel to the HDD.

what i did not notice before and i am trying to understand is the block size.

the block size should be 2048 i think?

so.. for 4 mb:
scsi read 0x40000 0x5000 0x2000

0x2000 == 8192
8192 / 4mb = 2048 (blocksize)

for 3 mb it should be:
2048 * 3 = 6144
6144 == 0x1800

but
Marvell>> scsi read 0x40000 0x5000 0x1800

SCSI read: device 0 block # 20480, count 6144 ... 6144 blocks read: OK
Marvell>> scsi read 0x2100000 0xA000 0x4F00

SCSI read: device 0 block # 40960, count 20224 ... 20224 blocks read: OK
Marvell>> bootm 0x40000 0x2100000
## Booting image at 00040000 ...
   Image Name:   Linux-4.4.0-kirkwood-tld-1
   Created:      2021-06-04  22:58:16 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    3164352 Bytes =  3 MB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... Bad Data CRC

p.s. the imi command is not implemented in my uboot version;
Marvell>> imi 0x2100000
Unknown command 'imi' - try 'help'
Re: Help unbricking IOmega ix4-200d
June 06, 2021 06:01PM
damsma,

It will be a pain in the future whenever you'll install new kernel and have to update the kernel images! That's why I'd recommend to use USB to store the kernel files, and the rootfs on HDD as a normal setup.

In any case, I think if you insist, you should use the latest kernel and rootfs so that you don't have to repeat this procedure one more time. The latest kernel uImage is larger than 4MB.

I'm not too motivated to figure out the size and addresses :)

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: Help unbricking IOmega ix4-200d
June 07, 2021 02:47PM
bodhi,

maybe usb would be better. but do you have an idea why the new kernel is not booting?

## Booting image at 00800000 ...
   Image Name:   Linux-5.2.9-kirkwood-tld-1
   Created:      2021-05-31  19:52:47 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    4972882 Bytes =  4.7 MB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... OK
OK
## Loading Ramdisk Image at 01100000 ...
   Image Name:   initramfs-5.2.9-kirkwood-tld-1
   Created:      2019-08-25   2:22:50 UTC
   Image Type:   ARM Linux RAMDisk Image (gzip compressed)
   Data Size:    9713872 Bytes =  9.3 MB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK

Starting kernel ...

Uncompressing Linux... done, booting the kernel.

or

7758422 bytes read
## Booting image at 00800000 ...
   Image Name:   Linux-4.17.2-kirkwood-tld-1
   Created:      2021-06-01  20:07:41 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    4126877 Bytes =  3.9 MB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... OK
OK
## Loading Ramdisk Image at 01100000 ...
   Image Name:   initramfs-4.17.2-kirkwood-tld-1
   Created:      2021-06-01  20:07:46 UTC
   Image Type:   ARM Linux RAMDisk Image (gzip compressed)
   Data Size:    7758358 Bytes =  7.4 MB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK

Starting kernel ...

Uncompressing Linux... done, booting the kernel.

and nothing happens anymore



Edited 1 time(s). Last edit at 06/07/2021 03:05PM by damsma.
Re: Help unbricking IOmega ix4-200d
June 07, 2021 04:42PM
damsma,

> ## Loading Ramdisk Image at 01100000 ...

uInitrd load address should be: 0x02100000

> ## Loading Ramdisk Image at 02100000 ...

This is due to this stock u-boot. Modern u-boot is OK to load uInitrd at 0x01100000 (hence why my relreased Kirkwood u-boots use 0x01100000).

As usual, you should include the listing of the envs in this type of question. Better yet, post the entire serial console log until it hang! there more to be improved just by the look of the log snipet you posted above.

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: Help unbricking IOmega ix4-200d
June 13, 2021 01:52PM
bodhi,

1. create an ext3 partition on 8GB USB drive with gparted and label it 'rootfs'
2. cd to the fresh created partition in terminal and create the rootfs drive

cd /media/user/xxxxxxxxxx
sudo su
chmod -R 777 .
tar -xjf '/home/user/Downloads/Iomega IX4-200d/Debian-5.2.9-kirkwood-tld-1-rootfs-bodhi.tar.bz2' 
cd boot
cp -a zImage-5.2.9-kirkwood-tld-1 zImage.fdt
cat dts/kirkwood-iomega_ix4_200d.dtb  >> zImage.fdt
mv uImage uImage.orig
mkimage -A arm -O linux -T kernel -C none -a 0x00008000 -e 0x00008000 -n Linux-5.2.9-kirkwood-tld-1 -d zImage.fdt  uImage

Image Name:   Linux-5.2.9-kirkwood-tld-1
Created:      Sun Jun 13 20:42:08 2021
Image Type:   ARM Linux Kernel Image (uncompressed)
Data Size:    4972882 Bytes = 4856.33 KiB = 4.74 MiB
Load Address: 00008000
Entry Point:  00008000

sync

3. on the ix4
Marvell>> printenv
bootdelay=1
baudrate=115200
loads_echo=0
rootpath=/mnt/ARM_FS/
run_diag=yes
CASset=min
MALLOC_len=1
ethprime=egiga0
bootargs_root=root=/dev/nfs rw
bootargs_end=:::DB88FXX81:eth0:none
image_name=uImage
console=console=ttyS0,115200 mtdparts=nand_mtd:0xa0000@0x0(uboot),0x00010000@0x000a0000(param),32m@0x0(flash) 
uboot_start=0x0
uboot_size=0xa0000
env_start=0xa0000
env_size=0x10000
kernel_start=0xb0000
kernel_size=0x228000
make_boot_args=setenv bootargs console=ttyS0,115200 mtdparts=nand_mtd:$(uboot_size)@$(uboot_start)(uboot),$(env_size)@$(env_start)(env),$(kernel_size)@$(kernel_start)(zImage),$(initrd_size)@$(initrd_start)(initrd),32m@0x0(flash);
flash_load=run make_boot_args;nand read.e 0x2000000 $(kernel_start) $(kernel_size);nand read.e 0x12000000 $(initrd_start) $(initrd_size);bootm 0x2000000 0x12000000;
standalone=fsload 0x2000000 $(image_name);setenv bootargs $(console) root=/dev/mtdblock0 rw ip=$(ipaddr):$(serverip)$(bootargs_end); bootm 0x2000000;
ethmtu=1500
usb0Mode=host
nandEcc=1bit
netretry=no
rcvrip=169.254.100.100
loadaddr=0x02000000
autoload=no
uboot_ver=v1.1.1
mfgmodel=ix4
fw_ver=v1_0_11_30938744
preroot_ver=0.1.5
modelname=31962600
runintime=10800
ftpserver=192.168.16.4
testfile=4NC
mfgtest_state=system_tested_ok
filesize=2aa025
fileaddr=5400000
netmask=255.255.255.0
ipaddr=10.4.50.165
serverip=10.4.50.5
ethact=egiga0
initrd_size=0x300000
bootargs=console=ttyS0,115200 mtdparts=nand_mtd:0xa0000@0x0(uboot),0x10000@0xa0000(env),0x228000@0xb0000(zImage),0x300000@0x2d8000(initrd),32m@0x0(flash)
usb_make_boot_args=setenv bootargs console=ttyS0,115200 mtdparts=orion_nand:$(uboot_size)@$(uboot_start)(uboot),$(env_size)@$(env_start)(env),$(kernel_size)@$(kernel_start)(zImage),$(initrd_size)@$(initrd_start)(initrd),32m@0x0(flash) root=LABEL=rootfs rootdelay=10
load_initrd=ext2load usb 0:1 0x1100000 /boot/uInitrd
load_uimage=ext2load usb 0:1 0x800000 /boot/uImage
usb_boot=usb start; run load_uimage; run load_initrd; bootm 0x800000 0x1100000
bootcmd=run usb_make_boot_args ; run usb_boot; reset
stdin=serial
stdout=serial
stderr=serial
mainlineLinux=no
enaMonExt=no
enaCpuStream=no
enaWrAllo=no
pexMode=RC
disL2Cache=no
setL2CacheWT=yes
disL2Prefetch=yes
enaICPref=yes
enaDCPref=yes
sata_dma_mode=yes
netbsd_en=no
vxworks_en=no
initrd_start=0x2d8000
disaMvPnp=no
enaAutoRecovery=yes
pcieTune=no

Environment size: 2507/16380 bytes
Marvell>>

Marvell>> setenv load_initrd 'ext2load usb 0:1 0x1100000 /boot/uInitrd'
Marvell>> setenv load_uimage 'ext2load usb 0:1 0x800000 /boot/uImage'
Marvell>> setenv usb_boot 'usb start; run load_uimage; run load_initrd; bootm 0x800000 0x1100000'
Marvell>> setenv bootcmd 'run usb_make_boot_args ; run usb_boot; reset'
Marvell>> boot
(Re)start USB...
USB:   scanning bus for devices... 3 USB Device(s) found
       scanning bus for storage devices... 1 Storage Device(s) found
....
.
......
............
.........................
...................................................
......................................................................................................
............................................................................................................................................................................................................
....
.......................................................................

4972946 bytes read
....
.
...................
.........................
...................................................
......................................................................................................
............................................................................................................................................................................................................
....
.........................................................................................................................................................................................................................................................................................................................................................................................................................
............................................................................................................................

9713936 bytes read
## Booting image at 00800000 ...
   Image Name:   Linux-5.2.9-kirkwood-tld-1
   Created:      2021-06-13  18:42:08 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    4972882 Bytes =  4.7 MB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... OK
OK
## Loading Ramdisk Image at 01100000 ...
   Image Name:   initramfs-5.2.9-kirkwood-tld-1
   Created:      2019-08-25   2:22:50 UTC
   Image Type:   ARM Linux RAMDisk Image (gzip compressed)
   Data Size:    9713872 Bytes =  9.3 MB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK

Starting kernel ...

Uncompressing Linux... done, booting the kernel.

and stays so forever.
Re: Help unbricking IOmega ix4-200d
June 13, 2021 04:00PM
damsma,

Revise ennvs to load uInitrd at 0x2100000, and also add earlyprintk to bootargs (there is much more going on before the hang, but you could not see without earlyprintk).

setenv usb_make_boot_args 'setenv bootargs console=ttyS0,115200 mtdparts=orion_nand:$(uboot_size)@$(uboot_start)(uboot),$(env_size)@$(env_start)(env),$(kernel_size)@$(kernel_start)(zImage),$(initrd_size)@$(initrd_start)(initrd),32m@0x0(flash) root=LABEL=rootfs rootdelay=10 earlyprintk=serial'
setenv load_initrd 'ext2load usb 0:1 0x2100000 /boot/uInitrd'
setenv load_uimage 'ext2load usb 0:1 0x800000 /boot/uImage'
setenv usb_boot 'usb start; run load_uimage; run load_initrd; bootm 0x800000 0x2100000'

And then

boot

===
EDITED: Typo in usb_make_boot_args

-bodhi
===========================
Forum Wiki
bodhi's corner



Edited 1 time(s). Last edit at 06/13/2021 07:53PM by bodhi.
Re: Help unbricking IOmega ix4-200d
June 15, 2021 10:17AM
bodhi,

it works! thank you :)

the last thing i need are the kernel headers so that i can compile drivers (here)

edit: figured it out, the symlink was missing :)



Edited 1 time(s). Last edit at 06/15/2021 12:33PM by damsma.
Author:

Your Email:


Subject:


Spam prevention:
Please, enter the code that you see below in the input field. This is for blocking bots that try to post this form automatically. If the code is hard to read, then just try to guess it right. If you enter the wrong code, a new image is created and you get another chance to enter it right.
Message: