mbox series

[v3,0/6] Split SDM845 interconnect nodes and consolidate RPMh support

Message ID 20200209183411.17195-1-sibis@codeaurora.org (mailing list archive)
Headers show
Series Split SDM845 interconnect nodes and consolidate RPMh support | expand

Message

Sibi Sankar Feb. 9, 2020, 6:34 p.m. UTC
While there are no current consumers of the SDM845 interconnect device in
devicetree, take this opportunity to redefine the interconnect device nodes
as the previous definitions of using a single child node under the apps_rsc
device did not accurately capture the description of the hardware.
The Network-On-Chip (NoC) interconnect devices should be represented in a
manner akin to QCS404 platforms[1] where there is a separation of NoC devices
and its RPM/RPMh counterparts.

The bcm-voter devices are representing the RPMh devices that the interconnect
providers need to communicate with and there can be more than one instance of
the Bus Clock Manager (BCM) which can live under different instances of Resource
State Coordinators (RSC). There are display use cases where consumers may need
to target a different bcm-voter (Some display specific RSC) than the default,
and there needs to be a way to represent this connection in devicetree.

This patches series extends the discussions[2][3] involving the SDM845
interconnect bindings by adding accompanying driver implementations
using the split NoC devices. Some of the code used to support the SDM845
provider driver are refactored into common modules that can used by other
RPMh based interconnect providers such as SC7180[4]. This patch series also
updates existing sdm845 binding documentation to DT schema format using
json-schema.

v3:
- Picked up Robs R-b for patch 1 
- Fixup qcom,bcm-voter.yaml. comments (Rob)
- Use qcom,bcm-voter instead of SoC specific compatible for
  SDM845 and SC7180 (Odelu/Sibi)
- Fixup bindings check failures for qcom,sdm845.yaml
- Fixup the misc bugs. comments (Evan/Sibi)
- Fixup reg size for aggre1/2_noc

v2: 
- Reorganized dt-binding patches
- Fixed a bug that adds duplicate BCM node to voter (Georgi)
- Addressed misc. comments (Georgi)

v1: https://lkml.org/lkml/2019/12/16/15

[1]: https://lkml.org/lkml/2019/6/13/143
[2]: https://lkml.org/lkml/2019/7/19/1063
[3]: https://lkml.org/lkml/2019/10/16/1793
[4]: https://lkml.org/lkml/2019/11/26/389

David Dai (6):
  dt-bindings: interconnect: Convert qcom,sdm845 to DT schema
  dt-bindings: interconnect: Add YAML schemas for QCOM bcm-voter
  dt-bindings: interconnect: Update Qualcomm SDM845 DT bindings
  interconnect: qcom: Consolidate interconnect RPMh support
  interconnect: qcom: sdm845: Split qnodes into their respective NoCs
  arm64: dts: sdm845: Redefine interconnect provider DT nodes

 .../bindings/interconnect/qcom,bcm-voter.yaml |   45 +
 .../bindings/interconnect/qcom,sdm845.txt     |   24 -
 .../bindings/interconnect/qcom,sdm845.yaml    |   74 +
 arch/arm64/boot/dts/qcom/sdm845.dtsi          |   65 +-
 drivers/interconnect/qcom/Kconfig             |   13 +-
 drivers/interconnect/qcom/Makefile            |    4 +
 drivers/interconnect/qcom/bcm-voter.c         |  366 +++++
 drivers/interconnect/qcom/bcm-voter.h         |   27 +
 drivers/interconnect/qcom/icc-rpmh.c          |  147 ++
 drivers/interconnect/qcom/icc-rpmh.h          |  149 +++
 drivers/interconnect/qcom/sdm845.c            | 1185 +++++++----------
 .../dt-bindings/interconnect/qcom,sdm845.h    |  263 ++--
 12 files changed, 1516 insertions(+), 846 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/interconnect/qcom,bcm-voter.yaml
 delete mode 100644 Documentation/devicetree/bindings/interconnect/qcom,sdm845.txt
 create mode 100644 Documentation/devicetree/bindings/interconnect/qcom,sdm845.yaml
 create mode 100644 drivers/interconnect/qcom/bcm-voter.c
 create mode 100644 drivers/interconnect/qcom/bcm-voter.h
 create mode 100644 drivers/interconnect/qcom/icc-rpmh.c
 create mode 100644 drivers/interconnect/qcom/icc-rpmh.h

Comments

Bjorn Andersson Feb. 25, 2020, 5:16 a.m. UTC | #1
On Sun 09 Feb 10:34 PST 2020, Sibi Sankar wrote:

Hi Georgi,

Will you pick up the bindings and driver patches for v5.7? So that I can
apply the dts patches.

Regards,
Bjorn

