[oe-commits] org.oe.dev usb-gadget-mode: Add usb-gadget mode: An initscript to load the configured USB gadget module on boot
coredump2 commit
openembedded-commits at lists.openembedded.org
Wed Jun 6 02:36:26 UTC 2007
usb-gadget-mode: Add usb-gadget mode: An initscript to load the configured USB gadget module on boot
Author: coredump2 at openembedded.org
Branch: org.openembedded.dev
Revision: da6e5b8733a112119c2bcd9b9f52a53c8c93bfb0
ViewMTN: http://monotone.openembedded.org/revision.psp?id=da6e5b8733a112119c2bcd9b9f52a53c8c93bfb0
Files:
1
packages/usb-gadget-mode
packages/usb-gadget-mode/files
packages/usb-gadget-mode/files/spitz
packages/usb-gadget-mode/files/usb-gadget
packages/usb-gadget-mode/files/usb-gadget.conf
packages/usb-gadget-mode/files/usb-gadget.init
packages/usb-gadget-mode/usb-gadget-mode.bb
mtn:execute
true
Diffs:
#
# mt diff -r97c4ef5cfbf2467127242eaa4771e4b2a118f3c3 -rda6e5b8733a112119c2bcd9b9f52a53c8c93bfb0
#
#
#
# add_dir "packages/usb-gadget-mode"
#
# add_dir "packages/usb-gadget-mode/files"
#
# add_dir "packages/usb-gadget-mode/files/spitz"
#
# add_file "packages/usb-gadget-mode/files/usb-gadget"
# content [7f14fd72c68ffb0234fae442ec23e3c3da33ea22]
#
# add_file "packages/usb-gadget-mode/files/usb-gadget.conf"
# content [2f7775ebb80daba6db4c45962c93be8894677b0d]
#
# add_file "packages/usb-gadget-mode/files/usb-gadget.init"
# content [770c68a8d0a17e10081e34e4347deed46e839973]
#
# add_file "packages/usb-gadget-mode/usb-gadget-mode.bb"
# content [80bdef91c64dbdba86bcd174c2a2f4ad927d5ba3]
#
# set "packages/usb-gadget-mode/files/usb-gadget"
# attr "mtn:execute"
# value "true"
#
# set "packages/usb-gadget-mode/files/usb-gadget.init"
# attr "mtn:execute"
# value "true"
#
============================================================
--- packages/usb-gadget-mode/files/usb-gadget 7f14fd72c68ffb0234fae442ec23e3c3da33ea22
+++ packages/usb-gadget-mode/files/usb-gadget 7f14fd72c68ffb0234fae442ec23e3c3da33ea22
@@ -0,0 +1,59 @@
+#! /bin/sh
+#
+# Copyright Matthias Hentges <devel at hentges.net> (c) 2007
+# License: GPL (see http://www.gnu.org/licenses/gpl.txt for a copy of the license)
+#
+# Filename: usb-gadget
+# Date: 20070606 (YMD)
+#
+#################################################################################
+#
+# 20070606 - v0.0.1 - Initial release
+
+CONF_FILE="/etc/usb-gadget.conf"
+
+die() {
+ echo "ERROR: $1"
+ exit 1
+}
+
+go() {
+ test -e "$CONF_FILE" && . "$CONF_FILE"
+
+ case "$USB_MODE" in
+ networking) setup_usb g_ether "$MODULE_OPTIONS" ;;
+ storage) setup_usb g_file_storage "$MODULE_OPTIONS" ;;
+ none) unload_usb_gadgets ;;
+ esac
+
+}
+
+setup_usb() {
+
+ if ! ( lsmod | grep -q "$1" )
+ then
+ unload_usb_gadgets
+ echo "Loading [$1]"
+ modprobe "$1" "$MODULE_OPTIONS"
+ else
+ echo "Already loaded: [$1]"
+ fi
+}
+
+unload_usb_gadgets() {
+ KERNEL_VERSION="`uname -r`"
+ GADGET_MODULES="`find /lib/modules/$KERNEL_VERSION/kernel/drivers/usb/gadget -name "*g_*"`"
+
+ for module in $GADGET_MODULES
+ do
+ MODULE_NAME="`basename $module | sed "s/\.ko//"`"
+
+ if ( lsmod | grep -q "$MODULE_NAME" )
+ then
+ echo "Unloading [$MODULE_NAME]"
+ rmmod "$module"
+ fi
+ done
+}
+
+go
============================================================
--- packages/usb-gadget-mode/files/usb-gadget.conf 2f7775ebb80daba6db4c45962c93be8894677b0d
+++ packages/usb-gadget-mode/files/usb-gadget.conf 2f7775ebb80daba6db4c45962c93be8894677b0d
@@ -0,0 +1,3 @@
+USB_MODE=""
+MODULE_OPTIONS=""
+
============================================================
--- packages/usb-gadget-mode/files/usb-gadget.init 770c68a8d0a17e10081e34e4347deed46e839973
+++ packages/usb-gadget-mode/files/usb-gadget.init 770c68a8d0a17e10081e34e4347deed46e839973
@@ -0,0 +1,16 @@
+#! /bin/sh
+#
+# Copyright Matthias Hentges <devel at hentges.net> (c) 2007
+# License: GPL (see http://www.gnu.org/licenses/gpl.txt for a copy of the license)
+#
+# Filename: usb-gadget.init
+# Date: 20070606 (YMD)
+#
+#################################################################################
+#
+# 20070606 - v0.0.1 - Initial release
+
+case "$1" in
+start) usb-gadget ;;
+esac
+
============================================================
--- packages/usb-gadget-mode/usb-gadget-mode.bb 80bdef91c64dbdba86bcd174c2a2f4ad927d5ba3
+++ packages/usb-gadget-mode/usb-gadget-mode.bb 80bdef91c64dbdba86bcd174c2a2f4ad927d5ba3
@@ -0,0 +1,50 @@
+#! /bin/sh
+#
+# Copyright Matthias Hentges <devel at hentges.net> (c) 2007
+# License: MIT (see http://www.opensource.org/licenses/mit-license.php
+# for a copy of the license)
+#
+# Filename: usb-gadget-mode.bb
+# Date: 20070606 (YMD)
+
+DESCRIPTION = "Manage the default USB gadget mode"
+MAINTAINER = "Matthias 'CoreDump' Hentges <oe at hentges.net>"
+HOMEPAGE = "<homepage>"
+LICENSE = "GPL"
+
+######################################################################################
+
+PV = "0.0.1"
+PR = "r0"
+
+######################################################################################
+
+PACKAGE_ARCH = "${MACHINE}"
+
+######################################################################################
+
+SRC_URI = "file://usb-gadget.conf \
+ file://usb-gadget \
+ file://usb-gadget.init"
+
+######################################################################################
+
+do_install() {
+ install -d ${D}/etc
+ install -d ${D}/etc/init.d
+ install -d ${D}/usr/bin
+
+ install -m 0644 ${WORKDIR}/usb-gadget.conf ${D}/etc
+ install -m 0755 ${WORKDIR}/usb-gadget.init ${D}/etc/init.d/usb-gadget
+ install -m 0755 ${WORKDIR}/usb-gadget ${D}/usr/bin
+}
+
+pkg_postinst() {
+
+ test -n "$D" && opt="-r $D"
+ update-rc.d $opt usb-gadget defaults 50
+}
+
+pkg_postrm() {
+ update-rc.d -f usb-gadget remove
+}
More information about the Openembedded-commits
mailing list