mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-05 06:16:56 +07:00
177d271cf3
Add unittests for OF overlays. It tests overlay device addition/removal and whether the apply revert sequence is correct. Changes since V1: * Added local fixups entries. Signed-off-by: Pantelis Antoniou <pantelis.antoniou@konsulko.com> Signed-off-by: Grant Likely <grant.likely@linaro.org>
181 lines
3.2 KiB
Plaintext
181 lines
3.2 KiB
Plaintext
|
|
/ {
|
|
testcase-data {
|
|
overlay-node {
|
|
|
|
/* test bus */
|
|
selftestbus: test-bus {
|
|
compatible = "simple-bus";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
selftest100: test-selftest100 {
|
|
compatible = "selftest";
|
|
status = "okay";
|
|
reg = <100>;
|
|
};
|
|
|
|
selftest101: test-selftest101 {
|
|
compatible = "selftest";
|
|
status = "disabled";
|
|
reg = <101>;
|
|
};
|
|
|
|
selftest0: test-selftest0 {
|
|
compatible = "selftest";
|
|
status = "disabled";
|
|
reg = <0>;
|
|
};
|
|
|
|
selftest1: test-selftest1 {
|
|
compatible = "selftest";
|
|
status = "okay";
|
|
reg = <1>;
|
|
};
|
|
|
|
selftest2: test-selftest2 {
|
|
compatible = "selftest";
|
|
status = "disabled";
|
|
reg = <2>;
|
|
};
|
|
|
|
selftest3: test-selftest3 {
|
|
compatible = "selftest";
|
|
status = "okay";
|
|
reg = <3>;
|
|
};
|
|
|
|
selftest5: test-selftest5 {
|
|
compatible = "selftest";
|
|
status = "disabled";
|
|
reg = <5>;
|
|
};
|
|
|
|
selftest6: test-selftest6 {
|
|
compatible = "selftest";
|
|
status = "disabled";
|
|
reg = <6>;
|
|
};
|
|
|
|
selftest7: test-selftest7 {
|
|
compatible = "selftest";
|
|
status = "disabled";
|
|
reg = <7>;
|
|
};
|
|
|
|
selftest8: test-selftest8 {
|
|
compatible = "selftest";
|
|
status = "disabled";
|
|
reg = <8>;
|
|
};
|
|
};
|
|
};
|
|
|
|
/* test enable using absolute target path */
|
|
overlay0 {
|
|
fragment@0 {
|
|
target-path = "/testcase-data/overlay-node/test-bus/test-selftest0";
|
|
__overlay__ {
|
|
status = "okay";
|
|
};
|
|
};
|
|
};
|
|
|
|
/* test disable using absolute target path */
|
|
overlay1 {
|
|
fragment@0 {
|
|
target-path = "/testcase-data/overlay-node/test-bus/test-selftest1";
|
|
__overlay__ {
|
|
status = "disabled";
|
|
};
|
|
};
|
|
};
|
|
|
|
/* test enable using label */
|
|
overlay2 {
|
|
fragment@0 {
|
|
target = <&selftest2>;
|
|
__overlay__ {
|
|
status = "okay";
|
|
};
|
|
};
|
|
};
|
|
|
|
/* test disable using label */
|
|
overlay3 {
|
|
fragment@0 {
|
|
target = <&selftest3>;
|
|
__overlay__ {
|
|
status = "disabled";
|
|
};
|
|
};
|
|
};
|
|
|
|
/* test insertion of a full node */
|
|
overlay4 {
|
|
fragment@0 {
|
|
target = <&selftestbus>;
|
|
__overlay__ {
|
|
|
|
/* suppress DTC warning */
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
test-selftest4 {
|
|
compatible = "selftest";
|
|
status = "okay";
|
|
reg = <4>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
/* test overlay apply revert */
|
|
overlay5 {
|
|
fragment@0 {
|
|
target-path = "/testcase-data/overlay-node/test-bus/test-selftest5";
|
|
__overlay__ {
|
|
status = "okay";
|
|
};
|
|
};
|
|
};
|
|
|
|
/* test overlays application and removal in sequence */
|
|
overlay6 {
|
|
fragment@0 {
|
|
target-path = "/testcase-data/overlay-node/test-bus/test-selftest6";
|
|
__overlay__ {
|
|
status = "okay";
|
|
};
|
|
};
|
|
};
|
|
overlay7 {
|
|
fragment@0 {
|
|
target-path = "/testcase-data/overlay-node/test-bus/test-selftest7";
|
|
__overlay__ {
|
|
status = "okay";
|
|
};
|
|
};
|
|
};
|
|
|
|
/* test overlays application and removal in bad sequence */
|
|
overlay8 {
|
|
fragment@0 {
|
|
target-path = "/testcase-data/overlay-node/test-bus/test-selftest8";
|
|
__overlay__ {
|
|
status = "okay";
|
|
};
|
|
};
|
|
};
|
|
overlay9 {
|
|
fragment@0 {
|
|
target-path = "/testcase-data/overlay-node/test-bus/test-selftest8";
|
|
__overlay__ {
|
|
property-foo = "bar";
|
|
};
|
|
};
|
|
};
|
|
|
|
};
|
|
};
|