Commit 797212a8 authored by Greg Kroah-Hartman's avatar Greg Kroah-Hartman
Browse files

Merge tag 'icc-6.14-rc1' of...

Merge tag 'icc-6.14-rc1' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/djakov/icc

 into char-misc-next

Pull interconnect changes from Georgi:

interconnect changes for 6.14

This pull request contains the interconnect changes for the 6.14-rc1 merge
window. It contains one new driver and DT documentation updates for L3
and bandwidth monitors.

Driver changes:
- New driver for the SM8750 platform
- Add DT compatibles for QCS615 BWMON and SM8650 OSM

Signed-off-by: default avatarGeorgi Djakov <djakov@kernel.org>

* tag 'icc-6.14-rc1' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/djakov/icc:
  dt-bindings: interconnect: qcom,msm8998-bwmon: Add SM8750 CPU BWMONs
  dt-bindings: interconnect: OSM L3: Document sm8650 OSM L3 compatible
  dt-bindings: interconnect: qcom-bwmon: Document QCS615 bwmon compatibles
  interconnect: sm8750: Add missing const to static qcom_icc_desc
  interconnect: qcom: Add interconnect provider driver for SM8750
  dt-bindings: interconnect: add interconnect bindings for SM8750
parents 3fb06981 4cc00471
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -26,6 +26,7 @@ properties:
      - items:
          - enum:
              - qcom,qcm2290-cpu-bwmon
              - qcom,qcs615-cpu-bwmon
              - qcom,qcs8300-cpu-bwmon
              - qcom,sa8775p-cpu-bwmon
              - qcom,sc7180-cpu-bwmon
@@ -37,10 +38,12 @@ properties:
              - qcom,sm8250-cpu-bwmon
              - qcom,sm8550-cpu-bwmon
              - qcom,sm8650-cpu-bwmon
              - qcom,sm8750-cpu-bwmon
              - qcom,x1e80100-cpu-bwmon
          - const: qcom,sdm845-bwmon    # BWMON v4, unified register space
      - items:
          - enum:
              - qcom,qcs615-llcc-bwmon
              - qcom,qcs8300-llcc-bwmon
              - qcom,sa8775p-llcc-bwmon
              - qcom,sc7180-llcc-bwmon
+1 −0
Original line number Diff line number Diff line
@@ -33,6 +33,7 @@ properties:
              - qcom,sm6375-cpucp-l3
              - qcom,sm8250-epss-l3
              - qcom,sm8350-epss-l3
              - qcom,sm8650-epss-l3
          - const: qcom,epss-l3

  reg:
+136 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/interconnect/qcom,sm8750-rpmh.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Qualcomm RPMh Network-On-Chip Interconnect on SM8750

maintainers:
  - Abel Vesa <abel.vesa@linaro.org>
  - Neil Armstrong <neil.armstrong@linaro.org>

description: |
  RPMh interconnect providers support system bandwidth requirements through
  RPMh hardware accelerators known as Bus Clock Manager (BCM). The provider is
  able to communicate with the BCM through the Resource State Coordinator (RSC)
  associated with each execution environment. Provider nodes must point to at
  least one RPMh device child node pertaining to their RSC and each provider
  can map to multiple RPMh resources.

  See also:: include/dt-bindings/interconnect/qcom,sm8750-rpmh.h

properties:
  compatible:
    enum:
      - qcom,sm8750-aggre1-noc
      - qcom,sm8750-aggre2-noc
      - qcom,sm8750-clk-virt
      - qcom,sm8750-cnoc-main
      - qcom,sm8750-config-noc
      - qcom,sm8750-gem-noc
      - qcom,sm8750-lpass-ag-noc
      - qcom,sm8750-lpass-lpiaon-noc
      - qcom,sm8750-lpass-lpicx-noc
      - qcom,sm8750-mc-virt
      - qcom,sm8750-mmss-noc
      - qcom,sm8750-nsp-noc
      - qcom,sm8750-pcie-anoc
      - qcom,sm8750-system-noc

  reg:
    maxItems: 1

  clocks:
    minItems: 1
    maxItems: 2

required:
  - compatible

