mbox series

[v4,0/5] interconnect: qcom: Add MSM8996 interconnect driver

Message ID 20210901121518.152481-1-y.oudjana@protonmail.com
Headers show
Series interconnect: qcom: Add MSM8996 interconnect driver | expand

Message

Yassine Oudjana Sept. 1, 2021, 12:15 p.m. UTC
This series adds a driver for interconnects on MSM8996. This fixes some rare display underflows
and provides a slight heat reduction.

The driver currently supports all NoCs on MSM8996 except a0noc, due to some issues with writing
to its registers.

Changes since v3:
 - Expand DEFINE_QNODE macros in msm8996.c.
 - Commonize probe function.
 - Don't rename qcom_icc_set in icc-rpmh since it's no longer needed.
 - Code style fixes.
Changes since v2:
 - Dual-license qcom,msm8996.h and move it to the dt bindings patch
 - Remove interconnect paths from CPUs since cpufreq driver doesn't support icc scaling yet.
Changes since v1:
 - Split first patch into 2 patches, one for renaming qcom_icc_set in icc-rpmh, and another
   one for the actual commonization.
 - Revert unnecessary move of include line in sdm660.c 

Yassine Oudjana (5):
  interconnect: qcom: sdm660: Commonize RPM-QoS
  dt-bindings: interconnect: Move SDM660 to a new RPM-QoS file
  dt-bindings: interconnect: Add Qualcomm MSM8996 DT bindings
  interconnect: qcom: Add MSM8996 interconnect provider driver
  arm64: dts: qcom: msm8996: Add interconnect support

 .../{qcom,sdm660.yaml => qcom,rpm-qos.yaml}   |   23 +-
 arch/arm64/boot/dts/qcom/msm8996.dtsi         |   80 +
 drivers/interconnect/qcom/Kconfig             |   14 +-
 drivers/interconnect/qcom/Makefile            |    4 +
 drivers/interconnect/qcom/icc-rpm-qos.c       |  358 +++
 drivers/interconnect/qcom/icc-rpm-qos.h       |  135 +
 drivers/interconnect/qcom/msm8996.c           | 2781 +++++++++++++++++
 drivers/interconnect/qcom/msm8996.h           |  149 +
 drivers/interconnect/qcom/sdm660.c            |  487 +--
 .../dt-bindings/interconnect/qcom,msm8996.h   |  163 +
 10 files changed, 3725 insertions(+), 469 deletions(-)
 rename Documentation/devicetree/bindings/interconnect/{qcom,sdm660.yaml => qcom,rpm-qos.yaml} (82%)
 create mode 100644 drivers/interconnect/qcom/icc-rpm-qos.c
 create mode 100644 drivers/interconnect/qcom/icc-rpm-qos.h
 create mode 100644 drivers/interconnect/qcom/msm8996.c
 create mode 100644 drivers/interconnect/qcom/msm8996.h
 create mode 100644 include/dt-bindings/interconnect/qcom,msm8996.h

Comments

Yassine Oudjana Sept. 2, 2021, 9:42 a.m. UTC | #1
On Thu, Sep 2 2021 at 02:01:59 +0400, Dmitry Baryshkov 
<dmitry.baryshkov@linaro.org> wrote:
> On 01/09/2021 21:48, AngeloGioacchino Del Regno wrote:
>>  Il 01/09/21 14:15, Yassine Oudjana ha scritto:
>>>  SoCs such as MSM8996 also control bus QoS in a similar fashion to 
>>> SDM660,
>>>  with some paths being controlled by RPM and others directly by the 
>>> AP.
>>>  Move relevant functions and defines to a new object so that they 
>>> can
>>>  be used
>>>  in multiple drivers.
>>> 
>>>  Signed-off-by: Yassine Oudjana <y.oudjana@protonmail.com>
>> 
>>  Hey guys!
>> 
>>  I'm waiting for the interconnect RPM-QoS commonization to be merged 
>> as I
>>  have fresh
>>  interconnect drivers for MSM8998 and MSM8976, ready to send, that 
>> are
>>  also using
>>  the very same QoS mechanism as SDM660.
> 
> We were also looking onto this. I'd propose to merge sdm660 code into
> main icc-rpm.c instead of splitting it into separate file. We have
> enabled QoS for apq8096 (msm8916) and msm8939. See
> https://lore.kernel.org/linux-arm-msm/20210818015732.1717810-1-dmitry.baryshkov@linaro.org/
> for the reference. I'm waiting for Shawn to publish v2 of his fix, 
> then
> I can post v2 of my patchset.

I'll wait for your v2 to post v5 of this series then.
Please add me to Cc when you send it.

> 
>> 
>>  Yassine, please check Shawn's recent patches for SDM660 
>> interconnect,
>>  which are
>>  fixing some bits for the QoS implementation and adding some required
>>  clocks to the
>>  SDM660 interconnect driver.
>> 
>>  Adding Shawn to the Ccs as to make him aware of this patch;
>>  also adding Marijn and Konrad from SoMainline as probably interested
>>  parties.
>> 
>>  Cheers!
>>  - Angelo
> 
> 
> --
> With best wishes
> Dmitry

Thanks,
Yassine