diff mbox series

wilc1000: move wilc driver out of staging

Message ID 20200625123712.14156-1-ajay.kathat@microchip.com (mailing list archive)
State Accepted
Delegated to: Kalle Valo
Headers show
Series wilc1000: move wilc driver out of staging | expand

Commit Message

Ajay Singh June 25, 2020, 12:37 p.m. UTC
From: Ajay Singh <ajay.kathat@microchip.com>

WILC1000 is an IEEE 802.11 b/g/n IoT link controller module. The
WILC1000 connects to Microchip AVR/SMART MCUs, SMART MPUs, and other
processors with minimal resource requirements with a simple
SPI/SDIO-to-Wi-Fi interface.

WILC1000 driver has been part of staging for few years. With
contributions from the community, it has improved significantly. Full
driver review has helped in achieving the current state.
The details for those reviews are captured in 1 & 2.

[1]. https://lore.kernel.org/linux-wireless/1537957525-11467-1-git-send-email-ajay.kathat@microchip.com/
[2]. https://lore.kernel.org/linux-wireless/1562896697-8002-1-git-send-email-ajay.kathat@microchip.com/

Signed-off-by: Ajay Singh <ajay.kathat@microchip.com>
---

As suggested, keeping all the changes in single commit with file rename
so it's easy to move out of staging [3].

Please choose whichever option you prefer between the git mv or patch series
sent last Tuesday. The resulting driver is the same as no patch has been
queued in between.

[3]. https://lore.kernel.org/linux-wireless/20200623110000.31559-1-ajay.kathat@microchip.com/

 .../net/wireless}/microchip,wilc1000.yaml         |  0
 MAINTAINERS                                       | 14 +++++++-------
 drivers/net/wireless/Kconfig                      |  1 +
 drivers/net/wireless/Makefile                     |  1 +
 drivers/net/wireless/microchip/Kconfig            | 15 +++++++++++++++
 drivers/net/wireless/microchip/Makefile           |  2 ++
 .../wireless/microchip}/wilc1000/Kconfig          |  0
 .../wireless/microchip}/wilc1000/Makefile         |  0
 .../wireless/microchip}/wilc1000/cfg80211.c       |  0
 .../wireless/microchip}/wilc1000/cfg80211.h       |  0
 .../wireless/microchip}/wilc1000/fw.h             |  0
 .../wireless/microchip}/wilc1000/hif.c            |  0
 .../wireless/microchip}/wilc1000/hif.h            |  0
 .../wireless/microchip}/wilc1000/mon.c            |  0
 .../wireless/microchip}/wilc1000/netdev.c         |  0
 .../wireless/microchip}/wilc1000/netdev.h         |  0
 .../wireless/microchip}/wilc1000/sdio.c           |  0
 .../wireless/microchip}/wilc1000/spi.c            |  0
 .../wireless/microchip}/wilc1000/wlan.c           |  0
 .../wireless/microchip}/wilc1000/wlan.h           |  0
 .../wireless/microchip}/wilc1000/wlan_cfg.c       |  0
 .../wireless/microchip}/wilc1000/wlan_cfg.h       |  0
 .../wireless/microchip}/wilc1000/wlan_if.h        |  0
 drivers/staging/Kconfig                           |  2 --
 drivers/staging/Makefile                          |  1 -
 25 files changed, 26 insertions(+), 10 deletions(-)
 rename {drivers/staging/wilc1000 => Documentation/devicetree/bindings/net/wireless}/microchip,wilc1000.yaml (100%)
 create mode 100644 drivers/net/wireless/microchip/Kconfig
 create mode 100644 drivers/net/wireless/microchip/Makefile
 rename drivers/{staging => net/wireless/microchip}/wilc1000/Kconfig (100%)
 rename drivers/{staging => net/wireless/microchip}/wilc1000/Makefile (100%)
 rename drivers/{staging => net/wireless/microchip}/wilc1000/cfg80211.c (100%)
 rename drivers/{staging => net/wireless/microchip}/wilc1000/cfg80211.h (100%)
 rename drivers/{staging => net/wireless/microchip}/wilc1000/fw.h (100%)
 rename drivers/{staging => net/wireless/microchip}/wilc1000/hif.c (100%)
 rename drivers/{staging => net/wireless/microchip}/wilc1000/hif.h (100%)
 rename drivers/{staging => net/wireless/microchip}/wilc1000/mon.c (100%)
 rename drivers/{staging => net/wireless/microchip}/wilc1000/netdev.c (100%)
 rename drivers/{staging => net/wireless/microchip}/wilc1000/netdev.h (100%)
 rename drivers/{staging => net/wireless/microchip}/wilc1000/sdio.c (100%)
 rename drivers/{staging => net/wireless/microchip}/wilc1000/spi.c (100%)
 rename drivers/{staging => net/wireless/microchip}/wilc1000/wlan.c (100%)
 rename drivers/{staging => net/wireless/microchip}/wilc1000/wlan.h (100%)
 rename drivers/{staging => net/wireless/microchip}/wilc1000/wlan_cfg.c (100%)
 rename drivers/{staging => net/wireless/microchip}/wilc1000/wlan_cfg.h (100%)
 rename drivers/{staging => net/wireless/microchip}/wilc1000/wlan_if.h (100%)

