wifi: wl1251: drop support for platform data
authorDmitry Torokhov <dmitry.torokhov@gmail.com>
Wed, 9 Nov 2022 22:42:49 +0000 (14:42 -0800)
committerKalle Valo <kvalo@kernel.org>
Wed, 16 Nov 2022 09:37:37 +0000 (11:37 +0200)
Remove support for configuring the device via platform data because
there are no users of wl1251_platform_data left in the mainline kernel.

Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Kalle Valo <kvalo@kernel.org>
Link: https://lore.kernel.org/r/20221109224250.2885119-2-dmitry.torokhov@gmail.com
MAINTAINERS
drivers/net/wireless/ti/Kconfig
drivers/net/wireless/ti/wilink_platform_data.c [deleted file]
drivers/net/wireless/ti/wl1251/sdio.c
drivers/net/wireless/ti/wl1251/spi.c
drivers/net/wireless/ti/wlcore/spi.c
include/linux/wl12xx.h [deleted file]

index 377aedb..56764f7 100644 (file)
@@ -20665,7 +20665,6 @@ W:      https://wireless.wiki.kernel.org/en/users/Drivers/wl12xx
 W:     https://wireless.wiki.kernel.org/en/users/Drivers/wl1251
 T:     git git://git.kernel.org/pub/scm/linux/kernel/git/luca/wl12xx.git
 F:     drivers/net/wireless/ti/
-F:     include/linux/wl12xx.h
 
 TIMEKEEPING, CLOCKSOURCE CORE, NTP, ALARMTIMER
 M:     John Stultz <jstultz@google.com>
index 7c0b17a..3fcd9e3 100644 (file)
@@ -18,12 +18,4 @@ source "drivers/net/wireless/ti/wl18xx/Kconfig"
 # keep last for automatic dependencies
 source "drivers/net/wireless/ti/wlcore/Kconfig"
 
-config WILINK_PLATFORM_DATA
-       bool "TI WiLink platform data"
-       depends on WLCORE_SDIO || WL1251_SDIO
-       default y
-       help
-       Small platform data bit needed to pass data to the sdio modules.
-
-
 endif # WLAN_VENDOR_TI
diff --git a/drivers/net/wireless/ti/wilink_platform_data.c b/drivers/net/wireless/ti/wilink_platform_data.c
deleted file mode 100644 (file)
index 1de6a62..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-only
-/*
- * This file is part of wl12xx
- *
- * Copyright (C) 2010-2011 Texas Instruments, Inc.
- */
-
-#include <linux/module.h>
-#include <linux/err.h>
-#include <linux/wl12xx.h>
-
-static struct wl1251_platform_data *wl1251_platform_data;
-
-int __init wl1251_set_platform_data(const struct wl1251_platform_data *data)
-{
-       if (wl1251_platform_data)
-               return -EBUSY;
-       if (!data)
-               return -EINVAL;
-
-       wl1251_platform_data = kmemdup(data, sizeof(*data), GFP_KERNEL);
-       if (!wl1251_platform_data)
-               return -ENOMEM;
-
-       return 0;
-}
-
-struct wl1251_platform_data *wl1251_get_platform_data(void)
-{
-       if (!wl1251_platform_data)
-               return ERR_PTR(-ENODEV);
-
-       return wl1251_platform_data;
-}
-EXPORT_SYMBOL(wl1251_get_platform_data);
index c9a4e9a..301bd00 100644 (file)
@@ -12,7 +12,6 @@
 #include <linux/mmc/sdio_func.h>
 #include <linux/mmc/sdio_ids.h>
 #include <linux/platform_device.h>
-#include <linux/wl12xx.h>
 #include <linux/irq.h>
 #include <linux/pm_runtime.h>
 #include <linux/of.h>
