* Broadcom Stingray Thermal

This binding describes thermal sensors that is part of Stingray SoCs.

Required properties:
- compatible : Must be "brcm,sr-thermal"
- reg : Memory where tmon data will be available.
- brcm,tmon-mask: A one cell bit mask of valid TMON sources.
                  Each bit represents single TMON source.
- #thermal-sensor-cells : Thermal sensor phandler
- polling-delay: Max number of milliseconds to wait between polls.
- thermal-sensors: A list of thermal sensor phandles and specifier.
                   specifier value is tmon ID and it should be
                   in correspond with brcm,tmon-mask.
- temperature: trip temperature threshold in millicelsius.

Example:
	tmons {
		compatible = "simple-bus";
		#address-cells = <1>;
		#size-cells = <1>;
		ranges = <0x0 0x0 0x8f100000 0x100>;

		tmon: tmon@0 {
			compatible = "brcm,sr-thermal";
			reg = <0x0 0x40>;
			brcm,tmon-mask = <0x3f>;
			#thermal-sensor-cells = <1>;
		};
	};

	thermal-zones {
		ihost0_thermal: ihost0-thermal {
			polling-delay-passive = <0>;
			polling-delay = <1000>;
			thermal-sensors = <&tmon 0>;
			trips {
				cpu-crit {
					temperature = <105000>;
					hysteresis = <0>;
					type = "critical";
				};
			};
		};
		ihost1_thermal: ihost1-thermal {
			polling-delay-passive = <0>;
			polling-delay = <1000>;
			thermal-sensors = <&tmon 1>;
			trips {
				cpu-crit {
					temperature = <105000>;
					hysteresis = <0>;
					type = "critical";
				};
			};
		};
		ihost2_thermal: ihost2-thermal {
			polling-delay-passive = <0>;
			polling-delay = <1000>;
			thermal-sensors = <&tmon 2>;
			trips {
				cpu-crit {
					temperature = <105000>;
					hysteresis = <0>;
					type = "critical";
				};
			};
		};
		ihost3_thermal: ihost3-thermal {
			polling-delay-passive = <0>;
			polling-delay = <1000>;
			thermal-sensors = <&tmon 3>;
			trips {
				cpu-crit {
					temperature = <105000>;
					hysteresis = <0>;
					type = "critical";
				};
			};
		};
		crmu_thermal: crmu-thermal {
			polling-delay-passive = <0>;
			polling-delay = <1000>;
			thermal-sensors = <&tmon 4>;
			trips {
				cpu-crit {
					temperature = <105000>;
					hysteresis = <0>;
					type = "critical";
				};
			};
		};
		nitro_thermal: nitro-thermal {
			polling-delay-passive = <0>;
			polling-delay = <1000>;
			thermal-sensors = <&tmon 5>;
			trips {
				cpu-crit {
					temperature = <105000>;
					hysteresis = <0>;
					type = "critical";
				};
			};
		};
	};
