[mythtv-users] tuner numbering

Hika van den Hoven hikavdh at gmail.com
Thu Feb 27 17:36:05 UTC 2014


Hoi Daryl,

Thursday, February 27, 2014, 5:38:01 PM, you wrote:

> On Thu, Feb 27, 2014 at 10:00 AM, Daryl McDonald <darylangela at gmail.com> wrote:
>> On Thu, Feb 27, 2014 at 5:01 AM, Roger Siddons <dizygotheca at ntlworld.com> wrote:
>>> On Thu, 27 Feb 2014 02:39:59 -0000, Daryl McDonald <darylangela at gmail.com>
>>> wrote:
>>>
>>>>
>>>> daryl at daryl-A780L3C:~$ udevadm test $(udevadm info -q path -n
>>>> /dev/dvb/adapter*/dvr0)
>>>> run_command: calling: test
>>>> adm_test: version 175
>>>> This program is for debugging only, it does not run any program,
>>>> specified by a RUN key. It may show incorrect results, because
>>>> some values may be different, or not available at a simulation run.
>>>>
>>>
>>> <snip>
>>>
>>>
>>>> parse_file: reading '/lib/udev/rules.d/50-udev-default.rules' as rules
>>>> file
>>>
>>>
>>> <snip>
>>>
>>>
>>>> parse_file: reading '/lib/udev/rules.d/97-bluetooth-hid2hci.rules' as
>>>> rules file
>>>> parse_file: reading '/etc/udev/rules.d/capture-card.rules' as rules file
>>>> parse_file: reading '/etc/udev/rules.d/digital-card.rules' as rules file
>>>
>>>
>>> <snip>
>>>
>>>
>>>> udev_rules_apply_to_event: GROUP 44
>>>> /lib/udev/rules.d/50-udev-default.rules:46
>>>
>>>
>>> The order of udev rules is important - I believe it only applies the first
>>> match it finds. The ordering is lexicographical, which is why rules files
>>> generally start with a number. Your rules are at the end of the list and are
>>> being usurped by 50-udev-default.rules.
>>>
>>> What happens when you rename "digital-card.rules" to "10-digital-card.rules"
>>> and repeat ? We're looking for something like:
>>>
>>> udev_rules_apply_to_event: PROGRAM <blah,blah,blah>
>>> /etc/udev/rules.d/10-digital-card.rules
>>>
>>> and
>>>
>>> DEVLINKS=/dev/dvb/HP1250/dvr0
>>>
>>> _______________________________________________
>>> mythtv-users mailing list
>>> mythtv-users at mythtv.org
>>> http://www.mythtv.org/mailman/listinfo/mythtv-users
>>> http://wiki.mythtv.org/Mailing_List_etiquette
>>> MythTV Forums: https://forum.mythtv.org
>>
>> daryl at daryl-A780L3C:~$ udevadm test $(udevadm info -q path -n
>> /dev/dvb/adapter*/dvr0)
>> run_command: calling: test
>> adm_test: version 175
>> This program is for debugging only, it does not run any program,
>> specified by a RUN key. It may show incorrect results, because
>> some values may be different, or not available at a simulation run.
>>
>> parse_file: reading '/etc/udev/rules.d/10-digital-card.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/40-crda.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/40-fuse.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/40-gnupg.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/40-hplip.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/40-ia64.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/40-inputattach.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/40-libgphoto2-2.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/40-libsane.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/40-ppc.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/40-usb-media-players.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/40-usb_modeswitch.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/40-xdiagnose.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/41-mythtv-permissions.rules' as
>> rules file
>> parse_file: reading '/lib/udev/rules.d/42-qemu-usb.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/50-firmware.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/50-udev-default.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/55-dm.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/56-hpmud_support.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/60-cdrom_id.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/60-pcmcia.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/60-persistent-alsa.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/60-persistent-input.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/60-persistent-serial.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/60-persistent-storage-dm.rules'
>> as rules file
>> parse_file: reading
>> '/lib/udev/rules.d/60-persistent-storage-tape.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/60-persistent-storage.rules' as
>> rules file
>> parse_file: reading '/lib/udev/rules.d/60-persistent-v4l.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/61-accelerometer.rules' as rules file
>> parse_file: reading
>> '/lib/udev/rules.d/61-gnome-bluetooth-rfkill.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/64-xorg-xkb.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/66-xorg-synaptics-quirks.rules'
>> as rules file
>> parse_file: reading '/lib/udev/rules.d/69-cd-sensors.rules' as rules file
>> add_rule: IMPORT found builtin 'usb_id', replacing
>> /lib/udev/rules.d/69-cd-sensors.rules:76
>> parse_file: reading '/lib/udev/rules.d/69-libmtp.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/69-xorg-vmmouse.rules' as rules file
>> parse_file: reading
>> '/lib/udev/rules.d/69-xserver-xorg-input-wacom-lts-quantal.rules' as
>> rules file
>> parse_file: reading '/etc/udev/rules.d/70-persistent-cd.rules' as rules file
>> parse_file: reading '/etc/udev/rules.d/70-persistent-net.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/70-printers.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/70-udev-acl.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/75-cd-aliases-generator.rules'
>> as rules file
>> parse_file: reading '/lib/udev/rules.d/75-net-description.rules' as rules file
>> parse_file: reading
>> '/lib/udev/rules.d/75-persistent-net-generator.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/75-probe_mtd.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/75-tty-description.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/77-mm-ericsson-mbm.rules' as rules file
>> parse_file: reading
>> '/lib/udev/rules.d/77-mm-longcheer-port-types.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/77-mm-nokia-port-types.rules'
>> as rules file
>> parse_file: reading
>> '/lib/udev/rules.d/77-mm-pcmcia-device-blacklist.rules' as rules file
>> parse_file: reading
>> '/lib/udev/rules.d/77-mm-platform-serial-whitelist.rules' as rules
>> file
>> parse_file: reading
>> '/lib/udev/rules.d/77-mm-qdl-device-blacklist.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/77-mm-simtech-port-types.rules'
>> as rules file
>> parse_file: reading
>> '/lib/udev/rules.d/77-mm-usb-device-blacklist.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/77-mm-x22x-port-types.rules' as
>> rules file
>> parse_file: reading '/lib/udev/rules.d/77-mm-zte-port-types.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/77-nm-olpc-mesh.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/78-graphics-card.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/78-sound-card.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/80-drivers.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/80-mm-candidate.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/80-udisks.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/85-brltty.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/85-hdparm.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/85-hplj10xx.rules' as rules file
>> parse_file: reading
>> '/lib/udev/rules.d/85-keyboard-configuration.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/85-lirc.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/85-regulatory.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/85-usbmuxd.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/90-alsa-restore.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/90-alsa-ucm.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/90-libgpod.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/90-pulseaudio.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/95-cd-devices.rules' as rules file
>> parse_file: reading
>> '/lib/udev/rules.d/95-keyboard-force-release.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/95-keymap.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/95-udev-late.rules' as rules file
>> parse_file: reading
>> '/lib/udev/rules.d/95-upower-battery-recall-dell.rules' as rules file
>> parse_file: reading
>> '/lib/udev/rules.d/95-upower-battery-recall-fujitsu.rules' as rules
>> file
>> parse_file: reading
>> '/lib/udev/rules.d/95-upower-battery-recall-gateway.rules' as rules
>> file
>> parse_file: reading
>> '/lib/udev/rules.d/95-upower-battery-recall-ibm.rules' as rules file
>> parse_file: reading
>> '/lib/udev/rules.d/95-upower-battery-recall-lenovo.rules' as rules
>> file
>> parse_file: reading
>> '/lib/udev/rules.d/95-upower-battery-recall-toshiba.rules' as rules
>> file
>> parse_file: reading '/lib/udev/rules.d/95-upower-csr.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/95-upower-hid.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/95-upower-wup.rules' as rules file
>> parse_file: reading '/lib/udev/rules.d/97-bluetooth-hid2hci.rules' as rules file
>> parse_file: reading '/etc/udev/rules.d/capture-card.rules' as rules file
>> udev_rules_new: rules use 273648 bytes tokens (22804 * 12 bytes),
>> 45517 bytes buffer
>> udev_rules_new: temporary index used 77800 bytes (3890 * 20 bytes)
>> udev_device_new_from_syspath: device 0x7f5b850c72d0 has devpath
>> '/devices/pci0000:00/0000:00:14.4/0000:04:01.2/dvb/dvb0.dvr0'
>> udev_device_new_from_syspath: device 0x7f5b850d99a0 has devpath
>> '/devices/pci0000:00/0000:00:14.4/0000:04:01.2/dvb/dvb0.dvr0'
>> udev_device_read_db: device 0x7f5b850d99a0 filled with db file data
>> udev_device_new_from_syspath: device 0x7f5b850da940 has devpath
>> '/devices/pci0000:00/0000:00:14.4/0000:04:01.2'
>> udev_device_new_from_syspath: device 0x7f5b850db130 has devpath
>> '/devices/pci0000:00/0000:00:14.4'
>> udev_device_new_from_syspath: device 0x7f5b850db8a0 has devpath
>> '/devices/pci0000:00'
>> udev_rules_apply_to_event: GROUP 44 /lib/udev/rules.d/50-udev-default.rules:46
>> udev_rules_apply_to_event: RUN 'udev-acl --action=$env{ACTION}
>> --device=$env{DEVNAME}' /lib/udev/rules.d/70-udev-acl.rules:74
>> udev_event_execute_rules: no node name set, will use kernel supplied
>> name 'dvb/adapter0/dvr0'
>> udev_node_add: creating device node '/dev/dvb/adapter0/dvr0',
>> devnum=212:2, mode=0660, uid=0, gid=44
>> udev_node_mknod: preserve file '/dev/dvb/adapter0/dvr0', because it
>> has correct dev_t
>> udev_node_mknod: preserve permissions /dev/dvb/adapter0/dvr0, 020660,
>> uid=0, gid=44
>> node_symlink: preserve already existing symlink '/dev/char/212:2' to
>> '../dvb/adapter0/dvr0'
>> udev_device_update_db: unable to create temporary db file
>> '/run/udev/data/c212:2.tmp': Permission denied
>> ACTION=add
>> DEVNAME=/dev/dvb/adapter0/dvr0
>> DEVPATH=/devices/pci0000:00/0000:00:14.4/0000:04:01.2/dvb/dvb0.dvr0
>> DVB_ADAPTER_NUM=0
>> DVB_DEVICE_NUM=0
>> DVB_DEVICE_TYPE=dvr
>> MAJOR=212
>> MINOR=2
>> SUBSYSTEM=dvb
>> TAGS=:udev-acl:
>> UDEV_LOG=6
>> USEC_INITIALIZED=25471336
>> run: 'udev-acl --action=add --device=/dev/dvb/adapter0/dvr0'
>> daryl at daryl-A780L3C:~$
>>
>> The following "README", found in the /etc/udev/rules.d directory,
>> seems to suggest no number, or higher number override lower number
>> rules:
>>
>> The files in this directory are read by udev(7) and used when events
>> are performed by the kernel.  The udev daemon watches this directory
>> with inotify so that changes to these files are automatically picked
>> up, for this reason they must be files and not symlinks to another
>> location as in the case in Debian.
>>
>> Packages do not generally install rules here, this directory is for
>> local rules.  If you want to override behaviour of package-supplied
>> rules, which can be found in /lib/udev/rules.d, you can do one of
>> two things:
>>
>>  1) Write your own rules in this directory that assign the name,
>>     symlinks, permissions, etc. that you want.  Pick a number higher
>>     than the rules you want to override, and yours will be used.
>>
>>  2) Copy the file from /lib/udev/rules.d and edit it here; you
>>     should generally only do this if you want to prevent a program
>>     from being run.
>>
>>
>> If the ordering of files in this directory are not important to you,
>> it's recommended that you simply name your files "descriptive-name.rules"
>> such that they are processed AFTER all numbered rules in both this
>> directory and /lib/udev/rules.d and thus override anything set there.
>>
>> Where does the already existing node_symlink come from:
>> node_symlink: preserve already existing symlink '/dev/char/212:2' to
>> '../dvb/adapter0/dvr0'
>> and how can this be un-"preserved"?    Thanks Daryl

