12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- Limits Management Hardware - DCVS
- The LMH-DCVS block is a hardware IP for every CPU cluster, to handle quick
- changes in thermal limits. The hardware responds to thermal variation amongst
- the CPUs in the cluster by requesting limits on the clock frequency and
- voltage on the OSM hardware.
- The LMH DCVS driver exports a virtual sensor that can be used to set the
- thermal limits on the hardware. LMH DCVS driver can be a platform CPU Cooling
- device, which registers with the CPU cooling device interface. All CPU device
- nodes should reference the corresponding LMH DCVS hardware in device tree.
- CPUs referencing the same LMH DCVS node will be associated with the
- corresponding cooling device as related CPUs.
- Properties:
- - compatible:
- Usage: required
- Value type: <string>
- Definition: shall be "qcom,msm-hw-limits"
- - interrupts:
- Usage: required
- Value type: <interrupt_type interrupt_number interrupt_trigger_type>
- Definition: Should specify interrupt information about the debug
- interrupt generated by the LMH DCVSh hardware. LMH
- DCVSh hardware will generate this interrupt whenever
- it makes a new cpu DCVS decision.
- - qcom,affinity:
- Usage: Required
- Value type: <u32>
- Definition: Should specify the cluster affinity this hardware
- corresponds to.
- - isens_vref-supply:
- Usage: optional
- Value type: <phandle>
- Definition: Should specify the phandle of the vref regulator used by
- the isens hardware. This active only regulator will be
- enabled by LMH DCVSh.
- - isens-vref-settings:
- Usage: optional
- Value type: <u32 array>
- Definition: Should specify the min voltage(uV), max voltage(uV) and
- max load(uA) for the isens vref regulator. This
- property is valid only if there is valid entry for
- isens_vref-supply.
- Example:
- lmh_dcvs0: qcom,limits-dcvs@0 {
- compatible = "qcom,msm-hw-limits";
- interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
- qcom,affinity = <0>;
- isens_vref-supply = <&pm8998_l1_ao>;
- isens-vref-settings = <880000 880000 36000>;
- };
- CPU0: cpu@0 {
- device_type = "cpu";
- compatible = "arm,armv8";
- reg = <0x0 0x0>;
- qcom,lmh-dcvs = <&lmh_dcvs0>;;
- };
|