summaryrefslogtreecommitdiff
path: root/drivers/net
diff options
context:
space:
mode:
authorWei Li <weili@codeaurora.org>2017-04-21 09:35:07 +0800
committerGerrit - the friendly Code Review server <code-review@localhost>2017-05-09 18:46:52 -0700
commit3e16478810db352c8ba01e8e77d3bc2c2c239338 (patch)
tree5a820f4fb403a0723b3acfdcb9d6f3b7887ee0c1 /drivers/net
parent3d82d66409abb91539bcb9d1f343fcb9d583f2b4 (diff)
cnss: add an option to allow driver using asynchronous probe
Add option CONFIG_CNSS_ASYNC to allow CNSS platform driver probe asynchronously for boot time optimization in auto platform Change-Id: Id1fcb8991a47ae56098a9bbd6ff570e22d6450d6 Signed-off-by: Wei Li <weili@codeaurora.org>
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/wireless/cnss/Kconfig9
-rw-r--r--drivers/net/wireless/cnss/cnss_pci.c5
2 files changed, 13 insertions, 1 deletions
diff --git a/drivers/net/wireless/cnss/Kconfig b/drivers/net/wireless/cnss/Kconfig
index 4558dc30fec1..8e69a2b469b9 100644
--- a/drivers/net/wireless/cnss/Kconfig
+++ b/drivers/net/wireless/cnss/Kconfig
@@ -9,6 +9,15 @@ config CNSS
This driver also adds support to integrate WLAN module to subsystem
restart framework.
+config CNSS_ASYNC
+ bool "Enable/disable cnss pci platform driver asynchronous probe"
+ depends on CNSS
+ ---help---
+ If enabled, CNSS PCI platform driver would do asynchronous probe.
+ Using asynchronous probe will allow CNSS PCI platform driver to
+ probe in parallel with other device drivers and will help to
+ reduce kernel boot time.
+
config CNSS_MAC_BUG
bool "Enable/disable 0-4K memory initialization for QCA6174"
depends on CNSS
diff --git a/drivers/net/wireless/cnss/cnss_pci.c b/drivers/net/wireless/cnss/cnss_pci.c
index f53ed2693879..48d358c4722a 100644
--- a/drivers/net/wireless/cnss/cnss_pci.c
+++ b/drivers/net/wireless/cnss/cnss_pci.c
@@ -1,4 +1,4 @@
-/* Copyright (c) 2013-2016, The Linux Foundation. All rights reserved.
+/* Copyright (c) 2013-2017, 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
@@ -3067,6 +3067,9 @@ static struct platform_driver cnss_driver = {
.name = "cnss",
.owner = THIS_MODULE,
.of_match_table = cnss_dt_match,
+#ifdef CONFIG_CNSS_ASYNC
+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
+#endif
},
};