From eadb1a943744997a8685c6de97a25d60d258af85 Mon Sep 17 00:00:00 2001 From: Donald Hoskins Date: Wed, 22 Jul 2020 05:26:33 -0400 Subject: octeon: add support for Itus Shield Router Itus Networks Shield - 1Ghz dual-core mips64 / Cavium Octeon 3 SoC, 1Gb RAM, 4Gb eMMC,3 GbE 10/100/1000 ports Information regarding device can be found: https://deviwiki.com/wiki/Itus_Networks_Shield_Pro Installing OpenWrt on Itus Networks Shield: 1) Boot Shield 2) On device: mount /dev/mmcblk1p1 /mnt 3) scp openwrt-octeon-itus,shield-router-initramfs-kernel.bin to /mnt/ItusrouterImage 3a) Optionally: scp openwrt-octeon-itus,shield-router-initramfs-kernel.bin to /mnt/ItusgatewayImage to allow you to have an emergency recovery boot in the GATEWAY slot - this slot will have no permament storage and is used for emergency recovery only when booted in the (G)ateway position 4) On device: umount /mnt 5) reboot Once booted, run the sysupgrade via cli or luCi on the openwrt-octeon-itus,shield-router-squashfs-sysupgrade.tar file the mode you are running. Once rebooted, the system installation is complete. Your storage partition for the mode is inialized and set. Signed-off-by: Donald Hoskins [cut out sysupgrade-* changes, move a few lines, drop case CVMX_BOARD_TYPE_ITUS_SHIELD] Signed-off-by: Adrian Schmutzler --- .../octeon/base-files/lib/upgrade/platform.sh | 39 ++++++++++++++++------ 1 file changed, 29 insertions(+), 10 deletions(-) (limited to 'target/linux/octeon/base-files/lib/upgrade') diff --git a/target/linux/octeon/base-files/lib/upgrade/platform.sh b/target/linux/octeon/base-files/lib/upgrade/platform.sh index c137609d7f..d938950906 100755 --- a/target/linux/octeon/base-files/lib/upgrade/platform.sh +++ b/target/linux/octeon/base-files/lib/upgrade/platform.sh @@ -28,6 +28,11 @@ platform_copy_config() { cp -af "$UPGRADE_BACKUP" "/mnt/$BACKUP_FILE" umount /mnt ;; + itus,shield-router) + mount -t vfat /dev/mmcblk1p1 /mnt + cp -af "$UPGRADE_BACKUP" "/mnt/$BACKUP_FILE" + umount /mnt + ;; esac } @@ -42,18 +47,29 @@ platform_do_flash() { [ -n "$board_dir" ] || return 1 mkdir -p /boot - mount -t vfat /dev/$kernel /boot - [ -f /boot/vmlinux.64 -a ! -L /boot/vmlinux.64 ] && { - mv /boot/vmlinux.64 /boot/vmlinux.64.previous - mv /boot/vmlinux.64.md5 /boot/vmlinux.64.md5.previous - } + if [ $board = "itus,shield-router" ]; then + # mmcblk1p1 (fat) contains all ELF-bin images for the Shield + mount /dev/mmcblk1p1 /boot + + echo "flashing Itus Kernel to /boot/$kernel (/dev/mmblk1p1)" + tar -Oxf $tar_file "$board_dir/kernel" > /boot/$kernel + else + mount -t vfat /dev/$kernel /boot + + [ -f /boot/vmlinux.64 -a ! -L /boot/vmlinux.64 ] && { + mv /boot/vmlinux.64 /boot/vmlinux.64.previous + mv /boot/vmlinux.64.md5 /boot/vmlinux.64.md5.previous + } + + echo "flashing kernel to /dev/$kernel" + tar xf $tar_file $board_dir/kernel -O > /boot/vmlinux.64 + md5sum /boot/vmlinux.64 | cut -f1 -d " " > /boot/vmlinux.64.md5 + fi - echo "flashing kernel to /dev/$kernel" - tar xf $tar_file $board_dir/kernel -O > /boot/vmlinux.64 - md5sum /boot/vmlinux.64 | cut -f1 -d " " > /boot/vmlinux.64.md5 echo "flashing rootfs to ${rootfs}" tar xf $tar_file $board_dir/root -O | dd of="${rootfs}" bs=4096 + sync umount /boot } @@ -72,6 +88,9 @@ platform_do_upgrade() { erlite) kernel=sda1 ;; + itus,shield-router) + kernel=ItusrouterImage + ;; *) return 1 esac @@ -79,7 +98,6 @@ platform_do_upgrade() { platform_do_flash $tar_file $board $kernel $rootfs return 0 - } platform_check_image() { @@ -92,7 +110,8 @@ platform_check_image() { case "$board" in er | \ - erlite) + erlite | \ + itus,shield-router) local kernel_length=$(tar xf $tar_file $board_dir/kernel -O | wc -c 2> /dev/null) local rootfs_length=$(tar xf $tar_file $board_dir/root -O | wc -c 2> /dev/null) [ "$kernel_length" = 0 -o "$rootfs_length" = 0 ] && { -- cgit v1.2.3