diff --git a/recipes-ti/beagleboard/gadget-init.bb b/recipes-ti/beagleboard/gadget-init.bb index f3300e19..cedb9e82 100644 --- a/recipes-ti/beagleboard/gadget-init.bb +++ b/recipes-ti/beagleboard/gadget-init.bb @@ -1,5 +1,7 @@ DESCRIPTION = "Units to initialize usb gadgets" +PR = "r2" + LICENSE = "MIT" LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58" @@ -7,7 +9,8 @@ COMPATIBLE_MACHINE = "(ti33x)" PACKAGE_ARCH = "${MACHINE_ARCH}" SRC_URI = "file://storage-gadget-init.service \ - file://hokey-pokey.service \ + file://99-hokey-pokey.rules \ + file://hokey-pokey.sh \ " do_install() { @@ -17,6 +20,13 @@ do_install() { install -m 0644 $i ${D}${base_libdir}/systemd/system ln -sf ../$(basename $i) ${D}${base_libdir}/systemd/system/basic.target.wants/ done + + install -d ${D}${sysconfdir}/udev/rules.d + install -m 0644 ${WORKDIR}/*.rules ${D}${sysconfdir}/udev/rules.d + + install -d ${D}${bindir} + install -m 0755 ${WORKDIR}/*.sh ${D}${bindir} + } -FILES_${PN} = "${base_libdir}/systemd" +FILES_${PN} = "${base_libdir}/systemd ${sysconfdir} ${bindir}" diff --git a/recipes-ti/beagleboard/gadget-init/99-hokey-pokey.rules b/recipes-ti/beagleboard/gadget-init/99-hokey-pokey.rules new file mode 100644 index 00000000..bb3c8d34 --- /dev/null +++ b/recipes-ti/beagleboard/gadget-init/99-hokey-pokey.rules @@ -0,0 +1,2 @@ +ACTION=="remove", DEVPATH=="/devices/platform/omap/ti81xx-usbss/musb-hdrc.1/usb1/1-1", RUN+="/usr/bin/hokey-pokey.sh" + diff --git a/recipes-ti/beagleboard/gadget-init/hokey-pokey.service b/recipes-ti/beagleboard/gadget-init/hokey-pokey.service deleted file mode 100644 index dfe06892..00000000 --- a/recipes-ti/beagleboard/gadget-init/hokey-pokey.service +++ /dev/null @@ -1,9 +0,0 @@ -[Unit] -Description=Hokey Pokey modprobe dance to get the USB host port working -After=storage-gadget-init.service - -[Service] -ExecStart=/sbin/modprobe g_zero - -[Install] -WantedBy=basic.target diff --git a/recipes-ti/beagleboard/gadget-init/hokey-pokey.sh b/recipes-ti/beagleboard/gadget-init/hokey-pokey.sh new file mode 100755 index 00000000..2139eb02 --- /dev/null +++ b/recipes-ti/beagleboard/gadget-init/hokey-pokey.sh @@ -0,0 +1,7 @@ +#!/bin/sh + +sleep 1 +echo F > /proc/driver/musb_hdrc.1 +sleep 1 +echo F > /proc/driver/musb_hdrc.1 + diff --git a/recipes-ti/beagleboard/gadget-init/storage-gadget-init.service b/recipes-ti/beagleboard/gadget-init/storage-gadget-init.service index 2fe48e15..764db62d 100644 --- a/recipes-ti/beagleboard/gadget-init/storage-gadget-init.service +++ b/recipes-ti/beagleboard/gadget-init/storage-gadget-init.service @@ -3,6 +3,7 @@ Description=Start usb mass storage gadget After=dev-mmcblk0p1.device [Service] +ExecStartPre=/sbin/modprobe g_zero ExecStart=/sbin/modprobe g_mass_storage file=/dev/mmcblk0p1 cdrom=0 stall=0 removable=1 nofua=1 [Install]