Commit cd6d762c authored by Georgi Djakov's avatar Georgi Djakov
Browse files

Merge branch 'icc-msm8909' into icc-next

Add bindings and driver for the three MSM8909 NoCs/interconnects:
BIMC, SNoC and PCNoC. The driver allows scaling the bus bandwidths
for better power management.

* icc-msm8909
  dt-bindings: interconnect: Add Qualcomm MSM8909 DT bindings
  interconnect: qcom: Add MSM8909 interconnect provider driver
  interconnect: qcom: msm8909: constify pointer to qcom_icc_node

Link: https://lore.kernel.org/r/20231220-icc-msm8909-v2-0-3b68bbed2891@kernkonzept.com


Signed-off-by: default avatarGeorgi Djakov <djakov@kernel.org>
parents 6613476e 5f1b3971
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -23,6 +23,9 @@ properties:

  compatible:
    enum:
      - qcom,msm8909-bimc
      - qcom,msm8909-pcnoc
      - qcom,msm8909-snoc
      - qcom,msm8916-bimc
      - qcom,msm8916-pcnoc
      - qcom,msm8916-snoc
+9 −0
Original line number Diff line number Diff line
@@ -8,6 +8,15 @@ config INTERCONNECT_QCOM
config INTERCONNECT_QCOM_BCM_VOTER
	tristate

config INTERCONNECT_QCOM_MSM8909
	tristate "Qualcomm MSM8909 interconnect driver"
	depends on INTERCONNECT_QCOM
	depends on QCOM_SMD_RPM
	select INTERCONNECT_QCOM_SMD_RPM
	help
	  This is a driver for the Qualcomm Network-on-Chip on msm8909-based
	  platforms.

config INTERCONNECT_QCOM_MSM8916
	tristate "Qualcomm MSM8916 interconnect driver"
	depends on INTERCONNECT_QCOM
+2 −0
Original line number Diff line number Diff line
@@ -4,6 +4,7 @@ obj-$(CONFIG_INTERCONNECT_QCOM) += interconnect_qcom.o

interconnect_qcom-y			:= icc-common.o
icc-bcm-voter-objs			:= bcm-voter.o
qnoc-msm8909-objs			:= msm8909.o
qnoc-msm8916-objs			:= msm8916.o
qnoc-msm8939-objs			:= msm8939.o
qnoc-msm8974-objs			:= msm8974.o
@@ -36,6 +37,7 @@ qnoc-x1e80100-objs := x1e80100.o
icc-smd-rpm-objs			:= smd-rpm.o icc-rpm.o icc-rpm-clocks.o

obj-$(CONFIG_INTERCONNECT_QCOM_BCM_VOTER) += icc-bcm-voter.o
obj-$(CONFIG_INTERCONNECT_QCOM_MSM8909) += qnoc-msm8909.o
obj-$(CONFIG_INTERCONNECT_QCOM_MSM8916) += qnoc-msm8916.o
obj-$(CONFIG_INTERCONNECT_QCOM_MSM8939) += qnoc-msm8939.o
obj-$(CONFIG_INTERCONNECT_QCOM_MSM8974) += qnoc-msm8974.o
+1329 −0

File added.

Preview size limit exceeded, changes collapsed.

+93 −0
Original line number Diff line number Diff line
/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
/*
 * Qualcomm MSM8909 interconnect IDs
 */

#ifndef __DT_BINDINGS_INTERCONNECT_QCOM_MSM8909_H
#define __DT_BINDINGS_INTERCONNECT_QCOM_MSM8909_H

/* BIMC fabric */
#define MAS_APPS_PROC			0
#define MAS_OXILI			1
#define MAS_SNOC_BIMC_0			2
#define MAS_SNOC_BIMC_1			3
#define MAS_TCU_0			4
#define MAS_TCU_1			5
#define SLV_EBI				6
#define SLV_BIMC_SNOC			7

/* PCNOC fabric */
#define MAS_AUDIO			0
#define MAS_SPDM			1
#define MAS_DEHR			2
#define MAS_QPIC			3
#define MAS_BLSP_1			4
#define MAS_USB_HS			5
#define MAS_CRYPTO			6
#define MAS_SDCC_1			7
#define MAS_SDCC_2			8
#define MAS_SNOC_PCNOC			9
#define PCNOC_M_0			10
#define PCNOC_M_1			11
#define PCNOC_INT_0			12
#define PCNOC_INT_1			13
#define PCNOC_S_0			14
#define PCNOC_S_1			15
#define PCNOC_S_2			16
#define PCNOC_S_3			17
#define PCNOC_S_4			18
#define PCNOC_S_5			19
#define PCNOC_S_7			20
#define SLV_TCSR			21
#define SLV_SDCC_1			22
#define SLV_BLSP_1			23
#define SLV_CRYPTO_0_CFG		24
#define SLV_MESSAGE_RAM			25
#define SLV_PDM				26
#define SLV_PRNG			27
#define SLV_USB_HS			28
#define SLV_QPIC			29
#define SLV_SPDM			30
#define SLV_SDCC_2			31
#define SLV_AUDIO			32
#define SLV_DEHR_CFG			33
#define SLV_SNOC_CFG			34
#define SLV_QDSS_CFG			35
#define SLV_USB_PHY			36
#define SLV_CAMERA_SS_CFG		37
#define SLV_DISP_SS_CFG			38
#define SLV_VENUS_CFG			39
#define SLV_TLMM			40
#define SLV_GPU_CFG			41
#define SLV_IMEM_CFG			42
#define SLV_BIMC_CFG			43
#define SLV_PMIC_ARB			44
#define SLV_TCU				45
#define SLV_PCNOC_SNOC			46

/* SNOC fabric */
#define MAS_QDSS_BAM			0
#define MAS_BIMC_SNOC			1
#define MAS_MDP				2
#define MAS_PCNOC_SNOC			3
#define MAS_VENUS			4
#define MAS_VFE				5
#define MAS_QDSS_ETR			6
#define MM_INT_0			7
#define MM_INT_1			8
#define MM_INT_2			9
#define MM_INT_BIMC			10
#define QDSS_INT			11
#define SNOC_INT_0			12
#define SNOC_INT_1			13
#define SNOC_INT_BIMC			14
#define SLV_KPSS_AHB			15
#define SLV_SNOC_BIMC_0			16
#define SLV_SNOC_BIMC_1			17
#define SLV_IMEM			18
#define SLV_SNOC_PCNOC			19
#define SLV_QDSS_STM			20
#define SLV_CATS_0			21
#define SLV_CATS_1			22

#endif /* __DT_BINDINGS_INTERCONNECT_QCOM_MSM8909_H */