Gentoo Archives: gentoo-commits

From: "Mike Frysinger (vapier)" <vapier@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in sys-apps/usbutils/files: usbmodules.sh
Date: Mon, 04 Feb 2008 22:35:06
Message-Id: E1JM9u0-00079c-JR@stork.gentoo.org
1 vapier 08/02/04 22:35:00
2
3 Added: usbmodules.sh
4 Log:
5 Add helper script "usbmodules" like "pcimodules".
6 (Portage version: 2.1.4.1)
7
8 Revision Changes Path
9 1.1 sys-apps/usbutils/files/usbmodules.sh
10
11 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-apps/usbutils/files/usbmodules.sh?rev=1.1&view=markup
12 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-apps/usbutils/files/usbmodules.sh?rev=1.1&content-type=text/plain
13
14 Index: usbmodules.sh
15 ===================================================================
16 #!/bin/sh
17
18 usage() {
19 cat <<-EOF
20 List relevant kernel modules for USB devices currently plugged in. The
21 module list is taken from the modules installed in /lib/modules/<ver>/.
22
23 Usage: usbmodules [options] [kernel version]
24
25 Options:
26 -m, --map <map> Specify usbmap (default: /lib/modules/<ver>/modules.usbmap)
27 -h, --help This help screen
28 EOF
29 if [ -n "$*" ] ; then
30 echo
31 echo "Error: $*" 1>&2
32 exit 1
33 else
34 exit 0
35 fi
36 }
37
38 map=""
39
40 while [ -n "$1" ] ; do
41 case $1 in
42 -m|--map) map=$2; shift;;
43 -h|--help) usage;;
44 --) break;;
45 -*) usage "unknown option '$1'";;
46 *) break;;
47 esac
48 shift
49 done
50
51 ver=${1:-$(uname -r)}
52 map=${map:-/lib/modules/${ver}/modules.usbmap}
53
54 for dev in $(lsusb | awk '{print $6}') ; do
55 [ "${dev}" = "0000:0000" ] && continue
56
57 IFS=:
58 set -- ${dev}
59 vendor=$1
60 product=$2
61 unset IFS
62
63 awk \
64 -v vendor="0x${vendor}" \
65 -v product="0x${product}" \
66 'vendor == $3 && product == $4 {print $1}' \
67 ${map}
68 done
69
70 exit 0
71
72
73
74 --
75 gentoo-commits@l.g.o mailing list