RFC ARM: Kirkwood: Synology DT files
Get series with b4
b4 am [email protected]Versions newest first
- v1 RFC Latest0 of 2 patches 0 repliesNew
Patches in v1 No applies recorded yet
None of the 2 patches the cover letter announces are in this archive.
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.
Cover letter [PATCH RFC RFT 0/2] ARM: Kirkwood: Synology DT files
Quoted 73 lines · Andrew Lunn
Quoted 65 lines · Ben Peddell
Quoted 8 lines · Russell King - ARM Linux
Quoted 4 lines · Ben Peddell
It appears the initrd address in the devicetree structure (which is filled in from what is passed by the bootloader when
CONFIG_ARM_ATAG_DTB_COMPATis set) is processed _after_ the address in the initrd= kernel parameter is processed.That's wrong. Kernel parameters should always override what's passed by boot loaders etc.
In that case, what I saw was a bug - note that this only occurs when DeviceTree is enabled:
__ __ _ _ | \/ | __ _ _ ____ _____| | | | |\/| |/ _` | '__\ \ / / _ \ | | | | | | (_| | | \ V / __/ | | |_| |_|\__,_|_| \_/ \___|_|_| _ _ ____ _ | | | | | __ ) ___ ___ | |_ | | | |___| _ \ / _ \ / _ \| __| | |_| |___| |_) | (_) | (_) | |_ \___/ |____/ \___/ \___/ \__| ** LOADER **** MARVELL BOARD: Synology Disk Station LE
U-Boot 1.1.4 (Jul 6 2010 - 19:26:08) Marvell version: 3.4.4
U-Boot code: 00600000 -> 0067FFF0 BSS: -> 0068B43C
Soc: 88F6281 A1 (DDR2)
CPU running @ 1200Mhz L2 running @ 480Mhz SysClock = 400Mhz , TClock = 200MhzDRAM CAS Latency = 6 tRP = 6 tRAS = 18 tRCD=6
DRAM CS[0] base0x00000000size 128MB
DRAM Total size 128MB 16bit width [4096kB atf8000000] Flash: 4 MB Addresses 8M - 0M are saved for the U-Boot usage. Mem malloc Initialization (8M - 7M): Done Using default environmentCPU : Marvell Feroceon (Rev 1)
Streaming disabled
Write allocate disabledModule 1 is AUDIO
USB 0: host mode
Synology Model: DS211j
Fan Status: GoodNet: egiga0 [PRIME] Hit any key to stop autoboot: 0Marvell>> setenv ipaddr 192.168.200.62
Marvell>> setenv serverip 192.168.200.16
Marvell>> tftp0x01000000uImage-3.13-rc7-ds211j-git-fdt
Using egiga0 device
TFTP from server 192.168.200.16; our IP address is 192.168.200.62 Filename 'uImage-3.13-rc7-ds211j-git-fdt'.
Load address:0x1000000
Loading: #################################################################Quoted 6 lines
################################################################# ################################################################# ################################################################# ################################################################# #########################################################done
Quoted 7 lines
So here you load the kernel into RAM at
0x01000000.Quoted 2 lines
Bytes transferred = 1954736 (1dd3b0 hex)
Marvell>> setenv bootargs console=ttyS0,115200 ip=off initrd=0x00800040,0x0013FFC0 root=/dev/md0 rw syno_hw_version=DS211j ihd_num=2 netif_num=1 earlyprintkI don't see you loading the initrd into RAM at
0x00800000.
See below
Quoted 4 lines
Quoted 2 lines
Marvell>> bootm
0x010000000xf8280000And here you tell it the initrd is at
0xf8280000.
This is because I am using the initrd in flash.
Quoted 24 lines
Quoted 24 lines
## Booting image at 01000000 ...
Bad Magic Number
Marvell>> tftp0x01000000uImage-3.13-rc7-ds211j-git-fdt
Using egiga0 device
TFTP from server 192.168.200.16; our IP address is 192.168.200.62 Filename 'uImage-3.13-rc7-ds211j-git-fdt'.
Load address:0x1000000
Loading: ################################################################################################################################## ################################################################# ################################################################# ################################################################# #########################################################done
Bytes transferred = 1954800 (1dd3f0 hex) Marvell>> bootm0x010000000xf8280000## Booting image at 01000000 ...Image Name: linux-3.13-rc7-ds211j+ Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 1954736 Bytes = 1.9 MBLoad Address: 00008000
Entry Point: 00008000
Verifying Checksum ... OK
Quoted 8 lines
Quoted 8 lines
OK
## Loading Ramdisk Image atf8280000...Image Name: altair-boot Image Type: ARM Linux RAMDisk Image (unknown compression) Data Size: 1022268 Bytes = 998.3 kBLoad Address: 00800000
Entry Point: 00800000
Verifying Checksum ... OK
Here the bootloader copies the initrd to 0x00800040, yet passes 0xf8280040 to the kernel.
Quoted 14 lines
Quoted 11 lines
Starting kernel ...
Uncompressing Linux... done, booting the kernel.
[ 0.000000] Booting Linux on physical CPU 0x0 [ 0.000000] Linux version 3.13.0-rc7-ds211j+ (root at lurch) (gcc version 4.8.2 (Gentoo 4.8.2 p1.3, pie-0.5.8) ) #2 Thu Jan 9 08:52:24 EST 2014 [ 0.000000] CPU: Feroceon 88FR131 [56251311] revision 1 (ARMv5TE), cr=00053977 [ 0.000000] CPU: VIVT data cache, VIVT instruction cache [ 0.000000] Machine model: Synology DS210 v10, v20, v30, DS211j [ 0.000000] bootconsole [earlycon0] enabled [ 0.000000] INITRD: 0xf8280040+0x000f993c is not a memory region - disabling initrdThe kernel is correct. There is no RAM here. That is in the IOMEM space.