drivers/interconnect/qcom/msm8976.c

Source file repositories/reference/linux-study-clean/drivers/interconnect/qcom/msm8976.c

File Facts

System
Linux kernel
Corpus path
drivers/interconnect/qcom/msm8976.c
Extension
.c
Size
31625 bytes
Lines
1441
Domain
Driver Families
Bucket
drivers/interconnect
Inferred role
Driver Families: implementation source
Status
source implementation candidate

Why This File Exists

Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.

Dependency Surface

Detected Declarations

Annotated Snippet

// SPDX-License-Identifier: GPL-2.0-only
/*
 * Based on data from msm8976-bus.dtsi in Qualcomm's msm-3.10 release:
 *   Copyright (c) 2014-2016, The Linux Foundation. All rights reserved.
 */

#include <linux/device.h>
#include <linux/interconnect-provider.h>
#include <linux/mod_devicetable.h>
#include <linux/module.h>
#include <linux/platform_device.h>
#include <linux/regmap.h>

#include <dt-bindings/interconnect/qcom,msm8976.h>

#include "icc-rpm.h"

enum {
	QNOC_MASTER_AMPSS_M0 = 1,
	QNOC_MNOC_BIMC_MAS,
	QNOC_SNOC_BIMC_MAS,
	QNOC_MASTER_TCU_0,
	QNOC_MASTER_USB_HS2,
	QNOC_MASTER_BLSP_1,
	QNOC_MASTER_USB_HS,
	QNOC_MASTER_BLSP_2,
	QNOC_MASTER_CRYPTO_CORE0,
	QNOC_MASTER_SDCC_1,
	QNOC_MASTER_SDCC_2,
	QNOC_MASTER_SDCC_3,
	QNOC_SNOC_PNOC_MAS,
	QNOC_MASTER_LPASS_AHB,
	QNOC_MASTER_SPDM,
	QNOC_MASTER_DEHR,
	QNOC_MASTER_XM_USB_HS1,
	QNOC_MASTER_QDSS_BAM,
	QNOC_BIMC_SNOC_MAS,
	QNOC_MASTER_JPEG,
	QNOC_MASTER_GRAPHICS_3D,
	QNOC_MASTER_MDP_PORT0,
	QNOC_MASTER_MDP_PORT1,
	QNOC_PNOC_SNOC_MAS,
	QNOC_MASTER_VIDEO_P0,
	QNOC_MASTER_VIDEO_P1,
	QNOC_MASTER_VFE0,
	QNOC_MASTER_VFE1,
	QNOC_MASTER_CPP,
	QNOC_MASTER_QDSS_ETR,
	QNOC_MASTER_LPASS_PROC,
	QNOC_MASTER_IPA,
	QNOC_PNOC_M_0,
	QNOC_PNOC_M_1,
	QNOC_PNOC_INT_0,
	QNOC_PNOC_INT_1,
	QNOC_PNOC_INT_2,
	QNOC_PNOC_SLV_1,
	QNOC_PNOC_SLV_2,
	QNOC_PNOC_SLV_3,
	QNOC_PNOC_SLV_4,
	QNOC_PNOC_SLV_8,
	QNOC_PNOC_SLV_9,
	QNOC_SNOC_MM_INT_0,
	QNOC_SNOC_QDSS_INT,
	QNOC_SNOC_INT_0,
	QNOC_SNOC_INT_1,
	QNOC_SNOC_INT_2,
	QNOC_SLAVE_EBI_CH0,
	QNOC_BIMC_SNOC_SLV,
	QNOC_SLAVE_TCSR,
	QNOC_SLAVE_TLMM,
	QNOC_SLAVE_CRYPTO_0_CFG,
	QNOC_SLAVE_MESSAGE_RAM,
	QNOC_SLAVE_PDM,
	QNOC_SLAVE_PRNG,
	QNOC_SLAVE_PMIC_ARB,
	QNOC_SLAVE_SNOC_CFG,
	QNOC_SLAVE_DCC_CFG,
	QNOC_SLAVE_CAMERA_CFG,
	QNOC_SLAVE_DISPLAY_CFG,
	QNOC_SLAVE_VENUS_CFG,
	QNOC_SLAVE_SDCC_1,
	QNOC_SLAVE_BLSP_1,
	QNOC_SLAVE_USB_HS,
	QNOC_SLAVE_SDCC_3,
	QNOC_SLAVE_SDCC_2,
	QNOC_SLAVE_GRAPHICS_3D_CFG,
	QNOC_SLAVE_USB_HS2,
	QNOC_SLAVE_BLSP_2,
	QNOC_PNOC_SNOC_SLV,
	QNOC_SLAVE_APPSS,

Annotation

Implementation Notes