Magellan Linux

Diff of /tags/udev-141-r2/udev/udev.rules.magellan

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 216 by niro, Sun Jun 10 21:25:29 2007 UTC revision 515 by niro, Sat Mar 22 18:12:38 2008 UTC
# Line 1  Line 1 
1  # /etc/udev/rules/50-udev.rules:  device naming rules for udev  # /etc/udev/rules/50-udev.rules:  device naming rules for udev
2  # $Header: /root/magellan-cvs/src/udev/udev.rules.magellan,v 1.3 2007-06-10 21:25:29 niro Exp $  # $Header: /root/magellan-cvs/src/udev/udev.rules.magellan,v 1.5 2008-03-22 18:12:38 niro Exp $
3  #  #
4  # There are a number of modifiers that are allowed to be used in some  # There are a number of modifiers that are allowed to be used in some
5  # of the different fields. They provide the following subsitutions:  # of the different fields. They provide the following subsitutions:
# Line 18  Line 18 
18  # file that can be run before this one.  # file that can be run before this one.
19  #  #
20    
21    KERNEL=="pty[pqrstuvwxyzabcdef][0123456789abcdef]", GROUP="tty", MODE="0660", OPTIONS="last_rule"
22  # console  KERNEL=="tty[pqrstuvwxyzabcdef][0123456789abcdef]", GROUP="tty", MODE="0660", OPTIONS="last_rule"
23  KERNEL=="pty[pqrstuvwxyzabcdef][0123456789abcdef]", NAME="%k", GROUP="tty", OPTIONS="last_rule"  KERNEL=="ptmx", GROUP="tty", MODE="0666", OPTIONS="last_rule"
24  KERNEL=="tty[pqrstuvwxyzabcdef][0123456789abcdef]", NAME="%k", GROUP="tty", OPTIONS="last_rule"  KERNEL=="tty", GROUP="tty", MODE="0666", OPTIONS="last_rule"
25  KERNEL=="vcs*",                 NAME="%k", GROUP="tty", OPTIONS="last_rule"  KERNEL=="tty[0-9]*", GROUP="tty", MODE="0620", OPTIONS="last_rule"
26  KERNEL=="vcsa*",                NAME="%k", GROUP="tty", OPTIONS="last_rule"  KERNEL=="vcs|vcs[0-9]*|vcsa|vcsa[0-9]*", GROUP="tty", OPTIONS="last_rule"
27  KERNEL=="tty",                  NAME="%k", GROUP="tty", MODE="0666", OPTIONS="last_rule"  KERNEL=="console", MODE="0600", OPTIONS="last_rule"
28  KERNEL=="tty[0-9]",             NAME="%k", GROUP="tty", OPTIONS="last_rule"  
29  KERNEL=="tty[0-9][0-9]",        NAME="%k", GROUP="tty", OPTIONS="last_rule"  # serial
30  KERNEL=="console", NAME="%k", GROUP="tty", MODE="0600"  KERNEL=="tty[A-Z]*|pppox*|ircomm*|noz*", GROUP="uucp"
31  KERNEL=="ptmx", NAME="%k", GROUP="tty", MODE="0666"  KERNEL=="ppp", MODE="0600", OPTIONS+="ignore_remove"
32    KERNEL=="mwave", NAME="modems/mwave", GROUP="uucp"
33  # tty devices  KERNEL=="hvc*|hvsi*", GROUP="uucp"
34  KERNEL=="ttyS[0-9]*", NAME="%k", SYMLINK="tts/%n", GROUP="tty"  KERNEL=="lirc0", SYMLINK+="lirc"
35  KERNEL=="ttyUSB[0-9]*", NAME="%k", SYMLINK="tts/USB%n", GROUP="tty", MODE="0660"  
36  KERNEL=="ippp0", NAME="%k", GROUP="tty"  # mem
37  KERNEL=="isdn*" NAME="%k", GROUP="tty"  KERNEL=="null|zero|full|random|urandom", MODE="0666"
38  KERNEL=="dcbri*", NAME="%k", GROUP="tty"  KERNEL=="null", SYMLINK+="XOR"
39  KERNEL=="ircomm*", NAME="%k", GROUP="tty"  KERNEL=="mem|kmem|port", GROUP="kmem", MODE="0640"
40    KERNEL=="ram0", SYMLINK+="ramdisk"
41  # all block devices  KERNEL=="ram1", SYMLINK+="ram"
42  SUBSYSTEM=="block", GROUP="disk"  
43    # input
44  # cdrom symlinks and other good cdrom naming  KERNEL=="mouse*|mice|event*", NAME="input/%k", MODE="0640"
45  KERNEL=="sr[0-9]*|hd[a-z]|pcd[0-9]*", ACTION=="add", IMPORT{program}="cdrom_id --export $tempnode"  KERNEL=="ts[0-9]*|uinput", NAME="input/%k", MODE="0600"
46  ENV{ID_CDROM}=="?*", GROUP="cdrom"  KERNEL=="js[0-9]*", NAME="input/%k", MODE="0644", SYMLINK+="%k"
47    
48  # assign cdrom-permission also to associated generic device (for cd-burning ...)  # video4linux
49  KERNEL=="sg[0-9]*", ACTION=="add", ATTRS{type}=="4|5", GROUP="cdrom"  KERNEL=="vbi0", SYMLINK+="vbi"
50    KERNEL=="radio0", SYMLINK+="radio"
51  # disk devices  KERNEL=="video0", SYMLINK+="video"
52  KERNEL=="sd*", NAME="%k", GROUP="disk"  
53  KERNEL=="dasd*", NAME="%k", GROUP="disk"  # graphics
54  KERNEL=="ataraid*", NAME="%k", GROUP="disk"  KERNEL=="agpgart", MODE="0600"
55    KERNEL=="card[0-9]*", NAME="dri/%k", MODE="0666"
56  # compaq smart array  KERNEL=="fb0", SYMLINK+="fb"
57  KERNEL=="cciss*", NAME="%k"  
58  KERNEL=="ida*", NAME="%k"  # DVB video
59    SUBSYSTEM=="dvb", PROGRAM="/bin/sh -c 'K=%k; K=$${K#dvb}; printf dvb/adapter%%i/%%s $${K%%%%.*} $${K#*.}'", NAME="%c"
60  # mylex  
61  KERNEL=="rd*", NAME="%k"  # Firewire
62    KERNEL=="dv1394*", SYMLINK+="dv1394/%n"
63  # dri devices  KERNEL=="video1394*", NAME="video1394/%n"
64  KERNEL=="card*", NAME="dri/card%n", GROUP="video"  
65  KERNEL=="nvidia*", NAME="%k", GROUP="video"  # firmware class requests
66  KERNEL=="3dfx*", NAME="%k", GROUP="video"  SUBSYSTEM=="firmware", ACTION=="add", RUN+="firmware.sh"
67    
68  # alsa devices  # libusb device nodes
69  SUBSYSTEM=="sound", GROUP="audio"  SUBSYSTEM=="usb", ACTION=="add", ENV{DEVTYPE}=="usb_device", NAME="bus/usb/$env{BUSNUM}/$env{DEVNUM}", MODE="0644"
70  KERNEL=="controlC[0-9]*", NAME="snd/%k"  
71  KERNEL=="hw[CD0-9]*", NAME="snd/%k"  # printer
72  KERNEL=="pcm[CD0-9cp]*", NAME="snd/%k"  KERNEL=="parport[0-9]*", GROUP="lp"
73  KERNEL=="midiC[D0-9]*", NAME="snd/%k"  SUBSYSTEM=="printer", KERNEL=="lp*", GROUP="lp"
74  KERNEL=="timer", NAME="snd/%k"  SUBSYSTEM=="usb", KERNEL=="lp*", NAME="usb/%k", SYMLINK+="usb%k", GROUP="lp"
75  KERNEL=="seq", NAME="snd/%k"  KERNEL=="lp[0-9]*", GROUP="lp", SYMLINK+="par%n"
76    KERNEL=="irlpt[0-9]*", GROUP="lp"
77  # capi devices  
78  KERNEL=="capi", NAME="capi20", SYMLINK+="isdn/capi20", GROUP="dialout"  # block, tapes, block-releated
79  KERNEL=="capi*", NAME="capi/%n", GROUP="dialout"  SUBSYSTEM=="block", GROUP="disk", MODE="0640"
80    SUBSYSTEM=="block", KERNEL=="sr[0-9]*", SYMLINK+="scd%n"
 # cpu devices  
 KERNEL=="cpu[0-9]*", NAME="cpu/%n/cpuid"  
 KERNEL=="msr[0-9]*", NAME="cpu/%n/msr"  
 KERNEL=="microcode", NAME="cpu/microcode"  
   
 # fb devices  
 KERNEL=="fb[0-9]*", NAME="fb/%n", SYMLINK+="%k", GROUP="video"  
   
 # floppy devices  
 KERNEL=="fd[0-9]*", NAME="floppy/%k", SYMLINK+="%k", GROUP="floppy"  
 KERNEL=="fd[0-9]*", ACTION=="add", ATTRS{cmos}=="*", RUN+="create_floppy_devices -c -t $attr{cmos} -m %M -M 0660 -G floppy $root/floppy/%k"  
 KERNEL=="fd[0-9]*", ACTION=="remove", RUN+="/bin/sh -c 'rm -f $root/floppy/%k?*'"  
   
 # i2c devices  
 KERNEL=="i2c-[0-9]*", NAME="i2c/%n", SYMLINK+="%k"  
   
 # input devices  
 KERNEL=="mice", NAME="input/%k", MODE="0644"  
 KERNEL=="mouse*", NAME="input/%k", MODE="0644"  
 KERNEL=="event*", NAME="input/%k", MODE="0600"  
 KERNEL=="js*", NAME="input/%k", MODE="0664"  
 KERNEL=="ts*", NAME="input/%k", MODE="0600"  
   
 # loop devices  
 KERNEL=="loop[0-9]*", NAME="loop/%n", SYMLINK+="%k", GROUP="disk"  
   
 # md block devices  
 KERNEL=="md[0-9]*", NAME="md/%n", SYMLINK+="%k", GROUP="disk"  
   
 # aoe char devices,  
 SUBSYSTEM=="aoe", KERNEL=="discover", NAME="etherd/%k", GROUP="disk", MODE="0220"  
 SUBSYSTEM=="aoe", KERNEL=="err", NAME="etherd/%k", GROUP="disk", MODE="0440"  
 SUBSYSTEM=="aoe", KERNEL=="interfaces", NAME="etherd/%k", GROUP="disk", MODE="0220"  
   
 # misc devices  
 KERNEL=="agpgart", NAME="misc/%k", SYMLINK+="%k"  
 KERNEL=="psaux", NAME="misc/%k", SYMLINK+="%k"  
 KERNEL=="rtc", NAME="misc/%k", SYMLINK+="%k", MODE="0664"  
 KERNEL=="uinput", NAME="misc/%k", SYMLINK+="%k"  
 KERNEL=="inotify", NAME="misc/%k", SYMLINK+="%k", MODE="0666"  
   
 # netlink devices  
 KERNEL=="route", NAME="netlink/%k"  
 KERNEL=="skip", NAME="netlink/%k"  
 KERNEL=="usersock", NAME="netlink/%k"  
 KERNEL=="fwmonitor", NAME="netlink/%k"  
 KERNEL=="tcpdiag", NAME="netlink/%k"  
 KERNEL=="nflog", NAME="netlink/%k"  
 KERNEL=="xfrm", NAME="netlink/%k"  
 KERNEL=="arpd", NAME="netlink/%k"  
 KERNEL=="route6", NAME="netlink/%k"  
 KERNEL=="ip6_fw", NAME="netlink/%k"  
 KERNEL=="dnrtmsg", NAME="netlink/%k"  
 KERNEL=="tap*", NAME="netlink/%k"  
   
 # network devices  
 KERNEL=="tun", NAME="net/%k", MODE="0600"  
   
 # ramdisk devices  
 KERNEL=="ram[0-9]*", NAME="rd/%n", SYMLINK+="%k"  
   
 # IEEE1394 (firewire) devices (must be before raw devices below)  
 KERNEL=="raw1394", NAME="%k", GROUP="video"  
 KERNEL=="dv1394*", NAME="dv1394/%n", GROUP="video"  
 KERNEL=="video1394*", NAME="video1394/%n", GROUP="video"  
   
 # raw devices  
 SUBSYSTEM=="raw", KERNEL=="raw[0-9]*", NAME="raw/%k", GROUP="disk"  
 KERNEL=="ram*", NAME="%k", GROUP="disk"  
   
 # sound devices  
 KERNEL=="adsp", NAME="sound/%k", SYMLINK+="%k", GROUP="audio"  
 KERNEL=="adsp[0-9]*", NAME="sound/%k", SYMLINK+="%k", GROUP="audio"  
 KERNEL=="audio", NAME="sound/%k", SYMLINK+="%k", GROUP="audio"  
 KERNEL=="audio[0-9]*", NAME="sound/%k", SYMLINK+="%k", GROUP="audio"  
 KERNEL=="dsp", NAME="sound/%k", SYMLINK+="%k", GROUP="audio"  
 KERNEL=="dsp[0-9]*", NAME="sound/%k", SYMLINK+="%k", GROUP="audio"  
 KERNEL=="mixer", NAME="sound/%k", SYMLINK+="%k", GROUP="audio"  
 KERNEL=="mixer[0-9]*", NAME="sound/%k", SYMLINK+="%k", GROUP="audio"  
 KERNEL=="sequencer", NAME="sound/%k", SYMLINK+="%k", GROUP="audio"  
 KERNEL=="sequencer[0-9]*", NAME="sound/%k", SYMLINK+="%k", GROUP="audio"  
   
 # memory devices  
 KERNEL=="random", NAME="%k", MODE="0666"  
 KERNEL=="urandom", NAME="%k", MODE="0444"  
 KERNEL=="mem", NAME="%k", MODE="0640"  
 KERNEL=="kmem", NAME="%k", MODE="0640"  
 KERNEL=="port", NAME="%k", MODE="0640"  
 KERNEL=="full", NAME="%k", MODE="0666"  
 KERNEL=="null", NAME="%k", MODE="0666"  
 KERNEL=="zero", NAME="%k", MODE="0666"  
   
 # usb devices  
 KERNEL=="hiddev*", NAME="usb/%k"  
 KERNEL=="auer*", NAME="usb/%k"  
 KERNEL=="legousbtower*", NAME="usb/%k", GROUP="usb"  
 KERNEL=="dabusb*", NAME="usb/%k"  
 KERNEL=="lp[0-9]*", SUBSYSTEM=="usb", NAME="usb/%k", GROUP="lp"  
   
 # v4l devices  
 KERNEL=="video[0-9]*", NAME="v4l/video%n", SYMLINK+="video%n", GROUP="video"  
 KERNEL=="radio[0-9]*", NAME="v4l/radio%n", SYMLINK+="radio%n", GROUP="video"  
 KERNEL=="vbi[0-9]*", NAME="v4l/vbi%n", SYMLINK+="vbi%n", GROUP="video"  
 KERNEL=="vtx[0-9]*", NAME="v4l/vtx%n", GROUP="video"  
   
 # dvb devices  
 SUBSYSTEM=="dvb", PROGRAM="/bin/sh -c 'K=%k; K=$${K#dvb}; printf dvb/adapter%%i/%%s $${K%%%%.*} $${K#*.}'", NAME="%c", GROUP="video"  
   
 # Asterisk Zaptel devices  
 KERNEL=="zapctl", NAME="zap/ctl"  
 KERNEL=="zaptimer", NAME="zap/timer"  
 KERNEL=="zapchannel", NAME="zap/channel"  
 KERNEL=="zappseudo", NAME="zap/pseudo"  
 KERNEL=="zap[0-9]*", NAME="zap/%n"  
   
 # pilot/palm devices  
 KERNEL=="pilot", NAME="%k", GROUP="uucp"  
   
 # jaz devices  
 KERNEL=="jaz*", NAME="%k", GROUP="disk"  
   
 # zip devices  
 KERNEL=="pocketzip*", NAME="%k", GROUP="disk"  
 KERNEL=="zip*", NAME="%k", GROUP="disk"  
   
 # ls120 devices  
 KERNEL=="ls120", NAME="%k", GROUP="disk"  
   
 # lp devices  
 KERNEL=="lp*", NAME="%k", GROUP="lp"  
 KERNEL=="irlpt", NAME="%k", GROUP="lp"  
 KERNEL=="usblp", NAME="%k", GROUP="lp"  
 KERNEL=="lp*", NAME="%k", GROUP="lp"  
 KERNEL=="parport*", NAME="%k", GROUP="lp"  
   
 # tape devices  
 KERNEL=="ht*", NAME="%k", GROUP="tape"  
 KERNEL=="nht*", NAME="%k", GROUP="tape"  
 KERNEL=="pt*", NAME="%k", GROUP="tape"  
 KERNEL=="npt*", NAME="%k", GROUP="tape"  
 KERNEL=="st*", NAME="%k", GROUP="tape"  
 KERNEL=="nst*", NAME="%k", GROUP="tape"  
 KERNEL=="osst*", NAME="%k", GROUP="tape"  
 KERNEL=="nosst*", NAME="%k", GROUP="tape"  
   
 # diskonkey devices  
 KERNEL=="diskonkey*", NAME="%k", GROUP="disk"  
   
 # rem_ide devices  
 KERNEL=="microdrive*", NAME="%k", GROUP="disk"  
   
 # kbd devices  
 KERNEL=="kbd", NAME="%k", MODE="0664"  
   
 # Sony Vaio Jogdial sonypi device  
 KERNEL=="sonypi", NAME="%k", MODE="0666"  
   
 # packet devices  
 KERNEL=="pktcdvd", NAME="pktcdvd/control", GROUP="cdrw", MODE="0660"  
 KERNEL=="pktcdvd[0-9]*", NAME="pktcdvd/pktcdvd%n", GROUP="cdrw", MODE="0660"  
   
 # infiniband devices  
 KERNEL=="umad*", NAME="infiniband/%k"  
 KERNEL=="issm*", NAME="infiniband/%k"  
   
   
 # usbfs-like device nodes  
 SUBSYSTEM=="usb_device", PROGRAM="/bin/sh -c 'K=%k; K=$${K#usbdev}; printf bus/usb/%%03i/%%03i $${K%%%%.*} $${K#*.}'", NAME="%c", GROUP="usb", MODE="0664"  
   
   
 # Setting timeout for tape-devices (type 1) to 900 seconds  
 # and 60 seconds for device types 0, 7 and 14  
 # if you need timeouts for other devices add a similar rule  
 # with correct type-value, or open a bug on bugs.gentoo.org.  
