Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 62d147b4 authored by Yue Ma's avatar Yue Ma
Browse files

net: Add CNSS2 platform driver



This driver is mainly designed for QCA6290 and afterward PCIe based
Wi-Fi chipset. It is also backward compatible with current QCA6174
PCIe based Wi-Fi chipset. It is leveraged from CNSS platform
driver but has complete code refactoring which is able to provide
more scalability and extensibility for future development. It also
removes duplicated code and unused features from CNSS driver.

This is the initial version of the driver which supports QCA6174 PCIe
based chipset first and adds the hooks for QCA6290 chipset.

Change-Id: I68c6346413dc7bd2a05bef72a6bcf33d76debdc1
Signed-off-by: default avatarYue Ma <yuem@codeaurora.org>
parent 0cf3124f
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -11,8 +11,9 @@ the WLAN enable GPIO, 3.3V fixed voltage regulator resources. It also
provides the reserved RAM dump memory location and size.

Required properties:
  - compatible: "qcom,cnss"
  - wlan-en-gpio: WLAN_EN GPIO signal specified by QCA6174 specifications
  - compatible: "qcom,cnss" for QCA6174 device
                "qcom,cnss-qca6290" for QCA6290 device
  - wlan-en-gpio: WLAN_EN GPIO signal specified by the chip specifications
  - vdd-wlan-supply: phandle to the regulator device tree node
  - pinctrl-names: Names corresponding to the numbered pinctrl states
  - pinctrl-<n>: Pinctrl states as described in
+1 −0
Original line number Diff line number Diff line
@@ -344,5 +344,6 @@ source "drivers/net/wireless/mwifiex/Kconfig"
source "drivers/net/wireless/cw1200/Kconfig"
source "drivers/net/wireless/rsi/Kconfig"
source "drivers/net/wireless/cnss/Kconfig"
source "drivers/net/wireless/cnss2/Kconfig"

endif # WLAN
+1 −0
Original line number Diff line number Diff line
@@ -64,5 +64,6 @@ obj-$(CONFIG_RSI_91X) += rsi/
obj-$(CONFIG_WCNSS_CORE)	+= wcnss/

obj-$(CONFIG_CNSS)	+= cnss/
obj-$(CONFIG_CNSS2)	+= cnss2/
obj-$(CONFIG_WCNSS_MEM_PRE_ALLOC) += cnss_prealloc/
obj-$(CONFIG_CNSS_CRYPTO)	+= cnss_crypto/
+4 −1
Original line number Diff line number Diff line
@@ -46,6 +46,9 @@ config CLD_LL_CORE
	select WEXT_PRIV
	select WEXT_SPY
	select WIRELESS_EXT
	select CRYPTO
	select CRYPTO_HASH
	select CRYPTO_BLKCIPHER
	---help---
	  This section contains the necessary modules needed to enable the
	  core WLAN driver for Qualcomm QCA6174 chipset.
@@ -63,7 +66,7 @@ config CNSS_SECURE_FW

config BUS_AUTO_SUSPEND
	bool "Enable/Disable Runtime PM support for PCIe based WLAN Drivers"
	depends on CNSS
	depends on CNSS || CNSS2
	depends on PCI
	---help---
	  Runtime Power Management is supported for PCIe based WLAN Drivers.
+17 −0
Original line number Diff line number Diff line
config CNSS2
	tristate "CNSS2 Platform Driver for Wi-Fi Module"
	depends on !CNSS && PCI_MSM
	---help---
	  This module adds the support for Connectivity Subsystem (CNSS) used
	  for PCIe based Wi-Fi devices with QCA6174/QCA6290 chipsets.
	  This driver also adds support to integrate WLAN module to subsystem
	  restart framework.

config CNSS2_DEBUG
	bool "CNSS2 Platform Driver Debug Support"
	depends on CNSS2
	---help---
	  This option is to enable CNSS2 platform driver debug support which
	  primarily includes providing additional verbose logs for certain
	  features, enabling kernel panic for certain cases to aid the
	  debugging, and enabling any other debug mechanisms.
Loading