diff options
author | FranHsu <Fran.Hsu@quantatw.com> | 2019-02-22 15:13:49 +0300 |
---|---|---|
committer | Andrew Geissler <geissonator@yahoo.com> | 2019-03-12 16:14:00 +0300 |
commit | e7428cbc37f9dc0f3f8e73be489fe3b96ee863ca (patch) | |
tree | 759e0e088dca6df88e09610914cdd4eeed33dd2e /meta-quanta/meta-gsj/recipes-phosphor/usb-network | |
parent | 4ba01a1378ed66f2460f31d50c515d4a3070455a (diff) | |
download | openbmc-e7428cbc37f9dc0f3f8e73be489fe3b96ee863ca.tar.xz |
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/recipes-phosphor/usb-network')
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 |