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 OF_UNITTEST 16 bool "Device Tree runtime unit tests" 17 depends on !SPARC 18 select IRQ_DOMAIN 19 select OF_EARLY_FLATTREE 20 select OF_RESOLVE 21 help 22 This option builds in test cases for the device tree infrastructure 23 that are executed once at boot time, and the results dumped to the 24 console. 25 26 If unsure, say N here, but this option is safe to enable. 27 28config OF_ALL_DTBS 29 bool "Build all Device Tree Blobs" 30 depends on COMPILE_TEST 31 select DTC 32 help 33 This option builds all possible Device Tree Blobs (DTBs) for the 34 current architecture. 35 36 If unsure, say N here, but this option is safe to enable. 37 38config OF_FLATTREE 39 bool 40 select DTC 41 select LIBFDT 42 select CRC32 43 44config OF_EARLY_FLATTREE 45 bool 46 select DMA_DECLARE_COHERENT if HAS_DMA 47 select OF_FLATTREE 48 49config OF_PROMTREE 50 bool 51 52config OF_KOBJ 53 def_bool SYSFS 54 55# Hardly any platforms need this. It is safe to select, but only do so if you 56# need it. 57config OF_DYNAMIC 58 bool "Support for dynamic device trees" if OF_UNITTEST 59 select OF_KOBJ 60 help 61 On some platforms, the device tree can be manipulated at runtime. 62 While this option is selected automatically on such platforms, you 63 can enable it manually to improve device tree unit test coverage. 64 65config OF_ADDRESS 66 def_bool y 67 depends on !SPARC && (HAS_IOMEM || UML) 68 69config OF_IRQ 70 def_bool y 71 depends on !SPARC && IRQ_DOMAIN 72 73config OF_NET 74 depends on NETDEVICES 75 def_bool y 76 77config OF_RESERVED_MEM 78 def_bool OF_EARLY_FLATTREE 79 80config OF_RESOLVE 81 bool 82 83config OF_OVERLAY 84 bool "Device Tree overlays" 85 select OF_DYNAMIC 86 select OF_FLATTREE 87 select OF_RESOLVE 88 help 89 Overlays are a method to dynamically modify part of the kernel's 90 device tree with dynamically loaded data. 91 While this option is selected automatically when needed, you can 92 enable it manually to improve device tree unit test coverage. 93 94config OF_NUMA 95 bool 96 97config OF_DMA_DEFAULT_COHERENT 98 # arches should select this if DMA is coherent by default for OF devices 99 bool 100 101endif # OF 102