> While there are no current consumers of the SDM845 interconnect device in
> devicetree, take this opportunity to redefine the interconnect device nodes
> as the previous definitions of using a single child node under the apps_rsc
> device did not accurately capture the description of the hardware.
> The Network-On-Chip (NoC) interconnect devices should be represented in a
> manner akin to QCS404 platforms[1] where there is a separation of NoC devices
> and its RPM/RPMh counterparts.
> 
> The bcm-voter devices are representing the RPMh devices that the interconnect
> providers need to communicate with and there can be more than one instance of
> the Bus Clock Manager (BCM) which can live under different instances of Resource
> State Coordinators (RSC). There are display use cases where consumers may need
> to target a different bcm-voter (Some display specific RSC) than the default,
> and there needs to be a way to represent this connection in devicetree.
> 
> This patches series extends the discussions[2][3] involving the SDM845
> interconnect bindings by adding accompanying driver implementations
> using the split NoC devices. Some of the code used to support the SDM845
> provider driver are refactored into common modules that can used by other
> RPMh based interconnect providers such as SC7180[4]. This patch series also
> updates existing sdm845 binding documentation to DT schema format using
> json-schema.
> 
> v3:
> - Picked up Robs R-b for patch 1 
> - Fixup qcom,bcm-voter.yaml. comments (Rob)
> - Use qcom,bcm-voter instead of SoC specific compatible for
>   SDM845 and SC7180 (Odelu/Sibi)
> - Fixup bindings check failures for qcom,sdm845.yaml
> - Fixup the misc bugs. comments (Evan/Sibi)
> - Fixup reg size for aggre1/2_noc
> 
> v2: 
> - Reorganized dt-binding patches
> - Fixed a bug that adds duplicate BCM node to voter (Georgi)
> - Addressed misc. comments (Georgi)
> 
> v1: https://lkml.org/lkml/2019/12/16/15
> 
> [1]: https://lkml.org/lkml/2019/6/13/143
> [2]: https://lkml.org/lkml/2019/7/19/1063
> [3]: https://lkml.org/lkml/2019/10/16/1793
> [4]: https://lkml.org/lkml/2019/11/26/389
> 
> David Dai (6):
>   dt-bindings: interconnect: Convert qcom,sdm845 to DT schema
>   dt-bindings: interconnect: Add YAML schemas for QCOM bcm-voter
>   dt-bindings: interconnect: Update Qualcomm SDM845 DT bindings
>   interconnect: qcom: Consolidate interconnect RPMh support
>   interconnect: qcom: sdm845: Split qnodes into their respective NoCs
>   arm64: dts: sdm845: Redefine interconnect provider DT nodes
> 
>  .../bindings/interconnect/qcom,bcm-voter.yaml |   45 +
>  .../bindings/interconnect/qcom,sdm845.txt     |   24 -
>  .../bindings/interconnect/qcom,sdm845.yaml    |   74 +
>  arch/arm64/boot/dts/qcom/sdm845.dtsi          |   65 +-
>  drivers/interconnect/qcom/Kconfig             |   13 +-
>  drivers/interconnect/qcom/Makefile            |    4 +
>  drivers/interconnect/qcom/bcm-voter.c         |  366 +++++
>  drivers/interconnect/qcom/bcm-voter.h         |   27 +
>  drivers/interconnect/qcom/icc-rpmh.c          |  147 ++
>  drivers/interconnect/qcom/icc-rpmh.h          |  149 +++
>  drivers/interconnect/qcom/sdm845.c            | 1185 +++++++----------
>  .../dt-bindings/interconnect/qcom,sdm845.h    |  263 ++--
>  12 files changed, 1516 insertions(+), 846 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/interconnect/qcom,bcm-voter.yaml
>  delete mode 100644 Documentation/devicetree/bindings/interconnect/qcom,sdm845.txt
>  create mode 100644 Documentation/devicetree/bindings/interconnect/qcom,sdm845.yaml
>  create mode 100644 drivers/interconnect/qcom/bcm-voter.c
>  create mode 100644 drivers/interconnect/qcom/bcm-voter.h
>  create mode 100644 drivers/interconnect/qcom/icc-rpmh.c
>  create mode 100644 drivers/interconnect/qcom/icc-rpmh.h
> 
> -- 
> The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
> a Linux Foundation Collaborative Project
Georgi Djakov March 4, 2020, 4:23 p.m. UTC | #2
On 2/25/20 07:16, Bjorn Andersson wrote:
> On Sun 09 Feb 10:34 PST 2020, Sibi Sankar wrote:
> 
> Hi Georgi,
> 
> Will you pick up the bindings and driver patches for v5.7? So that I can
> apply the dts patches.
> 

Hi Bjorn,

Yes, please apply the dts patch with my Ack.

Thanks,
Georgi