https://github.com/torvalds/linux
Raw File
Tip revision: bfa76d49576599a4b9f9b7a71f23d73d6dcff735 authored by Linus Torvalds on 09 February 2015, 02:54:22 UTC
Linux 3.19
Tip revision: bfa76d4
tests-overlay.dtsi

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

		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>;
						};

					};
				};
			};
		};
	};
};
back to top