linux-hotplug.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Order of DVB devices
@ 2010-01-26 14:36 Andreas Besse
  2010-01-26 15:22 ` Greg KH
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Andreas Besse @ 2010-01-26 14:36 UTC (permalink / raw)
  To: linux-hotplug

Hello,

i have a system with multiple DVB cards of the same type and want to
specify the order of the devices /dev/dvb/adapterX. The device plugged
into the physical PCI slot 1 on the mainboard should be assigned to
/dev/dvb/adapter0 and the card in PCI slot 2 should be assigned to
/dev/dvb/adapter1.

To identify a DVB card I looked at the output of udevinfo for 2 DVB
devices. The devices don't provide a serial, so the difference is only
in the KERNELS parameter (e.g. KERNELS="0000:02:00.0" vs.
KERNELS="0000:03:00.0"). The Kernels parameter seem to reflect the PCI
Bus ID.

According to the thread http://thread.gmane.org/gmane.linux.kernel.pci/7446/focust47 on the linux-pci mailinglist, the PCI Bus ID is *not* deterministic and totally random determined at boot. 

In the following post http://thread.gmane.org/gmane.linux.kernel.pci/7446/focust67 there is mentioned that the order of the devices can be specified by using udev rules.

But how this can be done? Which information in /sys can be used to determine which DVB device is connected to which specific slot?

regards,
Andreas Besse


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Order of DVB devices
  2010-01-26 14:36 Order of DVB devices Andreas Besse
@ 2010-01-26 15:22 ` Greg KH
  2010-01-27  4:18 ` Kay Sievers
  2010-01-27 13:38 ` Andreas Besse
  2 siblings, 0 replies; 4+ messages in thread
From: Greg KH @ 2010-01-26 15:22 UTC (permalink / raw)
  To: linux-hotplug

On Tue, Jan 26, 2010 at 03:36:39PM +0100, Andreas Besse wrote:
> Hello,
> 
> i have a system with multiple DVB cards of the same type and want to
> specify the order of the devices /dev/dvb/adapterX. The device plugged
> into the physical PCI slot 1 on the mainboard should be assigned to
> /dev/dvb/adapter0 and the card in PCI slot 2 should be assigned to
> /dev/dvb/adapter1.
> 
> To identify a DVB card I looked at the output of udevinfo for 2 DVB
> devices. The devices don't provide a serial, so the difference is only
> in the KERNELS parameter (e.g. KERNELS="0000:02:00.0" vs.
> KERNELS="0000:03:00.0"). The Kernels parameter seem to reflect the PCI
> Bus ID.
> 
> According to the thread
> http://thread.gmane.org/gmane.linux.kernel.pci/7446/focust47 on the
> linux-pci mailinglist, the PCI Bus ID is *not* deterministic and
> totally random determined at boot. 
> 
> In the following post
> http://thread.gmane.org/gmane.linux.kernel.pci/7446/focust67 there
> is mentioned that the order of the devices can be specified by using
> udev rules.
> 
> But how this can be done? Which information in /sys can be used to
> determine which DVB device is connected to which specific slot?

Did you try the latest version of udev that has the persistant rules for
the v4l devices in it and look at the symlinks that are created to see
if they solve the problem for you?

thanks,

