Introduce a sysfs interface to allow userspace-controlled bandwidth
limiting for QLI targets.
The current PMU-based scaling using static DDR-CPU operating points
is overly aggressive for certain workloads and results in power
regressions. Provide a fine-grained mechanism to restrict bandwidth
at the client level, enabling better control of interconnect usage.
This improves power efficiency by allowing targeted bandwidth
throttling for specific clients and workloads.
List of all the interconnect clients are populated inside
/sys/kernel/interconnect folder and each client's voting can be limited
by setting the limit_ab, limit_ib and limit_commit sysfs options
present inside the folder created for each client-path combination.
Following would be the directory structure.
+ soc:qcom,dcvs:llcc:sp_chm_apps-qns_llcc --> <client_name>_<path_name>
- limit_ab --> AB limit in KBps
- limit_ib --> IB limit in KBps
- limit_commit --> limits will be applied
once commit is set
Change-Id: I08b6655c41bddbb70661a76cfeea07290272cd07
Signed-off-by: Raviteja Laggyshetty <rlaggysh@qti.qualcomm.com>
Introduce a sysfs interface to allow userspace-controlled bandwidth limiting for QLI targets.
The current PMU-based scaling using static DDR-CPU operating points is overly aggressive for certain workloads and results in power regressions. Provide a fine-grained mechanism to restrict bandwidth at the client level, enabling better control of interconnect usage.
This improves power efficiency by allowing targeted bandwidth throttling for specific clients and workloads.
List of all the interconnect clients are populated inside /sys/kernel/interconnect folder and each client's voting can be limited by setting the limit_ab, limit_ib and limit_commit sysfs options present inside the folder created for each client-path combination.
Following would be the directory structure.
- limit_ab --> AB limit in KBps
- limit_ib --> IB limit in KBps
- limit_commit --> limits will be applied
once commit is set
Change-Id: I08b6655c41bddbb70661a76cfeea07290272cd07