
/ {
	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";
				};
			};
		};

	};
};