greg k-h

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Order of DVB devices
  2010-01-26 14:36 Order of DVB devices Andreas Besse
  2010-01-26 15:22 ` Greg KH
@ 2010-01-27  4:18 ` Kay Sievers
  2010-01-27 13:38 ` Andreas Besse
  2 siblings, 0 replies; 4+ messages in thread
From: Kay Sievers @ 2010-01-27  4:18 UTC (permalink / raw)
  To: linux-hotplug

On Tue, Jan 26, 2010 at 16:22, Greg KH <greg@kroah.com> wrote:
> On Tue, Jan 26, 2010 at 03:36:39PM +0100, Andreas Besse wrote:
>> i have a system with multiple DVB cards of the same type and want to
>> specify the order of the devices /dev/dvb/adapterX. The device plugged
>> into the physical PCI slot 1 on the mainboard should be assigned to
>> /dev/dvb/adapter0 and the card in PCI slot 2 should be assigned to
>> /dev/dvb/adapter1.

We usually do not change kernel names, but create meaningful named
symlinks to them. Stuff gets confused when /sys and /dev get
out-of-sync.

>> In the following post
>> http://thread.gmane.org/gmane.linux.kernel.pci/7446/focust67 there
>> is mentioned that the order of the devices can be specified by using
>> udev rules.

The order can usually only specified by unconditionally loading kernel
driver modules in a defined order. This usually works fine for PCI
devices, but can obviously not work if there are USB devices involved.

>> But how this can be done? Which information in /sys can be used to
>> determine which DVB device is connected to which specific slot?
>
> Did you try the latest version of udev that has the persistant rules for
> the v4l devices in it and look at the symlinks that are created to see
> if they solve the problem for you?

Looking at it now, I think we only do video4linux, not the DVB stuff,
which has its own class. But it should be possible to implement a
similar model for /dev/dvb/by-id, /dev/dvb/by-path without much
problems. It's just, that nobody really cared so far.

Thanks,
Kay

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Order of DVB devices
  2010-01-26 14:36 Order of DVB devices Andreas Besse
  2010-01-26 15:22 ` Greg KH
  2010-01-27  4:18 ` Kay Sievers
@ 2010-01-27 13:38 ` Andreas Besse
  2 siblings, 0 replies; 4+ messages in thread
From: Andreas Besse @ 2010-01-27 13:38 UTC (permalink / raw)
  To: linux-hotplug

Kay Sievers wrote:
> On Tue, Jan 26, 2010 at 16:22, Greg KH <greg@kroah.com> wrote:
>   
>> On Tue, Jan 26, 2010 at 03:36:39PM +0100, Andreas Besse wrote:
>>     
>>> i have a system with multiple DVB cards of the same type and want to
>>> specify the order of the devices /dev/dvb/adapterX. The device plugged
>>> into the physical PCI slot 1 on the mainboard should be assigned to
>>> /dev/dvb/adapter0 and the card in PCI slot 2 should be assigned to
>>> /dev/dvb/adapter1.
>>>       
>
> We usually do not change kernel names, but create meaningful named
> symlinks to them. Stuff gets confused when /sys and /dev get
> out-of-sync.
>
>   
>>> In the following post
>>> http://thread.gmane.org/gmane.linux.kernel.pci/7446/focust67 there
>>> is mentioned that the order of the devices can be specified by using
>>> udev rules.
>>>       
>
> The order can usually only specified by unconditionally loading kernel
> driver modules in a defined order. This usually works fine for PCI
> devices, but can obviously not work if there are USB devices involved.
>
>   
>>> But how this can be done? Which information in /sys can be used to
>>> determine which DVB device is connected to which specific slot?
>>>       
>> Did you try the latest version of udev that has the persistant rules for
>> the v4l devices in it and look at the symlinks that are created to see
>> if they solve the problem for you?
>>     
>
> Looking at it now, I think we only do video4linux, not the DVB stuff,
> which has its own class. But it should be possible to implement a
> similar model for /dev/dvb/by-id, /dev/dvb/by-path without much
> problems. It's just, that nobody really cared so far.
>
> Thanks,
> Kay
>   

but how can these persistent rules solve the issue that the order of PCI Slots (PCI Bus IDs) is not deterministic and totally random determined at boot?

I think the udev rules only can use informations which are already available in /sys/ ?


regards,
Andreas Besse

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2010-01-27 13:38 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-01-26 14:36 Order of DVB devices Andreas Besse
2010-01-26 15:22 ` Greg KH
2010-01-27  4:18 ` Kay Sievers
2010-01-27 13:38 ` Andreas Besse

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).