linux-yocto/drivers/of/unittest-data/Makefile
Geert Uytterhoeven eb38b9529a of: overlay: unittest: Add test for unresolved symbol
Add a test to exercise the error paths when trying to apply an overlay
with an unresolved symbol and cleaning up the resulting partial state.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/580394587976975770c84411896fce9fbbcf25fa.1690533838.git.geert+renesas@glider.be
Signed-off-by: Rob Herring <robh@kernel.org>
2023-08-23 20:04:17 -05:00

3.3 KiB

SPDX-License-Identifier: GPL-2.0

obj-y += testcases.dtbo.o

obj-$(CONFIG_OF_OVERLAY) += overlay.dtbo.o
overlay_0.dtbo.o
overlay_1.dtbo.o
overlay_2.dtbo.o
overlay_3.dtbo.o
overlay_4.dtbo.o
overlay_5.dtbo.o
overlay_6.dtbo.o
overlay_7.dtbo.o
overlay_8.dtbo.o
overlay_9.dtbo.o
overlay_10.dtbo.o
overlay_11.dtbo.o
overlay_12.dtbo.o
overlay_13.dtbo.o
overlay_15.dtbo.o
overlay_16.dtbo.o
overlay_17.dtbo.o
overlay_18.dtbo.o
overlay_19.dtbo.o
overlay_20.dtbo.o
overlay_bad_add_dup_node.dtbo.o
overlay_bad_add_dup_prop.dtbo.o
overlay_bad_phandle.dtbo.o
overlay_bad_symbol.dtbo.o
overlay_base.dtbo.o
overlay_gpio_01.dtbo.o
overlay_gpio_02a.dtbo.o
overlay_gpio_02b.dtbo.o
overlay_gpio_03.dtbo.o
overlay_gpio_04a.dtbo.o
overlay_gpio_04b.dtbo.o
overlay_pci_node.dtbo.o
overlay_bad_unresolved.dtbo.o

enable creation of symbols node

DTC_FLAGS_overlay += -@ DTC_FLAGS_overlay_bad_phandle += -@ DTC_FLAGS_overlay_bad_symbol += -@ DTC_FLAGS_overlay_base += -@ DTC_FLAGS_testcases += -@

suppress warnings about intentional errors

DTC_FLAGS_testcases += -Wno-interrupts_property
-Wno-node_name_vs_property_name
-Wno-interrupt_map

Apply overlays statically with fdtoverlay. This is a build time test that

the overlays can be applied successfully by fdtoverlay. This does not

guarantee that the overlays can be applied successfully at run time by

unittest, but it provides a bit of build time test coverage for those

who do not execute unittest.

The overlays are applied on top of static_base_1.dtb and static_base_2.dtb to

create static_test_1.dtb and static_test_2.dtb. If fdtoverlay detects an

error than the kernel build will fail. static_test_1.dtb and

static_test_2.dtb are not consumed by unittest.

Some unittest overlays deliberately contain errors that unittest checks for.

These overlays will cause fdtoverlay to fail, and are thus not included

in the static test:

overlay_bad_add_dup_node.dtbo \

overlay_bad_add_dup_prop.dtbo \

overlay_bad_phandle.dtbo \

overlay_bad_symbol.dtbo \

apply_static_overlay_1 := overlay_0.dtbo
overlay_1.dtbo
overlay_2.dtbo
overlay_3.dtbo
overlay_4.dtbo
overlay_5.dtbo
overlay_6.dtbo
overlay_7.dtbo
overlay_8.dtbo
overlay_9.dtbo
overlay_10.dtbo
overlay_11.dtbo
overlay_12.dtbo
overlay_13.dtbo
overlay_15.dtbo
overlay_16.dtbo
overlay_17.dtbo
overlay_18.dtbo
overlay_19.dtbo
overlay_20.dtbo
overlay_gpio_01.dtbo
overlay_gpio_02a.dtbo
overlay_gpio_02b.dtbo
overlay_gpio_03.dtbo
overlay_gpio_04a.dtbo
overlay_gpio_04b.dtbo

apply_static_overlay_2 := overlay.dtbo

DTC_FLAGS_static_base_1 += -Wno-interrupts_property
-Wno-node_name_vs_property_name
-Wno-interrupt_map

static_test_1-dtbs := static_base_1.dtb $(apply_static_overlay_1) static_test_2-dtbs := static_base_2.dtb $(apply_static_overlay_2)

dtb-$(CONFIG_OF_OVERLAY) += static_test_1.dtb static_test_2.dtb