summaryrefslogtreecommitdiff
path: root/drivers/platform/msm/Kconfig
blob: cb7105eed963ce107bd0a4be522aaead5d399837 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
menu "Qualcomm MSM specific device drivers"
	depends on ARCH_QCOM

config QPNP_REVID
	tristate "QPNP Revision ID Peripheral"
	depends on SPMI
	help
	  Say 'y' here to include support for the Qualcomm Technologies, Inc.
	  QPNP REVID peripheral. REVID prints out the PMIC type and revision
	  numbers in the kernel log along with the PMIC option status. The PMIC
	  type is mapped to a QTI chip part number and logged as well.

config QPNP_COINCELL
	tristate "QPNP coincell charger support"
	depends on SPMI
	help
	  This driver supports the QPNP coincell peripheral found inside of
	  Qualcomm Technologies, Inc. QPNP PMIC devices.  The coincell charger
	  provides a means to charge a coincell battery or backup capacitor
	  which is used to maintain PMIC register state when the main battery is
	  removed from the mobile device.

config SPS
	bool "SPS support"
	select GENERIC_ALLOCATOR
	help
	  The SPS (Smart Peripheral Switch) is a DMA engine.
	  It can move data in the following modes:
		1. Peripheral-to-Peripheral.
		2. Peripheral-to-Memory.
		3. Memory-to-Memory.

config SPS_SUPPORT_BAMDMA
	bool "SPS support BAM DMA"
	depends on SPS
	default n
	help
	  The BAM-DMA is used for Memory-to-Memory transfers.
	  The main use cases is RPC between processors.
	  The BAM-DMA hardware has 2 registers sets:
		1. A BAM HW like all the peripherals.
		2. A DMA channel configuration (i.e. channel priority).

config SPS_SUPPORT_NDP_BAM
	bool "SPS support NDP BAM"
	depends on SPS
	default n
	help
	  No-Data-Path BAM is used to improve BAM performance.

config EP_PCIE
	bool "PCIe Endpoint mode support"
	select GENERIC_ALLOCATOR
	help
	  PCIe controller is in endpoint mode.
	  It supports the APIs to clients as a service layer, and allows
	  clients to enable/disable PCIe link, configure the address
	  mapping for the access to host memory, trigger wake interrupt
	  on host side to wake up host, and trigger MSI to host side.

config EP_PCIE_HW
	bool "PCIe Endpoint HW driver"
	depends on EP_PCIE
	help
	  PCIe endpoint HW specific implementation.
	  It supports:
		1. link training with Root Complex.
		2. Address mapping.
		3. Sideband signaling.
		4. Power management.
config IPA
	tristate "IPA support"
	depends on SPS && NET
	help
	  This driver supports the Internet Packet Accelerator (IPA) core.
	  IPA is a programmable protocol processor HW block.
	  It is designed to support generic HW processing of UL/DL IP packets
	  for various use cases independent of radio technology.
	  The driver support client connection and configuration
	  for the IPA core.
	  Kernel and user-space processes can call the IPA driver
	  to configure IPA core.

config RMNET_IPA
	tristate "IPA RMNET WWAN Network Device"
	depends on IPA && MSM_QMI_INTERFACE
	help
	  This WWAN Network Driver implements network stack class device.
	  It supports Embedded data transfer from A7 to Q6. Configures IPA HW
	  for RmNet Data Driver and also exchange of QMI messages between
	  A7 and Q6 IPA-driver.

config GSI
	bool "GSI support"
	help
	  This driver provides the transport needed to talk to the
	  IPA core. It replaces the BAM transport used previously.

	  The GSI connects to a peripheral component via uniform TLV
	  interface, and allows it to interface with other peripherals
	  and CPUs over various types of interfaces such as MHI, xDCI,
	  xHCI, GPI, WDI, Ethernet, etc.

