diff options
Diffstat (limited to 'packages/linux-hotplug')
27 files changed, 593 insertions, 0 deletions
diff --git a/packages/linux-hotplug/.mtn2git_empty b/packages/linux-hotplug/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/linux-hotplug/.mtn2git_empty diff --git a/packages/linux-hotplug/files/.mtn2git_empty b/packages/linux-hotplug/files/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/linux-hotplug/files/.mtn2git_empty diff --git a/packages/linux-hotplug/files/collie/.mtn2git_empty b/packages/linux-hotplug/files/collie/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/linux-hotplug/files/collie/.mtn2git_empty diff --git a/packages/linux-hotplug/files/collie/usbd b/packages/linux-hotplug/files/collie/usbd index e69de29bb2..38aff0adcb 100644 --- a/packages/linux-hotplug/files/collie/usbd +++ b/packages/linux-hotplug/files/collie/usbd @@ -0,0 +1 @@ +usbdmodule="sa1100_bi" diff --git a/packages/linux-hotplug/files/mmc.agent b/packages/linux-hotplug/files/mmc.agent index 3b2050d7eb..3b2050d7eb 100644..100755 --- a/packages/linux-hotplug/files/mmc.agent +++ b/packages/linux-hotplug/files/mmc.agent diff --git a/packages/linux-hotplug/files/sleeve.agent b/packages/linux-hotplug/files/sleeve.agent index e69de29bb2..55befca1b1 100644..100755 --- a/packages/linux-hotplug/files/sleeve.agent +++ b/packages/linux-hotplug/files/sleeve.agent @@ -0,0 +1,120 @@ +#!/bin/sh +# +# H3600 Sleeve hotplug policy agent for Linux 2.4 kernels +# +# Kernel NET hotplug params include: +# +# ACTION=%s [add or remove] +# VENDOR_ID=%s +# DEVICE_ID=%x +# DEVICE_NAME=%s +# + +. /etc/hotplug/hotplug.functions +#DEBUG=yes export DEBUG + +if [ "$DEBUG" != "" ]; then + mesg "Executing $0 action=$ACTION, device=$DEVICE_NAME ($VENDOR_ID,$DEVICE_ID)" +fi + +COMPACTFLASH_TIMING_INCREMENT=0 +PCMCIA_TIMING_INCREMENT=0 +DUAL_PCMCIA_TIMING_INCREMENT=0 +NAVMAN_TIMING_INCREMENT=0 +BACKPAQ_TIMING_INCREMENT=-100 + +if [ -f /etc/sysconfig/hotplug ] ; then + . /etc/sysconfig/hotplug +fi + +case $ACTION in +add) + case $DEVICE_NAME in + "Compaq Mercury Backpaq") + mkdir -p /backpaq + echo $BACKPAQ_TIMING_INCREMENT > /proc/sys/backpaq/pcmcia/timing_increment_ns + ## mount -t jffs2 /dev/mtdblock/4 /backpaq + modprobe h3600_backpaq_fpga || mesg 'could not load backpaq fpga driver' + modprobe h3600_backpaq_camera || mesg 'could not load backpaq camera driver' + if [ -c /dev/v4l/video0 ] ; then + ln -s /dev/v4l/video0 /dev/video0 + ln -s /dev/v4l/video0 /dev/video + fi + CAMERATYPE=`/bin/grep "CameraType" /proc/backpaq/camera | /bin/sed -e 's/.*: //'` + BACKPAQ_NUMBER=`/bin/grep "Major revision" /proc/backpaq/eeprom | /bin/sed -e 's/.*0x//'` + FPGA_NUMBER=`/bin/grep "FPGA version" /proc/backpaq/eeprom | /bin/sed -e 's/.*0x//'` + CAMERA_NUMBER=`/bin/grep "Camera" /proc/backpaq/eeprom | /bin/sed -e 's/.*0x//'` + + echo "CAMERA_TYPE = $CAMERATYPE" + echo "BACKPAQ_NUMBER = $BACKPAQ_NUMBER" + echo "FPGA_NUMBER = $FPGA_NUMBER" + echo "CAMERA_NUMBER = $CAMERA_NUMBER" + echo "looking for file: /etc/fpga_B${BACKPAQ_NUMBER}_F${FPGA_NUMBER}_C${CAMERA_NUMBER}.bin" + if [ -e /etc/fpga_B${BACKPAQ_NUMBER}_F${FPGA_NUMBER}_C${CAMERA_NUMBER}.bin ] ; then + cat /etc/fpga_B${BACKPAQ_NUMBER}_F${FPGA_NUMBER}_C${CAMERA_NUMBER}.bin > /dev/backpaq/fpga + elif [ -e /etc/fpga_$CAMERATYPE.bin ] ; then + cat /etc/fpga_$CAMERATYPE.bin > /dev/backpaq/fpga + elif [ -e /etc/fpga.bin ] ; then + cat /etc/fpga.bin > /dev/backpaq/fpga + else + mesg 'unable to program the backpaq fpga' + fi + modprobe h3600_backpaq_accel || mesg 'could not load backpaq accelerometer driver' + mesg 'BackPAQ drivers loaded' + ;; + "Compaq CompactFlash Sleeve") + mesg 'CompactFlash drivers loaded' + echo $COMPACTFLASH_TIMING_INCREMENT > /proc/sys/bus/pcmcia/timing_increment_ns + ;; + "Compaq PC Card Sleeve") + mesg 'PC card sleeve drivers loaded' + echo $PCMCIA_TIMING_INCREMENT > /proc/sys/bus/pcmcia/timing_increment_ns + ;; + "Compaq Dual PC Card Sleeve") + mesg 'Dual PC card sleeve drivers loaded' + echo $DUAL_PCMCIA_TIMING_INCREMENT > /proc/sys/bus/pcmcia/timing_increment_ns + ;; + "Navman GPS/CF Sleeve") + mesg 'Navman GPS sleeve drivers loaded' + echo $NAVMAN_TIMING_INCREMENT > /proc/sys/bus/pcmcia/timing_increment_ns + start-stop-daemon --start --exec /usr/sbin/gpsd.bin -- -p /dev/tts/0 -s 57600 + ;; + *) + mesg "$1 $ACTION event not handled for $DEVICE_NAME" + ;; + esac + ;; + +remove) + case $DEVICE_NAME in + "Compaq Mercury Backpaq") + mesg 'Unloading BackPAQ drivers' + ## umount /backpaq + rmmod h3600_backpaq_camera + rmmod h3600_backpaq_accel + rmmod h3600_backpaq_fpga + ;; + "Compaq CompactFlash Sleeve") + mesg 'Unloading CompactFlash sleeve' + ;; + "Compaq PC Card Sleeve") + mesg 'Unloading PC Card sleeve' + ;; + "Compaq Dual PC Card Sleeve") + mesg 'Unloading Dual PC Card sleeve' + ;; + "Navman GPS/CF Sleeve") + mesg 'Unloading Navman GPS sleeve' + start-stop-daemon --stop --name gpsd.bin + ;; + *) + mesg $1 $ACTION event not handled for $DEVICE_NAME + ;; + esac + ;; + +*) + mesg "$1 $ACTION event not supported" + exit 1 ;; + +esac diff --git a/packages/linux-hotplug/files/sleeve.rc b/packages/linux-hotplug/files/sleeve.rc index e69de29bb2..864a2eb182 100644..100755 --- a/packages/linux-hotplug/files/sleeve.rc +++ b/packages/linux-hotplug/files/sleeve.rc @@ -0,0 +1,60 @@ +#!/bin/sh +# +# H3600 Sleeve hotplug *.rc agent. +# This script is called by /etc/init.d/hotplug whenever +# a run level has changed. +# +# A single argument is passed - start, restart, status, or stop +# +# We set up parameters that are equivalent to the ones created +# by the Kernel and pass them along to /sbin/hotplug (the +# function called by the kernel). +# +# Kernel NET hotplug params include: +# +# ACTION=%s [add or remove] +# VENDOR_ID=%s +# DEVICE_ID=%x +# DEVICE_NAME=%s +# + +. /etc/hotplug/hotplug.functions +# DEBUG=yes export DEBUG + +SLEEVEFILE="/proc/bus/sleeve/device" +[ ! -f $SLEEVEFILE ] && exit 0 + +# give the sleeve driver a kick to make sure it recognizes the card -Jamey 6/26/01 +# echo > /proc/sys/sleeve/insert + +export DEVICE_NAME=`/bin/grep driver $SLEEVEFILE | /bin/sed -e 's/.*=//'` +export DEVICE_ID=`/bin/grep device $SLEEVEFILE | /bin/sed -e 's/.*=//'` +export VENDOR_ID=`/bin/grep vendor $SLEEVEFILE | /bin/sed -e 's/.*=//'` + +case "$1" in + start) + export ACTION="add" + /sbin/hotplug sleeve + ;; + stop) + export ACTION="remove" + /sbin/hotplug sleeve + ;; + restart) + export ACTION="remove" + /sbin/hotplug sleeve + export ACTION="add" + /sbin/hotplug sleeve + ;; + status) + if [ -f /var/lock/subsys/hotplug ]; then + mesg "Hot plug sleeve has been started, current device $DEVICE_NAME" + else + mesg "Hot plug sleeve has not been started, current device $DEVICE_NAME" + fi + ;; + *) + mesg "Usage: $0 {start|stop|status|restart}" + ;; +esac + diff --git a/packages/linux-hotplug/files/soc.agent b/packages/linux-hotplug/files/soc.agent index e69de29bb2..e91246196f 100644 --- a/packages/linux-hotplug/files/soc.agent +++ b/packages/linux-hotplug/files/soc.agent @@ -0,0 +1,62 @@ +#!/bin/sh +# +# SoC hotplug agent for 2.6 kernels +# +# ACTION=add +# SOC_ID=1234 +# + +cd /etc/hotplug +. ./hotplug.functions + +MAP_CURRENT=$MODULE_DIR/modules.socmap + +# +# stdin is "modules.socmap" syntax +# on return, all matching modules were added to $DRIVERS +# +soc_map_modules () +{ + while read line + do + # comments are lines that start with "#" ... + # be careful, they still get parsed by bash! + case "$line" in + \#*) continue ;; + esac + + set $line + + module="$1" + id="$2" + + if [ "$id" != "0x$SOC_ID" ]; then + continue + fi + + # It was a match! + case " $DRIVERS " in + *" $module "* ) + : already found + ;; + * ) + DRIVERS="$module $DRIVERS" + ;; + esac + : drivers $DRIVERS + done +} + +case $ACTION in + +add) + + load_drivers soc $MAP_CURRENT "$SOC_ID" + ;; + +*) + debug_mesg SoC $ACTION event not supported + exit 1 + ;; + +esac diff --git a/packages/linux-hotplug/files/sysconfig-hotplug b/packages/linux-hotplug/files/sysconfig-hotplug index e69de29bb2..7ee5a20c31 100644 --- a/packages/linux-hotplug/files/sysconfig-hotplug +++ b/packages/linux-hotplug/files/sysconfig-hotplug @@ -0,0 +1,12 @@ +## +## Each of these may be assigned to the number of nanoseconds by which to +## increase the timing of pcmcia bus transactions +## +# COMPACTFLASH_TIMING_INCREMENT=0 +## the single pcmcia sleeve seems to be a bit slow, but 25ns makes my +## orinoco card detectable. -Jamey 4/2/2002 +PCMCIA_TIMING_INCREMENT=25 +# DUAL_PCMCIA_TIMING_INCREMENT=0 + +## mount options used by MMC +MMC_MOUNT_OPTIONS="-t auto -o sync,noatime" diff --git a/packages/linux-hotplug/files/tosa/.mtn2git_empty b/packages/linux-hotplug/files/tosa/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/linux-hotplug/files/tosa/.mtn2git_empty diff --git a/packages/linux-hotplug/files/tosa/sysconfig-usb b/packages/linux-hotplug/files/tosa/sysconfig-usb index e69de29bb2..cbd18c6566 100644 --- a/packages/linux-hotplug/files/tosa/sysconfig-usb +++ b/packages/linux-hotplug/files/tosa/sysconfig-usb @@ -0,0 +1,2 @@ +## Specify the USB host controller driver +HCD="usb_ohci_tc6393" diff --git a/packages/linux-hotplug/files/usbd b/packages/linux-hotplug/files/usbd index e69de29bb2..aa4e6d2de7 100644 --- a/packages/linux-hotplug/files/usbd +++ b/packages/linux-hotplug/files/usbd @@ -0,0 +1,2 @@ +usbdmodule="" + diff --git a/packages/linux-hotplug/files/usbd.agent b/packages/linux-hotplug/files/usbd.agent index e69de29bb2..6613b4810a 100644..100755 --- a/packages/linux-hotplug/files/usbd.agent +++ b/packages/linux-hotplug/files/usbd.agent @@ -0,0 +1,63 @@ +#!/bin/ash + +# DEBUG=yes export DEBUG +#set -x + +. /etc/hotplug/hotplug.functions +. /etc/default/usbd +cd $HOTPLUG_DIR + +[ -z "$INTERFACE" ] && exit 1 +[ -z "$ACTION" ] && exit 1 +[ -z "$usbdmodule" ] && exit 0 + +debug_mesg "USBD $ACTION Action Recived" + +case $INTERFACE in + +monitor) + case $ACTION in + # called to load all usb device modules + load) + modprobe usbdcore + modprobe net_fd + modprobe $usbdmodule + ;; + + # called to handle suspend power management event + suspend) + rmmod $usbdmodule + ;; + + # called to reload after resume power management event + restore-loaded) + modprobe $usbdmodule + sleep 2 + ;; + + # called to unload after resume power management event + restore-unloaded) + modprobe -r net_fd + ;; + + # called to unload all usb device modules + unload) + modprobe -r $usbdmodule + ;; + + *) + debug_mesg USBD $ACTION event not handled + exit 1 + ;; + esac + ;; +*) + debug_mesg USBD $INTERFACE-$ACTION event not handled + exit 1 + ;; +esac + +[ -e /proc/usb-monitor ] && echo "Done" > /proc/usb-monitor + +exit 0 + diff --git a/packages/linux-hotplug/linux-hotplug-20040329/.mtn2git_empty b/packages/linux-hotplug/linux-hotplug-20040329/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/linux-hotplug/linux-hotplug-20040329/.mtn2git_empty diff --git a/packages/linux-hotplug/linux-hotplug-20040329/busybox.patch b/packages/linux-hotplug/linux-hotplug-20040329/busybox.patch index e69de29bb2..7a90f246a5 100644 --- a/packages/linux-hotplug/linux-hotplug-20040329/busybox.patch +++ b/packages/linux-hotplug/linux-hotplug-20040329/busybox.patch @@ -0,0 +1,13 @@ + +# +# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher +# + +--- hotplug-2004_03_29/etc/hotplug.d/default/default.hotplug~busybox 2004-03-26 23:34:34.000000000 +0100 ++++ hotplug-2004_03_29/etc/hotplug.d/default/default.hotplug 2004-06-18 23:33:22.000000000 +0200 +@@ -1,4 +1,4 @@ +-#!/bin/bash ++#!/bin/sh + # + # This version of /sbin/hotplug should works on most GNU/Linux systems + # using Linux 2.2.18+ or 2.4.* kernels. On 2.2.*, only USB has such diff --git a/packages/linux-hotplug/linux-hotplug-20040329/fix-net.agent b/packages/linux-hotplug/linux-hotplug-20040329/fix-net.agent index e69de29bb2..3bc0935018 100644 --- a/packages/linux-hotplug/linux-hotplug-20040329/fix-net.agent +++ b/packages/linux-hotplug/linux-hotplug-20040329/fix-net.agent @@ -0,0 +1,29 @@ +#!/bin/sh -e +# +# Since ifupdown of Debian is different than one of RedHat. +# So we need to fix it + +topdir=$1 +dir=$topdir/etc/hotplug +test -f $dir/net.agent || exit 1 +mv $dir/net.agent $dir/net.agent.orig + +sed -e '/^\*)/i\ +unregister)\ + # Assume that we want to run ifdown no matter what, \ + # because it is not going to remove the data from the \ + # ifstate database otherwise.\ + if [ -x /sbin/ifdown ]; then\ + debug_mesg invoke ifdown $INTERFACE\ + exec /sbin/ifdown $INTERFACE\ + else\ + # mesg "how do I bring interfaces up on this distro?"\ + mesg "E: /sbin/ifdown not found. You need to install ifupdown package"\ + fi\ + mesg $1 $ACTION event not handled\ + ;;\ +' $dir/net.agent.orig > $dir/net.agent +rm -f $dir/net.agent.orig +chmod 755 $dir/net.agent +exit 0 + diff --git a/packages/linux-hotplug/linux-hotplug-20040329/logcheck-ignore b/packages/linux-hotplug/linux-hotplug-20040329/logcheck-ignore index e69de29bb2..b941353041 100644 --- a/packages/linux-hotplug/linux-hotplug-20040329/logcheck-ignore +++ b/packages/linux-hotplug/linux-hotplug-20040329/logcheck-ignore @@ -0,0 +1 @@ +net.agent: invoke if(up|down) diff --git a/packages/linux-hotplug/linux-hotplug-20040329/update-usb.usermap b/packages/linux-hotplug/linux-hotplug-20040329/update-usb.usermap index e69de29bb2..d09e1176ec 100644..100755 --- a/packages/linux-hotplug/linux-hotplug-20040329/update-usb.usermap +++ b/packages/linux-hotplug/linux-hotplug-20040329/update-usb.usermap @@ -0,0 +1,37 @@ +#!/bin/sh -e +# update-usb.usermap +# Copyright (c) 2001 Fumitoshi UKAI <ukai@debian.or.jp> +# GPL + +LIBDIR=/usr/lib/hotplug +USERMAP=/etc/hotplug/usb.usermap +LOCALMAP=/etc/hotplug/usb.usermap.local + +test -d $LIBDIR || exit 0 + +echo -n "Updating $USERMAP ..." + +echo "# usb.usermap file" > $USERMAP +echo "# This is autogenerated by update-usb.usermap program" >> $USERMAP +echo "# usb module match_flags idVendor idProduct bcdDevice_lo bcdDevice_hi bDeviceClass bDeviceSubClass bDeviceProtocol bInterfaceClass bInterfaceSubClass bInterfaceProtocol driver_info" >> $USERMAP + +if [ -f $LOCALMAP ]; then + echo "# usb.usermap.local" >> $USERMAP + cat $LOCALMAP >> $USERMAP +fi + +cd $LIBDIR +for package in * +do + if [ -d "$package" ]; then + map=$package/usb.usermap + echo "# $package" >> $USERMAP + if [ -x "$map" ]; then + ./$map >> $USERMAP + elif [ -f "$map" ]; then + cat $map >> $USERMAP + fi + fi +done + +echo done. diff --git a/packages/linux-hotplug/linux-hotplug-20040920/.mtn2git_empty b/packages/linux-hotplug/linux-hotplug-20040920/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/linux-hotplug/linux-hotplug-20040920/.mtn2git_empty diff --git a/packages/linux-hotplug/linux-hotplug-20040920/fix-net.agent b/packages/linux-hotplug/linux-hotplug-20040920/fix-net.agent index e69de29bb2..3bc0935018 100644 --- a/packages/linux-hotplug/linux-hotplug-20040920/fix-net.agent +++ b/packages/linux-hotplug/linux-hotplug-20040920/fix-net.agent @@ -0,0 +1,29 @@ +#!/bin/sh -e +# +# Since ifupdown of Debian is different than one of RedHat. +# So we need to fix it + +topdir=$1 +dir=$topdir/etc/hotplug +test -f $dir/net.agent || exit 1 +mv $dir/net.agent $dir/net.agent.orig + +sed -e '/^\*)/i\ +unregister)\ + # Assume that we want to run ifdown no matter what, \ + # because it is not going to remove the data from the \ + # ifstate database otherwise.\ + if [ -x /sbin/ifdown ]; then\ + debug_mesg invoke ifdown $INTERFACE\ + exec /sbin/ifdown $INTERFACE\ + else\ + # mesg "how do I bring interfaces up on this distro?"\ + mesg "E: /sbin/ifdown not found. You need to install ifupdown package"\ + fi\ + mesg $1 $ACTION event not handled\ + ;;\ +' $dir/net.agent.orig > $dir/net.agent +rm -f $dir/net.agent.orig +chmod 755 $dir/net.agent +exit 0 + diff --git a/packages/linux-hotplug/linux-hotplug-20040920/hotplug-net-agent-usb.patch b/packages/linux-hotplug/linux-hotplug-20040920/hotplug-net-agent-usb.patch index e69de29bb2..a64fc50d2b 100644 --- a/packages/linux-hotplug/linux-hotplug-20040920/hotplug-net-agent-usb.patch +++ b/packages/linux-hotplug/linux-hotplug-20040920/hotplug-net-agent-usb.patch @@ -0,0 +1,43 @@ +--- hotplug/etc/hotplug/net.agent 2005-01-13 21:12:47.143597392 +1300 ++++ hotplug/etc/hotplug/net.agent 2005-01-13 21:17:57.095477544 +1300 +@@ -41,6 +41,9 @@ + debug_mesg assuming $INTERFACE is already up + exit 0 + ;; ++ # interfaces that don't go up until attached ++ usbf) ++ ;; + # interfaces that are registered then brought up + *) + # NOTE: network configuration relies on administered state, +@@ -83,6 +86,13 @@ + mesg $1 $ACTION event not handled + ;; + ++attach) ++ # ifupdown is dumb and won't bring up an interface that it thinks ++ # might already be configured. ++ /sbin/ifdown $INTERFACE ++ exec /sbin/ifup $INTERFACE ++ ;; ++ + remove|unregister) + case $INTERFACE in + # interfaces that are unregistered after being "down" (?) +@@ -105,6 +115,16 @@ + mesg $1 $ACTION event not handled + ;; + ++detach) ++ if [ -x /sbin/ifdown ]; then ++ debug_mesg invoke ifdown $INTERFACE ++ exec /sbin/ifdown $INTERFACE ++ else ++ mesg "E: /sbin/ifdown not found. You need to install ifupdown package" ++ fi ++ mesg $1 $ACTION event not handled ++ ;; ++ + *) + debug_mesg NET $ACTION event for $INTERFACE not supported + exit 1 ;; diff --git a/packages/linux-hotplug/linux-hotplug-20040920/isapnp-exit.diff b/packages/linux-hotplug/linux-hotplug-20040920/isapnp-exit.diff index e69de29bb2..e5a9ab10af 100644 --- a/packages/linux-hotplug/linux-hotplug-20040920/isapnp-exit.diff +++ b/packages/linux-hotplug/linux-hotplug-20040920/isapnp-exit.diff @@ -0,0 +1,11 @@ +--- hotplug-2004_09_20/etc/hotplug/isapnp.rc.orig 2004-12-20 15:01:21.541446000 +0100 ++++ hotplug-2004_09_20/etc/hotplug/isapnp.rc 2004-12-20 15:01:32.625760928 +0100 +@@ -13,7 +13,7 @@ + # + + # only 2.6 kernels are supported +-[ -d /sys/bus/pnp/devices/ ] || return 0 ++[ -d /sys/bus/pnp/devices/ ] || exit 0 + + cd /etc/hotplug + . ./hotplug.functions diff --git a/packages/linux-hotplug/linux-hotplug-20040920/logcheck-ignore b/packages/linux-hotplug/linux-hotplug-20040920/logcheck-ignore index e69de29bb2..b941353041 100644 --- a/packages/linux-hotplug/linux-hotplug-20040920/logcheck-ignore +++ b/packages/linux-hotplug/linux-hotplug-20040920/logcheck-ignore @@ -0,0 +1 @@ +net.agent: invoke if(up|down) diff --git a/packages/linux-hotplug/linux-hotplug-20040920/update-usb.usermap b/packages/linux-hotplug/linux-hotplug-20040920/update-usb.usermap index e69de29bb2..d09e1176ec 100644..100755 --- a/packages/linux-hotplug/linux-hotplug-20040920/update-usb.usermap +++ b/packages/linux-hotplug/linux-hotplug-20040920/update-usb.usermap @@ -0,0 +1,37 @@ +#!/bin/sh -e +# update-usb.usermap +# Copyright (c) 2001 Fumitoshi UKAI <ukai@debian.or.jp> +# GPL + +LIBDIR=/usr/lib/hotplug +USERMAP=/etc/hotplug/usb.usermap +LOCALMAP=/etc/hotplug/usb.usermap.local + +test -d $LIBDIR || exit 0 + +echo -n "Updating $USERMAP ..." + +echo "# usb.usermap file" > $USERMAP +echo "# This is autogenerated by update-usb.usermap program" >> $USERMAP +echo "# usb module match_flags idVendor idProduct bcdDevice_lo bcdDevice_hi bDeviceClass bDeviceSubClass bDeviceProtocol bInterfaceClass bInterfaceSubClass bInterfaceProtocol driver_info" >> $USERMAP + +if [ -f $LOCALMAP ]; then + echo "# usb.usermap.local" >> $USERMAP + cat $LOCALMAP >> $USERMAP +fi + +cd $LIBDIR +for package in * +do + if [ -d "$package" ]; then + map=$package/usb.usermap + echo "# $package" >> $USERMAP + if [ -x "$map" ]; then + ./$map >> $USERMAP + elif [ -f "$map" ]; then + cat $map >> $USERMAP + fi + fi +done + +echo done. diff --git a/packages/linux-hotplug/linux-hotplug-20040920/usb-storage b/packages/linux-hotplug/linux-hotplug-20040920/usb-storage index e69de29bb2..138790a367 100644 --- a/packages/linux-hotplug/linux-hotplug-20040920/usb-storage +++ b/packages/linux-hotplug/linux-hotplug-20040920/usb-storage @@ -0,0 +1,2 @@ +#!/bin/sh +modprobe sd_mod
\ No newline at end of file diff --git a/packages/linux-hotplug/linux-hotplug-20040920/usbrc-busybox.patch b/packages/linux-hotplug/linux-hotplug-20040920/usbrc-busybox.patch index e69de29bb2..35f43dc52b 100644 --- a/packages/linux-hotplug/linux-hotplug-20040920/usbrc-busybox.patch +++ b/packages/linux-hotplug/linux-hotplug-20040920/usbrc-busybox.patch @@ -0,0 +1,13 @@ +--- hotplug/etc/hotplug/usb.rc.old 2005-05-25 15:50:11.000000000 +0100 ++++ hotplug/etc/hotplug/usb.rc 2005-05-25 15:50:59.000000000 +0100 +@@ -95,8 +95,8 @@ + PRODUCT="$(cat $devlink/../idVendor)/$(cat $devlink/../idProduct)/$(cat $devlink/../bcdDevice)" + if [ -f $devlink/../../devnum ] + then +- devbus=$( ( echo -n 000 ; cat $devlink/../../devnum ) | grep -o ...\$ ) +- devdev=$( ( echo -n 000 ; cat $devlink/../devnum ) | grep -o ...\$ ) ++ devbus=$( ( echo -n 000 ; cat $devlink/../../devnum ) | sed 's/.*\(...\)$/\1/' ) ++ devdev=$( ( echo -n 000 ; cat $devlink/../devnum ) | sed 's/.*\(...\)$/\1/' ) + DEVICE="/proc/bus/usb/$devbus/$devdev" + else + DEVICE= diff --git a/packages/linux-hotplug/linux-hotplug-20040920/userspecified_hcd.patch b/packages/linux-hotplug/linux-hotplug-20040920/userspecified_hcd.patch index e69de29bb2..c2ceeb686e 100644 --- a/packages/linux-hotplug/linux-hotplug-20040920/userspecified_hcd.patch +++ b/packages/linux-hotplug/linux-hotplug-20040920/userspecified_hcd.patch @@ -0,0 +1,55 @@ + +# +# Patch managed by http://www.holgerschurig.de/patcher.html +# + +--- hotplug-2004_09_20/etc/hotplug/usb.rc~userspecified_hcd.patch ++++ hotplug-2004_09_20/etc/hotplug/usb.rc +@@ -24,6 +24,7 @@ + unset I_WANT_A_BROKEN_PS + PS_PERSONALITY=linux + ++HCD= + STATIC_MODULE_LIST= + X11_USBMICE_HACK=false + +@@ -166,20 +167,25 @@ + # FIXME: some of this should be driven by PCI hotplugging, and have + # the blacklist control which uhci driver gets used (before 2.5). + +- # "new style" HCDs ... more common code +- modprobe -q ehci-hcd >/dev/null 2>&1 +- modprobe -q ohci-hcd >/dev/null 2>&1 +- modprobe -q uhci-hcd >/dev/null 2>&1 +- +- # "old style" HCDs ... more driver-specific bugs +- modprobe -q usb-ohci >/dev/null 2>&1 +- # NOTE: this prefers "uhci"; you may prefer "usb-uhci". +- # modprobe -q usb-uhci >/dev/null 2>&1 || modprobe -q uhci >/dev/null 2>&1 +- modprobe -q uhci >/dev/null 2>&1 || modprobe -q usb-uhci >/dev/null 2>&1 +- +- # ... add any non-PCI HCDS here. Examples include the +- # CRIS usb-host, Philips ISP-1161, Symlogic 811HS, and so on. +- # ohci-hcd can handle some non-pci variants. ++ # If the user specified which HCD they want, trust them. ++ if [ -n "$HCD" ]; then ++ modprobe -q $HCD >/dev/null 2>&1 ++ else ++ # "new style" HCDs ... more common code ++ modprobe -q ehci-hcd >/dev/null 2>&1 ++ modprobe -q ohci-hcd >/dev/null 2>&1 ++ modprobe -q uhci-hcd >/dev/null 2>&1 ++ ++ # "old style" HCDs ... more driver-specific bugs ++ modprobe -q usb-ohci >/dev/null 2>&1 ++ # NOTE: this prefers "uhci"; you may prefer "usb-uhci". ++ # modprobe -q usb-uhci >/dev/null 2>&1 || modprobe -q uhci >/dev/null 2>&1 ++ modprobe -q uhci >/dev/null 2>&1 || modprobe -q usb-uhci >/dev/null 2>&1 ++ ++ # ... add any non-PCI HCDS here. Examples include the ++ # CRIS usb-host, Philips ISP-1161, Symlogic 811HS, and so on. ++ # ohci-hcd can handle some non-pci variants. ++ fi + + if [ -d /proc/bus/usb ]; then + # If we see there are no busses, we "failed" and |