Lacie NWS2 Classic from seagate blackarmor nas220

I compiled the seagate_blackarmor-nas220-initramfs-uImage firmware with modifications for the Lacie Network Space 2 (classic), running smoothly, with three situations to resolve:
1- Kernel does not enable sata in time, leaving root without a destination;
2- Entering tftpboot 0x800000 seagate_blackarmor-nas220-initramfs-uImage, I make all the necessary changes (I added kmod-ata-marvel-sata) but everything is lost when restarting, since sysupgrade targets MTD (main to be resolved);
3- Front USB port off.

Can you help me?

Are you using source from the official Openwrt project, or from an sdk/other source from another project?

1 Like

official Openwrt project.
My goal is to resolve, in my case, by adapting the Seagate NAS220 firmware to use the Lacie NS2, where I face the same difficulties exposed in this post:

I'm kind of doing dis·as·sem·ble tupiniquim (not at the code level just file) in the sysupgrade file to extract the kernel, to write to a pure raw partition on the sata disk, where u-boot searches for the image and rip off the box, since sysupgrade targets an MTD, I'll resolve this later.
I'm not an expert, I'm not by far, so I'm looking for help and in return I'll explain the resolution routine, which even without help so far, with reading the existing posts, I'm achieving some success.

Thanks

Marvell>>
Marvell>>
Marvell>> set bootargs 'console=ttyS0,115200 rootdelay=10 init=/sbin/init root=(sda,7) rootfstype=squashfs rw rootwait panic=10'
Marvell>> saveenv
Saving Environment to Flash...
.
Un-Protected 1 sectors
Erasing Flash...
.
Erased 1 sectors
Writing to Flash... done
.
Protected 1 sectors
Marvell>> run bootcmd

Reset IDE:
Marvell Serial ATA Adapter
Integrated Sata device found
[0 0 0]: Enable DMA mode
Device 0 @ 0 0:
Model: SAMSUNG HD203WI Firm: 1AN10003 Ser#: S27KJ1RZ500876
Type: Hard Disk
Supports 48-bit addressing
Capacity: 1907729.0 MB = 1863.0 GB (3907029168 x 512)

(Re)start USB...
USB: scanning bus for devices... 1 USB Device(s) found
scanning bus for storage devices... 0 Storage Device(s) found
** Bad partition 1 **

Checking Image at 00800000 ...

Bad Magic Number
error reading partinfo...try to boot raw

Loading from USB device 0, partition 1: Name: Raw Type: U-Boot
** Read error on 0:1
stopping USB..

Reset IDE:
Marvell Serial ATA Adapter
Integrated Sata device found
[0 0 0]: Enable DMA mode
Device 0 @ 0 0:
Model: SAMSUNG HD203WI Firm: 1AN10003 Ser#: S27KJ1RZ500876
Type: Hard Disk
Supports 48-bit addressing
Capacity: 1907729.0 MB = 1863.0 GB (3907029168 x 512)

** Device 1 not available

Valid DOS partition found

Loading from IDE device 0, partition 6: Name: hda6
Type: U-Boot
Image Name: ARM OpenWrt Linux-5.10.176
Created: 2023-04-27 20:28:15 UTC
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 2687718 Bytes = 2.6 MB
Load Address: 00008000
Entry Point: 00008000

Booting image at 00800000 ...

Image Name: ARM OpenWrt Linux-5.10.176
Created: 2023-04-27 20:28:15 UTC
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 2687718 Bytes = 2.6 MB
Load Address: 00008000
Entry Point: 00008000
Verifying Checksum ... OK
OK

Starting kernel ...

