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

2018-11-05 Thread Igor Mitsyanko
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 on, I think? >> >> Arguably even per-RA/TID, though that seems a little

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

2018-11-05 Thread Igor Mitsyanko
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 on, I think? >> >> Arguably even per-RA/TID, though that seems a little

[PATCH V2 01/11] qtnfmac_pcie: do not store FW name in driver state structure

2018-09-24 Thread Igor Mitsyanko
Firmware name is only needed at probe stage, no point in keeping it in driver state structure. Signed-off-by: Igor Mitsyanko --- drivers/net/wireless/quantenna/qtnfmac/bus.h| 1 - drivers/net/wireless/quantenna/qtnfmac/pearl/pcie.c | 8 2 files changed, 4 insertions(+), 5

[PATCH V2 06/11] qtnfmac_pcie: separate platform-independent PCIe structure

2018-09-24 Thread Igor Mitsyanko
Move platform-independent PCIe data structure to a separate header file so it can be reused by different devices. Signed-off-by: Igor Mitsyanko --- .../wireless/quantenna/qtnfmac/pcie/pcie_priv.h| 70 +++ .../wireless/quantenna/qtnfmac/pcie/pearl_pcie.c | 471

[PATCH V2 07/11] qtnfmac_pcie: rename platform-specific functions

2018-09-24 Thread Igor Mitsyanko
Rename several functions to indicate that they are platform specific. Signed-off-by: Igor Mitsyanko --- .../wireless/quantenna/qtnfmac/pcie/pearl_pcie.c | 101 +++-- 1 file changed, 52 insertions(+), 49 deletions(-) diff --git a/drivers/net/wireless/quantenna/qtnfmac/pcie

[PATCH V2 02/11] qtnfmac_pcie: move Pearl pcie sources to pcie-specific directory

2018-09-24 Thread Igor Mitsyanko
In preparation to extract common qtnfmac PCIe driver sources into a separate file, move existing Pearl-specific pcie driver sources to pcie/ directory. Signed-off-by: Igor Mitsyanko --- drivers/net/wireless/quantenna/qtnfmac/Makefile | 2 +- .../wireless/quantenna/qtnfmac

[PATCH V2 09/11] qtnfmac_pcie: extract platform-independent PCIe code

2018-09-24 Thread Igor Mitsyanko
Extract platform-independent PCIe driver code into a separate file, and use it from platform-specific modules. Signed-off-by: Igor Mitsyanko --- drivers/net/wireless/quantenna/qtnfmac/Makefile| 1 + drivers/net/wireless/quantenna/qtnfmac/pcie/pcie.c | 393 +++ .../wireless

[PATCH V2 05/11] qtnfmac_pcie: pearl: rename spinlock tx0_lock to tx_lock

2018-09-24 Thread Igor Mitsyanko
tx_lock name will later be reused when common pcie code is extracted to separate files. Signed-off-by: Igor Mitsyanko --- drivers/net/wireless/quantenna/qtnfmac/pcie/pearl_pcie.c | 10 +- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/drivers/net/wireless/quantenna

[PATCH V2 00/11] qtnfmac_pcie: extract device-independent PCIe driver code

2018-09-24 Thread Igor Mitsyanko
+ several minor improvements. Changelist V1->V2: PATCH 6: 1. Add SPDX license tag to a new file pcie_priv.h PATCH 7: 1. Fix line over 80 character and opening bracket on a wrong line. PATCH 9: 1. Add SPDX license tag to a new file pcie.c Igor Mitsyanko (11): qtnfmac_pcie: do not store FW n

[PATCH V2 08/11] qtnfmac: add missing header includes to bus.h

2018-09-24 Thread Igor Mitsyanko
A few include directives were missing in bus.h resulting in dependency of include order in other modules. Add missing includes. Signed-off-by: Igor Mitsyanko --- drivers/net/wireless/quantenna/qtnfmac/bus.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/net/wireless/quantenna

[PATCH V2 04/11] qtnfmac_pcie: indicate pearl-specific structures by their names

2018-09-24 Thread Igor Mitsyanko
In preparation to extract common PCIe driver state, indicate PEARL-specific structures by their name and move them to pearl-specific source file. Signed-off-by: Igor Mitsyanko --- .../wireless/quantenna/qtnfmac/pcie/pearl_pcie.c | 89 +- .../quantenna/qtnfmac/pcie

