summaryrefslogtreecommitdiffstats
path: root/Documentation/xtensa/booting.rst
diff options
context:
space:
mode:
authorMauro Carvalho Chehab2019-04-18 19:34:34 +0200
committerMauro Carvalho Chehab2019-07-15 14:20:26 +0200
commit8ea0afa3b801e9fe3ff676c3e60e74afa1a0848a (patch)
tree443bd51a72db01596ceacd710567060706201d75 /Documentation/xtensa/booting.rst
parentdocs: nvdimm: convert to ReST (diff)
downloadkernel-qcow2-linux-8ea0afa3b801e9fe3ff676c3e60e74afa1a0848a.tar.gz
kernel-qcow2-linux-8ea0afa3b801e9fe3ff676c3e60e74afa1a0848a.tar.xz
kernel-qcow2-linux-8ea0afa3b801e9fe3ff676c3e60e74afa1a0848a.zip
docs: xtensa: convert to ReST
Rename the xtensa documentation files to ReST, add an index for them and adjust in order to produce a nice html output via the Sphinx build system. At its new index.rst, let's add a :orphan: while this is not linked to the main index.rst file, in order to avoid build warnings. Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
Diffstat (limited to 'Documentation/xtensa/booting.rst')
-rw-r--r--Documentation/xtensa/booting.rst22
1 files changed, 22 insertions, 0 deletions
diff --git a/Documentation/xtensa/booting.rst b/Documentation/xtensa/booting.rst
new file mode 100644
index 000000000000..e1b83707e5b6
--- /dev/null
+++ b/Documentation/xtensa/booting.rst
@@ -0,0 +1,22 @@
+=====================================
+Passing boot parameters to the kernel
+=====================================
+
+Boot parameters are represented as a TLV list in the memory. Please see
+arch/xtensa/include/asm/bootparam.h for definition of the bp_tag structure and
+tag value constants. First entry in the list must have type BP_TAG_FIRST, last
+entry must have type BP_TAG_LAST. The address of the first list entry is
+passed to the kernel in the register a2. The address type depends on MMU type:
+
+- For configurations without MMU, with region protection or with MPU the
+ address must be the physical address.
+- For configurations with region translarion MMU or with MMUv3 and CONFIG_MMU=n
+ the address must be a valid address in the current mapping. The kernel will
+ not change the mapping on its own.
+- For configurations with MMUv2 the address must be a virtual address in the
+ default virtual mapping (0xd0000000..0xffffffff).
+- For configurations with MMUv3 and CONFIG_MMU=y the address may be either a
+ virtual or physical address. In either case it must be within the default
+ virtual mapping. It is considered physical if it is within the range of
+ physical addresses covered by the default KSEG mapping (XCHAL_KSEG_PADDR..
+ XCHAL_KSEG_PADDR + XCHAL_KSEG_SIZE), otherwise it is considered virtual.