@@ -197,7 +196,6 @@ static int wl1251_sdio_probe(struct sdio_func *func,
        struct wl1251 *wl;
        struct ieee80211_hw *hw;
        struct wl1251_sdio *wl_sdio;
-       const struct wl1251_platform_data *wl1251_board_data;
        struct device_node *np = func->dev.of_node;
 
        hw = wl1251_alloc_hw();
@@ -225,11 +223,7 @@ static int wl1251_sdio_probe(struct sdio_func *func,
        wl->if_priv = wl_sdio;
        wl->if_ops = &wl1251_sdio_ops;
 
-       wl1251_board_data = wl1251_get_platform_data();
-       if (!IS_ERR(wl1251_board_data)) {
-               wl->irq = wl1251_board_data->irq;
-               wl->use_eeprom = wl1251_board_data->use_eeprom;
-       } else if (np) {
+       if (np) {
                wl->use_eeprom = of_property_read_bool(np, "ti,wl1251-has-eeprom");
                wl->irq = of_irq_get(np, 0);
                if (wl->irq == -EPROBE_DEFER) {
index 9df3872..08d9814 100644 (file)
@@ -12,7 +12,6 @@
 #include <linux/swab.h>
 #include <linux/crc7.h>
 #include <linux/spi/spi.h>
-#include <linux/wl12xx.h>
 #include <linux/gpio.h>
 #include <linux/of.h>
 #include <linux/of_gpio.h>
@@ -226,16 +225,13 @@ static const struct wl1251_if_operations wl1251_spi_ops = {
 
 static int wl1251_spi_probe(struct spi_device *spi)
 {
-       struct wl1251_platform_data *pdata = dev_get_platdata(&spi->dev);
        struct device_node *np = spi->dev.of_node;
        struct ieee80211_hw *hw;
        struct wl1251 *wl;
        int ret;
 
-       if (!np && !pdata) {
-               wl1251_error("no platform data");
+       if (!np)
                return -ENODEV;
-       }
 
        hw = wl1251_alloc_hw();
        if (IS_ERR(hw))
@@ -259,14 +255,9 @@ static int wl1251_spi_probe(struct spi_device *spi)
                goto out_free;
        }
 
-       if (np) {
-               wl->use_eeprom = of_property_read_bool(np, "ti,wl1251-has-eeprom");
-               wl->power_gpio = of_get_named_gpio(np, "ti,power-gpio", 0);
-       } else if (pdata) {
-               wl->power_gpio = pdata->power_gpio;
-               wl->use_eeprom = pdata->use_eeprom;
-       }
+       wl->use_eeprom = of_property_read_bool(np, "ti,wl1251-has-eeprom");
 
+       wl->power_gpio = of_get_named_gpio(np, "ti,power-gpio", 0);
        if (wl->power_gpio == -EPROBE_DEFER) {
                ret = -EPROBE_DEFER;
                goto out_free;
index 7eae1ec..2d2eddd 100644 (file)
@@ -14,7 +14,6 @@
 #include <linux/swab.h>
 #include <linux/crc7.h>
 #include <linux/spi/spi.h>
-#include <linux/wl12xx.h>
 #include <linux/platform_device.h>
 #include <linux/of_irq.h>
 #include <linux/regulator/consumer.h>
diff --git a/include/linux/wl12xx.h b/include/linux/wl12xx.h
deleted file mode 100644 (file)
index 03d61f1..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0-only */
-/*
- * This file is part of wl12xx
- *
- * Copyright (C) 2009 Nokia Corporation
- *
- * Contact: Luciano Coelho <luciano.coelho@nokia.com>
- */
-
-#ifndef _LINUX_WL12XX_H
-#define _LINUX_WL12XX_H
-
-#include <linux/err.h>
-
-struct wl1251_platform_data {
-       int power_gpio;
-       /* SDIO only: IRQ number if WLAN_IRQ line is used, 0 for SDIO IRQs */
-       int irq;
-       bool use_eeprom;
-};
-
-#ifdef CONFIG_WILINK_PLATFORM_DATA
-
-int wl1251_set_platform_data(const struct wl1251_platform_data *data);
-
-struct wl1251_platform_data *wl1251_get_platform_data(void);
-
-#else
-
-static inline
-int wl1251_set_platform_data(const struct wl1251_platform_data *data)
-{
-       return -ENOSYS;
-}
-
-static inline
-struct wl1251_platform_data *wl1251_get_platform_data(void)
-{
-       return ERR_PTR(-ENODATA);
-}
-
-#endif
-
-#endif