openwrtv4/target/linux
Vladimir Vid 6cda4f6861 imx6: Initial support for SolidRun CuBox-i devices based on i.MX6 processors (i1, i2, i2eX, and i4Pro).
- Specifications -

CuBox i1:
- SoC: i.MX6 Solo
- Cores: 1
- Memory Size: 512MB
- GPU: GC880
- Wifi/Bluetooth: Optional
- USB 2.0 ports: 2
- Ethernet: 10/100/1000 Mbps

CuBox i2 | i2eX:
- SoC: i.MX6 Dual Lite
- Cores: 2
- Memory Size: 1GB
- GPU: GC2000
- Wifi/Bluetooth: Optional
- USB 2.0 ports: 2
- Ethernet: 10/100/1000 Mbps

CuBox i4Pro | i4x4:
- SoC: i.MX6 Quad
- Cores: 4
- Memory Size: 2/4 GB
- GPU: GC2000
- Wifi/Bluetooth: Build In
- USB 2.0 ports: 2
- Ethernet: 10/100/1000 Mbps

Built-in u-boot requires SPL (secondary program loader) to be present on the SD-card regardless of the image type which will be loaded.
SPL is generated by the u-boot-mx6cuboxi package which is preselected by the target device and can be found in bin/u-boot-mx6cuboxi directory.

Flashing the SPL:
dd if=/dev/zero of=/dev/mmcblk0 bs=1M count=4
dd if=bin/targets/imx6/generic/u-boot-mx6cuboxi/SPL of=/dev/mmcblk0 bs=1K seek=1

Preparing the firmware on the SD-card:
(echo o; echo n; echo p; echo 1; echo ''; echo ''; echo w) | fdisk /dev/mmcblk0
mkfs.ext4 /dev/mmcblk0p1
mount /dev/mmcblk0p1 /mnt
tar -xzf bin/targets/imx6/generic/openwrt-imx6-device-cubox-i-rootfs.tar.gz -C /mnt/
mkdir -p /mnt/boot
cp bin/targets/imx6/generic/{*-uImage,*.dtb,*.scr} /mnt/boot/

Generated u-boot.img needs to be placed on the first partition:
cp bin/targets/imx6/generic/u-boot-mx6cuboxi/u-boot.img /mnt/

To boot from the SD card:

Boot script which sets mmc/dtb parameters and boots the board is automatically sourced.
If this does not work for any reason:
mmc dev 0; load mmc 0:1 $scriptaddr boot/boot.scr; source $scriptaddr

Currently imx6dl-cubox-i.dtb (Dual Lite) and imx6q-cubox-i.dtb (Quad) device trees are available.

Tested on i4Pro, MMC, USB (+ HiD), HDMI and ethernet ports are working.
Wireless and bluetooth are broken ATM. According to SolidRun forums, BCM4329/BCM4330 firmware is used which works fine on older kernels.

