<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <div class="moz-cite-prefix">On 8/20/2013 6:28 PM, Brian-Imap wrote:<br>
    </div>
    <blockquote cite="mid:5213992D.9020609@192.168.95.249" type="cite">
      <meta content="text/html; charset=ISO-8859-1"
        http-equiv="Content-Type">
      <div class="moz-cite-prefix">On 8/19/2013 11:10 PM, Marc wrote:<br>
      </div>
      <blockquote cite="mid:521289D8.2060405@ekass.net" type="cite">
        <meta content="text/html; charset=ISO-8859-1"
          http-equiv="Content-Type">
        <div class="moz-cite-prefix">On 19/08/2013 21:11, Brian-Imap
          wrote:<br>
        </div>
        <blockquote cite="mid:52126DC4.6080808@192.168.95.249"
          type="cite">
          <meta content="text/html; charset=ISO-8859-1"
            http-equiv="Content-Type">
          <div class="moz-cite-prefix">On 8/18/2013 8:15 PM, Marc wrote:<br>
          </div>
          <blockquote cite="mid:52110F48.7050407@ekass.net" type="cite">
            <meta content="text/html; charset=ISO-8859-1"
              http-equiv="Content-Type">
            <div class="moz-cite-prefix">On 18/08/2013 19:27, Brian-Imap
              wrote:<br>
            </div>
            <blockquote cite="mid:5211040F.3090908@192.168.95.249"
              type="cite">
              <meta content="text/html; charset=ISO-8859-1"
                http-equiv="Content-Type">
              Hi,<br>
              so I tried to look for some kind of info to help me
              identify the tuners, this is the most interesting bit I
              guess:<br>
              <br>
              VDR-test-cellar (SDB1): udevadm info --query=all
              --name=/dev/dvb/adapter1/frontend0 --attribute-walk<br>
                looking at device
              '/devices/pci0000:00/0000:00:0d.0/0000:02:00.0/dvb/dvb1.frontend0':<br>
                  KERNEL=="dvb1.frontend0"<br>
                  SUBSYSTEM=="dvb"<br>
                  DRIVER==""<br>
              <br>
            </blockquote>
            You can use this command :<br>
            udevadm info -a -p $(udevadm info -q path -n /dev/your/path)<br>
            <br>
            to get the complete tree and watch if you can differentiate
            your front end with one or more attributes of the
            subsystems.<br>
            <br>
            Marc.<br>
            <blockquote cite="mid:5211040F.3090908@192.168.95.249"
              type="cite"> VDR-test-cellar (SDB1): udevadm info
              --query=all --name=/dev/dvb/adapter0/frontend0
              --attribute-walk<br>
                looking at device
              '/devices/pci0000:00/0000:00:0d.0/0000:02:00.0/dvb/dvb0.frontend0':<br>
                  KERNEL=="dvb0.frontend0"<br>
                  SUBSYSTEM=="dvb"<br>
                  DRIVER==""<br>
              <br>
              VDR-test-cellar (SDB1): udevadm info --query=all
              --name=/dev/dvb/adapter2/frontend0 --attribute-walk<br>
                looking at device
              '/devices/pci0000:00/0000:00:0d.0/0000:02:00.0/dvb/dvb2.frontend0':<br>
                  KERNEL=="dvb2.frontend0"<br>
                  SUBSYSTEM=="dvb"<br>
                  DRIVER==""<br>
              <br>
              VDR-test-cellar (SDB1): udevadm info --query=all
              --name=/dev/dvb/adapter3/frontend0 --attribute-walk<br>
                looking at device
              '/devices/pci0000:00/0000:00:06.0/0000:01:06.0/dvb/dvb3.frontend0':<br>
                  KERNEL=="dvb3.frontend0"<br>
                  SUBSYSTEM=="dvb"<br>
                  DRIVER==""<br>
              <br>
              VDR-test-cellar (SDB1): udevadm info --query=all
              --name=/dev/dvb/adapter4/frontend0 --attribute-walk<br>
                looking at device
              '/devices/pci0000:00/0000:00:0d.0/0000:02:00.0/dvb/dvb4.frontend0':<br>
                  KERNEL=="dvb4.frontend0"<br>
                  SUBSYSTEM=="dvb"<br>
                  DRIVER==""<br>
              <br>
              At the moment I cannot find anything to identify the 4
              Tuners on the Cine S2, the FF on 01:06 is easy.<br>
              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<br>
              at that time.  I'm wondering if the DDBridge driver will
              always number in the correct order.<br>
              <br>
              So I guess I'll try to make the FF FE0/0, and hope that
              the DDBRidge driver will do the rest.<br>
              <br>
              Cheers Brian<br>
              <br>
              <br>
              <br>
              <br>
              <br>
              <fieldset class="mimeAttachmentHeader"></fieldset>
              <br>
              <pre wrap="">_______________________________________________
