net: cnss platform driver for SDIO WLAN module
This platform driver adds support for the CNSS connectivity subsystem used for SDIO based WiFi devices. CRs-Fixed: 944601 Change-Id: I8193b73815a8667c9ef4b7d2a87f61f7f3c090fe Signed-off-by: Komal Seelam <kseelam@codeaurora.org> Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
This commit is contained in:
parent
e8def0fbb1
commit
19c6e69a74
|
@ -0,0 +1,13 @@
|
|||
* Qualcomm Technologies Inc Connectivity SubSystem Platform Driver
|
||||
|
||||
This platform driver adds support for the CNSS subsystem used for SDIO
|
||||
based Wi-Fi devices. The main purpose of this device tree entry below
|
||||
is to invoke the CNSS SDIO platform driver.
|
||||
|
||||
Required properties:
|
||||
- compatible : "qcom,cnss_sdio"
|
||||
|
||||
Example:
|
||||
qcom,cnss-sdio {
|
||||
compatible = "qcom,cnss_sdio";
|
||||
};
|
|
@ -311,6 +311,17 @@ config CNSS
|
|||
This driver also adds support to integrate PCIe WLAN module to subsystem
|
||||
restart framework.
|
||||
|
||||
config CNSS_SDIO
|
||||
tristate "Flag to enable platform driver for SIDO based wifi device"
|
||||
depends on MMC_SDHCI
|
||||
depends on MMC_SDHCI_MSM
|
||||
---help---
|
||||
This module specifies whether CNSS Platform Driver supports SDIO.
|
||||
This flag needs to be disabled if CNSS platform Driver need to be
|
||||
supported for other buses.
|
||||
This Flag is used by CLD Driver to use the SDIO GPL API's through
|
||||
CNSS Platform Driver.
|
||||
|
||||
config CNSS_SECURE_FW
|
||||
bool "Enable/Disable Memory Allocation for Secure Firmware Feature"
|
||||
depends on CNSS
|
||||
|
|
|
@ -60,5 +60,6 @@ obj-$(CONFIG_BRCMSMAC) += brcm80211/
|
|||
|
||||
obj-$(CONFIG_LIBRA_SDIOIF) += libra/
|
||||
obj-$(CONFIG_WCNSS_CORE) += wcnss/
|
||||
obj-$(CONFIG_CNSS_SDIO) += cnss/cnss_sdio.o
|
||||
obj-$(CONFIG_CNSS) += cnss/
|
||||
obj-$(CONFIG_WCNSS_MEM_PRE_ALLOC) += cnss_prealloc/
|
||||
|
|
|
@ -0,0 +1,59 @@
|
|||
/* Copyright (c) 2015, The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 and
|
||||
* only version 2 as published by the Free Software Foundation.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*/
|
||||
|
||||
#include <linux/kernel.h>
|
||||
#include <linux/module.h>
|
||||
#include <linux/init.h>
|
||||
#include <linux/of.h>
|
||||
#include <linux/platform_device.h>
|
||||
|
||||
static int cnss_sdio_probe(struct platform_device *pdev)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int cnss_sdio_remove(struct platform_device *pdev)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static const struct of_device_id cnss_sdio_dt_match[] = {
|
||||
{.compatible = "qcom,cnss_sdio"},
|
||||
{}
|
||||
};
|
||||
MODULE_DEVICE_TABLE(of, cnss_sdio_dt_match);
|
||||
|
||||
static struct platform_driver cnss_sdio_driver = {
|
||||
.probe = cnss_sdio_probe,
|
||||
.remove = cnss_sdio_remove,
|
||||
.driver = {
|
||||
.name = "cnss_sdio",
|
||||
.owner = THIS_MODULE,
|
||||
.of_match_table = cnss_sdio_dt_match,
|
||||
},
|
||||
};
|
||||
|
||||
static int __init cnss_sdio_init(void)
|
||||
{
|
||||
return platform_driver_register(&cnss_sdio_driver);
|
||||
}
|
||||
|
||||
static void __exit cnss_sdio_exit(void)
|
||||
{
|
||||
platform_driver_unregister(&cnss_sdio_driver);
|
||||
}
|
||||
|
||||
module_init(cnss_sdio_init);
|
||||
module_exit(cnss_sdio_exit);
|
||||
|
||||
MODULE_LICENSE("GPL v2");
|
||||
MODULE_DESCRIPTION(DEVICE "CNSS SDIO Driver");
|
Loading…
Reference in New Issue