Comments

kernel test robot June 26, 2020, 5:36 a.m. UTC | #1
Hi,

I love your patch! Perhaps something to improve:

[auto build test WARNING on staging/staging-testing]
[also build test WARNING on wireless-drivers-next/master wireless-drivers/master v5.8-rc2 next-20200625]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use  as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/Ajay-Kathat-microchip-com/wilc1000-move-wilc-driver-out-of-staging/20200625-203957
base:   https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging.git 9bea6eb3f59cb2fad8b46d91c666a17d0aa53456
config: ia64-randconfig-r013-20200624 (attached as .config)
compiler: ia64-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=ia64 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All warnings (new ones prefixed by >>):

   drivers/net/wireless/microchip/wilc1000/mon.c: In function 'wilc_wfi_init_mon_interface':
>> drivers/net/wireless/microchip/wilc1000/mon.c:232:2: warning: 'strncpy' specified bound 16 equals destination size [-Wstringop-truncation]
     232 |  strncpy(wl->monitor_dev->name, name, IFNAMSIZ);
         |  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

vim +/strncpy +232 drivers/net/wireless/microchip/wilc1000/mon.c

c5c77ba18ea66a drivers/staging/wilc1000/linux_mon.c Johnny Kim  2015-05-11  216  
588713006ea49d drivers/staging/wilc1000/linux_mon.c Ajay Singh  2019-02-02  217  struct net_device *wilc_wfi_init_mon_interface(struct wilc *wl,
588713006ea49d drivers/staging/wilc1000/linux_mon.c Ajay Singh  2019-02-02  218  					       const char *name,
1b7c69e84bcea7 drivers/staging/wilc1000/linux_mon.c Anchal Jain 2016-03-14  219  					       struct net_device *real_dev)
c5c77ba18ea66a drivers/staging/wilc1000/linux_mon.c Johnny Kim  2015-05-11  220  {
73d359a08b76da drivers/staging/wilc1000/linux_mon.c Ajay Singh  2018-05-02  221  	struct wilc_wfi_mon_priv *priv;
c5c77ba18ea66a drivers/staging/wilc1000/linux_mon.c Johnny Kim  2015-05-11  222  
c5c77ba18ea66a drivers/staging/wilc1000/linux_mon.c Johnny Kim  2015-05-11  223  	/* If monitor interface is already initialized, return it */
588713006ea49d drivers/staging/wilc1000/linux_mon.c Ajay Singh  2019-02-02  224  	if (wl->monitor_dev)
588713006ea49d drivers/staging/wilc1000/linux_mon.c Ajay Singh  2019-02-02  225  		return wl->monitor_dev;
c5c77ba18ea66a drivers/staging/wilc1000/linux_mon.c Johnny Kim  2015-05-11  226  
588713006ea49d drivers/staging/wilc1000/linux_mon.c Ajay Singh  2019-02-02  227  	wl->monitor_dev = alloc_etherdev(sizeof(struct wilc_wfi_mon_priv));
588713006ea49d drivers/staging/wilc1000/linux_mon.c Ajay Singh  2019-02-02  228  	if (!wl->monitor_dev)
c5c77ba18ea66a drivers/staging/wilc1000/linux_mon.c Johnny Kim  2015-05-11  229  		return NULL;
c5c77ba18ea66a drivers/staging/wilc1000/linux_mon.c Johnny Kim  2015-05-11  230  
588713006ea49d drivers/staging/wilc1000/linux_mon.c Ajay Singh  2019-02-02  231  	wl->monitor_dev->type = ARPHRD_IEEE80211_RADIOTAP;
588713006ea49d drivers/staging/wilc1000/linux_mon.c Ajay Singh  2019-02-02 @232  	strncpy(wl->monitor_dev->name, name, IFNAMSIZ);
588713006ea49d drivers/staging/wilc1000/linux_mon.c Ajay Singh  2019-02-02  233  	wl->monitor_dev->name[IFNAMSIZ - 1] = 0;
588713006ea49d drivers/staging/wilc1000/linux_mon.c Ajay Singh  2019-02-02  234  	wl->monitor_dev->netdev_ops = &wilc_wfi_netdev_ops;
9bc061e8805487 drivers/staging/wilc1000/wilc_mon.c  Ajay Singh  2019-06-26  235  	wl->monitor_dev->needs_free_netdev = true;
588713006ea49d drivers/staging/wilc1000/linux_mon.c Ajay Singh  2019-02-02  236  
588713006ea49d drivers/staging/wilc1000/linux_mon.c Ajay Singh  2019-02-02  237  	if (register_netdevice(wl->monitor_dev)) {
d892c97c889a77 drivers/staging/wilc1000/linux_mon.c Leo Kim     2016-02-22  238  		netdev_err(real_dev, "register_netdevice failed\n");
c5c77ba18ea66a drivers/staging/wilc1000/linux_mon.c Johnny Kim  2015-05-11  239  		return NULL;
c5c77ba18ea66a drivers/staging/wilc1000/linux_mon.c Johnny Kim  2015-05-11  240  	}
588713006ea49d drivers/staging/wilc1000/linux_mon.c Ajay Singh  2019-02-02  241  	priv = netdev_priv(wl->monitor_dev);
60959e53f83988 drivers/staging/wilc1000/linux_mon.c Leo Kim     2016-02-22  242  	if (!priv)
c5c77ba18ea66a drivers/staging/wilc1000/linux_mon.c Johnny Kim  2015-05-11  243  		return NULL;
c5c77ba18ea66a drivers/staging/wilc1000/linux_mon.c Johnny Kim  2015-05-11  244  
c5c77ba18ea66a drivers/staging/wilc1000/linux_mon.c Johnny Kim  2015-05-11  245  	priv->real_ndev = real_dev;
c5c77ba18ea66a drivers/staging/wilc1000/linux_mon.c Johnny Kim  2015-05-11  246  
588713006ea49d drivers/staging/wilc1000/linux_mon.c Ajay Singh  2019-02-02  247  	return wl->monitor_dev;
c5c77ba18ea66a drivers/staging/wilc1000/linux_mon.c Johnny Kim  2015-05-11  248  }
c5c77ba18ea66a drivers/staging/wilc1000/linux_mon.c Johnny Kim  2015-05-11  249  

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
Kalle Valo June 26, 2020, 5:51 a.m. UTC | #2
<Ajay.Kathat@microchip.com> writes:

