mbox series

[00/38] wireless: ra6w driver for Renesas IEEE 802.11ax devices

Message ID 20250417135236.52410-1-oleksandr.savchenko.dn@bp.renesas.com
Headers show
Series wireless: ra6w driver for Renesas IEEE 802.11ax devices | expand

Message

Alexander Savchenko April 17, 2025, 1:51 p.m. UTC
Renesas Electronics Corporation publishes to the opensource new
wireless driver for an own 802.11 chipset family - RA6Wx.
The chip supports dualband functioning over SDIO interface.
The chip supports 1x1 nss, 20MHz and functioning in AP/STA modes.
The driver architecture is FullMAC.

The current patchset is considered to be published in form of RFCv1.
If there are any suggestions/propositions - we will be glad to fix them and
eventually share the driver with the community in form of an official patch
(including the firmware binaries).

The RFC is divided into separate patches on a per-file basis to simplify
the review process.

Driver src aligned to kernel version 6.15-rc2.

Alexander Savchenko (38):
  wireless: add Renesas vendor
  renesas: add Kconfig
  renesas: add Makefile
  ra6w: add cfg80211.c
  ra6w: add cfg80211.h
  ra6w: add cmd.h
  ra6w: add core.c
  ra6w: add core.h
  ra6w: add ctrl.c
  ra6w: add ctrl.h
  ra6w: add dbg.h
  ra6w: add dbgfs.c
  ra6w: add dbgfs.h
  ra6w: add dev.c
  ra6w: add dev.h
  ra6w: add if.h
  ra6w: add indi.c
  ra6w: add indi.h
  ra6w: add params.c
  ra6w: add params.h
  ra6w: add q.c
  ra6w: add q.h
  ra6w: add recovery.c
  ra6w: add recovery.h
  ra6w: add rx.c
  ra6w: add rx.h
  ra6w: add sdio.c
  ra6w: add sdio.h
  ra6w: add stats.c
  ra6w: add stats.h
  ra6w: add status.c
  ra6w: add status.h
  ra6w: add testmode.c
  ra6w: add testmode.h
  ra6w: add tx.c
  ra6w: add tx.h
  ra6w: add Makefile
  ra6w: add Kconfig

 drivers/net/wireless/Kconfig                 |    1 +
 drivers/net/wireless/Makefile                |    1 +
 drivers/net/wireless/renesas/Kconfig         |   12 +
 drivers/net/wireless/renesas/Makefile        |    2 +
 drivers/net/wireless/renesas/ra6w/Kconfig    |    8 +
 drivers/net/wireless/renesas/ra6w/Makefile   |    9 +
 drivers/net/wireless/renesas/ra6w/cfg80211.c | 2519 ++++++++++++++++++
 drivers/net/wireless/renesas/ra6w/cfg80211.h |  266 ++
 drivers/net/wireless/renesas/ra6w/cmd.h      |  978 +++++++
 drivers/net/wireless/renesas/ra6w/core.c     |  286 ++
 drivers/net/wireless/renesas/ra6w/core.h     |   99 +
 drivers/net/wireless/renesas/ra6w/ctrl.c     | 1649 ++++++++++++
 drivers/net/wireless/renesas/ra6w/ctrl.h     |  100 +
 drivers/net/wireless/renesas/ra6w/dbg.h      |   47 +
 drivers/net/wireless/renesas/ra6w/dbgfs.c    |  201 ++
 drivers/net/wireless/renesas/ra6w/dbgfs.h    |   22 +
 drivers/net/wireless/renesas/ra6w/dev.c      |  233 ++
 drivers/net/wireless/renesas/ra6w/dev.h      |   16 +
 drivers/net/wireless/renesas/ra6w/if.h       |   41 +
 drivers/net/wireless/renesas/ra6w/indi.c     |  581 ++++
 drivers/net/wireless/renesas/ra6w/indi.h     |   59 +
 drivers/net/wireless/renesas/ra6w/params.c   |  387 +++
 drivers/net/wireless/renesas/ra6w/params.h   |  149 ++
 drivers/net/wireless/renesas/ra6w/q.c        |  134 +
 drivers/net/wireless/renesas/ra6w/q.h        |   39 +
 drivers/net/wireless/renesas/ra6w/recovery.c |   87 +
 drivers/net/wireless/renesas/ra6w/recovery.h |   21 +
 drivers/net/wireless/renesas/ra6w/rx.c       |  274 ++
 drivers/net/wireless/renesas/ra6w/rx.h       |  105 +
 drivers/net/wireless/renesas/ra6w/sdio.c     |  505 ++++
 drivers/net/wireless/renesas/ra6w/sdio.h     |   38 +
 drivers/net/wireless/renesas/ra6w/stats.c    |   94 +
 drivers/net/wireless/renesas/ra6w/stats.h    |  100 +
 drivers/net/wireless/renesas/ra6w/status.c   |  117 +
 drivers/net/wireless/renesas/ra6w/status.h   |   73 +
 drivers/net/wireless/renesas/ra6w/testmode.c |  649 +++++
 drivers/net/wireless/renesas/ra6w/testmode.h |  150 ++
 drivers/net/wireless/renesas/ra6w/tx.c       |  254 ++
 drivers/net/wireless/renesas/ra6w/tx.h       |   69 +
 39 files changed, 10375 insertions(+)
 create mode 100644 drivers/net/wireless/renesas/Kconfig
 create mode 100644 drivers/net/wireless/renesas/Makefile
 create mode 100644 drivers/net/wireless/renesas/ra6w/Kconfig
 create mode 100644 drivers/net/wireless/renesas/ra6w/Makefile
 create mode 100644 drivers/net/wireless/renesas/ra6w/cfg80211.c
 create mode 100644 drivers/net/wireless/renesas/ra6w/cfg80211.h
 create mode 100644 drivers/net/wireless/renesas/ra6w/cmd.h
 create mode 100644 drivers/net/wireless/renesas/ra6w/core.c
 create mode 100644 drivers/net/wireless/renesas/ra6w/core.h
 create mode 100644 drivers/net/wireless/renesas/ra6w/ctrl.c
 create mode 100644 drivers/net/wireless/renesas/ra6w/ctrl.h
 create mode 100644 drivers/net/wireless/renesas/ra6w/dbg.h
 create mode 100644 drivers/net/wireless/renesas/ra6w/dbgfs.c
 create mode 100644 drivers/net/wireless/renesas/ra6w/dbgfs.h
 create mode 100644 drivers/net/wireless/renesas/ra6w/dev.c
 create mode 100644 drivers/net/wireless/renesas/ra6w/dev.h
 create mode 100644 drivers/net/wireless/renesas/ra6w/if.h
 create mode 100644 drivers/net/wireless/renesas/ra6w/indi.c
 create mode 100644 drivers/net/wireless/renesas/ra6w/indi.h
 create mode 100644 drivers/net/wireless/renesas/ra6w/params.c
 create mode 100644 drivers/net/wireless/renesas/ra6w/params.h
 create mode 100644 drivers/net/wireless/renesas/ra6w/q.c
 create mode 100644 drivers/net/wireless/renesas/ra6w/q.h
 create mode 100644 drivers/net/wireless/renesas/ra6w/recovery.c
 create mode 100644 drivers/net/wireless/renesas/ra6w/recovery.h
 create mode 100644 drivers/net/wireless/renesas/ra6w/rx.c
 create mode 100644 drivers/net/wireless/renesas/ra6w/rx.h
 create mode 100644 drivers/net/wireless/renesas/ra6w/sdio.c
 create mode 100644 drivers/net/wireless/renesas/ra6w/sdio.h
 create mode 100644 drivers/net/wireless/renesas/ra6w/stats.c
 create mode 100644 drivers/net/wireless/renesas/ra6w/stats.h
 create mode 100644 drivers/net/wireless/renesas/ra6w/status.c
 create mode 100644 drivers/net/wireless/renesas/ra6w/status.h
 create mode 100644 drivers/net/wireless/renesas/ra6w/testmode.c
 create mode 100644 drivers/net/wireless/renesas/ra6w/testmode.h
 create mode 100644 drivers/net/wireless/renesas/ra6w/tx.c
 create mode 100644 drivers/net/wireless/renesas/ra6w/tx.h