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