> From: Ajay Singh <ajay.kathat@microchip.com>
>
> WILC1000 is an IEEE 802.11 b/g/n IoT link controller module. The
> WILC1000 connects to Microchip AVR/SMART MCUs, SMART MPUs, and other
> processors with minimal resource requirements with a simple
> SPI/SDIO-to-Wi-Fi interface.
>
> WILC1000 driver has been part of staging for few years. With
> contributions from the community, it has improved significantly. Full
> driver review has helped in achieving the current state.
> The details for those reviews are captured in 1 & 2.
>
> [1]. https://lore.kernel.org/linux-wireless/1537957525-11467-1-git-send-email-ajay.kathat@microchip.com/
> [2]. https://lore.kernel.org/linux-wireless/1562896697-8002-1-git-send-email-ajay.kathat@microchip.com/
>
> Signed-off-by: Ajay Singh <ajay.kathat@microchip.com>

[...]

> --- a/drivers/net/wireless/Kconfig
> +++ b/drivers/net/wireless/Kconfig
> @@ -47,6 +47,7 @@ source "drivers/net/wireless/st/Kconfig"
>  source "drivers/net/wireless/ti/Kconfig"
>  source "drivers/net/wireless/zydas/Kconfig"
>  source "drivers/net/wireless/quantenna/Kconfig"
> +source "drivers/net/wireless/microchip/Kconfig"

This should be in alphabetical order.

> --- a/drivers/net/wireless/Makefile
> +++ b/drivers/net/wireless/Makefile
> @@ -19,6 +19,7 @@ obj-$(CONFIG_WLAN_VENDOR_ST) += st/
>  obj-$(CONFIG_WLAN_VENDOR_TI) += ti/
>  obj-$(CONFIG_WLAN_VENDOR_ZYDAS) += zydas/
>  obj-$(CONFIG_WLAN_VENDOR_QUANTENNA) += quantenna/
> +obj-$(CONFIG_WLAN_VENDOR_MICROCHIP) += microchip/

And this as well.

I fixed these in the topic branch, please double check:

https://git.kernel.org/pub/scm/linux/kernel/git/kvalo/wireless-drivers-next.git/commit/?h=wilc1000-move-out-of-staging&id=5625f965d7644b4dc6a71d74021cfe093ad34eea

I have not pulled that branch yet into master so we can make changes
still.
Ajay Singh June 26, 2020, 6:46 a.m. UTC | #3
On 26/06/20 11:21 am, Kalle Valo wrote:
> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
> 
> <Ajay.Kathat@microchip.com> writes:
> 
>> From: Ajay Singh <ajay.kathat@microchip.com>
>>
>> WILC1000 is an IEEE 802.11 b/g/n IoT link controller module. The
>> WILC1000 connects to Microchip AVR/SMART MCUs, SMART MPUs, and other
>> processors with minimal resource requirements with a simple
>> SPI/SDIO-to-Wi-Fi interface.
>>
>> WILC1000 driver has been part of staging for few years. With
>> contributions from the community, it has improved significantly. Full
>> driver review has helped in achieving the current state.
>> The details for those reviews are captured in 1 & 2.
>>
>> [1]. https://lore.kernel.org/linux-wireless/1537957525-11467-1-git-send-email-ajay.kathat@microchip.com/
>> [2]. https://lore.kernel.org/linux-wireless/1562896697-8002-1-git-send-email-ajay.kathat@microchip.com/
>>
>> Signed-off-by: Ajay Singh <ajay.kathat@microchip.com>
> 
> [...]
> 
>> --- a/drivers/net/wireless/Kconfig
>> +++ b/drivers/net/wireless/Kconfig
>> @@ -47,6 +47,7 @@ source "drivers/net/wireless/st/Kconfig"
>>  source "drivers/net/wireless/ti/Kconfig"
>>  source "drivers/net/wireless/zydas/Kconfig"
>>  source "drivers/net/wireless/quantenna/Kconfig"
>> +source "drivers/net/wireless/microchip/Kconfig"
> 
> This should be in alphabetical order.
> 
>> --- a/drivers/net/wireless/Makefile
>> +++ b/drivers/net/wireless/Makefile
>> @@ -19,6 +19,7 @@ obj-$(CONFIG_WLAN_VENDOR_ST) += st/
>>  obj-$(CONFIG_WLAN_VENDOR_TI) += ti/
>>  obj-$(CONFIG_WLAN_VENDOR_ZYDAS) += zydas/
>>  obj-$(CONFIG_WLAN_VENDOR_QUANTENNA) += quantenna/
>> +obj-$(CONFIG_WLAN_VENDOR_MICROCHIP) += microchip/
> 
> And this as well.
> 
> I fixed these in the topic branch, please double check:


Thanks Kalle.
I just checked the patch and it looks good.

Regards,
Ajay


> 
> https://git.kernel.org/pub/scm/linux/kernel/git/kvalo/wireless-drivers-next.git/commit/?h=wilc1000-move-out-of-staging&id=5625f965d7644b4dc6a71d74021cfe093ad34eea
> 
> I have not pulled that branch yet into master so we can make changes
> still.>
> --
> https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches
>
Kalle Valo July 2, 2020, 7 a.m. UTC | #4
<Ajay.Kathat@microchip.com> writes:

> From: Ajay Singh <ajay.kathat@microchip.com>
>
> WILC1000 is an IEEE 802.11 b/g/n IoT link controller module. The
> WILC1000 connects to Microchip AVR/SMART MCUs, SMART MPUs, and other
> processors with minimal resource requirements with a simple
> SPI/SDIO-to-Wi-Fi interface.
>
> WILC1000 driver has been part of staging for few years. With
> contributions from the community, it has improved significantly. Full
> driver review has helped in achieving the current state.
> The details for those reviews are captured in 1 & 2.
>
> [1]. https://lore.kernel.org/linux-wireless/1537957525-11467-1-git-send-email-ajay.kathat@microchip.com/
> [2]. https://lore.kernel.org/linux-wireless/1562896697-8002-1-git-send-email-ajay.kathat@microchip.com/
>
> Signed-off-by: Ajay Singh <ajay.kathat@microchip.com>
> ---
>
> As suggested, keeping all the changes in single commit with file rename
> so it's easy to move out of staging [3].
>
> Please choose whichever option you prefer between the git mv or patch series
> sent last Tuesday. The resulting driver is the same as no patch has been
> queued in between.
>
> [3]. https://lore.kernel.org/linux-wireless/20200623110000.31559-1-ajay.kathat@microchip.com/

As discussed with Greg I created an immutable branch for this and merged
the branch to wireless-drivers-next:

5625f965d764 wilc1000: move wilc driver out of staging

Greg, here's the location of the immutable branch:

git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/wireless-drivers-next.git wilc1000-move-out-of-staging
Greg Kroah-Hartman July 2, 2020, 7:15 a.m. UTC | #5
On Thu, Jul 02, 2020 at 10:00:40AM +0300, Kalle Valo wrote:
> <Ajay.Kathat@microchip.com> writes:
> 
> > From: Ajay Singh <ajay.kathat@microchip.com>
> >
> > WILC1000 is an IEEE 802.11 b/g/n IoT link controller module. The
> > WILC1000 connects to Microchip AVR/SMART MCUs, SMART MPUs, and other
> > processors with minimal resource requirements with a simple
> > SPI/SDIO-to-Wi-Fi interface.
> >
> > WILC1000 driver has been part of staging for few years. With
> > contributions from the community, it has improved significantly. Full
> > driver review has helped in achieving the current state.
> > The details for those reviews are captured in 1 & 2.
> >
> > [1]. https://lore.kernel.org/linux-wireless/1537957525-11467-1-git-send-email-ajay.kathat@microchip.com/
> > [2]. https://lore.kernel.org/linux-wireless/1562896697-8002-1-git-send-email-ajay.kathat@microchip.com/
> >
> > Signed-off-by: Ajay Singh <ajay.kathat@microchip.com>
> > ---
> >
> > As suggested, keeping all the changes in single commit with file rename
> > so it's easy to move out of staging [3].
> >
> > Please choose whichever option you prefer between the git mv or patch series
> > sent last Tuesday. The resulting driver is the same as no patch has been
> > queued in between.
> >
> > [3]. https://lore.kernel.org/linux-wireless/20200623110000.31559-1-ajay.kathat@microchip.com/
> 
> As discussed with Greg I created an immutable branch for this and merged
> the branch to wireless-drivers-next:
> 
> 5625f965d764 wilc1000: move wilc driver out of staging
> 
> Greg, here's the location of the immutable branch:
> 
> git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/wireless-drivers-next.git wilc1000-move-out-of-staging

