[PATCH v10 1/1] wfx: get out from the staging area

Jerome Pouiller
2022-02-26T09:22:25Z

From: Jérôme Pouiller <jerome.pouiller@silabs.com>

The wfx driver is now mature enough to leave the staging area.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
---
.../{staging => }/net/wireless/silabs,wfx.yaml | 2 +-
MAINTAINERS | 4 ++--
drivers/net/wireless/Kconfig | 1 +
drivers/net/wireless/Makefile | 1 +
drivers/net/wireless/silabs/Kconfig | 18 ++++++++++++++++++
drivers/net/wireless/silabs/Makefile | 3 +++
.../wireless/silabs}/wfx/Kconfig | 0
.../wireless/silabs}/wfx/Makefile | 0
.../{staging => net/wireless/silabs}/wfx/bh.c | 0
.../{staging => net/wireless/silabs}/wfx/bh.h | 0
.../{staging => net/wireless/silabs}/wfx/bus.h | 0
.../wireless/silabs}/wfx/bus_sdio.c | 0
.../wireless/silabs}/wfx/bus_spi.c | 0
.../wireless/silabs}/wfx/data_rx.c | 0
.../wireless/silabs}/wfx/data_rx.h | 0
.../wireless/silabs}/wfx/data_tx.c | 0
.../wireless/silabs}/wfx/data_tx.h | 0
.../wireless/silabs}/wfx/debug.c | 0
.../wireless/silabs}/wfx/debug.h | 0
.../wireless/silabs}/wfx/fwio.c | 0
.../wireless/silabs}/wfx/fwio.h | 0
.../wireless/silabs}/wfx/hif_api_cmd.h | 0
.../wireless/silabs}/wfx/hif_api_general.h | 0
.../wireless/silabs}/wfx/hif_api_mib.h | 0
.../wireless/silabs}/wfx/hif_rx.c | 0
.../wireless/silabs}/wfx/hif_rx.h | 0
.../wireless/silabs}/wfx/hif_tx.c | 0
.../wireless/silabs}/wfx/hif_tx.h | 0
.../wireless/silabs}/wfx/hif_tx_mib.c | 0
.../wireless/silabs}/wfx/hif_tx_mib.h | 0
.../wireless/silabs}/wfx/hwio.c | 0
.../wireless/silabs}/wfx/hwio.h | 0
.../{staging => net/wireless/silabs}/wfx/key.c | 0
.../{staging => net/wireless/silabs}/wfx/key.h | 0
.../wireless/silabs}/wfx/main.c | 0
.../wireless/silabs}/wfx/main.h | 0
.../wireless/silabs}/wfx/queue.c | 0
.../wireless/silabs}/wfx/queue.h | 0
.../wireless/silabs}/wfx/scan.c | 0
.../wireless/silabs}/wfx/scan.h | 0
.../{staging => net/wireless/silabs}/wfx/sta.c | 0
.../{staging => net/wireless/silabs}/wfx/sta.h | 0
.../wireless/silabs}/wfx/traces.h | 0
.../{staging => net/wireless/silabs}/wfx/wfx.h | 0
drivers/staging/Kconfig | 1 -
drivers/staging/Makefile | 1 -
drivers/staging/wfx/TODO | 6 ------
47 files changed, 26 insertions(+), 11 deletions(-)
rename Documentation/devicetree/bindings/{staging => }/net/wireless/silabs,wfx.yaml (98%)
create mode 100644 drivers/net/wireless/silabs/Kconfig
create mode 100644 drivers/net/wireless/silabs/Makefile
rename drivers/{staging => net/wireless/silabs}/wfx/Kconfig (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/Makefile (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/bh.c (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/bh.h (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/bus.h (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/bus_sdio.c (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/bus_spi.c (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/data_rx.c (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/data_rx.h (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/data_tx.c (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/data_tx.h (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/debug.c (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/debug.h (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/fwio.c (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/fwio.h (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/hif_api_cmd.h (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/hif_api_general.h (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/hif_api_mib.h (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/hif_rx.c (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/hif_rx.h (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/hif_tx.c (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/hif_tx.h (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/hif_tx_mib.c (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/hif_tx_mib.h (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/hwio.c (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/hwio.h (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/key.c (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/key.h (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/main.c (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/main.h (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/queue.c (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/queue.h (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/scan.c (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/scan.h (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/sta.c (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/sta.h (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/traces.h (100%)
rename drivers/{staging => net/wireless/silabs}/wfx/wfx.h (100%)
delete mode 100644 drivers/staging/wfx/TODO

diff --git a/Documentation/devicetree/bindings/staging/net/wireless/silabs,wfx.yaml b/Documentation/devicetree/bindings/net/wireless/silabs,wfx.yaml
similarity index 98%
rename from Documentation/devicetree/bindings/staging/net/wireless/silabs,wfx.yaml
rename to Documentation/devicetree/bindings/net/wireless/silabs,wfx.yaml
index 105725a127ab..f5a531738d93 100644
--- a/Documentation/devicetree/bindings/staging/net/wireless/silabs,wfx.yaml
+++ b/Documentation/devicetree/bindings/net/wireless/silabs,wfx.yaml
@@ -3,7 +3,7 @@
%YAML 1.2
---

-$id: http://devicetree.org/schemas/staging/net/wireless/silabs,wfx.yaml#
+$id: http://devicetree.org/schemas/net/wireless/silabs,wfx.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Silicon Labs WFxxx devicetree bindings
diff --git a/MAINTAINERS b/MAINTAINERS
index 65227f6aabd0..d6a14f876c6c 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -17652,8 +17652,8 @@ F: drivers/platform/x86/touchscreen_dmi.c
SILICON LABS WIRELESS DRIVERS (for WFxxx series)
M: Jérôme Pouiller <jerome.pouiller@silabs.com>
S: Supported
-F: Documentation/devicetree/bindings/staging/net/wireless/silabs,wfx.yaml
-F: drivers/staging/wfx/
+F: Documentation/devicetree/bindings/net/wireless/silabs,wfx.yaml
+F: drivers/net/wireless/silabs/wfx/

SILICON MOTION SM712 FRAME BUFFER DRIVER
M: Sudip Mukherjee <sudipm.mukherjee@gmail.com>
diff --git a/drivers/net/wireless/Kconfig b/drivers/net/wireless/Kconfig
index 7add2002ff4c..e78ff7af6517 100644
--- a/drivers/net/wireless/Kconfig
+++ b/drivers/net/wireless/Kconfig
@@ -31,6 +31,7 @@ source "drivers/net/wireless/microchip/Kconfig"
source "drivers/net/wireless/ralink/Kconfig"
source "drivers/net/wireless/realtek/Kconfig"
source "drivers/net/wireless/rsi/Kconfig"
+source "drivers/net/wireless/silabs/Kconfig"
source "drivers/net/wireless/st/Kconfig"
source "drivers/net/wireless/ti/Kconfig"
source "drivers/net/wireless/zydas/Kconfig"
diff --git a/drivers/net/wireless/Makefile b/drivers/net/wireless/Makefile
index 80b324499786..76885e5f0ea7 100644
--- a/drivers/net/wireless/Makefile
+++ b/drivers/net/wireless/Makefile
@@ -16,6 +16,7 @@ obj-$(CONFIG_WLAN_VENDOR_MICROCHIP) += microchip/
obj-$(CONFIG_WLAN_VENDOR_RALINK) += ralink/
obj-$(CONFIG_WLAN_VENDOR_REALTEK) += realtek/
obj-$(CONFIG_WLAN_VENDOR_RSI) += rsi/
+obj-$(CONFIG_WLAN_VENDOR_SILABS) += silabs/
obj-$(CONFIG_WLAN_VENDOR_ST) += st/
obj-$(CONFIG_WLAN_VENDOR_TI) += ti/
obj-$(CONFIG_WLAN_VENDOR_ZYDAS) += zydas/
diff --git a/drivers/net/wireless/silabs/Kconfig b/drivers/net/wireless/silabs/Kconfig
new file mode 100644
index 000000000000..6262a799bf36
--- /dev/null
+++ b/drivers/net/wireless/silabs/Kconfig
@@ -0,0 +1,18 @@
+# SPDX-License-Identifier: GPL-2.0
+
+config WLAN_VENDOR_SILABS
+ bool "Silicon Laboratories devices"
+ default y
+ help
+ If you have a wireless card belonging to this class, say Y.
+
+ Note that the answer to this question doesn't directly affect the
+ kernel: saying N will just cause the configurator to skip all the
+ questions about these cards. If you say Y, you will be asked for
+ your specific card in the following questions.
+
+if WLAN_VENDOR_SILABS
+
+source "drivers/net/wireless/silabs/wfx/Kconfig"
+
+endif # WLAN_VENDOR_SILABS
diff --git a/drivers/net/wireless/silabs/Makefile b/drivers/net/wireless/silabs/Makefile
new file mode 100644
index 000000000000..c2263ee21006
--- /dev/null
+++ b/drivers/net/wireless/silabs/Makefile
@@ -0,0 +1,3 @@
+# SPDX-License-Identifier: GPL-2.0
+
+obj-$(CONFIG_WFX) += wfx/
diff --git a/drivers/staging/wfx/Kconfig b/drivers/net/wireless/silabs/wfx/Kconfig
similarity index 100%
rename from drivers/staging/wfx/Kconfig
rename to drivers/net/wireless/silabs/wfx/Kconfig
diff --git a/drivers/staging/wfx/Makefile b/drivers/net/wireless/silabs/wfx/Makefile
similarity index 100%
rename from drivers/staging/wfx/Makefile
rename to drivers/net/wireless/silabs/wfx/Makefile
diff --git a/drivers/staging/wfx/bh.c b/drivers/net/wireless/silabs/wfx/bh.c
similarity index 100%
rename from drivers/staging/wfx/bh.c
rename to drivers/net/wireless/silabs/wfx/bh.c
diff --git a/drivers/staging/wfx/bh.h b/drivers/net/wireless/silabs/wfx/bh.h
similarity index 100%
rename from drivers/staging/wfx/bh.h
rename to drivers/net/wireless/silabs/wfx/bh.h
diff --git a/drivers/staging/wfx/bus.h b/drivers/net/wireless/silabs/wfx/bus.h
similarity index 100%
rename from drivers/staging/wfx/bus.h
rename to drivers/net/wireless/silabs/wfx/bus.h
diff --git a/drivers/staging/wfx/bus_sdio.c b/drivers/net/wireless/silabs/wfx/bus_sdio.c
similarity index 100%
rename from drivers/staging/wfx/bus_sdio.c
rename to drivers/net/wireless/silabs/wfx/bus_sdio.c
diff --git a/drivers/staging/wfx/bus_spi.c b/drivers/net/wireless/silabs/wfx/bus_spi.c
similarity index 100%
rename from drivers/staging/wfx/bus_spi.c
rename to drivers/net/wireless/silabs/wfx/bus_spi.c
diff --git a/drivers/staging/wfx/data_rx.c b/drivers/net/wireless/silabs/wfx/data_rx.c
similarity index 100%
rename from drivers/staging/wfx/data_rx.c
rename to drivers/net/wireless/silabs/wfx/data_rx.c
diff --git a/drivers/staging/wfx/data_rx.h b/drivers/net/wireless/silabs/wfx/data_rx.h
similarity index 100%
rename from drivers/staging/wfx/data_rx.h
rename to drivers/net/wireless/silabs/wfx/data_rx.h
diff --git a/drivers/staging/wfx/data_tx.c b/drivers/net/wireless/silabs/wfx/data_tx.c
similarity index 100%
rename from drivers/staging/wfx/data_tx.c
rename to drivers/net/wireless/silabs/wfx/data_tx.c
diff --git a/drivers/staging/wfx/data_tx.h b/drivers/net/wireless/silabs/wfx/data_tx.h
similarity index 100%
rename from drivers/staging/wfx/data_tx.h
rename to drivers/net/wireless/silabs/wfx/data_tx.h
diff --git a/drivers/staging/wfx/debug.c b/drivers/net/wireless/silabs/wfx/debug.c
similarity index 100%
rename from drivers/staging/wfx/debug.c
rename to drivers/net/wireless/silabs/wfx/debug.c
diff --git a/drivers/staging/wfx/debug.h b/drivers/net/wireless/silabs/wfx/debug.h
similarity index 100%
rename from drivers/staging/wfx/debug.h
rename to drivers/net/wireless/silabs/wfx/debug.h
diff --git a/drivers/staging/wfx/fwio.c b/drivers/net/wireless/silabs/wfx/fwio.c
similarity index 100%
rename from drivers/staging/wfx/fwio.c
rename to drivers/net/wireless/silabs/wfx/fwio.c
diff --git a/drivers/staging/wfx/fwio.h b/drivers/net/wireless/silabs/wfx/fwio.h
similarity index 100%
rename from drivers/staging/wfx/fwio.h
rename to drivers/net/wireless/silabs/wfx/fwio.h
diff --git a/drivers/staging/wfx/hif_api_cmd.h b/drivers/net/wireless/silabs/wfx/hif_api_cmd.h
similarity index 100%
rename from drivers/staging/wfx/hif_api_cmd.h
rename to drivers/net/wireless/silabs/wfx/hif_api_cmd.h
diff --git a/drivers/staging/wfx/hif_api_general.h b/drivers/net/wireless/silabs/wfx/hif_api_general.h
similarity index 100%
rename from drivers/staging/wfx/hif_api_general.h
rename to drivers/net/wireless/silabs/wfx/hif_api_general.h
diff --git a/drivers/staging/wfx/hif_api_mib.h b/drivers/net/wireless/silabs/wfx/hif_api_mib.h
similarity index 100%
rename from drivers/staging/wfx/hif_api_mib.h
rename to drivers/net/wireless/silabs/wfx/hif_api_mib.h
diff --git a/drivers/staging/wfx/hif_rx.c b/drivers/net/wireless/silabs/wfx/hif_rx.c
similarity index 100%
rename from drivers/staging/wfx/hif_rx.c
rename to drivers/net/wireless/silabs/wfx/hif_rx.c
diff --git a/drivers/staging/wfx/hif_rx.h b/drivers/net/wireless/silabs/wfx/hif_rx.h
similarity index 100%
rename from drivers/staging/wfx/hif_rx.h
rename to drivers/net/wireless/silabs/wfx/hif_rx.h
diff --git a/drivers/staging/wfx/hif_tx.c b/drivers/net/wireless/silabs/wfx/hif_tx.c
similarity index 100%
rename from drivers/staging/wfx/hif_tx.c
rename to drivers/net/wireless/silabs/wfx/hif_tx.c
diff --git a/drivers/staging/wfx/hif_tx.h b/drivers/net/wireless/silabs/wfx/hif_tx.h
similarity index 100%
rename from drivers/staging/wfx/hif_tx.h
rename to drivers/net/wireless/silabs/wfx/hif_tx.h
diff --git a/drivers/staging/wfx/hif_tx_mib.c b/drivers/net/wireless/silabs/wfx/hif_tx_mib.c
similarity index 100%
rename from drivers/staging/wfx/hif_tx_mib.c
rename to drivers/net/wireless/silabs/wfx/hif_tx_mib.c
diff --git a/drivers/staging/wfx/hif_tx_mib.h b/drivers/net/wireless/silabs/wfx/hif_tx_mib.h
similarity index 100%
rename from drivers/staging/wfx/hif_tx_mib.h
rename to drivers/net/wireless/silabs/wfx/hif_tx_mib.h
diff --git a/drivers/staging/wfx/hwio.c b/drivers/net/wireless/silabs/wfx/hwio.c
similarity index 100%
rename from drivers/staging/wfx/hwio.c
rename to drivers/net/wireless/silabs/wfx/hwio.c
diff --git a/drivers/staging/wfx/hwio.h b/drivers/net/wireless/silabs/wfx/hwio.h
similarity index 100%
rename from drivers/staging/wfx/hwio.h
rename to drivers/net/wireless/silabs/wfx/hwio.h
diff --git a/drivers/staging/wfx/key.c b/drivers/net/wireless/silabs/wfx/key.c
similarity index 100%
rename from drivers/staging/wfx/key.c
rename to drivers/net/wireless/silabs/wfx/key.c
diff --git a/drivers/staging/wfx/key.h b/drivers/net/wireless/silabs/wfx/key.h
similarity index 100%
rename from drivers/staging/wfx/key.h
rename to drivers/net/wireless/silabs/wfx/key.h
diff --git a/drivers/staging/wfx/main.c b/drivers/net/wireless/silabs/wfx/main.c
similarity index 100%
rename from drivers/staging/wfx/main.c
rename to drivers/net/wireless/silabs/wfx/main.c
diff --git a/drivers/staging/wfx/main.h b/drivers/net/wireless/silabs/wfx/main.h
similarity index 100%
rename from drivers/staging/wfx/main.h
rename to drivers/net/wireless/silabs/wfx/main.h
diff --git a/drivers/staging/wfx/queue.c b/drivers/net/wireless/silabs/wfx/queue.c
similarity index 100%
rename from drivers/staging/wfx/queue.c
rename to drivers/net/wireless/silabs/wfx/queue.c
diff --git a/drivers/staging/wfx/queue.h b/drivers/net/wireless/silabs/wfx/queue.h
similarity index 100%
rename from drivers/staging/wfx/queue.h
rename to drivers/net/wireless/silabs/wfx/queue.h
diff --git a/drivers/staging/wfx/scan.c b/drivers/net/wireless/silabs/wfx/scan.c
similarity index 100%
rename from drivers/staging/wfx/scan.c
rename to drivers/net/wireless/silabs/wfx/scan.c
diff --git a/drivers/staging/wfx/scan.h b/drivers/net/wireless/silabs/wfx/scan.h
similarity index 100%
rename from drivers/staging/wfx/scan.h
rename to drivers/net/wireless/silabs/wfx/scan.h
diff --git a/drivers/staging/wfx/sta.c b/drivers/net/wireless/silabs/wfx/sta.c
similarity index 100%
rename from drivers/staging/wfx/sta.c
rename to drivers/net/wireless/silabs/wfx/sta.c
diff --git a/drivers/staging/wfx/sta.h b/drivers/net/wireless/silabs/wfx/sta.h
similarity index 100%
rename from drivers/staging/wfx/sta.h
rename to drivers/net/wireless/silabs/wfx/sta.h
diff --git a/drivers/staging/wfx/traces.h b/drivers/net/wireless/silabs/wfx/traces.h
similarity index 100%
rename from drivers/staging/wfx/traces.h
rename to drivers/net/wireless/silabs/wfx/traces.h
diff --git a/drivers/staging/wfx/wfx.h b/drivers/net/wireless/silabs/wfx/wfx.h
similarity index 100%
rename from drivers/staging/wfx/wfx.h
rename to drivers/net/wireless/silabs/wfx/wfx.h
diff --git a/drivers/staging/Kconfig b/drivers/staging/Kconfig
index d1ce500c0319..1cface7e28c2 100644
--- a/drivers/staging/Kconfig
+++ b/drivers/staging/Kconfig
@@ -90,6 +90,5 @@ source "drivers/staging/fieldbus/Kconfig"

source "drivers/staging/qlge/Kconfig"

-source "drivers/staging/wfx/Kconfig"

endif # STAGING
diff --git a/drivers/staging/Makefile b/drivers/staging/Makefile
index 82e912a7586f..6a04e9b423f3 100644
--- a/drivers/staging/Makefile
+++ b/drivers/staging/Makefile
@@ -35,4 +35,3 @@ obj-$(CONFIG_SOC_MT7621) += mt7621-dts/
obj-$(CONFIG_XIL_AXIS_FIFO) += axis-fifo/
obj-$(CONFIG_FIELDBUS_DEV) += fieldbus/
obj-$(CONFIG_QLGE) += qlge/
-obj-$(CONFIG_WFX) += wfx/
diff --git a/drivers/staging/wfx/TODO b/drivers/staging/wfx/TODO
deleted file mode 100644
index 1b4bc2af94b6..000000000000
--- a/drivers/staging/wfx/TODO
+++ /dev/null
@@ -1,6 +0,0 @@
-This is a list of things that need to be done to get this driver out of the
-staging directory.
-
- - As suggested by Felix, rate control could be improved following this idea:
- https://lore.kernel.org/lkml/3099559.gv3Q75KnN1@pc-42/
-
--
2.34.1