chiark / gitweb /
bump requirement to Linux kernel 2.6.32 and ARM 2.6.36
authorKay Sievers <kay.sievers@vrfy.org>
Thu, 5 May 2011 16:58:58 +0000 (18:58 +0200)
committerKay Sievers <kay.sievers@vrfy.org>
Thu, 5 May 2011 16:58:58 +0000 (18:58 +0200)
README
rules/misc/30-kernel-compat.rules

diff --git a/README b/README
index 34d1267430ddd56c4f0ae5780e6a355c5680a030..c2271e93347f0e877cff29191d16a930d61edd06 100644 (file)
--- a/README
+++ b/README
@@ -7,7 +7,7 @@ does not recommend replacing a distro's udev installation with the upstream
 version.
 
 The upstream udev project's set of default rules may require a most recent
-kernel release to work properly. This is currently version 2.6.31.
+kernel release to work properly. This is currently version 2.6.32.
 
 Tools and rules shipped by udev are not public API and may change at any time.
 Never call any private tool in /lib/udev from any external application; it might
@@ -16,8 +16,13 @@ by udevadm and libudev. Tools and rules in /lib/udev and the entire contents of
 the /dev/.udev directory are private to udev and do change whenever needed.
 
 Requirements:
-  - Version 2.6.27 of the Linux kernel with sysfs, procfs, signalfd, inotify,
-    unix domain sockets, networking and hotplug enabled:
+  - Version 2.6.32 of the Linux kernel with sysfs, procfs, signalfd, inotify,
+    unix domain sockets, networking and hotplug enabled
+
+  - ARM needs kernel version 2.6.36 or this patch:
+      http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=21d93e2e29722d7832f61cc56d73fb
+
+  - These options are needed:
       CONFIG_HOTPLUG=y
       CONFIG_UEVENT_HELPER_PATH=""
       CONFIG_NET=y
@@ -25,9 +30,11 @@ Requirements:
       CONFIG_SYSFS=y
       CONFIG_SYSFS_DEPRECATED*=n
       CONFIG_PROC_FS=y
-      CONFIG_TMPFS=y
       CONFIG_INOTIFY_USER=y
       CONFIG_SIGNALFD=y
+
+  - These options might be needed:
+      CONFIG_TMPFS=y
       CONFIG_TMPFS_POSIX_ACL=y (user ACLs for device nodes)
       CONFIG_BLK_DEV_BSG=y (SCSI devices)
 
@@ -45,7 +52,7 @@ Requirements:
     be mounted at /sys. No other locations are supported by a standard
     udev installation.
 
-  - The system must have the following group names resolvable at udev startup:
+  - The default rule sset requires the following group names resolvable at udev startup:
       disk, cdrom, floppy, tape, audio, video, lp, tty, dialout, and kmem.
     Especially in LDAP setups, it is required that getgrnam() be able to resolve
     these group names with only the rootfs mounted and while no network is
index 2a6a97c5f39d2686872416254e839ef11819d70d..7240f9b234739811c1364a4c084db1b52a291940 100644 (file)
 # do not edit this file, it will be overwritten on update
 
 # Rules to support older kernels, which migth miss functionality needed
-# for the recent udev version.
+# for the recent udev rules.
 #
 # This file is used and maintained by Gentoo.
 
