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 bool 79 depends on OF_EARLY_FLATTREE 80 default y if DMA_DECLARE_COHERENT || DMA_CMA 81 82config OF_RESOLVE 83 bool 84 85config OF_OVERLAY 86 bool "Device Tree overlays" 87 select OF_DYNAMIC 88 select OF_FLATTREE 89 select OF_RESOLVE 90 help 91 Overlays are a method to dynamically modify part of the kernel's 92 device tree with dynamically loaded data. 93 While this option is selected automatically when needed, you can 94 enable it manually to improve device tree unit test coverage. 95 96config OF_NUMA 97 bool 98 99config OF_DMA_DEFAULT_COHERENT 100 # arches should select this if DMA is coherent by default for OF devices 101 bool 102 103endif # OF 104