[vdr] Deactivate a Tuner

Brian-Imap Brian_Dorling at t-online.de
Tue Aug 20 18:28:29 CEST 2013


On 8/19/2013 11:10 PM, Marc wrote:
> On 19/08/2013 21:11, Brian-Imap wrote:
>> On 8/18/2013 8:15 PM, Marc wrote:
>>> On 18/08/2013 19:27, Brian-Imap wrote:
>>>> Hi,
>>>> so I tried to look for some kind of info to help me identify the 
>>>> tuners, this is the most interesting bit I guess:
>>>>
>>>> VDR-test-cellar (SDB1): udevadm info --query=all 
>>>> --name=/dev/dvb/adapter1/frontend0 --attribute-walk
>>>>   looking at device 
>>>> '/devices/pci0000:00/0000:00:0d.0/0000:02:00.0/dvb/dvb1.frontend0':
>>>>     KERNEL=="dvb1.frontend0"
>>>>     SUBSYSTEM=="dvb"
>>>>     DRIVER==""
>>>>
>>> You can use this command :
>>> udevadm info -a -p $(udevadm info -q path -n /dev/your/path)
>>>
>>> to get the complete tree and watch if you can differentiate your 
>>> front end with one or more attributes of the subsystems.
>>>
>>> Marc.
>>>> VDR-test-cellar (SDB1): udevadm info --query=all 
>>>> --name=/dev/dvb/adapter0/frontend0 --attribute-walk
>>>>   looking at device 
>>>> '/devices/pci0000:00/0000:00:0d.0/0000:02:00.0/dvb/dvb0.frontend0':
>>>>     KERNEL=="dvb0.frontend0"
>>>>     SUBSYSTEM=="dvb"
>>>>     DRIVER==""
>>>>
>>>> VDR-test-cellar (SDB1): udevadm info --query=all 
>>>> --name=/dev/dvb/adapter2/frontend0 --attribute-walk
>>>>   looking at device 
>>>> '/devices/pci0000:00/0000:00:0d.0/0000:02:00.0/dvb/dvb2.frontend0':
>>>>     KERNEL=="dvb2.frontend0"
>>>>     SUBSYSTEM=="dvb"
>>>>     DRIVER==""
>>>>
>>>> VDR-test-cellar (SDB1): udevadm info --query=all 
>>>> --name=/dev/dvb/adapter3/frontend0 --attribute-walk
>>>>   looking at device 
>>>> '/devices/pci0000:00/0000:00:06.0/0000:01:06.0/dvb/dvb3.frontend0':
>>>>     KERNEL=="dvb3.frontend0"
>>>>     SUBSYSTEM=="dvb"
>>>>     DRIVER==""
>>>>
>>>> VDR-test-cellar (SDB1): udevadm info --query=all 
>>>> --name=/dev/dvb/adapter4/frontend0 --attribute-walk
>>>>   looking at device 
>>>> '/devices/pci0000:00/0000:00:0d.0/0000:02:00.0/dvb/dvb4.frontend0':
>>>>     KERNEL=="dvb4.frontend0"
>>>>     SUBSYSTEM=="dvb"
>>>>     DRIVER==""
>>>>
>>>> At the moment I cannot find anything to identify the 4 Tuners on 
>>>> the Cine S2, the FF on 01:06 is easy.
>>>> I got hit by tuning problems a few days ago as the tuner without a 
>>>> cable was given FE3/0. The FF got FE4/0
>>>> at that time.  I'm wondering if the DDBridge driver will always 
>>>> number in the correct order.
>>>>
>>>> So I guess I'll try to make the FF FE0/0, and hope that the 
>>>> DDBRidge driver will do the rest.
>>>>
>>>> Cheers Brian
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> vdr mailing list
>>>> vdr at linuxtv.org
>>>> http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
>>>
>>>
>>>
>>> _______________________________________________
>>> vdr mailing list
>>> vdr at linuxtv.org
>>> http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
>> Hi,
>> well Its exactly what I was doing, and I cant see a difference. Here 
>> an example of two of the Cine S2 Tuners:
>>
>> VDR-test-cellar (SDB1): udevadm info -a -p $(udevadm info -q path -n 
>> /dev/dvb/adapter3/frontend0)
>>
>> Udevadm info starts with the device specified by the devpath and then
>> walks up the chain of parent devices. It prints for every device
>> found, all possible attributes in the udev rules key format.
>> A rule to match, can be composed by the attributes of the device
>> and the attributes from one single parent device.
>>
>>   looking at device 
>> '/devices/pci0000:00/0000:00:0d.0/0000:02:00.0/dvb/dvb3.frontend0':
>>     KERNEL=="dvb3.frontend0"
>>     SUBSYSTEM=="dvb"
>>     DRIVER==""
>>
>>   looking at parent device 
>> '/devices/pci0000:00/0000:00:0d.0/0000:02:00.0':
>>     KERNELS=="0000:02:00.0"
>>     SUBSYSTEMS=="pci"
>>     DRIVERS=="DDBridge"
>>     ATTRS{irq}=="16"
>>     ATTRS{subsystem_vendor}=="0xdd01"
>>     ATTRS{broken_parity_status}=="0"
>>     ATTRS{class}=="0x048000"
>>     ATTRS{consistent_dma_mask_bits}=="32"
>>     ATTRS{dma_mask_bits}=="32"
>>     ATTRS{local_cpus}=="ff"
>>     ATTRS{device}=="0x0003"
>>     ATTRS{enable}=="1"
>>     ATTRS{msi_bus}==""
>>     ATTRS{local_cpulist}=="0-7"
>>     ATTRS{vendor}=="0xdd01"
>>     ATTRS{subsystem_device}=="0x0020"
>>
>>   looking at parent device '/devices/pci0000:00/0000:00:0d.0':
>>     KERNELS=="0000:00:0d.0"
>>     SUBSYSTEMS=="pci"
>>     DRIVERS=="pcieport"
>>     ATTRS{irq}=="40"
>>     ATTRS{subsystem_vendor}=="0x10de"
>>     ATTRS{broken_parity_status}=="0"
>>     ATTRS{class}=="0x060400"
>>     ATTRS{consistent_dma_mask_bits}=="32"
>>     ATTRS{dma_mask_bits}=="32"
>>     ATTRS{local_cpus}=="ff"
>>     ATTRS{device}=="0x0378"
>>     ATTRS{enable}=="2"
>>     ATTRS{msi_bus}=="1"
>>     ATTRS{local_cpulist}=="0-7"
>>     ATTRS{vendor}=="0x10de"
>>     ATTRS{subsystem_device}=="0x0000"
>>
>>   looking at parent device '/devices/pci0000:00':
>>     KERNELS=="pci0000:00"
>>     SUBSYSTEMS==""
>>     DRIVERS==""
>>
>> VDR-test-cellar (SDB1): udevadm info -a -p $(udevadm info -q path -n 
>> /dev/dvb/adapter4/frontend0)
>>
>> Udevadm info starts with the device specified by the devpath and then
>> walks up the chain of parent devices. It prints for every device
>> found, all possible attributes in the udev rules key format.
>> A rule to match, can be composed by the attributes of the device
>> and the attributes from one single parent device.
>>
>>   looking at device 
>> '/devices/pci0000:00/0000:00:0d.0/0000:02:00.0/dvb/dvb4.frontend0':
>>     KERNEL=="dvb4.frontend0"
>>     SUBSYSTEM=="dvb"
>>     DRIVER==""
>>
>>   looking at parent device 
>> '/devices/pci0000:00/0000:00:0d.0/0000:02:00.0':
>>     KERNELS=="0000:02:00.0"
>>     SUBSYSTEMS=="pci"
>>     DRIVERS=="DDBridge"
>>     ATTRS{irq}=="16"
>>     ATTRS{subsystem_vendor}=="0xdd01"
>>     ATTRS{broken_parity_status}=="0"
>>     ATTRS{class}=="0x048000"
>>     ATTRS{consistent_dma_mask_bits}=="32"
>>     ATTRS{dma_mask_bits}=="32"
>>     ATTRS{local_cpus}=="ff"
>>     ATTRS{device}=="0x0003"
>>     ATTRS{enable}=="1"
>>     ATTRS{msi_bus}==""
>>     ATTRS{local_cpulist}=="0-7"
>>     ATTRS{vendor}=="0xdd01"
>>     ATTRS{subsystem_device}=="0x0020"
>>
>>   looking at parent device '/devices/pci0000:00/0000:00:0d.0':
>>     KERNELS=="0000:00:0d.0"
>>     SUBSYSTEMS=="pci"
>>     DRIVERS=="pcieport"
>>     ATTRS{irq}=="40"
>>     ATTRS{subsystem_vendor}=="0x10de"
>>     ATTRS{broken_parity_status}=="0"
>>     ATTRS{class}=="0x060400"
>>     ATTRS{consistent_dma_mask_bits}=="32"
>>     ATTRS{dma_mask_bits}=="32"
>>     ATTRS{local_cpus}=="ff"
>>     ATTRS{device}=="0x0378"
>>     ATTRS{enable}=="2"
>>     ATTRS{msi_bus}=="1"
>>     ATTRS{local_cpulist}=="0-7"
>>     ATTRS{vendor}=="0x10de"
>>     ATTRS{subsystem_device}=="0x0000"
>>
>>   looking at parent device '/devices/pci0000:00':
>>     KERNELS=="pci0000:00"
>>     SUBSYSTEMS==""
>>     DRIVERS==""
>>
> In this case, you can write an external program witch output the name 
> when you match a front end of ddbridge :
> KERNEL=="dvb[0-9]*.frontend0", SUBSYSTEMS=="pci", DRIVERS=="DDBridge", 
> PROGRAM="/your/program %k", NAME="%c"
>
> Something like :
> if [ ! -a /path/frontendname1 ]; then echo frontendname1; exit; fi;
> same with frontendname2 and frontendname3
>
> The kernel name of the device is available if needed (%k in the udev 
> rule).
>
> Marc.
Hi Marc,
you've lost me.