81  SUBSYSTEM=="scsi", KERNEL=="[0-9]*:[0-9]*", ACTION=="add", ATTR{type}=="0|7|14", ATTR{timeout}="60"  SUBSYSTEM=="scsi", KERNEL=="[0-9]*:[0-9]*", ACTION=="add", ATTR{type}=="0|7|14", ATTR{timeout}="60"
82  SUBSYSTEM=="scsi", KERNEL=="[0-9]*:[0-9]*", ACTION=="add", ATTR{type}=="1", ATTR{timeout}="900"  SUBSYSTEM=="scsi", KERNEL=="[0-9]*:[0-9]*", ACTION=="add", ATTR{type}=="1", ATTR{timeout}="900"
83    KERNEL=="hd*", SUBSYSTEMS=="ide", ATTRS{media}=="floppy", OPTIONS+="all_partitions"
84    KERNEL=="fd[0-9]", GROUP="floppy"
85    KERNEL=="fd[0-9]", ACTION=="add", ATTRS{cmos}=="?*", RUN+="create_floppy_devices -c -t $attr{cmos} -m %M -M 0640 -G floppy $root/%k"
86    KERNEL=="sch[0-9]*", GROUP="disk"
87    KERNEL=="sg[0-9]*", ATTRS{type}!="3|6", GROUP="disk", MODE="0640"
88    KERNEL=="ht[0-9]*|nht[0-9]*", GROUP="disk"
89    KERNEL=="pg[0-9]*", GROUP="disk"
90    KERNEL=="pt[0-9]*|npt[0-9]*", GROUP="disk"
91    KERNEL=="qft[0-9]*|nqft[0-9]*|zqft[0-9]*|nzqft[0-9]*|rawqft[0-9]*|nrawqft[0-9]*", GROUP="disk"
92    KERNEL=="rawctl", NAME="raw/%k", GROUP="disk"
93    SUBSYSTEM=="raw", KERNEL=="raw[0-9]*", NAME="raw/%k", GROUP="disk"
94    KERNEL=="pktcdvd[0-9]*", NAME="pktcdvd/%k"
95    KERNEL=="pktcdvd", NAME="pktcdvd/control"
96    KERNEL=="qft0", SYMLINK+="ftape"
97    SUBSYSTEM=="bsg", NAME="bsg/%k"
98    SUBSYSTEM=="aoe", NAME="etherd/%k", GROUP="disk"
99    
100    # network
101    KERNEL=="tun", NAME="net/%k", MODE="0666", OPTIONS+="ignore_remove"
102    
103    # CPU
104    KERNEL=="cpu[0-9]*", NAME="cpu/%n/cpuid"
105    KERNEL=="msr[0-9]*", NAME="cpu/%n/msr"
106    KERNEL=="microcode", NAME="cpu/microcode", MODE="0600"
107    
108    # miscellaneous
109    KERNEL=="fuse", MODE="0666"
110    KERNEL=="rtc|rtc0", MODE="0644"
111    KERNEL=="rtc0", SYMLINK+="rtc"
112    KERNEL=="auer[0-9]*", NAME="usb/%k"
113    KERNEL=="hw_random", NAME="hwrng", SYMLINK+="%k"
114    KERNEL=="mmtimer", MODE="0644"
115    KERNEL=="rflash[0-9]*", MODE="0400"
116    KERNEL=="rrom[0-9]*", MODE="0400"
117    KERNEL=="sbpcd0", SYMLINK+="sbpcd"
118    KERNEL=="slram[0-9]*", SYMLINK+="xpram%n"
119    KERNEL=="sxctl", NAME="specialix_sxctl", SYMLINK+="%k"
120    KERNEL=="rioctl", NAME="specialix_rioctl", SYMLINK+="%k"
121    KERNEL=="iowarrior[0-9]*", NAME="usb/%k"
122    
123  # Module autoloading  # do not delete static device nodes
124  ACTION!="add", GOTO="hotplug_no_add_event"  ACTION=="remove", NAME=="?*", TEST=="/lib/udev/devices/$name", OPTIONS+="ignore_remove"
   
 # check if the device has already been claimed by a driver  
 ENV{DRIVER}=="?*", SUBSYSTEM!="input", GOTO="hotplug_load_end"  
   
 # this driver is broken and should not be loaded automatically  
 SUBSYSTEM=="platform", ENV{MODALIAS}=="i82365", GOTO="hotplug_load_end"  
   
 # Autoload modules that lack aliases but have them defined inutoload modules  
 ENV{MODALIAS}=="?*", RUN+="modprobe.sh $env{MODALIAS}"  
   
 # /etc/modprobe.conf.  
 SUBSYSTEM=="pnp", ENV{MODALIAS}!="?*", RUN+="/bin/sh -c 'while read id; do /lib/udev/modprobe.sh pnp:d$$id; done < /sys$devpath/id'"  
 # needed aliases are defined in /etc/modprobe.d/pnp-aliases  
   
   
 SUBSYSTEM=="i2o", RUN+="modprobe.sh i2o_block"  
 SUBSYSTEM=="mmc", RUN+="modprobe.sh mmc_block"  
   
 # Parts taken from redhat-rules  
 # sd:           0 TYPE_DISK, 7 TYPE_MOD, 14 TYPE_RBC  
 # sr:           4 TYPE_WORM, 5 TYPE_ROM  
 # st/osst:      1 TYPE_TAPE  
   
 # Load driver for scsi-device  
 SUBSYSTEM!="scsi_device", GOTO="hotplug_scsi_end"  
 ATTRS{type}=="?*", RUN+="modprobe.sh sg"  
 ATTRS{type}=="0|7|14", RUN+="modprobe.sh sd_mod"  
 ATTRS{type}=="4|5", RUN+="modprobe.sh sr_mod"  
 ATTRS{type}=="8", RUN+="modprobe.sh ch"  
   
 ATTRS{type}=="1", ENV{ID_SCSI_TAPE_DRIVER}="st"  
 ATTRS{type}=="1", ATTRS{vendor}=="On[sS]tream", ATTRS{model}!="ADR*", ENV{ID_SCSI_TAPE_DRIVER}="osst"  
 ENV{ID_SCSI_TAPE_DRIVER}=="?*", RUN+="modprobe.sh $env{ID_SCSI_TAPE_DRIVER}"  
 LABEL="hotplug_scsi_end"  
   
 SUBSYSTEM=="ide", ATTR{media}=="tape", RUN+="modprobe.sh ide-scsi"  
   
 LABEL="hotplug_load_end"  
   
 # Load firmware  
 SUBSYSTEM=="firmware", RUN+="firmware.sh"  
   
 LABEL="hotplug_no_add_event"  

Legend:
Removed from v.216  
changed lines
  Added in v.515