mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-27 21:03:32 +00:00
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: Georgi Djakov <djakov@kernel.org>
This commit is contained in:
commit
cd6d762c20
5 changed files with 1436 additions and 0 deletions
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
drivers/interconnect/qcom/msm8909.c
Normal file
1329
drivers/interconnect/qcom/msm8909.c
Normal file
File diff suppressed because it is too large
Load diff
93
include/dt-bindings/interconnect/qcom,msm8909.h
Normal file
93
include/dt-bindings/interconnect/qcom,msm8909.h
Normal file
|
@ -0,0 +1,93 @@
|
|||
/* 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 */
|
Loading…
Reference in a new issue