Commit | Line | Data |
---|---|---|
8ea0afa3 MCC |
1 | ===================================== |
2 | Passing boot parameters to the kernel | |
3 | ===================================== | |
05bdebd5 MF |
4 | |
5 | Boot parameters are represented as a TLV list in the memory. Please see | |
6 | arch/xtensa/include/asm/bootparam.h for definition of the bp_tag structure and | |
7 | tag value constants. First entry in the list must have type BP_TAG_FIRST, last | |
8 | entry must have type BP_TAG_LAST. The address of the first list entry is | |
9 | passed to the kernel in the register a2. The address type depends on MMU type: | |
8ea0afa3 | 10 | |
05bdebd5 MF |
11 | - For configurations without MMU, with region protection or with MPU the |
12 | address must be the physical address. | |
13 | - For configurations with region translarion MMU or with MMUv3 and CONFIG_MMU=n | |
14 | the address must be a valid address in the current mapping. The kernel will | |
15 | not change the mapping on its own. | |
16 | - For configurations with MMUv2 the address must be a virtual address in the | |
17 | default virtual mapping (0xd0000000..0xffffffff). | |
18 | - For configurations with MMUv3 and CONFIG_MMU=y the address may be either a | |
19 | virtual or physical address. In either case it must be within the default | |
20 | virtual mapping. It is considered physical if it is within the range of | |
21 | physical addresses covered by the default KSEG mapping (XCHAL_KSEG_PADDR.. | |
22 | XCHAL_KSEG_PADDR + XCHAL_KSEG_SIZE), otherwise it is considered virtual. |