Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ae657c09 authored by Ram Chandrasekar's avatar Ram Chandrasekar Committed by Manaf Meethalavalappu Pallikunhi
Browse files

dt-bindings: thermal: Add qmi cooling device bindings



Add bindings for qmi cooling device driver. This driver will be used to
register cooling devices in remote subsystem to thermal framework.

Change-Id: I0526aef77ce710da585e5baf5c8745e840bc89c3
Signed-off-by: default avatarRam Chandrasekar <rkumbako@codeaurora.org>
parent c231408f
Loading
Loading
Loading
Loading
+113 −0
Original line number Diff line number Diff line
QMI thermal mitigation(TMD) cooling devices.

The QMI TMD cooling device, will be used for various mitigations for remote
subsystem including remote processor mitigation, rail voltage restriction etc.
This cooling device uses kernel qti QMI interface to send the message to
remote subsystem.

Each child node of the QMI TMD devicetree node represents each remote
subsystem and each child of this subsystem represents separate cooling
devices. It requires minimum one remote subsystem node and each subsystem
node requires minimum one cooling device node.

Properties:

- compatible:
	Usage: required
	Value type: <string>
	Definition: should be "qcom,qmi-cooling-devices"


Subsystem properties:
- qcom,instance-id:
	Usage: required
	Value type: <integer>
	Definition: Remote subsystem QMI server instance id to be used for
			communicating with QMI.

	Minimum one child node is required. Child node name and its alias are
	used as cooling device name and phandle for that cooling device.

	cooling device node properties:
	-qcom,qmi-dev-name:
		Usage: required
		Value type: <string>
		Definition: Remote subsystem device identifier. Below strings
			are the only acceptable device names,
			"pa" -> for pa cooling device,
			"cpuv_restriction_cold" -> for vdd restriction,
			"cx_vdd_limit" -> for vdd limit,
			"modem" -> for processor passive cooling device,
			"modem_current" -> for current limiting device,
			"modem_bw" ->  for bus bandwidth limiting device,
			"cpr_cold" -> for cpr restriction.

	-#cooling-cells:
		Usage: required
		Value type: <integer>
		Definition: Must be 2. Needed for of_thermal as cooling device
			identifier. Please refer to
			<devicetree/bindings/thermal/thermal.txt> for more
			details.
Example:

	qmi-tmd-devices {
		compatible = "qcom,qmi-cooling-devices";

		modem {
			qcom,instance-id = <0x0>;

			modem_pa: modem_pa {
				qcom,qmi-dev-name = "pa";
				#cooling-cells = <2>;
			};

			modem_proc: modem_proc {
				qcom,qmi-dev-name = "modem";
				#cooling-cells = <2>;
			};

			modem_vdd: modem_vdd {
				qcom,qmi-dev-name = "cpuv_restriction_cold";
				#cooling-cells = <2>;
			};

			modem_current: modem_current {
				qcom,qmi-dev-name = "modem_current";
				#cooling-cells = <2>;
			};

			modem_cpr_cold: modem_cpr_cold {
				qcom,qmi-dev-name = "cpr_cold";
				#cooling-cells = <2>;
			};
		};

		adsp {
			qcom,instance-id = <0x1>;

			adsp_vdd: adsp_vdd {
				qcom,qmi-dev-name = "cpuv_restriction_cold";
				#cooling-cells = <2>;
			};
		};

		cdsp {
			qcom,instance-id = <0x43>;

			cdsp_vdd: cdsp_vdd {
				qcom,qmi-dev-name = "cpuv_restriction_cold";
				#cooling-cells = <2>;
			};
		};

		slpi {
			qcom,instance-id = <0x53>;

			slpi_vdd: slpi_vdd {
				qcom,qmi-dev-name = "cpuv_restriction_cold";
				#cooling-cells = <2>;
			};
		};
	};