[PATCH V2 10/11] qtnfmac: wait for FW load work to finish at PCIe remove

2018-09-24 Thread Igor Mitsyanko
Waiting for "completion" to be set in FW load thread can not be used in case PCIe remove is called before FW load work was scheduled. Just wait for work completion instead to avoid problems. Signed-off-by: Igor Mitsyanko --- drivers/net/wireless/quantenna/qtnfmac/bus.h | 1 - d

[PATCH V2 03/11] qtnfmac_pcie: rename private Pearl PCIe state structure

2018-09-24 Thread Igor Mitsyanko
In preparation to extract common pcie driver state into a separate structure, rename Pearl-specific state to qtnf_pcie_pearl_state and move it directly to pearl-specific PCIe source file. Signed-off-by: Igor Mitsyanko --- .../wireless/quantenna/qtnfmac/pcie/pearl_pcie.c | 158

[PATCH V2 11/11] qtnfmac_pcie: check for correct CHIP ID at pcie probe

2018-09-24 Thread Igor Mitsyanko
Make sure that wifi device is of supported variant by checking it's CHIP ID before completing a probe sequence. Signed-off-by: Igor Mitsyanko --- .../wireless/quantenna/qtnfmac/pcie/pearl_pcie.c | 24 ++ .../net/wireless/quantenna/qtnfmac/qtn_hw_ids.h| 14

Re: [PATCH 01/11] qtnfmac_pcie: do not store FW name in driver state structure

2018-09-24 Thread Igor Mitsyanko
On 09/24/2018 12:34 AM, Kalle Valo wrote: Igor Mitsyanko SO writes: Firmware name is only needed at probe stage, no point in keeping it in driver state structure. Signed-off-by: Igor Mitsyanko This is just cosmetics, but what's that "SO" in the From field? Do note that

[PATCH 07/11] qtnfmac_pcie: rename platform-specific functions

2018-09-23 Thread Igor Mitsyanko SO
Rename several functions to indicate that they are platform specific. Signed-off-by: Igor Mitsyanko --- .../wireless/quantenna/qtnfmac/pcie/pearl_pcie.c | 100 +++-- 1 file changed, 51 insertions(+), 49 deletions(-) diff --git a/drivers/net/wireless/quantenna/qtnfmac/pcie

[PATCH 06/11] qtnfmac_pcie: separate platform-independent PCIe structure

2018-09-23 Thread Igor Mitsyanko SO
Move platform-independent PCIe data structure to a separate header file so it can be reused by different devices. Signed-off-by: Igor Mitsyanko --- .../wireless/quantenna/qtnfmac/pcie/pcie_priv.h| 83 .../wireless/quantenna/qtnfmac/pcie/pearl_pcie.c | 471

[PATCH 10/11] qtnfmac: wait for FW load work to finish at PCIe remove

2018-09-23 Thread Igor Mitsyanko SO
Waiting for "completion" to be set in FW load thread can not be used in case PCIe remove is called before FW load work was scheduled. Just wait for work completion instead to avoid problems. Signed-off-by: Igor Mitsyanko --- drivers/net/wireless/quantenna/qtnfmac/bus.h | 1 - d

[PATCH 09/11] qtnfmac_pcie: extract platform-independent PCIe code

2018-09-23 Thread Igor Mitsyanko SO
Extract platform-independent PCIe driver code into a separate file, and use it from platform-specific modules. Signed-off-by: Igor Mitsyanko --- drivers/net/wireless/quantenna/qtnfmac/Makefile| 1 + drivers/net/wireless/quantenna/qtnfmac/pcie/pcie.c | 406

[PATCH 05/11] qtnfmac_pcie: pearl: rename spinlock tx0_lock to tx_lock

2018-09-23 Thread Igor Mitsyanko SO
tx_lock name will later be reused when common pcie code is extracted to separate files. Signed-off-by: Igor Mitsyanko --- drivers/net/wireless/quantenna/qtnfmac/pcie/pearl_pcie.c | 10 +- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/drivers/net/wireless/quantenna

[PATCH 08/11] qtnfmac: add missing header includes to bus.h

