summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Williams <patrick@stwcx.xyz>2022-10-13 18:25:55 +0300
committerPatrick Williams <patrick@stwcx.xyz>2022-10-14 12:29:44 +0300
commit4c4a78dff55b805e5ffb87a7bcaaec94a3277984 (patch)
treeb4f6caa80e3515d84719fd38cf642812c2a0d862
parent821f31dc0c11df8f1037d4d18d66f0d9b58d3436 (diff)
downloadopenbmc-4c4a78dff55b805e5ffb87a7bcaaec94a3277984.tar.xz
meta-phosphor: jsnbd: promote dynamic-layers content
The previous 'dynamic-layers' content has been fixed so that it is functional on both aspeed and nuvoton (and likely any system that exposes the same sysfs class entries). Promote this content out of dynamic-layers and make it common to reduce the hardware-specific duplication. Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I8f8247098ef8f8b035269815ebe77dedb2e8a441
-rw-r--r--meta-phosphor/dynamic-layers/aspeed-layer/recipes-connectivity/jsnbd/jsnbd_git.bbappend10
-rwxr-xr-xmeta-phosphor/dynamic-layers/nuvoton-layer/recipes-connectivity/jsnbd/jsnbd/state_hook68
-rw-r--r--meta-phosphor/dynamic-layers/nuvoton-layer/recipes-connectivity/jsnbd/jsnbd_git.bbappend10
-rwxr-xr-xmeta-phosphor/recipes-connectivity/jsnbd/jsnbd/state_hook (renamed from meta-phosphor/dynamic-layers/aspeed-layer/recipes-connectivity/jsnbd/jsnbd/state_hook)0
-rw-r--r--meta-phosphor/recipes-connectivity/jsnbd/jsnbd_git.bb8
5 files changed, 7 insertions, 89 deletions
diff --git a/meta-phosphor/dynamic-layers/aspeed-layer/recipes-connectivity/jsnbd/jsnbd_git.bbappend b/meta-phosphor/dynamic-layers/aspeed-layer/recipes-connectivity/jsnbd/jsnbd_git.bbappend
deleted file mode 100644
index 92a7948912..0000000000
--- a/meta-phosphor/dynamic-layers/aspeed-layer/recipes-connectivity/jsnbd/jsnbd_git.bbappend
+++ /dev/null
@@ -1,10 +0,0 @@
-FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
-
-SRC_URI += "file://state_hook"
-
-do_install:append() {
- install -d ${D}${sysconfdir}/nbd-proxy/
- install -m 0755 ${WORKDIR}/state_hook ${D}${sysconfdir}/nbd-proxy/state
-}
-
-FILES:${PN} += "${sysconfdir}/nbd-proxy/state"
diff --git a/meta-phosphor/dynamic-layers/nuvoton-layer/recipes-connectivity/jsnbd/jsnbd/state_hook b/meta-phosphor/dynamic-layers/nuvoton-layer/recipes-connectivity/jsnbd/jsnbd/state_hook
deleted file mode 100755
index d317e2e9b7..0000000000
--- a/meta-phosphor/dynamic-layers/nuvoton-layer/recipes-connectivity/jsnbd/jsnbd/state_hook
+++ /dev/null
@@ -1,68 +0,0 @@
-#!/bin/sh
-
-if [ $# -ne 2 ]
-then
- echo "usage: $0 <start|stop> <config>" >&2
- exit 1
-fi
-
-action=$1
-config=$2
-
-gadget_name=mass-storage
-gadget_dir=/sys/kernel/config/usb_gadget/$gadget_name
-
-case "$config" in
-0)
- nbd_device=/dev/nbd0
- ;;
-*)
- echo "invalid config $config" >&2
- exit 1
- ;;
-esac
-
-set -ex
-
-case "$action" in
-start)
- mkdir -p $gadget_dir
- (
- cd $gadget_dir
- # http://www.linux-usb.org/usb.ids
- # |-> 1d6b Linux Foundation
- # |-> 0104 Multifunction Composite Gadget
- echo "0x1d6b" > idVendor
- echo "0x0104" > idProduct
- mkdir -p strings/0x409
- echo "OpenBMC" > strings/0x409/manufacturer
- echo "Virtual Media Device" > strings/0x409/product
- mkdir -p configs/c.1/strings/0x409
- echo "config 1" > configs/c.1/strings/0x409/configuration
- mkdir -p functions/mass_storage.usb0
- ln -s functions/mass_storage.usb0 configs/c.1
- echo 1 > functions/mass_storage.usb0/lun.0/removable
- echo 1 > functions/mass_storage.usb0/lun.0/ro
- echo 0 > functions/mass_storage.usb0/lun.0/cdrom
- echo $nbd_device > functions/mass_storage.usb0/lun.0/file
- echo "f0831000.udc" > UDC
- )
- ;;
-stop)
- (
- cd $gadget_dir
- rm configs/c.1/mass_storage.usb0
- rmdir functions/mass_storage.usb0
- rmdir configs/c.1/strings/0x409
- rmdir configs/c.1
- rmdir strings/0x409
- )
- rmdir $gadget_dir
- ;;
-*)
- echo "invalid action $action" >&2
- exit 1
-esac
-
-exit 0
-
diff --git a/meta-phosphor/dynamic-layers/nuvoton-layer/recipes-connectivity/jsnbd/jsnbd_git.bbappend b/meta-phosphor/dynamic-layers/nuvoton-layer/recipes-connectivity/jsnbd/jsnbd_git.bbappend
deleted file mode 100644
index 92a7948912..0000000000
--- a/meta-phosphor/dynamic-layers/nuvoton-layer/recipes-connectivity/jsnbd/jsnbd_git.bbappend
+++ /dev/null
@@ -1,10 +0,0 @@
-FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
-
-SRC_URI += "file://state_hook"
-
-do_install:append() {
- install -d ${D}${sysconfdir}/nbd-proxy/
- install -m 0755 ${WORKDIR}/state_hook ${D}${sysconfdir}/nbd-proxy/state
-}
-
-FILES:${PN} += "${sysconfdir}/nbd-proxy/state"
diff --git a/meta-phosphor/dynamic-layers/aspeed-layer/recipes-connectivity/jsnbd/jsnbd/state_hook b/meta-phosphor/recipes-connectivity/jsnbd/jsnbd/state_hook
index 3f5a974b95..3f5a974b95 100755
--- a/meta-phosphor/dynamic-layers/aspeed-layer/recipes-connectivity/jsnbd/jsnbd/state_hook
+++ b/meta-phosphor/recipes-connectivity/jsnbd/jsnbd/state_hook
diff --git a/meta-phosphor/recipes-connectivity/jsnbd/jsnbd_git.bb b/meta-phosphor/recipes-connectivity/jsnbd/jsnbd_git.bb
index 4b6cd331d4..6a119dd689 100644
--- a/meta-phosphor/recipes-connectivity/jsnbd/jsnbd_git.bb
+++ b/meta-phosphor/recipes-connectivity/jsnbd/jsnbd_git.bb
@@ -8,7 +8,10 @@ SRCREV = "3ebe3dadd3f550d20080c8bb14dee113e322eb61"
PV = "1.0+git${SRCPV}"
PR = "r1"
-SRC_URI = "git://github.com/openbmc/jsnbd;branch=master;protocol=https"
+SRC_URI = "\
+ git://github.com/openbmc/jsnbd;branch=master;protocol=https \
+ file://state_hook \
+ "
S = "${WORKDIR}/git"
@@ -17,8 +20,11 @@ inherit autotools pkgconfig
do_install:append() {
install -d ${D}${sysconfdir}/nbd-proxy/
install -m 0644 ${NBD_PROXY_CONFIG_JSON} ${D}${sysconfdir}/nbd-proxy/config.json
+ install -m 0755 ${WORKDIR}/state_hook ${D}${sysconfdir}/nbd-proxy/state
}
+FILES:${PN} += "${sysconfdir}/nbd-proxy/state"
+
RDEPENDS:${PN} += "nbd-client"
NBD_PROXY_CONFIG_JSON ??= "${S}/config.sample.json"