-ACTION=="remove", GOTO="kernel_compat_end"
-
-#
-# sysfs timing rules
-#
-
-# needed for kernels <2.6.30
-SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", WAIT_FOR="descriptors"
-
-#
-# naming device rules
-#
-
-# dvb device naming
-# needed for kernels <2.6.29-rc1
-SUBSYSTEM=="dvb", ENV{DVB_ADAPTER_NUM}=="", PROGRAM="/bin/sh -c 'K=%k; K=$${K#dvb}; printf dvb/adapter%%i/%%s $${K%%%%.*} $${K#*.}'", NAME="%c", GROUP="video"
-
-# naming rules for kernels <2.6.31
-
-# alsa names
-KERNEL=="controlC[0-9]*",      NAME="snd/%k"
-KERNEL=="hwC[D0-9]*",          NAME="snd/%k"
-KERNEL=="pcmC[D0-9cp]*",       NAME="snd/%k"
-KERNEL=="midiC[D0-9]*",                NAME="snd/%k"
-KERNEL=="timer",               NAME="snd/%k"
-KERNEL=="seq",                 NAME="snd/%k"
-
-KERNEL=="mwave",               NAME="modems/mwave"
-
-KERNEL=="mouse*|mice|event*",  NAME="input/%k"
-KERNEL=="ts[0-9]*|uinput",     NAME="input/%k"
-KERNEL=="js[0-9]*",            NAME="input/%k"
-
-KERNEL=="card[0-9]*",          NAME="dri/%k"
-
-SUBSYSTEM=="dvb", ENV{DVB_ADAPTER_NUM}=="?*", NAME="dvb/adapter$env{DVB_ADAPTER_NUM}/$env{DVB_DEVICE_TYPE}$env{DVB_DEVICE_NUM}"
-
-# libusb device nodes
-SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", NAME="bus/usb/$env{BUSNUM}/$env{DEVNUM}"
-
-# printer
-SUBSYSTEM=="usb",              KERNEL=="lp*", NAME="usb/%k"
-
-# block
-KERNEL=="pktcdvd[0-9]*", NAME="pktcdvd/%k"
-KERNEL=="pktcdvd", NAME="pktcdvd/control"
-
-KERNEL=="rawctl", NAME="raw/rawctl"
-SUBSYSTEM=="raw", KERNEL=="raw[0-9]*", NAME="raw/%k"
-SUBSYSTEM=="bsg", NAME="bsg/%k"
-SUBSYSTEM=="aoe", NAME="etherd/%k"
-
-# network
-KERNEL=="tun",                 NAME="net/%k"
-
-# CPU
-KERNEL=="cpu[0-9]*",           NAME="cpu/%n/cpuid"
-KERNEL=="msr[0-9]*",           NAME="cpu/%n/msr"
-KERNEL=="microcode",           NAME="cpu/microcode", MODE="0600"
-
-# miscellaneous
-KERNEL=="auer[0-9]*",          NAME="usb/%k"
-KERNEL=="hw_random",           NAME="hwrng"
-KERNEL=="sxctl",               NAME="specialix_sxctl"
-KERNEL=="rioctl",              NAME="specialix_rioctl"
-KERNEL=="iowarrior[0-9]*",     NAME="usb/%k"
-KERNEL=="hiddev[0-9]*",                NAME="usb/%k"
-KERNEL=="legousbtower[0-9]*",  NAME="usb/%k"
-KERNEL=="dabusb[0-9]*",                NAME="usb/%k"
-KERNEL=="usbdpfp[0-9]*",       NAME="usb/%k"
-KERNEL=="cpad[0-9]*",          NAME="usb/%k"
-
-# end of naming rules for kernel <2.6.31
-
-
-#
-# module loading rules
-#
 ACTION!="add", GOTO="kernel_compat_end"
 
-# No need for more code, as MODALIAS is present
-ENV{MODALIAS}=="?*", GOTO="kernel_compat_end"
-
-# needed for kernel <2.6.30-rc1
-SUBSYSTEM=="scsi", ATTR{type}=="8", RUN+="/sbin/modprobe -b ch"
-SUBSYSTEM=="mmc", RUN+="/sbin/modprobe -b mmc_block"
-
-# needed for kernel <2.6.27-rc5
-# acpi will do on newer kernels
-SUBSYSTEM=="pnp", DRIVER!="?*", \
-  RUN{ignore_error}+="/bin/sh -c '/sbin/modprobe -a $$(while read id; do echo pnp:d$$id; done < /sys$devpath/id)'"
-
 # see extras/qemu/42-qemu-usb.rules, version for 2.6.32 + older.
 ACTION=="add", SUBSYSTEM=="usb", ATTR{product}=="QEMU USB Mouse", ATTR{serial}=="42", TEST=="power/level", ATTR{power/level}="auto"
 ACTION=="add", SUBSYSTEM=="usb", ATTR{product}=="QEMU USB Tablet", ATTR{serial}=="42", TEST=="power/level", ATTR{power/level}="auto"