2018-09-23 Thread Igor Mitsyanko SO
A few include directives were missing in bus.h resulting in dependency of include order in other modules. Add missing includes. Signed-off-by: Igor Mitsyanko --- drivers/net/wireless/quantenna/qtnfmac/bus.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/net/wireless/quantenna

[PATCH 11/11] qtnfmac_pcie: check for correct CHIP ID at pcie probe

2018-09-23 Thread Igor Mitsyanko SO
Make sure that wifi device is of supported variant by checking it's CHIP ID before completing a probe sequence. Signed-off-by: Igor Mitsyanko --- .../wireless/quantenna/qtnfmac/pcie/pearl_pcie.c | 24 ++ .../net/wireless/quantenna/qtnfmac/qtn_hw_ids.h| 14

[PATCH 04/11] qtnfmac_pcie: indicate pearl-specific structures by their names

2018-09-23 Thread Igor Mitsyanko SO
In preparation to extract common PCIe driver state, indicate PEARL-specific structures by their name and move them to pearl-specific source file. Signed-off-by: Igor Mitsyanko --- .../wireless/quantenna/qtnfmac/pcie/pearl_pcie.c | 89 +- .../quantenna/qtnfmac/pcie

[PATCH 01/11] qtnfmac_pcie: do not store FW name in driver state structure

2018-09-23 Thread Igor Mitsyanko SO
Firmware name is only needed at probe stage, no point in keeping it in driver state structure. Signed-off-by: Igor Mitsyanko --- drivers/net/wireless/quantenna/qtnfmac/bus.h| 1 - drivers/net/wireless/quantenna/qtnfmac/pearl/pcie.c | 8 2 files changed, 4 insertions(+), 5

[PATCH 00/11] qtnfmac_pcie: extract device-independent PCIe driver code

2018-09-23 Thread Igor Mitsyanko SO
+ several minor improvements. Igor Mitsyanko (11): qtnfmac_pcie: do not store FW name in driver state structure qtnfmac_pcie: move Pearl pcie sources to pcie-specific directory qtnfmac_pcie: rename private Pearl PCIe state structure qtnfmac_pcie: indicate pearl-specific structures by their names

[PATCH 02/11] qtnfmac_pcie: move Pearl pcie sources to pcie-specific directory

2018-09-23 Thread Igor Mitsyanko SO
In preparation to extract common qtnfmac PCIe driver sources into a separate file, move existing Pearl-specific pcie driver sources to pcie/ directory. Signed-off-by: Igor Mitsyanko --- drivers/net/wireless/quantenna/qtnfmac/Makefile | 2 +- .../wireless/quantenna/qtnfmac

[PATCH 03/11] qtnfmac_pcie: rename private Pearl PCIe state structure

2018-09-23 Thread Igor Mitsyanko SO
In preparation to extract common pcie driver state into a separate structure, rename Pearl-specific state to qtnf_pcie_pearl_state and move it directly to pearl-specific PCIe source file. Signed-off-by: Igor Mitsyanko --- .../wireless/quantenna/qtnfmac/pcie/pearl_pcie.c | 158

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

2018-06-04 Thread Igor Mitsyanko
On 06/04/2018 05:50 AM, Sergey Matyukevich wrote: I think it's better be moved somewhere out of qtnf_wiphy_allocate() as OPS are global for all MACs, while qtnf_wiphy_allocate() is called for each MAC separately. Consider the case of splitting hardware capabilities into two groups: global and

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

2018-05-31 Thread Igor Mitsyanko
On 05/31/2018 02:10 AM, Sergey Matyukevich wrote: From: Sergei Maksimenko 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 @@

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

2018-05-31 Thread Igor Mitsyanko
features: multiple SSIDs and randomized source MACs - basic WoWLAN support: disconnect/magic/pattern triggers -- not yet: PCIe backend suspend/resume, reporting wakeup reason Regards, Sergey All patches except for mine Reviewed-by: Igor Mitsyanko

Re: [PATCH] mac80211: Update last_ack status for all except probing frames

2017-11-06 Thread Igor Mitsyanko
On 11/06/2017 09:44 AM, Rajkumar Manoharan wrote: On Mon, 2017-10-30 at 17:29 -0700, Rajkumar Manoharan wrote: Update last_ack status for all except station probing frames (i.e null data). Otherwise the station inactivity duration is cleared whenever AP is checking presence of idle stations by