config IPA3
	tristate "IPA3 support"
	depends on GSI && NET
	help
	  This driver supports the Internet Packet Accelerator (IPA3) core.
	  IPA is a programmable protocol processor HW block.
	  It is designed to support generic HW processing of UL/DL IP packets
	  for various use cases independent of radio technology.
	  The driver support client connection and configuration
	  for the IPA core.
	  Kernel and user-space processes can call the IPA driver
	  to configure IPA core.

config RMNET_IPA3
	tristate "IPA3 RMNET WWAN Network Device"
	depends on IPA3 && MSM_QMI_INTERFACE
	help
	  This WWAN Network Driver implements network stack class device.
	  It supports Embedded data transfer from A7 to Q6. Configures IPA HW
	  for RmNet Data Driver and also exchange of QMI messages between
	  A7 and Q6 IPA-driver.

config IPA_UT
	tristate "IPA Unit-Test Framework and Test Suites"
	depends on IPA3 && DEBUG_FS
	help
	  This Module implements IPA in-kernel test framework.
	  The framework supports defining and running tests, grouped
	  into suites according to the sub-unit of the IPA being tested.
	  The user interface to run and control the tests is debugfs file
	  system.

config GPIO_USB_DETECT
	tristate "GPIO-based USB VBUS Detection"
	depends on POWER_SUPPLY
	help
	  This driver supports external USB VBUS detection circuitry whose
	  output is connected to a GPIO. The driver in turn notifies the
	  USB driver of VBUS presence/disconnection using the power_supply
	  framework.

config MSM_MHI
	tristate "Modem Host Interface Driver"
	help
	  This kernel module is used to interact with PCIe endpoints
	  supporting MHI protocol. MHI is a data transmission protocol
	  involving communication between a host and a device over shared
	  memory. The MHI driver manages the shared memory by use of logical
	  unidirectional channels.

config MSM_MHI_UCI
	 tristate "MHI Usperspace Control Interface Driver"
	 depends on MSM_MHI
	 help
	  This modules enables userspace software clients to communicate
	  with devices supporting the MHI protocol. Userspace clients
	  may open the device nodes exposed by MHI UCI and perform
	  read, write and ioctl operations to communicate with the
	  attached device.

config MSM_MHI_DEBUG
	 bool "MHI debug support"
	 depends on MSM_MHI
	 help
	   Say yes here to enable debugging support in the MHI transport
	   and individual MHI client drivers. This option may impact
	   throughput as individual MHI packets and state transitions
	   will be logged.

config MSM_MHI_DEV
        tristate "Modem Device Interface Driver"
	depends on EP_PCIE && IPA
        help
          This kernel module is used to interact with PCIe Root complex
          supporting MHI protocol. MHI is a data transmission protocol
          involving communication between a host and a device over shared
          memory. MHI interacts with the IPA for supporting transfers
	  on the HW accelerated channels between Host and device.

config MSM_11AD
	tristate "Platform driver for 11ad chip"
	depends on PCI
	depends on PCI_MSM
	default m
	---help---
	  This module adds required platform support for wireless adapter based on
	  Qualcomm Technologies, Inc. 11ad chip, integrated into MSM platform

	  If you choose to build it as a module, it will be called
	  msm_11ad_proxy.

config SEEMP_CORE
	tristate "SEEMP Core"
	help
	  This option enables Qualcomm Snapdragron Smart Protection to detect
	  anomalies in various activities. It records task activities in
	  a log and rates the actions according to whether a typical user would
	  use the tools.

config USB_BAM
	bool "USB BAM Driver"
	depends on SPS && USB_GADGET
	help
	  Enabling this option adds USB BAM Driver.
	  USB BAM driver was added to supports SPS Peripheral-to-Peripheral
	  transfers between the USB and other peripheral.

config MSM_EXT_DISPLAY
	bool "MSM External Display Driver"
	help
	  Enabling this option adds MSM External Display Driver.
	  External Display driver was added to support the communication
	  between external display driver and its couterparts.

source "drivers/platform/msm/qcn/Kconfig"

endmenu