If FE0/0 is a DDBridge tuner, and I make the FF card tuner FE0/0, then I 
still need to rename the DDBridge Tuner that
was FE0/0 to another one within FE{1-3}/0. That means potentially 
overwriting the names of some of the other DDBridge
tuners, and then renaming them later on too.
Unfortunately the same rule will pop for all four DDBridge tuners, so I 
guess I must keep track of what I have already renamed.

Or I'm missing something about the logic to be used here.

Take this example:
Aug 11 11:09:31 localhost vdr: [936] frontend 0/0 provides 
DVB-S,DVB-S2,DSS with QPSK ("STV090x Multistandard")
Aug 11 11:09:31 localhost vdr: [936] frontend 1/0 provides DVB-C with 
QAM16,QAM32,QAM64,QAM128,QAM256 ("ST STV0297 DVB-C")
Aug 11 11:09:31 localhost vdr: [936] frontend 2/0 provides 
DVB-S,DVB-S2,DSS with QPSK ("STV090x Multistandard")
Aug 11 11:09:31 localhost vdr: [936] frontend 4/0 provides 
DVB-S,DVB-S2,DSS with QPSK ("STV090x Multistandard")

1. Rename FE1/0 to FE0/0
2. Rename FE0/0 .... I'm renaming the PCI device so it should rename the 
"Old" FE0/0 to FE 1/0
3. Rename FE2/0 to FE2/0. Should be OK, actually renaming the third DVB 
device to FE2/0.
4. Rename fourth DVB device to FE3/0

In this case the FF could be in any position

Cheers Brian







-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.linuxtv.org/pipermail/vdr/attachments/20130820/648ca1b5/attachment-0001.html>


More information about the vdr mailing list