]>
Commit | Line | Data |
---|---|---|
2a9d832c LL |
1 | The chosen node |
2 | --------------- | |
3 | ||
4 | The chosen node does not represent a real device, but serves as a place | |
5 | for passing data between firmware and the operating system, like boot | |
6 | arguments. Data in the chosen node does not represent the hardware. | |
7 | ||
8 | ||
9 | stdout-path property | |
10 | -------------------- | |
11 | ||
12 | Device trees may specify the device to be used for boot console output | |
13 | with a stdout-path property under /chosen, as described in ePAPR, e.g. | |
14 | ||
15 | / { | |
16 | chosen { | |
17 | stdout-path = "/serial@f00:115200"; | |
18 | }; | |
19 | ||
20 | serial@f00 { | |
21 | compatible = "vendor,some-uart"; | |
22 | reg = <0xf00 0x10>; | |
23 | }; | |
24 | }; | |
25 | ||
26 | If the character ":" is present in the value, this terminates the path. | |
27 | The meaning of any characters following the ":" is device-specific, and | |
28 | must be specified in the relevant binding documentation. | |
29 | ||
30 | For UART devices, the preferred binding is a string in the form: | |
31 | ||
32 | <baud>{<parity>{<bits>{<flow>}}} | |
33 | ||
34 | where | |
35 | ||
36 | baud - baud rate in decimal | |
37 | parity - 'n' (none), 'o', (odd) or 'e' (even) | |
38 | bits - number of data bits | |
39 | flow - 'r' (rts) | |
40 | ||
41 | For example: 115200n8r | |
42 | ||
43 | Implementation note: Linux will look for the property "linux,stdout-path" or | |
44 | on PowerPC "stdout" if "stdout-path" is not found. However, the | |
45 | "linux,stdout-path" and "stdout" properties are deprecated. New platforms | |
46 | should only use the "stdout-path" property. | |
567cf94d SW |
47 | |
48 | linux,booted-from-kexec | |
49 | ----------------------- | |
50 | ||
51 | This property is set (currently only on PowerPC, and only needed on | |
52 | book3e) by some versions of kexec-tools to tell the new kernel that it | |
53 | is being booted by kexec, as the booting environment may differ (e.g. | |
54 | a different secondary CPU release mechanism) | |
fcbd4bb7 JM |
55 | |
56 | linux,usable-memory-range | |
57 | ------------------------- | |
58 | ||
59 | This property (arm64 only) holds a base address and size, describing a | |
60 | limited region in which memory may be considered available for use by | |
61 | the kernel. Memory outside of this range is not available for use. | |
62 | ||
63 | This property describes a limitation: memory within this range is only | |
64 | valid when also described through another mechanism that the kernel | |
65 | would otherwise use to determine available memory (e.g. memory nodes | |
66 | or the EFI memory map). Valid memory may be sparse within the range. | |
67 | e.g. | |
68 | ||
69 | / { | |
70 | chosen { | |
71 | linux,usable-memory-range = <0x9 0xf0000000 0x0 0x10000000>; | |
72 | }; | |
73 | }; | |
74 | ||
75 | The main usage is for crash dump kernel to identify its own usable | |
76 | memory and exclude, at its boot time, any other memory areas that are | |
77 | part of the panicked kernel's memory. | |
78 | ||
79 | While this property does not represent a real hardware, the address | |
80 | and the size are expressed in #address-cells and #size-cells, | |
81 | respectively, of the root node. | |
82 | ||
83 | linux,elfcorehdr | |
84 | ---------------- | |
85 | ||
86 | This property (currently used only on arm64) holds the memory range, | |
87 | the address and the size, of the elf core header which mainly describes | |
88 | the panicked kernel's memory layout as PT_LOAD segments of elf format. | |
89 | e.g. | |
90 | ||
91 | / { | |
92 | chosen { | |
93 | linux,elfcorehdr = <0x9 0xfffff000 0x0 0x800>; | |
94 | }; | |
95 | }; | |
96 | ||
97 | While this property does not represent a real hardware, the address | |
98 | and the size are expressed in #address-cells and #size-cells, | |
99 | respectively, of the root node. |