From patchwork Thu Jun 29 03:52:54 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Abhishek Kumar X-Patchwork-Id: 114138 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:994d:0:b0:3d9:f83d:47d9 with SMTP id k13csp9378180vqr; Wed, 28 Jun 2023 21:01:10 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ7t6LsqcG0l41TlHo8msxYV1Kp64jehFnr5B26NNsmtB7hgFjGg1o78TDo20fck1pQLQwTQ X-Received: by 2002:a05:6a00:240f:b0:64b:256:204c with SMTP id z15-20020a056a00240f00b0064b0256204cmr43028865pfh.20.1688011270685; Wed, 28 Jun 2023 21:01:10 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1688011270; cv=none; d=google.com; s=arc-20160816; b=bqmM4FZIAFVx3hMj8y+LL5f06yqo27H2gdZINt68UFYO+VxdeJ8tYbf6sRVjCIXTl5 LFuT4E3N6xZMU94cf4odY1h6RywuC0yhF6qxNoR3L73Q4vzERbzIrPRTWTHpmNb1A6KH 75/wrhaigbPlQuSJwdZghlyigEmltqfKI7nu0tIn5gZDvPl5Dm4hIzUIxO0wKzNR94d0 hfmTzRVcmnKTMfxa3/0/TZxIBJtapBWgm5zcVYqmstvlbTCF8SxLrIwokjPpxwYOKGBf e9bEBywtZOcoJ0L6wnYTMGC6O6t/mx1+teIdH5zRA08SQEBQ8hUWnKXKfKpjimw+Pkw5 6ijg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=PgRCWuAL+JILQAuJVgnpzN1VGDR5+ycwundGmuPsvAc=; fh=y1fJB49Srmd/28+jWUlkZ2584L7wNxrU3rXHRNkhmcE=; b=ukJqfWpKKk0pz2MEt1Mf0FSApwk7V3lOktlEr8ojIt72tkl9yVXFzXiWeT5DB9Pxud wK67xhjYZNIT62rMgwFbt7WW6OldiUgHlOc4eFARHBWfS3QlzxaOqD3HPvdECgJBjRkL cL98v5T1BEUOegArEDjO58HIy8jq81PfOSTvqueIu4tj75/G5Jju1ZIFS4pxv4ibs20h 818DJ17llAH2l6ZwoD7+7LdZOnJjQWmzTEd0eWLTHpEqq4++fTKZHIAtIE1y+4fIq4yr dMLZyNJ4zDJOF9rnWqCAtTJH5gPTcm0fDD3LLQYDQGVSVkJ0DMTHGestP2qyytqaTHvg qE6w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@chromium.org header.s=google header.b="Zp7/05od"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id eg7-20020a056a00800700b006787eff7ac6si6312010pfb.404.2023.06.28.21.00.57; Wed, 28 Jun 2023 21:01:10 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@chromium.org header.s=google header.b="Zp7/05od"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231953AbjF2Dya (ORCPT + 99 others); Wed, 28 Jun 2023 23:54:30 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42972 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231989AbjF2DyC (ORCPT ); Wed, 28 Jun 2023 23:54:02 -0400 Received: from mail-pg1-x52f.google.com (mail-pg1-x52f.google.com [IPv6:2607:f8b0:4864:20::52f]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 59E242D7D for ; Wed, 28 Jun 2023 20:54:00 -0700 (PDT) Received: by mail-pg1-x52f.google.com with SMTP id 41be03b00d2f7-55b1238a024so217864a12.0 for ; Wed, 28 Jun 2023 20:54:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1688010840; x=1690602840; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=PgRCWuAL+JILQAuJVgnpzN1VGDR5+ycwundGmuPsvAc=; b=Zp7/05od1Hzmg3DamsY4xVwfn6tMykIurlQXX5Rz4Xuof4ze/XQSv561GpHeqSpoKh 2v+EzzaIXKRz/2+ZwPdbePYm00aj+7lpLYrNJ4hAYEhBfPYw1efyvEasC85ra7aPmZY2 HvVIPX6DZQ3ldkpxDKKby+eFfCylabLuTSQA0= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688010840; x=1690602840; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=PgRCWuAL+JILQAuJVgnpzN1VGDR5+ycwundGmuPsvAc=; b=FULKJ4nMjDsJEx9bzeGx81UiA9Dqi/EqYr3jMs3vfx0OxRKJlrdrA4Gs8PpPk81HAu WCf4gtDtTEq5alKKALVCWp+Or7k3+GdMCrgKTEGTB66KSDztzLGGfXul/w7jthmzquXN hPCXgsVP0MyN33/EKjPNza2kdWfUjDf9Z0YNIlWE7P+ZYNiSWoboKozYNOQWrcUvdJor gW9rz1aNBR9XKvAS8haLi73y05rApuW6ULgEg0KLgqwpMTWDlpfQ7abvscVBrv3lrQer veKD9YxFshyEbUm2Q0DlpSJojWvzF8cuSb12OhRh+YD/SKmkdxDWTgRhVdx1wAybeBYf Gsbg== X-Gm-Message-State: AC+VfDyuvCl/EiqWYyJe6dfNndNFYUonC+bRCAeGsEhHantrBh00503Q euZTkdd19YYqFCF0OIXT6/BnfA== X-Received: by 2002:a05:6a20:1605:b0:115:83f:fce1 with SMTP id l5-20020a056a20160500b00115083ffce1mr48159642pzj.5.1688010839715; Wed, 28 Jun 2023 20:53:59 -0700 (PDT) Received: from kuabhs-cdev.c.googlers.com.com (242.67.247.35.bc.googleusercontent.com. [35.247.67.242]) by smtp.gmail.com with ESMTPSA id r19-20020a634413000000b005579f12a238sm7019842pga.86.2023.06.28.20.53.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 28 Jun 2023 20:53:59 -0700 (PDT) From: Abhishek Kumar To: johannes.berg@intel.com, kvalo@kernel.org Cc: linux-kernel@vger.kernel.org, kuabhs@chromium.org, netdev@vger.kernel.org, ath10k@lists.infradead.org, linux-wireless@vger.kernel.org, "David S. Miller" , Eric Dumazet , Jakub Kicinski , Johannes Berg , Paolo Abeni Subject: [PATCH 1/2] wifi: cfg80211: call reg_call_notifier on beacon hints Date: Thu, 29 Jun 2023 03:52:54 +0000 Message-ID: <20230629035254.1.I059fe585f9f9e896c2d51028ef804d197c8c009e@changeid> X-Mailer: git-send-email 2.41.0.162.gfafddb0af9-goog MIME-Version: 1.0 X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1770008106394941902?= X-GMAIL-MSGID: =?utf-8?q?1770008106394941902?= Currently the channel property updates are not propagated to driver. This causes issues in the discovery of hidden SSIDs and fails to connect to them. This change defines a new wiphy flag which when enabled by vendor driver, the reg_call_notifier callback will be trigger on beacon hints. This ensures that the channel property changes are visible to the vendor driver. The vendor changes the channels for active scans. This fixes the discovery issue of hidden SSID. Signed-off-by: Abhishek Kumar --- include/net/cfg80211.h | 3 +++ net/wireless/reg.c | 20 ++++++++++++-------- 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h index 9e04f69712b1..48e6ebcdacb3 100644 --- a/include/net/cfg80211.h +++ b/include/net/cfg80211.h @@ -4783,6 +4783,8 @@ struct cfg80211_ops { * @WIPHY_FLAG_SUPPORTS_EXT_KCK_32: The device supports 32-byte KCK keys. * @WIPHY_FLAG_NOTIFY_REGDOM_BY_DRIVER: The device could handle reg notify for * NL80211_REGDOM_SET_BY_DRIVER. + * @WIPHY_FLAG_CHANNEL_CHANGE_ON_BEACON: reg_call_notifier() is called if driver + * set this flag to update channels on beacon hints. */ enum wiphy_flags { WIPHY_FLAG_SUPPORTS_EXT_KEK_KCK = BIT(0), @@ -4809,6 +4811,7 @@ enum wiphy_flags { WIPHY_FLAG_SUPPORTS_5_10_MHZ = BIT(22), WIPHY_FLAG_HAS_CHANNEL_SWITCH = BIT(23), WIPHY_FLAG_NOTIFY_REGDOM_BY_DRIVER = BIT(24), + WIPHY_FLAG_CHANNEL_CHANGE_ON_BEACON = BIT(25), }; /** diff --git a/net/wireless/reg.c b/net/wireless/reg.c index 26f11e4746c0..c76bfaad650b 100644 --- a/net/wireless/reg.c +++ b/net/wireless/reg.c @@ -2149,6 +2149,13 @@ static bool reg_is_world_roaming(struct wiphy *wiphy) return false; } +static void reg_call_notifier(struct wiphy *wiphy, + struct regulatory_request *request) +{ + if (wiphy->reg_notifier) + wiphy->reg_notifier(wiphy, request); +} + static void handle_reg_beacon(struct wiphy *wiphy, unsigned int chan_idx, struct reg_beacon *reg_beacon) { @@ -2156,6 +2163,7 @@ static void handle_reg_beacon(struct wiphy *wiphy, unsigned int chan_idx, struct ieee80211_channel *chan; bool channel_changed = false; struct ieee80211_channel chan_before; + struct regulatory_request *lr = get_last_request(); sband = wiphy->bands[reg_beacon->chan.band]; chan = &sband->channels[chan_idx]; @@ -2181,8 +2189,11 @@ static void handle_reg_beacon(struct wiphy *wiphy, unsigned int chan_idx, channel_changed = true; } - if (channel_changed) + if (channel_changed) { nl80211_send_beacon_hint_event(wiphy, &chan_before, chan); + if (wiphy->flags & WIPHY_FLAG_CHANNEL_CHANGE_ON_BEACON) + reg_call_notifier(wiphy, lr); + } } /* @@ -2325,13 +2336,6 @@ static void reg_process_ht_flags(struct wiphy *wiphy) reg_process_ht_flags_band(wiphy, wiphy->bands[band]); } -static void reg_call_notifier(struct wiphy *wiphy, - struct regulatory_request *request) -{ - if (wiphy->reg_notifier) - wiphy->reg_notifier(wiphy, request); -} - static bool reg_wdev_chan_valid(struct wiphy *wiphy, struct wireless_dev *wdev) { struct cfg80211_chan_def chandef = {}; From patchwork Thu Jun 29 03:52:55 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Abhishek Kumar X-Patchwork-Id: 114142 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:994d:0:b0:3d9:f83d:47d9 with SMTP id k13csp9378808vqr; Wed, 28 Jun 2023 21:02:35 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ5r+2JsO3y7LX7CgdFFUPt8/OpU0atFnS0bhwXTAeF43zdqo+FfzboegqHBrvO3bK0Wga3W X-Received: by 2002:a17:902:bcc3:b0:1b3:d608:899a with SMTP id o3-20020a170902bcc300b001b3d608899amr13376287pls.68.1688011355433; Wed, 28 Jun 2023 21:02:35 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1688011355; cv=none; d=google.com; s=arc-20160816; b=eE55IMebxR7T1zIOnzV65IOCVc+udG31EPf0ltOzgTWYKBnTbVEOgkYFKP/m8s/2Gi VuN6eVqxJgc1aqb0A8FU2829qB55xn4+svSg0aCe4uaon2TjEbgCEXNM8JFkJaGSz5sZ OU1pPObIPciomVqJBn7BZKma+hLQVnCurnUD28/F1qiKQWhnGnIyxfXJl81iBdLLajJc g8TLAABo8xUG8XpMii4iIGj33uztmvfzD0dI7se+quHIBVU9mHxTSjH6+s620TcxQ+k+ HGDFjceRyyQ8iHilAFgm6+pxUIXbxTNwCGFGptZI3AAQ9dvz7olBmUQFKgbKXjqiEmv9 wWWA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=g2AHgNaBFK8JfNASOhLGds08CbGR9PY3Il9QtABWRh4=; fh=bNNIrl/m7EJ0/XZEd6thvAFyGLsM8I53myvYwdF1HVg=; b=fp9B1X0qiLnGVh/MzQk0Fa/srlDqsitj+1kSSeMglJH3JAZ+BlbkHLsMaJ251Rsopw ml6QnBQtWiBcCaoUSBhPDcNmAf7IDRGIJ1fp9pxR/+ztV8hemO21RyRls6OGHngjSlDZ IxNcLBD/Ob9k2dmVqE8AbqPrtfTPhIB6Hdg2A+p/tRwzzhEMjoWccdyb7zEEoKQerhuP pMF1xfm20UZR1V3LLG/Y55VwIJJ2nit5plSo8abjEnBv8AZXiec6yHeD4tcXRvvLOtZO GOdGDN3xfoA50toz4N1L99ATR5i4UwxfwZBquLrS8L8xlUBHHL79q7SNNMLVvz3b/sJA o4Dw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@chromium.org header.s=google header.b=et3Vu15o; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id j4-20020a170903028400b001ae014d8d03si10179933plr.432.2023.06.28.21.02.22; Wed, 28 Jun 2023 21:02:35 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@chromium.org header.s=google header.b=et3Vu15o; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231923AbjF2Dyi (ORCPT + 99 others); Wed, 28 Jun 2023 23:54:38 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42880 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230056AbjF2DyK (ORCPT ); Wed, 28 Jun 2023 23:54:10 -0400 Received: from mail-pf1-x435.google.com (mail-pf1-x435.google.com [IPv6:2607:f8b0:4864:20::435]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 517CC30D1 for ; Wed, 28 Jun 2023 20:54:08 -0700 (PDT) Received: by mail-pf1-x435.google.com with SMTP id d2e1a72fcca58-666fb8b1bc8so262453b3a.1 for ; Wed, 28 Jun 2023 20:54:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1688010847; x=1690602847; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=g2AHgNaBFK8JfNASOhLGds08CbGR9PY3Il9QtABWRh4=; b=et3Vu15oD0I0/VTYf3k59eeXyPxFA0clBBCUdHY1eXEFWGvj23bz+/zkFatUsDfBch IR+g/aHslPcC8iJreUR+tFMscRb6bLCjoLCrLTg+pc5CL/NHCvLT1Bez57oah4Kzbj9N G9klaQXXF9rXjC7VFINlryTVLbGlwBCQ2vrcM= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688010847; x=1690602847; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=g2AHgNaBFK8JfNASOhLGds08CbGR9PY3Il9QtABWRh4=; b=l7CdKGyvbxWq7R7sJqVZ8J8hirvi62xd5vhpxBeVEEsV9xIuHedo7c4ubGNLH5tiAM IzfmDKZ6KTjRwmjN0WsFqVP9Ew1S9peZJxpkuW8bnqMbCiNyhv4BV64L3r3oo5lsRWCf KnqVvyqC0oVe1DmxJxSVAZth2zqxoe3s+X08LFcab96QzxtrI7S90NaJzGSCpAX0HuKB 0wH5Wxd+FM2Rrp/Ztfyygk3LmQDVPVJbSUrUN93XSxomam1tZMuoa+rFzgmrOJex/JFy XAY1inx/uurTi9yHDrgii5kXo0qttf55fNEraiqO7wUxwfAdJ+td6KHV/OTvTfYvVj1w tGXA== X-Gm-Message-State: AC+VfDx5OMix7i4nzNelKkd6zuXlaHQO70gShrH7Qgtz2FF6t/vb5uFy 4FCTgYYXZt0oqYvVYsAhZDN6kw== X-Received: by 2002:a05:6a20:7d96:b0:12b:fe14:907e with SMTP id v22-20020a056a207d9600b0012bfe14907emr5996043pzj.20.1688010847675; Wed, 28 Jun 2023 20:54:07 -0700 (PDT) Received: from kuabhs-cdev.c.googlers.com.com (242.67.247.35.bc.googleusercontent.com. [35.247.67.242]) by smtp.gmail.com with ESMTPSA id r19-20020a634413000000b005579f12a238sm7019842pga.86.2023.06.28.20.54.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 28 Jun 2023 20:54:07 -0700 (PDT) From: Abhishek Kumar To: johannes.berg@intel.com, kvalo@kernel.org Cc: linux-kernel@vger.kernel.org, kuabhs@chromium.org, netdev@vger.kernel.org, ath10k@lists.infradead.org, linux-wireless@vger.kernel.org Subject: [PATCH 2/2] ath10k: mac: enable WIPHY_FLAG_CHANNEL_CHANGE_ON_BEACON on ath10k Date: Thu, 29 Jun 2023 03:52:55 +0000 Message-ID: <20230629035254.2.I23c5e51afcc6173299bb2806c8c38364ad15dd63@changeid> X-Mailer: git-send-email 2.41.0.162.gfafddb0af9-goog In-Reply-To: <20230629035254.1.I059fe585f9f9e896c2d51028ef804d197c8c009e@changeid> References: <20230629035254.1.I059fe585f9f9e896c2d51028ef804d197c8c009e@changeid> MIME-Version: 1.0 X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1770008195106759146?= X-GMAIL-MSGID: =?utf-8?q?1770008195106759146?= Enabling this flag, ensures that reg_call_notifier is called on beacon hints from handle_reg_beacon in cfg80211. This call propagates the channel property changes to ath10k driver, thus changing the channel property from passive scan to active scan based on beacon hints. Once the channels are rightly changed from passive to active,the connection to hidden SSID does not fail. Signed-off-by: Abhishek Kumar --- drivers/net/wireless/ath/ath10k/mac.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c index 7675858f069b..12df3228b120 100644 --- a/drivers/net/wireless/ath/ath10k/mac.c +++ b/drivers/net/wireless/ath/ath10k/mac.c @@ -10033,6 +10033,7 @@ int ath10k_mac_register(struct ath10k *ar) ar->hw->wiphy->features |= NL80211_FEATURE_STATIC_SMPS; ar->hw->wiphy->flags |= WIPHY_FLAG_IBSS_RSN; + ar->hw->wiphy->flags |= WIPHY_FLAG_CHANNEL_CHANGE_ON_BEACON; if (ar->ht_cap_info & WMI_HT_CAP_DYNAMIC_SMPS) ar->hw->wiphy->features |= NL80211_FEATURE_DYNAMIC_SMPS;