MSM Core Energy Aware driver

The Energy Aware driver provides per core power and temperature
information to the scheduler for it to make more power efficient
scheduling decision.

The required properties for the Energy-aware driver are:

- compatible:    "qcom,apss-core-ea"
- reg:           Physical address mapped to this device

Required nodes:
- ea@X: Parent node that has the sensor mapping for each cpu.
                 This node's phandle is provided within cpu node
                 to invoke/probe energy-aware only for available cpus.
                 There should be one such node present for each cpu.

Optional properties:
- qcom,low-hyst-temp: Degrees C below which the power numbers
                 need to be recomputed for the cores and reset
                 the threshold. If this is not present, the default
                 value is 10C.
- qcom,high-hyst-temp: Degrees C above which the power numbers
                 need to be recomputed for the cores and reset
                 the threshold. If this property is not present,
                 the default value is 5C.
- qcom,polling-interval: Interval for which the power numbers
                 need to be recomputed for the cores if there
                 is no change in threshold. If this property is not
                 present, the power is recalculated only on
                 temperature threshold notifications.
-qcom,throttling-temp: Temperature threshold for cpu frequency mitigation.
                 The value should be set same as the threshold temperature
                 in thermal module - 5 C, such that there is a bandwidth to
                 control the cores before frequency mitigation happens.

[Second level nodes]
Require properties to define per core characteristics:
- sensor:  Sensor phandle to map a particular sensor to the core.
                If this property is not present, then the core is assumed
                to be at 40C for all the power estimations. No sensor
                threshold is set. This phandle's compatible property is
                "qcom,sensor-information". This driver relies on the
                sensor-type and scaling-factor information provided in this
                phandle.

Example

qcom,msm-core@0xfc4b0000 {
	compatible = "qcom,apss-core-ea";
	reg = <0xfc4b0000 0x1000>;
	qcom,low-hyst-temp = <10>;
	qcom,high-hyst-temp = <5>;
	qcom,polling-interval = <50>;

	ea0: ea0 {
		sensor = <&sensor_information0>;
	};

	ea1: ea1 {
		sensor = <&sensor_information1>;
	};

};

CPU0: cpu@0 {
	device_type = "cpu";
	compatible = "arm,cortex-a53";
	reg = <0x0>;
	qcom,ea = <&ea0>;
};
