[linux-dvb] udev problem
Razza
rjames31 at btopenworld.com
Fri Apr 27 23:38:43 CEST 2007
Razza wrote on 26 April 2007 21:42:
> All,
> 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 -
>
> /dev/dvb/
> `-- adapter5
> |-- ca0
> |-- demux0
> |-- dvr0
> |-- frontend0
> `-- net0
>
> To -
>
> /dev/dvb/
> `-- 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.
Further to the post above, I have been playing further! I think the problem
I am having is that the original rule in my udev rules (see above) is based
on the top section of my "udevinfo -a -p $(udevinfo -q path -n
/dev/dvb/adapter0/frontend0)" response, my rule is based on the second
section, thus introducing additional layers as it's further down the
hardware/kernel stack?
Anyone able to offer and advice?
My "udevinfo -a -p $(udevinfo -q path -n /dev/dvb/adapter0/frontend0)"
response -
looking at device '/class/dvb/dvb0.frontend0':
KERNEL=="dvb0.frontend0"
SUBSYSTEM=="dvb"
SYSFS{dev}=="212:3"
looking at device '/devices/pci0000:00/0000:00:10.0/0000:01:06.0':
ID=="0000:01:06.0"
BUS=="pci"
DRIVER=="budget_ci dvb"
SYSFS{msi_bus}==""
SYSFS{broken_parity_status}=="0"
SYSFS{enable}=="1"
SYSFS{modalias}=="pci:v00001131d00007146sv000013C2sd00001017bc04sc80i00"
SYSFS{local_cpus}=="1"
SYSFS{irq}=="18"
SYSFS{class}=="0x048000"
SYSFS{subsystem_device}=="0x1017"
SYSFS{subsystem_vendor}=="0x13c2"
SYSFS{device}=="0x7146"
SYSFS{vendor}=="0x1131"
looking at device '/devices/pci0000:00/0000:00:10.0':
ID=="0000:00:10.0"
BUS=="pci"
DRIVER==""
SYSFS{msi_bus}=="1"
SYSFS{broken_parity_status}=="0"
SYSFS{enable}=="1"
SYSFS{modalias}=="pci:v000010DEd0000026Fsv00000000sd00000000bc06sc04i01"
SYSFS{local_cpus}=="1"
SYSFS{irq}=="0"
SYSFS{class}=="0x060401"
SYSFS{subsystem_device}=="0x0000"
SYSFS{subsystem_vendor}=="0x0000"
SYSFS{device}=="0x026f"
SYSFS{vendor}=="0x10de"
More information about the linux-dvb
mailing list