openwrtv4/package/boot
Ryan Mounce 9f3f61a0d9 mvebu: add support for Turris Omnia
Adds support for the Turris Omnia and builds an eMMC sysupgrade image in
the same format as the SolidRun ClearFog.

An initramfs image in the simple yet Omnia-specific 'medkit' image format
is also built in order to ease the initial flashing process.

Notable hardware support omissions are support for switching between SFP
cage and copper PHY, and RGB LED control.

Due to a current limitation of DSA, only 1/2 CPU switch uplinks are used.

Specifications:
- Marvell Armada 385 1.6GHz dual-core ARMv7 CPU
- 1GB DDR3 RAM
- 8GB eMMC Flash
- 5x Gigabit LAN via Marvell 88E6176 Switch (2x RGMII CPU ports)
- 1x switchable RJ45 (88E1514 PHY) / SFP SGMII WAN
- 2x USB 3.0
- 12x dimmable RGB LEDs controlled by independent MCU
- 3x Mini PCIe slots
- Optional Compex WLE200N2 Mini PCIe AR9287 2x2 802.11b/g/n (2.4GHz)
- Optional Compex WLE900VX Mini PCIe QCA9880 3x3 802.11ac (2.4 / 5GHz)
- Optional Quectel EC20 Mini PCIe LTE modem

Flash instructions:
If the U-Boot environment has been modified previously (likely manually via
serial console), first use serial to reset the default environment.
=> env default -a
=> saveenv

Method 1 - USB 'medkit' image w/o serial
- Copy openwrt-mvebu-turris-omnia-sysupgrade.img.gz and
omnia-medkit-openwrt-mvebu-turris-omnia-initramfs.tar.gz to the root of a
USB flash drive formatted with FAT32 / ext2/3/4 / btrfs / XFS.
Note that the medkit MUST be named omnia-medkit*.tar.gz
- Disconnect other USB devices from the Omnia and connect the flash drive
to either USB port.
- Power on the Omnia and hold down the rear reset button until 4 LEDs are
illuminated, then release.
- Wait approximately 2 minutes for the Turris Omnia to flash itself with
the temporary image, during which LEDs will change multiple times.
- Connect a computer to a LAN port of the Turris Omnia with a DHCP client
- (if necessary) ssh-keygen -R 192.168.1.1
- ssh root@192.168.1.1
$ mount /dev/sda1 /mnt
$ sysupgrade /mnt/openwrt-mvebu-turris-omnia-sysupgrade.img.gz
- Wait another minute for the final OpenWrt image to be flashed. The Turris
Omnia will reboot itself and you can remove the flash drive.

Method 2 - TFTP w/ serial
- Extract omnia-medkit-openwrt-mvebu-turris-omnia-initramfs.tar.gz and copy
dtb + zImage to your TFTP server (rename if desired)
- Connect Turris Omnia WAN port to DHCP-enabled network with TFTP server
- Connect serial console and interrupt U-Boot
=> dhcp
=> setenv serverip <tftp_server_ip_here>
=> tftpboot 0x01000000 zImage
=> tftpboot 0x02000000 dtb
=> bootz 0x01000000 - 0x02000000
- OpenWrt will now boot from ramdisk
- Download openwrt-mvebu-turris-omnia-sysupgrade.img.gz to /tmp/
$ sysupgrade /tmp/openwrt-mvebu-turris-omnia-sysupgrade.img.gz
- Wait another minute for the final OpenWrt image to be flashed. The Turris
Omnia will reboot itself.

Signed-off-by: Ryan Mounce <ryan@mounce.com.au>
2018-03-10 01:15:21 +01:00
..
apex ixp4xx: put apex images into image staging directory 2017-01-27 16:53:31 +01:00
arm-trusted-firmware-sunxi arm-trusted-firmware-sunxi: use release build and bump version 2018-02-05 12:58:27 +01:00
at91bootstrap u-boot,at91bootstrap: fix incorrect HOSTCPPFLAGS variable 2018-02-10 20:52:31 +01:00
fconfig treewide: clean up download hashes 2016-12-16 22:39:22 +01:00
grub2 grub2: disable building platform code for target utility 2018-02-22 09:30:22 +01:00
imx-bootlets treewide: clean up download hashes 2016-12-16 22:39:22 +01:00
kexec-tools kexec-tools: bump version to 2.0.16 2018-02-11 16:10:51 +01:00
kobs-ng kobs-ng: add header for integer definitions 2017-11-16 22:56:54 +01:00
rbcfg rbcfg: Implement CPU frequency control 2017-10-07 15:00:26 +02:00
uboot-ar71xx uboot-ar71xx: fix build error 2017-04-06 16:25:08 +02:00
uboot-at91 uboot-at91: make packages hidden 2018-01-09 22:58:49 +01:00
uboot-envtools mvebu: add support for Turris Omnia 2018-03-10 01:15:21 +01:00
uboot-fritz4040 uboot-fritz4040: Fix build with HOSTCFLAGS 2018-02-11 00:56:50 +01:00
uboot-imx6 uboot-imx6: switch to u-boot.mk 2017-01-24 16:21:24 +01:00
uboot-kirkwood uboot-kirkwood: add uboot for pogoplug v4 2018-01-09 22:06:55 +01:00
uboot-lantiq lantiq: rename gphy firmware 2018-02-20 19:25:17 +01:00
uboot-layerscape layerscape: support ubifs rootfs in u-boot env 2018-02-13 10:01:51 +01:00
uboot-layerscape-armv8_32b layerscape: support ubifs rootfs in u-boot env 2018-02-13 10:01:51 +01:00
uboot-mvebu uboot-mvebu: fix build ; use the build's tools/libressl 2018-02-10 20:52:31 +01:00
uboot-mxs packages: uboot-mxs: override instead of appending u-boot make flags 2018-02-13 10:01:52 +01:00
uboot-omap uboot-omap: rename patch to 101-disable-thumb-omap3.patch 2017-04-30 12:19:07 +02:00
uboot-oxnas oxnas: put u-boot images into image staging directory 2017-01-27 16:53:31 +01:00
uboot-sunxi uboot-sunxi: add Xunlong Orange Pi PC 2018-02-26 11:23:55 +01:00
uboot-xburst treewide: clean up download hashes 2016-12-16 22:39:22 +01:00
uboot-zynq uboot-zynq: switch to u-boot.mk 2017-01-24 16:21:25 +01:00
yamonenv packages: mark packages depending on a target as nonshared 2017-01-24 09:45:05 +01:00