13d0407baSopenharmony_ci# SPDX-License-Identifier: GPL-2.0 23d0407baSopenharmony_ciconfig DTC 33d0407baSopenharmony_ci bool 43d0407baSopenharmony_ci 53d0407baSopenharmony_cimenuconfig OF 63d0407baSopenharmony_ci bool "Device Tree and Open Firmware support" 73d0407baSopenharmony_ci help 83d0407baSopenharmony_ci This option enables the device tree infrastructure. 93d0407baSopenharmony_ci It is automatically selected by platforms that need it or can 103d0407baSopenharmony_ci be enabled manually for unittests, overlays or 113d0407baSopenharmony_ci compile-coverage. 123d0407baSopenharmony_ci 133d0407baSopenharmony_ciif OF 143d0407baSopenharmony_ci 153d0407baSopenharmony_ciconfig DTC_SYMBOLS 163d0407baSopenharmony_ci bool "Enable dtc generation of symbols for overlays support" 173d0407baSopenharmony_ci depends on DTC && ARCH_ROCKCHIP 183d0407baSopenharmony_ci help 193d0407baSopenharmony_ci Set DTC_FLAGS += -@ 203d0407baSopenharmony_ci Android OS must enable this option. 213d0407baSopenharmony_ci 223d0407baSopenharmony_ciconfig OF_UNITTEST 233d0407baSopenharmony_ci bool "Device Tree runtime unit tests" 243d0407baSopenharmony_ci depends on !SPARC 253d0407baSopenharmony_ci select IRQ_DOMAIN 263d0407baSopenharmony_ci select OF_EARLY_FLATTREE 273d0407baSopenharmony_ci select OF_RESOLVE 283d0407baSopenharmony_ci help 293d0407baSopenharmony_ci This option builds in test cases for the device tree infrastructure 303d0407baSopenharmony_ci that are executed once at boot time, and the results dumped to the 313d0407baSopenharmony_ci console. 323d0407baSopenharmony_ci 333d0407baSopenharmony_ci If unsure, say N here, but this option is safe to enable. 343d0407baSopenharmony_ci 353d0407baSopenharmony_ciconfig OF_ALL_DTBS 363d0407baSopenharmony_ci bool "Build all Device Tree Blobs" 373d0407baSopenharmony_ci depends on COMPILE_TEST 383d0407baSopenharmony_ci select DTC 393d0407baSopenharmony_ci help 403d0407baSopenharmony_ci This option builds all possible Device Tree Blobs (DTBs) for the 413d0407baSopenharmony_ci current architecture. 423d0407baSopenharmony_ci 433d0407baSopenharmony_ci If unsure, say N here, but this option is safe to enable. 443d0407baSopenharmony_ci 453d0407baSopenharmony_ciconfig OF_FLATTREE 463d0407baSopenharmony_ci bool 473d0407baSopenharmony_ci select DTC 483d0407baSopenharmony_ci select LIBFDT 493d0407baSopenharmony_ci select CRC32 503d0407baSopenharmony_ci 513d0407baSopenharmony_ciconfig OF_EARLY_FLATTREE 523d0407baSopenharmony_ci bool 533d0407baSopenharmony_ci select DMA_DECLARE_COHERENT if HAS_DMA 543d0407baSopenharmony_ci select OF_FLATTREE 553d0407baSopenharmony_ci 563d0407baSopenharmony_ciconfig OF_PROMTREE 573d0407baSopenharmony_ci bool 583d0407baSopenharmony_ci 593d0407baSopenharmony_ciconfig OF_KOBJ 603d0407baSopenharmony_ci def_bool SYSFS 613d0407baSopenharmony_ci 623d0407baSopenharmony_ci# Hardly any platforms need this. It is safe to select, but only do so if you 633d0407baSopenharmony_ci# need it. 643d0407baSopenharmony_ciconfig OF_DYNAMIC 653d0407baSopenharmony_ci bool "Support for dynamic device trees" if OF_UNITTEST 663d0407baSopenharmony_ci select OF_KOBJ 673d0407baSopenharmony_ci help 683d0407baSopenharmony_ci On some platforms, the device tree can be manipulated at runtime. 693d0407baSopenharmony_ci While this option is selected automatically on such platforms, you 703d0407baSopenharmony_ci can enable it manually to improve device tree unit test coverage. 713d0407baSopenharmony_ci 723d0407baSopenharmony_ciconfig OF_ADDRESS 733d0407baSopenharmony_ci def_bool y 743d0407baSopenharmony_ci depends on !SPARC && (HAS_IOMEM || UML) 753d0407baSopenharmony_ci 763d0407baSopenharmony_ciconfig OF_IRQ 773d0407baSopenharmony_ci def_bool y 783d0407baSopenharmony_ci depends on !SPARC && IRQ_DOMAIN 793d0407baSopenharmony_ci 803d0407baSopenharmony_ciconfig OF_NET 813d0407baSopenharmony_ci depends on NETDEVICES 823d0407baSopenharmony_ci def_bool y 833d0407baSopenharmony_ci 843d0407baSopenharmony_ciconfig OF_RESERVED_MEM 853d0407baSopenharmony_ci bool 863d0407baSopenharmony_ci depends on OF_EARLY_FLATTREE 873d0407baSopenharmony_ci default y if DMA_DECLARE_COHERENT || DMA_CMA 883d0407baSopenharmony_ci 893d0407baSopenharmony_ciconfig OF_RESOLVE 903d0407baSopenharmony_ci bool 913d0407baSopenharmony_ci 923d0407baSopenharmony_ciconfig OF_OVERLAY 933d0407baSopenharmony_ci bool "Device Tree overlays" 943d0407baSopenharmony_ci select OF_DYNAMIC 953d0407baSopenharmony_ci select OF_FLATTREE 963d0407baSopenharmony_ci select OF_RESOLVE 973d0407baSopenharmony_ci help 983d0407baSopenharmony_ci Overlays are a method to dynamically modify part of the kernel's 993d0407baSopenharmony_ci device tree with dynamically loaded data. 1003d0407baSopenharmony_ci While this option is selected automatically when needed, you can 1013d0407baSopenharmony_ci enable it manually to improve device tree unit test coverage. 1023d0407baSopenharmony_ci 1033d0407baSopenharmony_ciconfig OF_NUMA 1043d0407baSopenharmony_ci bool 1053d0407baSopenharmony_ci 1063d0407baSopenharmony_ciconfig OF_DMA_DEFAULT_COHERENT 1073d0407baSopenharmony_ci # arches should select this if DMA is coherent by default for OF devices 1083d0407baSopenharmony_ci bool 1093d0407baSopenharmony_ci 1103d0407baSopenharmony_ciendif # OF 111