Re: [PATCH] mac80211: Update last_ack status for all except probing frames

2017-10-31 Thread Igor Mitsyanko
On 10/30/2017 05:29 PM, Rajkumar Manoharan wrote: Update last_ack status for all except station probing frames (i.e null data). Otherwise the station inactivity duration is cleared whenever AP is checking presence of idle stations by sending null data frame for every inactive threshold

[PATCH V2 2/9] qtnfmac: initialize HT/VHT caps "can override" masks

2017-10-30 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Information on which HT/VHT capabilities can be overridden is reported per-MAC by wireless device. Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> --- drivers/net/wireless/quantenna/qtnfmac/cfg80211.c | 2 ++

[PATCH V2 4/9] qtnfmac: extend "IE set" TLV to include frame type info

2017-10-30 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Specifying frame type for "IE set" TLV will allow to use several TLVs in a single message. Modify users accordingly. Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> --- drivers/net/wireless/quantenna/q

[PATCH V2 3/9] qtnfmac: get rid of PHYMODE capabilities flags

2017-10-30 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Supported WiFi operation modes are now identified per-band based on HT/VHT capabilities of each band. Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> --- drivers/net/wireless/quantenna/qtnfmac/cfg80211.c | 3

[PATCH V2 5/9] qtnfmac: SCAN results: retreive frame type information from "IE set" TLV

2017-10-30 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> "IE set" TLV carries the same information as qlink_event_scan_result::frame_type. Convert the event to make use of TLV and drop frame_type member. While at it, make qlink_event_scan_result structure alignement-safe. Sig

[PATCH V2 9/9] qtnfmac: pass all CONNECT cmd params to wireless card for processing

2017-10-30 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Specifically, following parameters are needed for wireless device configuration but were not available to it before: - HT/VHT capabilities and capabilities masks. - full channel info (not just IEEE number) - BSSID hint - previous

[PATCH V2 0/9] qtnfmac: allow to configure channel, BW, HT/VHT caps

2017-10-30 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> This patchset has a goal to make operational parameters (channel, BW, HT/VHT capabilities) configuration possible for qtnfmac driver. It was part of bigger changeset when it was V1, rest are already applied. Changelist V1->V2

[PATCH V2 8/9] qtnfmac: include HTCAP and VHTCAP into config AP command

2017-10-30 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Include HT/VHT caps directly into command so that they won't have to be searched for in IEs. Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> --- drivers/net/wireless/quantenna/qtnfmac/commands.c | 18 +

[PATCH V2 6/9] qtnfmac: convert "Append IEs" command to QTN_TLV_ID_IE_SET usage

2017-10-30 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Data contained within "Append IEs" command (QLINK_CMD_MGMT_SET_APPIE) duplicates QTN_TLV_ID_IE_SET TLV. Convert the command to use that TLV instead. Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> ---

[PATCH V2 1/9] qtnfmac: use per-band HT/VHT info from wireless device

2017-10-30 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> HT/VHT capabilities must be reported per each band supported by a radio, not for all bands on a radio. Furthermore, driver better not assume any capabilities and just use whetever is reported by device itself. To support this, conver

[PATCH V2 7/9] qtnfmac: configure and start AP interface with a single command

2017-10-30 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Current logic artificially divides "start AP" procedure into three stages: - generic interface configuration (security, channel etc) - IE's processing - enable AP mode on interface This separation would not allow to do

Re: [PATCH 0/8] qtnfmac: misc small features and fixes

2017-10-16 Thread Igor Mitsyanko
On 10/15/2017 01:53 PM, Sergey Matyukevich wrote: Hello Kalle, Igor, and all This patch series includes a number of small features and fixes for qtnfmac driver. Igor Mitsyanko (1): qtnfmac: advertise support of inactivity timeout Sergey Matyukevich (4): qtnfmac: modify full Tx queue error

Re: [PATCH] iw: add command to register and capture mgmt frames

2017-10-16 Thread Igor Mitsyanko
On 10/16/2017 02:24 AM, Johannes Berg wrote: Right, and I didn't originally see the patch as such, just that the discussion (and in particular Julian's suggestion) veered off in that direction. Nevertheless in certain cases it is handy to dump selected types of mgmt frames while system is up

Re: [PATCH] mwifiex: Use put_unaligned_le32

