1# SPDX-License-Identifier: GPL-2.0 2config DTC 3 bool 4 5menuconfig OF 6 bool "Device Tree and Open Firmware support" 7 help 8 This option enables the device tree infrastructure. 9 It is automatically selected by platforms that need it or can 10 be enabled manually for unittests, overlays or 11 compile-coverage. 12 13if OF 14 15config DTC_SYMBOLS 16 bool "Enable dtc generation of symbols for overlays support" 17 depends on DTC && ARCH_ROCKCHIP 18 help 19 Set DTC_FLAGS += -@ 20 Android OS must enable this option. 21 22config DTC_OMIT_DISABLED 23 bool "Fixup dtb by removing nodes with disabled status" 24 depends on DTC && ROCKCHIP_MINI_KERNEL 25 default ROCKCHIP_MINI_KERNEL 26 help 27 This option used for dtc to delete nodes with disabled status. 28 29config DTC_OMIT_EMPTY 30 bool "Fixup dtb by removing empty nodes" 31 depends on DTC && ROCKCHIP_MINI_KERNEL 32 default ROCKCHIP_MINI_KERNEL 33 help 34 This option used for dtc to delete empty nodes. 35 36config OF_UNITTEST 37 bool "Device Tree runtime unit tests" 38 depends on !SPARC 39 select IRQ_DOMAIN 40 select OF_EARLY_FLATTREE 41 select OF_RESOLVE 42 help 43 This option builds in test cases for the device tree infrastructure 44 that are executed once at boot time, and the results dumped to the 45 console. 46 47 If unsure, say N here, but this option is safe to enable. 48 49config OF_ALL_DTBS 50 bool "Build all Device Tree Blobs" 51 depends on COMPILE_TEST 52 select DTC 53 help 54 This option builds all possible Device Tree Blobs (DTBs) for the 55 current architecture. 56 57 If unsure, say N here, but this option is safe to enable. 58 59config OF_FLATTREE 60 bool 61 select DTC 62 select LIBFDT 63 select CRC32 64 65config OF_EARLY_FLATTREE 66 bool 67 select DMA_DECLARE_COHERENT if HAS_DMA 68 select OF_FLATTREE 69 70config OF_PROMTREE 71 bool 72 73config OF_KOBJ 74 def_bool SYSFS 75 76# Hardly any platforms need this. It is safe to select, but only do so if you 77# need it. 78config OF_DYNAMIC 79 bool "Support for dynamic device trees" if OF_UNITTEST 80 select OF_KOBJ 81 help 82 On some platforms, the device tree can be manipulated at runtime. 83 While this option is selected automatically on such platforms, you 84 can enable it manually to improve device tree unit test coverage. 85 86config OF_ADDRESS 87 def_bool y 88 depends on !SPARC && (HAS_IOMEM || UML) 89 90config OF_IRQ 91 def_bool y 92 depends on !SPARC && IRQ_DOMAIN 93 94config OF_NET 95 depends on NETDEVICES 96 def_bool y 97 98config OF_RESERVED_MEM 99 bool 100 depends on OF_EARLY_FLATTREE 101 default y if DMA_DECLARE_COHERENT || DMA_CMA 102 103config OF_RESOLVE 104 bool 105 106config OF_OVERLAY 107 bool "Device Tree overlays" 108 select OF_DYNAMIC 109 select OF_FLATTREE 110 select OF_RESOLVE 111 help 112 Overlays are a method to dynamically modify part of the kernel's 113 device tree with dynamically loaded data. 114 While this option is selected automatically when needed, you can 115 enable it manually to improve device tree unit test coverage. 116 117config OF_NUMA 118 bool 119 120config OF_DMA_DEFAULT_COHERENT 121 # arches should select this if DMA is coherent by default for OF devices 122 bool 123 124endif # OF 125