[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 5.10.176 (builder@buildhost) (arm-openwrt-linux-muslgnueabi-gcc (OpenWrt GCC 11.2.0 r20134-5f15225c1e) 11.2.0, GNU ld (GNU Binutils) 2.37) #0 Thu Apr 27 20:28:15 2023
[ 0.000000] CPU: Feroceon 88FR131 [56251311] revision 1 (ARMv5TE), cr=0005317f
[ 0.000000] CPU: VIVT data cache, VIVT instruction cache
[ 0.000000] OF: fdt: Machine model: Seagate Blackarmor NAS220
[ 0.000000] Memory policy: Data cache writeback
[ 0.000000] Zone ranges:
[ 0.000000] Normal [mem 0x0000000000000000-0x000000000fffffff]
[ 0.000000] Movable zone start for each node
[ 0.000000] Early memory node ranges
[ 0.000000] node 0: [mem 0x0000000000000000-0x000000000fffffff]
[ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000000fffffff]
[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 64960
[ 0.000000] Kernel command line: console=ttyS0,115200n8 console=ttyS0,115200 root=/dev/sda7 ro reset=0 productType=ASTON_KW GPT fvdw vs80
[ 0.000000] Dentry cache hash table entries: 32768 (order: 5, 131072 bytes, linear)
[ 0.000000] Inode-cache hash table entries: 16384 (order: 4, 65536 bytes, linear)
[ 0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[ 0.000000] Memory: 250520K/262144K available (6008K kernel code, 600K rwdata, 928K rodata, 1024K init, 215K bss, 11624K reserved, 0K cma-reserved)
[ 0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[ 0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
[ 0.000000] clocksource: orion_clocksource: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 11467562657 ns
[ 0.000012] sched_clock: 32 bits at 166MHz, resolution 6ns, wraps every 12884901885ns
[ 0.000063] Switching to timer-based delay loop, resolution 6ns
[ 0.000275] Calibrating delay loop (skipped), value calculated using timer frequency.. 333.33 BogoMIPS (lpj=1666666)
[ 0.000316] pid_max: default: 32768 minimum: 301
[ 0.000602] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
[ 0.000640] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
[ 0.002020] CPU: Testing write buffer coherency: ok
[ 0.003840] Setting up static identity map for 0x100000 - 0x10003c
[ 0.004212] mvebu-soc-id: MVEBU SoC ID=0x6281, Rev=0x3
[ 0.004566] dyndbg: Ignore empty _ddebug table in a CONFIG_DYNAMIC_DEBUG_CORE build
[ 0.009388] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[ 0.009434] futex hash table entries: 256 (order: -1, 3072 bytes, linear)
[ 0.009637] pinctrl core: initialized pinctrl subsystem
[ 0.012431] NET: Registered protocol family 16
[ 0.013235] DMA: preallocated 256 KiB pool for atomic coherent allocations
[ 0.014857] thermal_sys: Registered thermal governor 'step_wise'
[ 0.015002] cpuidle: using governor ladder
[ 0.015579] Feroceon L2: Enabling L2
[ 0.015643] Feroceon L2: Cache support initialised.
[ 0.029766] No ATAGs?
[ 0.102146] SCSI subsystem initialized
[ 0.105199] usbcore: registered new interface driver usbfs
[ 0.105281] usbcore: registered new interface driver hub
[ 0.105352] usbcore: registered new device driver usb
[ 0.113325] clocksource: Switched to clocksource orion_clocksource
[ 0.114530] NET: Registered protocol family 2
[ 0.114843] IP idents hash table entries: 4096 (order: 3, 32768 bytes, linear)
[ 0.115793] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096 bytes, linear)
[ 0.115869] TCP established hash table entries: 2048 (order: 1, 8192 bytes, linear)
[ 0.115919] TCP bind hash table entries: 2048 (order: 1, 8192 bytes, linear)
[ 0.115963] TCP: Hash tables configured (established 2048 bind 2048)
[ 0.116092] UDP hash table entries: 256 (order: 0, 4096 bytes, linear)
[ 0.116129] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes, linear)
[ 0.116398] NET: Registered protocol family 1
[ 0.116447] PCI: CLS 0 bytes, default 32
[ 0.123951] workingset: timestamp_bits=14 max_order=16 bucket_order=2
[ 0.129780] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[ 0.129806] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[ 0.130942] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251)
[ 0.133846] kirkwood-pinctrl f1010000.pin-controller: registered pinctrl driver
[ 0.136140] Serial: 8250/16550 driver, 16 ports, IRQ sharing enabled
[ 0.138555] printk: console [ttyS0] disabled
[ 0.138695] f1012000.serial: ttyS0 at MMIO 0xf1012000 (irq = 26, base_baud = 10416666) is a 16550A
[ 0.570854] printk: console [ttyS0] enabled
[ 0.576020] Loading iSCSI transport class v2.0-870.
[ 0.833352] nand: No NAND device found
[ 0.851962] mv643xx_eth: MV-643xx 10/100/1000 ethernet driver version 1.4
[ 1.614390] mv643xx_eth_port mv643xx_eth_port.0 eth0: port 0 with MAC address 00:d0:4b:8f:a5:c0
[ 1.623852] rtc-mv f1010300.rtc: registered as rtc0
[ 1.628746] rtc-mv f1010300.rtc: setting system clock to 2023-09-19T15:20:49 UTC (1695136849)
[ 1.637452] i2c /dev entries driver
[ 1.642791] orion_wdt: Initial timeout 25 sec
[ 1.663746] marvell-cesa f1030000.crypto: CESA device successfully registered
[ 1.672189] NET: Registered protocol family 10
[ 1.679775] Segment Routing with IPv6
[ 1.683583] NET: Registered protocol family 17
[ 1.688089] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
[ 1.701256] 8021q: 802.1Q VLAN Support v1.8
[ 1.711671] regulator@1 GPIO handle specifies active low - ignored
[ 1.718317] regulator@2 GPIO handle specifies active low - ignored
[ 1.727377] /dev/root: Can't open blockdev
[ 1.731466] VFS: Cannot open root device "sda7" or unknown-block(0,0): error -6
[ 1.738785] Please append a correct "root=" boot option; here are the available partitions:
[ 1.747117] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
[ 1.755351] Rebooting in 1 seconds..

??????
As for rootfstype is ext4, same problem.
Something you look for in the partition and can't find it?
Being ext4 it doesn't read?
Is a specific image in root missing?
Will I have to format the partition, where is the root in another type ext2/ext3/etc? Except ext4?
What's wrong, since the disk is already being found and mounted in the kernel.

sorted out!!!! kkkkkk in the arm and without help, just reading the post I mentioned above and a lot of research on the internet.
the problem was execution permissions of essential files. Lacie NS2 running 100% with Seagate NAS220 firmware with additions
After firmware ready:
1st written directly to the dd partition if=seagate_blackarmor-nas220-uImage of=/dev/sda6 (raw);
2nd binwalk -Me openwrt-22.03.5-kirkwood-seagate_blackarmor-nas220-ext4-sysupgrade.bin
3rd dd if=root of=/sda7
4th fsck.ext4 /dev/sde7 (image sizes different from the partition, correct any defects).
additions post: Unable to boot from SATA HDD - #5 by bobafetthotmail