Re: [RFC 0/3] cfg80211/nl80211/iw: add basic AMPDU/AMSDU controls

2018-11-06 Thread Sergey Matyukevich
> On 11/05/2018 02:49 PM, Igor Mitsyanko wrote: > > On 11/05/2018 12:45 PM, Ben Greear wrote: > > > > > > > > I see you don't implement it this way in the driver, but wouldn't it > > > > make more sense to have this as a per-STA (RA) setting? That's really > > > > the granularity it can be done

[RFC 2/3] iw: add phy subcommands to configure aggregation

2018-11-05 Thread Sergey Matyukevich
Add phy subcommands to enable/disable AMPDU/AMSDU aggregation. Signed-off-by: Sergey Matyukevich --- nl80211.h | 6 ++ phy.c | 60 2 files changed, 66 insertions(+) diff --git a/nl80211.h b/nl80211.h index 1766a12..41eec4a

[RFC 3/3] qtnfmac: add support for basic aggregation control

2018-11-05 Thread Sergey Matyukevich
Add support for basic AMPDU/AMSDU aggregation control: - report initial aggregation configuration to cfg80211 core - pass AMPDU/AMSDU aggregation changes to wireless card using set_wiphy_params cfg80211 callback Signed-off-by: Sergey Matyukevich --- drivers/net/wireless/quantenna/qtnfmac

[RFC 0/3] cfg80211/nl80211/iw: add basic AMPDU/AMSDU controls

2018-11-05 Thread Sergey Matyukevich
Hello Johannes and all, Here are several RFC patches providing simple high-level controls of AMSDU/AMPDU aggregation. The primary purpose of this functionality is an attempt to fill missing gaps in nl80211 interface for basic WFA certification tests. We experimented with QCA sigma-dut tool:

[RFC 1/3] cfg80211/nl80211: add wiphy flags to control aggregation

2018-11-05 Thread Sergey Matyukevich
Add two top-level switches to wiphy structure to control AMSDU and AMPDU aggregation. Enable read/update of AMSDU and AMPDU aggregation from the userspace using set_wiphy/get_wiphy commands. Signed-off-by: Sergey Matyukevich --- include/net/cfg80211.h | 7 +++ include/uapi/linux

[PATCH] cfg80211: add missing constraint for user-supplied VHT mask

2018-10-19 Thread Sergey Matyukevich
Do a logical vht_capa &= vht_capa_mask of user-supplied VHT mask with the driver-supplied mask of modifiable VHT capabilities. Fix whitespaces and comment typos. Signed-off-by: Sergey Matyukevich --- net/wireless/mlme.c | 4 ++-- net/wireless/sme.c | 2 ++ 2 files changed, 4 insertions(+

[PATCH] qtnfmac: fix error handling in control path

2018-10-17 Thread Sergey Matyukevich
] Reported-by: Dan Carpenter Reported-by: Arnd Bergmann Signed-off-by: Sergey Matyukevich --- drivers/net/wireless/quantenna/qtnfmac/commands.c | 21 + 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/drivers/net/wireless/quantenna/qtnfmac/commands.c b/drivers/net

Re: [PATCH 3/3] mac80211: Implement functionality to monitor station's signal stregnth

2018-10-16 Thread Sergey Matyukevich
> +/* > + * How many frames need to have been used in average station's > + * signal strength before checking against the threshold > + */ > +#define IEEE80211_STA_SIGNAL_AVE_MIN_COUNT 4 > + > + > /* there are 40 bytes if you don't need the rateset to be kept */ > #define

Re: [PATCH 1/3] cfg80211: Add support to configure station specific RSSI threshold for AP mode

2018-10-16 Thread Sergey Matyukevich
> Signed-off-by: Tamizh chelvam > --- > include/net/cfg80211.h | 28 + > include/uapi/linux/nl80211.h | 18 ++ > net/wireless/nl80211.c | 131 > +- > net/wireless/rdev-ops.h | 18 ++ > 4 files changed, 181

[PATCH v2 2/2] qtnfmac: add support for Topaz chipsets

2018-10-16 Thread Sergey Matyukevich
and AP modes are supported. Patch adds Topaz support to qtnfmac_pcie driver. Proper platform bus will be selected on probing based on chip ID. Signed-off-by: Igor Mitsyanko Signed-off-by: Sergey Matyukevich Signed-off-by: Andrey Shevchenko --- drivers/net/wireless/quantenna/qtnfmac/Kconfig

[PATCH v2 1/2] qtnfmac_pcie: use single PCIe driver for all platforms

2018-10-16 Thread Sergey Matyukevich
From: Igor Mitsyanko Single PCIe driver can identify hardware type by reading CHIP ID at probe time and invoking a correct initialization sequence. Signed-off-by: Igor Mitsyanko --- drivers/net/wireless/quantenna/qtnfmac/Kconfig | 10 +- drivers/net/wireless/quantenna/qtnfmac/Makefile

[PATCH v2 0/2] qtnfmac: add support for QSR1000/QSR2000 (aka Topaz) chipsets

2018-10-16 Thread Sergey Matyukevich
Hello Kalle and all, Here is the next update for qtnfmac driver. This patchset adds support for the previous generation of Quantenna wireless cards, namely QSR1000/QSR2000 family of PCIe devices. The summary of changes is as follows: - the last bits of pcie layer unification work: -- extract

