blob: ed3b959bfb885536d7797a3b74bb73fbfef0605d [file] [log] [blame]
#!/bin/sh
#
# udev This is a minimal non-LSB version of a UDEV startup script. It
# was derived by stripping down the udev-058 LSB version for use
# with buildroot on embedded hardware using Linux 2.6.34+ kernels.
#
# You may need to customize this for your system's resource limits
# (including startup time!) and administration. For example, if
# your early userspace has a custom initramfs or initrd you might
# need /dev much earlier; or without hotpluggable busses (like USB,
# PCMCIA, MMC/SD, and so on) your /dev might be static after boot.
#
# This script assumes your system boots right into the eventual root
# filesystem, and that init runs this udev script before any programs
# needing more device nodes than the bare-bones set -- /dev/console,
# /dev/zero, /dev/null -- that's needed to boot and run this script.
#
# Check for missing binaries
if [ -f /etc/ambarella.conf ]
then
. /etc/ambarella.conf
fi
UDEV_BIN=/lib/udev/udevd
UDEV_ADM=/usr/sbin/udevadm
UDEV_MAX_CHILDREN=4
test -x $UDEV_BIN || exit 5
# Check for config file and read it
UDEV_CONFIG=/etc/udev/udev.conf
test -r $UDEV_CONFIG || exit 6
. $UDEV_CONFIG
case "$1" in
start)
echo -n "Populating $SYS_BOARD_BSP using udev: "
echo -e '\000\000\000\000' > /proc/sys/kernel/hotplug
$UDEV_BIN --daemon --children-max=$UDEV_MAX_CHILDREN
if [ $? -eq 0 ]
then
$UDEV_ADM trigger --subsystem-nomatch=i2c* --type=subsystems --action=add
$UDEV_ADM trigger --subsystem-nomatch=i2c* --type=devices --action=add
$UDEV_ADM trigger --subsystem-match=i2c-* --type=devices --action=add
if [ $? -eq 0 ]
then
echo "Done"
else
echo "Failed"
fi
else
echo "Failed"
fi
;;
stop)
# Stop execution of events
$UDEV_ADM control --stop_exec_queue
killall udevd
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
;;
esac
exit 0