[pvrusb2] Persistent device nodes

Jan Ceuleers jan.ceuleers at computer.org
Sat Apr 21 04:36:31 CDT 2012


Jan Ceuleers wrote:
> Hi there.
>
> My cable operator is forcing me to go digital, by discontinuing my
> favourite channels on the analogue side. I have four HVR-1900 tuners,
> two of which I intend to hook up to STBs while the other two will remain
> on the analogue side.
>
> So I now have the problem of device name persistency for the first time.
> Certainly in terms of the /dev/video* device nodes, but since I'd also
> like to use the IR blaster capabilities of the HVR-1900 to control the
> STBs I also have the problem in respect of the LIRC device nodes.
>
> I was wondering if I really have to attack this problem via udev, or
> whether the problem might already have been solved for me by the
> availability of links to the device nodes under /sys/class/pvrusb2/sn-*
>
> Since there are circular references I can't just find /sys/class/pvrusb2
> -L -type l or type c

Never mind: I did the udev thing. Wasn't too hard.

Thanks, Jan


root at zotac:~# cat /etc/udev/rules.d/10-JCE-persistent-tuner.rules
# Create a persistent name /dev/videop0 to tuner SN 7300-00-F06D3877
SUBSYSTEM=="video4linux", KERNEL=="video[0-9]*", 
ATTRS{manufacturer}=="Hauppauge", ATTRS{product}=="WinTV", 
ATTRS{serial}=="7300-00-F06D3877", SYMLINK+="videop0"
# Create a persistent name /dev/lircp0 to tuner SN 7300-00-F06D3877
SUBSYSTEM=="lirc", KERNEL=="lirc[0-9]*", 
ATTRS{manufacturer}=="Hauppauge", ATTRS{product}=="WinTV", 
ATTRS{serial}=="7300-00-F06D3877", SYMLINK+="lircp0"

# Create a persistent name /dev/videop1 to tuner SN 7300-00-F06C9907
SUBSYSTEM=="video4linux", KERNEL=="video[0-9]*", 
ATTRS{manufacturer}=="Hauppauge", ATTRS{product}=="WinTV", 
ATTRS{serial}=="7300-00-F06C9907", SYMLINK+="videop1"
# Create a persistent name /dev/lircp1 to tuner SN 7300-00-F06C9907
SUBSYSTEM=="lirc", KERNEL=="lirc[0-9]*", 
ATTRS{manufacturer}=="Hauppauge", ATTRS{product}=="WinTV", 
ATTRS{serial}=="7300-00-F06C9907", SYMLINK+="lircp1"

# Create a persistent name /dev/videop2 to tuner SN 7300-00-F06EFBC0
SUBSYSTEM=="video4linux", KERNEL=="video[0-9]*", 
ATTRS{manufacturer}=="Hauppauge", ATTRS{product}=="WinTV", 
ATTRS{serial}=="7300-00-F06EFBC0", SYMLINK+="videop2"
# Create a persistent name /dev/lircp2 to tuner SN 7300-00-F06EFBC0
SUBSYSTEM=="lirc", KERNEL=="lirc[0-9]*", 
ATTRS{manufacturer}=="Hauppauge", ATTRS{product}=="WinTV", 
ATTRS{serial}=="7300-00-F06EFBC0", SYMLINK+="lircp2"

# Create a persistent name /dev/videop3 to tuner SN 7300-00-F07801CC
SUBSYSTEM=="video4linux", KERNEL=="video[0-9]*", 
ATTRS{manufacturer}=="Hauppauge", ATTRS{product}=="WinTV", 
ATTRS{serial}=="7300-00-F07801CC", SYMLINK+="videop3"
# Create a persistent name /dev/lircp3 to tuner SN 7300-00-F07801CC
SUBSYSTEM=="lirc", KERNEL=="lirc[0-9]*", 
ATTRS{manufacturer}=="Hauppauge", ATTRS{product}=="WinTV", 
ATTRS{serial}=="7300-00-F07801CC", SYMLINK+="lircp3"


root at zotac:~# ls -l /dev/{video,lirc}p[0-4]
lrwxrwxrwx 1 root root 5 2012-04-21 11:29 /dev/lircp0 -> lirc2
lrwxrwxrwx 1 root root 5 2012-04-21 11:29 /dev/lircp1 -> lirc3
lrwxrwxrwx 1 root root 5 2012-04-21 11:29 /dev/lircp2 -> lirc0
lrwxrwxrwx 1 root root 5 2012-04-21 11:29 /dev/lircp3 -> lirc1
lrwxrwxrwx 1 root root 6 2012-04-21 11:29 /dev/videop0 -> video2
lrwxrwxrwx 1 root root 6 2012-04-21 11:30 /dev/videop1 -> video3
lrwxrwxrwx 1 root root 6 2012-04-21 11:28 /dev/videop2 -> video0
lrwxrwxrwx 1 root root 6 2012-04-21 11:29 /dev/videop3 -> video1



More information about the pvrusb2 mailing list