Re: [PATCH 5/5] qtnfmac: add support for Topaz chipsets

2018-10-15 Thread Sergey Matyukevich
> > +config QTNFMAC_TOPAZ_PCIE > > + tristate "Quantenna QSR1000/QSR2000 PCIe support" > > + default n > > + depends on PCI && CFG80211 > > + select QTNFMAC > > + select FW_LOADER > > + select CRC32 > > + help > > + This option adds support for wireless adapters

Re: [bug report] qtnfmac: cleanup and unify command error handling

2018-10-10 Thread Sergey Matyukevich
Hello Dan, > The patch c6ed298ffe09: "qtnfmac: cleanup and unify command error > handling" from Oct 5, 2018, leads to the following static checker > warning: > > drivers/net/wireless/quantenna/qtnfmac/commands.c:132 > qtnf_cmd_send_with_reply() > warn: variable dereferenced

Re: [PATCH 5/5] qtnfmac: add support for Topaz chipsets

2018-10-08 Thread Sergey Matyukevich
ll be selected on probing > > based on chip ID. > > > > Signed-off-by: Igor Mitsyanko > > Signed-off-by: Sergey Matyukevich > > Signed-off-by: Andrey Shevchenko > > [...] > > > --- a/drivers/net/wireless/quantenna/qtnfmac/qtn_hw_ids.h > > +++ b/

[PATCH 4/5] qtnfmac_pcie: use single PCIe driver for all platforms

2018-10-08 Thread Sergey Matyukevich
From: Igor Mitsyanko Single PCIe driver can identify hardware type by reading CHIP ID at probe time and invoking a correct initialization sequence. Signed-off-by: Igor Mitsyanko --- drivers/net/wireless/quantenna/qtnfmac/Kconfig | 8 +- drivers/net/wireless/quantenna/qtnfmac/Makefile

[PATCH 0/5] qtnfmac: add support for QSR1000/QSR2000 (aka Topaz) chipsets

2018-10-08 Thread Sergey Matyukevich
Hello Kalle and all, Here is the next update for qtnfmac driver. This patch set adds support for the previous generation of Quantenna wireless cards, namely QSR1000/QSR2000 family of devices. The summary of changes is as follows: - the last bits of pcie layer unification work: -- extract

[PATCH 1/5] qtnfmac: use 'help' in Kconfig

2018-10-08 Thread Sergey Matyukevich
Fix checkpatch warning: use preferred 'help' option in Kconfig. Signed-off-by: Sergey Matyukevich --- drivers/net/wireless/quantenna/Kconfig | 2 +- drivers/net/wireless/quantenna/qtnfmac/Kconfig | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/net/wireless

[PATCH 3/5] qtnfmac_pcie: cleanup Pearl platform headers

2018-10-08 Thread Sergey Matyukevich
Remove redundant information from Pearl platform headers. Signed-off-by: Sergey Matyukevich --- .../quantenna/qtnfmac/pcie/pearl_pcie_ipc.h| 5 - .../quantenna/qtnfmac/pcie/pearl_pcie_regs.h | 228 + 2 files changed, 3 insertions(+), 230 deletions(-) diff

[PATCH 2/5] qtnfmac: use SPDX identifier for pcie bus layer files

2018-10-08 Thread Sergey Matyukevich
Change pcie bus layer licensing information to SPDX format. Signed-off-by: Sergey Matyukevich --- .../net/wireless/quantenna/qtnfmac/pcie/pearl_pcie.c| 17 ++--- .../wireless/quantenna/qtnfmac/pcie/pearl_pcie_ipc.h| 17 ++--- .../wireless/quantenna/qtnfmac/pcie

[PATCH 5/5] qtnfmac: add support for Topaz chipsets

2018-10-08 Thread Sergey Matyukevich
and AP modes are supported. Patch adds Topaz support to qtnfmac_pcie driver. It is possible to enable both Topaz and Pearl support in kernel configuration. In that case proper platform bus will be selected on probing based on chip ID. Signed-off-by: Igor Mitsyanko Signed-off-by: Sergey Matyukevich

[PATCH v2 11/13] qtnfmac: add support for scan dwell time configuration

2018-10-05 Thread Sergey Matyukevich
Firmware supports scan dwell time tuning for various types of scans. Enable support for this feature: - advertise capability to configure channel dwell time to host - pass scan dwell parameters to wireless card in scan request Signed-off-by: Sergey Matyukevich --- drivers/net/wireless/quantenna

[PATCH v2 12/13] qtnfmac: drop redundant data copy in control path

2018-10-05 Thread Sergey Matyukevich
Command responses and events from the firmware are copied twice in control path: at first in shm core (qtnf_shm_handle_new_data) and then in pcie bus drivers (qtnf_pcie_control_rx_callback). There is no need to copy this data twice, it can be done only once in rx callbacks. Signed-off-by: Sergey

[PATCH v2 13/13] qtnfmac: implement dump_station support for STA mode

2018-10-05 Thread Sergey Matyukevich
Current implementation of dump_station cfg80211 callback supports AP mode only. Add support for STA mode as well: by default in STA mode this callback is supposed to return AP on managed interface. Signed-off-by: Sergey Matyukevich --- drivers/net/wireless/quantenna/qtnfmac/cfg80211.c | 30

