xref: /openbmc/u-boot/dts/Kconfig (revision 62e92077)
1#
2# Device Tree Control
3#
4
5config SUPPORT_OF_CONTROL
6	bool
7
8menu "Device Tree Control"
9	depends on SUPPORT_OF_CONTROL
10
11config OF_CONTROL
12	bool "Run-time configuration via Device Tree"
13	help
14	  This feature provides for run-time configuration of U-Boot
15	  via a flattened device tree.
16
17config SPL_OF_CONTROL
18	bool "Enable run-time configuration via Device Tree in SPL"
19	depends on SPL && OF_CONTROL
20	help
21	  Some boards use device tree in U-Boot but only have 4KB of SRAM
22	  which is not enough to support device tree. Enable this option to
23	  allow such boards to be supported by U-Boot SPL.
24
25choice
26	prompt "Provider of DTB for DT control"
27	depends on OF_CONTROL
28
29config OF_SEPARATE
30	bool "Separate DTB for DT control"
31	depends on !SANDBOX
32	help
33	  If this option is enabled, the device tree will be built and
34	  placed as a separate u-boot.dtb file alongside the U-Boot image.
35
36config OF_EMBED
37	bool "Embedded DTB for DT control"
38	help
39	  If this option is enabled, the device tree will be picked up and
40	  built into the U-Boot image. This is suitable for local debugging
41	  and development only and is not recommended for production devices.
42	  Boards in the mainline U-Boot tree should not use it.
43
44config OF_HOSTFILE
45	bool "Host filed DTB for DT control"
46	depends on SANDBOX
47	help
48	  If this option is enabled, DTB will be read from a file on startup.
49	  This is only useful for Sandbox.  Use the -d flag to U-Boot to
50	  specify the file to read.
51
52endchoice
53
54config DEFAULT_DEVICE_TREE
55	string "Default Device Tree for DT control"
56	help
57	  This option specifies the default Device Tree used for DT control.
58	  It can be overridden from the command line:
59	  $ make DEVICE_TREE=<device-tree-name>
60
61config OF_SPL_REMOVE_PROPS
62	string "List of device tree properties to drop for SPL"
63	depends on SPL_OF_CONTROL
64	default "clocks clock-names interrupt-parent" if SPL_PINCTRL_FULL
65	default "pinctrl-0 pinctrl-names clocks clock-names interrupt-parent"
66	help
67	  Since SPL normally runs in a reduced memory space, the device tree
68	  is cut down to only what is needed to load and start U-Boot. Only
69	  nodes marked with the property "u-boot,dm-pre-reloc" will be
70	  included. In addition, some properties are not used by U-Boot and
71	  can be discarded. This option defines the list of properties to
72	  discard.
73
74endmenu
75