2017-10-05 Thread Igor Mitsyanko
On 10/05/2017 12:07 PM, Himanshu Jha wrote: In this case, the key is CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS. It seems that asm-generic/unaligned.h is set up to include different headers, based on the expected architecture behavior. Yes, asm-generic/unaligned.h looks more appopriate and is

[PATCH V2 5/8] qtnfmac: get rid of QTNF_STATE_AP_START flag

2017-10-04 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> QTNF_STATE_AP_START usage is redundant and imposes additional state synchronization maintenance. We may as well leave state checking to network card and upper layers (cfg80211, nl80211 and userspace). Signed-off-by: Igor Mit

[PATCH V2 8/8] qtnfmac: do not cache current channel info in driver's state

2017-10-04 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Linux Wireless device structure already has current channel information that can be used when needed. Start using it. Since driver's channel info is not used anymore, remove it. Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quan

[PATCH V2 7/8] qtnfmac: make encryption info a part of CONNECT command.

2017-10-04 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Encryption info is a constant part of STA settings, no point to pass it as an optional TLV. Remove QTN_TLV_ID_CRYPTO type as it's not used anymore. Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> --- drivers/

[PATCH V2 2/8] qtnfmac: pass all AP settings to wireless card for processing

2017-10-04 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Modify QLINK START_AP command payload to pass all AP settings contained within struct cfg80211_ap_settings. Make most of settings a constant part of "config AP" command instead of passing it as an optional TLVs. Signed-off-by

[PATCH V2 1/8] qtnfmac: do not cache AP settings in driver structures

2017-10-04 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Cached AP setings are passed to WiFi card right after they are initialized and are never used for anything else. There is no point in keeping them in driver state. Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com>

[PATCH V2 0/8] qtnfmac: get rid of redundant state caching in driver

2017-10-04 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> In many cases qtnfmac driver stores state info (like current channel, interface state) in driver's internal state that is either unused or duplicates information that is available elsewhere. Cleanup driver to get rid of not needed cache

[PATCH V2 4/8] qtnfmac: get rid of QTNF_STATE_AP_CONFIG

2017-10-04 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> QTNF_STATE_AP_CONFIG is redundant and its usage can be safely removed. Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> --- drivers/net/wireless/quantenna/qtnfmac/cfg80211.c | 8 drivers/net/wirele

[PATCH V2 3/8] qtnfmac: pass channel definition to WiFi card on START_AP command

2017-10-04 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Introduce "channel definition" TLV containing full channel description (center frequence for both segments + BW) and pass it to wireless card in a payload to START_AP command. Signed-off-by: Igor Mitsyanko <igor.mitsyan

[PATCH V2 6/8] qtnfmac: do not cache BSS state in per-VIF structure

2017-10-04 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> This cached state is used only once immediately after it is initilized, except for BSSID value that is used for events processing. There is no reason in keeping unused data in driver's state. Signed-off-by: Igor Mitsyanko <igor.

[PATCH V3 5/9] qtnfmac: let wifi card handle channel switch request to the same chan

2017-09-21 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> No reason to verify channel switch request in driver, it can simply be forwarded to wireless device. Device can perform required checks and return appropriate error code, and driver may not even have information on current operational c

[PATCH V3 2/9] qtnfmac: make "Channel change" event report full channel info

2017-09-21 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Specifically, it has to report center frequency, secondary center frequency (for 80+80) and BW. Introduce channel definition structure to qlink and modify channel change event processing function accordingly. Signed-off-by: Igor Mit

[PATCH V3 7/9] qtnfmac: do not cache CSA chandef info

2017-09-21 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> It is never used for anything useful, and all logic is handled by either WiFi card or higher layers. Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> --- drivers/net/wireless/quantenna/qtnfmac/cfg

[PATCH V3 4/9] qtnfmac: do not cache channel info from "connect" command

2017-09-21 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> This makes no sense because real operational channel is choosen based on AP operation, not on what STA is configured to. Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> --- drivers/net/wireless/quantenna/qtnfma

[PATCH V3 9/9] qtnfmac: do not report channel changes until wiphy is registered

2017-09-21 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Wireless device may send "channel changed" event before driver registered this device with wireless core, which will result in warnings. Once device is registered, higher layer will query channel info manually using .get_

