From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Razza" Date: Wed, 02 May 2007 08:47:41 +0000 Subject: RE: udev problem DVB-S/T Cards Message-Id: <001301c78c96$8c82bdb0$a5883910$@com> List-Id: References: <000301c78982$db8615e0$929241a0$@com> In-Reply-To: <000301c78982$db8615e0$929241a0$@com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: linux-hotplug@vger.kernel.org Razza wrote on 28 April 2007 11:49: > All, > I have been playing with udev as I need to pin specific identical DVB > cards > to specific nodes, mixing DVB-S and DVB-T is bad! > I have found how to identify cards etc. but getting the 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/node structure from the norm - > /dev/dvb/ > `-- adapter5 > |-- ca0 > |-- demux0 > |-- dvr0 > |-- frontend0 > `-- net0 > > To - > > /dev/dvb/ > `-- adapter5 > |-- 0dvb > | `-- adapter5 > | |-- ca0 > | |-- demux0 > | |-- dvr0 > | |-- frontend0 > | `-- net0 > `-- event3dvb > `-- adapter5 > `-- event3 > > I think the problem I am having is that the original rule 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? > > My "udevinfo -a -p $(udevinfo -q path -n /dev/dvb/adapter0/frontend0)" > response is as follows - > > 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" > > Can anyone advise of the correct rule? > > Thanks in advance! I havn't seen any responses to this, so I guess no one else can help? Can you please advise how I can dump information out (to say a text file) when the udev rules run? I am specifically interested in what 'K' is at various points in this rule - 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" ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net Linux-hotplug-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel