patch-2.4.18 linux/Documentation/DocBook/kernel-hacking.tmpl
Next file: linux/Documentation/fb/tridentfb.txt
Previous file: linux/Documentation/DMA-mapping.txt
Back to the patch index
Back to the overall index
- Lines: 41
- Date:
Fri Dec 21 19:45:49 2001
- Orig file:
linux.orig/Documentation/DocBook/kernel-hacking.tmpl
- Orig date:
Mon Feb 18 20:18:39 2002
diff -Naur -X /home/marcelo/lib/dontdiff linux.orig/Documentation/DocBook/kernel-hacking.tmpl linux/Documentation/DocBook/kernel-hacking.tmpl
@@ -18,8 +18,8 @@
</authorgroup>
<copyright>
- <year>2000</year>
- <holder>Paul Russell</holder>
+ <year>2001</year>
+ <holder>Rusty Russell</holder>
</copyright>
<legalnotice>
@@ -651,6 +651,29 @@
</para>
</sect1>
+ <sect1 id="routines-endian">
+ <title><function>cpu_to_be32()</function>/<function>be32_to_cpu()</function>/<function>cpu_to_le32()</function>/<function>le32_to_cpu()</function>
+ <filename class=headerfile>include/asm/byteorder.h</filename>
+ </title>
+
+ <para>
+ The <function>cpu_to_be32()</function> family (where the "32" can
+ be replaced by 64 or 16, and the "be" can be replaced by "le") are
+ the general way to do endian conversions in the kernel: they
+ return the converted value. All variations supply the reverse as
+ well: <function>be32_to_cpu()</function>, etc.
+ </para>
+
+ <para>
+ There are two major variations of these functions: the pointer
+ variation, such as <function>cpu_to_be32p()</function>, which take
+ a pointer to the given type, and return the converted value. The
+ other variation is the "in-situ" family, such as
+ <function>cpu_to_be32s()</function>, which convert value referred
+ to by the pointer, and return void.
+ </para>
+ </sect1>
+
<sect1 id="routines-local-irqs">
<title><function>local_irq_save()</function>/<function>local_irq_restore()</function>
<filename class=headerfile>include/asm/system.h</filename>
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)