From 709c4d66e0b107ca606941b988bad717c0b45d9b Mon Sep 17 00:00:00 2001 From: Denys Dmytriyenko Date: Tue, 17 Mar 2009 14:32:59 -0400 Subject: rename packages/ to recipes/ per earlier agreement See links below for more details: http://thread.gmane.org/gmane.comp.handhelds.openembedded/21326 http://thread.gmane.org/gmane.comp.handhelds.openembedded/21816 Signed-off-by: Denys Dmytriyenko Acked-by: Mike Westerhof Acked-by: Philip Balister Acked-by: Khem Raj Acked-by: Marcin Juszkiewicz Acked-by: Koen Kooi Acked-by: Frans Meulenbroeks --- recipes/linux-hotplug/files/collie/usbd | 1 + recipes/linux-hotplug/files/mmc.agent | 52 +++++++++ recipes/linux-hotplug/files/sleeve.agent | 120 +++++++++++++++++++++ recipes/linux-hotplug/files/sleeve.rc | 60 +++++++++++ recipes/linux-hotplug/files/soc.agent | 62 +++++++++++ recipes/linux-hotplug/files/sysconfig-hotplug | 12 +++ recipes/linux-hotplug/files/sysconfig-usb | 0 recipes/linux-hotplug/files/tosa/sysconfig-usb | 2 + recipes/linux-hotplug/files/usbd | 2 + recipes/linux-hotplug/files/usbd.agent | 63 +++++++++++ .../linux-hotplug-20040329/busybox.patch | 13 +++ .../linux-hotplug-20040329/fix-net.agent | 29 +++++ .../linux-hotplug-20040329/logcheck-ignore | 1 + .../linux-hotplug-20040329/update-usb.usermap | 37 +++++++ .../linux-hotplug-20040920/dash.patch | 17 +++ .../linux-hotplug-20040920/fix-net.agent | 29 +++++ .../hotplug-net-agent-usb.patch | 43 ++++++++ .../linux-hotplug-20040920/isapnp-exit.diff | 11 ++ .../linux-hotplug-20040920/logcheck-ignore | 1 + .../linux-hotplug-20040920/quiet-pci.patch | 11 ++ .../linux-hotplug-20040920/update-usb.usermap | 37 +++++++ .../linux-hotplug-20040920/usb-storage | 2 + .../linux-hotplug-20040920/usbrc-busybox.patch | 13 +++ .../linux-hotplug-20040920/userspecified_hcd.patch | 55 ++++++++++ recipes/linux-hotplug/linux-hotplug_20040329.bb | 50 +++++++++ recipes/linux-hotplug/linux-hotplug_20040920.bb | 74 +++++++++++++ 26 files changed, 797 insertions(+) create mode 100644 recipes/linux-hotplug/files/collie/usbd create mode 100755 recipes/linux-hotplug/files/mmc.agent create mode 100755 recipes/linux-hotplug/files/sleeve.agent create mode 100755 recipes/linux-hotplug/files/sleeve.rc create mode 100644 recipes/linux-hotplug/files/soc.agent create mode 100644 recipes/linux-hotplug/files/sysconfig-hotplug create mode 100644 recipes/linux-hotplug/files/sysconfig-usb create mode 100644 recipes/linux-hotplug/files/tosa/sysconfig-usb create mode 100644 recipes/linux-hotplug/files/usbd create mode 100755 recipes/linux-hotplug/files/usbd.agent create mode 100644 recipes/linux-hotplug/linux-hotplug-20040329/busybox.patch create mode 100644 recipes/linux-hotplug/linux-hotplug-20040329/fix-net.agent create mode 100644 recipes/linux-hotplug/linux-hotplug-20040329/logcheck-ignore create mode 100755 recipes/linux-hotplug/linux-hotplug-20040329/update-usb.usermap create mode 100644 recipes/linux-hotplug/linux-hotplug-20040920/dash.patch create mode 100644 recipes/linux-hotplug/linux-hotplug-20040920/fix-net.agent create mode 100644 recipes/linux-hotplug/linux-hotplug-20040920/hotplug-net-agent-usb.patch create mode 100644 recipes/linux-hotplug/linux-hotplug-20040920/isapnp-exit.diff create mode 100644 recipes/linux-hotplug/linux-hotplug-20040920/logcheck-ignore create mode 100644 recipes/linux-hotplug/linux-hotplug-20040920/quiet-pci.patch create mode 100755 recipes/linux-hotplug/linux-hotplug-20040920/update-usb.usermap create mode 100644 recipes/linux-hotplug/linux-hotplug-20040920/usb-storage create mode 100644 recipes/linux-hotplug/linux-hotplug-20040920/usbrc-busybox.patch create mode 100644 recipes/linux-hotplug/linux-hotplug-20040920/userspecified_hcd.patch create mode 100644 recipes/linux-hotplug/linux-hotplug_20040329.bb create mode 100644 recipes/linux-hotplug/linux-hotplug_20040920.bb (limited to 'recipes/linux-hotplug') diff --git a/recipes/linux-hotplug/files/collie/usbd b/recipes/linux-hotplug/files/collie/usbd new file mode 100644 index 0000000000..38aff0adcb --- /dev/null +++ b/recipes/linux-hotplug/files/collie/usbd @@ -0,0 +1 @@ +usbdmodule="sa1100_bi" diff --git a/recipes/linux-hotplug/files/mmc.agent b/recipes/linux-hotplug/files/mmc.agent new file mode 100755 index 0000000000..a80daa4603 --- /dev/null +++ b/recipes/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/recipes/linux-hotplug/files/sleeve.agent b/recipes/linux-hotplug/files/sleeve.agent new file mode 100755 index 0000000000..55befca1b1 --- /dev/null +++ b/recipes/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/recipes/linux-hotplug/files/sleeve.rc b/recipes/linux-hotplug/files/sleeve.rc new file mode 100755 index 0000000000..864a2eb182 --- /dev/null +++ b/recipes/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/recipes/linux-hotplug/files/soc.agent b/recipes/linux-hotplug/files/soc.agent new file mode 100644 index 0000000000..e91246196f --- /dev/null +++ b/recipes/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/recipes/linux-hotplug/files/sysconfig-hotplug b/recipes/linux-hotplug/files/sysconfig-hotplug new file mode 100644 index 0000000000..7ee5a20c31 --- /dev/null +++ b/recipes/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/recipes/linux-hotplug/files/sysconfig-usb b/recipes/linux-hotplug/files/sysconfig-usb new file mode 100644 index 0000000000..e69de29bb2 diff --git a/recipes/linux-hotplug/files/tosa/sysconfig-usb b/recipes/linux-hotplug/files/tosa/sysconfig-usb new file mode 100644 index 0000000000..cbd18c6566 --- /dev/null +++ b/recipes/linux-hotplug/files/tosa/sysconfig-usb @@ -0,0 +1,2 @@ +## Specify the USB host controller driver +HCD="usb_ohci_tc6393" diff --git a/recipes/linux-hotplug/files/usbd b/recipes/linux-hotplug/files/usbd new file mode 100644 index 0000000000..aa4e6d2de7 --- /dev/null +++ b/recipes/linux-hotplug/files/usbd @@ -0,0 +1,2 @@ +usbdmodule="" + diff --git a/recipes/linux-hotplug/files/usbd.agent b/recipes/linux-hotplug/files/usbd.agent new file mode 100755 index 0000000000..6613b4810a --- /dev/null +++ b/recipes/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/recipes/linux-hotplug/linux-hotplug-20040329/busybox.patch b/recipes/linux-hotplug/linux-hotplug-20040329/busybox.patch new file mode 100644 index 0000000000..7a90f246a5 --- /dev/null +++ b/recipes/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/recipes/linux-hotplug/linux-hotplug-20040329/fix-net.agent b/recipes/linux-hotplug/linux-hotplug-20040329/fix-net.agent new file mode 100644 index 0000000000..3bc0935018 --- /dev/null +++ b/recipes/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/recipes/linux-hotplug/linux-hotplug-20040329/logcheck-ignore b/recipes/linux-hotplug/linux-hotplug-20040329/logcheck-ignore new file mode 100644 index 0000000000..b941353041 --- /dev/null +++ b/recipes/linux-hotplug/linux-hotplug-20040329/logcheck-ignore @@ -0,0 +1 @@ +net.agent: invoke if(up|down) diff --git a/recipes/linux-hotplug/linux-hotplug-20040329/update-usb.usermap b/recipes/linux-hotplug/linux-hotplug-20040329/update-usb.usermap new file mode 100755 index 0000000000..d09e1176ec --- /dev/null +++ b/recipes/linux-hotplug/linux-hotplug-20040329/update-usb.usermap @@ -0,0 +1,37 @@ +#!/bin/sh -e +# update-usb.usermap +# Copyright (c) 2001 Fumitoshi UKAI +# 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/recipes/linux-hotplug/linux-hotplug-20040920/dash.patch b/recipes/linux-hotplug/linux-hotplug-20040920/dash.patch new file mode 100644 index 0000000000..161671f2e2 --- /dev/null +++ b/recipes/linux-hotplug/linux-hotplug-20040920/dash.patch @@ -0,0 +1,17 @@ +Index: hotplug-2004_09_20/Makefile +=================================================================== +--- hotplug-2004_09_20.orig/Makefile 2006-11-29 17:01:16.000000000 +0100 ++++ hotplug-2004_09_20/Makefile 2006-11-29 17:04:39.000000000 +0100 +@@ -86,10 +86,10 @@ + ${INSTALL_SCRIPT} -D sbin/hotplug $(sbindir)/hotplug + $(INSTALL) -d $(etcdir)/hotplug/{usb,pci} + $(INSTALL) -D etc/hotplug.d/default/default.hotplug $(etcdir)/hotplug.d/default/default.hotplug +- for F in etc/hotplug/{*.{agent,rc},hotplug.functions} ; do \ ++ for F in etc/hotplug/*.agent etc/hotplug/*.rc etc/hotplug/hotplug.functions ; do \ + ${INSTALL_SCRIPT} $$F $(etcdir)/hotplug ; \ + done +- for F in etc/hotplug/{blacklist,usb.{user,hand,dist}map} ; do \ ++ for F in etc/hotplug/blacklist etc/hotplug/usb.*map ; do \ + ${INSTALL_DATA} $$F $(etcdir)/hotplug ; \ + done + ${INSTALL_SCRIPT} -D etc/rc.d/init.d/hotplug $(etcdir)/init.d/hotplug diff --git a/recipes/linux-hotplug/linux-hotplug-20040920/fix-net.agent b/recipes/linux-hotplug/linux-hotplug-20040920/fix-net.agent new file mode 100644 index 0000000000..3bc0935018 --- /dev/null +++ b/recipes/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/recipes/linux-hotplug/linux-hotplug-20040920/hotplug-net-agent-usb.patch b/recipes/linux-hotplug/linux-hotplug-20040920/hotplug-net-agent-usb.patch new file mode 100644 index 0000000000..a64fc50d2b --- /dev/null +++ b/recipes/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/recipes/linux-hotplug/linux-hotplug-20040920/isapnp-exit.diff b/recipes/linux-hotplug/linux-hotplug-20040920/isapnp-exit.diff new file mode 100644 index 0000000000..e5a9ab10af --- /dev/null +++ b/recipes/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/recipes/linux-hotplug/linux-hotplug-20040920/logcheck-ignore b/recipes/linux-hotplug/linux-hotplug-20040920/logcheck-ignore new file mode 100644 index 0000000000..b941353041 --- /dev/null +++ b/recipes/linux-hotplug/linux-hotplug-20040920/logcheck-ignore @@ -0,0 +1 @@ +net.agent: invoke if(up|down) diff --git a/recipes/linux-hotplug/linux-hotplug-20040920/quiet-pci.patch b/recipes/linux-hotplug/linux-hotplug-20040920/quiet-pci.patch new file mode 100644 index 0000000000..5b4d169a2a --- /dev/null +++ b/recipes/linux-hotplug/linux-hotplug-20040920/quiet-pci.patch @@ -0,0 +1,11 @@ +--- hotplug-2004_09_20/etc/hotplug/pci.rc.orig 2006-01-14 16:15:34.000000000 +0100 ++++ hotplug-2004_09_20/etc/hotplug/pci.rc 2006-01-14 16:16:19.000000000 +0100 +@@ -45,7 +45,7 @@ + # 2.4 kernels + LISTER=`which pcimodules` + if [ "$LISTER" = "" ] || [ ! -f /proc/bus/pci/devices ] || [ ! -x pci.agent ]; then +- echo $"** can't synthesize pci hotplug events" ++ # echo $"** can't synthesize pci hotplug events" + return 1 + fi + diff --git a/recipes/linux-hotplug/linux-hotplug-20040920/update-usb.usermap b/recipes/linux-hotplug/linux-hotplug-20040920/update-usb.usermap new file mode 100755 index 0000000000..d09e1176ec --- /dev/null +++ b/recipes/linux-hotplug/linux-hotplug-20040920/update-usb.usermap @@ -0,0 +1,37 @@ +#!/bin/sh -e +# update-usb.usermap +# Copyright (c) 2001 Fumitoshi UKAI +# 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/recipes/linux-hotplug/linux-hotplug-20040920/usb-storage b/recipes/linux-hotplug/linux-hotplug-20040920/usb-storage new file mode 100644 index 0000000000..138790a367 --- /dev/null +++ b/recipes/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/recipes/linux-hotplug/linux-hotplug-20040920/usbrc-busybox.patch b/recipes/linux-hotplug/linux-hotplug-20040920/usbrc-busybox.patch new file mode 100644 index 0000000000..35f43dc52b --- /dev/null +++ b/recipes/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/recipes/linux-hotplug/linux-hotplug-20040920/userspecified_hcd.patch b/recipes/linux-hotplug/linux-hotplug-20040920/userspecified_hcd.patch new file mode 100644 index 0000000000..c2ceeb686e --- /dev/null +++ b/recipes/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/recipes/linux-hotplug/linux-hotplug_20040329.bb b/recipes/linux-hotplug/linux-hotplug_20040329.bb new file mode 100644 index 0000000000..80d6eca339 --- /dev/null +++ b/recipes/linux-hotplug/linux-hotplug_20040329.bb @@ -0,0 +1,50 @@ +SECTION = "base" +DESCRIPTION = "This package contains the scripts necessary \ +for hotplug Linux support, and lets you plug in new devices \ +and use them immediately." +LICENSE = "GPL" +RPROVIDES_${PN} = "hotplug" +RCONFLICTS_${PN} = "hotplug" +RREPLACES_${PN} = "hotplug" +PR = "r1" + +SRC_URI = "${KERNELORG_MIRROR}/pub/linux/utils/kernel/hotplug/hotplug-2004_03_29.tar.gz \ + file://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" +S = "${WORKDIR}/hotplug-2004_03_29" + +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_hotplug_append = " ${oldsbindir}" +FILES_hotplug-doc_append = " ${oldmandir}" + +export DEBFIX = "sed -e 's:sysconfig/usb:default/hotplug.usb:'" +do_install () { + install -d ${D}${sysconfdir}/logcheck/ignore.d \ + ${D}${oldmandir} ${D}${oldsbindir} + oe_runmake prefix=${D}${prefix} exec_prefix=${D}${exec_prefix} \ + etcdir=${D}${sysconfdir} sbindir=${D}${sbindir} \ + mandir=${D}${oldmandir} 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/ +} diff --git a/recipes/linux-hotplug/linux-hotplug_20040920.bb b/recipes/linux-hotplug/linux-hotplug_20040920.bb new file mode 100644 index 0000000000..6209504c20 --- /dev/null +++ b/recipes/linux-hotplug/linux-hotplug_20040920.bb @@ -0,0 +1,74 @@ +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 = "r9" + +SRC_URI = "${KERNELORG_MIRROR}/pub/linux/utils/kernel/hotplug/hotplug-2004_09_20.tar.gz \ + file://dash.patch;patch=1 \ + 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 +} -- cgit 1.2.3-korg