[PATCH v2 09/13] qtnfmac: drop error reports for out-of-bounds key indexes

2018-10-05 Thread Sergey Matyukevich
On disconnect wireless core attempts to remove all the supported keys. Following cfg80211_ops conventions, firmware returns -ENOENT code for the out-of-bound key indexes. This is a normal behavior, so no need to report errors for this case. Signed-off-by: Sergey Matyukevich --- drivers/net

[PATCH v2 03/13] qtnfmac: request userspace to do OBSS scanning if FW can not

2018-10-05 Thread Sergey Matyukevich
From: Igor Mitsyanko In case firmware reports that it can not do OBSS scanning for 40MHz 2.4GHz channels itself, tell userpsace to do that instead by setting NL80211_FEATURE_NEED_OBSS_SCAN flag. Signed-off-by: Igor mitsyanko --- drivers/net/wireless/quantenna/qtnfmac/cfg80211.c | 3 +++

[PATCH v2 08/13] qtnfmac: inform wireless core about supported extended capabilities

2018-10-05 Thread Sergey Matyukevich
Driver retrieves information about supported extended capabilities from wireless card. However this information is not propagated further to Linux wireless core. Fix this by setting extended capabilities fields of wiphy structure. Signed-off-by: Sergey Matyukevich --- drivers/net/wireless

[PATCH v2 04/13] qtnfmac: do not initialize per-MAC data multiple times

2018-10-05 Thread Sergey Matyukevich
From: Igor Mitsyanko Several members of pwr-MAC structure are re-initialized several times together with per-VIF initialization. Fix that and simplify the code. Signed-off-by: Igor Mitsyanko --- drivers/net/wireless/quantenna/qtnfmac/core.c | 23 +-- 1 file changed, 13

[PATCH v2 05/13] qtnfmac: cleanup and unify command error handling

2018-10-05 Thread Sergey Matyukevich
Unify command error handling using qtnf_cmd_resp_result_decode function. Do not duplicate error messages in command handlers and cfg80211 callbacks: report 'cmd exec fail' only on control path internal failure. Remove redundant 'unlikely' macros. Signed-off-by: Sergey Matyukevich --- drivers

[PATCH v2 02/13] qtnfmac: generate local disconnect event in disconnect callback

2018-10-05 Thread Sergey Matyukevich
From: Igor Mitsyanko When cfg80211 disconnect callback is triggered and command is processed by firmware, disconnect event with local parameter set must be sent immediately. Indicating that it's a "local" event (not from AP) will help upper layers to process this event correctly. Signed-off-by:

[PATCH v2 10/13] qtnfmac: add support for scan flush

2018-10-05 Thread Sergey Matyukevich
Notify firmware to flush cache before scanning when needed. Signed-off-by: Sergey Matyukevich --- drivers/net/wireless/quantenna/qtnfmac/commands.c | 6 ++ drivers/net/wireless/quantenna/qtnfmac/qlink.h | 1 + drivers/net/wireless/quantenna/qtnfmac/qlink_util.h | 8 3 files

[PATCH v2 06/13] qtnfmac: do not cancel scan in disconnect callback

2018-10-05 Thread Sergey Matyukevich
From: Igor Mitsyanko Do not cancel scan in disconnect callback. If there is an active scan, it will be cancelled by firmware, then host driver will be properly notified by event. Cancelling scan in disconnect callback occasionally may lead to the following race issue. Host is able to queue one

[PATCH v2 01/13] qtnfmac: do not track STA states in driver

2018-10-05 Thread Sergey Matyukevich
Remove STA connection states tracking from driver. Leave it wireless core on host and to firmware. Signed-off-by: Sergey Matyukevich --- drivers/net/wireless/quantenna/qtnfmac/cfg80211.c | 59 +++ drivers/net/wireless/quantenna/qtnfmac/core.h | 7 --- drivers/net

[PATCH v2 07/13] qtnfmac: pass sgi rate info flag to wireless core

2018-10-05 Thread Sergey Matyukevich
SGI should be passed to wireless core as a part of rate structure. Otherwise wireless core performs incorrect rate calculation when SGI is enabled in hardware but not reported to host. Signed-off-by: Sergey Matyukevich --- drivers/net/wireless/quantenna/qtnfmac/commands.c | 3 +++ 1 file

[PATCH v2 00/13] qtnfmac: fixes and cleanups for STA mode

2018-10-05 Thread Sergey Matyukevich
do not cancel scan in disconnect callback qtnfmac: do not initialize per-MAC data multiple times qtnfmac: request userspace to do OBSS scanning if FW can not qtnfmac: generate local disconnect event in disconnect callback Sergey Matyukevich (9) qtnfmac: implement dump_station support

Re: [PATCH 00/13] qtnfmac: fixes and cleanups for STA mode

2018-10-05 Thread Sergey Matyukevich
> Sergey Matyukevich OS writes: > > > Hello Kalle and all, > > > > Here is the next patch set with fixes and cleanups for qtnfmac driver. > > This set mostly consists of multiple fixes and improvements for STA > > mode. The major changes include the followin

[PATCH 04/13] qtnfmac: do not initialize per-MAC data multiple times

