From patchwork Fri Aug 25 02:30:19 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Igor Mitsyanko X-Patchwork-Id: 9921173 X-Patchwork-Delegate: kvalo@adurom.com Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 035EB600C5 for ; Fri, 25 Aug 2017 02:31:13 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id DF82F205A4 for ; Fri, 25 Aug 2017 02:31:12 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id D4568204C2; Fri, 25 Aug 2017 02:31:12 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.0 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 60BF9205A4 for ; Fri, 25 Aug 2017 02:31:12 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754514AbdHYCbK (ORCPT ); Thu, 24 Aug 2017 22:31:10 -0400 Received: from mail-cys01nam02on0057.outbound.protection.outlook.com ([104.47.37.57]:63780 "EHLO NAM02-CY1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1754484AbdHYCbI (ORCPT ); Thu, 24 Aug 2017 22:31:08 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=quantenna.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=n0p3vMH1mj56SkwbJjXT9tSnZky+fjC425Ir8FGjt3k=; b=hy96FAYQjZdiYgVt8+SILTUxqp4QSe9cHUv1H8WbMHmHz9pn2JIFy4moybP4aU38A8S2yKkz27w0hcJMR4CX2E6YGC8FtK8Dv+h7Wta3McajNPgeh2xpfrTsZeLpAKCVlMyl+/7gNZm+40mlbV9K+HU59M0IHK84KpYn12msJzw= Received: from dodo-dell.quantenna.com (12.131.200.68) by SN1PR0501MB2047.namprd05.prod.outlook.com (10.163.227.20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1385.4; Fri, 25 Aug 2017 02:31:04 +0000 From: igor.mitsyanko.os@quantenna.com To: linux-wireless@vger.kernel.org Cc: sergey.matyukevich.os@quantenna.com, avinashp@quantenna.com, johannes@sipsolutions.net, Igor Mitsyanko Subject: [PATCH 22/27] qtnfmac: SCAN results: retreive frame type information from "IE set" TLV Date: Thu, 24 Aug 2017 19:30:19 -0700 Message-Id: <20170825023024.10565-23-igor.mitsyanko.os@quantenna.com> X-Mailer: git-send-email 2.9.5 In-Reply-To: <20170825023024.10565-1-igor.mitsyanko.os@quantenna.com> References: <20170825023024.10565-1-igor.mitsyanko.os@quantenna.com> MIME-Version: 1.0 X-Originating-IP: [12.131.200.68] X-ClientProxiedBy: CY4PR15CA0017.namprd15.prod.outlook.com (10.172.74.27) To SN1PR0501MB2047.namprd05.prod.outlook.com (10.163.227.20) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 5905fee2-7457-46e4-df45-08d4eb6155e9 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(300000503095)(300135400095)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:SN1PR0501MB2047; X-Microsoft-Exchange-Diagnostics: 1; SN1PR0501MB2047; 3:jC6uEyP+1P7nrmq2Kch/GFqxQJfGOO+SLnmil/5PFqLLcNfJvLvzXFJarjmwagweLU5so0FPF8PZtgmiebfGcDNi0/d8O8HX7RCu3F12w503Odnlin+JmQexbyTJMUdOY1pqXYCuNc5AU/ZMUFvIZQqk4b6sKydqKGT44kARWQ6LD4d8vhF/8wYgIvI6TLyzn589Yf9HCxnD2gVxo6AvHllTEAr7crevrqwFvniWbLTDzAl/wpA/jMEAq6hek+H2; 25:u5AopSF2yUscRZS0IhkbSTrlnr+jqt6oCYhUINdSUk3Kv6v/bfNv8V9A5GSSudRtEDktRfKcnQU+QLpXZfU8bKqbgTDaBcx6RxZKKDoFeE2v3HR/0I7Pff8pmr5E0nxlkrg+0BH0IuKU1+QAtBot6DTXgpiDG69XnqXFfRtUZNLJTtsvMqXGFHZ0bY8FqrUN0qECB2dfy3ULZ1bzK0KUQi99xp+Q92YiEV/NWB2fKLA+QBWgjcuAcVVj5NR155xSYoYyFFuaBaH5oU4etsKCPQKoBZZejXsWRdeahp8hW1Ez2VmjfNO/YEwSot3uACcli4C4tb3demUeCrbGBgdHow==; 31:OcBmaDBEv3RZaN7qavQsBSxAraIG5Qt/cATJOjxqXzKCpB8eqrd95k2lQ/vrvmZMcagCxjzIVHwLJB6U8cAejhbCGwBtlbLFOcfNwf2RcbwjAFAbmFiG8r0zTe7m90B3NFuATtnkFJ/mPDOv0enTOXgTyN6lDiGrZZnc9ylsJ1f9qsreAl3Ucd8Kqf7BRp0ZGGx8TfsQqAQWAgDmXTEXP5XgWw3tA8IL9JMZtcoABzI= X-MS-TrafficTypeDiagnostic: SN1PR0501MB2047: X-Microsoft-Exchange-Diagnostics: 1; SN1PR0501MB2047; 20:pMJc+CRwz9WHmvoeN9lRezoRpNzSAdYfwZ0SCTQx3Dv9Yd7ErMtqBxQB3gVfP5T+JlEwGrVzVpgCepN8ub7MNYKQ6XiVLbuyOjwSqll4rbdG7fhP9pyQjQpnAGGT1WldE8DVm27/4KXGq/RnCrB/vIocqnWMXmz2uTKzT2iz37EUr94BQsFKIW2W4nvscvPjnQAsJCXfql/BJQnaCrzqGXmcgWZ3iTwg1KNWeDqmlDrxdVe/FsWv4Iehitlq5oOXkUZ1QP/meTOCbhGUfdKUPqqx5uS5ZRi+RYMW6aK7IzPDfsUf1Xcvs2wDb+YU/dzU1+UUxzuRWdlLMBcNaALPIvU9zrWvL4llZRFfGGfGFVOtUUCPv0UTunpktf7mh5vGaM6t1dtcvZQu5VmXwinzQo+MIJ3K6fwQv/1fWUj+p5w+QvXh+2BUQQMVAkegkXx7XpCeVUwSzBZvr9WUjUdRWDjvOjZKlpffrJFEcaPjzZHuwhP7TV/EeTVgHVB+V+IEhAimw9Fg7eP80jYiWTQX4FzsExrtMKvuLkdxh4KP2z6kQV3e7Qi3WvrUeYtE129LmseNPQQoJid1Iyhyfi1mupmdh9TkOWOePCLyTNz4ZbA=; 4:tEApcTVLRCRrRO0hBLYdzozAeHoFIbeuZ5JwLpQNGMgyD/7SQtDmFGhchaxtTLTCtJ0Rsq5GI9z/DWz8j8wijgwnZxKyFp7jQIcwVfvAZWuDi8cjNNKNmKkMWb/HSOqweskFxebGFf9IglBZPDim2lzbTlP/OROgjq40peCVHjtOnWnXKMMvt6Fqouftu0R9sSwQ/jKcZlIaGACKUk9fV0Z81pNnrTFhfiL4ulNssB7fmsVwNyg7jMFd8N4JtuYR X-Exchange-Antispam-Report-Test: UriScan:; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(5005006)(8121501046)(100000703101)(100105400095)(93006095)(93001095)(3002001)(10201501046)(6041248)(20161123558100)(20161123564025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123562025)(20161123560025)(20161123555025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:SN1PR0501MB2047; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:SN1PR0501MB2047; X-Forefront-PRVS: 041032FF37 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(7370300001)(4630300001)(6009001)(39830400002)(199003)(189002)(76176999)(53416004)(50986999)(110136004)(7350300001)(6916009)(6666003)(2950100002)(47776003)(2906002)(9686003)(53936002)(66066001)(2361001)(106356001)(105586002)(2351001)(86362001)(305945005)(33646002)(575784001)(7736002)(42186005)(81166006)(81156014)(107886003)(8676002)(103116003)(478600001)(85782001)(68736007)(50226002)(50466002)(3846002)(6486002)(25786009)(36756003)(97736004)(5660300001)(1076002)(6116002)(69596002)(5003940100001)(101416001)(4326008)(189998001)(48376002)(85772001); DIR:OUT; SFP:1101; SCL:1; SRVR:SN1PR0501MB2047; H:dodo-dell.quantenna.com; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; Received-SPF: None (protection.outlook.com: quantenna.com does not designate permitted sender hosts) Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=igor.mitsyanko.os@quantenna.com; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; SN1PR0501MB2047; 23:SJUDP0FDuIi1yLHmlSQDISL4Wba7gsZ19Qph3Dy?= =?us-ascii?Q?PCz38SUQ2bMAe9pq/Uab1VBiPQMUPQ/ZTeGgSqQo4hJQ7Wn/xjvCFPqQTvKI?= =?us-ascii?Q?rdfHwDmwkuC7MQ6BHaSAXaGrvJQELZo4bhWjZpdXvH6YbM63O/97AwllNXkJ?= =?us-ascii?Q?8TXwT7c8S0g9dtlgmxzC5ZpkvPiv0X3oa/2r0G4uQ91HgdCHHc+PpaeFxL9W?= =?us-ascii?Q?0+BXCv39LdobWGNdN4QJpjPkfH9tQhmZDReI4Em4TTKrVlogz4BAVg9MU+i6?= =?us-ascii?Q?Dc1jAKEFgWg7vUlJpi22I3TgyFqvfoWiVTT/iY7X6C4gy+/lXUO5eh/XBUxK?= =?us-ascii?Q?hXnOztr+kRaLP0CCnYTtWhUDiuZvTrBDBDCCMmEy9dLRTqhZKuZ3HqkNRlSf?= =?us-ascii?Q?H1ofn0x6b68dn/326RYKeQvWVlHH5Kbu1ihmPAZBMvmFAzPJxx0IkmS7WYih?= =?us-ascii?Q?OMDFd+bZZUohA6NNkgR1jzzL3GiqXeUegVwOkMwvJB6ZlO2mLHYR/nViSCvo?= =?us-ascii?Q?fdgP7h7ab6VwBNsGJsKg6s/5Ar7fJAYFZkJXQHCMLhuZaLTuwl806qVJ9eeB?= =?us-ascii?Q?BHd3iNZIMLuSUzhGToE9bE6a6QBMFfTt1adV+dfOf0sT21y2uqqqRsC4vTzE?= =?us-ascii?Q?bSTMPe/FZ44vt67/ipMSJX5/TQGAnRkcupZO7KQdnyAsU77xuNHyDgfFwS+E?= =?us-ascii?Q?/xXWWx+K/lxWl3NAOkTZVcc9crjwEoSoqV2crrhZZBz2nbmV/jMEsQ9kt+VJ?= =?us-ascii?Q?9nqFQ76uRE8x9hJcPGh+zQs7My4nWg80FFI5ZVEWF8nHaY0LhwF1qlAdTz0+?= =?us-ascii?Q?ATdgYs+Rd4Ecoznr6BuO1HzT679gEWq5FJvN1o2viezqQYC7Xy4ULWRGhYDh?= =?us-ascii?Q?eMM0vOH7J6D7JOWuuh7Q097zqCWWV8ZP4qNRxUIqVt7hAxYPA2D3KyIDCZ3Y?= =?us-ascii?Q?n5wmewKSzUHBq0bxgU4SYdfx+lTZnLLJehyE5uue2PIiFOd+9Bpafsq4B/Ir?= =?us-ascii?Q?A8GyQYLlTNEGkY9h1PIV9CB8+0fPK4MuMA56ZaXq5Nq022IeKdA9wqSeBX6h?= =?us-ascii?Q?UB2becZ1EXq8+ueyC274oBFuEdVLd2NwoetrHrGVSSmqZiJ4LQogqhQTsuYg?= =?us-ascii?Q?lqlTOjQ9g1GLiDK/pSK9SOEHxFLvdveUeSgTjvzIT6f6fWYt2WjEw+QAz0rA?= =?us-ascii?Q?jRPA02rhGqkZdzejcQ5SjNTYDfA6a7JgA2ZdyxSO4xdVFQfupbyXA/w6mMWq?= =?us-ascii?Q?7u7qv861NS62JlMuhKv9ypgClmGnsATxuqdNmEomWFG4gxxJSgAXNWANkHt8?= =?us-ascii?Q?IMQ=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1; SN1PR0501MB2047; 6:inAvniExFTaDYZkxRYdHyUqEg7HzG5w4Xrffa8udxYvmE2Wv/xCKR4AmX75ns1YMl5eK3CRWWeTTlWgziJy4vEOlrJ+FcGnjykkc3pH6+7DXvireJEeSzqKfU+UglK48gsOfj9+T5HnnZDAHSqFmJ39sTEWUw2iyAK7IMaYViMccXsZyf6KFzuftnxwp3Cf2dhOpWi9tUlVTRMMHiSvMkRKYFetZd3qrTYOzkKt/0iPZo/9NBMxR036wokAUki+UJLD+rLWhBT+5RD57bWXF/oYsxXBZNhuMVaEllpi8da4jaE4/w4+ZBAkKcUxgCNmqgulg/snvJ3X+EyCERvl0JA==; 5:8i1srS0blnPpRrAG68080qr/bTtAZ6Y/LFPCdY/B/CtQu2XsWgBQwbT6pe2hKAgQ13ge4XwddFPoHOSLaoUSI5dFLbCxGIu30vrvC73ivRuN3iRhN9dzQbJOb1Fbj+RuiLJI8P5NZPQoj5IqqNpBhw==; 24:KFk+me96icWW7rc9GMce5kQ7jJsbMnN9xoQqbGAFmdpwjcE6LihvIR7UF2eZcqzgY9CC0Kd0AZ/AJeO4c6n/cNi3rkDESD2AuGEB50oZzuM=; 7:ij8Y6hrjXwrF++r1/usL5voFQDxM499oNXqUJDbJbzaf04TES3KIQ6vpFFx7M/CO2gqvjDaJlmmod5NiIFvsxwLvReY14FZJA7sU5JzB3ozMwJT8UsU95TKvrlKfir/edZQgHnveP1zmxHqHn3qK0ChtHzbjude2isHCtcSq9tT+LqNE/piIaqAkKBNsJ/v5IyxYWPorbeRgAWM4v9pwZyHpfadiKtN4cMtzFGFcvvQ= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: quantenna.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Aug 2017 02:31:04.6202 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN1PR0501MB2047 Sender: linux-wireless-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP From: Igor Mitsyanko "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. Signed-off-by: Igor Mitsyanko --- drivers/net/wireless/quantenna/qtnfmac/event.c | 25 ++++++++++++------------- drivers/net/wireless/quantenna/qtnfmac/qlink.h | 11 ++--------- 2 files changed, 14 insertions(+), 22 deletions(-) diff --git a/drivers/net/wireless/quantenna/qtnfmac/event.c b/drivers/net/wireless/quantenna/qtnfmac/event.c index c2452dc..5fb0ead 100644 --- a/drivers/net/wireless/quantenna/qtnfmac/event.c +++ b/drivers/net/wireless/quantenna/qtnfmac/event.c @@ -252,13 +252,12 @@ qtnf_event_handle_scan_results(struct qtnf_vif *vif, struct cfg80211_bss *bss; struct ieee80211_channel *channel; struct wiphy *wiphy = priv_to_wiphy(vif->mac); - enum cfg80211_bss_frame_type frame_type; + enum cfg80211_bss_frame_type frame_type = CFG80211_BSS_FTYPE_UNKNOWN; size_t payload_len; u16 tlv_type; u16 tlv_value_len; size_t tlv_full_len; const struct qlink_tlv_hdr *tlv; - const u8 *ies = NULL; size_t ies_len = 0; @@ -275,17 +274,6 @@ qtnf_event_handle_scan_results(struct qtnf_vif *vif, return -EINVAL; } - switch (sr->frame_type) { - case QLINK_BSS_FTYPE_BEACON: - frame_type = CFG80211_BSS_FTYPE_BEACON; - break; - case QLINK_BSS_FTYPE_PRESP: - frame_type = CFG80211_BSS_FTYPE_PRESP; - break; - default: - frame_type = CFG80211_BSS_FTYPE_UNKNOWN; - } - payload_len = len - sizeof(*sr); tlv = (struct qlink_tlv_hdr *)sr->payload; @@ -308,6 +296,17 @@ qtnf_event_handle_scan_results(struct qtnf_vif *vif, ie_len = tlv_value_len - (sizeof(*ie_set) - sizeof(ie_set->hdr)); + switch (ie_set->type) { + case QLINK_IE_SET_BEACON_IES: + frame_type = CFG80211_BSS_FTYPE_BEACON; + break; + case QLINK_IE_SET_PROBE_RESP_IES: + frame_type = CFG80211_BSS_FTYPE_PRESP; + break; + default: + frame_type = CFG80211_BSS_FTYPE_UNKNOWN; + } + if (ie_len) { ies = ie_set->ie_data; ies_len = ie_len; diff --git a/drivers/net/wireless/quantenna/qtnfmac/qlink.h b/drivers/net/wireless/quantenna/qtnfmac/qlink.h index ecf493d..e584d2e 100644 --- a/drivers/net/wireless/quantenna/qtnfmac/qlink.h +++ b/drivers/net/wireless/quantenna/qtnfmac/qlink.h @@ -872,12 +872,6 @@ struct qlink_event_rxmgmt { u8 frame_data[0]; } __packed; -enum qlink_frame_type { - QLINK_BSS_FTYPE_UNKNOWN, - QLINK_BSS_FTYPE_BEACON, - QLINK_BSS_FTYPE_PRESP, -}; - /** * struct qlink_event_scan_result - data for QLINK_EVENT_SCAN_RESULTS event * @@ -887,7 +881,6 @@ enum qlink_frame_type { * @capab: capabilities field. * @bintval: beacon interval announced by discovered BSS. * @signal: signal strength. - * @frame_type: frame type used to get scan result, see &enum qlink_frame_type. * @bssid: BSSID announced by discovered BSS. * @ssid_len: length of SSID announced by BSS. * @ssid: SSID announced by discovered BSS. @@ -900,10 +893,10 @@ struct qlink_event_scan_result { __le16 capab; __le16 bintval; s8 signal; - u8 frame_type; - u8 bssid[ETH_ALEN]; u8 ssid_len; u8 ssid[IEEE80211_MAX_SSID_LEN]; + u8 bssid[ETH_ALEN]; + u8 rsvd[2]; u8 payload[0]; } __packed;