From ae7471cae00a432d1c9692452b1b9175a8f3c1b3 Mon Sep 17 00:00:00 2001 From: Phillip Potter Date: Tue, 10 Aug 2021 08:45:04 +0100 Subject: [PATCH] staging: r8188eu: remove rtw_ioctl function Remove rtw_ioctl function from os_dep/ioctl_linux.c, its declaration in include/osdep_intf.h, and finally its inclusion as the value of the .ndo_do_ioctl member of struct net_device_ops rtw_netdev_ops in os_dep/os_intfs.c. The e-mail from Arnd Bergmann at: https://lore.kernel.org/linux-next/CAK8P3a0WRMNmBmBDerZ0nWPdFZKALnxrj-uUFBkTP-MOtv48vg@mail.gmail.com explains the justification for this approach. Essentially, changes from net-next make the existing function and its use of SIOCDEVPRIVATE ioctls unworkable without changes. Functions called from rtw_ioctl that are now no longer accessible will be cleaned up in further patches. Additionally, once these changes have made their way downstream to the staging branch, we can modify and reconnect rtw_android_priv_cmd via ndo_siocdevprivate in struct net_device_ops. Suggested-by: Arnd Bergmann Signed-off-by: Phillip Potter Link: https://lore.kernel.org/r/20210810074504.957-1-phil@philpotter.co.uk Signed-off-by: Greg Kroah-Hartman --- drivers/staging/r8188eu/include/osdep_intf.h | 2 -- drivers/staging/r8188eu/os_dep/ioctl_linux.c | 28 -------------------- drivers/staging/r8188eu/os_dep/os_intfs.c | 1 - 3 files changed, 31 deletions(-) diff --git a/drivers/staging/r8188eu/include/osdep_intf.h b/drivers/staging/r8188eu/include/osdep_intf.h index 1915c926faac..3ea60feee2db 100644 --- a/drivers/staging/r8188eu/include/osdep_intf.h +++ b/drivers/staging/r8188eu/include/osdep_intf.h @@ -48,8 +48,6 @@ u32 rtw_start_drv_threads(struct adapter *padapter); void rtw_stop_drv_threads (struct adapter *padapter); void rtw_cancel_all_timer(struct adapter *padapter); -int rtw_ioctl(struct net_device *dev, struct ifreq *rq, int cmd); - int rtw_init_netdev_name(struct net_device *pnetdev, const char *ifname); struct net_device *rtw_init_netdev(struct adapter *padapter); u16 rtw_recv_select_queue(struct sk_buff *skb); diff --git a/drivers/staging/r8188eu/os_dep/ioctl_linux.c b/drivers/staging/r8188eu/os_dep/ioctl_linux.c index a0ea9b43054b..4e21801cbfcf 100644 --- a/drivers/staging/r8188eu/os_dep/ioctl_linux.c +++ b/drivers/staging/r8188eu/os_dep/ioctl_linux.c @@ -8002,31 +8002,3 @@ exit: kfree(output); return err; } - -#include "../include/rtw_android.h" -int rtw_ioctl(struct net_device *dev, struct ifreq *rq, int cmd) -{ - struct iwreq *wrq = (struct iwreq *)rq; - int ret = 0; - - switch (cmd) { - case RTL_IOCTL_WPA_SUPPLICANT: - ret = wpa_supplicant_ioctl(dev, &wrq->u.data); - break; -#ifdef CONFIG_88EU_AP_MODE - case RTL_IOCTL_HOSTAPD: - ret = rtw_hostapd_ioctl(dev, &wrq->u.data); - break; -#endif /* CONFIG_88EU_AP_MODE */ - case SIOCDEVPRIVATE: - ret = rtw_ioctl_wext_private(dev, &wrq->u); - break; - case (SIOCDEVPRIVATE+1): - ret = rtw_android_priv_cmd(dev, rq, cmd); - break; - default: - ret = -EOPNOTSUPP; - break; - } - return ret; -} diff --git a/drivers/staging/r8188eu/os_dep/os_intfs.c b/drivers/staging/r8188eu/os_dep/os_intfs.c index 7c76c15809e4..38d3283dbac3 100644 --- a/drivers/staging/r8188eu/os_dep/os_intfs.c +++ b/drivers/staging/r8188eu/os_dep/os_intfs.c @@ -692,7 +692,6 @@ static const struct net_device_ops rtw_netdev_ops = { .ndo_select_queue = rtw_select_queue, .ndo_set_mac_address = rtw_net_set_mac_address, .ndo_get_stats = rtw_net_get_stats, - .ndo_do_ioctl = rtw_ioctl, }; int rtw_init_netdev_name(struct net_device *pnetdev, const char *ifname)