allOf:
  - $ref: qcom,rpmh-common.yaml#
  - if:
      properties:
        compatible:
          contains:
            enum:
              - qcom,sm8750-clk-virt
              - qcom,sm8750-mc-virt
    then:
      properties:
        reg: false
    else:
      required:
        - reg

  - if:
      properties:
        compatible:
          contains:
            enum:
              - qcom,sm8750-pcie-anoc
    then:
      properties:
        clocks:
          items:
            - description: aggre-NOC PCIe AXI clock
            - description: cfg-NOC PCIe a-NOC AHB clock

  - if:
      properties:
        compatible:
          contains:
            enum:
              - qcom,sm8750-aggre1-noc
    then:
      properties:
        clocks:
          items:
            - description: aggre UFS PHY AXI clock
            - description: aggre USB3 PRIM AXI clock

  - if:
      properties:
        compatible:
          contains:
            enum:
              - qcom,sm8750-aggre2-noc
    then:
      properties:
        clocks:
          items:
            - description: RPMH CC IPA clock

  - if:
      properties:
        compatible:
          contains:
            enum:
              - qcom,sm8750-aggre1-noc
              - qcom,sm8750-aggre2-noc
              - qcom,sm8750-pcie-anoc
    then:
      required:
        - clocks
    else:
      properties:
        clocks: false

unevaluatedProperties: false

examples:
  - |
    clk_virt: interconnect-0 {
      compatible = "qcom,sm8750-clk-virt";
      #interconnect-cells = <2>;
      qcom,bcm-voters = <&apps_bcm_voter>;
    };

    aggre1_noc: interconnect@16e0000 {
      compatible = "qcom,sm8750-aggre1-noc";
      reg = <0x016e0000 0x16400>;
      #interconnect-cells = <2>;
      clocks = <&gcc_phy_axi_clk>, <&gcc_prim_axi_clk>;
      qcom,bcm-voters = <&apps_bcm_voter>;
    };
+9 −0
Original line number Diff line number Diff line
@@ -337,6 +337,15 @@ config INTERCONNECT_QCOM_SM8650
	  This is a driver for the Qualcomm Network-on-Chip on SM8650-based
	  platforms.

config INTERCONNECT_QCOM_SM8750
	tristate "Qualcomm SM8750 interconnect driver"
	depends on INTERCONNECT_QCOM_RPMH_POSSIBLE
	select INTERCONNECT_QCOM_RPMH
	select INTERCONNECT_QCOM_BCM_VOTER
	help
	  This is a driver for the Qualcomm Network-on-Chip on SM8750-based
	  platforms.

config INTERCONNECT_QCOM_X1E80100
	tristate "Qualcomm X1E80100 interconnect driver"
	depends on INTERCONNECT_QCOM_RPMH_POSSIBLE
+2 −0
Original line number Diff line number Diff line
@@ -40,6 +40,7 @@ qnoc-sm8350-objs := sm8350.o
qnoc-sm8450-objs			:= sm8450.o
qnoc-sm8550-objs			:= sm8550.o
qnoc-sm8650-objs			:= sm8650.o
qnoc-sm8750-objs			:= sm8750.o
qnoc-x1e80100-objs			:= x1e80100.o
icc-smd-rpm-objs			:= smd-rpm.o icc-rpm.o icc-rpm-clocks.o

@@ -80,5 +81,6 @@ obj-$(CONFIG_INTERCONNECT_QCOM_SM8350) += qnoc-sm8350.o
obj-$(CONFIG_INTERCONNECT_QCOM_SM8450) += qnoc-sm8450.o
obj-$(CONFIG_INTERCONNECT_QCOM_SM8550) += qnoc-sm8550.o
obj-$(CONFIG_INTERCONNECT_QCOM_SM8650) += qnoc-sm8650.o
obj-$(CONFIG_INTERCONNECT_QCOM_SM8750) += qnoc-sm8750.o
obj-$(CONFIG_INTERCONNECT_QCOM_X1E80100) += qnoc-x1e80100.o
obj-$(CONFIG_INTERCONNECT_QCOM_SMD_RPM) += icc-smd-rpm.o
Loading