[linux-dvb] udev problem

Razza rjames31 at btopenworld.com
Thu Apr 26 22:41:43 CEST 2007

I have a problem whereby I need to pin a specific PCI card (slot) to a dvb
node, otherwise it totally messes up my machine when a historic DVB-S node
becomes a DVB-T node or vice versa.  

I have been playing with udev and have found how to identify cards etc. But
getting the (NAME) rule right is confusing me. I am running Fedora Core 5
and have the following standard rule in "/etc/udev/rules.d/50-udev.rules" -

SUBSYSTEM=="dvb", PROGRAM="/bin/sh -c 'K=%k; K=$${K#dvb}; printf
dvb/adapter%%i/%%s $${K%%%%.*} $${K#*.}'", NAME="%c", MODE="0660"

The closest I got to getting things working was by substituting
"dvb/adapter%%i/" with "dvb/adapter5/", thus forcing the adapter to
/dev/dvb/adapter5, rule below -

BUS=="pci", ID=="0000:01:06.0", SYSFS{device}=="0x7146",
SYSFS{vendor}=="0x1131", PROGRAM="/bin/sh -c 'K=%k; K=$${K#dvb}; printf
dvb/adapter5/%%s $${K%%%%.*} $${K#*.}'", NAME="%c", MODE="0660"

Unfortunately that changed the tree structure from -

`-- adapter5
    |-- ca0
    |-- demux0
    |-- dvr0
    |-- frontend0
    `-- net0

To -

`-- adapter5
    |-- 0dvb
    |   `-- adapter5
    |       |-- ca0
    |       |-- demux0
    |       |-- dvr0
    |       |-- frontend0
    |       `-- net0
    `-- event3dvb
        `-- adapter5
            `-- event3

Can anyone please advise on what the rule should look like?

Thanks in advance.

More information about the linux-dvb mailing list