diff options
author | Richard Purdie <rpurdie@rpsys.net> | 2006-04-04 09:08:48 +0000 |
---|---|---|
committer | OpenEmbedded Project <openembedded-devel@lists.openembedded.org> | 2006-04-04 09:08:48 +0000 |
commit | 6ce3ce8860572954d283d4ec66364875d66a6d9c (patch) | |
tree | 298bfd67d7fed7eb14373ab2c114e65b4bdb9e65 | |
parent | e7931fb2e81889bdd492d3ec3f9617ac402d260b (diff) |
udev 084: Fixes from Olivier Berger to get usb symlinking and modprobing working correctly. Also move the RTC rule to local.rules (where all our custom rules should be).
-rw-r--r-- | packages/udev/files/local.rules | 17 | ||||
-rw-r--r-- | packages/udev/files/udev.rules | 2 | ||||
-rw-r--r-- | packages/udev/udev-084/local.rules | 28 | ||||
-rw-r--r-- | packages/udev/udev-084/udev.rules | 5 | ||||
-rw-r--r-- | packages/udev/udev_084.bb | 2 |
5 files changed, 48 insertions, 6 deletions
diff --git a/packages/udev/files/local.rules b/packages/udev/files/local.rules index 4bcaaa8aba..5f2efbeb0c 100644 --- a/packages/udev/files/local.rules +++ b/packages/udev/files/local.rules @@ -1,5 +1,22 @@ +# There are a number of modifiers that are allowed to be used in some +# of the different fields. They provide the following subsitutions: +# +# %n the "kernel number" of the device. +# For example, 'sda3' has a "kernel number" of '3' +# %e the smallest number for that name which does not matches an existing node +# %k the kernel name for the device +# %M the kernel major number for the device +# %m the kernel minor number for the device +# %b the bus id for the device +# %c the string returned by the PROGRAM +# %s{filename} the content of a sysfs attribute +# %% the '%' char itself +# + +# Media automounting SUBSYSTEM=="block", ACTION=="add" RUN+="/etc/udev/scripts/mount.sh" SUBSYSTEM=="block", ACTION=="remove" RUN+="/etc/udev/scripts/mount.sh" +# Handle network interface setup SUBSYSTEM=="net", ACTION=="add" RUN+="/etc/udev/scripts/network.sh" SUBSYSTEM=="net", ACTION=="remove" RUN+="/etc/udev/scripts/network.sh" diff --git a/packages/udev/files/udev.rules b/packages/udev/files/udev.rules index 044ababa7f..5c566f6cef 100644 --- a/packages/udev/files/udev.rules +++ b/packages/udev/files/udev.rules @@ -28,7 +28,7 @@ BUS=="usb", KERNEL=="ttyUSB*", SYSFS{product}=="Palm Handheld*", \ # usbfs-like devices SUBSYSTEM=="usb_device", \ - PROGRAM="/bin/sh -c 'X=%k X=$${X#usbdev} B=$${X%%%%.*} D=$${X#*.}; echo bus/usb/$$B/$$D'", SYMLINK+="%c" + PROGRAM="/bin/sh -c 'export X=%k; export X=$${X#usbdev}; export B=$${X%%%%.*}; export D=$${X#*.}; echo bus/usb/$$B/$$D'", SYMLINK+="%c" # serial devices KERNEL=="capi", NAME="capi20", SYMLINK+="isdn/capi20" diff --git a/packages/udev/udev-084/local.rules b/packages/udev/udev-084/local.rules new file mode 100644 index 0000000000..bb8459ba23 --- /dev/null +++ b/packages/udev/udev-084/local.rules @@ -0,0 +1,28 @@ +# There are a number of modifiers that are allowed to be used in some +# of the different fields. They provide the following subsitutions: +# +# %n the "kernel number" of the device. +# For example, 'sda3' has a "kernel number" of '3' +# %e the smallest number for that name which does not matches an existing node +# %k the kernel name for the device +# %M the kernel major number for the device +# %m the kernel minor number for the device +# %b the bus id for the device +# %c the string returned by the PROGRAM +# %s{filename} the content of a sysfs attribute +# %% the '%' char itself +# + +# Media automounting +SUBSYSTEM=="block", ACTION=="add" RUN+="/etc/udev/scripts/mount.sh" +SUBSYSTEM=="block", ACTION=="remove" RUN+="/etc/udev/scripts/mount.sh" + +# Handle network interface setup +SUBSYSTEM=="net", ACTION=="add" RUN+="/etc/udev/scripts/network.sh" +SUBSYSTEM=="net", ACTION=="remove" RUN+="/etc/udev/scripts/network.sh" + +# The first rtc device is symlinked to /dev/rtc +KERNEL="rtc0", SYMLINK="rtc" + +# Try and modprobe for drivers for new hardware +ACTION="add", DEVPATH="/devices/*", MODALIAS=="?*", RUN+="/sbin/modprobe $modalias" diff --git a/packages/udev/udev-084/udev.rules b/packages/udev/udev-084/udev.rules index 098b16bc4f..7b4152c5bf 100644 --- a/packages/udev/udev-084/udev.rules +++ b/packages/udev/udev-084/udev.rules @@ -28,7 +28,7 @@ BUS=="usb", KERNEL=="ttyUSB*", SYSFS{product}=="Palm Handheld*", \ # usbfs-like devices SUBSYSTEM=="usb_device", \ - PROGRAM="/bin/sh -c 'X=%k X=$${X#usbdev} B=$${X%%%%.*} D=$${X#*.}; echo bus/usb/$$B/$$D'", SYMLINK+="%c" + PROGRAM="/bin/sh -c 'export X=%k; export X=$${X#usbdev}; export B=$${X%%%%.*}; export D=$${X#*.}; echo bus/usb/$$B/$$D'", SYMLINK+="%c" # serial devices KERNEL=="capi", NAME="capi20", SYMLINK+="isdn/capi20" @@ -96,6 +96,3 @@ KERNEL="rfcomm[0-9]*", NAME="%k", GROUP="users", MODE="0660" # Firmware Helper ACTION=="add", SUBSYSTEM=="firmware", RUN+="/lib/udev/firmware_helper" - -# on ARM we get /dev/rtc0 but many apps need /dev/rtc -KERNEL=="rtc0" NAME="rtc0" SYMLINK="rtc" diff --git a/packages/udev/udev_084.bb b/packages/udev/udev_084.bb index e1db0ccd79..6bafa615d7 100644 --- a/packages/udev/udev_084.bb +++ b/packages/udev/udev_084.bb @@ -13,7 +13,7 @@ include udev.inc INITSCRIPT_PARAMS = "start 03 S . start 55 0 6 ." -PR = "r2" +PR = "r3" FILES_${PN} += "${base_libdir}" UDEV_EXTRAS = "extras/firmware/ extras/scsi_id/ extras/volume_id/ extras/run_directory/" |