| |
| / { |
| 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>; |
| }; |
| |
| i2c-test-bus { |
| compatible = "selftest-i2c-bus"; |
| status = "okay"; |
| reg = <50>; |
| |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| test-selftest12 { |
| reg = <8>; |
| compatible = "selftest-i2c-dev"; |
| status = "disabled"; |
| }; |
| |
| test-selftest13 { |
| reg = <9>; |
| compatible = "selftest-i2c-dev"; |
| status = "okay"; |
| }; |
| |
| test-selftest14 { |
| reg = <10>; |
| compatible = "selftest-i2c-mux"; |
| status = "okay"; |
| |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| i2c@0 { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| reg = <0>; |
| |
| test-mux-dev { |
| reg = <32>; |
| compatible = "selftest-i2c-dev"; |
| status = "okay"; |
| }; |
| }; |
| }; |
| }; |
| }; |
| }; |
| |
| /* 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"; |
| }; |
| }; |
| }; |
| |
| overlay10 { |
| fragment@0 { |
| target-path = "/testcase-data/overlay-node/test-bus"; |
| __overlay__ { |
| |
| /* suppress DTC warning */ |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| test-selftest10 { |
| compatible = "selftest"; |
| status = "okay"; |
| reg = <10>; |
| |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| test-selftest101 { |
| compatible = "selftest"; |
| status = "okay"; |
| reg = <1>; |
| }; |
| |
| }; |
| }; |
| }; |
| }; |
| |
| overlay11 { |
| fragment@0 { |
| target-path = "/testcase-data/overlay-node/test-bus"; |
| __overlay__ { |
| |
| /* suppress DTC warning */ |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| test-selftest11 { |
| compatible = "selftest"; |
| status = "okay"; |
| reg = <11>; |
| |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| test-selftest111 { |
| compatible = "selftest"; |
| status = "okay"; |
| reg = <1>; |
| }; |
| |
| }; |
| }; |
| }; |
| }; |
| |
| /* test enable using absolute target path (i2c) */ |
| overlay12 { |
| fragment@0 { |
| target-path = "/testcase-data/overlay-node/test-bus/i2c-test-bus/test-selftest12"; |
| __overlay__ { |
| status = "okay"; |
| }; |
| }; |
| }; |
| |
| /* test disable using absolute target path (i2c) */ |
| overlay13 { |
| fragment@0 { |
| target-path = "/testcase-data/overlay-node/test-bus/i2c-test-bus/test-selftest13"; |
| __overlay__ { |
| status = "disabled"; |
| }; |
| }; |
| }; |
| |
| /* test mux overlay */ |
| overlay15 { |
| fragment@0 { |
| target-path = "/testcase-data/overlay-node/test-bus/i2c-test-bus"; |
| __overlay__ { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| test-selftest15 { |
| reg = <11>; |
| compatible = "selftest-i2c-mux"; |
| status = "okay"; |
| |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| i2c@0 { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| reg = <0>; |
| |
| test-mux-dev { |
| reg = <32>; |
| compatible = "selftest-i2c-dev"; |
| status = "okay"; |
| }; |
| }; |
| }; |
| }; |
| }; |
| }; |
| |
| }; |
| }; |