Looks good, I've pulled it into my staging tree as well, but there's
still a TODO file left in drivers/staging/wilc1000, right?

I'll just add a patch to my tree to remove that last file.

thanks,

greg k-h
Ajay Singh July 2, 2020, 7:24 a.m. UTC | #6
On 02/07/20 12:45 pm, Greg KH wrote:
> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
> 
> On Thu, Jul 02, 2020 at 10:00:40AM +0300, Kalle Valo wrote:
>> <Ajay.Kathat@microchip.com> writes:
>>
>>> From: Ajay Singh <ajay.kathat@microchip.com>
>>>
>>> WILC1000 is an IEEE 802.11 b/g/n IoT link controller module. The
>>> WILC1000 connects to Microchip AVR/SMART MCUs, SMART MPUs, and other
>>> processors with minimal resource requirements with a simple
>>> SPI/SDIO-to-Wi-Fi interface.
>>>
>>> WILC1000 driver has been part of staging for few years. With
>>> contributions from the community, it has improved significantly. Full
>>> driver review has helped in achieving the current state.
>>> The details for those reviews are captured in 1 & 2.
>>>
>>> [1]. https://lore.kernel.org/linux-wireless/1537957525-11467-1-git-send-email-ajay.kathat@microchip.com/
>>> [2]. https://lore.kernel.org/linux-wireless/1562896697-8002-1-git-send-email-ajay.kathat@microchip.com/
>>>
>>> Signed-off-by: Ajay Singh <ajay.kathat@microchip.com>
>>> ---
>>>
>>> As suggested, keeping all the changes in single commit with file rename
>>> so it's easy to move out of staging [3].
>>>
>>> Please choose whichever option you prefer between the git mv or patch series
>>> sent last Tuesday. The resulting driver is the same as no patch has been
>>> queued in between.
>>>
>>> [3]. https://lore.kernel.org/linux-wireless/20200623110000.31559-1-ajay.kathat@microchip.com/
>>
>> As discussed with Greg I created an immutable branch for this and merged
>> the branch to wireless-drivers-next:
>>
>> 5625f965d764 wilc1000: move wilc driver out of staging
>>
>> Greg, here's the location of the immutable branch:
>>
>> git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/wireless-drivers-next.git wilc1000-move-out-of-staging
> 
> Looks good, I've pulled it into my staging tree as well, but there's
> still a TODO file left in drivers/staging/wilc1000, right?
> 
> I'll just add a patch to my tree to remove that last file.
> 

Yes, TODO file needs to be removed after the driver movement.
Thanks Greg for all your support to move driver out of staging.

Regards,
Ajay
Greg Kroah-Hartman July 2, 2020, 7:30 a.m. UTC | #7
On Thu, Jul 02, 2020 at 07:24:34AM +0000, Ajay.Kathat@microchip.com wrote:
> 
> 
> On 02/07/20 12:45 pm, Greg KH wrote:
> > EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
> > 
> > On Thu, Jul 02, 2020 at 10:00:40AM +0300, Kalle Valo wrote:
> >> <Ajay.Kathat@microchip.com> writes:
> >>
> >>> From: Ajay Singh <ajay.kathat@microchip.com>
> >>>
> >>> WILC1000 is an IEEE 802.11 b/g/n IoT link controller module. The
> >>> WILC1000 connects to Microchip AVR/SMART MCUs, SMART MPUs, and other
> >>> processors with minimal resource requirements with a simple
> >>> SPI/SDIO-to-Wi-Fi interface.
> >>>
> >>> WILC1000 driver has been part of staging for few years. With
> >>> contributions from the community, it has improved significantly. Full
> >>> driver review has helped in achieving the current state.
> >>> The details for those reviews are captured in 1 & 2.
> >>>
> >>> [1]. https://lore.kernel.org/linux-wireless/1537957525-11467-1-git-send-email-ajay.kathat@microchip.com/
> >>> [2]. https://lore.kernel.org/linux-wireless/1562896697-8002-1-git-send-email-ajay.kathat@microchip.com/
> >>>
> >>> Signed-off-by: Ajay Singh <ajay.kathat@microchip.com>
> >>> ---
> >>>
> >>> As suggested, keeping all the changes in single commit with file rename
> >>> so it's easy to move out of staging [3].
> >>>
> >>> Please choose whichever option you prefer between the git mv or patch series
> >>> sent last Tuesday. The resulting driver is the same as no patch has been
> >>> queued in between.
> >>>
> >>> [3]. https://lore.kernel.org/linux-wireless/20200623110000.31559-1-ajay.kathat@microchip.com/
> >>
> >> As discussed with Greg I created an immutable branch for this and merged
> >> the branch to wireless-drivers-next:
> >>
> >> 5625f965d764 wilc1000: move wilc driver out of staging
> >>
> >> Greg, here's the location of the immutable branch:
> >>
> >> git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/wireless-drivers-next.git wilc1000-move-out-of-staging
> > 
> > Looks good, I've pulled it into my staging tree as well, but there's
> > still a TODO file left in drivers/staging/wilc1000, right?
> > 
> > I'll just add a patch to my tree to remove that last file.
> > 
> 
> Yes, TODO file needs to be removed after the driver movement.