Signed-off-by: Vladimir Vid <vladimir.vid@sartura.hr>
2018-08-25 15:40:23 +02:00
..
adm5120 kernel: bump 3.18 to 3.18.119 2018-08-20 13:03:23 +02:00
adm8668 kernel: bump 3.18 to 3.18.119 2018-08-20 13:03:23 +02:00
apm821xx treewide: fix upgrade led handling 2018-08-16 21:20:57 +02:00
ar7 ar7: remove linux 3.18 support 2018-08-13 17:10:39 +02:00
ar71xx ar71xx: fix typo in rb91x nand source 2018-08-24 09:18:13 +02:00
arc770 arc: Update variables substitutions in u-boot env files 2018-07-12 10:24:31 +02:00
archs38 arc: Update variables substitutions in u-boot env files 2018-07-12 10:24:31 +02:00
armvirt kernel: add missing ARM64_SSBD symbol 2018-07-31 12:22:11 +03:00
at91 at91: do not build image for at91-q5xr5 2018-08-12 11:34:50 +02:00
ath25 ath25: drop 4.9 kernel support 2018-05-22 07:20:13 +02:00
ath79 ath79: ubnt-xm: create mapping for RSSI LEDs 2018-08-23 22:42:15 +02:00
au1000 kernel: only optimized for size if small_flash 2018-07-12 18:15:32 +02:00
bcm53xx kernel: bump 4.14 to 4.14.59 2018-07-31 05:11:07 +03:00
brcm47xx brcm47xx: cosmetic fix in model detection 2018-08-13 08:37:19 +02:00
brcm63xx brcm63xx: switch to 4.14 2018-08-02 08:49:18 +02:00
brcm2708 kernel: bump 4.9 to 4.9.117 2018-08-03 16:10:38 +02:00
cns3xxx cns3xxx: fix mtu setting with kernel 4.14 2018-08-16 21:20:57 +02:00
gemini kernel: remove DEVMEM and DEVKMEM from target's config 2018-07-07 18:19:39 +02:00
generic generic: revert workarounds for AR8337 switch 2018-08-23 22:40:59 +02:00
imx6 imx6: Initial support for SolidRun CuBox-i devices based on i.MX6 processors (i1, i2, i2eX, and i4Pro). 2018-08-25 15:40:23 +02:00
ipq40xx treewide: drop unused get_status_led functions 2018-08-16 21:20:57 +02:00
ipq806x treewide: fix upgrade led handling 2018-08-16 21:20:57 +02:00
ixp4xx kernel: bump 4.9 to 4.9.123 2018-08-22 13:47:13 +02:00
kirkwood kernel: bump 4.9 to 4.9.116 2018-08-01 09:46:59 +02:00
lantiq lantiq: add support for upgrade led 2018-08-16 21:20:57 +02:00
layerscape kernel: bump 4.9 to 4.9.119 2018-08-10 18:43:23 +02:00
malta malta: bump tp v4.14 2018-01-09 10:26:16 +01:00
mcs814x kernel: bump 3.18 to 3.18.119 2018-08-20 13:03:23 +02:00
mediatek kernel: bump kernel 4.14 to version 4.14.63 2018-08-15 22:31:56 +02:00
mpc85xx WDR4900v1 remove dt node for absent hw crypto. 2018-07-07 18:19:39 +02:00
mvebu kernel: bump 4.14 to 4.14.60 2018-08-03 16:10:38 +02:00
mxs kernel: enable THIN_ARCHIVES by default 2018-05-22 07:55:20 +02:00
octeon octeon: Add and set CPU type Octeon+ as default 2018-06-20 15:36:02 +02:00
octeontx kernel: add missing ARM64_SSBD symbol 2018-07-31 12:22:11 +03:00
omap omap: disable ubifs 2018-07-30 11:03:02 +02:00
omap24xx omap24xx: remove referece to not existing kmod-usb-musb-tusb6010 2018-01-15 13:13:34 +01:00
orion orion: remove linux 4.4 support 2018-04-19 14:38:57 +02:00
oxnas kernel: bump 4.14 to 4.14.59 2018-07-31 05:11:07 +03:00
pistachio treewide: consolidate upgrade state set 2018-08-16 21:20:57 +02:00
ppc40x kernel: only optimized for size if small_flash 2018-07-12 18:15:32 +02:00
ppc44x kernel: only optimized for size if small_flash 2018-07-12 18:15:32 +02:00
ramips ramips: fix RBM11G partitioning 2018-08-24 11:53:51 +02:00
rb532 kernel: only optimized for size if small_flash 2018-07-12 18:15:32 +02:00
samsung samsung/s5pv210: New target 2018-07-30 14:10:00 +02:00
sunxi kernel: bump 4.14 to 4.14.62 2018-08-10 18:43:23 +02:00
uml kernel: bump 4.9 to 4.9.100 2018-05-18 09:10:21 +02:00
x86 x86/64: enable X86_INTEL_LPSS to select PINCTRL 2018-08-25 15:33:51 +02:00
xburst kernel: bump 3.18 to 3.18.119 2018-08-20 13:03:23 +02:00
zynq zynq: add support for the Zybo Z7 board 2018-08-25 15:33:51 +02:00
Makefile