aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/octeon/base-files/lib
diff options
context:
space:
mode:
authorDonald Hoskins <grommish@gmail.com>2020-07-22 05:26:33 -0400
committerAdrian Schmutzler <freifunk@adrianschmutzler.de>2020-08-16 02:15:06 +0200
commiteadb1a943744997a8685c6de97a25d60d258af85 (patch)
tree6ac95ad89060c1dbaac247ffb931f934e874309b /target/linux/octeon/base-files/lib
parent591767fc0152ffd02954e359e33f575271b9089e (diff)
downloadupstream-eadb1a943744997a8685c6de97a25d60d258af85.tar.gz
upstream-eadb1a943744997a8685c6de97a25d60d258af85.tar.bz2
upstream-eadb1a943744997a8685c6de97a25d60d258af85.zip
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 <grommish@gmail.com> [cut out sysupgrade-* changes, move a few lines, drop case CVMX_BOARD_TYPE_ITUS_SHIELD] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Diffstat (limited to 'target/linux/octeon/base-files/lib')
-rw-r--r--target/linux/octeon/base-files/lib/preinit/01_sysinfo4
-rw-r--r--target/linux/octeon/base-files/lib/preinit/79_move_config5
-rwxr-xr-xtarget/linux/octeon/base-files/lib/upgrade/platform.sh39
3 files changed, 38 insertions, 10 deletions
diff --git a/target/linux/octeon/base-files/lib/preinit/01_sysinfo b/target/linux/octeon/base-files/lib/preinit/01_sysinfo
index d8f467ed27..34fa7392d2 100644
--- a/target/linux/octeon/base-files/lib/preinit/01_sysinfo
+++ b/target/linux/octeon/base-files/lib/preinit/01_sysinfo
@@ -17,6 +17,10 @@ do_sysinfo_octeon() {
name="erpro"
;;
+ "ITUS_SHIELD"*)
+ name="itus,shield-router"
+ ;;
+
*)
name="generic"
;;
diff --git a/target/linux/octeon/base-files/lib/preinit/79_move_config b/target/linux/octeon/base-files/lib/preinit/79_move_config
index 866bef495b..fd780a9461 100644
--- a/target/linux/octeon/base-files/lib/preinit/79_move_config
+++ b/target/linux/octeon/base-files/lib/preinit/79_move_config
@@ -10,6 +10,11 @@ move_config() {
[ -f "/mnt/$BACKUP_FILE" ] && mv -f "/mnt/$BACKUP_FILE" /
umount /mnt
;;
+ itus,shield-router)
+ mount -t vfat /dev/mmcblk1p1 /mnt
+ [ -f "/mnt/$BACKUP_FILE" ] && mv -f "/mnt/$BACKUP_FILE" /
+ umount /mnt
+ ;;
esac
}
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 ] && {