2018-10-02 Thread Sergey Matyukevich OS
From: Igor Mitsyanko Several members of pwr-MAC structure are re-initialized several times together with per-VIF initialization. Fix that and simplify the code. Signed-off-by: Igor Mitsyanko --- drivers/net/wireless/quantenna/qtnfmac/core.c | 23 +-- 1 file changed, 13

[PATCH 06/13] qtnfmac: do not cancel scan in disconnect callback

2018-10-02 Thread Sergey Matyukevich OS
From: Igor Mitsyanko Do not cancel scan in disconnect callback. If there is an active scan, it will be cancelled by firmware, then host driver will be properly notified by event. Cancelling scan in disconnect callback occasionally may lead to the following race issue. Host is able to queue one

[PATCH 05/13] qtnfmac: cleanup and unify command error handling

2018-10-02 Thread Sergey Matyukevich OS
Unify command error handling using qtnf_cmd_resp_result_decode function. Do not duplicate error messages in command handlers and cfg80211 callbacks: report 'cmd exec fail' only on control path internal failure. Remove redundant 'unlikely' macros. Signed-off-by: Sergey Matyukevich --- drivers

[PATCH 11/13] qtnfmac: add support for scan dwell time configuration

2018-10-02 Thread Sergey Matyukevich OS
Firmware supports scan dwell time tuning for various types of scans. Enable support for this feature: - advertise capability to configure channel dwell time to host - pass scan dwell parameters to wireless card in scan request Signed-off-by: Sergey Matyukevich --- drivers/net/wireless/quantenna

[PATCH 09/13] qtnfmac: drop error reports for out-of-bounds key indexes

2018-10-02 Thread Sergey Matyukevich OS
On disconnect wireless core attempts to remove all the supported keys. Following cfg80211_ops conventions, firmware returns -ENOENT code for the out-of-bound key indexes. This is a normal behavior, so no need to report errors for this case. Signed-off-by: Sergey Matyukevich --- drivers/net

[PATCH 08/13] qtnfmac: pass supported extended capabilities to wiphy

2018-10-02 Thread Sergey Matyukevich OS
Driver retrieves information about supported extended capabilities from wireless card. However this information is not propagated further to Linux wireless core. Fix this by setting extended capabilities fields of wiphy structure. Signed-off-by: Sergey Matyukevich --- drivers/net/wireless

[PATCH 13/13] qtnfmac: implement dump_station support for STA mode

2018-10-02 Thread Sergey Matyukevich OS
Current implementation of dump_station cfg80211 callback supports AP mode only. Add support for STA mode as well: by default in STA mode this callback is supposed to return AP on managed interface. Signed-off-by: Sergey Matyukevich --- drivers/net/wireless/quantenna/qtnfmac/cfg80211.c | 30

[PATCH 01/13] qtnfmac: do not track STA states in driver

2018-10-02 Thread Sergey Matyukevich OS
Remove STA connection states tracking from driver. Leave it wireless core on host and to firmware. Signed-off-by: Sergey Matyukevich --- drivers/net/wireless/quantenna/qtnfmac/cfg80211.c | 59 +++ drivers/net/wireless/quantenna/qtnfmac/core.h | 7 --- drivers/net

[PATCH 07/13] qtnfmac: pass sgi rate info flag to wireless core

2018-10-02 Thread Sergey Matyukevich OS
SGI should be passed to wireless core as a part of rate structure. Otherwise wireless core performs incorrect rate calculation when SGI is enabled in hardware but not reported to host. Signed-off-by: Sergey Matyukevich --- drivers/net/wireless/quantenna/qtnfmac/commands.c | 3 +++ 1 file

[PATCH 03/13] qtnfmac: request userspace to do OBSS scanning if FW can not

2018-10-02 Thread Sergey Matyukevich OS
From: Igor Mitsyanko In case firmware reports that it can not do OBSS scanning for 40MHz 2.4GHz channels itself, tell userpsace to do that instead by setting NL80211_FEATURE_NEED_OBSS_SCAN flag. Signed-off-by: Igor mitsyanko --- drivers/net/wireless/quantenna/qtnfmac/cfg80211.c | 3 +++

[PATCH 10/13] qtnfmac: add support for scan flush

2018-10-02 Thread Sergey Matyukevich OS
Notify firmware to flush cache before scanning when needed. Signed-off-by: Sergey Matyukevich --- drivers/net/wireless/quantenna/qtnfmac/commands.c | 6 ++ drivers/net/wireless/quantenna/qtnfmac/qlink.h | 1 + drivers/net/wireless/quantenna/qtnfmac/qlink_util.h | 8 3 files

[PATCH 00/13] qtnfmac: fixes and cleanups for STA mode

2018-10-02 Thread Sergey Matyukevich OS
per-MAC data multiple times qtnfmac: request userspace to do OBSS scanning if FW can not qtnfmac: generate local disconnect event in disconnect callback Sergey Matyukevich (9) qtnfmac: implement dump_station support for STA mode qtnfmac: drop redundant data copy in control path qtnfmac

[PATCH 02/13] qtnfmac: generate local disconnect event in disconnect callback

2018-10-02 Thread Sergey Matyukevich OS
From: Igor Mitsyanko When cfg80211 disconnect callback is triggered and command is processed by firmware, disconnect event with local parameter set must be sent immediately. Indicating that it's a "local" event (not from AP) will help upper layers to process this event correctly. Signed-off-by:

Re: [PATCH] iw: scan: fix crash when driver doesn't report frame type

