[vdr] Deactivate a Tuner

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


On 8/20/2013 6:28 PM, Brian-Imap wrote:
> 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
>
>
>
>
>
>
>
>
>
> _______________________________________________
> vdr mailing list
> vdr at linuxtv.org
> http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
Or, hows about I just go in and rename the devices, same scheme every 
time.  I think that would work if I knew
how to differentiate between the 4 Cine S2 tuners, currently I dont know 
how to do that.

Cheers Brian




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


More information about the vdr mailing list