[media] doc-rst: convert udev chapter to rst

This chapter is outdated. I almost removed, but, as we're lacking
documentation about how to make DVB devices persistent, I opted,
instead, to keep it, and add a note about that.

Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
This commit is contained in:
Mauro Carvalho Chehab 2016-07-17 13:57:24 -03:00
parent d91b11bfdb
commit 70e8d3e999
2 changed files with 24 additions and 8 deletions

View File

@ -29,4 +29,5 @@ License".
opera-firmware opera-firmware
technisat technisat
ttusb-dec ttusb-dec
udev
contributors contributors

View File

@ -1,9 +1,22 @@
UDEV rules for DVB
==================
.. note::
#) This documentation is outdated. Udev on modern distributions auto-detect
the DVB devices.
#) **TODO:** change this document to explain how to make DVB devices
persistent, as, when a machine has multiple devices, they may be detected
on different orders, which could cause apps that relies on the device
numbers to fail.
The DVB subsystem currently registers to the sysfs subsystem using the The DVB subsystem currently registers to the sysfs subsystem using the
"class_simple" interface. "class_simple" interface.
This means that only the basic information like module loading parameters This means that only the basic information like module loading parameters
are presented through sysfs. Other things that might be interesting are are presented through sysfs. Other things that might be interesting are
currently *not* available. currently **not** available.
Nevertheless it's now possible to add proper udev rules so that the Nevertheless it's now possible to add proper udev rules so that the
DVB device nodes are created automatically. DVB device nodes are created automatically.
@ -21,10 +34,11 @@ The script should be called "dvb.sh" and should be placed into a script
dir where udev can execute it, most likely /etc/udev/scripts/ dir where udev can execute it, most likely /etc/udev/scripts/
So, create a new file /etc/udev/scripts/dvb.sh and add the following: So, create a new file /etc/udev/scripts/dvb.sh and add the following:
------------------------------schnipp------------------------------------------------
.. code-block:: none
#!/bin/sh #!/bin/sh
/bin/echo $1 | /bin/sed -e 's,dvb\([0-9]\)\.\([^0-9]*\)\([0-9]\),dvb/adapter\1/\2\3,' /bin/echo $1 | /bin/sed -e 's,dvb\([0-9]\)\.\([^0-9]*\)\([0-9]\),dvb/adapter\1/\2\3,'
------------------------------schnipp------------------------------------------------
Don't forget to make the script executable with "chmod". Don't forget to make the script executable with "chmod".
@ -34,9 +48,10 @@ directory for rule files. The main udev configuration file /etc/udev/udev.conf
will tell you the directory where the rules are, most likely it's /etc/udev/rules.d/ will tell you the directory where the rules are, most likely it's /etc/udev/rules.d/
Create a new rule file in that directory called "dvb.rule" and add the following line: Create a new rule file in that directory called "dvb.rule" and add the following line:
------------------------------schnipp------------------------------------------------
.. code-block:: none
KERNEL="dvb*", PROGRAM="/etc/udev/scripts/dvb.sh %k", NAME="%c" KERNEL="dvb*", PROGRAM="/etc/udev/scripts/dvb.sh %k", NAME="%c"
------------------------------schnipp------------------------------------------------
If you want more control over the device nodes (for example a special group membership) If you want more control over the device nodes (for example a special group membership)
have a look at "man udev". have a look at "man udev".