mirror of
https://github.com/openwrt/openwrt.git
synced 2025-03-28 22:59:17 +00:00
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> Signed-off-by: maurerr <mariusd84@gmail.com>
This commit is contained in:
parent
a3b3d1ccc9
commit
2c56c5debb
@ -8,6 +8,9 @@
|
|||||||
board_config_update
|
board_config_update
|
||||||
|
|
||||||
case "$(board_name)" in
|
case "$(board_name)" in
|
||||||
|
itus,shield-router)
|
||||||
|
ucidef_set_interfaces_lan_wan "eth1 eth2" "eth0"
|
||||||
|
;;
|
||||||
*)
|
*)
|
||||||
ucidef_set_interfaces_lan_wan "eth0" "eth1"
|
ucidef_set_interfaces_lan_wan "eth0" "eth1"
|
||||||
;;
|
;;
|
||||||
|
@ -17,6 +17,10 @@ do_sysinfo_octeon() {
|
|||||||
name="erpro"
|
name="erpro"
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
"ITUS_SHIELD"*)
|
||||||
|
name="itus,shield-router"
|
||||||
|
;;
|
||||||
|
|
||||||
*)
|
*)
|
||||||
name="generic"
|
name="generic"
|
||||||
;;
|
;;
|
||||||
|
@ -10,6 +10,11 @@ move_config() {
|
|||||||
[ -f "/mnt/$BACKUP_FILE" ] && mv -f "/mnt/$BACKUP_FILE" /
|
[ -f "/mnt/$BACKUP_FILE" ] && mv -f "/mnt/$BACKUP_FILE" /
|
||||||
umount /mnt
|
umount /mnt
|
||||||
;;
|
;;
|
||||||
|
itus,shield-router)
|
||||||
|
mount -t vfat /dev/mmcblk1p1 /mnt
|
||||||
|
[ -f "/mnt/$BACKUP_FILE" ] && mv -f "/mnt/$BACKUP_FILE" /
|
||||||
|
umount /mnt
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -28,6 +28,11 @@ platform_copy_config() {
|
|||||||
cp -af "$UPGRADE_BACKUP" "/mnt/$BACKUP_FILE"
|
cp -af "$UPGRADE_BACKUP" "/mnt/$BACKUP_FILE"
|
||||||
umount /mnt
|
umount /mnt
|
||||||
;;
|
;;
|
||||||
|
itus,shield-router)
|
||||||
|
mount -t vfat /dev/mmcblk1p1 /mnt
|
||||||
|
cp -af "$UPGRADE_BACKUP" "/mnt/$BACKUP_FILE"
|
||||||
|
umount /mnt
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -42,18 +47,29 @@ platform_do_flash() {
|
|||||||
[ -n "$board_dir" ] || return 1
|
[ -n "$board_dir" ] || return 1
|
||||||
|
|
||||||
mkdir -p /boot
|
mkdir -p /boot
|
||||||
mount -t vfat /dev/$kernel /boot
|
|
||||||
|
|
||||||
[ -f /boot/vmlinux.64 -a ! -L /boot/vmlinux.64 ] && {
|
if [ $board = "itus,shield-router" ]; then
|
||||||
mv /boot/vmlinux.64 /boot/vmlinux.64.previous
|
# mmcblk1p1 (fat) contains all ELF-bin images for the Shield
|
||||||
mv /boot/vmlinux.64.md5 /boot/vmlinux.64.md5.previous
|
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}"
|
echo "flashing rootfs to ${rootfs}"
|
||||||
tar xf $tar_file $board_dir/root -O | dd of="${rootfs}" bs=4096
|
tar xf $tar_file $board_dir/root -O | dd of="${rootfs}" bs=4096
|
||||||
|
|
||||||
sync
|
sync
|
||||||
umount /boot
|
umount /boot
|
||||||
}
|
}
|
||||||
@ -72,6 +88,9 @@ platform_do_upgrade() {
|
|||||||
erlite)
|
erlite)
|
||||||
kernel=sda1
|
kernel=sda1
|
||||||
;;
|
;;
|
||||||
|
itus,shield-router)
|
||||||
|
kernel=ItusrouterImage
|
||||||
|
;;
|
||||||
*)
|
*)
|
||||||
return 1
|
return 1
|
||||||
esac
|
esac
|
||||||
@ -79,7 +98,6 @@ platform_do_upgrade() {
|
|||||||
platform_do_flash $tar_file $board $kernel $rootfs
|
platform_do_flash $tar_file $board $kernel $rootfs
|
||||||
|
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
platform_check_image() {
|
platform_check_image() {
|
||||||
@ -92,7 +110,8 @@ platform_check_image() {
|
|||||||
|
|
||||||
case "$board" in
|
case "$board" in
|
||||||
er | \
|
er | \
|
||||||
erlite)
|
erlite | \
|
||||||
|
itus,shield-router)
|
||||||
local kernel_length=$(tar xf $tar_file $board_dir/kernel -O | wc -c 2> /dev/null)
|
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)
|
local rootfs_length=$(tar xf $tar_file $board_dir/root -O | wc -c 2> /dev/null)
|
||||||
[ "$kernel_length" = 0 -o "$rootfs_length" = 0 ] && {
|
[ "$kernel_length" = 0 -o "$rootfs_length" = 0 ] && {
|
||||||
|
@ -29,6 +29,15 @@ define Device/generic
|
|||||||
endef
|
endef
|
||||||
TARGET_DEVICES += generic
|
TARGET_DEVICES += generic
|
||||||
|
|
||||||
|
ITUSROUTER_CMDLINE:=console=ttyS0,115200 root=/dev/mmcblk1p2 rootfstype=squashfs,ext4,f2fs rootwait
|
||||||
|
define Device/itus_shield-router
|
||||||
|
DEVICE_VENDOR := Itus Networks
|
||||||
|
DEVICE_MODEL := Shield Router
|
||||||
|
CMDLINE := $(ITUSROUTER_CMDLINE)
|
||||||
|
IMAGE/sysupgrade.tar/squashfs += | append-metadata
|
||||||
|
endef
|
||||||
|
TARGET_DEVICES += itus_shield-router
|
||||||
|
|
||||||
ER_CMDLINE:=-mtdparts=phys_mapped_flash:640k(boot0)ro,640k(boot1)ro,64k(eeprom)ro root=/dev/mmcblk0p2 rootfstype=squashfs,ext4 rootwait
|
ER_CMDLINE:=-mtdparts=phys_mapped_flash:640k(boot0)ro,640k(boot1)ro,64k(eeprom)ro root=/dev/mmcblk0p2 rootfstype=squashfs,ext4 rootwait
|
||||||
define Device/ubnt_edgerouter
|
define Device/ubnt_edgerouter
|
||||||
DEVICE_VENDOR := Ubiquiti
|
DEVICE_VENDOR := Ubiquiti
|
||||||
|
@ -0,0 +1,42 @@
|
|||||||
|
--- a/arch/mips/include/asm/octeon/cvmx-bootinfo.h
|
||||||
|
+++ b/arch/mips/include/asm/octeon/cvmx-bootinfo.h
|
||||||
|
@@ -297,7 +297,7 @@ enum cvmx_board_types_enum {
|
||||||
|
CVMX_BOARD_TYPE_UBNT_E100 = 20002,
|
||||||
|
CVMX_BOARD_TYPE_UBNT_E200 = 20003,
|
||||||
|
CVMX_BOARD_TYPE_UBNT_E220 = 20005,
|
||||||
|
- CVMX_BOARD_TYPE_CUST_DSR1000N = 20006,
|
||||||
|
+ CVMX_BOARD_TYPE_ITUS_SHIELD = 20006,
|
||||||
|
CVMX_BOARD_TYPE_KONTRON_S1901 = 21901,
|
||||||
|
CVMX_BOARD_TYPE_CUST_PRIVATE_MAX = 30000,
|
||||||
|
|
||||||
|
@@ -400,7 +400,7 @@ static inline const char *cvmx_board_typ
|
||||||
|
ENUM_BRD_TYPE_CASE(CVMX_BOARD_TYPE_UBNT_E100)
|
||||||
|
ENUM_BRD_TYPE_CASE(CVMX_BOARD_TYPE_UBNT_E200)
|
||||||
|
ENUM_BRD_TYPE_CASE(CVMX_BOARD_TYPE_UBNT_E220)
|
||||||
|
- ENUM_BRD_TYPE_CASE(CVMX_BOARD_TYPE_CUST_DSR1000N)
|
||||||
|
+ ENUM_BRD_TYPE_CASE(CVMX_BOARD_TYPE_ITUS_SHIELD)
|
||||||
|
ENUM_BRD_TYPE_CASE(CVMX_BOARD_TYPE_KONTRON_S1901)
|
||||||
|
ENUM_BRD_TYPE_CASE(CVMX_BOARD_TYPE_CUST_PRIVATE_MAX)
|
||||||
|
}
|
||||||
|
--- a/arch/mips/cavium-octeon/octeon-platform.c
|
||||||
|
+++ b/arch/mips/cavium-octeon/octeon-platform.c
|
||||||
|
@@ -771,7 +771,7 @@ int __init octeon_prune_device_tree(void
|
||||||
|
if (fdt_check_header(initial_boot_params))
|
||||||
|
panic("Corrupt Device Tree.");
|
||||||
|
|
||||||
|
- WARN(octeon_bootinfo->board_type == CVMX_BOARD_TYPE_CUST_DSR1000N,
|
||||||
|
+ WARN(octeon_bootinfo->board_type == CVMX_BOARD_TYPE_ITUS_SHIELD,
|
||||||
|
"Built-in DTB booting is deprecated on %s. Please switch to use appended DTB.",
|
||||||
|
cvmx_board_type_to_string(octeon_bootinfo->board_type));
|
||||||
|
|
||||||
|
--- a/arch/mips/pci/pci-octeon.c
|
||||||
|
+++ b/arch/mips/pci/pci-octeon.c
|
||||||
|
@@ -211,8 +211,6 @@ const char *octeon_get_pci_interrupts(vo
|
||||||
|
return "AAABAAAAAAAAAAAAAAAAAAAAAAAAAAAA";
|
||||||
|
case CVMX_BOARD_TYPE_BBGW_REF:
|
||||||
|
return "AABCD";
|
||||||
|
- case CVMX_BOARD_TYPE_CUST_DSR1000N:
|
||||||
|
- return "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC";
|
||||||
|
case CVMX_BOARD_TYPE_THUNDER:
|
||||||
|
case CVMX_BOARD_TYPE_EBH3000:
|
||||||
|
default:
|
Loading…
x
Reference in New Issue
Block a user