summaryrefslogtreecommitdiffstats
path: root/meta-quanta/meta-gsj
diff options
context:
space:
mode:
authorFranHsu <Fran.Hsu@quantatw.com>2019-02-22 20:13:49 +0800
committerAndrew Geissler <geissonator@yahoo.com>2019-03-12 08:14:00 -0500
commite7428cbc37f9dc0f3f8e73be489fe3b96ee863ca (patch)
tree759e0e088dca6df88e09610914cdd4eeed33dd2e /meta-quanta/meta-gsj
parent4ba01a1378ed66f2460f31d50c515d4a3070455a (diff)
downloadtalos-openbmc-e7428cbc37f9dc0f3f8e73be489fe3b96ee863ca.tar.gz
talos-openbmc-e7428cbc37f9dc0f3f8e73be489fe3b96ee863ca.zip
meta-gsj: Add USB-NIC systemd configuration for GSJ board.
(From meta-quanta rev: 41ff54605a8df6e456e2035b410114545bc94284) Tested: Build Quanta GSJ board image and load on the EVB. Ensure that BMC boots to console, and the USB network interface is working. Fix typo. Change-Id: If93ae6fe2b0181d96630c802adc7e5e216b1de42 Signed-off-by: FranHsu <Fran.Hsu@quantatw.com> Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
Diffstat (limited to 'meta-quanta/meta-gsj')
-rw-r--r--meta-quanta/meta-gsj/recipes-phosphor/usb-network/files/00-bmc-usb0.network7
-rw-r--r--meta-quanta/meta-gsj/recipes-phosphor/usb-network/files/usb_network.service9
-rw-r--r--meta-quanta/meta-gsj/recipes-phosphor/usb-network/files/usb_network.sh27
-rw-r--r--meta-quanta/meta-gsj/recipes-phosphor/usb-network/usb-network.bb29
4 files changed, 72 insertions, 0 deletions
diff --git a/meta-quanta/meta-gsj/recipes-phosphor/usb-network/files/00-bmc-usb0.network b/meta-quanta/meta-gsj/recipes-phosphor/usb-network/files/00-bmc-usb0.network
new file mode 100644
index 000000000..94839637b
--- /dev/null
+++ b/meta-quanta/meta-gsj/recipes-phosphor/usb-network/files/00-bmc-usb0.network
@@ -0,0 +1,7 @@
+[Match]
+Name=usb0
+[Address]
+Address=169.254.95.118/16
+[Network]
+LinkLocalAddressing=yes
+IPv6AcceptRA=no
diff --git a/meta-quanta/meta-gsj/recipes-phosphor/usb-network/files/usb_network.service b/meta-quanta/meta-gsj/recipes-phosphor/usb-network/files/usb_network.service
new file mode 100644
index 000000000..913f5fbee
--- /dev/null
+++ b/meta-quanta/meta-gsj/recipes-phosphor/usb-network/files/usb_network.service
@@ -0,0 +1,9 @@
+[Unit]
+Description=enable usb network
+
+[Service]
+Type=oneshot
+ExecStart=/bin/bash -c '/usr/sbin/usb_network.sh'
+
+[Install]
+WantedBy=multi-user.target
diff --git a/meta-quanta/meta-gsj/recipes-phosphor/usb-network/files/usb_network.sh b/meta-quanta/meta-gsj/recipes-phosphor/usb-network/files/usb_network.sh
new file mode 100644
index 000000000..45fa888be
--- /dev/null
+++ b/meta-quanta/meta-gsj/recipes-phosphor/usb-network/files/usb_network.sh
@@ -0,0 +1,27 @@
+#!/bin/bash
+
+cd /sys/kernel/config/usb_gadget
+
+if [ ! -f "g1" ]; then
+ mkdir g1
+ cd g1
+
+ echo 0x1d6b > idVendor # Linux foundation
+ echo 0x0104 > idProduct # Multifunction composite gadget
+ mkdir -p strings/0x409
+ echo "Linux" > strings/0x409/manufacturer
+ echo "Ethernet/RNDIS gadget" > strings/0x409/product
+
+ mkdir -p configs/c.1
+ echo 100 > configs/c.1/MaxPower
+ mkdir -p configs/c.1/strings/0x409
+ echo "RNDIS" > configs/c.1/strings/0x409/configuration
+
+ mkdir -p functions/rndis.usb0
+
+ ln -s functions/rndis.usb0 configs/c.1
+
+ echo f0839000.udc > UDC
+
+fi
+exit 0
diff --git a/meta-quanta/meta-gsj/recipes-phosphor/usb-network/usb-network.bb b/meta-quanta/meta-gsj/recipes-phosphor/usb-network/usb-network.bb
new file mode 100644
index 000000000..591ca5afd
--- /dev/null
+++ b/meta-quanta/meta-gsj/recipes-phosphor/usb-network/usb-network.bb
@@ -0,0 +1,29 @@
+FILESEXTRAPATHS_append := "${THISDIR}/files:"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://${QUANTABASE}/COPYING.apache-2.0;md5=34400b68072d710fecd0a2940a0d1658"
+
+DEPENDS += "systemd"
+RDEPENDS_${PN} += "libsystemd"
+RDEPENDS_${PN} += "bash"
+
+SRC_URI += "file://usb_network.sh \
+ file://usb_network.service \
+ file://00-bmc-usb0.network"
+
+do_install() {
+ install -d ${D}/${sbindir}
+ install -m 0755 ${WORKDIR}/usb_network.sh ${D}/${sbindir}
+
+ install -d ${D}${systemd_unitdir}/system/
+ install -m 0644 ${WORKDIR}/usb_network.service ${D}${systemd_unitdir}/system
+
+ install -d ${D}${sysconfdir_native}/systemd/network/
+ install -m 0644 ${WORKDIR}/00-bmc-usb0.network ${D}${sysconfdir_native}/systemd/network
+}
+
+NATIVE_SYSTEMD_SUPPORT = "1"
+SYSTEMD_PACKAGES = "${PN}"
+SYSTEMD_SERVICE_${PN} = "usb_network.service"
+FILES_${PN} += "${sysconfdir_native}/systemd/network/00-bmc-usb0.network"
+
+inherit allarch systemd \ No newline at end of file
OpenPOWER on IntegriCloud