Now gone from my tree.

> Thanks Greg for all your support to move driver out of staging.

Glad to see it move out, thanks to you all for all of your work!

greg k-h
Ajay Singh July 2, 2020, 7:30 a.m. UTC | #8
On 02/07/20 12:30 pm, Kalle Valo wrote:
> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
> 
> <Ajay.Kathat@microchip.com> writes:
> 
>> From: Ajay Singh <ajay.kathat@microchip.com>
>>
>> WILC1000 is an IEEE 802.11 b/g/n IoT link controller module. The
>> WILC1000 connects to Microchip AVR/SMART MCUs, SMART MPUs, and other
>> processors with minimal resource requirements with a simple
>> SPI/SDIO-to-Wi-Fi interface.
>>
>> WILC1000 driver has been part of staging for few years. With
>> contributions from the community, it has improved significantly. Full
>> driver review has helped in achieving the current state.
>> The details for those reviews are captured in 1 & 2.
>>
>> [1]. https://lore.kernel.org/linux-wireless/1537957525-11467-1-git-send-email-ajay.kathat@microchip.com/
>> [2]. https://lore.kernel.org/linux-wireless/1562896697-8002-1-git-send-email-ajay.kathat@microchip.com/
>>
>> Signed-off-by: Ajay Singh <ajay.kathat@microchip.com>
>> ---
>>
>> As suggested, keeping all the changes in single commit with file rename
>> so it's easy to move out of staging [3].
>>
>> Please choose whichever option you prefer between the git mv or patch series
>> sent last Tuesday. The resulting driver is the same as no patch has been
>> queued in between.
>>
>> [3]. https://lore.kernel.org/linux-wireless/20200623110000.31559-1-ajay.kathat@microchip.com/
> 
> As discussed with Greg I created an immutable branch for this and merged
> the branch to wireless-drivers-next:

Thanks Kalle.


If my understanding is correct, we have to use 'wireless-driver-next'
master branch to submit new patches for wilc1000. right?

> 
> 5625f965d764 wilc1000: move wilc driver out of staging
> 
> Greg, here's the location of the immutable branch:
> 
> git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/wireless-drivers-next.git wilc1000-move-out-of-staging
> 
> --
> https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches
>
Kalle Valo July 2, 2020, 8:43 a.m. UTC | #9
<Ajay.Kathat@microchip.com> writes:

> On 02/07/20 12:30 pm, Kalle Valo wrote:
>> EXTERNAL EMAIL: Do not click links or open attachments unless you
>> know the content is safe
>> 
>> <Ajay.Kathat@microchip.com> writes:
>> 
>>> From: Ajay Singh <ajay.kathat@microchip.com>
>>>
>>> WILC1000 is an IEEE 802.11 b/g/n IoT link controller module. The
>>> WILC1000 connects to Microchip AVR/SMART MCUs, SMART MPUs, and other
>>> processors with minimal resource requirements with a simple
>>> SPI/SDIO-to-Wi-Fi interface.
>>>
>>> WILC1000 driver has been part of staging for few years. With
>>> contributions from the community, it has improved significantly. Full
>>> driver review has helped in achieving the current state.
>>> The details for those reviews are captured in 1 & 2.
>>>
>>> [1].
>>> https://lore.kernel.org/linux-wireless/1537957525-11467-1-git-send-email-ajay.kathat@microchip.com/
>>> [2].
>>> https://lore.kernel.org/linux-wireless/1562896697-8002-1-git-send-email-ajay.kathat@microchip.com/
>>>
>>> Signed-off-by: Ajay Singh <ajay.kathat@microchip.com>
>>> ---
>>>
>>> As suggested, keeping all the changes in single commit with file rename
>>> so it's easy to move out of staging [3].
>>>
>>> Please choose whichever option you prefer between the git mv or patch series
>>> sent last Tuesday. The resulting driver is the same as no patch has been
>>> queued in between.
>>>
>>> [3].
>>> https://lore.kernel.org/linux-wireless/20200623110000.31559-1-ajay.kathat@microchip.com/
>> 
>> As discussed with Greg I created an immutable branch for this and merged
>> the branch to wireless-drivers-next:
>
> Thanks Kalle.
>
> If my understanding is correct, we have to use 'wireless-driver-next'
> master branch to submit new patches for wilc1000. right?

Correct. And I also suggest to get familiar with the linux-wireless
patchwork to follow patch status, more info in the link below.
diff mbox series

Patch

diff --git a/drivers/staging/wilc1000/microchip,wilc1000.yaml b/Documentation/devicetree/bindings/net/wireless/microchip,wilc1000.yaml
similarity index 100%
rename from drivers/staging/wilc1000/microchip,wilc1000.yaml
rename to Documentation/devicetree/bindings/net/wireless/microchip,wilc1000.yaml
diff --git a/MAINTAINERS b/MAINTAINERS
index 68f21d46614c..7dae51e32254 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -11362,6 +11362,13 @@  L:	linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 S:	Supported
 F:	drivers/usb/gadget/udc/atmel_usba_udc.*
 
+MICROCHIP WILC1000 WIFI DRIVER
+M:	Adham Abozaeid <adham.abozaeid@microchip.com>
+M:	Ajay Singh <ajay.kathat@microchip.com>
+L:	linux-wireless@vger.kernel.org
+S:	Supported
+F:	drivers/net/wireless/microchip/wilc1000/
+
 MICROCHIP XDMA DRIVER
 M:	Ludovic Desroches <ludovic.desroches@microchip.com>
 L:	linux-arm-kernel@lists.infradead.org
@@ -16251,13 +16258,6 @@  M:	Forest Bond <forest@alittletooquiet.net>
 S:	Odd Fixes
 F:	drivers/staging/vt665?/
 
-STAGING - WILC1000 WIFI DRIVER
-M:	Adham Abozaeid <adham.abozaeid@microchip.com>
-M:	Ajay Singh <ajay.kathat@microchip.com>
-L:	linux-wireless@vger.kernel.org
-S:	Supported
-F:	drivers/staging/wilc1000/
-
 STAGING SUBSYSTEM
 M:	Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 L:	devel@driverdev.osuosl.org
diff --git a/drivers/net/wireless/Kconfig b/drivers/net/wireless/Kconfig
index 8ab62bb6b853..be0de242d8fd 100644
--- a/drivers/net/wireless/Kconfig
+++ b/drivers/net/wireless/Kconfig
@@ -47,6 +47,7 @@  source "drivers/net/wireless/st/Kconfig"
 source "drivers/net/wireless/ti/Kconfig"
 source "drivers/net/wireless/zydas/Kconfig"
 source "drivers/net/wireless/quantenna/Kconfig"
+source "drivers/net/wireless/microchip/Kconfig"
 
 config PCMCIA_RAYCS
 	tristate "Aviator/Raytheon 2.4GHz wireless support"
diff --git a/drivers/net/wireless/Makefile b/drivers/net/wireless/Makefile
index 6cfe74515c95..f9a51c2889ca 100644
--- a/drivers/net/wireless/Makefile
+++ b/drivers/net/wireless/Makefile
@@ -19,6 +19,7 @@  obj-$(CONFIG_WLAN_VENDOR_ST) += st/
 obj-$(CONFIG_WLAN_VENDOR_TI) += ti/
 obj-$(CONFIG_WLAN_VENDOR_ZYDAS) += zydas/
 obj-$(CONFIG_WLAN_VENDOR_QUANTENNA) += quantenna/
+obj-$(CONFIG_WLAN_VENDOR_MICROCHIP) += microchip/
 
 # 16-bit wireless PCMCIA client drivers
 obj-$(CONFIG_PCMCIA_RAYCS)	+= ray_cs.o