[PATCH V3 6/9] qtnfmac: pass VIF info to SendChannel command

2017-09-21 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Do not assume whether wireless device can or can not handle switching several interfaces on a single radio to different channels. Device will handle it itself and will return appropriate error code. Signed-off-by: Igor Mit

[PATCH V3 3/9] qtnfmac: retrieve current channel info from EP

2017-09-21 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Do not try to cache current operational channel info in driver, this is a potential source of synchronization issues + driver does not really need that info. Introduce GET_CHANNEL command and process it appropriately. Signed-off-by

[PATCH V3 1/9] qtnfmac: convert channel width from bitfiled to simple enum

2017-09-21 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> This will allow to use qlink channel width values to specify BW setting corresponding to enum nl80211_chan_width. Current user is converted to apply BIT() macro manually to each individual qlink_channel_width enumeration value. Sign

[PATCH V3 0/9] qtnfmac: more info on current channel from device

2017-09-21 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> This patchset has a goal to start using full current channel information as reported by wireless device (specifically, center freq 1 and 2 and operational BW). It was part of bigger changeset when it was V1. Changelist V2->V3: Do

[PATCH V2 4/9] qtnfmac: do not cache channel info from "connect" command

2017-09-01 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> This makes no sense because real operational channel is choosen based on AP operation, not on what STA is configured to. Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> --- drivers/net/wireless/quantenna/qtnfma

[PATCH V2 5/9] qtnfmac: let wifi card handle channel switch request to the same chan

2017-09-01 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> --- drivers/net/wireless/quantenna/qtnfmac/cfg80211.c | 5 - 1 file changed, 5 deletions(-) diff --git a/drivers/net/wireless/quantenna/qtnfmac/cfg80211.c b

[PATCH V2 7/9] qtnfmac: do not cache CSA chandef info

2017-09-01 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> It is never used for anything useful, and all logic is handled by either WiFi card or higher layers. Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> --- drivers/net/wireless/quantenna/qtnfmac/cfg

[PATCH V2 8/9] qtnfmac: remove unused mac::status field

2017-09-01 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> It is no longer used. Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> --- drivers/net/wireless/quantenna/qtnfmac/commands.c | 1 - drivers/net/wireless/quantenna/qtnfmac/core.h | 5 - drivers/net/wirele

[PATCH V2 6/9] qtnfmac: pass VIF info to SendChannel command

2017-09-01 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> --- drivers/net/wireless/quantenna/qtnfmac/cfg80211.c | 2 +- drivers/net/wireless/quantenna/qtnfmac/commands.c | 5 +++-- drivers/net/wireless/quantenna/qtnfmac/co

[PATCH V2 9/9] qtnfmac: do not report channel changes until wiphy is registered

2017-09-01 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> --- drivers/net/wireless/quantenna/qtnfmac/event.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/net/wireless/quantenna/qtnfmac/event.c b/drivers/

[PATCH V2 3/9] qtnfmac: retrieve current channel info from EP

2017-09-01 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Do not try to cache current operational channel info in driver, this is a potential source of synchronization issues + driver does not really need that info. Introduce GET_CHANNEL command and process it appropriately. Signed-off-by

[PATCH V2 0/9] qtnfmac: more info on current channel from device

2017-09-01 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> This patchset has a goal to start using full current channel information as reported by wireless device (specifically, center freq 1 and 2 and operational BW). It was part of bigger changeset when it was V1. Changelist V1->V2

[PATCH] nl80211: look for HT/VHT capabilities in beacon's tail

2017-08-30 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> There are no HT/VHT capabilities in cfg80211_ap_settings::beacon_ies, these should be looked for in beacon's tail instead. Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> --- This is true for hostapd (at l

Re: [PATCH 00/27] qtnfmac: allow to configure channel, BW, HT/VHT caps

2017-08-30 Thread Igor Mitsyanko
On 08/30/2017 09:28 AM, Kalle Valo wrote: External Email Kalle Valo writes: Kalle Valo writes: igor.mitsyanko...@quantenna.com writes: This patchset has a goal to make operational parameters (channel, BW, HT/VHT capabilities) configuration

Re: [PATCH 00/27] qtnfmac: allow to configure channel, BW, HT/VHT caps

2017-08-30 Thread Igor Mitsyanko
On 08/30/2017 09:16 AM, Kalle Valo wrote: igor.mitsyanko...@quantenna.com writes: This patchset has a goal to make operational parameters (channel, BW, HT/VHT capabilities) configuration possible for qtnfmac driver. Basically the idea is to make driver level as thin as possible, and let

Re: [PATCH 3/5] qtnfmac: modify qtnf_map_bar not to return NULL

2017-08-29 Thread Igor Mitsyanko
On 08/29/2017 05:16 AM, Sergey Matyukevich wrote: NULL is not a special type of success here but a error pointer. So it makes sense to check against NULL in qtnf_map_bar and return error code. Signed-off-by: Sergey Matyukevich --- On a first glance not

Re: [PATCH 3/5] qtnfmac: modify qtnf_map_bar not to return NULL

2017-08-29 Thread Igor Mitsyanko
On 08/29/2017 05:16 AM, Sergey Matyukevich wrote: NULL is not a special type of success here but a error pointer. So it makes sense to check against NULL in qtnf_map_bar and return error code. Signed-off-by: Sergey Matyukevich --- On a first glance not

Re: [PATCH 14/27] qtnfmac: do not cache CSA chandef info

2017-08-29 Thread Igor Mitsyanko
On 08/29/2017 08:44 AM, Sergey Matyukevich wrote: I am ok with removal of CSA chandef info. It was kept mainly to warn about channel switch to the frequency that differs from original CSA request. - if (vif->vifid != 0) { - if (!(mac->status & QTNF_MAC_CSA_ACTIVE)) -

Re: [PATCH 02/27] qtnfmac: make "Channel change" event report full channel info

2017-08-29 Thread Igor Mitsyanko
On 08/29/2017 07:31 AM, Sergey Matyukevich wrote: static int qtnf_event_handle_sta_assoc(struct qtnf_wmac *mac, struct qtnf_vif *vif, @@ -358,41 +359,36 @@ qtnf_event_handle_freq_change(struct qtnf_wmac *mac, u16 len) { struct wiphy *wiphy =

Re: [PATCH 03/27] qtnfmac: retreive current channel info from EP

2017-08-29 Thread Igor Mitsyanko
On 08/29/2017 07:42 AM, Sergey Matyukevich wrote: Typo in commit title: retrieve will fix ... - if (!cfg80211_chandef_valid(>chandef)) { - pr_err("invalid channel settings on %s\n", ndev->name); - return -ENODATA; + if

[PATCH 12/27] qtnfmac: let wifi card handle channel switch request to the same chan

2017-08-24 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> --- drivers/net/wireless/quantenna/qtnfmac/cfg80211.c | 5 - 1 file changed, 5 deletions(-) diff --git a/drivers/net/wireless/quantenna/qtnfmac/cfg80211.c b

[PATCH 06/27] qtnfmac: pass full channel definition to device on start_ap command

2017-08-24 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Introduce chandef TLV and pass it to wireless card on start_ap command processing. No need to cache chandef in driver private structure as it is not used anywhere. Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com>

[PATCH 15/27] qtnfmac: remove unused mac::status field

2017-08-24 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> It is no longer used. Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> --- drivers/net/wireless/quantenna/qtnfmac/commands.c | 1 - drivers/net/wireless/quantenna/qtnfmac/core.h | 5 - drivers/net/wirele

[PATCH 07/27] qtnfmac: get rid of QTNF_STATE_AP_CONFIG

2017-08-24 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> QTNF_STATE_AP_CONFIG is redundant and has no real meaning. Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> --- drivers/net/wireless/quantenna/qtnfmac/cfg80211.c | 8 drivers/net/wireless/quantenna/qtnfma

[PATCH 17/27] qtnfmac: do not report channel changes until wiphy is registered

2017-08-24 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> --- drivers/net/wireless/quantenna/qtnfmac/event.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/net/wireless/quantenna/qtnfmac/event.c b/drivers/

[PATCH 11/27] qtnfmac: make encryption info a part of "connect" command.

2017-08-24 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Encryption info is a constant part of STA settings, no point to pass it as an optional TLV. Remove QTN_TLV_ID_CRYPTO type as it's not used anymore. Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> --- drivers/

[PATCH 16/27] qtnfmac: stop using private driver info about current channel

2017-08-24 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Linux Wireless device structure already has required info. Since driver's info is not used anymore, remove it. Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> --- drivers/net/wireless/quantenna/qtnfmac/cf

[PATCH 20/27] qtnfmac: get rid of PHYMODE capabilities flags

2017-08-24 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Supported WiFi operation modes are now identified per-band based on HT/VHT capabilities of each band. Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> --- drivers/net/wireless/quantenna/qtnfmac/cfg80211.c | 3

[PATCH 13/27] qtnfmac: pass VIF info to SendChannel command

2017-08-24 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> --- drivers/net/wireless/quantenna/qtnfmac/cfg80211.c | 2 +- drivers/net/wireless/quantenna/qtnfmac/commands.c | 5 +++-- drivers/net/wireless/quantenna/qtnfmac/co

[PATCH 26/27] qtnfmac: include HTCAP and VHTCAP into config AP command

2017-08-24 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Include HT/VHT caps directly into command so that they won't have to be searched for in IEs. Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> --- drivers/net/wireless/quantenna/qtnfmac/commands.c | 18 +

[PATCH 18/27] qtnfmac: use per-band HT/VHT info from wireless device

2017-08-24 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> HT/VHT capabilities must be reported per each band supported on a radio, not for all bands on a radio. Furthermore, driver better not assume any capabilities and just use whetever is reported by device itself. To support this, conver

[PATCH 24/27] qtnfmac: configure and start AP interface with a single command

2017-08-24 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Current logic artificially divides "start AP" procedure into three stages: - generic interface configuration (security, channel etc) - IE's processing - enable AP mode on interface This separation would not allow to do

[PATCH 09/27] qtnfmac: do not cache BSS state in per-VIF structure

2017-08-24 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> This cached state is unused, except for BSSID that we will keep. Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> --- drivers/net/wireless/quantenna/qtnfmac/cfg80211.c | 39 -- drivers/net/wirele

[PATCH 22/27] qtnfmac: SCAN results: retreive frame type information from "IE set" TLV

2017-08-24 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> "IE set" TLV carries the same information as qlink_event_scan_result::frame_type. Convert the event to make use of TLV and drop frame_type member. While at it, make qlink_event_scan_result structure alignement-safe. Sig

[PATCH 25/27] nl80211: look for HT/VHT capabilities in beacon's tail

2017-08-24 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> There are no HT/VHT capabilities in cfg80211_ap_settings::beacon_ies, these should be looked for in beacon's tail instead. Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> --- net/wireless/nl80211.c | 4 ++-- 1

[PATCH 19/27] qtnfmac: initialize HT/VHT caps "can override" masks

2017-08-24 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Information on which HT/VHT capabilities can be overridden is reported per-MAC by wireless device. Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> --- drivers/net/wireless/quantenna/qtnfmac/cfg80211.c | 2 ++

[PATCH 23/27] qtnfmac: convert "Append IEs" command to QTN_TLV_ID_IE_SET usage

2017-08-24 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Data contained within "Append IEs" command (QLINK_CMD_MGMT_SET_APPIE) duplicates QTN_TLV_ID_IE_SET TLV. Conver the command to use that TLV instead. Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> ---

[PATCH 21/27] qtnfmac: extend "IE set" TLV to include frame type info

2017-08-24 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Specifying frame type for "IE set" TLV will allow to use several TLVs in a single message. Modify users accordingly. Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> --- drivers/net/wireless/quantenna/q

[PATCH 14/27] qtnfmac: do not cache CSA chandef info

2017-08-24 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> It is never used for anything useful, and all logic is handled by either WiFi card or higher layers. Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> --- drivers/net/wireless/quantenna/qtnfmac/cfg

[PATCH 27/27] qtnfmac: pass all CONNECT cmd params to wireless card for processing

2017-08-24 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> Specifically, following parameters are needed for wireless device configuration but were not available to it before: - HT/VHT capabilities and capabilities masks. - full channel info (not just IEEE number) - BSSID hint - previous

[PATCH 10/27] qtnfmac: do not cache channel info from "connect" command

2017-08-24 Thread igor . mitsyanko . os
From: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> This makes no sense because real operational channel is choosen based on AP operation, not on what STA is configured to. Signed-off-by: Igor Mitsyanko <igor.mitsyanko...@quantenna.com> --- drivers/net/wireless/quantenna/qtnfma

  1   2   >