// SPDX-License-Identifier: GPL-2.0

/*
 * Base device tree that overlays will be applied against.
 *
 * Do not add any properties in node "/".
 * Do not add any nodes other than "/testcase-data-2" in node "/".
 * Do not add anything that would result in dtc creating node "/__fixups__".
 * dtc will create nodes "/__symbols__" and "/__local_fixups__".
 */

/ {
	testcase-data-2 {
		#address-cells = <1>;
		#size-cells = <1>;

		electric_1: substation@100 {
			compatible = "ot,big-volts-control";
			reg = <0x00000100 0x100>;
			status = "disabled";

			hvac_1: hvac-medium-1 {
				compatible = "ot,hvac-medium";
				heat-range = <50 75>;
				cool-range = <60 80>;
			};

			spin_ctrl_1: motor-1 {
				compatible = "ot,ferris-wheel-motor";
				spin = "clockwise";
				rpm_avail = <50>;
			};

			spin_ctrl_2: motor-8 {
				compatible = "ot,roller-coaster-motor";
			};
		};

		rides_1: fairway-1 {
			#address-cells = <1>;
			#size-cells = <1>;
			compatible = "ot,rides";
			status = "disabled";
			orientation = <127>;

			ride@100 {
				#address-cells = <1>;
				#size-cells = <1>;
				compatible = "ot,roller-coaster";
				reg = <0x00000100 0x100>;
				hvac-provider = <&hvac_1>;
				hvac-thermostat = <29> ;
				hvac-zones = <14>;
				hvac-zone-names = "operator";
				spin-controller = <&spin_ctrl_2 5 &spin_ctrl_2 7>;
				spin-controller-names = "track_1", "track_2";
				queues = <2>;

				track@30 {
					reg = <0x00000030 0x10>;
				};

				track@40 {
					reg = <0x00000040 0x10>;
				};

			};
		};

		lights_1: lights@30000 {
			compatible = "ot,work-lights";
			reg = <0x00030000 0x1000>;
			status = "disabled";
		};

		lights_2: lights@40000 {
			compatible = "ot,show-lights";
			reg = <0x00040000 0x1000>;
			status = "disabled";
			rate = <13 138>;
		};

		retail_1: vending@50000 {
			reg = <0x00050000 0x1000>;
			compatible = "ot,tickets";
			status = "disabled";
		};
	};
};