vdr mailing list
<a moz-do-not-send="true" class="moz-txt-link-abbreviated" href="mailto:vdr@linuxtv.org">vdr@linuxtv.org</a>
<a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr">http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr</a>
</pre>
            </blockquote>
            <br>
            <br>
            <fieldset class="mimeAttachmentHeader"></fieldset>
            <br>
            <pre wrap="">_______________________________________________
vdr mailing list
<a moz-do-not-send="true" class="moz-txt-link-abbreviated" href="mailto:vdr@linuxtv.org">vdr@linuxtv.org</a>
<a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr">http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr</a>
</pre>
          </blockquote>
          Hi,<br>
          well Its exactly what I was doing, and I cant see a
          difference. Here an example of two of the Cine S2 Tuners:<br>
          <br>
          VDR-test-cellar (SDB1): udevadm info -a -p $(udevadm info -q
          path -n /dev/dvb/adapter3/frontend0)<br>
          <br>
          Udevadm info starts with the device specified by the devpath
          and then<br>
          walks up the chain of parent devices. It prints for every
          device<br>
          found, all possible attributes in the udev rules key format.<br>
          A rule to match, can be composed by the attributes of the
          device<br>
          and the attributes from one single parent device.<br>
          <br>
            looking at device
          '/devices/pci0000:00/0000:00:0d.0/0000:02:00.0/dvb/dvb3.frontend0':<br>
              KERNEL=="dvb3.frontend0"<br>
              SUBSYSTEM=="dvb"<br>
              DRIVER==""<br>
          <br>
            looking at parent device
          '/devices/pci0000:00/0000:00:0d.0/0000:02:00.0':<br>
              KERNELS=="0000:02:00.0"<br>
              SUBSYSTEMS=="pci"<br>
              DRIVERS=="DDBridge"<br>
              ATTRS{irq}=="16"<br>
              ATTRS{subsystem_vendor}=="0xdd01"<br>
              ATTRS{broken_parity_status}=="0"<br>
              ATTRS{class}=="0x048000"<br>
              ATTRS{consistent_dma_mask_bits}=="32"<br>
              ATTRS{dma_mask_bits}=="32"<br>
              ATTRS{local_cpus}=="ff"<br>
              ATTRS{device}=="0x0003"<br>
              ATTRS{enable}=="1"<br>
              ATTRS{msi_bus}==""<br>
              ATTRS{local_cpulist}=="0-7"<br>
              ATTRS{vendor}=="0xdd01"<br>
              ATTRS{subsystem_device}=="0x0020"<br>
          <br>
            looking at parent device '/devices/pci0000:00/0000:00:0d.0':<br>
              KERNELS=="0000:00:0d.0"<br>
              SUBSYSTEMS=="pci"<br>
              DRIVERS=="pcieport"<br>
              ATTRS{irq}=="40"<br>
              ATTRS{subsystem_vendor}=="0x10de"<br>
              ATTRS{broken_parity_status}=="0"<br>
              ATTRS{class}=="0x060400"<br>
              ATTRS{consistent_dma_mask_bits}=="32"<br>
              ATTRS{dma_mask_bits}=="32"<br>
              ATTRS{local_cpus}=="ff"<br>
              ATTRS{device}=="0x0378"<br>
              ATTRS{enable}=="2"<br>
              ATTRS{msi_bus}=="1"<br>
              ATTRS{local_cpulist}=="0-7"<br>
              ATTRS{vendor}=="0x10de"<br>
              ATTRS{subsystem_device}=="0x0000"<br>
          <br>
            looking at parent device '/devices/pci0000:00':<br>
              KERNELS=="pci0000:00"<br>
              SUBSYSTEMS==""<br>
              DRIVERS==""<br>
          <br>
          VDR-test-cellar (SDB1): udevadm info -a -p $(udevadm info -q
          path -n /dev/dvb/adapter4/frontend0)<br>
          <br>
          Udevadm info starts with the device specified by the devpath
          and then<br>
          walks up the chain of parent devices. It prints for every
          device<br>
          found, all possible attributes in the udev rules key format.<br>
          A rule to match, can be composed by the attributes of the
          device<br>
          and the attributes from one single parent device.<br>
          <br>
            looking at device
          '/devices/pci0000:00/0000:00:0d.0/0000:02:00.0/dvb/dvb4.frontend0':<br>
              KERNEL=="dvb4.frontend0"<br>
              SUBSYSTEM=="dvb"<br>
              DRIVER==""<br>
          <br>
            looking at parent device
          '/devices/pci0000:00/0000:00:0d.0/0000:02:00.0':<br>
              KERNELS=="0000:02:00.0"<br>
              SUBSYSTEMS=="pci"<br>
              DRIVERS=="DDBridge"<br>
              ATTRS{irq}=="16"<br>
              ATTRS{subsystem_vendor}=="0xdd01"<br>
              ATTRS{broken_parity_status}=="0"<br>
              ATTRS{class}=="0x048000"<br>
              ATTRS{consistent_dma_mask_bits}=="32"<br>
              ATTRS{dma_mask_bits}=="32"<br>
              ATTRS{local_cpus}=="ff"<br>
              ATTRS{device}=="0x0003"<br>
              ATTRS{enable}=="1"<br>
              ATTRS{msi_bus}==""<br>
              ATTRS{local_cpulist}=="0-7"<br>
              ATTRS{vendor}=="0xdd01"<br>
              ATTRS{subsystem_device}=="0x0020"<br>
          <br>
            looking at parent device '/devices/pci0000:00/0000:00:0d.0':<br>
              KERNELS=="0000:00:0d.0"<br>
              SUBSYSTEMS=="pci"<br>
              DRIVERS=="pcieport"<br>
              ATTRS{irq}=="40"<br>
              ATTRS{subsystem_vendor}=="0x10de"<br>
              ATTRS{broken_parity_status}=="0"<br>
              ATTRS{class}=="0x060400"<br>
              ATTRS{consistent_dma_mask_bits}=="32"<br>
              ATTRS{dma_mask_bits}=="32"<br>
              ATTRS{local_cpus}=="ff"<br>
              ATTRS{device}=="0x0378"<br>
              ATTRS{enable}=="2"<br>
              ATTRS{msi_bus}=="1"<br>
              ATTRS{local_cpulist}=="0-7"<br>
              ATTRS{vendor}=="0x10de"<br>
              ATTRS{subsystem_device}=="0x0000"<br>
          <br>
            looking at parent device '/devices/pci0000:00':<br>
              KERNELS=="pci0000:00"<br>
              SUBSYSTEMS==""<br>
              DRIVERS==""<br>
          <br>
        </blockquote>
        In this case, you can write an external program witch output the
        name when you match a front end of ddbridge :<br>
        KERNEL=="dvb[0-9]*.frontend0", SUBSYSTEMS=="pci",
        DRIVERS=="DDBridge", PROGRAM="/your/program %k", NAME="%c"<br>
        <br>
        Something like :<br>
        if [ ! -a /path/frontendname1 ]; then echo frontendname1; exit;
        fi;<br>
        same with frontendname2 and frontendname3<br>
        <br>
        The kernel name of the device is available if needed (%k in the
        udev rule).<br>
        <br>
        Marc.</blockquote>
      Hi Marc,<br>
      you've lost me.  <br>
      <br>
      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 <br>
      was FE0/0 to another one within FE{1-3}/0. That means potentially
      overwriting the names of some of the other DDBridge<br>
      tuners, and then renaming them later on too.<br>
      Unfortunately the same rule will pop for all four DDBridge tuners,
      so I guess I must keep track of what I have already renamed.<br>
      <br>
      Or I'm missing something about the logic to be used here. <br>
      <br>
      Take this example:<br>
      Aug 11 11:09:31 localhost vdr: [936] frontend 0/0 provides
      DVB-S,DVB-S2,DSS with QPSK ("STV090x Multistandard") <br>
      Aug 11 11:09:31 localhost vdr: [936] frontend 1/0 provides DVB-C
      with QAM16,QAM32,QAM64,QAM128,QAM256 ("ST STV0297 DVB-C") <br>
      Aug 11 11:09:31 localhost vdr: [936] frontend 2/0 provides
      DVB-S,DVB-S2,DSS with QPSK ("STV090x Multistandard") <br>
      Aug 11 11:09:31 localhost vdr: [936] frontend 4/0 provides
      DVB-S,DVB-S2,DSS with QPSK ("STV090x Multistandard") <br>
      <br>
      1. Rename FE1/0 to FE0/0<br>
      2. Rename FE0/0 .... I'm renaming the PCI device so it should
      rename the "Old" FE0/0 to FE 1/0<br>
      3. Rename FE2/0 to FE2/0. Should be OK, actually renaming the
      third DVB device to FE2/0.<br>
      4. Rename fourth DVB device to FE3/0<br>
      <br>
      In this case the FF could be in any position <br>
      <br>
      Cheers Brian<br>
      <br>
      <br>
      <br>
      <br>
      <br>
      <br>
      <br>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
vdr mailing list
<a class="moz-txt-link-abbreviated" href="mailto:vdr@linuxtv.org">vdr@linuxtv.org</a>
<a class="moz-txt-link-freetext" href="http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr">http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr</a>
</pre>
    </blockquote>
    Or, hows about I just go in and rename the devices, same scheme
    every time.  I think that would work if I knew<br>
    how to differentiate between the 4 Cine S2 tuners, currently I dont
    know how to do that.<br>
    <br>
    Cheers Brian<br>
    <br>
    <br>
    <br>
    <br>
  </body>
</html>