[yocto] [yocto-docs][PATCH 2/2] dev-manual: Add section about /dev population
Rifenbark, Scott M
scott.m.rifenbark at intel.com
Fri Jan 16 16:04:59 PST 2015
Pascal,
I have applied this patch with some editing. Also, applied the patch that added the USE_DEVFS variable to the ref-manual.
Thanks,
Scott
>-----Original Message-----
>From: yocto-bounces at yoctoproject.org [mailto:yocto-
>bounces at yoctoproject.org] On Behalf Of Pascal Bach
>Sent: Wednesday, January 07, 2015 6:58 AM
>To: yocto at yoctoproject.org
>Subject: [yocto] [yocto-docs][PATCH 2/2] dev-manual: Add section about
>/dev population
>
>Signed-off-by: Pascal Bach <pascal.bach at siemens.com>
>---
> .../dev-manual/dev-manual-common-tasks.xml | 104
>++++++++++++++++++++
> 1 file changed, 104 insertions(+)
>
>diff --git a/documentation/dev-manual/dev-manual-common-tasks.xml
>b/documentation/dev-manual/dev-manual-common-tasks.xml
>index 17d725b..9072586 100644
>--- a/documentation/dev-manual/dev-manual-common-tasks.xml
>+++ b/documentation/dev-manual/dev-manual-common-tasks.xml
>@@ -7582,6 +7582,110 @@ Gateways via their Web
>Interfaces</ulink>"</emphasis>
> </section>
> </section>
>
>+ <section id="selecting-dev-manager">
>+ <title>Selecting a Device Manager</title>
>+
>+ <para>
>+ Yocto provides multiple ways to manage <filename>/dev</filename>
>+ <itemizedlist>
>+ <listitem><para>
>+ <emphasis>Persistent and pre populated
><filename>/dev</filename>:</emphasis>
>+ in this case the <filename>/dev</filename> directory is persistent
>+ and the required device nodes are created at build time.
>+ </para></listitem>
>+
>+ <listitem><para>
>+ <emphasis>Use <filename>devtmps</filename> with a device
>manager:</emphasis>
>+ in this case the <filename>/dev</filename> directory is provided
>+ by the kernel as an in memory file system and is automatically
>+ populated by the kernel at runtime. Additional configuration of
>+ device nodes is done in user space by a device manager like
>+ <filename>udev</filename> or <filename>busybox-
>mdev</filename>.
>+ </para></listitem>
>+ </itemizedlist>
>+ </para>
>+
>+ <section id="static-dev-management">
>+ <title>Use Persistent and pre-populated
><filename>/dev</filename></title>
>+
>+ <para>
>+ To use the static method for device population the variable
>+ <ulink url='&YOCTO_DOCS_REF_URL;#var-
>USE_DEVFS'><filename>USE_DEVFS</filename></ulink>
>+ needs to be set to 0.
>+
>+ <literallayout class='monospaced'>
>+ USE_DEVFS = "0"
>+ </literallayout>
>+ </para>
>+
>+ <para>
>+ The content of the resulting <filename>/dev</filename> directory
>+ is defined in a Device Table file. The device table to use is defined by
>the variable
>+ <ulink url='&YOCTO_DOCS_REF_URL;#var-
>IMAGE_DEVICE_TABLES'><filename>IMAGE_DEVICE_TABLES</filename></ul
>ink> and should be set
>+ in the <ulink url='&YOCTO_DOCS_REF_URL;#var-
>MACHINE'><filename>MACHINE</filename></ulink>,
>+ <ulink url='&YOCTO_DOCS_REF_URL;#var-
>DISTRO'><filename>DISTRO</filename></ulink>
>+ or <filename>local.conf</filename> configuration file.
>+ </para>
>+
>+ <para>
>+ If nothing is defined the default <filename>device_table-
>minimal.txt</filename> is used.
>+ </para>
>+
>+ <para>
>+ The population is handled by the <filename>makedevs</filename>
>utility
>+ during image creation.
>+
>+ <literallayout class='monospaced'>
>+ IMAGE_DEVICE_TABLES = "device_table-mymachine.txt"
>+ </literallayout>
>+
>+ </para>
>+ </section>
>+
>+ <section id="devtmps-dev-management">
>+ <title>Use <filename>devtmpfs</filename> and a device
>manager</title>
>+
>+ <para>
>+ To use the dynamic method for device population the variable
>+ <ulink url='&YOCTO_DOCS_REF_URL;#var-
>USE_DEVFS'><filename>USE_DEVFS</filename></ulink>
>+ needs to be set to 1. This is the default.
>+
>+ <literallayout class='monospaced'>
>+ USE_DEVFS = "1"
>+ </literallayout>
>+
>+ This way the resulting <filename>/dev</filename> is populated by
>the kernel
>+ using <filename>devtmpfs</filename>. Make sure the
>corresponding
>+ kernel configuration variable
><filename>CONFIG_DEVTMPFS</filename> is set
>+ when building a linux kernel.
>+
>+ </para>
>+ <para>
>+ All devices created by <filename>devtmpfs</filename> will be
>+ owned by <filename>root</filename> and have permissions
><filename>0600</filename>.
>+
>+ To have more control over the device nodes a device manager like
>+ <filename>udev</filename> or <filename>busybox-
>mdev</filename>
>+ can be used.
>+
>+ The device manager to use is defined by the variable
>+ <filename>VIRTUAL-RUNTIME_dev_manager</filename> and
>should be set
>+ in the <ulink url='&YOCTO_DOCS_REF_URL;#var-
>MACHINE'><filename>MACHINE</filename></ulink>,
>+ <ulink url='&YOCTO_DOCS_REF_URL;#var-
>DISTRO'><filename>DISTRO</filename></ulink>
>+ or <filename>local.conf</filename> configuration file.
>+
>+ <literallayout class='monospaced'>
>+
>+ VIRTUAL-RUNTIME_dev_manager = "udev"
>+
>+ # Some alternative values
>+ # VIRTUAL-RUNTIME_dev_manager = "busybox-mdev"
>+ # VIRTUAL-RUNTIME_dev_manager = "systemd"
>+ </literallayout>
>+ </para>
>+ </section>
>+ </section>
>+
> <section id="platdev-appdev-srcrev">
> <title>Using an External SCM</title>
>
>--
>1.7.10.4
>
>--
>_______________________________________________
>yocto mailing list
>yocto at yoctoproject.org
>https://lists.yoctoproject.org/listinfo/yocto
More information about the yocto
mailing list