M7350/kernel/Documentation/devicetree/bindings/arm/msm/rpm-smd.txt

39 lines
1.4 KiB
Plaintext
Raw Normal View History

2024-09-09 08:52:07 +00:00
Resource Power Manager(RPM)
RPM is a dedicated hardware engine for managing shared SoC resources,
which includes buses, clocks, power rails, etc. The goal of RPM is
to achieve the maximum power savings while satisfying the SoC's
operational and performance requirements. RPM accepts resource
requests from multiple RPM masters. It arbitrates and aggregates the
requests, and configures the shared resources. The RPM masters are
the application processor, the modem processor, as well as hardware
accelerators. The RPM driver communicates with the hardware engine using
SMD.
The devicetree representation of the SPM block should be:
Required properties
2024-09-09 08:57:42 +00:00
- compatible: "qcom,rpm-smd" or "qcom,rpm-glink"
2024-09-09 08:52:07 +00:00
- rpm-channel-name: The string corresponding to the channel name of the
2024-09-09 08:57:42 +00:00
peripheral subsystem. Required for both smd and
glink transports.
2024-09-09 08:52:07 +00:00
- rpm-channel-type: The interal SMD edge for this subsystem found in
2024-09-09 08:57:42 +00:00
<soc/qcom/smd.h>
- qcom,glink-edge: Logical name of the remote subsystem. This is a required
property when rpm-smd driver using glink as trasport.
2024-09-09 08:52:07 +00:00
Optional properties
2024-09-09 08:57:42 +00:00
- rpm-standalone: Allow RPM driver to run in standalone mode irrespective of RPM
channel presence.
2024-09-09 08:52:07 +00:00
Example:
qcom,rpm-smd {
2024-09-09 08:57:42 +00:00
compatible = "qcom,rpm-smd", "qcom,rpm-glink";
2024-09-09 08:52:07 +00:00
qcom,rpm-channel-name = "rpm_requests";
qcom,rpm-channel-type = 15; /* SMD_APPS_RPM */
2024-09-09 08:57:42 +00:00
qcom,glink-edge = "rpm";
2024-09-09 08:52:07 +00:00
}
}