mirror of
https://github.com/Evolution-X-Devices/kernel_oneplus_sm8550-devicetrees
synced 2026-02-01 09:49:52 +00:00
dt-bindings: Add victims_table bindings for cx_ipeak driver
Victim table support for client to register and throttle freq based on the cx-ipeak interrupt notifier callbacks to clients. Change-Id: I9717056e638ed70f5bf848f99f07a0b2c6919938
This commit is contained in:
committed by
Swetha Chikkaboraiah
parent
c36cf62a6f
commit
0fd2effdf2
42
bindings/soc/qcom/qcom,cx_ipeak.txt
Normal file
42
bindings/soc/qcom/qcom,cx_ipeak.txt
Normal file
@@ -0,0 +1,42 @@
|
||||
* Cx iPeak driver to handle requests from various multimedia clients.
|
||||
|
||||
Cx ipeak HW module is used to limit the current drawn by various subsystem
|
||||
blocks on Cx power rail. Each client needs to set their bit in tcsr register
|
||||
if it is going to cross its own threshold. If all clients are going to cross
|
||||
their thresholds then Cx ipeak hw module will raise an interrupt to cDSP block
|
||||
to throttle cDSP's fmax.
|
||||
|
||||
There are SOC like SCUBA where Cx ipeak HW module raised interrupt will
|
||||
throttle frequency of other victim clients.
|
||||
|
||||
Required properties:
|
||||
|
||||
- #size-cells : Must be 1
|
||||
|
||||
- compatible : name of the component used for driver matching, should be one
|
||||
"qcom,cx-ipeak-v1", "qcom,cx-ipeak-v2"
|
||||
|
||||
- reg : physical base address and length of the register set(s), SRAM and XPU
|
||||
of the component.
|
||||
|
||||
Optional properties:
|
||||
|
||||
- interrupts : Danger and Safe interrupts details having interrupt number and
|
||||
type of interrupt.
|
||||
|
||||
- interrupt-names : Identifier names for Danger and Safe interrupts.
|
||||
|
||||
- victims_table : Victim clients details having client ID, victim ID and
|
||||
limit frequency to be applied in case of danger interrupt.
|
||||
|
||||
Example:
|
||||
|
||||
cx_ipeak_lm: cx_ipeak@1fe5040 {
|
||||
#size-cells = <1>;
|
||||
compatible = "qcom,cx-ipeak-v1";
|
||||
reg = <0x01fe5040 0x28>;
|
||||
interrupts = <0 415 IRQ_TYPE_EDGE_RISING>,
|
||||
<0 416 IRQ_TYPE_EDGE_RISING>;
|
||||
interrupt-names = "cx_ipeak_danger", "cx_ipeak_safe";
|
||||
victims_table = <1 0 844800000>;
|
||||
};
|
||||
Reference in New Issue
Block a user