2018-08-08 Thread Sergey Matyukevich
> If driver does not know what kind of frame has been received from BSS, > then it is possible to specify CFG80211_BSS_FTYPE_UNKNOWN > in cfg80211_inform_bss[_width]. > > In this case neither NL80211_BSS_BEACON_IES nor NL80211_BSS_PRESP_DATA > will be reported to userspace. The fix is for iw

Re: [PATCH 5/6] qtnfmac: add support for PTA configuration

2018-08-05 Thread Sergey Matyukevich
> > > > > Implement support for PTA (Packet Traffic Arbitration) configuration. > > > > > The PTA mechanism is used to coordinate sharing of the medium between > > > > > WiFi and other 2.4 wireless networks, e.g. Bluetooth or ZigBee. > > > > > > > > > > This patch implements core infrastructure

[PATCH] scan: fix crash when driver doesn't report frame type

2018-08-04 Thread Sergey Matyukevich
If driver does not know what kind of frame has been received from BSS, then it is possible to specify CFG80211_BSS_FTYPE_UNKNOWN in cfg80211_inform_bss[_width]. In this case neither NL80211_BSS_BEACON_IES nor NL80211_BSS_PRESP_DATA will be reported to userspace. Signed-off-by: Sergey Matyukevich

[PATCH v2] qtnfmac: implement basic WoWLAN support

2018-08-02 Thread Sergey Matyukevich
-off-by: Sergey Matyukevich --- Hello Kalle and all, The first four patches from the original patch set has been accepted. So the changes for v2 are as follows: - drop patch with vendor speicific commands for PTA -- to be clarified and resend separately - rebase WoWLAN patch on top of wireless

Re: [PATCH 5/6] qtnfmac: add support for PTA configuration

2018-08-01 Thread Sergey Matyukevich
> > > Implement support for PTA (Packet Traffic Arbitration) configuration. > > > The PTA mechanism is used to coordinate sharing of the medium between > > > WiFi and other 2.4 wireless networks, e.g. Bluetooth or ZigBee. > > > > > > This patch implements core infrastructure and vendor specific

Re: [PATCH 6/6] qtnfmac: implement basic WoWLAN support

2018-07-31 Thread Sergey Matyukevich
disconnect, magic packet, > > custom pattern packet. > > > > Signed-off-by: Sergey Matyukevich > > Doesn't apply anymore as I dropped patch 5 > > fatal: sha1 information is lacking or useless > (drivers/net/wireless/quantenna/qtnfmac/cfg80211.c). > error:

Re: [1/6] qtnfmac: implement net_device_ops callback to set MAC address

2018-06-29 Thread Sergey Matyukevich
> Sergey Matyukevich writes: > > >> Sergey Matyukevich wrote: > >> > >> > From: Igor Mitsyanko > >> > > >> > Implement net_device_ops::ndo_set_mac_address callback to allow for > >> > setting interface MAC address. Imp

Re: [wireless-drivers-next:master 54/55] drivers/net/wireless/quantenna/qtnfmac/cfg80211.c:679:10-19: ERROR: vif is NULL but dereferenced. (fwd)

2018-06-15 Thread Sergey Matyukevich
Hello Julia, > This report is a bit old, so perahsp the problem is already addressed. In > any case, the goto out on line 658 will lead to a null pointer > dereference. > > julia Thanks for the issue report ! We have already received similar issue report together with the fix for it. Fix

Re: [PATCH 3/6] qtnfmac: implement cfg80211 power management callback

2018-06-04 Thread Sergey Matyukevich
Hello Igor, > > Implement set_power_mgmt() callback that forwards power saving > > settings to the device firmware. > > > > Signed-off-by: Sergei Maksimenko > > --- > > static void qtnf_cfg80211_reg_notifier(struct wiphy *wiphy_in, > > @@ -922,6 +939,9 @@ struct wiphy

Re: [PATCH 0/6] qtnfmac: enable more features

2018-05-31 Thread Sergey Matyukevich
Hello Kalle, > > Here is the next update for qtnfmac driver which enables more wireless > > features. The major changes include the following items: > > - cfg80211 power management callback > > - net_device_ops set MAC addr callback > > - advanced scan features: multiple SSIDs and randomized

[PATCH 5/6] qtnfmac: add support for PTA configuration

2018-05-31 Thread Sergey Matyukevich
From: Andrey Shevchenko Implement support for PTA (Packet Traffic Arbitration) configuration. The PTA mechanism is used to coordinate sharing of the medium between WiFi and other 2.4 wireless networks, e.g. Bluetooth or ZigBee. This patch implements core infrastructure and vendor specific

[PATCH 6/6] qtnfmac: implement basic WoWLAN support

2018-05-31 Thread Sergey Matyukevich
-off-by: Sergey Matyukevich --- drivers/net/wireless/quantenna/qtnfmac/cfg80211.c | 76 +++ drivers/net/wireless/quantenna/qtnfmac/commands.c | 112 ++ drivers/net/wireless/quantenna/qtnfmac/commands.h | 3 + drivers/net/wireless/quantenna/qtnfmac/core.c | 1

[PATCH 4/6] qtnfmac: enable multiple SSIDs scan support

2018-05-31 Thread Sergey Matyukevich
From: Andrey Shevchenko Enable support for multiple SSIDs scans. Get max number of supported SSIDs from firmware and report to cfg80211 core. Signed-off-by: Andrey Shevchenko --- drivers/net/wireless/quantenna/qtnfmac/cfg80211.c | 3 ++- drivers/net/wireless/quantenna/qtnfmac/commands.c | 8

[PATCH 2/6] qtnfmac: enable source MAC address randomization support

2018-05-31 Thread Sergey Matyukevich
From: Andrey Shevchenko Enable support for source MAC address randomization of probe request frames. Pass addr/mask randomization parameters to firmware. Signed-off-by: Andrey Shevchenko --- drivers/net/wireless/quantenna/qtnfmac/cfg80211.c | 3 +++

[PATCH 1/6] qtnfmac: implement net_device_ops callback to set MAC address

2018-05-31 Thread Sergey Matyukevich
From: Igor Mitsyanko Implement net_device_ops::ndo_set_mac_address callback to allow for setting interface MAC address. Implementation is done through existing CHANGE_INTF firmware command. All validation is to be done by firmware. Signed-off-by: Igor Mitsyanko ---

[PATCH 0/6] qtnfmac: enable more features

2018-05-31 Thread Sergey Matyukevich
- basic WoWLAN support: disconnect/magic/pattern triggers -- not yet: PCIe backend suspend/resume, reporting wakeup reason Regards, Sergey Sergei Maksimenko (1) qtnfmac: implement cfg80211 power management callback Sergey Matyukevich (1) qtnfmac: implement basic WoWLAN support Igor Mitsyanko

[PATCH 7/9] qtnfmac: fix bg_scan_period parameter processing

2018-05-29 Thread Sergey Matyukevich
From: Andrey Shevchenko Do not process bg_scan_period parameter in qtnfmac driver. Pass correct values as is. In the case of invalid values pass default value. Leave further processing to firmware. Signed-off-by: Andrey Shevchenko --- drivers/net/wireless/quantenna/qtnfmac/commands.c | 8

[PATCH 3/9] qtnfmac: decode error codes from firmware replies

2018-05-29 Thread Sergey Matyukevich
From: Igor Mitsyanko Introduce a function that will map an error code reported in reply to a firmware command, into one of standard errno codes. Use additional error codes to improve error reporting for MAC address changes. Signed-off-by: Igor Mitsyanko ---

[PATCH 8/9] qtnfmac: cancel scan on disconnect

2018-05-29 Thread Sergey Matyukevich
From: Andrey Shevchenko Cancel scan operation on STA disconnect. Signed-off-by: Andrey Shevchenko --- drivers/net/wireless/quantenna/qtnfmac/cfg80211.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/net/wireless/quantenna/qtnfmac/cfg80211.c

[PATCH 9/9] qtnfmac: fix invalid STA state on EAPOL failure

2018-05-29 Thread Sergey Matyukevich
. No need to rely upon firmware events in this case. Signed-off-by: Sergey Matyukevich --- drivers/net/wireless/quantenna/qtnfmac/cfg80211.c | 21 ++--- drivers/net/wireless/quantenna/qtnfmac/event.c| 8 +++- 2 files changed, 17 insertions(+), 12 deletions(-) diff --git

[PATCH 4/9] qtnfmac: cleanup wdev structure between its uses

2018-05-29 Thread Sergey Matyukevich
: - start hostapd with more than 2 mBSS - kill hostapd using SIGKILL - start again hostapd with more than 2 mBSS However only two mBSS entities will be started: primary and the last BSS listed in hostapd config. Signed-off-by: Sergey Matyukevich --- drivers/net/wireless/quantenna/qtnfmac/cfg80211.c

[PATCH 6/9] qtnfmac: fix firmware command error path

2018-05-29 Thread Sergey Matyukevich
From: Dmitry Lebed Free command skb if bus state is not QTNF_FW_STATE_ACTIVE. Signed-off-by: Dmitry Lebed --- drivers/net/wireless/quantenna/qtnfmac/commands.c | 1 + drivers/net/wireless/quantenna/qtnfmac/trans.c| 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git

[PATCH 1/9] qtnfmac: remove unused function declarations

2018-05-29 Thread Sergey Matyukevich
From: Andrey Shevchenko Functions qtnf_cmd_resp_parse and qtnf_cmd_resp_check have been removed. Remove their declarations as well. Signed-off-by: Andrey Shevchenko --- drivers/net/wireless/quantenna/qtnfmac/commands.h | 5 - 1 file changed, 5 deletions(-) diff --git

[PATCH 2/9] qtnfmac: simplify notation

2018-05-29 Thread Sergey Matyukevich
Shorten line lengths using a more compact notation to access mac info. Signed-off-by: Sergey Matyukevich --- drivers/net/wireless/quantenna/qtnfmac/cfg80211.c | 25 --- 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/drivers/net/wireless/quantenna/qtnfmac

[PATCH 0/9] qtnfmac: bugfixes and cleanups

2018-05-29 Thread Sergey Matyukevich
) qtnfmac: fix firmware command error path qtnfmac: improve control path timeout handling Igor Mitsyanko (1) qtnfmac: decode error codes from firmware replies Sergey Matyukevich (3) qtnfmac: fix invalid STA state on EAPOL failure qtnfmac: cleanup wdev structure between its uses qtnfmac

Re: [PATCH v4] wireless-drivers: Dynamically allocate struct station_info

2018-05-10 Thread Sergey Matyukevich
stats and parameters to userspace") > Signed-off-by: Toke Høiland-Jørgensen <t...@toke.dk> > --- > v4: > - Add missing kfree before return in qtnfmac, as pointed out by Sergey > Matyukevich. > > drivers/net/wireless/ath/ath6kl/main.c | 14 +

Re: [PATCH v2 1/3] wireless-drivers: Dynamically allocate struct station_info

2018-05-10 Thread Sergey Matyukevich
Hello Toke and all, > Since the addition of the TXQ stats to cfg80211, the station_info struct > has grown to be quite large, which results in warnings when allocated on > the stack. Fix the affected places to do dynamic allocations instead. > > Fixes: 52539ca89f36 ("cfg80211: Expose TXQ stats

Re: [PATCH] qtnfmac: fix qtnf_netdev_hard_start_xmit()'s return type

2018-04-25 Thread Sergey Matyukevich
t > +static netdev_tx_t > qtnf_netdev_hard_start_xmit(struct sk_buff *skb, struct net_device *ndev) > { > struct qtnf_vif *vif; Previous ACK from Igor slipped through the cracks due to outlook/exchange issues. So here is another one. Reviewed-by: Sergey Matyukevich <sergey.matyukevich...@quantenna.com> Thanks for the fix ! Regards, Sergey

Re: [PATCH] qtnfmac: pearl: pcie: fix memory leak in qtnf_fw_work_handler

2018-04-05 Thread Sergey Matyukevich
gned-off-by: Gustavo A. R. Silva <gust...@embeddedor.com> > --- > drivers/net/wireless/quantenna/qtnfmac/pearl/pcie.c | 4 > 1 file changed, 4 insertions(+) Thanks for the patch! Reviewed-by: Sergey Matyukevich <sergey.matyukevich...@quantenna.com> Regards, Sergey

[PATCH 1/3] cfg80211: fix CAC_STARTED event handling

2018-03-26 Thread Sergey Matyukevich
From: Dmitry Lebed Exclude CAC_STARTED event from !wdev->cac_started check, since cac_started will be set later in the same function. Signed-off-by: Dmitry Lebed --- net/wireless/mlme.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff

[PATCH 3/3] qtnfmac: add DFS offload support

2018-03-26 Thread Sergey Matyukevich
From: Dmitry Lebed DFS offload support implemented: - DFS_OFFLOAD feature is advertised depending on HW capabilities - CAC_STARTED event forwarding from HW implemented - start_radar_detection() callback now returning -ENOTSUPP if DFS_OFFLOAD is enabled Signed-off-by:

[PATCH 2/3] cfg80211: enable use of non-cleared DFS channels for DFS offload

2018-03-26 Thread Sergey Matyukevich
From: Dmitry Lebed Currently channel switch/start_ap to DFS channel cannot be done to non-CAC-cleared channel even if DFS offload if enabled. Make non-cleared DFS channels available if DFS offload is enabled. CAC will be started by HW after channel change, start_ap call,

[PATCH 0/3] cfg80211: further work on DFS offload enablement

2018-03-26 Thread Sergey Matyukevich
Hello Johannes and all, Here is a patch set with minor cleanups/updates needed to enable DFS offload in cfg80211. Note that the third patch enables DFS offload for qtnfmac driver. We assume that it should go through wireless-drivers tree after all cfg80211/nl80211 changes are reviewed and

[PATCH v3 2/2] cfg80211/nl80211: add CAC_STARTED event

2018-03-01 Thread Sergey Matyukevich
From: Dmitry Lebed CAC_STARTED event is needed for DFS offload feature and should be generated by driver/HW if DFS_OFFLOAD is enabled. Signed-off-by: Dmitry Lebed --- include/uapi/linux/nl80211.h | 3 +++ net/wireless/mlme.c | 7 +-- 2

[PATCH v3 0/2] cfg80211/nl80211: prepare DFS offload

2018-03-01 Thread Sergey Matyukevich
Hello Johannes and all, Here is a patch set preparing DFS offload feature. The final purpose is to enable DFS offload when hardware/driver does all the DFS activities on its own without any support from user-space tools, e.g. hostapd. In this case user-space will be only informed about results,

[PATCH v3 1/2] cfg80211/nl80211: add DFS offload flag

2018-03-01 Thread Sergey Matyukevich
From: Dmitry Lebed Add wiphy EXT_FEATURE flag to indicate that HW or driver does all DFS actions by itself. User-space functionality already implemented in hostapd using vendor-specific (QCA) OUI to advertise DFS offload support. Need to introduce generic flag to inform

Re: [PATCH v2] cfg80211/nl80211: add DFS offload flag

2018-03-01 Thread Sergey Matyukevich
Hello Johannes, > > Add wiphy EXT_FEATURE flag to indicate that HW or driver does > > all DFS actions by itself. > > User-space functionality already implemented in hostapd using > > vendor-specific (QCA) OUI to advertise DFS offload support. > > Need to introduce generic flag to inform about

Re: [PATCH v2 4/4] qtnfmac: enable networked standby mode on device inactivity

2018-02-27 Thread Sergey Matyukevich
> Sergey Matyukevich <sergey.matyukevich...@quantenna.com> writes: > > > From: Sergei Maksimenko <smaksime...@quantenna.com> > > > > Enable support of networked standby mode (NSM) on qsr10g devices. > > Networked standby is a power saving mode when

Re: [PATCH 0/6] qtnfmac: qsr10g pcie backend updates

2018-02-27 Thread Sergey Matyukevich
Hello Kalle, > BTW, I don't see this patchset on patchwork.kernel.org[1], strangely I > only see v2. I don't know if it's because of problems on patchwork or > the submitter deleted the patches, but in case someone did delete these > please do not that. I want to see the old versions from

[PATCH v2] cfg80211/nl80211: add DFS offload flag

2018-02-22 Thread Sergey Matyukevich
From: Dmitry Lebed Add wiphy EXT_FEATURE flag to indicate that HW or driver does all DFS actions by itself. User-space functionality already implemented in hostapd using vendor-specific (QCA) OUI to advertise DFS offload support. Need to introduce generic flag to inform

Re: [PATCH] cfg80211/nl80211: add DFS offload flag

2018-02-22 Thread Sergey Matyukevich
Hello Kalle, > > Friendly advice: you may want to avoid using this footer in emails on > > the kernel.org mailing lists. > > Indeed. Most of the time I don't even reply to mails with such > disclaimers and patches containing that will be automatically dropped. Based on our previous experience

[PATCH] cfg80211/nl80211: add DFS offload flag

2018-02-21 Thread Sergey Matyukevich
From: Dmitry Lebed Add wiphy flag to indicate that HW does all DFS actions by itself. User-space functionality already implemented in hostapd using vendor-specific (QCA) OUI to advertise HW support. Need to introduce generic flag to inform about DFS offload support. For

[PATCH v2 3/4] qtnfmac: implement asynchronous firmware loading

2018-02-10 Thread Sergey Matyukevich
In pci probe() function start firmware loading, protocol handshake and driver core initialization, and not wait for completion. Signed-off-by: Sergei Maksimenko --- drivers/net/wireless/quantenna/qtnfmac/bus.h | 3 +-

[PATCH v2 1/4] qtnfmac: fix releasing Tx/Rx data buffers

2018-02-10 Thread Sergey Matyukevich
and DMA allocations are released. Signed-off-by: Sergey Matyukevich <sergey.matyukevich...@quantenna.com> --- .../net/wireless/quantenna/qtnfmac/pearl/pcie.c| 30 +- 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/drivers/net/wireless/quantenna/qtnfmac

[PATCH v2 2/4] qtnfmac: enable reloading of qtnfmac kernel modules

2018-02-10 Thread Sergey Matyukevich
Sergei Maksimenko <smaksime...@quantenna.com> Signed-off-by: Sergey Matyukevich <sergey.matyukevich...@quantenna.com> --- drivers/net/wireless/quantenna/qtnfmac/pearl/pcie.c | 15 ++- drivers/net/wireless/quantenna/qtnfmac/pearl/pcie_ipc.h | 1 + .../wireless/quant

[PATCH v2 4/4] qtnfmac: enable networked standby mode on device inactivity

2018-02-10 Thread Sergey Matyukevich
From: Sergei Maksimenko Enable support of networked standby mode (NSM) on qsr10g devices. Networked standby is a power saving mode when the device keeps all existing network connections and returns to full power mode on a network activity. When enabled, device enters

[PATCH v2 0/4] qtnfmac: qsr10g pcie backend updates

2018-02-10 Thread Sergey Matyukevich
xes are reworked by that patch anyway Sergei Maksimenko (3) qtnfmac: implement asynchronous firmware loading qtnfmac: enable reloading of qtnfmac kernel modules qtnfmac: enable networked standby mode on device Sergey Matyukevich (1) qtnfmac: fix releasing Tx/Rx data buffers bu

Re: [PATCH 4/6] qtnfmac: fix rmmod for missing firmware

2018-02-08 Thread Sergey Matyukevich
Hello Arend, Thanks for review. > > Check that firmware exists prior to starting firmware download. > > Why would you do that? It seems expensive given that you obtain the > firmware and discard it immediately just to check it exists. Especially, > given that such a call can take 60 seconds to

[PATCH 6/6] qtnfmac: enable networked standby mode on device inactivity

2018-02-05 Thread Sergey Matyukevich
From: Sergei Maksimenko Enable support of networked standby mode (NSM) on qsr10g devices. Networked standby is a power saving mode when the device keeps all existing network connections and returns to full power mode on a network activity. When enabled, device enters

[PATCH 4/6] qtnfmac: fix rmmod for missing firmware

2018-02-05 Thread Sergey Matyukevich
Check that firmware exists prior to starting firmware download. Signed-off-by: Sergey Matyukevich <sergey.matyukevich...@quantenna.com> --- drivers/net/wireless/quantenna/qtnfmac/pearl/pcie.c | 20 1 file changed, 20 insertions(+) diff --git a/drivers/net/wireless/qua

[PATCH 5/6] qtnfmac: implement asynchronous firmware loading

2018-02-05 Thread Sergey Matyukevich
From: Sergei Maksimenko In pci probe() function start firmware loading, protocol handshake and driver core initialization, and not wait for completion. Signed-off-by: Sergei Maksimenko --- drivers/net/wireless/quantenna/qtnfmac/bus.h

  1   2   3   >