aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/octeontx/base-files
diff options
context:
space:
mode:
authorTim Harvey <tharvey@gateworks.com>2018-01-23 15:15:44 -0800
committerJohn Crispin <john@phrozen.org>2018-02-13 10:01:52 +0100
commitfc03b3aa1610feed89b04aa504a3468c904a1aae (patch)
treeeea5c53927f464f9a11489b5daf15a4a0ca7ad4a /target/linux/octeontx/base-files
parent123dbb77aa24842ed00e566b3e01536535407d66 (diff)
downloadupstream-fc03b3aa1610feed89b04aa504a3468c904a1aae.tar.gz
upstream-fc03b3aa1610feed89b04aa504a3468c904a1aae.tar.bz2
upstream-fc03b3aa1610feed89b04aa504a3468c904a1aae.zip
octeontx: add support for OCTEON TX target
The Cavium OCTEON TX is an ARM 64-bit SoC leveraging CPU cores and periperhals from the Cavium ThunderX SoC. This initial support provides a 4.14 kernel and kernel+initramfs that is bootable on the Gateworks Newport GW630x as well as the Cavium sff8104 reference board. Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Diffstat (limited to 'target/linux/octeontx/base-files')
-rw-r--r--target/linux/octeontx/base-files/etc/board.d/02_network18
-rw-r--r--target/linux/octeontx/base-files/etc/inittab5
-rw-r--r--target/linux/octeontx/base-files/lib/octeontx.sh43
3 files changed, 66 insertions, 0 deletions
diff --git a/target/linux/octeontx/base-files/etc/board.d/02_network b/target/linux/octeontx/base-files/etc/board.d/02_network
new file mode 100644
index 0000000000..3ad5e852cb
--- /dev/null
+++ b/target/linux/octeontx/base-files/etc/board.d/02_network
@@ -0,0 +1,18 @@
+#!/bin/sh
+#
+# Copyright (C) 2018 OpenWrt.org
+#
+
+. ./lib/functions/uci-defaults.sh
+. ./lib/octeontx.sh
+
+board=$(octeontx_board_name)
+
+board_config_update
+
+case "$board" in
+esac
+
+board_config_flush
+
+exit 0
diff --git a/target/linux/octeontx/base-files/etc/inittab b/target/linux/octeontx/base-files/etc/inittab
new file mode 100644
index 0000000000..be235d8792
--- /dev/null
+++ b/target/linux/octeontx/base-files/etc/inittab
@@ -0,0 +1,5 @@
+::sysinit:/etc/init.d/rcS S boot
+::shutdown:/etc/init.d/rcS K shutdown
+tts/0::askfirst:/usr/libexec/login.sh
+ttyAMA0::askfirst:/usr/libexec/login.sh
+tty1::askfirst:/usr/libexec/login.sh
diff --git a/target/linux/octeontx/base-files/lib/octeontx.sh b/target/linux/octeontx/base-files/lib/octeontx.sh
new file mode 100644
index 0000000000..b6335f8a00
--- /dev/null
+++ b/target/linux/octeontx/base-files/lib/octeontx.sh
@@ -0,0 +1,43 @@
+#!/bin/sh
+#
+# Copyright (C) 2018 OpenWrt.org
+#
+
+octeontx_board_detect() {
+ local machine
+ local name
+
+ machine=$(cat /proc/device-tree/model)
+ board=$(cat /proc/device-tree/board)
+
+ case "$machine" in
+ "Cavium ThunderX CN81XX board")
+ name="cn81xx"
+ ;;
+
+ *)
+ name="generic"
+ ;;
+ esac
+
+ case "$board" in
+ GW630*)
+ name="gw630x"
+ ;;
+ esac
+
+ [ -e "/tmp/sysinfo" ] || mkdir -p "/tmp/sysinfo"
+
+ echo "$name" > /tmp/sysinfo/board_name
+ echo "$machine" > /tmp/sysinfo/model
+}
+
+octeontx_board_name() {
+ local name
+
+ [ -f /tmp/sysinfo/board_name ] || octeontx_board_detect
+ [ -f /tmp/sysinfo/board_name ] && name=$(cat /tmp/sysinfo/board_name)
+ [ -z "$name" ] && name="unknown"
+
+ echo "$name"
+}