Welcome! Log In Create A New Profile

Advanced

Buffalo Terastation III TS-X4.0L/r5 (Sakura) From Stock 1.71(Buffalo Latest FW) ==>Debian Jessie/Stretch

Posted by Kapt Blasto 
Fortunately for this model I do have a read-only serial console so I can see any messages that are output, i just can't interrupt the boot to make uboot changes. This is particularly fortunate for this model since it is much more picky about what partitions it will load boot files from (for reasons I have not yet explored).

If necessary i can even change uboot parameters from userspace under the stock firmware to enable verbose kernel output/etc. I'm just hesitant to do so since I don't have a way to fix it if I screw something up sufficiently badly, and because getting that working will be a bit of a pain.

I've created some initial images to try with the vanilla Debian kernel, I'll see how far I can get with that to start.
Got this trying the stretch kernel (4.9.0-8-marvell)

Uncompressing Linux... done, booting the kernel.

Error: unrecognized/unsupported machine ID (r1 = 0x00000a89).

Available machine support:

ID (hex)        NAME
ffffffff        Generic DT based system
ffffffff        Marvell Kirkwood (Flattened Device Tree)
0000054e        Marvell Orion-2 Development Board
000005e4        Marvell Orion-NAS Reference Design
00000631        Buffalo Linkstation Pro/Live
000005e5        Buffalo/Revogear Kurobox Pro
00000630        Buffalo Terastation Pro II/Live
000007d5        Buffalo Linkstation LS-HGL
0000061d        QNAP TS-109/TS-209
00000641        QNAP TS-409
00000661        Linksys WRT350N v2
00000674        Technologic Systems TS-78xx SBC
0000069d        HP Media Vault mv2120
00000926        LaCie 2Big Network
00000709        Netgear WNR854T
00000714        Marvell Orion-VoIP GE Reference Design
0000071a        Marvell Orion-VoIP FXO Reference Design
00000766        Marvell Orion-1-90 AP GE Reference Design
00000b61        Buffalo Linkstation LiveV3 (LS-CHL)
ffffffff        Marvell Orion5x (Flattened Device Tree)

Please check your kernel config and/or bootloader

--------
Moderator edit: use code tags for readabilty



Edited 1 time(s). Last edit at 03/22/2019 12:45AM by bodhi.
Looks like I need to add these options:

CONFIG_ARCH_MV78XX0=y
CONFIG_MACH_TERASTATION_WXL=y

Any chance one of your kernels already has them?
1000001101000 Wrote:
-------------------------------------------------------
> Looks like I need to add these options:
>
> CONFIG_ARCH_MV78XX0=y
> CONFIG_MACH_TERASTATION_WXL=y
>
> Any chance one of your kernels already has them?

Unfortunately, none of them has this turned on.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
right on, I'll give it a try and see if I can get it to work.
Sure, if that happens to be too time consuming. Then

Quote

If necessary i can even change uboot parameters from userspace under the stock firmware to enable verbose kernel output/etc. I'm just hesitant to do so since I don't have a way to fix it if I screw something up sufficiently badly, and because getting that working will be a bit of a pain.

To be able to set envs in stock would make booting latest kernel easy. If you can list it, then you can test it (slowly and carefully).

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
I compiled a kernel with the debian-stretch marvell kernel config as a base with those two options added but got the same result.

I think I’ll try again with the mv78xx0_defconfig tomorrow.
Error: unrecognized/unsupported machine ID (r1 = 0x00000a89). 

Available machine support: 

ID (hex) NAME

This told me it expects a device tree appended to it. So you probably need to remove any DT config switches.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
I think you're right about that. the mv78xx0_defconfig worked relatively well, at least it recognized the mach_type etc.


Uncompressing Linux... done, booting the kernel.
Booting Linux on physical CPU 0x0
Linux version 4.9.144 (jeremy@earth) (gcc version 7.3.1 20180425 [linaro-7.3-2018.05 revision d29120a424ecfbc167ef90065c0eeb7f919777019
CPU: Feroceon [41159260] revision 0 (ARMv5TE), cr=0005397f
CPU: VIVT data cache, VIVT instruction cache
Machine: Buffalo Nas WXL
Ignoring unrecognised tag 0x41000403
Memory policy: Data cache writeback
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 130048
Kernel command line: console=ttyS0,115200 root=/dev/sda2 rw initrd=0x00900040,15M panic=5 BOOTVER=2.11
PID hash table entries: 2048 (order: 1, 8192 bytes)
Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
Memory: 512728K/524288K available (4638K kernel code, 321K rwdata, 1484K rodata, 252K init, 151K bss, 11560K reserved, 0K cma-reserved)
Virtual kernel memory layout:
    vector  : 0xffff0000 - 0xffff1000   (   4 kB)
    fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
    vmalloc : 0xe0800000 - 0xff800000   ( 496 MB)
    lowmem  : 0xc0000000 - 0xe0000000   ( 512 MB)
    pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
    modules : 0xbf000000 - 0xbfe00000   (  14 MB)
      .text : 0xc0008000 - 0xc048fde4   (4640 kB)
      .init : 0xc0625000 - 0xc0664000   ( 252 kB)
      .data : 0xc0664000 - 0xc06b459c   ( 322 kB)
       .bss : 0xc06b459c - 0xc06da2d0   ( 152 kB)
SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
Preemptible hierarchical RCU implementation.
        Build-time adjustment of leaf fanout to 32.
NR_IRQS:16 nr_irqs:128 128
Switching to timer-based delay loop, resolution 6ns
sched_clock: 32 bits at 166MHz, resolution 6ns, wraps every 12884901885ns
clocksource: orion_clocksource: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 11467562657 ns
Calibrating delay loop (skipped), value calculated using timer frequency.. 333.33 BogoMIPS (lpj=1666666)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
CPU: Testing write buffer coherency: ok
Setting up static identity map for 0x8200 - 0x8258
VFP support v0.3: implementor 41 architecture 1 part 10 variant 9 rev 0
clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
futex hash table entries: 256 (order: -1, 3072 bytes)
NET: Registered protocol family 16
DMA: preallocated 256 KiB pool for atomic coherent allocations
MV78100-A1 
core #0, 
PCLK = 800MHz, 
L2 = 400MHz, 
HCLK = 400MHz, 
TCLK = 167MHz
Feroceon L2: Enabling L2
Feroceon L2: Cache support initialised.
 22222222
 00552222
 00000000
 00504444
 00001111
 00000000
 00000033

 22222222
 33302222
 00000000
 00504444
 11111111
 00000000
 00000033

MV78xx0 PCIe port 1.0: 
link down, ignoring
vgaarb: loaded
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
clocksource: Switched to clocksource orion_clocksource
NET: Registered protocol family 2
TCP established hash table entries: 4096 (order: 2, 16384 bytes)
TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
UDP hash table entries: 256 (order: 0, 4096 bytes)
UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
NET: Registered protocol family 1
RPC: Registered named UNIX socket transport module.
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
RPC: Registered tcp NFSv4.1 backchannel transport module.
workingset: timestamp_bits=30 max_order=17 bucket_order=0
jffs2: version 2.2. (NAND) �© 2001-2006 Red Hat, Inc.
io scheduler noop registered
io scheduler deadline registered
io scheduler cfq registered (default)
Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
console [ttyS0] disabled
serial8250.0: ttyS0 at MMIO 0xf1012000 (irq = 12, base_baud = 10416666) is a 16550A
console [ttyS0] enabled
serial8250.1: ttyS1 at MMIO 0xf1012100 (irq = 13, base_baud = 10416666) is a 16550A
serial8250 serial8250.2: unable to register port at index 0 (IO0 MEMf1012200 IRQ14): -28
serial8250 serial8250.3: unable to register port at index 0 (IO0 MEMf1012300 IRQ15): -28
loop: module loaded
sata_mv sata_mv.0: cannot get optional clkdev
sata_mv sata_mv.0: slots 32 ports 2
scsi host0: sata_mv
scsi host1: sata_mv
ata1: SATA max UDMA/133 irq 26
ata2: SATA max UDMA/133 irq 26
libphy: Fixed MDIO Bus: probed
libphy: orion_mdio_bus: probed
mv643xx_eth: MV-643xx 10/100/1000 ethernet driver version 1.4
mv643xx_eth_port mv643xx_eth_port.0 eth0: port 0 with MAC address 00:1d:73:ff:4f:fb
mv643xx_eth_port mv643xx_eth_port.1 eth1: port 0 with MAC address 00:1d:73:ff:4f:fc
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
ehci-pci: EHCI PCI platform driver
ehci-orion: EHCI orion driver
orion-ehci orion-ehci.0: EHCI Host Controller
orion-ehci orion-ehci.0: new USB bus registered, assigned bus number 1
orion-ehci orion-ehci.0: irq 16, io mem 0xf1050000
orion-ehci orion-ehci.0: USB 2.0 started, EHCI 1.00
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
orion-ehci orion-ehci.1: EHCI Host Controller
orion-ehci orion-ehci.1: new USB bus registered, assigned bus number 2
orion-ehci orion-ehci.1: irq 17, io mem 0xf1051000
orion-ehci orion-ehci.1: USB 2.0 started, EHCI 1.00
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 1 port detected
ata1: SATA link down (SStatus 0 SControl F300)
orion-ehci orion-ehci.2: EHCI Host Controller
orion-ehci orion-ehci.2: new USB bus registered, assigned bus number 3
orion-ehci orion-ehci.2: irq 18, io mem 0xf1052000
orion-ehci orion-ehci.2: USB 2.0 started, EHCI 1.00
hub 3-0:1.0: USB hub found
hub 3-0:1.0: 1 port detected
usbcore: registered new interface driver usblp
usbcore: registered new interface driver usb-storage
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
i2c /dev entries driver
rtc-ds1307: probe of 0-0068 failed with error -5
usbcore: registered new interface driver usbhid
usbhid: USB HID core driver
oprofile: no performance counters
oprofile: using timer interrupt.
NET: Registered protocol family 17
hctosys: unable to open rtc device (rtc0)
ata2: SATA link down (SStatus 0 SControl F300)
VFS: Cannot open root device "sda2" or unknown-block(0,0): error -6
Please append a correct "root=" boot option; here are the available partitions:
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
Rebooting in 5 seconds..


--------
Moderator edit: use code tags for readabilty



Edited 1 time(s). Last edit at 03/22/2019 12:46AM by bodhi.
Cool!

What is the size of your uImage? And can you post the serial console boot log (if you have it).

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
The uImage was ~2.5M. I'm guessing the old 2M limit didn't apply to this version of uBoot since i didn't get an error. It only output like 20 modules, which probably explains the largish kernel.

I'll post the whole output when I get a chance, there are a couple of interesting things that come up that I'm wondering if you've seen elsewhere.

It looks like that defconfig doesn't include initrd support for some reason, which explains alot. Admittedly the initrd I was trying to use would have caused it's own problems but I'm working on that.

It doesn't look like like it recognized the PCI sata chip, if I'm reading this right. It might be that the wxl I'm working from didn't have that which might explain it. I've dealt with that exact issue for several DTBs but am less certain how to address that in this case. I suppose we can figure that out once I get a little farther.
> The uImage was ~2.5M.

That hopefully will make it easy to solve the rootfs mounting problem by using uInitrd.

> It looks like that defconfig doesn't include
> initrd support for some reason, which explains
> alot. Admittedly the initrd I was trying to use
> would have caused it's own problems but I'm
> working on that.

I think you should make a small empty initrd. And that will mount the rootfs. This kernel defconfig probably has all in-kernel drivers activated for this box already. So the initrd will just help in booting.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
I made two changes to the kernel source and tried again. One was to fix the rtc (which worked) one was to try to fix pci/sata (which did not).

I'm still having trouble with my initrd but have only begun to look into it.

CPU =  MV78

Checking DATA BUS OK!
Checking ADDRESS BUS OK!

Checking DATA BUS
Checking ADDRESS BUS
BUFFALO U-BOOT Start !!! 
 ** LOADER **
 ** BUFFALO BOARD: DB-MV78100-A-BP LE (CFG_ENV_ADDR=fff80000)


U-Boot 1.1.4 (Sep 29 2014 - 16:22:36) Marvell version: 3.3.5
Buffalo Version: 2.11-1.02

U-Boot code: 00600000 -> 0066FFF0  BSS: -> 00684D30

Soc: MV78100 (DDR2)
CPU running @ 800Mhz L2 running @ 400Mhz
SysClock = 400Mhz , TClock = 166Mhz 

DRAM CAS Latency = 5 tRP = 6 tRAS = 18 tRCD=6
DRAM CS[0] base 0x00000000   size 512MB 
DRAM Total size 512MB  64bit width
[512kB@fff80000] Flash: 512 kB
Addresses 8M - 0M are saved for the U-Boot usage.
Mem malloc Initialization (8M - 7M): Done
NAND:512 MB

CPU 0: ARM926 (Rev 0)

Streaming enabled 
Write allocate disabled
FPU initialized to Run Fast Mode.
enaDCPref <NULL>
enaICPref <NULL>
setL2CacheWT no
setL2Size256K no
disL2Ecc no
disL2Prefetch yes
disL2Cache no
env finished


USB 0: host mode
USB 1: host mode
USB 2: host mode
PCI 0: PCI Express Root Complex Interface
PEX interface detected Link X4
PEX 4: interface detected no Link.
Net:   egiga0 [PRIME], egiga1
buffalo_change_power_status > Read 0x5c(swpoff_uboot_passed)
buffalo_change_power_status > Writing 0x5c(swpoff_uboot_passed)

Marvell Serial ATA Adapter
Integrated Sata device found
Found adapter at bus 0, device 1 ... Scanning channels
[1 1 0]: Enable DMA mode
  Device 3 @ 1 1:
Model: Hitachi HDS721050CLA362                  Firm: JP2OA3MA Ser#:       JPB570HK25XZGG
            Type: Hard Disk
            Supports 48-bit addressing
            Capacity: 476940.0 MB = 465.7 GB (976773168 x 512)

MAC Address on eth0  : 00:1d:73:ff:4f:fb


** Something is wrong, because of dev_desc->blksz is 0!!!
disk0 is not found!

Signature version    : 1.00
Signature MACAddress : 00:1d:73:ff:4f:fb

2376392 bytes read
   Image Name:   debian-installer
   Created:      2019-03-21  21:17:59 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    2376328 Bytes =  2.3 MB
   Load Address: 00008000
   Entry Point:  00008000

11760872 bytes read
   Image Name:   install-initrd
   Created:      2019-03-21  21:18:01 UTC
   Image Type:   ARM Linux RAMDisk Image (gzip compressed)
   Data Size:    11760808 Bytes = 11.2 MB
   Load Address: 00000000
   Entry Point:  00000000


** Something is wrong, because of dev_desc->blksz is 0!!!
disk2 is not found!


** Something is wrong, because of dev_desc->blksz is 0!!!
disk3 is not found!

 ***** Debug *****
diskinfo[0].IsMyDisk = 0
diskinfo[0].uImage_date = 0
diskinfo[0].initrd_date = 0
diskinfo[1].IsMyDisk = 1
diskinfo[1].uImage_date = 1553203079
diskinfo[1].initrd_date = 1553203081
diskinfo[2].IsMyDisk = 0
diskinfo[2].uImage_date = 0
diskinfo[2].initrd_date = 0
diskinfo[3].IsMyDisk = 0
diskinfo[3].uImage_date = 0
diskinfo[3].initrd_date = 0
newest_fw_dev is updated to 3

Booting from Device 3 
hit any key to switch tftp boot.
Hit any key to stop autoboot:  0 
Hit any key to stop autoboot:  0 

2376392 bytes read

11760872 bytes read
<<stop_sound>>
## Booting image at 02000000 ...
   Image Name:   debian-installer
   Created:      2019-03-21  21:17:59 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    2376328 Bytes =  2.3 MB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... OK
OK
call do_bootm_linux
## Loading Ramdisk Image at 00900000 ...
   Image Name:   install-initrd
   Created:      2019-03-21  21:18:01 UTC
   Image Type:   ARM Linux RAMDisk Image (gzip compressed)
   Data Size:    11760808 Bytes = 11.2 MB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK

Starting kernel ...

Uncompressing Linux... done, booting the kernel.
Booting Linux on physical CPU 0x0
Linux version 4.9.144 (jeremy@earth) (gcc version 7.3.1 20180425 [linaro-7.3-2018.05 revision d29120a424ecfbc167ef90065c0eeb7f919777019
CPU: Feroceon [41159260] revision 0 (ARMv5TE), cr=0005397f
CPU: VIVT data cache, VIVT instruction cache
Machine: Buffalo Nas WXL
Ignoring unrecognised tag 0x41000403
Memory policy: Data cache writeback
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 130048
Kernel command line: console=ttyS0,115200 root=/dev/sda2 rw initrd=0x00900040,15M panic=5 BOOTVER=2.11
PID hash table entries: 2048 (order: 1, 8192 bytes)
Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
Memory: 497332K/524288K available (4652K kernel code, 321K rwdata, 1484K rodata, 268K init, 151K bss, 26956K reserved, 0K cma-reserved)
Virtual kernel memory layout:
    vector  : 0xffff0000 - 0xffff1000   (   4 kB)
    fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
    vmalloc : 0xe0800000 - 0xff800000   ( 496 MB)
    lowmem  : 0xc0000000 - 0xe0000000   ( 512 MB)
    pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
    modules : 0xbf000000 - 0xbfe00000   (  14 MB)
      .text : 0xc0008000 - 0xc0493304   (4653 kB)
      .init : 0xc0629000 - 0xc066c000   ( 268 kB)
      .data : 0xc066c000 - 0xc06bc5dc   ( 322 kB)
       .bss : 0xc06bc5dc - 0xc06e2310   ( 152 kB)
SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
Preemptible hierarchical RCU implementation.
        Build-time adjustment of leaf fanout to 32.
NR_IRQS:16 nr_irqs:128 128
Switching to timer-based delay loop, resolution 6ns
sched_clock: 32 bits at 166MHz, resolution 6ns, wraps every 12884901885ns
clocksource: orion_clocksource: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 11467562657 ns
Calibrating delay loop (skipped), value calculated using timer frequency.. 333.33 BogoMIPS (lpj=1666666)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
CPU: Testing write buffer coherency: ok
Setting up static identity map for 0x8200 - 0x8258
VFP support v0.3: implementor 41 architecture 1 part 10 variant 9 rev 0
clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
futex hash table entries: 256 (order: -1, 3072 bytes)
NET: Registered protocol family 16
DMA: preallocated 256 KiB pool for atomic coherent allocations
MV78100-A1 
core #0, 
PCLK = 800MHz, 
L2 = 400MHz, 
HCLK = 400MHz, 
TCLK = 167MHz
Feroceon L2: Enabling L2
Feroceon L2: Cache support initialised.
 22222222
 00552222
 00000000
 00504444
 00001111
 00000000
 00000033

 22222222
 33302222
 00000000
 00504444
 11111111
 00000000
 00000033

MV78xx0 PCIe port 0.0: 
link up
------------[ cut here ]------------
WARNING: CPU: 0 PID: 1 at drivers/bus/mvebu-mbus.c:338 mvebu_mbus_setup_window.constprop.8+0xf4/0x138
Invalid MBus window size: 0x30000000
Modules linked in:
CPU: 0 PID: 1 Comm: swapper Not tainted 4.9.144 #2
Hardware name: Buffalo Nas WXL
[<c0015288>] (unwind_backtrace) from [<c0012d3c>] (show_stack+0x10/0x14)
[<c0012d3c>] (show_stack) from [<c001f2b4>] (__warn+0xdc/0x104)
[<c001f2b4>] (__warn) from [<c001f314>] (warn_slowpath_fmt+0x38/0x48)
[<c001f314>] (warn_slowpath_fmt) from [<c02902a0>] (mvebu_mbus_setup_window.constprop.8+0xf4/0x138)
[<c02902a0>] (mvebu_mbus_setup_window.constprop.8) from [<c0290420>] (mvebu_mbus_alloc_window.constprop.7+0x13c/0x148)
[<c0290420>] (mvebu_mbus_alloc_window.constprop.7) from [<c0290908>] (mvebu_mbus_add_window_by_id+0x14/0x1c)
[<c0290908>] (mvebu_mbus_add_window_by_id) from [<c062f838>] (mv78xx0_pcie_preinit+0x110/0x174)
[<c062f838>] (mv78xx0_pcie_preinit) from [<c00144b4>] (pci_common_init_dev+0x3c/0x33c)
[<c00144b4>] (pci_common_init_dev) from [<c062fd58>] (wxl_pci_init+0x30/0x48)
[<c062fd58>] (wxl_pci_init) from [<c0009784>] (do_one_initcall+0x40/0x180)
[<c0009784>] (do_one_initcall) from [<c0629d4c>] (kernel_init_freeable+0x104/0x1bc)
[<c0629d4c>] (kernel_init_freeable) from [<c048bd00>] (kernel_init+0x8/0xf4)
[<c048bd00>] (kernel_init) from [<c000f588>] (ret_from_fork+0x14/0x2c)
---[ end trace 953e35402455f24c ]---
PCI host bridge to bus 0000:00
pci_bus 0000:00: root bus resource [mem 0xc0000000-0xefffffff]
pci_bus 0000:00: root bus resource [io  0x1000-0xffff]
pci_bus 0000:00: No busn resource found for root bus, will use [bus 00-ff]
PCI: bus0: Fast back to back transfers disabled
pci 0000:00:01.0: BAR 0: assigned [mem 0xc0000000-0xc00fffff 64bit]
pci 0000:00:01.0: BAR 2: assigned [io  0x1000-0x10ff]
vgaarb: loaded
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
clocksource: Switched to clocksource orion_clocksource
NET: Registered protocol family 2
TCP established hash table entries: 4096 (order: 2, 16384 bytes)
TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
UDP hash table entries: 256 (order: 0, 4096 bytes)
UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
NET: Registered protocol family 1
RPC: Registered named UNIX socket transport module.
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
RPC: Registered tcp NFSv4.1 backchannel transport module.
Unpacking initramfs...
Initramfs unpacking failed: junk in compressed archive
Freeing initrd memory: 15364K
workingset: timestamp_bits=30 max_order=17 bucket_order=0
jffs2: version 2.2. (NAND) �© 2001-2006 Red Hat, Inc.
io scheduler noop registered
io scheduler deadline registered
io scheduler cfq registered (default)
Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
console [ttyS0] disabled
serial8250.0: ttyS0 at MMIO 0xf1012000 (irq = 12, base_baud = 10416666) is a 16550A
console [ttyS0] enabled
serial8250.1: ttyS1 at MMIO 0xf1012100 (irq = 13, base_baud = 10416666) is a 16550A
serial8250 serial8250.2: unable to register port at index 0 (IO0 MEMf1012200 IRQ14): -28
serial8250 serial8250.3: unable to register port at index 0 (IO0 MEMf1012300 IRQ15): -28
loop: module loaded
sata_mv: PCI master won't flush
sata_mv 0000:00:01.0: Driver probe function unexpectedly returned 1
sata_mv sata_mv.0: cannot get optional clkdev
sata_mv sata_mv.0: slots 32 ports 2
scsi host0: sata_mv
scsi host1: sata_mv
ata1: SATA max UDMA/133 irq 26
ata2: SATA max UDMA/133 irq 26
libphy: Fixed MDIO Bus: probed
libphy: orion_mdio_bus: probed
mv643xx_eth: MV-643xx 10/100/1000 ethernet driver version 1.4
mv643xx_eth_port mv643xx_eth_port.0 eth0: port 0 with MAC address 00:1d:73:ff:4f:fb
mv643xx_eth_port mv643xx_eth_port.1 eth1: port 0 with MAC address 00:1d:73:ff:4f:fc
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
ehci-pci: EHCI PCI platform driver
ehci-orion: EHCI orion driver
orion-ehci orion-ehci.0: EHCI Host Controller
orion-ehci orion-ehci.0: new USB bus registered, assigned bus number 1
orion-ehci orion-ehci.0: irq 16, io mem 0xf1050000
orion-ehci orion-ehci.0: USB 2.0 started, EHCI 1.00
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
orion-ehci orion-ehci.1: EHCI Host Controller
orion-ehci orion-ehci.1: new USB bus registered, assigned bus number 2
orion-ehci orion-ehci.1: irq 17, io mem 0xf1051000
orion-ehci orion-ehci.1: USB 2.0 started, EHCI 1.00
ata1: SATA link down (SStatus 0 SControl F300)
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 1 port detected
orion-ehci orion-ehci.2: EHCI Host Controller
orion-ehci orion-ehci.2: new USB bus registered, assigned bus number 3
orion-ehci orion-ehci.2: irq 18, io mem 0xf1052000
orion-ehci orion-ehci.2: USB 2.0 started, EHCI 1.00
hub 3-0:1.0: USB hub found
hub 3-0:1.0: 1 port detected
usbcore: registered new interface driver usblp
usbcore: registered new interface driver usb-storage
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
i2c /dev entries driver
random: fast init done
rtc-rs5c372 0-0032: rs5c372a found, 24hr
rtc rtc0: invalid alarm value: 2019-3-21 37:85:0
rtc-rs5c372 0-0032: rtc core: registered rtc-rs5c372 as rtc0
usbcore: registered new interface driver usbhid
usbhid: USB HID core driver
oprofile: no performance counters
oprofile: using timer interrupt.
NET: Registered protocol family 17
rtc-rs5c372 0-0032: setting system clock to 2019-03-21 23:46:12 UTC (1553211972)
ata2: SATA link down (SStatus 0 SControl F300)
VFS: Cannot open root device "sda2" or unknown-block(0,0): error -6
Please append a correct "root=" boot option; here are the available partitions:
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
Rebooting in 5 seconds..
i'm still scratching my head with the initrd issue. I don't think it's getting truncated and I think I have the relavant kernel settings enabled.

I'll else need to figure out what's going on with the pci/sata before I get much further.
1000001101000 Wrote:
-------------------------------------------------------
> i'm still scratching my head with the initrd
> issue. I don't think it's getting truncated and I
> think I have the relavant kernel settings
> enabled.
>

Initrd was corrupted. That was due to the memory reallocation (or lack thereof) by this old stock uboot.

So either change to load address of uInitrd to higher memory. Or use a multi-image that combines both uImage and uInitrd, and load it at the same address as uImage being loaded now.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)



Edited 1 time(s). Last edit at 03/21/2019 10:18PM by bodhi.
Here is the good load address for uInitrd: 32MB.

0x2100000

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
i think you're probably right though I still desire a "don't mess with uboot" solution if possible.

I'm wondering if I can configure the kernel to not mess with that area of memory. I finally found the config for buffalo's kernel (the whole kernel source actually) and am looking in the differences.

I'm wondering if i need to cahnge something like this:

Buffalo's config:
CONFIG_PAGE_OFFSET=0x80000000

mv78xx0_defconfig:
CONFIG_PAGE_OFFSET=0xC0000000

Though I'm not exactly sure what I'm looking for.
jeremy,

You're limited your options quite a bit without changing u-boot envs.

Assuming you have full serial, as with other boxes, you can do setenv without saving for testing purpose until you know that it works. And then save it. So it is very safe to do. There are certain u-boot envs that you want to avoid changing, but things like kernel load addresses and bootargs are quite safe to do. Those envs will not stop u-boot from booting itsefl, so you can always correct them in serial console.

As for kernel only solution, I recall you can hardcode the initrd location in kernel bootargs. And you can certainly hardcode bootargs in kernel config.

initrd=location

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
I think I'll purse that next. All my attempts at fixing the PCI issues have been failing so far but I'll be in a better position to troubleshoot that if I can get it to complete the boot process. for all i know it's working better than I think and just giving up too soon.
changing the bootcmd variable didn't have any affect. Looking at it again it seems it's not the actual command being executed, for one thing it hardcodes which drive loads the boot files from which doesn't match the device's behavior.

I don't know if that means the boot sequence is hardcoded in that source code buffalo didn't publish or what.


for reference here are the environment variables (including my modified bootcmd)
1: [bootargs=console=ttyS0,115200 mtdparts=physmapped-flash.0:32m(root)]
2: [baudrate=115200]
3: [loads_echo=0]
4: [ipaddr=192.168.11.150]
5: [serverip=192.168.11.1]
6: [rootpath=/mnt/ARM_FS/]
7: [netmask=255.255.255.0]
8: [fw_image_base=0x0]
9: [fw_image_size=0x0]
10: [console=console=ttyS0,115200]
11: [CASset=min]
12: [MALLOC_len=1]
13: [ethprime=egiga0]
14: [bootargs_end=:::DB78xx0:eth0:none]
15: [standalone=fsload 0x2000000 $(image_name);setenv bootargs $(console) root=/dev/mtdblock0 rw ip=$(ipaddr):$(serverip)$(bootargs_end); bootm 0x2000000;]
16: [ethmtu=1500]
17: [eth1mtu=1500]
18: [ethact=egiga0]
19: [ethaddr=00:1D:73:E7:A5:67]
20: [eth1addr=00:1D:73:E7:A5:68]
21: [stdin=serial]
22: [stdout=serial]
23: [stderr=serial]
24: [mainlineLinux=no]
25: [enaMonExt=no]
26: [enaFlashBuf=yes]
27: [enaCpuStream=yes]
28: [enaWrAllo=no]
29: [enaFPU=yes]
30: [pexMode=RC]
31: [disL2Cache=no]
32: [setL2CacheWT=no]
33: [disL2Prefetch=yes]
34: [setL2Size256K=no]
35: [disL2Ecc=no]
36: [sata_dma_mode=yes]
37: [netbsd_en=no]
38: [vxworks_en=no]
39: [buffalo_ver=BOOTVER=2.11]
40: [buffalo_minor_ver=BOOT_MINOR_VER=1.02]
41: [build_time=16:22:33]
42: [initrd=initrd.buffalo]
43: [kernel=uImage.buffalo]
44: [bootargs_base=console=ttyS0,115200]
45: [bootargs_root=root=/dev/sda2 rw initrd=0x00900040,15M panic=5]
46: [def_tftp=tftp 0x02000000 $(kernel); tftp 0x00900000 $(initrd); setenv bootargs $(bootargs_base) $(bootargs_root) $(buffalo_ver) tftpboot=yes; bootm 0x02000000 0x00900000]
47: [bootdelay=3]
48: [disaMvPnp=no]
49: [usb0Mode=host]
50: [usb1Mode=host]
51: [usb2Mode=host]
52: [EnableNandBoot=1]
53: [bootcmd= ext2load ide 2:1 0x02000000 /$(kernel); ext2load ide 2:1 0x03000000 /$(initrd); setenv bootargs $(bootargs_base) $(bootargs_root) $(buffalo_ver); bootm 0x02000000 0x03000000]
The following env set it to sda2

bootargs_root=root=/dev/sda2 rw initrd=0x00900040,15M panic=5

So if you have serial console,
setenv bootargs_root 'root=LABEL=rootfs rw initrd=0x00900040,15M panic=5'

It will boot the kernel and mount the rootfs that the kernel can find during disks partition scanning: a partition which has label rootfs. This rootfs fstab would have a line that specifies that the rootfs label is being used.

The only case where it would not work is if u-boot resets the env bootargs_root each time it boots. I'd doubt very much that it would do that to bootargs_root. There are a few Armada boxes wherein u-boot hardcodes the bootcmd, but not bootargs.

If you have GPL for this u-boot, it would be quite easy to see where the boot envs are being loaded, and if it is hardcoded. Or you could set a test env in stock OS to see if it sticks.

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)



Edited 1 time(s). Last edit at 04/02/2019 04:45PM by bodhi.
Dear everyone,

I am the author of the "kolios" website (now dead) and the author of the Marvell78100 kernel patch (at least for the 2.6 branch) and I will try to revive my (dead?) Terastation Duo in the next coming days.

Is there anyone still interested in getting a clear way of doing such thing?

I was thinking of trying to get a 2.6.34 on this machine and then see how to get a 4.x kernel with a decent glibc as well as a 5.x branch.

Let me know if this is interesting for any of you so I can record the necessary steps.

Cheers,
I would be very interested in that.
ok, this sounds good. One person is enough for me to come back here and share my work.

I'll report back (once I dig the rs232 cable from the attic).
I’ll pull out my ts-wxl and ts-xl too.

I think the dmesg output from my attempts a few months ago are earlier in this thread, it seemed like it was mostly working.
I got my ts-wxl, ts-xl and ts-rxl out and am ready for testing. I compiled a buster (4.19) kernel and tried booting it and got to about the same place as I did back in april. I’ve also installed buster on an ls-qvl and plan to use that for my rootfs/etc.

I’m working on setting up some scripts to streamline building kernel images and testing them once we get going.
Attachments:
open | download - 14D93748-A261-42CE-8F2C-953CB1E6FBFE.jpeg (818.6 KB)
I ended up starting with the 4.9 kernel I was trying a few months ago with a stretch rootfs from my ls-qvl and the ts-wxl since that's the actually supported device. Although I still can't seem to load an initrd without throwing an error I was able to make the tweaks to the config necessary to get it to successfully boot. The device is running stably and seems to work as expected.

I was able to use my python library for interfacing with the on-board microcontroller to put together a startup script which disables the startup watchdog timer and initializes the leds/lcd display. Fortunately that all worked out of the box the same as the TS1000/TS3000 devices.
https://github.com/1000001101000/Python_buffalo_libmicon
https://github.com/1000001101000/Debian_on_Buffalo/tree/master/Tools/ts3000_scripts

It's still pretty limited by the hard-coded rootfs device since I still can't get an initrd working, any help troubleshooting that would be greatly appreciated.

[    4.667376] Unpacking initramfs...
[    4.667388] Initramfs unpacking failed: junk in compressed archive
[    4.678079] Freeing initrd memory: 3712K

The most obvious explanation would be that the initrd or kernel are to big causing them to overlap but the memory locations used by the bootloader seem to far apart for that, also my kernel/initrd are actually smaller than the stock ones:

Mine:
-rw-r--r-- 1 root root 3.7M Aug 10 20:23 initrd.buffalo
-rw-r--r-- 1 root root 2.7M Aug 10 20:23 uImage.buffalo

Stock FW:
-rw-r--r-- 1 root root 8.8M Mar 30  2015 initrd.buffalo
-rw-r--r-- 1 root root 2.7M Mar 30  2015 uImage.buffalo
-rw-r--r-- 1 root root 2.7M Mar 30  2015 uImage-mv78100.buffalo

Any suggestions on how to proceed would be greatly appreciated. in the meantime I'm going to try to get this far on the Buster Kernel and see what happens with the other devices in this series.


here is the full dmesg output from what I have so far:
[    0.000000] Virtual kernel memory layout:
                   vector  : 0xffff0000 - 0xffff1000   (   4 kB)
                   fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
                   vmalloc : 0xe0800000 - 0xff800000   ( 496 MB)
                   lowmem  : 0xc0000000 - 0xe0000000   ( 512 MB)
                   pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
                   modules : 0xbf000000 - 0xbfe00000   (  14 MB)
                     .text : 0xc0008000 - 0xc053a224   (5321 kB)
                     .init : 0xc070c000 - 0xc0754000   ( 288 kB)
                     .data : 0xc0754000 - 0xc07a910c   ( 341 kB)
                      .bss : 0xc07a910c - 0xc07d3b30   ( 171 kB)
[    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] Preemptible hierarchical RCU implementation.
[    0.000000]  Build-time adjustment of leaf fanout to 32.
[    0.000000] NR_IRQS:16 nr_irqs:128 128
[    0.000000] Switching to timer-based delay loop, resolution 6ns
[    0.000009] sched_clock: 32 bits at 166MHz, resolution 6ns, wraps every 12884901885ns
[    2.920446] clocksource: orion_clocksource: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 11467562657 ns
[    2.920505] Calibrating delay loop (skipped), value calculated using timer frequency.. 333.33 BogoMIPS (lpj=1666666)
[    2.920524] pid_max: default: 32768 minimum: 301
[    2.920613] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    2.920624] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    2.921236] CPU: Testing write buffer coherency: ok
[    2.921617] Setting up static identity map for 0x8200 - 0x8258
[    2.923189] devtmpfs: initialized
[    2.924871] VFP support v0.3: implementor 41 architecture 1 part 10 variant 9 rev 0
[    2.925273] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    2.925293] futex hash table entries: 256 (order: -1, 3072 bytes)
[    2.925419] xor: measuring software checksum speed
[    3.020715]    arm4regs  :   687.600 MB/sec
[    3.120505]    8regs     :   590.000 MB/sec
[    3.220502]    32regs    :   796.000 MB/sec
[    3.220513] xor: using function: 32regs (796.000 MB/sec)
[    3.221106] NET: Registered protocol family 16
[    3.221562] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    3.227196] MV78100-A1 
[    3.227208] core #0, 
[    3.227216] PCLK = 800MHz, 
[    3.227222] L2 = 400MHz, 
[    3.227226] HCLK = 400MHz, 
[    3.227231] TCLK = 167MHz
[    3.227236] Feroceon L2: Enabling L2
[    3.227283] Feroceon L2: Cache support initialised.
[    3.227316] initial MPP regs:
[    3.227324]  22222222
[    3.227328]  00552222
[    3.227332]  00000000
[    3.227336]  00504444
[    3.227340]  00001111
[    3.227344]  00000000
[    3.227348]  00000033

[    3.227361]   final MPP regs:
[    3.227365]  22222222
[    3.227369]  33302222
[    3.227373]  00000000
[    3.227376]  00504444
[    3.227380]  11111111
[    3.227384]  00000000
[    3.227388]  00000033

[    3.230103] MV78xx0 PCIe port 0.0: 
[    3.230109] link down, ignoring
[    3.230115] MV78xx0 PCIe port 1.0: 
[    3.230119] link down, ignoring
[    3.440528] raid6: int32x1  gen()   139 MB/s
[    3.610625] raid6: int32x1  xor()   127 MB/s
[    3.780674] raid6: int32x2  gen()   201 MB/s
[    3.950680] raid6: int32x2  xor()   156 MB/s
[    4.120707] raid6: int32x4  gen()   182 MB/s
[    4.290699] raid6: int32x4  xor()   136 MB/s
[    4.460727] raid6: int32x8  gen()   205 MB/s
[    4.630484] raid6: int32x8  xor()   123 MB/s
[    4.630491] raid6: using algorithm int32x8 gen() 205 MB/s
[    4.630497] raid6: .... xor() 123 MB/s, rmw enabled
[    4.630503] raid6: using intx1 recovery algorithm
[    4.630853] vgaarb: loaded
[    4.631261] SCSI subsystem initialized
[    4.631545] libata version 3.00 loaded.
[    4.632121] usbcore: registered new interface driver usbfs
[    4.632246] usbcore: registered new interface driver hub
[    4.632363] usbcore: registered new device driver usb
[    4.634461] clocksource: Switched to clocksource orion_clocksource
[    4.665174] NET: Registered protocol family 2
[    4.665873] TCP established hash table entries: 4096 (order: 2, 16384 bytes)
[    4.665927] TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
[    4.665977] TCP: Hash tables configured (established 4096 bind 4096)
[    4.666030] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    4.666049] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    4.666177] NET: Registered protocol family 1
[    4.667113] RPC: Registered named UNIX socket transport module.
[    4.667121] RPC: Registered udp transport module.
[    4.667126] RPC: Registered tcp transport module.
[    4.667131] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    4.667142] PCI: CLS 0 bytes, default 32
[    4.667376] Unpacking initramfs...
[    4.667388] Initramfs unpacking failed: junk in compressed archive
[    4.678079] Freeing initrd memory: 3712K
[    4.680196] workingset: timestamp_bits=30 max_order=17 bucket_order=0
[    4.696806] jffs2: version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
[    4.698690] io scheduler noop registered
[    4.698700] io scheduler deadline registered
[    4.698891] io scheduler cfq registered (default)
[    4.706408] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[    4.709739] console [ttyS0] disabled
[    4.730234] serial8250.0: ttyS0 at MMIO 0xf1012000 (irq = 12, base_baud = 10416666) is a 16550A
[    5.160232] console [ttyS0] enabled
[    5.183267] serial8250.1: ttyS1 at MMIO 0xf1012100 (irq = 13, base_baud = 10416666) is a 16550A
[    5.191060] serial8250 serial8250.2: unable to register port at index 0 (IO0 MEMf1012200 IRQ14): -28
[    5.198977] serial8250 serial8250.3: unable to register port at index 0 (IO0 MEMf1012300 IRQ15): -28
[    5.215142] loop: module loaded
[    5.217599] sata_mv sata_mv.0: version 1.28
[    5.217651] sata_mv sata_mv.0: cannot get optional clkdev
[    5.221821] sata_mv sata_mv.0: slots 32 ports 2
[    5.229720] scsi host0: sata_mv
[    5.232256] scsi host1: sata_mv
[    5.234666] ata1: SATA max UDMA/133 irq 26
[    5.237447] ata2: SATA max UDMA/133 irq 26
[    5.241220] libphy: Fixed MDIO Bus: probed
[    5.249846] random: fast init done
[    5.255593] libphy: orion_mdio_bus: probed
[    5.258511] mv643xx_eth: MV-643xx 10/100/1000 ethernet driver version 1.4
[    5.356877] mv643xx_eth_port mv643xx_eth_port.0 eth0: port 0 with MAC address 00:1d:73:e7:a5:67
[    5.456861] mv643xx_eth_port mv643xx_eth_port.1 eth1: port 0 with MAC address 00:1d:73:e7:a5:68
[    5.464446] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    5.469745] ehci-pci: EHCI PCI platform driver
[    5.472980] ehci-orion: EHCI orion driver
[    5.475834] orion-ehci orion-ehci.0: EHCI Host Controller
[    5.479936] orion-ehci orion-ehci.0: new USB bus registered, assigned bus number 1
[    5.486450] orion-ehci orion-ehci.0: irq 16, io mem 0xf1050000
[    5.514490] orion-ehci orion-ehci.0: USB 2.0 started, EHCI 1.00
[    5.520052] hub 1-0:1.0: USB hub found
[    5.522623] hub 1-0:1.0: 1 port detected
[    5.525748] orion-ehci orion-ehci.1: EHCI Host Controller
[    5.529846] orion-ehci orion-ehci.1: new USB bus registered, assigned bus number 2
[    5.536306] orion-ehci orion-ehci.1: irq 17, io mem 0xf1051000
[    5.564490] orion-ehci orion-ehci.1: USB 2.0 started, EHCI 1.00
[    5.570045] hub 2-0:1.0: USB hub found
[    5.572604] hub 2-0:1.0: 1 port detected
[    5.575703] orion-ehci orion-ehci.2: EHCI Host Controller
[    5.579801] orion-ehci orion-ehci.2: new USB bus registered, assigned bus number 3
[    5.586249] orion-ehci orion-ehci.2: irq 18, io mem 0xf1052000
[    5.614490] orion-ehci orion-ehci.2: USB 2.0 started, EHCI 1.00
[    5.619961] hub 3-0:1.0: USB hub found
[    5.622514] hub 3-0:1.0: 1 port detected
[    5.625809] usbcore: registered new interface driver usblp
[    5.630320] usbcore: registered new interface driver usb-storage
[    5.635458] usbcore: registered new interface driver ums-datafab
[    5.640331] usbcore: registered new interface driver ums-freecom
[    5.645211] usbcore: registered new interface driver ums-jumpshot
[    5.650165] usbcore: registered new interface driver ums-sddr09
[    5.654936] usbcore: registered new interface driver ums-sddr55
[    5.659879] i2c /dev entries driver
[    5.665903] rtc-rs5c372 0-0032: rs5c372a found, 24hr
[    5.675841] rtc-rs5c372 0-0032: rtc core: registered rtc-rs5c372 as rtc0
[    5.681821] md: linear personality registered for level -1
[    5.686347] md: raid0 personality registered for level 0
[    5.690337] md: raid1 personality registered for level 1
[    5.694320] md: raid10 personality registered for level 10
[    5.698794] md: raid6 personality registered for level 6
[    5.702787] md: raid5 personality registered for level 5
[    5.706887] md: raid4 personality registered for level 4
[    5.710874] md: multipath personality registered for level -4
[    5.715366] md: faulty personality registered for level -5
[    5.720582] device-mapper: ioctl: 4.35.0-ioctl (2016-06-23) initialised: dm-devel@redhat.com
[    5.727925] device-mapper: raid: Loading target version 1.9.1
[    5.732704] usbcore: registered new interface driver usbhid
[    5.737290] usbhid: USB HID core driver
[    5.740122] oprofile: no performance counters
[    5.743519] oprofile: using timer interrupt.
[    5.746785] NET: Registered protocol family 17
[    5.752850] rtc-rs5c372 0-0032: setting system clock to 2019-08-11 01:27:24 UTC (1565486844)
[   10.774483] ata1: link is slow to respond, please be patient (ready=0)
[   15.254481] ata1: SRST failed (errno=-16)
[   15.754493] ata1: SATA link up 3.0 Gbps (SStatus 123 SControl F300)
[   15.761885] ata1.00: ATA-9: SanDisk SSD U100 32GB, 10.56.00, max UDMA/133
[   15.767365] ata1.00: 62533296 sectors, multi 1: LBA48 NCQ (depth 31/32)
[   15.773083] ata1.00: configured for UDMA/133
[   15.786517] scsi 0:0:0:0: Direct-Access     ATA      SanDisk SSD U100 6.00 PQ: 0 ANSI: 5
[   15.845361] sd 0:0:0:0: [sda] 62533296 512-byte logical blocks: (32.0 GB/29.8 GiB)
[   15.852430] sd 0:0:0:0: [sda] Write Protect is off
[   15.855966] sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
[   15.856080] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[   15.868374]  sda: sda1 sda2 sda3 sda4 sda5
[   15.873611] sd 0:0:0:0: [sda] Attached SCSI disk
[   16.185933] ata2: SATA link down (SStatus 0 SControl F300)
[   16.200245] md: Waiting for all devices to be available before autodetect
[   16.205739] md: If you don't use raid, use raid=noautodetect
[   16.211032] md: Autodetecting RAID arrays.
[   16.213816] md: Scanned 0 and added 0 devices.
[   16.217104] md: autorun ...
[   16.218582] md: ... autorun DONE.
[   16.221160] EXT4-fs (sda2): couldn't mount as ext3 due to feature incompatibilities
[   16.237290] EXT4-fs (sda2): mounted filesystem with ordered data mode. Opts: (null)
[   16.243645] VFS: Mounted root (ext4 filesystem) on device 8:2.
[   16.251694] devtmpfs: mounted
[   16.254397] Freeing unused kernel memory: 288K
[   16.257670] This architecture does not have kernel memory protection.
[   16.481287] random: systemd: uninitialized urandom read (16 bytes read)
[   16.493253] systemd[1]: systemd 232 running in system mode. (+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD +IDN)
[   16.510318] systemd[1]: Detected architecture arm.
[   16.544999] systemd[1]: Set hostname to <tswxl>.
[   16.567447] random: systemd: uninitialized urandom read (16 bytes read)
[   16.671359] random: systemd-cryptse: uninitialized urandom read (16 bytes read)
[   17.084313] systemd[1]: Created slice User and Session Slice.
[   17.114887] systemd[1]: Listening on fsck to fsckd communication Socket.
[   17.154978] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
[   17.626657] EXT4-fs (sda2): re-mounted. Opts: errors=remount-ro
[   18.351302] systemd-journald[524]: Received request to flush runtime journal from PID 1
[   18.835379] sd 0:0:0:0: Attached scsi generic sg0 type 0
[   19.435682] md: bind<sda1>
[   19.449492] md: bind<sda5>
[   19.463204] md/raid1:md0: active with 1 out of 2 mirrors
[   19.475069] md0: detected capacity change from 0 to 1024393216
[   19.482394] md/raid1:md10: active with 1 out of 4 mirrors
[   19.494694] created bitmap (1 pages) for device md10
[   19.499048] md10: bitmap initialized from disk: read 1 pages, set 1 of 16 bits
[   19.532535] md10: detected capacity change from 0 to 1024446464
[   19.779328] Adding 1000432k swap on /dev/md10.  Priority:-1 extents:1 across:1000432k 
[   21.849518] EXT4-fs (md0): mounting ext3 file system using the ext4 subsystem
[   21.934904] EXT4-fs (md0): mounted filesystem with ordered data mode. Opts: (null)
[   22.726022] mv643xx_eth_port mv643xx_eth_port.0 eth0: link down
[   26.250410] mv643xx_eth_port mv643xx_eth_port.0 eth0: link up, 1000 Mb/s, full duplex, flow control disabled
[  147.537942] random: crng init done
[  147.540037] random: 7 urandom warning(s) missed due to ratelimiting
Initrd was corrupted. Even though your built kernel is smaller, there is the DTB in uImage and uInitrd decompression.

With a modern Kirwood kernel such as 4.19.x,0 you can use these load addresses:

0x800000 for uImage
0x2100000 for uInitrd

-bodhi
===========================
Forum Wiki
bodhi's corner (buy bodhi a beer)
@kiddouk have you ever successfully loaded an initrd on these devices?
I was able to get an initrd to execute successfully without needing to modify uboot in anyway.

The process is basically to pad the front of the initrd with zeros to get the the actual archive loaded to a suitable offset and then compiling that offset into the kernel cmdline. I'm still working to cleanup/script that process (as well as looking at some other less hacky options). Either way this should leave me with something workable that I should be able to have run automatically after flash-kernel (using the same hook flash-kernel uses).

This leaves me with a TS-WXL running Debian Stretch with most of the important hardware working (NAND-Flash, SPI-NOR and probably some other things I haven't thought of will take some work).

I believe I know what the issue is compiling the Buster Kernel and will work on that more once I get the process cleaned up a bit more.

I still haven't had any luck getting the SATA working on the TS-XL (4-bay device), the SoC sata works just fine for the TS-WXL (2 bay device) but the PCI connected Marvell 88SX7042 isn't being recognized properly. I think the PCI ports aren't being initialized properly but I have no idea if i'll be able to correct that or not.
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: