Welcome! Log In Create A New Profile

Advanced

Debian on Synology RS816 (Armada 385)

Posted by zifxify 
Re: Debian on Synology RS816 (Armada 385)
May 21, 2019 04:26AM
Richard,

> Sorry about not posting output.
> As posted I have already rebooted as suggested so
> short or re-running the commands I can't show you
> the output, if you would like me to I will.

Please do. It's for installation instruction and someone's benefit who is following this session.

You need to repeat Step 7 only.

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: Debian on Synology RS816 (Armada 385)
May 21, 2019 04:34AM
Richard,

root@debian:~# flash_unlock /dev/mtd1

root@debian:~# flashcp  -v rs816.dtb.mtd1.kwb /dev/mtd1
Erasing blocks: 16/16 (100%)
Writing data: 64k/64k (100%)
Verifying data: 64k/64k (100%)

root@debian:~# flash_unlock /dev/mtd2

root@debian:~# flashcp  -v rs816.zImage.mtd2.kwb /dev/mtd2
Erasing blocks: 1776/1776 (100%)
Writing data: 7104k/7104k (100%)
Verifying data: 7104k/7104k (100%)

That looks good!

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: Debian on Synology RS816 (Armada 385)
May 21, 2019 04:35AM
@bodhi
In case you missed my second edit I hadn't closed the console so I was able to copy the output to my post.

UPDATE:

bodhi: Saw that :)



Edited 1 time(s). Last edit at 05/21/2019 04:41AM by bodhi.
Re: Debian on Synology RS816 (Armada 385)
May 21, 2019 04:38AM
Synology RS816 Repartition SPI Flash and Flashing kernel zImage (Cont.)

Part IV

8. Setup to boot zImage and DTB in flash

After finishing Step 7, reboot with serial console, interrupt the countdown and

Set the mtdparts again
setenv mtdparts 'mtdparts=spi0.0:896k(u-boot),64k(dtb),7104k(kernel),-(env)'

And set up for booting
setenv boot_config_spi 'setenv image_addr_spi 0x0F0000; setenv image_size_spi 0x006f0000; setenv dtb_addr_spi 0x0E0000; setenv dtb_size_spi 0x010000; sf probe 0 50000000'
setenv load_image_spi 'echo loading zImage from flash ...; sf read $load_image_addr $image_addr_spi $image_size_spi'
setenv load_dtb_spi 'echo loading DTB from flash ...; sf read $loadaddr_dt $dtb_addr_spi $dtb_size_spi'
setenv bootcmd_exec 'echo Booting Debian ...; run set_bootargs; setenv fdt_skip_update yes; setenv initrd_high 0xffffffff; run boot_config_spi; run load_image_spi; run load_dtb_spi; bootz $load_image_addr - $load_dtb_addr'

And print out the envs for reference and boot
printenv
boot

Please post the entire serial console log here.

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



Edited 3 time(s). Last edit at 05/21/2019 04:57AM by bodhi.
Re: Debian on Synology RS816 (Armada 385)
May 21, 2019 04:48AM
There was a typo in bootcmd_exec! I've edited the Part IV post above.

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: Debian on Synology RS816 (Armada 385)
May 21, 2019 04:52AM
Richard,

I've forgot the setenv for mtdparts again! Hope you caught that.

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: Debian on Synology RS816 (Armada 385)
May 21, 2019 04:53AM
@bodhi
Separate post for small amendments (three apostrophe's) to your env and to check they were typos and not as you intended ?

Changes in red
setenv boot_config_spi 'setenv image_addr_spi 0x0F0000; setenv image_size_spi 0x006f0000; setenv dtb_addr_spi 0x0E0000; setenv dtb_size_spi 0x010000; sf probe 0 50000000'
setenv load_image_spi 'echo loading zImage from flash ...; sf read $load_image_addr $image_addr_spi $image_size_spi'
setenv load_dtb_spi 'echo loading DTB from flash ...; sf read $loadaddr_dt $dtb_addr_spi $dtb_size_spi'
bootcmd_exec='echo Booting Debian ...; run set_bootargs; setenv fdt_skip_update yes; setenv initrd_high 0xffffffff; run boot_config_spi; run load_image_spi; run load_dtb_spi; bootz $load_image_addr - $load_dtb_addr'

Will post output
Re: Debian on Synology RS816 (Armada 385)
May 21, 2019 04:55AM
@bodhi
We are both typing too quickly :)

Yes caught mtdparts
Re: Debian on Synology RS816 (Armada 385)
May 21, 2019 04:55AM
Richard,

Good catch! indeed they are typos.

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: Debian on Synology RS816 (Armada 385)
May 21, 2019 05:06AM
@bodhi

Looking good!

BootROM - 1.73
Booting from SPI flash


General initialization - Version: 1.0.0
AVS selection from EFUSE disabled (Skip reading EFUSE values)
Detected Device ID 6820
High speed PHY - Version: 2.0

Init Synology board board SerDes lanes topology details:
 | Lane # | Speed|    Type     |
 ------------------------------|
 |   0    |  0   |  SGMII0     |
 |   1    |  6   |  SATA0      |
 |   2    |  5   |  PCIe1      |
 |   3    |  0   |  SGMII2     |
 |   4    |  5   |  USB3 HOST0 |
 |   5    |  5   |  USB3 HOST1 |
 -------------------------------
High speed PHY - Ended Successfully
DDR3 Training Sequence - Ver TIP-1.46.0
WARNING:Wrong configuration for pup #1 CS mask and CS mirroring for all pups should be the same
WARNING:Wrong configuration for pup #3 CS mask and CS mirroring for all pups should be the same
DDR3 Training Sequence - Switching XBAR Window to FastPath Window
DDR3 Training Sequence - Ended Successfully
Not detected suspend to RAM indication
BootROM: Image checksum verification PASSED
l
 __   __                      _ _
|  \/  | __ _ _ ____   _____| | |
| |\/| |/ _` | '__\ \ / / _ \ | |
| |  | | (_| | |   \ V /  __/ | |
|_|  |_|\__,_|_|    \_/ \___|_|_|
         _   _     ____              _
        | | | |   | __ )  ___   ___ | |_
        | | | |___|  _ \ / _ \ / _ \| __|
        | |_| |___| |_) | (_) | (_) | |_
         \___/    |____/ \___/ \___/ \__|
 ** LOADER **


U-Boot 2013.01-g74a026b-dirty (Dec 30 2015 - 14:40:58) Marvell version: 2015_T1.0p16

Board: SYNO-RS816
SoC:   MV88F6820 Rev A0
       running 2 CPUs
CPU:   ARM Cortex A9 MPCore (Rev 1) LE
       CPU 0
       CPU    @ 1866 [MHz]
       L2     @ 933 [MHz]
       TClock @ 200 [MHz]
       DDR3    @ 933 [MHz]
       DDR3 32 Bit Width,FastPath Memory Access, DLB Enabled, ECC Disabled
DRAM:  1 GiB
MMC:   mv_sdh: 0
SF: Detected N25Q64 with page size 64 KiB, total 8 MiB
PCI-e 1 (IF 0 - bus 0) Root Complex Interface, Detected Link X1, GEN 2.0
USB3.0 0: Host Mode
USB3.0 1: Host Mode

Map:   Code:                    0x3ff3b000:0x3ffc91bc
       BSS:                     0x3ffef688
       Stack:                   0x3fa2af20
       Heap:                    0x3fa2b000:0x3ff3b000
       U-Boot Environment:      0x007e0000:0x007f0000 (SPI)

Board configuration detected:

Synology Model: RS816

Net:
|  port  | Interface | PHY address  |
|--------|-----------|--------------|
| egiga0 |   SGMII   |     0x01     |
| egiga2 |   SGMII   |     0x00     |
egiga0 [PRIME], egiga2
Press Ctrl+C to abort autoboot in 3 second
Marvell>> setenv mtdparts 'mtdparts=spi0.0:896k(u-boot),64k(dtb),7104k(kernel),-(env)'
Marvell>> setenv boot_config_spi 'setenv image_addr_spi 0x0F0000; setenv image_size_spi 0x006f0000; setenv dtb_addr_spi 0x0E0000; setenv dtb_size_spi 0x010000; sf probe 0 50000000'
Marvell>> setenv load_image_spi 'echo loading zImage from flash ...; sf read $load_image_addr $image_addr_spi $image_size_spi'
Marvell>> setenv load_dtb_spi 'echo loading DTB from flash ...; sf read $loadaddr_dt $dtb_addr_spi $dtb_size_spi'
Marvell>> setenv bootcmd_exec 'echo Booting Debian ...; run set_bootargs; setenv fdt_skip_update yes; setenv initrd_high 0xffffffff; run boot_config_spi; run load_image_spi; run load_dtb_spi; bootz $load_image_addr - $load_dtb_addr'
Marvell>> printenv
CASset=max
MALLOC_len=5
MPmode=SMP
ata_hdd_detect=syno_hdd_detect=39,39,39,39
ata_hdd_enable=syno_hdd_enable=37,37,37,37
autoload=no
baudrate=115200
boot_config_spi=setenv image_addr_spi 0x0F0000; setenv image_size_spi 0x006f0000; setenv dtb_addr_spi 0x0E0000; setenv dtb_size_spi 0x010000; sf probe 0 50000000
boot_order=hd_scr usb_scr mmc_scr hd_img usb_img mmc_img pxe net_img net_scr
bootargs=
bootargs_dflt=$console $nandEcc $mtdparts_lgcy $bootargs_root nfsroot=$serverip:$rootpath ip=$ipaddr:$serverip$bootargs_end $mvNetConfig video=dovefb:lcd0:$lcd0_params clcd.lcd0_enable=$lcd0_enable clcd.lcd_panel=$lcd_panel
bootargs_end=:10.4.50.254:255.255.255.0:Armada38x:eth0:none
bootargs_root=root=/dev/nfs rw
bootcmd=run bootcmd_exec; run bootspi
bootcmd_auto=stage_boot $boot_order
bootcmd_exec=echo Booting Debian ...; run set_bootargs; setenv fdt_skip_update yes; setenv initrd_high 0xffffffff; run boot_config_spi; run load_image_spi; run load_dtb_spi; bootz $load_image_addr - $load_dtb_addr
bootcmd_fdt=tftpboot 0x2000000 $image_name;tftpboot $fdtaddr $fdtfile;setenv bootargs $console $nandEcc $mtdparts $bootargs_root nfsroot=$serverip:$rootpath ip=$ipaddr:$serverip$bootargs_end $mvNetConfig video=dovefb:lcd0:$lcd0_params clcd.lcd0_enable=$lcd0_enable clcd.lcd_panel=$lcd_panel; bootz 0x2000000 - $fdtaddr;
bootcmd_fdt_boot=tftpboot 0x2000000 $image_name; setenv bootargs $console $nandEcc $mtdparts $bootargs_root nfsroot=$serverip:$rootpath ip=$ipaddr:$serverip$bootargs_end $mvNetConfig video=dovefb:lcd0:$lcd0_params clcd.lcd0_enable=$lcd0_enable clcd.lcd_panel=$lcd_panel; bootz 0x2000000 - $fdtaddr;
bootcmd_fdt_edit=tftpboot $fdtaddr $fdtfile; fdt addr $fdtaddr; setenv bootcmd $bootcmd_fdt_boot
bootcmd_lgcy=tftpboot 0x2000000 $image_name;setenv bootargs $console $nandEcc $mtdparts_lgcy $bootargs_root nfsroot=$serverip:$rootpath ip=$ipaddr:$serverip$bootargs_end  video=dovefb:lcd0:$lcd0_params clcd.lcd0_enable=$lcd0_enable clcd.lcd_panel=$lcd_panel;  bootm $loadaddr;
bootdelay=3
bootftp=run syno_bootargs;tftpboot $loadaddr_kernel $file_kernel;tftpboot $loadaddr_rootfs $file_rootfs;sf probe; sf read $loadaddr_dt $spi_pt_addr_dt $spi_pt_size_dt;fdt addr $loadaddr_dt;bootm $loadaddr_kernel $loadaddr_rootfs $loadaddr_dt;
bootspi=run syno_bootargs;sf probe 0 50000000;sf read $loadaddr_kernel $spi_pt_addr_kernel $spi_pt_size_kernel;sf read $loadaddr_rootfs $spi_pt_addr_rootfs $spi_pt_size_rootfs;sf read $loadaddr_dt $spi_pt_addr_dt $spi_pt_size_dt;bootm $loadaddr_kernel $loadaddr_rootfs $loadaddr_dt;
cacheShare=no
clean_env=sf probe; sf erase $spi_pt_addr_env $spi_pt_size_env;
console=console=ttyS0,115200
device_partition=0:1
disaMvPnp=no
eeeEnable=no
enaClockGating=no
enaCpuStream=no
enaFPU=yes
enaMonExt=no
enaWrAllo=no
eth1addr=00:50:43:1c:24:27
eth1mtu=1500
eth2addr=00:50:43:1c:1c:27
eth2mtu=1500
eth3addr=00:50:43:24:1c:1c
eth3mtu=1500
ethact=egiga0
ethaddr=00:50:43:1c:24:27
ethmtu=1500
ethprime=egiga0
fdt_addr=2040000
fdt_skip_update=yes
fdtaddr=0x1000000
fdtfile=armada-38x.dtb
file_flash=armada38x/flash.bin
file_kernel=armada38x/uImage
file_rootfs=armada38x/rd.bin
file_uboot=armada38x/uboot.bin
ide_path=/
image_name=uImage
initrd_high=8000000
initrd_name=uInitrd
ipaddr=192.168.1.250
kernel_addr_r=2080000
lcd0_enable=0
lcd0_params=640x480-16@60
lcd_panel=0
limit_dram_size=yes
load_dtb=echo loading DTB from tftpserver ...; tftpboot $load_dtb_addr armada-385-synology-rs816-v12.dtb
load_dtb_addr=0x1000000
load_dtb_spi=echo loading DTB from flash ...; sf read $loadaddr_dt $dtb_addr_spi $dtb_size_spi
load_image=echo loading zImage from tftpserver ...; tftpboot $load_image_addr zImage
load_image_addr=0x02000000
load_image_spi=echo loading zImage from flash ...; sf read $load_image_addr $image_addr_spi $image_size_spi
load_initrd=echo loading uInitrd from tftpserver ...; tftpboot $load_initrd_addr uInitrd
load_initrd_addr=0x3000000
loadaddr=0x02000000
loadaddr_dt=0x1000000
loadaddr_kernel=0x2000000
loadaddr_rootfs=0x3000000
loads_echo=0
mtdids=spi0=spi_flash
mtdparts=mtdparts=spi0.0:896k(u-boot),64k(dtb),7104k(kernel),-(env)
mtdparts_lgcy=mtdparts=spi_flash:4m(boot),-(spi-rootfs)
mvNetConfig=mv_net_config=4,(00:50:43:11:11:11,0:1:2:3),mtu=1500
mv_pon_addr=00:50:43:27:1c:1c
netbsd_en=no
netretry=no
pcieTune=no
pexMode=RC
pxe_files_load=:default.arm-armadaxp-db:default.arm-armadaxp:default.arm
pxefile_addr_r=3100000
ramdisk_addr_r=2880000
rootpath=/srv/nfs/
run_script=no
sata_delay_reset=0
sata_dma_mode=yes
script_addr_r=3000000
script_name=boot.scr
sd_detection_dat3=no
serverip=192.168.1.2
set_bootargs=setenv bootargs "console=ttyS0,115200 root=/dev/sda1 rootdelay=20  $mtdparts earlyprintk=serial"
spi_pt_addr_dt=0x0E0000
spi_pt_addr_env=0x7e0000
spi_pt_addr_kernel=0x0F0000
spi_pt_addr_rootfs=0x3C0000
spi_pt_size_dt=0x010000
spi_pt_size_env=0x010000
spi_pt_size_kernel=0x2D0000
spi_pt_size_rootfs=0x410000
standalone=fsload 0x2000000 $image_name;setenv bootargs $console $nandEcc $mtdparts_lgcy root=/dev/mtdblock0 rw ip=$ipaddr:$serverip$bootargs_end; bootm 0x2000000;
stderr=serial
stdin=serial
stdout=serial
syno_boot_dev=/dev/md0
syno_bootargs=setenv bootargs console=ttyS0,115200 ip=off initrd=$loadaddr_rootfs root=$syno_boot_dev rw $syno_extra_args syno_hw_version=$syno_hw_version hd_power_on_seq=$syno_hdd_powerup_seq ihd_num=$syno_hdd_powerup_seq netif_num=$syno_net_if_num $ata_hdd_detect $ata_hdd_enable flash_size=8
syno_extra_args=HddHotplug=4 sata_remap=0>4:4>0
syno_hdd_powerup_seq=4
syno_hw_version=RS816
syno_net_if_num=2
upd_flash=setenv tftpfile $file_flash; tftpboot $loadaddr $tftpfile; if test $? -eq 0; then echo "This may take a while, please be patient..."; sf probe; sf erase 0 +$filesize; sf write $loadaddr 0 $filesize; echo "\
Flash Update Done"; fi;
upd_kernel=setenv tftpfile $file_kernel; mw.b $loadaddr 0xFF $spi_pt_size_kernel; tftpboot $loadaddr $tftpfile; if test $? -eq 0; then sf probe; sf erase $spi_pt_addr_kernel $spi_pt_size_kernel; sf write $loadaddr $spi_pt_addr_kernel $spi_pt_size_kernel; echo "\
Kernel Update Done"; fi;
upd_rootfs=setenv tftpfile $file_rootfs; mw.b $loadaddr 0xFF $spi_pt_size_rootfs; tftpboot $loadaddr $tftpfile; if test $? -eq 0; then sf probe; sf erase $spi_pt_addr_rootfs +$filesize; sf write $loadaddr $spi_pt_addr_rootfs $filesize; echo "\
Rootfs Update Done"; fi;
upd_uboot=setenv tftpfile $file_uboot; tftpboot $loadaddr $tftpfile; if test $? -eq 0; then sf probe; sf erase 0 +$filesize; sf write $loadaddr 0 $filesize; echo "\
Uboot Update Done"; fi;
usb0Mode=host
usbActive=0
usbType=2
usb_setup=setenv usbActive 1; setenv usbType 3; usb start;
vxworks_en=no
yuk_ethaddr=00:00:00:EE:51:81

Environment size: 6893/65532 bytes
Marvell>> boot
Booting Debian ...
SF: Detected N25Q64 with page size 64 KiB, total 8 MiB
loading zImage from flash ...
loading DTB from flash ...
## Flattened Device Tree blob at 01000000
   Booting using the fdt blob at 0x01000000
   Loading Device Tree to 00ff8000, end 00fff758 ... OK

   Skipping Device Tree update ('fdt_skip_update' = yes)

Limit DDR size at 3GB due to power of 2 requirement of Address decoding

Starting kernel ...

Uncompressing Linux... done, booting the kernel.
[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 5.1.2-rj (root@debian) (gcc version 8.3.0 (Debian 8.3.0-6)) #1 SMP PREEMPT Sun May 19 12:13:42 AWST 2019
[    0.000000] CPU: ARMv7 Processor [414fc091] revision 1 (ARMv7), cr=10c5387d
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] OF: fdt: Machine model: Synology RS116
[    0.000000] printk: bootconsole [earlycon0] enabled
[    0.000000] Memory policy: Data cache writealloc
[    0.000000] random: get_random_bytes called from start_kernel+0x78/0x4dc with crng_init=0
[    0.000000] percpu: Embedded 18 pages/cpu s41932 r8192 d23604 u73728
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 260608
[    0.000000] Kernel command line: console=ttyS0,115200 root=/dev/sda1 rootdelay=20 mtdparts=spi0.0:896k(u-boot),64k(dtb),7104k(kernel),-(env) earlyprintk=serial
[    0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
[    0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
[    0.000000] Memory: 1024864K/1048576K available (9216K kernel code, 836K rwdata, 2496K rodata, 1024K init, 330K bss, 23712K reserved, 0K cma-reserved, 262144K highmem)
[    0.000000] rcu: Preemptible hierarchical RCU implementation.
[    0.000000] rcu:     RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=2.
[    0.000000]  Tasks RCU enabled.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies.
[    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2
[    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
[    0.000000] L2C-310 enabling early BRESP for Cortex-A9
[    0.000000] L2C-310 full line of zeros enabled for Cortex-A9
[    0.000000] L2C-310 D prefetch enabled, offset 1 lines
[    0.000000] L2C-310 dynamic clock gating enabled, standby mode enabled
[    0.000000] L2C-310 Coherent cache controller enabled, 16 ways, 1024 kB
[    0.000000] L2C-310 Coherent: CACHE_ID 0x410054c9, AUX_CTRL 0x56070001
[    0.000006] sched_clock: 64 bits at 933MHz, resolution 1ns, wraps every 4398046511103ns
[    0.007975] clocksource: arm_global_timer: mask: 0xffffffffffffffff max_cycles: 0x1ae5b571769, max_idle_ns: 881590513431 ns
[    0.019059] Switching to timer-based delay loop, resolution 1ns
[    0.025106] Ignoring duplicate/late registration of read_current_timer delay
[    0.032122] clocksource: armada_370_xp_clocksource: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 76450417870 ns
[    0.043339] Console: colour dummy device 80x30
[    0.047777] Calibrating delay loop (skipped), value calculated using timer frequency.. 1866.00 BogoMIPS (lpj=9330000)
[    0.058340] pid_max: default: 32768 minimum: 301
[    0.063017] LSM: Security Framework initializing
[    0.067657] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes)
[    0.074240] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes)
[    0.081537] *** VALIDATE proc ***
[    0.084911] *** VALIDATE cgroup1 ***
[    0.088475] *** VALIDATE cgroup2 ***
[    0.092054] CPU: Testing write buffer coherency: ok
[    0.096919] CPU0: Spectre v2: using BPIALL workaround
[    0.102047] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[    0.165011] Setting up static identity map for 0x100000 - 0x100060
[    0.171225] mvebu-soc-id: MVEBU SoC ID=0x6820, Rev=0x4
[    0.176427] mvebu-pmsu: Initializing Power Management Service Unit
[    0.194992] rcu: Hierarchical SRCU implementation.
[    0.234991] smp: Bringing up secondary CPUs ...
[    0.295046] Booting CPU 1
[    0.297787] CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
[    0.297790] CPU1: Spectre v2: using BPIALL workaround
[    0.308507] smp: Brought up 1 node, 2 CPUs
[    0.312582] SMP: Total of 2 processors activated (3732.00 BogoMIPS).
[    0.318920] CPU: All CPU(s) started in SVC mode.
[    0.324002] devtmpfs: initialized
[    0.329013] VFP support v0.3: implementor 41 architecture 3 part 30 variant 9 rev 4
[    0.336881] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.346675] futex hash table entries: 512 (order: 3, 32768 bytes)
[    0.352838] xor: measuring software checksum speed
[    0.454986]    arm4regs  :  2937.600 MB/sec
[    0.554988]    8regs     :  2220.400 MB/sec
[    0.654986]    32regs    :  2348.800 MB/sec
[    0.659147] xor: using function: arm4regs (2937.600 MB/sec)
[    0.664692] prandom: seed boundary self test passed
[    0.670662] prandom: 100 self tests passed
[    0.674736] pinctrl core: initialized pinctrl subsystem
[    0.680599] NET: Registered protocol family 16
[    0.685496] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.692653] audit: initializing netlink subsys (disabled)
[    0.698100] audit: type=2000 audit(0.670:1): state=initialized audit_enabled=0 res=1
[    0.715016] cpuidle: using governor ladder
[    0.719103] cpuidle: using governor menu
[    0.723114] hw-breakpoint: found 5 (+1 reserved) breakpoint and 1 watchpoint registers.
[    0.731134] hw-breakpoint: maximum watchpoint size is 4 bytes.
[    0.737043] mvebu-pmsu: CPU hotplug support is currently broken on Armada 38x: disabling
[    0.745112] mvebu-pmsu: CPU idle is currently broken on Armada 38x: disabling
[    0.935100] raid6: int32x8  gen()   311 MB/s
[    1.105038] raid6: int32x8  xor()   243 MB/s
[    1.275041] raid6: int32x4  gen()   303 MB/s
[    1.445073] raid6: int32x4  xor()   253 MB/s
[    1.615015] raid6: int32x2  gen()   337 MB/s
[    1.785005] raid6: int32x2  xor()   336 MB/s
[    1.955048] raid6: int32x1  gen()   304 MB/s
[    2.125016] raid6: int32x1  xor()   304 MB/s
[    2.129262] raid6: using algorithm int32x2 gen() 337 MB/s
[    2.134632] raid6: .... xor() 336 MB/s, rmw enabled
[    2.139489] raid6: using intx1 recovery algorithm
[    2.145478] vgaarb: loaded
[    2.148399] SCSI subsystem initialized
[    2.152529] usbcore: registered new interface driver usbfs
[    2.158049] usbcore: registered new interface driver hub
[    2.163389] usbcore: registered new device driver usb
[    2.168817] media: Linux media interface: v0.10
[    2.173362] videodev: Linux video capture interface: v2.00
[    2.178989] pps_core: LinuxPPS API ver. 1 registered
[    2.183928] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    2.193062] PTP clock support registered
[    2.197757] clocksource: Switched to clocksource arm_global_timer
[    2.545434] VFS: Disk quotas dquot_6.6.0
[    2.549390] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[    2.562340] NET: Registered protocol family 2
[    2.566984] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 6144 bytes)
[    2.574628] TCP established hash table entries: 8192 (order: 3, 32768 bytes)
[    2.581676] TCP bind hash table entries: 8192 (order: 4, 65536 bytes)
[    2.588140] TCP: Hash tables configured (established 8192 bind 8192)
[    2.594515] UDP hash table entries: 512 (order: 2, 16384 bytes)
[    2.600435] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes)
[    2.606887] NET: Registered protocol family 1
[    2.611475] RPC: Registered named UNIX socket transport module.
[    2.617365] RPC: Registered udp transport module.
[    2.622054] RPC: Registered tcp transport module.
[    2.626733] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    2.633317] NetWinder Floating Point Emulator V0.97 (double precision)
[    2.639953] hw perfevents: enabled with armv7_cortex_a9 PMU driver, 7 counters available
[    2.649240] Initialise system trusted keyrings
[    2.653676] Key type blacklist registered
[    2.657731] workingset: timestamp_bits=30 max_order=18 bucket_order=0
[    2.664221] zbud: loaded
[    2.667170] NFS: Registering the id_resolver key type
[    2.672226] Key type id_resolver registered
[    2.676387] Key type id_legacy registered
[    2.680388] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[    2.687056] Installing knfsd (copyright (C) 1996 okir@monad.swb.de).
[    2.693490] jffs2: version 2.2. (NAND) (SUMMARY)  © 2001-2006 Red Hat, Inc.
[    2.700778] orangefs_debugfs_init: called with debug mask: :none: :0:
[    2.707254] orangefs_init: module version upstream loaded
[    2.716261] async_tx: api initialized (async)
[    2.720614] Key type asymmetric registered
[    2.724688] Asymmetric key parser 'x509' registered
[    2.729570] bounce: pool size: 64 pages
[    2.733446] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 244)
[    2.740853] io scheduler bfq registered
[    2.746165] armada-38x-pinctrl f1018000.pinctrl: registered pinctrl driver
[    2.754910] mvebu-pcie soc:pcie: PCI host bridge to bus 0000:00
[    2.760823] pci_bus 0000:00: root bus resource [bus 00-ff]
[    2.766282] pci_bus 0000:00: root bus resource [mem 0xe0000000-0xe7ffffff]
[    2.773213] pci_bus 0000:00: root bus resource [io  0x1000-0xeffff]
[    2.780634] PCI: bus0: Fast back to back transfers disabled
[    2.786184] pci 0000:00:02.0: bridge configuration invalid ([bus 00-00]), reconfiguring
[    2.794167] pci 0000:00:03.0: bridge configuration invalid ([bus 00-00]), reconfiguring
[    2.802145] pci 0000:00:04.0: bridge configuration invalid ([bus 00-00]), reconfiguring
[    2.810478] pci 0000:00:02.0: ASPM: current common clock configuration is broken, reconfiguring
[    2.848460] PCI: bus1: Fast back to back transfers disabled
[    2.854774] PCI: bus2: Fast back to back transfers enabled
[    2.861006] PCI: bus3: Fast back to back transfers enabled
[    2.866494] pci 0000:00:02.0: BAR 14: assigned [mem 0xe0000000-0xe00fffff]
[    2.873345] pci 0000:00:02.0: BAR 13: assigned [io  0x10000-0x10fff]
[    2.879673] pci 0000:00:02.0: BAR 6: assigned [mem 0xe0100000-0xe01007ff pref]
[    2.886862] pci 0000:00:03.0: BAR 6: assigned [mem 0xe0200000-0xe02007ff pref]
[    2.894054] pci 0000:00:04.0: BAR 6: assigned [mem 0xe0300000-0xe03007ff pref]
[    2.901249] pci 0000:01:00.0: BAR 6: assigned [mem 0xe0000000-0xe000ffff pref]
[    2.908441] pci 0000:01:00.0: BAR 5: assigned [mem 0xe0010000-0xe00107ff]
[    2.915197] pci 0000:01:00.0: BAR 4: assigned [io  0x10000-0x1001f]
[    2.921440] pci 0000:01:00.0: BAR 0: assigned [io  0x10020-0x10027]
[    2.927677] pci 0000:01:00.0: BAR 2: assigned [io  0x10028-0x1002f]
[    2.933919] pci 0000:01:00.0: BAR 1: assigned [io  0x10030-0x10033]
[    2.940161] pci 0000:01:00.0: BAR 3: assigned [io  0x10034-0x10037]
[    2.946399] pci 0000:00:02.0: PCI bridge to [bus 01]
[    2.951343] pci 0000:00:02.0:   bridge window [io  0x10000-0x10fff]
[    2.957580] pci 0000:00:02.0:   bridge window [mem 0xe0000000-0xe00fffff]
[    2.964341] pci 0000:00:03.0: PCI bridge to [bus 02]
[    2.969287] pci 0000:00:04.0: PCI bridge to [bus 03]
[    2.974275] pcieport 0000:00:02.0: enabling device (0140 -> 0143)
[    2.980829] mv_xor f1060800.xor: Marvell shared XOR driver
[    3.048098] mv_xor f1060800.xor: Marvell XOR (Descriptor Mode): ( xor cpy intr )
[    3.056393] mv_xor f1060900.xor: Marvell shared XOR driver
[    3.118097] mv_xor f1060900.xor: Marvell XOR (Descriptor Mode): ( xor cpy intr )
[    3.162152] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
[    3.169735] printk: console [ttyS0] disabled
[    3.194055] f1012000.serial: ttyS0 at MMIO 0xf1012000 (irq = 22, base_baud = 12500000) is a 16550A
[    3.203020] printk: console [ttyS0] enabled
[    3.203020] printk: console [ttyS0] enabled
[    3.211429] printk: bootconsole [earlycon0] disabled
[    3.211429] printk: bootconsole [earlycon0] disabled
[    3.242070] f1012100.serial: ttyS1 at MMIO 0xf1012100 (irq = 23, base_baud = 12500000) is a 16550A
[    3.262101] ahci 0000:01:00.0: AHCI 0001.0000 32 slots 4 ports 6 Gbps 0xf impl SATA mode
[    3.270243] ahci 0000:01:00.0: flags: 64bit ncq sntf led only pmp fbs pio slum part sxs
[    3.279543] scsi host0: ahci
[    3.282719] scsi host1: ahci
[    3.285856] scsi host2: ahci
[    3.289015] scsi host3: ahci
[    3.292094] ata1: SATA max UDMA/133 abar m2048@0xe0010000 port 0xe0010100 irq 48
[    3.299536] ata2: SATA max UDMA/133 abar m2048@0xe0010000 port 0xe0010180 irq 48
[    3.306965] ata3: SATA max UDMA/133 abar m2048@0xe0010000 port 0xe0010200 irq 48
[    3.314398] ata4: SATA max UDMA/133 abar m2048@0xe0010000 port 0xe0010280 irq 48
[    3.323105] m25p80 spi0.0: found n25q064, expected mx25l6405d
[    3.329011] m25p80 spi0.0: n25q064 (8192 Kbytes)
[    3.333655] 4 cmdlinepart partitions found on MTD device spi0.0
[    3.339606] Creating 4 MTD partitions on "spi0.0":
[    3.344419] 0x000000000000-0x0000000e0000 : "u-boot"
[    3.349951] 0x0000000e0000-0x0000000f0000 : "dtb"
[    3.355151] 0x0000000f0000-0x0000007e0000 : "kernel"
[    3.360616] 0x0000007e0000-0x000000800000 : "env"
[    3.366469] libphy: Fixed MDIO Bus: probed
[    3.370991] libphy: orion_mdio_bus: probed
[    3.375905] mvneta_bm f10c8000.bm: Buffer Manager for network controller enabled
[    3.384511] mvneta f1070000.ethernet eth0: Using random mac address 6e:ac:5c:e0:b6:90
[    3.392593] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    3.399170] ehci-pci: EHCI PCI platform driver
[    3.403664] ehci-orion: EHCI orion driver
[    3.408142] usbcore: registered new interface driver usblp
[    3.413675] usbcore: registered new interface driver usb-storage
[    3.419875] mousedev: PS/2 mouse device common for all mice
[    3.426101] armada38x-rtc f10a3800.rtc: registered as rtc0
[    3.431782] i2c /dev entries driver
[    3.460484] gpio-fan gpio-fan: GPIO fan initialized
[    3.466945] orion_wdt: Initial timeout 171 sec
[    3.483474] marvell-cesa f1090000.crypto: CESA device successfully registered
[    3.490789] hidraw: raw HID events driver (C) Jiri Kosina
[    3.496363] usbcore: registered new interface driver usbhid
[    3.501971] usbhid: USB HID core driver
[    3.506011] drop_monitor: Initializing network drop monitor service
[    3.512533] NET: Registered protocol family 10
[    3.517448] Segment Routing with IPv6
[    3.521212] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver
[    3.527719] NET: Registered protocol family 17
[    3.532266] 8021q: 802.1Q VLAN Support v1.8
[    3.536489] Key type dns_resolver registered
[    3.540867] ThumbEE CPU extension supported.
[    3.545159] Registering SWP/SWPB emulation handler
[    3.550259] registered taskstats version 1
[    3.554374] Loading compiled-in X.509 certificates
[    3.559230] zswap: loaded using pool lzo/zbud
[    3.564441] Key type big_key registered
[    3.568591] Key type encrypted registered
[    3.574162] v5.0-sata0: supplied by pwr_en_sata0
[    3.578846] v12.0-sata0: supplied by pwr_en_sata0
[    3.583971] ahci-mvebu f10a8000.sata: masking port_map 0x3 -> 0x1
[    3.590134] ahci-mvebu f10a8000.sata: AHCI 0001.0000 32 slots 2 ports 6 Gbps 0x1 impl platform mode
[    3.599229] ahci-mvebu f10a8000.sata: flags: 64bit ncq sntf led only pmp fbs pio slum part sxs
[    3.608465] scsi host4: ahci-mvebu
[    3.612130] scsi host5: ahci-mvebu
[    3.615671] ata5: SATA max UDMA/133 mmio [mem 0xf10a8000-0xf10a9fff] port 0x100 irq 41
[    3.623638] ata6: DUMMY
[    3.626305] xhci-hcd f10f0000.usb3: xHCI Host Controller
[    3.631684] xhci-hcd f10f0000.usb3: new USB bus registered, assigned bus number 1
[    3.639264] xhci-hcd f10f0000.usb3: hcc params 0x0a000990 hci version 0x100 quirks 0x0000000000010010
[    3.648553] xhci-hcd f10f0000.usb3: irq 42, io mem 0xf10f0000
[    3.649017] ata1: SATA link down (SStatus 0 SControl 300)
[    3.654483] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.01
[    3.659819] ata2: SATA link down (SStatus 0 SControl 300)
[    3.668077] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    3.668080] usb usb1: Product: xHCI Host Controller
[    3.668083] usb usb1: Manufacturer: Linux 5.1.2-rj xhci-hcd
[    3.668085] usb usb1: SerialNumber: f10f0000.usb3
[    3.673576] ata3: SATA link down (SStatus 0 SControl 300)
[    3.701512] ata4: SATA link down (SStatus 0 SControl 300)
[    3.701649] hub 1-0:1.0: USB hub found
[    3.710726] hub 1-0:1.0: 1 port detected
[    3.714814] xhci-hcd f10f0000.usb3: xHCI Host Controller
[    3.720167] xhci-hcd f10f0000.usb3: new USB bus registered, assigned bus number 2
[    3.727697] xhci-hcd f10f0000.usb3: Host supports USB 3.0  SuperSpeed
[    3.734207] usb usb2: We don't know the algorithms for LPM for this host, disabling LPM.
[    3.742395] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003, bcdDevice= 5.01
[    3.750703] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    3.757962] usb usb2: Product: xHCI Host Controller
[    3.762860] usb usb2: Manufacturer: Linux 5.1.2-rj xhci-hcd
[    3.768460] usb usb2: SerialNumber: f10f0000.usb3
[    3.773387] hub 2-0:1.0: USB hub found
[    3.777165] hub 2-0:1.0: 1 port detected
[    3.781417] xhci-hcd f10f8000.usb3: xHCI Host Controller
[    3.786761] xhci-hcd f10f8000.usb3: new USB bus registered, assigned bus number 3
[    3.794341] xhci-hcd f10f8000.usb3: hcc params 0x0a000990 hci version 0x100 quirks 0x0000000000010010
[    3.803632] xhci-hcd f10f8000.usb3: irq 43, io mem 0xf10f8000
[    3.809556] usb usb3: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.01
[    3.817872] usb usb3: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    3.825126] usb usb3: Product: xHCI Host Controller
[    3.830030] usb usb3: Manufacturer: Linux 5.1.2-rj xhci-hcd
[    3.835626] usb usb3: SerialNumber: f10f8000.usb3
[    3.840565] hub 3-0:1.0: USB hub found
[    3.844344] hub 3-0:1.0: 1 port detected
[    3.848429] xhci-hcd f10f8000.usb3: xHCI Host Controller
[    3.853771] xhci-hcd f10f8000.usb3: new USB bus registered, assigned bus number 4
[    3.861304] xhci-hcd f10f8000.usb3: Host supports USB 3.0  SuperSpeed
[    3.867807] usb usb4: We don't know the algorithms for LPM for this host, disabling LPM.
[    3.875983] usb usb4: New USB device found, idVendor=1d6b, idProduct=0003, bcdDevice= 5.01
[    3.884293] usb usb4: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    3.891552] usb usb4: Product: xHCI Host Controller
[    3.896450] usb usb4: Manufacturer: Linux 5.1.2-rj xhci-hcd
[    3.902051] usb usb4: SerialNumber: f10f8000.usb3
[    3.906969] hub 4-0:1.0: USB hub found
[    3.910757] hub 4-0:1.0: 1 port detected
[    3.915198] armada38x-rtc f10a3800.rtc: setting system clock to 2019-05-21T10:04:06 UTC (1558433046)
[    3.924627] v5.0-sata1: supplied by pwr_en_sata1
[    3.929310] v12.0-sata0: supplied by pwr_en_sata1
[    3.934072] v12.0-sata0: disabling
[    3.937489] v5.0-sata1: disabling
[    3.940835] v12.0-sata0: disabling
[    3.944549] Waiting 20 sec before mounting root device...
[    4.117815] ata5: SATA link up 6.0 Gbps (SStatus 133 SControl 300)
[    4.124769] ata5.00: ATA-9: ST2000VN004-2E4164, SC60, max UDMA/133
[    4.130987] ata5.00: 3907029168 sectors, multi 0: LBA48 NCQ (depth 32)
[    4.138527] ata5.00: configured for UDMA/133
[    4.153088] scsi 4:0:0:0: Direct-Access     ATA      ST2000VN004-2E41 SC60 PQ: 0 ANSI: 5
[    4.161672] sd 4:0:0:0: [sda] 3907029168 512-byte logical blocks: (2.00 TB/1.82 TiB)
[    4.169692] sd 4:0:0:0: [sda] 4096-byte physical blocks
[    4.174969] sd 4:0:0:0: [sda] Write Protect is off
[    4.179832] sd 4:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[    4.263537]  sda: sda1
[    4.266525] sd 4:0:0:0: [sda] Attached SCSI removable disk
[   24.177789] md: Waiting for all devices to be available before autodetect
[   24.184607] md: If you don't use raid, use raid=noautodetect
[   24.190706] md: Autodetecting RAID arrays.
[   24.194821] md: autorun ...
[   24.197624] md: ... autorun DONE.
[   24.261443] random: fast init done
[   24.509261] EXT4-fs (sda1): mounted filesystem with ordered data mode. Opts: (null)
[   24.516989] VFS: Mounted root (ext4 filesystem) readonly on device 8:1.
[   24.570161] devtmpfs: mounted
[   24.574409] Freeing unused kernel memory: 1024K
[   24.579258] Checked W+X mappings: passed, no W+X pages found
[   24.584943] Run /sbin/init as init process
INIT: version 2.93 booting
[info] Using makefile-style concurrent boot in runlevel S.
ERROR: could not open /proc/stat: No such file or directory
findfs: unable to resolve 'LABEL=rootfs'
[warn] Files under mount point '/run' will be hidden. ... (warning).
[ ok ] Starting hotplug events dispatcher: systemd-udevd.
[ ok ] Synthesizing the initial hotplug events (subsystems)...done.
[ ok ] Synthesizing the initial hotplug events (devices)...done.
[....] Waiting for /dev to be fully populated...[   26.706218] systemd-udevd[1715]: Using default interface naming scheme 'v240'.
[   26.719484] systemd-udevd[1715]: link_config: autonegotiation is unset or enabled, the speed and duplex are not writable.
[   26.733541] systemd-udevd[1715]: Could not generate persistent MAC address for eth0: No such file or directory
[   26.758303] sd 4:0:0:0: Attached scsi generic sg0 type 0
[   26.818305] systemd-udevd[1703]: link_config: autonegotiation is unset or enabled, the speed and duplex are not writable.
[   26.818401] systemd-udevd[1708]: link_config: autonegotiation is unset or enabled, the speed and duplex are not writable.
[   26.830344] systemd-udevd[1705]: link_config: autonegotiation is unset or enabled, the speed and duplex are not writable.
[   26.852648] systemd-udevd[1703]: Could not generate persistent MAC address for ip6tnl0: No such file or directory
done.
[ ok ] Setting hostname to 'debian'...done.
[ ok ] Activating swap:.
[   28.056542] EXT4-fs (sda1): re-mounted. Opts: (null)
[....] Will now check root file system:fsck from util-linux 2.33.1
[/sbin/fsck.ext4 (1) -- /] fsck.ext4 -y -C0 /dev/sda1
e2fsck 1.44.5 (15-Dec-2018)
rootfs: clean, 44766/122093568 files, 8160840/488347392 blocks
. ok
[   30.231853] EXT4-fs (sda1): re-mounted. Opts: errors=remount-ro
[info] Will now check all file systems.
fsck from util-linux 2.33.1
Checking all file systems.
LABEL=rootfs is mounted
[ ok ] Done checking file systems. A log is being saved in /var/log/fsck/checkfs if that location is writable..
[ ok ] Cleaning up temporary files...[....] Cleaning /tmp...done.
[ ok .
[ ok ] Will now mount local filesystems:.
[ ok ] Will now activate swapfile swap:done.
[ ok ] Checking minimum space in /tmp...done.
[ ok ] Cleaning up temporary files....
[ ok ] Starting Setting kernel variables: sysctl.
[....] Initializing random number generator...[   31.266159] random: dd: uninitialized urandom read (512 bytes read)
done.
[....] Configuring network interfaces...Internet Systems Consortium DHCP Client 4.4.1
Copyright 2004-2018 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/

[   31.631652] mvneta f1070000.ethernet eth0: PHY [f1072004.mdio-mii:01] driver [Marvell 88E1510]
[   31.640560] mvneta f1070000.ethernet eth0: configuring for phy/sgmii link mode
Listening on LPF/eth0/6e:ac:5c:e0:b6:90
Sending on   LPF/eth0/6e:ac:5c:e0:b6:90
Sending on   Socket/fallback
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 6
[   35.778024] mvneta f1070000.ethernet eth0: Link is Up - 1Gbps/Full - flow control off
[   35.785905] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 9
DHCPOFFER of 192.168.1.243 from 192.168.1.2
DHCPREQUEST for 192.168.1.243 on eth0 to 255.255.255.255 port 67
DHCPACK of 192.168.1.243 from 192.168.1.2
[   41.190854] random: mktemp: uninitialized urandom read (6 bytes read)
invoke-rc.d: could not determine current runlevel
[   41.296476] random: crng init done
bound to 192.168.1.243 -- renewal in 1351 seconds.
done.
[ ok ] Cleaning up temporary files....
INIT: Entering runlevel: 2
[info] Using makefile-style concurrent boot in runlevel 2.
[ ok ] Starting periodic command scheduler: cron.
[ ok ] Starting system message bus: dbus.
[ ok ] Starting fan speed regulator: fancontrol.
[ ok ] Starting MD monitoring service: mdadm --monitor.
[ ok ] Starting NTP server: ntpd.
[ ok ] Starting OpenBSD Secure Shell server: sshd.
[ ok ] Running local boot scripts (/etc/rc.local).

Debian GNU/Linux 10 debian ttyS0

debian login:
Re: Debian on Synology RS816 (Armada 385)
May 21, 2019 05:18AM
@bodhi
Just a small point for the how to. At various stages of the process there is an assumption that a good set of environments are set, for example the last set of commands assumes the bootargs line is saved. Maybe simplest solution is get users to saveenv before they start any of the how to steps which would prevent a situation where up to that point they (like I used to) enter the setenv's every time whilst they are experimenting, this would prevent an unintentional boot into stock the pain of which is still fresh in my mind.

EDIT
Get rid of some awful typos



Edited 1 time(s). Last edit at 05/21/2019 05:19AM by richjn.
Re: Debian on Synology RS816 (Armada 385)
May 21, 2019 05:29AM
Richard,

> Looking good!

> Marvell>> boot
> Booting Debian ...
> SF: Detected N25Q64 with page size 64 KiB, total 8
> MiB
> loading zImage from flash ...
> loading DTB from flash ...
> ## Flattened Device Tree blob at 01000000
> Booting using the fdt blob at 0x01000000
> Loading Device Tree to 00ff8000, end 00fff758
> ... OK
>


> Skipping Device Tree update ('fdt_skip_update'
> = yes)
>
> Limit DDR size at 3GB due to power of 2
> requirement of Address decoding
>
> Starting kernel ...
>
> Uncompressing Linux... done, booting the kernel.
> [ 0.000000] Booting Linux on physical CPU 0x0
> [ 0.000000] Linux version 5.1.2-rj
> (root@debian) (gcc version 8.3.0 (Debian 8.3.0-6))
> #1 SMP PREEMPT Sun May 19 12:13:42 AWST 2019
> [ 0.000000] CPU: ARMv7 Processor [414fc091]
> revision 1 (ARMv7), cr=10c5387d
> [ 0.000000] CPU: PIPT / VIPT nonaliasing data
> cache, VIPT aliasing instruction cache
> [ 0.000000] OF: fdt: Machine model: Synology
> RS116

> debian login:

Indeed, everything looks great!

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: Debian on Synology RS816 (Armada 385)
May 21, 2019 05:35AM
@bodhi
Just wanted to say a big Thank You for all the effort you have put into this and for producing a great SPI flash guide, I know for myself its one thing being able to do something and quite another to write a guide under which your average users isn't going to fall down a hole. To do this "blind" without the hardware in front of you makes the achievement all the more noteworthy.

Many Thanks again
Re: Debian on Synology RS816 (Armada 385)
May 21, 2019 05:41AM
Richard,


> Maybe simplest solution is get users to
> saveenv before they start any of the how to steps
> which would prevent a situation where up to that
> point they (like I used to) enter the setenv's
> every time whilst they are experimenting,

That's exactly the intend. We have been tool-proofing the procedure so saveenv is never used until... like right now :)

The best installation procedure is from inside stock OS perspective. So the envs are saved each time you do a fw_setenv. When you start writing the installation procedure, you could boot back to stock and pretend you have not done anything, and restart the steps from there. The Debian rootfs step can be abbreviated when I release the Buster version. We just need the flashing or the HDD writing procedure to install the kernel files.

Now that the flash procedure is done. Let's take a breather (a glass of shiraz would be appropriate :) and worry about the HDD loading tomorrow!

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: Debian on Synology RS816 (Armada 385)
May 21, 2019 05:45AM
@bodhi

Quote

so saveenv is never used until... like right now :)

Already had :)

Quote

Let's take a breather (a glass of shiraz would be appropriate :) and worry about the HDD loading tomorrow!

You've got my vote, tomorrow it is.
Re: Debian on Synology RS816 (Armada 385)
May 21, 2019 05:49AM
Richard,

> Just wanted to say a big Thank You for all the
> effort you have put into this and for producing a
> great SPI flash guide, I know for myself its one
> thing being able to do something and quite another
> to write a guide under which your average users
> isn't going to fall down a hole. To do this
> "blind" without the hardware in front of you makes
> the achievement all the more noteworthy.

You're welcome! having you as a very good collaborator making it a lot easier :) This has been an enjoyable hacking session! (in my book, similar to the hacking session for Thecus N2350 with lordzahl)

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: Debian on Synology RS816 (Armada 385)
May 21, 2019 05:03PM
@bodhi & @jdwl101
Raw sector HDD load

A little bit closer;
I'm not sure if true but I read you can just cat the DTB into uInitrd so to simplify things I am trying it out.

From Debian
root@debian:~# cat armada-385-synology-rs816-v12.dtb >> uInitrd

root@debian:~# dd if=zImage of=/dev/sda bs=1M seek=10
4+1 records in
4+1 records out
4841504 bytes (4.8 MB, 4.6 MiB) copied, 0.0582581 s, 83.1 MB/s

root@debian:~# dd if=uInitrd of=/dev/sda bs=1M seek=20
9+1 records in
9+1 records out
9897071 bytes (9.9 MB, 9.4 MiB) copied, 0.0764092 s, 130 MB/s

It appears we don't need to do memory pokes to power the drives scsi init was enough (no hot plugging either)

From u-boot
Press Ctrl+C to abort autoboot in 3 second
Marvell>> <INTERRUPT>

Marvell>> scsi init
AHCI init for unit0
Target spinup took 0 ms.
SATA link 1 timeout.

SATA link 0 timeout.
SATA link 1 timeout.
SATA link 2 timeout.
SATA link 3 timeout.
AHCI 0001.0000 32 slots 4 ports 6 Gbps 0xf impl SATA mode
flags: 64bit ncq led only pmp fbss pio slum part sxs
scanning bus for devices...
  Device 0: (0:0) Vendor: ATA Prod.: ST2000VN004-2E41 Rev: SC60
            Type: Hard Disk
            Capacity: 1907729.0 MB = 1863.0 GB (3907029168 x 512)
Found 1 device(s).

Marvell>> scsi device 0

SCSI device 0:
    Device 0: (0:0) Vendor: ATA Prod.: ST2000VN004-2E41 Rev: SC60
            Type: Hard Disk
            Capacity: 1907729.0 MB = 1863.0 GB (3907029168 x 512)
... is now current device

Load images
Marvell>> scsi read 0x40000 0x5000 0x2F00

SCSI read: device 0 block # 20480, count 12032 ... 12032 blocks read: OK

Marvell>> scsi read 0x2100000 0xA000 0x4F00

SCSI read: device 0 block # 40960, count 20224 ... 20224 blocks read: OK

Check images
Marvell>> imi 0x2100000

## Checking Image at 02100000 ...
   Legacy image found
   Image Name:   initramfs-5.1.2-rj
   Created:      2019-05-19   6:32:55 UTC
   Image Type:   ARM Linux RAMDisk Image (gzip compressed)
   Data Size:    9878742 Bytes = 9.4 MiB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK

Marvell>> imi

## Checking Image at 02000000 ...
Unknown image format!

Try to boot even though zImage returns unknown format
Marvell>> bootm
Wrong Image Format for bootm command
ERROR: can't get kernel image!

Looks like we have uInitrd loaded ok
I can just keep guessing addresses for zImage but I thought I'd ask for a pointer

EDIT
Just a thought do we need to use uImage rather than zImage in this scenario ?

EDIT 2
A bit more reading and apparently for bootm I need uImage but can use zImage with bootz

I tried to create a uImage from Debian boot directory (I have no build directory on this test HDD)

mkimage -A arm -O linux -T kernel -C none -a 0x00000000 -e 0x00000000 -n "kernel-5.1.2-rj" -d zImage uImage

Then
dd if=uImage of=/dev/sda bs=1M seek=10

From u-boot
Marvell>> scsi init
AHCI init for unit0
Target spinup took 0 ms.
SATA link 1 timeout.

SATA link 0 timeout.
SATA link 1 timeout.
SATA link 2 timeout.
SATA link 3 timeout.
AHCI 0001.0000 32 slots 4 ports 6 Gbps 0xf impl SATA mode
flags: 64bit ncq led only pmp fbss pio slum part sxs
scanning bus for devices...
  Device 0: (0:0) Vendor: ATA Prod.: ST2000VN004-2E41 Rev: SC60
            Type: Hard Disk
            Capacity: 1907729.0 MB = 1863.0 GB (3907029168 x 512)
Found 1 device(s).
Marvell>> scsi device 0

SCSI device 0:
    Device 0: (0:0) Vendor: ATA Prod.: ST2000VN004-2E41 Rev: SC60
            Type: Hard Disk
            Capacity: 1907729.0 MB = 1863.0 GB (3907029168 x 512)
... is now current device
Marvell>> scsi read 0x40000 0x5000 0x2F00

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

SCSI read: device 0 block # 40960, count 20224 ... 20224 blocks read: OK
Marvell>> imi

## Checking Image at 02000000 ...
Unknown image format!

So no change in outcome do I need to build uImage in the build directory ?



Edited 3 time(s). Last edit at 05/21/2019 06:23PM by richjn.
Re: Debian on Synology RS816 (Armada 385)
May 21, 2019 06:38PM
Richard,

> So no change in outcome do I need to build uImage
> in the build directory ?

No need to.

In this booting scheme, we just want to load all 3 files(zImage, uInitrd, DTB) from HDD into memory, and then boot. So bootz should be used.

Try that and if we need to go to bootm approach then I'll post the commands (it should be done differently than what you did above).

Don't use imi, except for uInitrd.

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



Edited 1 time(s). Last edit at 05/21/2019 06:39PM by bodhi.
Re: Debian on Synology RS816 (Armada 385)
May 21, 2019 06:40PM
Note: the imi command only works with uInitrd or uImage.

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: Debian on Synology RS816 (Armada 385)
May 21, 2019 06:47PM
Richard,

You should use the images that we prepare for flashing to SPI. And write them to HDD raw sector. It is better to use the images.

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: Debian on Synology RS816 (Armada 385)
May 21, 2019 07:12PM
@bodhi
I will use the SPI images as you suggest but to make sure I understand you correctly you mean the ones ending *.kwb ?

I was going to pull the DTB from tftp to keep my life simpler for now, remember I have no idea how to work out the scsi read addresses.

Whilst I dd the images can you cast an eye over the env's I was going to pass.
scsi init
setenv ipaddr 192.168.1.250
setenv serverip 192.168.1.2
setenv load_dtb_addr 0x1000000
setenv load_initrd_addr 0x3000000
setenv load_image_addr 0x02000000
setenv load_image 'echo loading zImage from raw HDD ...; scsi device 0; scsi read 0x40000 0x5000 0x2F00 $load_image_addr'
setenv load_initrd 'echo loading uInitrd from raw HDD ...; scsi device 0; scsi read 0x2100000 0xA000 0x4F00 $load_initrd_addr'
setenv load_dtb 'echo loading DTB from tftpserver ...; tftpboot $load_dtb_addr armada-385-synology-rs816-v12.dtb'
setenv set_bootargs 'setenv bootargs "console=ttyS0,115200 root=/dev/sda1 rootdelay=20 $mtdparts earlyprintk=serial"'
setenv bootcmd_exec 'echo Booting Debian . . .; run set_bootargs; setenv fdt_skip_update yes; setenv initrd_high 0xffffffff; run load_image; run load_initrd; run load_dtb; bootz $load_image_addr $load_initrd_addr $load_dtb_addr'
setenv bootcmd 'run bootcmd_exec; run bootspi'
Re: Debian on Synology RS816 (Armada 385)
May 21, 2019 07:32PM
@bodhi
Quote

Note: the imi command only works with uInitrd or uImage.

My second run was against uImage which returned "unknown image format" which is why I asked if it needed to be built in the build directory. You have already said it doesn't which makes me question if the address I am trying to read is wrong ? If the adress is incorrect for imi to recognize it then it probably won't load under bootz either even though we are pulling zImage in that scenario.

EDIT
Or I used the wrong command to create uImage ?
mkimage -A arm -O linux -T kernel -C none -a 0x00000000 -e 0x00000000 -n "kernel-5.1.2-rj" -d zImage uImage



Edited 1 time(s). Last edit at 05/21/2019 07:36PM by richjn.
Re: Debian on Synology RS816 (Armada 385)
May 21, 2019 08:15PM
@bodhi
Based on the 'Usage' of scsi command output it doesn't like the way I'm presenting the commands although the commands themselves work fine from MARVEL>>

Failure on zImage magic but I don't think it even loaded it
Marvell>> scsi init
AHCI init for unit0
Target spinup took 0 ms.
SATA link 1 timeout.

SATA link 0 timeout.
SATA link 1 timeout.
SATA link 2 timeout.
SATA link 3 timeout.
AHCI 0001.0000 32 slots 4 ports 6 Gbps 0xf impl SATA mode
flags: 64bit ncq led only pmp fbss pio slum part sxs
scanning bus for devices...
  Device 0: (0:0) Vendor: ATA Prod.: ST2000VN004-2E41 Rev: SC60
            Type: Hard Disk
            Capacity: 1907729.0 MB = 1863.0 GB (3907029168 x 512)
Found 1 device(s).
Marvell>> setenv ipaddr 192.168.1.250
Marvell>> setenv serverip 192.168.1.2
Marvell>> setenv load_dtb_addr 0x1000000
Marvell>> setenv load_initrd_addr 0x3000000
Marvell>> setenv load_image_addr 0x02000000
Marvell>> setenv load_image 'echo loading zImage from raw HDD ...; scsi device 0; scsi read 0x40000 0x5000 0x2F00 $load_image_addr'
Marvell>> setenv load_initrd 'echo loading uInitrd from raw HDD ...; scsi device 0; scsi read 0x2100000 0xA000 0x4F00 $load_initrd_addr'
Marvell>> setenv load_dtb 'echo loading DTB from tftpserver ...; tftpboot $load_dtb_addr armada-385-synology-rs816-v12.dtb'
Marvell>> setenv set_bootargs 'setenv bootargs "console=ttyS0,115200 root=/dev/sda1 rootdelay=20 $mtdparts earlyprintk=serial"'
Marvell>> setenv bootcmd_exec 'echo Booting Debian . . .; run set_bootargs; setenv fdt_skip_update yes; setenv initrd_high 0xffffffff; run load_image; run load_initrd; run load_dtb; bootz $load_image_addr $load_initrd_addr $load_dtb_addr'
Marvell>> setenv bootcmd 'run bootcmd_exec; run bootspi'
Marvell>> boot
Booting Debian . . .
loading zImage from raw HDD ...

SCSI device 0:
    Device 0: (0:0) Vendor: ATA Prod.: ST2000VN004-2E41 Rev: SC60
            Type: Hard Disk
            Capacity: 1907729.0 MB = 1863.0 GB (3907029168 x 512)
... is now current device
scsi - SCSI sub-system

Usage:
scsi reset - reset SCSI controller
scsi info  - show available SCSI devices
scsi scan  - (re-)scan SCSI bus
scsi device [dev] - show or set current device
scsi part [dev] - print partition table of one or all SCSI devices
scsi read addr blk# cnt - read `cnt' blocks starting at block `blk#'
     to memory address `addr'
scsi write addr blk# cnt - write `cnt' blocks starting at block
     `blk#' from memory address `addr'
loading uInitrd from raw HDD ...

SCSI device 0:
    Device 0: (0:0) Vendor: ATA Prod.: ST2000VN004-2E41 Rev: SC60
            Type: Hard Disk
            Capacity: 1907729.0 MB = 1863.0 GB (3907029168 x 512)
... is now current device
scsi - SCSI sub-system

Usage:
scsi reset - reset SCSI controller
scsi info  - show available SCSI devices
scsi scan  - (re-)scan SCSI bus
scsi device [dev] - show or set current device
scsi part [dev] - print partition table of one or all SCSI devices
scsi read addr blk# cnt - read `cnt' blocks starting at block `blk#'
     to memory address `addr'
scsi write addr blk# cnt - write `cnt' blocks starting at block
     `blk#' from memory address `addr'
loading DTB from tftpserver ...
Using egiga0 device
TFTP from server 192.168.1.2; our IP address is 192.168.1.250
Filename 'armada-385-synology-rs816-v12.dtb'.
Load address: 0x1000000
Loading: ##
         712.9 KiB/s
done
Bytes transferred = 18265 (4759 hex)
Bad Linux ARM zImage magic!
SF: Detected N25Q64 with page size 64 KiB, total 8 MiB
Re: Debian on Synology RS816 (Armada 385)
May 21, 2019 09:04PM
@bodhi
Realized I was defining the memory address twice, one in the scsi read arguments and then again in the $load arguments.

Trying again and now its just hung at
SCSI read: device 0 block # 20480, count 33554432 ...

EDIT
The above whilst trying to load zImage



Edited 1 time(s). Last edit at 05/21/2019 09:14PM by richjn.
Re: Debian on Synology RS816 (Armada 385)
May 21, 2019 09:23PM
Richard,

Quote

I will use the SPI images as you suggest but to make sure I understand you correctly you mean the ones ending *.kwb ?

Yes

rs816.zImage.mtd2.kwb and uInitrd. Or just rs816.zImage.mtd2.kwb for now.

Quote

Bad Linux ARM zImage magic!

Ah! OK. Store the zImage as is then! dont use the rs816.zImage.mtd2.kwb.

So you need to look at the size of this zImage.

It is best that you post:

- The command to store zImage on HDD.
- And then the serial bootlog

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: Debian on Synology RS816 (Armada 385)
May 21, 2019 09:49PM
@bodhi

Store zImage & uInitrd
root@debian:~# cd /boot
root@debian:/boot# ls -lh zImage
-rwxr-xr-x 1 root root 4.7M May 19 14:08 zImage
root@debian:/boot# ls -lh uInitrd
-rw-r--r-- 1 root root 9.5M May 19 14:32 uInitrd
root@debian:/boot# dd if=zImage of=/dev/sda bs=1M seek=10
4+1 records in
4+1 records out
4841504 bytes (4.8 MB, 4.6 MiB) copied, 0.1255 s, 38.6 MB/s
root@debian:/boot# dd if=uInitrd of=/dev/sda bs=1M seek=20
9+1 records in
9+1 records out
9878806 bytes (9.9 MB, 9.4 MiB) copied, 0.125786 s, 78.5 MB/s

Then boot with my probably crap raw hdd env
Marvell>> <INTERRUPT>
Marvell>> scsi init
AHCI init for unit0
Target spinup took 0 ms.
SATA link 1 timeout.

SATA link 0 timeout.
SATA link 1 timeout.
SATA link 2 timeout.
SATA link 3 timeout.
AHCI 0001.0000 32 slots 4 ports 6 Gbps 0xf impl SATA mode
flags: 64bit ncq led only pmp fbss pio slum part sxs
scanning bus for devices...
  Device 0: (0:0) Vendor: ATA Prod.: ST2000VN004-2E41 Rev: SC60
            Type: Hard Disk
            Capacity: 1907729.0 MB = 1863.0 GB (3907029168 x 512)
Found 1 device(s).
Marvell>> setenv ipaddr 192.168.1.250
Marvell>> setenv serverip 192.168.1.2
Marvell>> setenv load_dtb_addr 0x1000000
Marvell>> setenv load_initrd_addr 0x3000000
Marvell>> setenv load_image_addr 0x02000000
Marvell>> setenv load_image 'echo loading zImage from raw HDD ...; scsi device 0; scsi read 0x40000 0x5000 $load_image_addr'
Marvell>> setenv load_initrd 'echo loading uInitrd from raw HDD ...; scsi device 0; scsi read 0x2100000 0xA000 $load_initrd_addr'
Marvell>> setenv load_dtb 'echo loading DTB from tftpserver ...; tftpboot $load_dtb_addr armada-385-synology-rs816-v12.dtb'
Marvell>> setenv set_bootargs 'setenv bootargs "console=ttyS0,115200 root=/dev/sda1 rootdelay=20 $mtdparts earlyprintk=serial"'
Marvell>> setenv bootcmd_exec 'echo Booting Debian . . .; run set_bootargs; setenv fdt_skip_update yes; setenv initrd_high 0xffffffff; run load_image; run load_initrd; run load_dtb; bootz $load_image_addr $load_initrd_addr $load_dtb_addr'
Marvell>> setenv bootcmd 'run bootcmd_exec; run bootspi'
Marvell>> boot
Booting Debian . . .
loading zImage from raw HDD ...

