diff mbox series

[2/4] interconnect: qcom: qcm2290: Set AB coefficients

Message ID 20230726-topic-icc_coeff-v1-2-31616960818c@linaro.org
State Superseded
Headers show
Series Fix up icc clock rate calculation on some platforms | expand

Commit Message

Konrad Dybcio July 26, 2023, 4:25 p.m. UTC
Some buses need additional manual adjustments atop the usual
calculations. Fill in the missing coefficients.

Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org>
---
 drivers/interconnect/qcom/qcm2290.c | 3 +++
 1 file changed, 3 insertions(+)

Comments

Konrad Dybcio July 26, 2023, 5:20 p.m. UTC | #1
On 26.07.2023 19:18, Stephan Gerhold wrote:
> On Wed, Jul 26, 2023 at 06:25:44PM +0200, Konrad Dybcio wrote:
>> Some buses need additional manual adjustments atop the usual
>> calculations. Fill in the missing coefficients.
>>
>> Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org>
> 
> What about the funny util-fact/vrail-comp on the mas-apps-proc node
> downstream?
Can't see it neither on msm-5.4 (with the icc API) nor in the 4.19 (msmbus)
device tree.

Konrad
Konrad Dybcio July 26, 2023, 5:52 p.m. UTC | #2
On 26.07.2023 19:46, Konrad Dybcio wrote:
> On 26.07.2023 19:26, Stephan Gerhold wrote:
>> On Wed, Jul 26, 2023 at 07:20:27PM +0200, Konrad Dybcio wrote:
>>> On 26.07.2023 19:18, Stephan Gerhold wrote:
>>>> On Wed, Jul 26, 2023 at 06:25:44PM +0200, Konrad Dybcio wrote:
>>>>> Some buses need additional manual adjustments atop the usual
>>>>> calculations. Fill in the missing coefficients.
>>>>>
>>>>> Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org>
>>>>
>>>> What about the funny util-fact/vrail-comp on the mas-apps-proc node
>>>> downstream?
>>> Can't see it neither on msm-5.4 (with the icc API) nor in the 4.19 (msmbus)
>>> device tree.
>>>
>>
>> Not sure where to get up-to-date device trees nowadays. The AOSP repo
>> I was looking at has this commit where it was added:
>> https://android.googlesource.com/kernel/msm-extra/devicetree/+/02f8c342b23c20a5cf967df649814be37a08227c%5E%21/#F0
> Oh right, take a look at this one:
> 
> https://git.codelinaro.org/clo/la/kernel/msm-4.14/-/commit/201df022706e100cef8d28983c6a7b883fcaec5a
> 
> I guess I'll need to update the icc driver then.
Moreover, this having vrail-comp = 96, means I'll have to go with
the wrecked downstream way of *(100/(percent)) instead of
*(percent/100)...

I also noticed that sm6125 makes very heavy use of per-node clocks..

Konrad
diff mbox series

Patch

diff --git a/drivers/interconnect/qcom/qcm2290.c b/drivers/interconnect/qcom/qcm2290.c
index 3c3b24264a5b..457e5713ae43 100644
--- a/drivers/interconnect/qcom/qcm2290.c
+++ b/drivers/interconnect/qcom/qcm2290.c
@@ -1198,6 +1198,7 @@  static const struct qcom_icc_desc qcm2290_bimc = {
 	.regmap_cfg = &qcm2290_bimc_regmap_config,
 	/* M_REG_BASE() in vendor msm_bus_bimc_adhoc driver */
 	.qos_offset = 0x8000,
+	.ab_percent = 153,
 };
 
 static struct qcom_icc_node * const qcm2290_cnoc_nodes[] = {
@@ -1324,6 +1325,7 @@  static const struct qcom_icc_desc qcm2290_mmnrt_virt = {
 	.bus_clk_desc = &mmaxi_0_clk,
 	.regmap_cfg = &qcm2290_snoc_regmap_config,
 	.qos_offset = 0x15000,
+	.ab_percent = 142,
 };
 
 static struct qcom_icc_node * const qcm2290_mmrt_virt_nodes[] = {
@@ -1339,6 +1341,7 @@  static const struct qcom_icc_desc qcm2290_mmrt_virt = {
 	.bus_clk_desc = &mmaxi_1_clk,
 	.regmap_cfg = &qcm2290_snoc_regmap_config,
 	.qos_offset = 0x15000,
+	.ab_percent = 139,
 };
 
 static const struct of_device_id qcm2290_noc_of_match[] = {