diff --git a/drivers/net/wireless/microchip/Kconfig b/drivers/net/wireless/microchip/Kconfig
new file mode 100644
index 000000000000..a6b46fb6b1ec
--- /dev/null
+++ b/drivers/net/wireless/microchip/Kconfig
@@ -0,0 +1,15 @@ 
+# SPDX-License-Identifier: GPL-2.0
+config WLAN_VENDOR_MICROCHIP
+	bool "Microchip 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_MICROCHIP
+source "drivers/net/wireless/microchip/wilc1000/Kconfig"
+endif # WLAN_VENDOR_MICROCHIP
diff --git a/drivers/net/wireless/microchip/Makefile b/drivers/net/wireless/microchip/Makefile
new file mode 100644
index 000000000000..73b763c7393e
--- /dev/null
+++ b/drivers/net/wireless/microchip/Makefile
@@ -0,0 +1,2 @@ 
+# SPDX-License-Identifier: GPL-2.0
+obj-$(CONFIG_WILC1000)		+= wilc1000/
diff --git a/drivers/staging/wilc1000/Kconfig b/drivers/net/wireless/microchip/wilc1000/Kconfig
similarity index 100%
rename from drivers/staging/wilc1000/Kconfig
rename to drivers/net/wireless/microchip/wilc1000/Kconfig
diff --git a/drivers/staging/wilc1000/Makefile b/drivers/net/wireless/microchip/wilc1000/Makefile
similarity index 100%
rename from drivers/staging/wilc1000/Makefile
rename to drivers/net/wireless/microchip/wilc1000/Makefile
diff --git a/drivers/staging/wilc1000/cfg80211.c b/drivers/net/wireless/microchip/wilc1000/cfg80211.c
similarity index 100%
rename from drivers/staging/wilc1000/cfg80211.c
rename to drivers/net/wireless/microchip/wilc1000/cfg80211.c
diff --git a/drivers/staging/wilc1000/cfg80211.h b/drivers/net/wireless/microchip/wilc1000/cfg80211.h
similarity index 100%
rename from drivers/staging/wilc1000/cfg80211.h
rename to drivers/net/wireless/microchip/wilc1000/cfg80211.h
diff --git a/drivers/staging/wilc1000/fw.h b/drivers/net/wireless/microchip/wilc1000/fw.h
similarity index 100%
rename from drivers/staging/wilc1000/fw.h
rename to drivers/net/wireless/microchip/wilc1000/fw.h
diff --git a/drivers/staging/wilc1000/hif.c b/drivers/net/wireless/microchip/wilc1000/hif.c
similarity index 100%
rename from drivers/staging/wilc1000/hif.c
rename to drivers/net/wireless/microchip/wilc1000/hif.c
diff --git a/drivers/staging/wilc1000/hif.h b/drivers/net/wireless/microchip/wilc1000/hif.h
similarity index 100%
rename from drivers/staging/wilc1000/hif.h
rename to drivers/net/wireless/microchip/wilc1000/hif.h
diff --git a/drivers/staging/wilc1000/mon.c b/drivers/net/wireless/microchip/wilc1000/mon.c
similarity index 100%
rename from drivers/staging/wilc1000/mon.c
rename to drivers/net/wireless/microchip/wilc1000/mon.c
diff --git a/drivers/staging/wilc1000/netdev.c b/drivers/net/wireless/microchip/wilc1000/netdev.c
similarity index 100%
rename from drivers/staging/wilc1000/netdev.c
rename to drivers/net/wireless/microchip/wilc1000/netdev.c
diff --git a/drivers/staging/wilc1000/netdev.h b/drivers/net/wireless/microchip/wilc1000/netdev.h
similarity index 100%
rename from drivers/staging/wilc1000/netdev.h
rename to drivers/net/wireless/microchip/wilc1000/netdev.h
diff --git a/drivers/staging/wilc1000/sdio.c b/drivers/net/wireless/microchip/wilc1000/sdio.c
similarity index 100%
rename from drivers/staging/wilc1000/sdio.c
rename to drivers/net/wireless/microchip/wilc1000/sdio.c
diff --git a/drivers/staging/wilc1000/spi.c b/drivers/net/wireless/microchip/wilc1000/spi.c
similarity index 100%
rename from drivers/staging/wilc1000/spi.c
rename to drivers/net/wireless/microchip/wilc1000/spi.c
diff --git a/drivers/staging/wilc1000/wlan.c b/drivers/net/wireless/microchip/wilc1000/wlan.c
similarity index 100%
rename from drivers/staging/wilc1000/wlan.c
rename to drivers/net/wireless/microchip/wilc1000/wlan.c
diff --git a/drivers/staging/wilc1000/wlan.h b/drivers/net/wireless/microchip/wilc1000/wlan.h
similarity index 100%
rename from drivers/staging/wilc1000/wlan.h
rename to drivers/net/wireless/microchip/wilc1000/wlan.h
diff --git a/drivers/staging/wilc1000/wlan_cfg.c b/drivers/net/wireless/microchip/wilc1000/wlan_cfg.c
similarity index 100%
rename from drivers/staging/wilc1000/wlan_cfg.c
rename to drivers/net/wireless/microchip/wilc1000/wlan_cfg.c
diff --git a/drivers/staging/wilc1000/wlan_cfg.h b/drivers/net/wireless/microchip/wilc1000/wlan_cfg.h
similarity index 100%
rename from drivers/staging/wilc1000/wlan_cfg.h
rename to drivers/net/wireless/microchip/wilc1000/wlan_cfg.h
diff --git a/drivers/staging/wilc1000/wlan_if.h b/drivers/net/wireless/microchip/wilc1000/wlan_if.h
similarity index 100%
rename from drivers/staging/wilc1000/wlan_if.h
rename to drivers/net/wireless/microchip/wilc1000/wlan_if.h
diff --git a/drivers/staging/Kconfig b/drivers/staging/Kconfig
index 4ec5528f89fa..b3fb4d41e231 100644
--- a/drivers/staging/Kconfig
+++ b/drivers/staging/Kconfig
@@ -84,8 +84,6 @@  source "drivers/staging/fbtft/Kconfig"
 
 source "drivers/staging/fsl-dpaa2/Kconfig"
 
-source "drivers/staging/wilc1000/Kconfig"
-
 source "drivers/staging/most/Kconfig"
 
 source "drivers/staging/ks7010/Kconfig"
diff --git a/drivers/staging/Makefile b/drivers/staging/Makefile
index 4d34198151b3..3d8c7ea21a10 100644
--- a/drivers/staging/Makefile
+++ b/drivers/staging/Makefile
@@ -32,7 +32,6 @@  obj-$(CONFIG_UNISYSSPAR)	+= unisys/
 obj-$(CONFIG_COMMON_CLK_XLNX_CLKWZRD)	+= clocking-wizard/
 obj-$(CONFIG_FB_TFT)		+= fbtft/
 obj-$(CONFIG_FSL_DPAA2)		+= fsl-dpaa2/
-obj-$(CONFIG_WILC1000)		+= wilc1000/
 obj-$(CONFIG_MOST)		+= most/
 obj-$(CONFIG_KS7010)		+= ks7010/
 obj-$(CONFIG_GREYBUS)		+= greybus/