diff options
author | Richard Purdie <richard@openedhand.com> | 2006-07-21 10:10:31 +0000 |
---|---|---|
committer | Richard Purdie <richard@openedhand.com> | 2006-07-21 10:10:31 +0000 |
commit | b2f192faabe412adce79534e22efe9fb69ee40e2 (patch) | |
tree | 7076c49d4286f8a1733650bd8fbc7161af200d57 /meta/packages/linux-hotplug | |
parent | 2cf0eadf9f730027833af802d7e6c90b44248f80 (diff) | |
download | openembedded-core-b2f192faabe412adce79534e22efe9fb69ee40e2.tar.gz openembedded-core-b2f192faabe412adce79534e22efe9fb69ee40e2.tar.bz2 openembedded-core-b2f192faabe412adce79534e22efe9fb69ee40e2.tar.xz openembedded-core-b2f192faabe412adce79534e22efe9fb69ee40e2.zip |
Rename /openembedded/ -> /meta/
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@530 311d38ba-8fff-0310-9ca6-ca027cbcb966
Diffstat (limited to 'meta/packages/linux-hotplug')
19 files changed, 638 insertions, 0 deletions
diff --git a/meta/packages/linux-hotplug/files/collie/usbd b/meta/packages/linux-hotplug/files/collie/usbd new file mode 100644 index 000000000..38aff0adc --- /dev/null +++ b/meta/packages/linux-hotplug/files/collie/usbd @@ -0,0 +1 @@ +usbdmodule="sa1100_bi" diff --git a/meta/packages/linux-hotplug/files/mmc.agent b/meta/packages/linux-hotplug/files/mmc.agent new file mode 100755 index 000000000..a80daa460 --- /dev/null +++ b/meta/packages/linux-hotplug/files/mmc.agent @@ -0,0 +1,52 @@ +#!/bin/sh +# +# H3600 Sleeve hotplug policy agent for Linux 2.4 kernels +# +# Kernel NET hotplug params include: +# +# ACTION=%s [add or remove] +# MEDIA=%s +# SLOT=%d +# + +. /etc/hotplug/hotplug.functions +#DEBUG=yes export DEBUG + + echo "Executing $0 action=$ACTION, media=$MEDIA ($SLOT)" > /dev/console + +MMC_MOUNT_OPTIONS="-t auto -o sync,noatime" + +if [ -f /etc/sysconfig/hotplug ] ; then + . /etc/sysconfig/hotplug +fi + +case `uname -r` in +2.4*) + devpath=mmc/part + ;; +*) + devpath=mmcblk0p + ;; +esac + +if [ "$ACTION" = "add" ] ; then + sleep 4 + echo -n add > /dev/console + for n in 1 2 3 4 ; do + device=/dev/$devpath$n + if [ "$n" = "1" ] ; then + card=/mnt/card + else + card=/mnt/card$n + fi + [ -b $device ] || break + echo " flash on $device" > /dev/console + [ -d $card ] || mkdir -p $card + mount $MMC_MOUNT_OPTIONS $device $card + done + +else + for card in /mnt/card*; do + umount $card + done +fi diff --git a/meta/packages/linux-hotplug/files/sleeve.agent b/meta/packages/linux-hotplug/files/sleeve.agent new file mode 100755 index 000000000..55befca1b --- /dev/null +++ b/meta/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/meta/packages/linux-hotplug/files/sleeve.rc b/meta/packages/linux-hotplug/files/sleeve.rc new file mode 100755 index 000000000..864a2eb18 --- /dev/null +++ b/meta/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/meta/packages/linux-hotplug/files/soc.agent b/meta/packages/linux-hotplug/files/soc.agent new file mode 100644 index 000000000..e91246196 --- /dev/null +++ b/meta/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/meta/packages/linux-hotplug/files/sysconfig-hotplug b/meta/packages/linux-hotplug/files/sysconfig-hotplug new file mode 100644 index 000000000..7ee5a20c3 --- /dev/null +++ b/meta/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/meta/packages/linux-hotplug/files/sysconfig-usb b/meta/packages/linux-hotplug/files/sysconfig-usb new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/meta/packages/linux-hotplug/files/sysconfig-usb diff --git a/meta/packages/linux-hotplug/files/tosa/sysconfig-usb b/meta/packages/linux-hotplug/files/tosa/sysconfig-usb new file mode 100644 index 000000000..cbd18c656 --- /dev/null +++ b/meta/packages/linux-hotplug/files/tosa/sysconfig-usb @@ -0,0 +1,2 @@ +## Specify the USB host controller driver +HCD="usb_ohci_tc6393" diff --git a/meta/packages/linux-hotplug/files/usbd b/meta/packages/linux-hotplug/files/usbd new file mode 100644 index 000000000..aa4e6d2de --- /dev/null +++ b/meta/packages/linux-hotplug/files/usbd @@ -0,0 +1,2 @@ +usbdmodule="" + diff --git a/meta/packages/linux-hotplug/files/usbd.agent b/meta/packages/linux-hotplug/files/usbd.agent new file mode 100755 index 000000000..6613b4810 --- /dev/null +++ b/meta/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/meta/packages/linux-hotplug/linux-hotplug-20040920/fix-net.agent b/meta/packages/linux-hotplug/linux-hotplug-20040920/fix-net.agent new file mode 100644 index 000000000..3bc093501 --- /dev/null +++ b/meta/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/meta/packages/linux-hotplug/linux-hotplug-20040920/hotplug-net-agent-usb.patch b/meta/packages/linux-hotplug/linux-hotplug-20040920/hotplug-net-agent-usb.patch new file mode 100644 index 000000000..a64fc50d2 --- /dev/null +++ b/meta/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/meta/packages/linux-hotplug/linux-hotplug-20040920/isapnp-exit.diff b/meta/packages/linux-hotplug/linux-hotplug-20040920/isapnp-exit.diff new file mode 100644 index 000000000..e5a9ab10a --- /dev/null +++ b/meta/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/meta/packages/linux-hotplug/linux-hotplug-20040920/logcheck-ignore b/meta/packages/linux-hotplug/linux-hotplug-20040920/logcheck-ignore new file mode 100644 index 000000000..b94135304 --- /dev/null +++ b/meta/packages/linux-hotplug/linux-hotplug-20040920/logcheck-ignore @@ -0,0 +1 @@ +net.agent: invoke if(up|down) diff --git a/meta/packages/linux-hotplug/linux-hotplug-20040920/update-usb.usermap b/meta/packages/linux-hotplug/linux-hotplug-20040920/update-usb.usermap new file mode 100755 index 000000000..d09e1176e --- /dev/null +++ b/meta/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/meta/packages/linux-hotplug/linux-hotplug-20040920/usb-storage b/meta/packages/linux-hotplug/linux-hotplug-20040920/usb-storage new file mode 100644 index 000000000..138790a36 --- /dev/null +++ b/meta/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/meta/packages/linux-hotplug/linux-hotplug-20040920/usbrc-busybox.patch b/meta/packages/linux-hotplug/linux-hotplug-20040920/usbrc-busybox.patch new file mode 100644 index 000000000..35f43dc52 --- /dev/null +++ b/meta/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/meta/packages/linux-hotplug/linux-hotplug-20040920/userspecified_hcd.patch b/meta/packages/linux-hotplug/linux-hotplug-20040920/userspecified_hcd.patch new file mode 100644 index 000000000..c2ceeb686 --- /dev/null +++ b/meta/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 diff --git a/meta/packages/linux-hotplug/linux-hotplug_20040920.bb b/meta/packages/linux-hotplug/linux-hotplug_20040920.bb new file mode 100644 index 000000000..c6bcbb66e --- /dev/null +++ b/meta/packages/linux-hotplug/linux-hotplug_20040920.bb @@ -0,0 +1,73 @@ +DESCRIPTION = "This package contains the scripts necessary \ +for hotplug Linux support, and lets you plug in new devices \ +and use them immediately." +HOMEPAGE = "http://linux-hotplug.sourceforge.net/" +LICENSE = "GPL" +RPROVIDES_${PN} = "hotplug" +RCONFLICTS_${PN} = "hotplug" +RREPLACES_${PN} = "hotplug" +SECTION = "base" +RSUGGESTS = "pciutils usbutils" +PR = "r8" + +SRC_URI = "ftp://ftp.kernel.org/pub/linux/utils/kernel/hotplug/hotplug-2004_09_20.tar.gz \ + file://userspecified_hcd.patch;patch=1 \ + file://hotplug-net-agent-usb.patch;patch=1 \ + file://usbrc-busybox.patch;patch=1 \ + file://fix-net.agent \ + file://update-usb.usermap \ + file://logcheck-ignore \ + file://sleeve.agent \ + file://sleeve.rc \ + file://mmc.agent \ + file://usbd.agent \ + file://usbd \ + file://sysconfig-hotplug \ + file://sysconfig-usb \ + file://isapnp-exit.diff;patch=1 \ + file://usb-storage \ + file://soc.agent" + +SRC_URI_append_openzaurus = " file://quiet-pci.patch;patch=1" + +S = "${WORKDIR}/hotplug-2004_09_20" + +INITSCRIPT_NAME = "hotplug" +INITSCRIPT_PARAMS = "start 40 S . stop 89 0 6 ." + +inherit update-rc.d + +do_compile () { + : +} + +oldmandir := "${mandir}" +oldsbindir := "${sbindir}" +prefix = "" +exec_prefix = "" +FILES_${PN} += "${oldsbindir}" +FILES_${PN}-doc += "${oldmandir}" + +export DEBFIX = "sed -e 's:sysconfig/usb:default/hotplug.usb:'" +do_install () { + install -d ${D}${sysconfdir}/logcheck/ignore.d + install -d ${D}${oldmandir} + install -d ${D}${oldsbindir} + #install -d ${D}${sysconfdir}/default + oe_runmake prefix=${D}${prefix} exec_prefix=${D}${exec_prefix} \ + etcdir=${D}${sysconfdir} sbindir=${D}${sbindir} \ + mandir=${D}${oldmandir} INSTALL=install install + sh ${WORKDIR}/fix-net.agent ${D} || : + install -m 0755 ${WORKDIR}/update-usb.usermap ${D}${oldsbindir}/ + install -m 0644 ${WORKDIR}/logcheck-ignore ${D}${sysconfdir}/logcheck/ignore.d/hotplug + install -m 0755 ${WORKDIR}/sleeve.agent ${D}${sysconfdir}/hotplug/ + install -m 0755 ${WORKDIR}/sleeve.rc ${D}${sysconfdir}/hotplug/ + install -m 0755 ${WORKDIR}/mmc.agent ${D}${sysconfdir}/hotplug/ + install -m 0755 ${WORKDIR}/usbd.agent ${D}${sysconfdir}/hotplug/ + install -m 0755 ${WORKDIR}/soc.agent ${D}${sysconfdir}/hotplug/ + #install -m 0755 ${WORKDIR}/usbd ${D}${sysconfdir}/default/usbd + install -d ${D}${sysconfdir}/sysconfig + install -m 0644 ${WORKDIR}/sysconfig-hotplug ${D}${sysconfdir}/sysconfig/hotplug + install -m 0644 ${WORKDIR}/sysconfig-usb ${D}${sysconfdir}/sysconfig/usb + install -m 0755 ${WORKDIR}/usb-storage ${D}${sysconfdir}/hotplug/usb +} |