Hi!
I'm trying to port u-boot and kernel which navym posted here to OpenWrt.
http://wiki.openwrt.org/toh/medion/md86587I rebased the U-Boot changes on-top of U-Boot 2013.10 which works great. I also enabled CONFIG_FIT, so OpenWrt-generated FIT can be booted using bootm. However, any attempt of booting anything other than variants of the outdated 2.6.31 kernel just fails entirely, no matter if I use the stock bootloader or U-Boot 2013.10, legacy uImage or FIT image -- in every case the whole thing freezes right after U-Boot says "Starting Linux ..." and should handover control to the decompressor, but rather just freezes.
I tried 3.11.1+ tree from github as well as using OpenWrt to build 3.12-rc7, and also tried the uImage.pci navym posted on Skydrive: none if it works.
My device is an Medion Akoya P89630 (MD 86587), i.e. a ZyXEL/MitraStar STG-212 hardware, single-port SATA without PCIe.
If anyone got any idea, I'd be glad to hear from you. Once I got things working, I'll post in on the OpenWrt mailinglist to be included there (I can of course share my incomplete work with anyone interested, just let me know)
$this->bbcode_second_pass_code('', '
#Stage-1 Bootloader Tue Aug 9 16:44:00 CST 2011
Attempting to set PLLA to 750MHz ...
plla_ctrl0 : 0x0000000A
plla_ctrl1 : 0x000F0000
plla_ctrl2 : 0x001D01A0
plla_ctrl3 : 0x00000017
PLLA Set
Setup memory, testing
Reading NAND, Image 0
Hdr len: 0x0001A94C
Hdr CRC: 0xF0019DAC
OK
U-Boot 1.1.2 (Jun 24 2011 - 09:41:57)
U-Boot code: 60D00000 -> 60D1A94C BSS: -> 60D1F004
RAM Configuration:
Bank #0: 60000000 128 MB
SRAM Configuration:
64KB at 0x50000000
NAND:128 MiB
In: serial
Out: serial
Err: serial
Setting Linux mem= boot arg value
Hit any key to stop autoboot: 0
$ tftp 64000000 openwrt-oxnas-ox820-u-boot.bin
Wait GMAC to reset
Wait for PHY reset.
PHY is Realtek RTL8211E
Wait for link to come up................Link up
Wait for auto-negotiation to complete
Link is 1000M
TFTP from server 192.168.50.59; our IP address is 192.168.50.100
Filename 'openwrt-oxnas-ox820-u-boot.bin'.
Load address: 0x64000000
Loading: #################################################################
#############################################
done
Bytes transferred = 562012 (8935c hex)
$ go 64000000
## Starting application at 0x64000000 ...
U-Boot 2013.10 (Nov 03 2013 - 16:38:35) for OXNAS
U-Boot code: 64000000 -> 6407E4C4 BSS: -> 640CDF34
monitor len: 000CDF34
ramsize: 08000000
TLB table from 67ff0000 to 67ff4000
Top of RAM usable for U-Boot at: 67ff0000
Reserving 823k for U-Boot at: 67f22000
Reserving 1024k for malloc() at: 67e22000
Reserving 32 Bytes for Board Info at: 67e21fe0
Reserving 152 Bytes for Global Data at: 67e21f48
New Stack Pointer is: 67e21f38
RAM Configuration:
Bank #0: 60000000 128 MiB
relocation Offset is: 03f22000
monitor flash len: 0008935C
Now running in RAM - U-Boot at: 67f22000
NAND: 128 MiB
Using default environment
Destroy Hash Table: 67f9e2ec table = 00000000
Create Hash Table: N=111
INSERT: table 67f9e2ec, filled 1/113 rv 67e24d34 ==> name="bootargs" value="con"
INSERT: table 67f9e2ec, filled 2/113 rv 67e24d0c ==> name="bootcmd" value="run "
INSERT: table 67f9e2ec, filled 3/113 rv 67e24c94 ==> name="bootdelay" value="3"
INSERT: table 67f9e2ec, filled 4/113 rv 67e24c30 ==> name="baudrate" value="115"
INSERT: table 67f9e2ec, filled 5/113 rv 67e25040 ==> name="ethaddr" value="00:2"
INSERT: table 67f9e2ec, filled 6/113 rv 67e250b8 ==> name="ipaddr" value="192.1"
INSERT: table 67f9e2ec, filled 7/113 rv 67e249d8 ==> name="autoload" value="no"
INSERT: table 67f9e2ec, filled 8/113 rv 67e25068 ==> name="updboot" value="boot"
INSERT: table 67f9e2ec, filled 9/113 rv 67e24960 ==> name="console" value="cons"
INSERT: table 67f9e2ec, filled 9/113 rv 67e24d34 ==> name="bootargs" value="con"
INSERT: table 67f9e2ec, filled 10/113 rv 67e25158 ==> name="mtdids" value="nand"
INSERT: table 67f9e2ec, filled 11/113 rv 67e24dfc ==> name="mtdparts" value="mt"
INSERT: free(data = 67e247c8)
INSERT: done
In: serial
Out: serial
Err: serial
Initial value for argc=3
Final value for argc=3
Initial value for argc=3
Final value for argc=3
Initial value for argc=3
Final value for argc=3
Net: Initial value for argc=3
Final value for argc=3
mii0
### main_loop entered: bootdelay=3
### main_loop: bootcmd="run ideboot"
Hit any key to stop autoboot: 0
OX820 # dhcp
Trying mii0
BOOTP broadcast 1
DHCPHandler: got packet: (src=3333, dst=3333, len=521) state: 3
Filtering pkt = -1
DHCPHandler: got packet: (src=67, dst=68, len=316) state: 3
Filtering pkt = 0
DHCPHandler: got DHCP packet: (src=67, dst=68, len=316) state: 3
DHCP: state=SELECTING bp_file: "pxelinux.0"
TRANSITIONING TO REQUESTING STATE
*** Unhandled DHCP Option in OFFER/ACK: 42
DhcpSendRequestPkt: Sending DHCPREQUEST
Transmitting DHCPREQUEST packet: len = 342
DHCPHandler: got packet: (src=67, dst=68, len=316) state: 4
Filtering pkt = 0
DHCPHandler: got DHCP packet: (src=67, dst=68, len=316) state: 4
DHCP State: REQUESTING
*** Unhandled DHCP Option in OFFER/ACK: 42
Bootfile: pxelinux.0
Initial value for argc=3
Final value for argc=3
DHCP client bound to address 172.22.80.93
Initial value for argc=3
Final value for argc=3
Initial value for argc=3
Final value for argc=3
Initial value for argc=3
Final value for argc=3
Initial value for argc=3
Final value for argc=3
Initial value for argc=3
Final value for argc=3
OX820 # setenv serverip 172.22.80.70
Initial value for argc=3
Final value for argc=3
OX820 # tftp 62000000 openwrt-oxnas-ox820-fit-uImage-initramfs.itb
Trying mii0
TFTP blocksize = 1468, timeout = 5000 ms
Using mii0 device
TFTP from server 172.22.80.70; our IP address is 172.22.80.93
Filename 'openwrt-oxnas-ox820-fit-uImage-initramfs.itb'.
Load address: 0x62000000
Loading: send option "timeout 5"
Got OACK: timeout 5
Blocksize ack: 1468, 1468
#################################################################
#################################################################
#################################################################
###########################################
3.4 MiB/s
done
Bytes transferred = 3479960 (351998 hex)
Initial value for argc=3
Final value for argc=3
Initial value for argc=3
Final value for argc=3
Initial value for argc=3
Final value for argc=3
Initial value for argc=3
Final value for argc=3
Initial value for argc=3
Final value for argc=3
Initial value for argc=3
Final value for argc=3
Initial value for argc=3
Final value for argc=3
OX820 # bootm
## Current stack ends at 0x67e21d98 * kernel: default image load address = 0x60
## Loading kernel from FIT Image at 62000000 ...
No configuration specified, trying default...
Found default configuration: 'config@1'
Using 'config@1' configuration
Trying 'kernel@1' kernel subimage
Description: ARM OpenWrt Linux-3.12-rc7
Type: Kernel Image
Compression: uncompressed
Data Start: 0x620000e4
Data Size: 3472552 Bytes = 3.3 MiB
Architecture: ARM
OS: Linux
Load Address: 0x60008000
Entry Point: 0x60008000
Hash node: 'hash@1'
Hash algo: crc32
Hash value: f8d579c0
Hash len: 4
Hash node: 'hash@2'
Hash algo: sha1
Hash value: 2e0ef5d3b05f317761dd6b817de83bca1945bceb
Hash len: 20
Verifying Hash Integrity ... crc32+ sha1+ OK
kernel data at 0x620000e4, len = 0x0034fca8 (3472552)
* ramdisk: using config 'config@1' from image at 0x62000000
* ramdisk: no 'ramdisk' in config
* fdt: using config 'config@1' from image at 0x62000000
## Checking for 'FDT'/'FDT Image' at 62000000
## Loading fdt from FIT Image at 62000000 ...
Using 'config@1' configuration
Trying 'fdt@1' fdt subimage
Description: ARM OpenWrt ox820 device tree blob
Type: Flat Device Tree
Compression: uncompressed
Data Start: 0x6234febc
Data Size: 6070 Bytes = 5.9 KiB
Architecture: ARM
Hash node: 'hash@1'
Hash algo: crc32
Hash value: 71870f40
Hash len: 4
Hash node: 'hash@2'
Hash algo: sha1
Hash value: b0c777e2b1eae7570a8aca9d1c973f48f7e4f616
Hash len: 20
Verifying Hash Integrity ... crc32+ sha1+ OK
Can't get 'load' property from FIT 0x62000000, node: offset 3472956, name fdt@1)
Booting using the fdt blob at 0x6234febc
of_flat_tree at 0x6234febc size 0x000017b6
Initial value for argc=3
Final value for argc=3
Initial value for argc=2
Final value for argc=2
hdelete: DELETE key "ethact"
hdelete: DELETING key "ethact"
Loading Kernel Image ... OK
kernel loaded at 0x60008000, end = 0x60357ca8
using: FDT
## initrd_high = 0xffffffff, copy_to_ram = 1
ramdisk load start = 0x00000000, ramdisk load end = 0x00000000
## device tree at 6234febc ... 62351671 (len=18358 [0x47B6])
Loading Device Tree to 67e1c000, end 67e207b5 ... OK
Initial value for argc=3
Final value for argc=3
Updating property '/ethernet@40400000/mac-address' = 00 25 31 01 66 5f
Updating property '/ethernet@40400000/local-mac-address' = 00 25 31 01 66 5f
## Transferring control to Linux (at address 60008000)...
Starting kernel ...
')