SCSI device 0:
    Device 0: (0:0) Vendor: ATA Prod.: ST2000VN004-2E41 Rev: SC60
            Type: Hard Disk
            Capacity: 1907729.0 MB = 1863.0 GB (3907029168 x 512)
... is now current device

SCSI read: device 0 block # 20480, count 33554432 ...

Hangs here
Re: Debian on Synology RS816 (Armada 385)
May 21, 2019 10:13PM
Richard,

I think you did not follow J's example closely. It's proven to work for J and eine.


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


/kernels# dd if=uImage of=/dev/sdc bs=1MiB seek=10
3+1 records in
3+1 records out
4171272 bytes (4.2 MB, 4.0 MiB) copied, 3.1455 s, 1.3 MB/s
.....

Marvell>> setenv bootcmd 'ide device 1; ide read 0x40000 0x5000 0x2000; ide read 0x2100000 0xA000 0x4F00; bootm 0x40000 0x2100000'


zImage or uImage should not be really different store and load. So in our case,


Try
dd if=zImage of=/dev/sda bs=1MiB seek=10

Later load it:
setenv load_image 'echo loading zImage from raw HDD ...; scsi device 0; scsi read $load_image_addr 0x5000 0x2000

Note the 0x5000 is 10MB (which is where you wrote the zImage), and 0x2000 is block count. That block count could be different, depending on how big the zImage is and where uInitd begins (which we don't care right now).


Quote
u-boot help
scsi read addr blk# cnt - read `cnt' blocks starting at block `blk#'
to memory address `addr'

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: Debian on Synology RS816 (Armada 385)
May 21, 2019 10:45PM
@bodhi
I had always thought bs=*M was the same as bs=*MiB, my bad

Debian clear away previous images and rewrite zImage
root@debian:~# dd if=/dev/zero of=/dev/sda bs=1M seek=10 count=60
60+0 records in
60+0 records out
62914560 bytes (63 MB, 60 MiB) copied, 0.139173 s, 452 MB/s

root@debian:~# cd /boot

root@debian:/boot# dd if=zImage of=/dev/sda bs=1MiB seek=10
4+1 records in
4+1 records out
4841504 bytes (4.8 MB, 4.6 MiB) copied, 0.0806912 s, 60.0 MB/s

Quote

scsi read addr blk# cnt - read `cnt' blocks starting at block `blk#'
to memory address `addr'

I thought $load_image_addr needed to be the last parameter, I need another shiraz :)

Boot with uInitrd dropped and new zImage load
Marvell>> <INTERRUPT>
Marvell>> scsi init
AHCI init for unit0
Target spinup took 0 ms.
SATA link 1 timeout.

SATA link 0 timeout.
SATA link 1 timeout.
SATA link 2 timeout.
SATA link 3 timeout.
AHCI 0001.0000 32 slots 4 ports 6 Gbps 0xf impl SATA mode
flags: 64bit ncq led only pmp fbss pio slum part sxs
scanning bus for devices...
  Device 0: (0:0) Vendor: ATA Prod.: ST2000VN004-2E41 Rev: SC60
            Type: Hard Disk
            Capacity: 1907729.0 MB = 1863.0 GB (3907029168 x 512)
Found 1 device(s).
Marvell>> setenv ipaddr 192.168.1.250
Marvell>> setenv serverip 192.168.1.2
Marvell>> setenv load_dtb_addr 0x1000000
Marvell>> setenv load_image_addr 0x02000000
Marvell>> setenv load_image 'echo loading zImage from raw HDD ...; scsi device 0; scsi read $load_image_addr 0x5000 0x2000'
Marvell>> setenv load_dtb 'echo loading DTB from tftpserver ...; tftpboot $load_dtb_addr armada-385-synology-rs816-v12.dtb'
Marvell>> setenv set_bootargs 'setenv bootargs "console=ttyS0,115200 root=/dev/sda1 rootdelay=20 $mtdparts earlyprintk=serial"'
Marvell>> setenv bootcmd_exec 'echo Booting Debian . . .; run set_bootargs; setenv fdt_skip_update yes; setenv initrd_high 0xffffffff; run load_image; run load_dtb; bootz $load_image_addr $load_dtb_addr'
Marvell>> setenv bootcmd 'run bootcmd_exec; run bootspi'
Marvell>> boot
Booting Debian . . .
loading zImage from raw HDD ...

SCSI device 0:
    Device 0: (0:0) Vendor: ATA Prod.: ST2000VN004-2E41 Rev: SC60
            Type: Hard Disk
            Capacity: 1907729.0 MB = 1863.0 GB (3907029168 x 512)
... is now current device

SCSI read: device 0 block # 20480, count 8192 ... 8192 blocks read: OK
loading DTB from tftpserver ...
Using egiga0 device
TFTP from server 192.168.1.2; our IP address is 192.168.1.250
Filename 'armada-385-synology-rs816-v12.dtb'.
Load address: 0x1000000
Loading: ##
         556.6 KiB/s
done
Bytes transferred = 18265 (4759 hex)
Wrong Ramdisk Image Format
Ramdisk image is corrupt or invalid

Back to image format issue
Re: Debian on Synology RS816 (Armada 385)
May 21, 2019 11:08PM
Richard,

> I thought $load_image_addr needed to be the last
> parameter, I need another shiraz :)

:))

Let's use uImage. Does not matter which image format we use, really. As long as it can be loaded and executed. zImage is preferred, but is too picky with the magic number, and not worth spending time on it.


To generate uImage, you can do it on any Linux box (either x86 or ARM is OK, notice that the option is -A arm). But more convenient to do it on RS816, so assume you do it natively:

cd /boot
cp -a uImage uImage.bak     ### if there is one then we back it up
mkimage -A arm -O linux -T kernel -C none -a 0x00008000 -e 0x00008000 -n Linux-5.1.2-mvebu-tld-1 -d vmlinuz-5.1.2-mvebu-tld-1 uImage

So after you stored uImage to disk, the load command should load it to the same address as zImage before.

And the bootcmd_exec becomes (without loading uInitrd):

setenv bootcmd_exec 'echo Booting Debian . . .; run set_bootargs; setenv fdt_skip_update yes; setenv initrd_high 0xffffffff; run load_image; run load_dtb; bootm $load_image_addr - $load_dtb_addr''

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: Debian on Synology RS816 (Armada 385)
May 21, 2019 11:28PM
@bodhi

Debian Create uImage and copy it (truncated output sorry)
root@debian:~# cd /boot
00008000 -n Linux-5.1.2-rj -d vmlinuz-5.1.2-rj uImage-C none -a 0x00008000 -e 0x0
Image Name:   Linux-5.1.2-rj
Created:      Wed May 22 12:15:51 2019
Image Type:   ARM Linux Kernel Image (uncompressed)
Data Size:    4841504 Bytes = 4728.03 KiB = 4.62 MiB
Load Address: 00008000
Entry Point:  00008000
root@debian:/boot# dd if=uImage of=/dev/sda bs=1MiB seek=10
4+1 records in
4+1 records out
4841568 bytes (4.8 MB, 4.6 MiB) copied, 0.0191701 s, 253 MB/s

Boot with new bootcmd_exec (double ' ' removed)
Marvell>> <INTERRUPT>
Marvell>> scsi init
AHCI init for unit0
Target spinup took 0 ms.
SATA link 1 timeout.

SATA link 0 timeout.
SATA link 1 timeout.
SATA link 2 timeout.
SATA link 3 timeout.
AHCI 0001.0000 32 slots 4 ports 6 Gbps 0xf impl SATA mode
flags: 64bit ncq led only pmp fbss pio slum part sxs
scanning bus for devices...
  Device 0: (0:0) Vendor: ATA Prod.: ST2000VN004-2E41 Rev: SC60
            Type: Hard Disk
            Capacity: 1907729.0 MB = 1863.0 GB (3907029168 x 512)
Found 1 device(s).
Marvell>> setenv ipaddr 192.168.1.250
Marvell>> setenv serverip 192.168.1.2
Marvell>> setenv load_dtb_addr 0x1000000
Marvell>> setenv load_image_addr 0x02000000
Marvell>> setenv load_image 'echo loading zImage from raw HDD ...; scsi device 0; scsi read $load_image_addr 0x5000 0x2000'
Marvell>> setenv load_dtb 'echo loading DTB from tftpserver ...; tftpboot $load_dtb_addr armada-385-synology-rs816-v12.dtb'
Marvell>> setenv set_bootargs 'setenv bootargs "console=ttyS0,115200 root=/dev/sda1 rootdelay=20 $mtdparts earlyprintk=serial"'
Marvell>> setenv bootcmd_exec 'echo Booting Debian . . .; run set_bootargs; setenv fdt_skip_update yes; setenv initrd_high 0xffffffff; run load_image; run load_dtb; bootm $load_image_addr - $load_dtb_addr'
Marvell>> setenv bootcmd 'run bootcmd_exec; run bootspi'
Marvell>> boot
Booting Debian . . .
loading zImage from raw HDD ...

SCSI device 0:
    Device 0: (0:0) Vendor: ATA Prod.: ST2000VN004-2E41 Rev: SC60
            Type: Hard Disk
            Capacity: 1907729.0 MB = 1863.0 GB (3907029168 x 512)
... is now current device

SCSI read: device 0 block # 20480, count 8192 ... 8192 blocks read: OK
loading DTB from tftpserver ...
Using egiga0 device
TFTP from server 192.168.1.2; our IP address is 192.168.1.250
Filename 'armada-385-synology-rs816-v12.dtb'.
Load address: 0x1000000
Loading: ##
         1.1 MiB/s
done
Bytes transferred = 18265 (4759 hex)
## Booting kernel from Legacy Image at 02000000 ...
   Image Name:   Linux-5.1.2-rj
   Created:      2019-05-22   4:15:51 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    4841504 Bytes = 4.6 MiB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... Bad Data CRC
ERROR: can't get kernel image!
SF: Detected N25Q64 with page size 64 KiB, total 8 MiB
Wrong Image Format for bootm command
ERROR: can't get kernel image!
Marvell>>

EDIT
uImage create command as parted into console
mkimage -A arm -O linux -T kernel -C none -a 0x00008000 -e 0x00008000 -n Linux-5.1.2-rj -d vmlinuz-5.1.2-rj uImage

EDIT 2
Worth creating uImage from zImage ?



Edited 2 time(s). Last edit at 05/21/2019 11:41PM by richjn.
Author:

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: