123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110 |
- #
- # Device Tree Control
- #
- config SUPPORT_OF_CONTROL
- bool
- menu "Device Tree Control"
- depends on SUPPORT_OF_CONTROL
- config OF_CONTROL
- bool "Run-time configuration via Device Tree"
- help
- This feature provides for run-time configuration of U-Boot
- via a flattened device tree.
- config SPL_OF_CONTROL
- bool "Enable run-time configuration via Device Tree in SPL"
- depends on SPL && OF_CONTROL
- help
- Some boards use device tree in U-Boot but only have 4KB of SRAM
- which is not enough to support device tree. Enable this option to
- allow such boards to be supported by U-Boot SPL.
- choice
- prompt "Provider of DTB for DT control"
- depends on OF_CONTROL
- config OF_SEPARATE
- bool "Separate DTB for DT control"
- depends on !SANDBOX
- help
- If this option is enabled, the device tree will be built and
- placed as a separate u-boot.dtb file alongside the U-Boot image.
- config OF_EMBED
- bool "Embedded DTB for DT control"
- help
- If this option is enabled, the device tree will be picked up and
- built into the U-Boot image. This is suitable for local debugging
- and development only and is not recommended for production devices.
- Boards in the mainline U-Boot tree should not use it.
- config OF_HOSTFILE
- bool "Host filed DTB for DT control"
- depends on SANDBOX
- help
- If this option is enabled, DTB will be read from a file on startup.
- This is only useful for Sandbox. Use the -d flag to U-Boot to
- specify the file to read.
- endchoice
- config DEFAULT_DEVICE_TREE
- string "Default Device Tree for DT control"
- depends on OF_CONTROL
- help
- This option specifies the default Device Tree used for DT control.
- It can be overridden from the command line:
- $ make DEVICE_TREE=<device-tree-name>
- config OF_LIST
- string "List of device tree files to include for DT control"
- depends on SPL_LOAD_FIT || FIT_EMBED
- default DEFAULT_DEVICE_TREE
- help
- This option specifies a list of device tree files to use for DT
- control. These will be packaged into a FIT. At run-time, U-boot
- or SPL will select the correct DT to use by examining the
- hardware (e.g. reading a board ID value). This is a list of
- device tree files (without the directory or .dtb suffix)
- separated by <space>.
- config OF_SPL_REMOVE_PROPS
- string "List of device tree properties to drop for SPL"
- depends on SPL_OF_CONTROL
- default "interrupt-parent" if SPL_PINCTRL_FULL && SPL_CLK
- default "clocks clock-names interrupt-parent" if SPL_PINCTRL_FULL
- default "pinctrl-0 pinctrl-names interrupt-parent" if SPL_CLK
- default "pinctrl-0 pinctrl-names clocks clock-names interrupt-parent"
- help
- Since SPL normally runs in a reduced memory space, the device tree
- is cut down to only what is needed to load and start U-Boot. Only
- nodes marked with the property "u-boot,dm-pre-reloc" will be
- included. In addition, some properties are not used by U-Boot and
- can be discarded. This option defines the list of properties to
- discard.
- config SPL_OF_PLATDATA
- bool "Generate platform data for use in SPL"
- depends on SPL_OF_CONTROL
- help
- For very constrained SPL environments the overhead of decoding
- device tree nodes and converting their contents into platform data
- is too large. This overhead includes libfdt code as well as the
- device tree contents itself. The latter is fairly compact, but the
- former can add 3KB or more to a Thumb 2 Image.
- This option enables generation of platform data from the device
- tree as C code. This code creates devices using U_BOOT_DEVICE()
- declarations. The benefit is that it allows driver code to access
- the platform data directly in C structures, avoidin the libfdt
- overhead.
- This option works by generating C structure declarations for each
- compatible string, then adding platform data and U_BOOT_DEVICE
- declarations for each node. See README.platdata for more
- information.
- endmenu
|