> Because it had no positive effect, I've removed the "10-" from the
> "digital-card.rule" and it would seem to me that:

> daryl at daryl-A780L3C:~$ ls -l /dev/dvb*
> lrwxrwxrwx 1 root root 22 Feb 27 09:33 /dev/dvbHP1250 -> dvb/adapter6/frontend0
This simlink should be a directory /dev/dvb/HP1250 containing simlinks
to all the device nodes in /dev/dvb/adapter6
Isn't this the simlink created by your earlier tries a few weeks ago?
If everything works: ls -l /dev/dvb/* should give you the two adapter
directories with contents and the newly created directories with
contents. Try replacing /bin/sh with /bin/bash in your rule!

> the above query says that the modprobe option and the symlink script
> are functional for the HP1250 and not for the PC800i.

> Clutching at straws here, but does the module blacklist that I have
> implemented have anything to do with this:

> #Modules from PCTV tuner that interfere with stb control
> blacklist rc_pinnacle_pctv_hd
> ir_lirc_codec

> Above is the only thing I've done to that card specifically.   Daryl
> _______________________________________________
> mythtv-users mailing list
> mythtv-users at mythtv.org
> http://www.mythtv.org/mailman/listinfo/mythtv-users
> http://wiki.mythtv.org/Mailing_List_etiquette
> MythTV Forums: https://forum.mythtv.org




Tot mails,
  Hika                            mailto:hikavdh at gmail.com

"Zonder hoop kun je niet leven
Zonder leven is er geen hoop
Het eeuwige dilemma
Zeker als je hoop moet vernietigen om te kunnen overleven!"

De lerende Mens
--



More information about the mythtv-users mailing list