[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20230726-topic-icc_coeff-v4-0-c04b60caa467@linaro.org>
Date: Fri, 25 Aug 2023 17:38:22 +0200
From: Konrad Dybcio <konrad.dybcio@...aro.org>
To: Andy Gross <agross@...nel.org>,
Bjorn Andersson <andersson@...nel.org>,
Georgi Djakov <djakov@...nel.org>,
Michael Turquette <mturquette@...libre.com>,
Stephen Boyd <sboyd@...nel.org>
Cc: Marijn Suijten <marijn.suijten@...ainline.org>,
linux-arm-msm@...r.kernel.org, linux-pm@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-clk@...r.kernel.org,
Konrad Dybcio <konrad.dybcio@...aro.org>
Subject: [PATCH v4 00/10] Fix up icc clock rate calculation on some
platforms
Certain platforms require that some buses (or individual nodes) make
some additional changes to the clock rate formula, throwing in some
magic, Qualcomm-defined coefficients, to account for "inefficiencies".
Add the framework for it and utilize it on a couple SoCs.
Signed-off-by: Konrad Dybcio <konrad.dybcio@...aro.org>
---
Changes in v4:
- Rebase on next-20230825
- Move node bus clock rate variable kerneldoc addition to the correct patch
- Link to v3: https://lore.kernel.org/r/20230726-topic-icc_coeff-v3-0-dee684d6cdd2@linaro.org
Changes in v3:
- Allocate the node bus clock on the stack, as dynamically allocating
it actually wastes memory on systems with 64-bit pointers..
- Add the node bus clock struct member in the correct patch
- Simplify using coefficients by only checking the node-level ones, and
setting them equal to the bus-specific ones at probe if absent
- Fix building on arm32
- Mention some references to the related downstream code
- Link to v2: https://lore.kernel.org/r/20230726-topic-icc_coeff-v2-0-8c91c6c76076@linaro.org
Changes in v2:
- Use the (arguably less favourable but necessary for precission) 100/x
instead of x/100 for ib coefficient, update values in consequent
patches to reflect that
- Rename "_percent" to "_coeff" because of /\
- Add the necessary code to support per-node clocks
- Add the necessary code to support per-node coefficients
- Hook up the CPUSS<->GNoC clock on QCM2290
- Update EBI node on QCM2290
- Link to v1: https://lore.kernel.org/r/20230726-topic-icc_coeff-v1-0-31616960818c@linaro.org
---
Konrad Dybcio (10):
interconnect: qcom: icc-rpm: Add AB/IB calculations coefficients
interconnect: qcom: icc-rpm: Separate out clock rate calulcations
interconnect: qcom: icc-rpm: Let nodes drive their own bus clock
interconnect: qcom: icc-rpm: Check for node-specific rate coefficients
interconnect: qcom: qcm2290: Hook up MAS_APPS_PROC's bus clock
interconnect: qcom: qcm2290: Set AB coefficients
interconnect: qcom: qcm2290: Update EBI channel configuration
interconnect: qcom: sdm660: Set AB/IB coefficients
interconnect: qcom: msm8996: Set AB/IB coefficients
clk: qcom: smd-rpm: Move CPUSS_GNoC clock to interconnect
drivers/clk/qcom/clk-smd-rpm.c | 16 +++++--
drivers/interconnect/qcom/icc-rpm-clocks.c | 6 +++
drivers/interconnect/qcom/icc-rpm.c | 76 +++++++++++++++++++++++++-----
drivers/interconnect/qcom/icc-rpm.h | 15 ++++++
drivers/interconnect/qcom/msm8996.c | 8 +++-
drivers/interconnect/qcom/qcm2290.c | 9 +++-
drivers/interconnect/qcom/sdm660.c | 4 ++
7 files changed, 115 insertions(+), 19 deletions(-)
---
base-commit: 6269320850097903b30be8f07a5c61d9f7592393
change-id: 20230726-topic-icc_coeff-b053d5409b9f
Best regards,
--
Konrad Dybcio <konrad.dybcio@...aro.org>
Powered by blists - more mailing lists