5c9dd72d83
Test the KUnit test managed overlay APIs. Confirm that platform devices are created and destroyed properly. This provides us confidence that the test managed APIs work correctly and can be relied upon to provide tests with fake platform devices and device nodes via overlays compiled into the kernel image. Cc: Rob Herring <robh@kernel.org> Cc: Saravana Kannan <saravanak@google.com> Cc: Daniel Latypov <dlatypov@google.com> Cc: Brendan Higgins <brendan.higgins@linux.dev> Reviewed-by: David Gow <davidgow@google.com> Cc: Rae Moar <rmoar@google.com> Reviewed-by: Rob Herring (Arm) <robh@kernel.org> Signed-off-by: Stephen Boyd <sboyd@kernel.org> Link: https://lore.kernel.org/r/20240718210513.3801024-5-sboyd@kernel.org
124 lines
3.3 KiB
Plaintext
124 lines
3.3 KiB
Plaintext
# SPDX-License-Identifier: GPL-2.0
|
|
config DTC
|
|
bool
|
|
|
|
menuconfig OF
|
|
bool "Device Tree and Open Firmware support"
|
|
help
|
|
This option enables the device tree infrastructure.
|
|
It is automatically selected by platforms that need it or can
|
|
be enabled manually for unittests, overlays or
|
|
compile-coverage.
|
|
|
|
if OF
|
|
|
|
config OF_UNITTEST
|
|
bool "Device Tree runtime unit tests"
|
|
depends on OF_EARLY_FLATTREE
|
|
select IRQ_DOMAIN
|
|
select OF_RESOLVE
|
|
help
|
|
This option builds in test cases for the device tree infrastructure
|
|
that are executed once at boot time, and the results dumped to the
|
|
console.
|
|
|
|
This option should only be enabled for a development kernel. The tests
|
|
will taint the kernel with TAINT_TEST. The tests will cause ERROR and
|
|
WARNING messages to print on the console. The tests will cause stack
|
|
traces to print on the console. It is possible that the tests will
|
|
leave the devicetree in a corrupted state.
|
|
|
|
The unittest output will be verbose. Copy the output to a file
|
|
via capturing the console output or via the dmesg command. Process
|
|
this file with scripts/dtc/of_unittest_expect to reduce the
|
|
verbosity, test whether expected output is present, and to
|
|
summarize the results.
|
|
|
|
If unsure, say N here. This option is not safe to enable.
|
|
|
|
config OF_KUNIT_TEST
|
|
tristate "Devicetree KUnit Test" if !KUNIT_ALL_TESTS
|
|
depends on KUNIT
|
|
default KUNIT_ALL_TESTS
|
|
help
|
|
This option builds KUnit unit tests for device tree infrastructure.
|
|
|
|
If unsure, say N here, but this option is safe to enable.
|
|
|
|
config OF_ALL_DTBS
|
|
bool "Build all Device Tree Blobs"
|
|
depends on COMPILE_TEST
|
|
select DTC
|
|
help
|
|
This option builds all possible Device Tree Blobs (DTBs) for the
|
|
current architecture.
|
|
|
|
If unsure, say N here, but this option is safe to enable.
|
|
|
|
config OF_FLATTREE
|
|
bool
|
|
select DTC
|
|
select LIBFDT
|
|
select CRC32
|
|
|
|
config OF_EARLY_FLATTREE
|
|
def_bool OF && !(SPARC || ALPHA || HEXAGON || M68K || PARISC || S390)
|
|
select DMA_DECLARE_COHERENT if HAS_DMA && HAS_IOMEM
|
|
select OF_FLATTREE
|
|
|
|
config OF_PROMTREE
|
|
bool
|
|
|
|
config OF_KOBJ
|
|
def_bool SYSFS
|
|
|
|
# Hardly any platforms need this. It is safe to select, but only do so if you
|
|
# need it.
|
|
config OF_DYNAMIC
|
|
bool "Support for dynamic device trees" if OF_UNITTEST
|
|
select OF_KOBJ
|
|
help
|
|
On some platforms, the device tree can be manipulated at runtime.
|
|
While this option is selected automatically on such platforms, you
|
|
can enable it manually to improve device tree unit test coverage.
|
|
|
|
config OF_ADDRESS
|
|
def_bool y
|
|
depends on !SPARC && (HAS_IOMEM || UML)
|
|
|
|
config OF_IRQ
|
|
def_bool y
|
|
depends on !SPARC && IRQ_DOMAIN
|
|
|
|
config OF_RESERVED_MEM
|
|
def_bool OF_EARLY_FLATTREE
|
|
|
|
config OF_RESOLVE
|
|
bool
|
|
|
|
config OF_OVERLAY
|
|
bool "Device Tree overlays"
|
|
select OF_DYNAMIC
|
|
select OF_FLATTREE
|
|
select OF_RESOLVE
|
|
help
|
|
Overlays are a method to dynamically modify part of the kernel's
|
|
device tree with dynamically loaded data.
|
|
While this option is selected automatically when needed, you can
|
|
enable it manually to improve device tree unit test coverage.
|
|
|
|
config OF_OVERLAY_KUNIT_TEST
|
|
tristate "Device Tree overlay KUnit tests" if !KUNIT_ALL_TESTS
|
|
depends on KUNIT
|
|
default KUNIT_ALL_TESTS
|
|
select OF_OVERLAY
|
|
help
|
|
This option builds KUnit unit tests for the device tree overlay code.
|
|
|
|
If unsure, say N here, but this option is safe to enable.
|
|
|
|
config OF_NUMA
|
|
bool
|
|
|
|
endif # OF
|