Commit Graph

4205 Commits

Author SHA1 Message Date
David Arcari 73087d2ade thermal: core: Allow thermal zones to tell the core to ignore them
JIRA: https://issues.redhat.com/browse/RHEL-61357
Conflicts: 3f3126515fbe ("wifi: iwlwifi: mvm: add mvm-specific guard") is
	   not in RHEL

commit e528be3c87be953b73e7826a2d7e4b837cbad39d
Author: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Date:   Wed Jul 17 21:45:02 2024 +0200

    thermal: core: Allow thermal zones to tell the core to ignore them

    The iwlwifi wireless driver registers a thermal zone that is only needed
    when the network interface handled by it is up and it wants that thermal
    zone to be effectively ignored by the core otherwise.

    Before commit a8a261774466 ("thermal: core: Call monitor_thermal_zone()
    if zone temperature is invalid") that could be achieved by returning
    an error code from the thermal zone's .get_temp() callback because the
    core did not really handle errors returned by it almost at all.
    However, commit a8a261774466 made the core attempt to recover from the
    situation in which the temperature of a thermal zone cannot be
    determined due to errors returned by its .get_temp() and is always
    invalid from the core's perspective.

    That was done because there are thermal zones in which .get_temp()
    returns errors to start with due to some difficulties related to the
    initialization ordering, but then it will start to produce valid
    temperature values at one point.

    Unfortunately, the simple approach taken by commit a8a261774466,
    which is to poll the thermal zone periodically until its .get_temp()
    callback starts to return valid temperature values, is at odds with
    the special thermal zone in iwlwifi in which .get_temp() may always
    return an error because its network interface may always be down.  If
    that happens, every attempt to invoke the thermal zone's .get_temp()
    callback resulting in an error causes the thermal core to print a
    dev_warn() message to the kernel log which is super-noisy.

    To address this problem, make the core handle the case in which
    .get_temp() returns 0, but the temperature value returned by it
    is not actually valid, in a special way.  Namely, make the core
    completely ignore the invalid temperature value coming from
    .get_temp() in that case, which requires folding in
    update_temperature() into its caller and a few related changes.

    On the iwlwifi side, modify iwl_mvm_tzone_get_temp() to return 0
    and put THERMAL_TEMP_INVALID into the temperature return memory
    location instead of returning an error when the firmware is not
    running or it is not of the right type.

    Also, to clearly separate the handling of invalid temperature
    values from the thermal zone initialization, introduce a special
    THERMAL_TEMP_INIT value specifically for the latter purpose.

    Fixes: a8a261774466 ("thermal: core: Call monitor_thermal_zone() if zone temperature is invalid")
    Closes: https://lore.kernel.org/linux-pm/20240715044527.GA1544@sol.localdomain/
    Reported-by: Eric Biggers <ebiggers@kernel.org>
    Reported-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
    Link: https://bugzilla.kernel.org/show_bug.cgi?id=201761
    Tested-by: Oleksandr Natalenko <oleksandr@natalenko.name>
    Tested-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
    Cc: 6.10+ <stable@vger.kernel.org> # 6.10+
    Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
    Link: https://patch.msgid.link/4950004.31r3eYUQgx@rjwysocki.net
    [ rjw: Rebased on top of the current mainline ]
    Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>

Signed-off-by: David Arcari <darcari@redhat.com>
2025-02-17 13:35:04 -05:00
David Arcari 70743da75c thermal: core: Eliminate writable trip points masks
JIRA: https://issues.redhat.com/browse/RHEL-61357
Conflicts: - moved thermal_zone_device_type to the correct location in
	     drivers/thermal/thermal_core.c
	   - out of order commits in drivers/acpi/thermal.c results
	     in minor difference
	   - Also dropped unsupported bits from:
	   	drivers/thermal/st/st_thermal.c
	        drivers/thermal/imx_thermal.c
	        drivers/thermal/da9062-thermal.c
	        drivers/platform/x86/acerhdf.c

commit 4a62d588a84e13c68017bd16bc9c2531a2cde08f
Author: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Date:   Thu Feb 22 19:09:16 2024 +0100

    thermal: core: Eliminate writable trip points masks

    All of the thermal_zone_device_register_with_trips() callers pass zero
    writable trip points masks to it, so drop the mask argument from that
    function and update all of its callers accordingly.

    This also removes the artificial trip points per zone limit of 32,
    related to using writable trip points masks.

    No intentional functional impact.

    Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
    Reviewed-by: Daniel Lezcano <daniel.lezcano@linaro.org>

Signed-off-by: David Arcari <darcari@redhat.com>
2025-02-17 13:34:59 -05:00
David Arcari ec9187c619 wifi: iwlwifi: mvm: Set THERMAL_TRIP_FLAG_RW_TEMP directly
JIRA: https://issues.redhat.com/browse/RHEL-61357

commit 96c5330bf75839a31d6fdf953fade6e9fbf30bde
Author: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Date:   Mon Feb 12 19:38:07 2024 +0100

    wifi: iwlwifi: mvm: Set THERMAL_TRIP_FLAG_RW_TEMP directly

    It is now possible to flag trip points with THERMAL_TRIP_FLAG_RW_TEMP
    to allow their temperature to be set from user space via sysfs instead
    of using a nonzero writable trips mask during thermal zone registration,
    so make the iwlwifi code do that.

    No intentional functional impact.

    Note that this change is requisite for dropping the mask argument from
    thermal_zone_device_register_with_trips() going forward.

    Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
    Reviewed-by: Daniel Lezcano <daniel.lezcano@linaro.org>

Signed-off-by: David Arcari <darcari@redhat.com>
2025-02-17 13:34:59 -05:00
Patrick Talbert 9ef902a9fd Merge: Wireless bugfixes (v6.12)
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/6167

JIRA: https://issues.redhat.com/browse/RHEL-73817

JIRA: https://issues.redhat.com/browse/RHEL-72322
CVE: CVE-2024-56535
JIRA: https://issues.redhat.com/browse/RHEL-72111
CVE: CVE-2024-53156
JIRA: https://issues.redhat.com/browse/RHEL-72421
CVE: CVE-2024-53190
JIRA: https://issues.redhat.com/browse/RHEL-73669
CVE: CVE-2024-48873
JIRA: https://issues.redhat.com/browse/RHEL-72282
CVE: CVE-2024-56602
JIRA: https://issues.redhat.com/browse/RHEL-74089
CVE: CVE-2024-57898

Tested: basic testing with several supported WiFi cards (Intel, Qualcomm, Mediatek and Realtek).

Wireless bugfixes (v6.12)

Upstream status: linux.git, wireless-next.git

Not important commits of related series:
Omitted-fix: 0572b7715ffd wifi: iwlwifi: be less noisy if the NIC is dead in S3
Omitted-fix: 7bf2f8fe4237 wifi: rtw89: 8852c: rfk: remove unnecessary assignment of return value of _dpk_dgain_read()
Not important fix to be included in the next update:
Omitted-fix: e47f0a589854 wifi: rtw89: fix proceeding MCC with wrong scanning state after sequence changes

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>

Approved-by: Kamal Heib <kheib@redhat.com>
Approved-by: mheib <mheib@redhat.com>
Approved-by: Jarod Wilson <jarod@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>

Merged-by: Patrick Talbert <ptalbert@redhat.com>
2025-02-10 03:47:13 -05:00
CKI Backport Bot cdf341ff9f wifi: iwlwifi: bump FW API to 94 for BZ/SC devices
JIRA: https://issues.redhat.com/browse/RHEL-74377

commit 1bf5964efe9a58e6460232c3294609d686642528
Author: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Date:   Tue Oct 8 07:25:20 2024 +0300

    wifi: iwlwifi: bump FW API to 94 for BZ/SC devices

    Start supporting API version 94 for those devices.

    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20241008072037.7ddabbd42131.Ib8bd35521a317c14b3a2a2e5983cf5bca5e8718b@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: CKI Backport Bot <cki-ci-bot+cki-gitlab-backport-bot@redhat.com>
2025-01-22 17:41:07 +00:00
Jose Ignacio Tornos Martinez 757b3d348b wifi: iwlwifi: fix CRF name for Bz
JIRA: https://issues.redhat.com/browse/RHEL-73817

commit 0e8c52091633b354b12d0c29a27a22077584c111
Author: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Date:   Thu Dec 12 13:29:42 2024 +0200

    wifi: iwlwifi: fix CRF name for Bz
    
    We had BE201 hard coded.
    Look at the RF_ID and decide based on its value.
    
    Fixes: 6795a37161fb ("wifi: iwlwifi: Print a specific device name.")
    Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20241212132940.b9eebda1ca60.I36791a134ed5e538e059418eb6520761da97b44c@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2025-01-15 17:26:25 +01:00
Jose Ignacio Tornos Martinez e0b35912e3 wifi: mac80211: fix a queue stall in certain cases of CSA
JIRA: https://issues.redhat.com/browse/RHEL-73817

commit 11ac0d7c3b5ba58232fb7dacb54371cbe75ec183
Author: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Date:   Tue Nov 19 17:35:40 2024 +0200

    wifi: mac80211: fix a queue stall in certain cases of CSA
    
    If we got an unprotected action frame with CSA and then we heard the
    beacon with the CSA IE, we'll block the queues with the CSA reason
    twice. Since this reason is refcounted, we won't wake up the queues
    since we wake them up only once and the ref count will never reach 0.
    This led to blocked queues that prevented any activity (even
    disconnection wouldn't reset the queue state and the only way to recover
    would be to reload the kernel module.
    
    Fix this by not refcounting the CSA reason.
    It becomes now pointless to maintain the csa_blocked_queues state.
    Remove it.
    
    Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Fixes: 414e090bc41d ("wifi: mac80211: restrict public action ECSA frame handling")
    Closes: https://bugzilla.kernel.org/show_bug.cgi?id=219447
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20241119173108.5ea90828c2cc.I4f89e58572fb71ae48e47a81e74595cac410fbac@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2025-01-15 17:26:24 +01:00
Jose Ignacio Tornos Martinez 7f9fc303b8 wifi: iwlwifi: mvm: tell iwlmei when we finished suspending
JIRA: https://issues.redhat.com/browse/RHEL-73817

commit d1a54ec21b8e7bca59141ff1ac6ce73e07d744f2
Author: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Date:   Mon Oct 28 13:54:54 2024 +0200

    wifi: iwlwifi: mvm: tell iwlmei when we finished suspending
    
    Since we no longer shut down the device in suspend, we also no longer
    call iwl_mvm_mei_device_state() and this is a problem because iwlmei
    expects this to be called when it runs its own suspend sequence. It
    checks mei->device_down in iwl_mei_remove() which is called upon
    suspend.
    
    Fix this by telling iwlmei when we're done accessing the device.
    When we'll wake up, the device should be untouched if CSME didn't use it
    during the suspend time. If CSME used it, we'll notice it through the
    CSR_FUNC_SCRATCH register.
    
    Fixes: e8bb19c1d590 ("wifi: iwlwifi: support fast resume")
    Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20241028135215.525287b90af2.Ibf183824471ea5580d9276d104444e53191e6900@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2025-01-15 17:26:23 +01:00
Jose Ignacio Tornos Martinez c2dcde26f7 wifi: iwlwifi: allow fast resume on ax200
JIRA: https://issues.redhat.com/browse/RHEL-73817

commit e53ebc72054efca12e0329d69342e3daf7250a5a
Author: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Date:   Mon Oct 28 13:54:53 2024 +0200

    wifi: iwlwifi: allow fast resume on ax200
    
    This feature can be used on ax200 as well. It'll avoid to restart the
    firmware upon suspend / resume flow. Doing so also avoids releasing and
    re-allocating all the device related memory which makes the memory's
    subsystem task easier.
    
    Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20241028135215.514efe0ce4c7.I60061277526302a75cadbba10452e94c54763f13@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2025-01-15 17:26:23 +01:00
Jose Ignacio Tornos Martinez 1e705c5482 wifi: iwlwifi: mvm: Fix __counted_by usage in cfg80211_wowlan_nd_*
JIRA: https://issues.redhat.com/browse/RHEL-73817

commit cc0c53f4fac562efb3aca2bc493515e77642ae33
Author: Kees Cook <kees@kernel.org>
Date:   Wed Jun 19 14:12:45 2024 -0700

    wifi: iwlwifi: mvm: Fix __counted_by usage in cfg80211_wowlan_nd_*
    
    Both struct cfg80211_wowlan_nd_match and struct cfg80211_wowlan_nd_info
    pre-allocate space for channels and matches, but then may end up using
    fewer that the full allocation. Shrink the associated counter
    (n_channels and n_matches) after counting the results. This avoids
    compile-time (and run-time) warnings from __counted_by. (The counter
    member needs to be updated _before_ accessing the array index.)
    
    Seen with coming GCC 15:
    
    drivers/net/wireless/intel/iwlwifi/mvm/d3.c: In function 'iwl_mvm_query_set_freqs':
    drivers/net/wireless/intel/iwlwifi/mvm/d3.c:2877:66: warning: operation on 'match->n_channels' may be undefined [-Wsequence-point]
     2877 |                                 match->channels[match->n_channels++] =
          |                                                 ~~~~~~~~~~~~~~~~~^~
    drivers/net/wireless/intel/iwlwifi/mvm/d3.c:2885:66: warning: operation on 'match->n_channels' may be undefined [-Wsequence-point]
     2885 |                                 match->channels[match->n_channels++] =
          |                                                 ~~~~~~~~~~~~~~~~~^~
    drivers/net/wireless/intel/iwlwifi/mvm/d3.c: In function 'iwl_mvm_query_netdetect_reasons':
    drivers/net/wireless/intel/iwlwifi/mvm/d3.c:2982:58: warning: operation on 'net_detect->n_matches' may be undefined [-Wsequence-point]
     2982 |                 net_detect->matches[net_detect->n_matches++] = match;
          |                                     ~~~~~~~~~~~~~~~~~~~~~^~
    
    Cc: stable@vger.kernel.org
    Fixes: aa4ec06c455d ("wifi: cfg80211: use __counted_by where appropriate")
    Signed-off-by: Kees Cook <kees@kernel.org>
    Reviewed-by: Gustavo A. R. Silva <gustavoars@kernel.org>
    Link: https://patch.msgid.link/20240619211233.work.355-kees@kernel.org
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2025-01-15 17:26:21 +01:00
Jose Ignacio Tornos Martinez 1759e15008 wifi: iwlwifi: mvm: fix 6 GHz scan construction
JIRA: https://issues.redhat.com/browse/RHEL-67113
JIRA: https://issues.redhat.com/browse/RHEL-68230
CVE: CVE-2024-53055

commit 7245012f0f496162dd95d888ed2ceb5a35170f1a
Author: Johannes Berg <johannes.berg@intel.com>
Date:   Wed Oct 23 09:17:44 2024 +0200

    wifi: iwlwifi: mvm: fix 6 GHz scan construction
    
    If more than 255 colocated APs exist for the set of all
    APs found during 2.4/5 GHz scanning, then the 6 GHz scan
    construction will loop forever since the loop variable
    has type u8, which can never reach the number found when
    that's bigger than 255, and is stored in a u32 variable.
    Also move it into the loops to have a smaller scope.
    
    Using a u32 there is fine, we limit the number of APs in
    the scan list and each has a limit on the number of RNR
    entries due to the frame size. With a limit of 1000 scan
    results, a frame size upper bound of 4096 (really it's
    more like ~2300) and a TBTT entry size of at least 11,
    we get an upper bound for the number of ~372k, well in
    the bounds of a u32.
    
    Cc: stable@vger.kernel.org
    Fixes: eae94cf82d ("iwlwifi: mvm: add support for 6GHz")
    Closes: https://bugzilla.kernel.org/show_bug.cgi?id=219375
    Link: https://patch.msgid.link/20241023091744.f4baed5c08a1.I8b417148bbc8c5d11c101e1b8f5bf372e17bf2a7@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:58:20 +01:00
Jose Ignacio Tornos Martinez da570a2db5 Revert "wifi: iwlwifi: remove retry loops in start"
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit bfc0ed73e095cc3858d35731f191fa6e3d813262
Author: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Date:   Tue Oct 22 09:22:11 2024 +0200

    Revert "wifi: iwlwifi: remove retry loops in start"
    
    Revert commit dfdfe4be183b ("wifi: iwlwifi: remove retry loops in
    start"), it turns out that there's an issue with the PNVM load
    notification from firmware not getting processed, that this patch
    has been somewhat successfully papering over. Since this is being
    reported, revert the loop removal for now.
    
    We will later at least clean this up to only attempt to retry if
    there was a timeout, but currently we don't even bubble up the
    failure reason to the correct layer, only returning NULL.
    
    Fixes: dfdfe4be183b ("wifi: iwlwifi: remove retry loops in start")
    Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Link: https://patch.msgid.link/20241022092212.4aa82a558a00.Ibdeff9c8f0d608bc97fc42024392ae763b6937b7@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:58:20 +01:00
Jose Ignacio Tornos Martinez a4f594cd36 wifi: iwlwifi: mvm: don't add default link in fw restart flow
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit 734a377e1eacc5153bae0ccd4423365726876e93
Author: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Date:   Thu Oct 10 14:05:06 2024 +0300

    wifi: iwlwifi: mvm: don't add default link in fw restart flow
    
    When we add the vif (and its default link) in fw restart we may
    override the link that already exists. We take care of this but if
    link 0 is a valid MLO link, then we will re-create a default link on
    mvmvif->link[0] and we'll loose the real link we had there.
    
    In non-MLO, we need to re-create the default link upon the interface
    creation, this is fine. In MLO, we'll just wait for change_vif_links()
    to re-build the links.
    
    Fixes: bf976c814c86 ("wifi: iwlwifi: mvm: implement link change ops")
    Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20241010140328.385bfea1b2e9.I4a127312285ccb529cc95cc4edf6fbe1e0a136ad@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:58:20 +01:00
Jose Ignacio Tornos Martinez 9a4754c12c wifi: iwlwifi: mvm: Fix response handling in iwl_mvm_send_recovery_cmd()
JIRA: https://issues.redhat.com/browse/RHEL-67113
JIRA: https://issues.redhat.com/browse/RHEL-68158
CVE: CVE-2024-53059

commit 07a6e3b78a65f4b2796a8d0d4adb1a15a81edead
Author: Daniel Gabay <daniel.gabay@intel.com>
Date:   Thu Oct 10 14:05:05 2024 +0300

    wifi: iwlwifi: mvm: Fix response handling in iwl_mvm_send_recovery_cmd()
    
    1. The size of the response packet is not validated.
    2. The response buffer is not freed.
    
    Resolve these issues by switching to iwl_mvm_send_cmd_status(),
    which handles both size validation and frees the buffer.
    
    Fixes: f130bb75d8 ("iwlwifi: add FW recovery flow")
    Signed-off-by: Daniel Gabay <daniel.gabay@intel.com>
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20241010140328.76c73185951e.Id3b6ca82ced2081f5ee4f33c997491d0ebda83f7@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:58:20 +01:00
Jose Ignacio Tornos Martinez f1a1047ae3 wifi: iwlwifi: mvm: SAR table alignment
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit 32d95ab330069f9c551b8e99770bb4e799730b55
Author: Anjaneyulu <pagadala.yesu.anjaneyulu@intel.com>
Date:   Thu Oct 10 14:05:04 2024 +0300

    wifi: iwlwifi: mvm: SAR table alignment
    
    SAR table format in ACPI and local data base are different,
    So modified code to read data properly.
    
    Signed-off-by: Anjaneyulu <pagadala.yesu.anjaneyulu@intel.com>
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20241010140328.f077aced4dee.I4dc618f12d01f7ad19f9f8881f6e09eea77e9a14@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:58:20 +01:00
Jose Ignacio Tornos Martinez e7fb4516b2 wifi: iwlwifi: mvm: Use the sync timepoint API in suspend
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit 9715246ca0bfc9feaec1b4ff5b3d38de65a7025d
Author: Daniel Gabay <daniel.gabay@intel.com>
Date:   Thu Oct 10 14:05:03 2024 +0300

    wifi: iwlwifi: mvm: Use the sync timepoint API in suspend
    
    When starting the suspend flow, HOST_D3_START triggers an _async_
    firmware dump collection for debugging purposes. The async worker
    may race with suspend flow and fail to get NIC access, resulting in
    the following warning:
    "Timeout waiting for hardware access (CSR_GP_CNTRL 0xffffffff)"
    
    Fix this by switching to the sync version to ensure the dump
    completes before proceeding with the suspend flow, avoiding
    potential race issues.
    
    Signed-off-by: Daniel Gabay <daniel.gabay@intel.com>
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20241010140328.9aae318cd593.I4b322009f39489c0b1d8893495c887870f73ed9c@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:58:19 +01:00
Jose Ignacio Tornos Martinez e2b48821ba wifi: iwlwifi: mvm: really send iwl_txpower_constraints_cmd
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit cbe84e9ad5e28ef083beff7f6edf2e623fac09e4
Author: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Date:   Thu Oct 10 14:05:01 2024 +0300

    wifi: iwlwifi: mvm: really send iwl_txpower_constraints_cmd
    
    iwl_mvm_send_ap_tx_power_constraint_cmd is a no-op if the link is not
    active (we need to know the band etc.)
    However, for the station case it will be called just before we set the
    link to active (by calling iwl_mvm_link_changed with
    the LINK_CONTEXT_MODIFY_ACTIVE bit set in the 'changed' flags and
    active = true), so it will end up doing nothing.
    
    Fix this by calling iwl_mvm_send_ap_tx_power_constraint_cmd before
    iwl_mvm_link_changed.
    
    Fixes: 6b82f4e119d1 ("wifi: iwlwifi: mvm: handle TPE advertised by AP")
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20241010140328.5c235fccd3f1.I2d40dea21e5547eba458565edcb4c354d094d82a@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:58:19 +01:00
Jose Ignacio Tornos Martinez a1c1938877 wifi: iwlwifi: mvm: don't leak a link on AP removal
JIRA: https://issues.redhat.com/browse/RHEL-67113
JIRA: https://issues.redhat.com/browse/RHEL-68167
CVE: CVE-2024-53074

commit 3ed092997a004d68a3a5b0eeb94e71b69839d0f7
Author: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Date:   Thu Oct 10 14:04:59 2024 +0300

    wifi: iwlwifi: mvm: don't leak a link on AP removal
    
    Release the link mapping resource in AP removal. This impacted devices
    that do not support the MLD API (9260 and down).
    On those devices, we couldn't start the AP again after the AP has been
    already started and stopped.
    
    Fixes: a8b5d4809b50 ("wifi: iwlwifi: mvm: Configure the link mapping for non-MLD FW")
    Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20241010140328.c54c42779882.Ied79e0d6244dc5a372e8b6ffa8ee9c6e1379ec1d@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:58:19 +01:00
Jose Ignacio Tornos Martinez 682201d436 finally take no_llseek out
JIRA: https://issues.redhat.com/browse/RHEL-67113

Conflicts: only wireless

commit cb787f4ac0c2e439ea8d7e6387b925f74576bdf8
Author: Al Viro <viro@zeniv.linux.org.uk>
Date:   Fri Sep 27 02:56:11 2024 +0100

    [tree-wide] finally take no_llseek out
    
    no_llseek had been defined to NULL two years ago, in commit 868941b14441
    ("fs: remove no_llseek")
    
    To quote that commit,
    
      At -rc1 we'll need do a mechanical removal of no_llseek -
    
      git grep -l -w no_llseek | grep -v porting.rst | while read i; do
            sed -i '/\<no_llseek\>/d' $i
      done
    
      would do it.
    
    Unfortunately, that hadn't been done.  Linus, could you do that now, so
    that we could finally put that thing to rest? All instances are of the
    form
            .llseek = no_llseek,
    so it's obviously safe.
    
    Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:58:17 +01:00
Jose Ignacio Tornos Martinez 6d9fee5c3c wifi: iwlwifi: mvm: replace CONFIG_PM by CONFIG_PM_SLEEP
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit cac9544cecf6d0aa1ad629ba8f403b05b8bee005
Author: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Date:   Sun Aug 25 19:17:03 2024 +0300

    wifi: iwlwifi: mvm: replace CONFIG_PM by CONFIG_PM_SLEEP
    
    Replace the ifdef CONFIG_PM by CONFIG_PM_SLEEP. CONFIG_PM was useful
    when we had CONFIG_PM_RUNTIME but that was removed long ago.
    Use PM_SLEEP consistently across the driver.
    
    Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20240825191257.44e47ba584de.I64f985d0405345252b76b7157291b79677abd64d@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:58:09 +01:00
Jose Ignacio Tornos Martinez 87a98f15ca wifi: iwlwifi: mvm: properly set the rates in link cmd
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit a032b5fc24fc1ddff0dce662b2e2d367cc73f040
Author: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Date:   Sun Sep 1 07:17:57 2024 +0300

    wifi: iwlwifi: mvm: properly set the rates in link cmd
    
    When a channel ctx is assigned to a link, we set the
    LINK_CONTEXT_MODIFY_RATES_INFO to indicate that the rate fields are now
    valid. But then we always take the rates of 2.4 GHz regardless of actual
    used band.
    This is because we are getting the band from bss_conf->chanctx_conf, but
    this is assigned only after drv_assign_vif_chanctx returns, so we take
    the bands of 2.4 GHz.
    Fix it by taking the band from the iwl_mvm_link_info::phy_ctxt instead,
    as this has already assigned in this point.
    
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Link: https://patch.msgid.link/20240901071542.11c2d3609609.I8fa59e29b6bb38e5d06f3536d54dfb2c5d5bab11@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:58:05 +01:00
Jose Ignacio Tornos Martinez 7a836a5325 wifi: iwlwifi: mvm: Remove unused last_sub_index from reorder buffer
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit 36dc21bce962a56f748eb3711f5f4e2c70544d06
Author: Daniel Gabay <daniel.gabay@intel.com>
Date:   Sun Sep 1 07:17:56 2024 +0300

    wifi: iwlwifi: mvm: Remove unused last_sub_index from reorder buffer
    
    The last_sub_index field is not used and appears to be a leftover
    from a previous implementation, remove it.
    
    Signed-off-by: Daniel Gabay <daniel.gabay@intel.com>
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20240901071542.da75cfef9144.I6e1fb635b2893618e6bd28501fb858042d8aa44e@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:58:04 +01:00
Jose Ignacio Tornos Martinez 52fbc5dfdb wifi: iwlwifi: mvm: remove mvm prefix from iwl_mvm_tx_resp*
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit 5b0c478378e5c82c4c372cf194a2438f8743abcf
Author: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Date:   Sun Sep 1 07:17:55 2024 +0300

    wifi: iwlwifi: mvm: remove mvm prefix from iwl_mvm_tx_resp*
    
    These are not mvm specific
    
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Link: https://patch.msgid.link/20240901071542.22e28b56da2c.Ib859a05ed133fa5a1426c5feffa8999a18bba6f2@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:58:04 +01:00
Jose Ignacio Tornos Martinez 14f1825889 wifi: iwlwifi: s/iwl_mvm_remove_sta_cmd/iwl_remove_sta_cmd
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit 530addf2d21fe11bffd1c441b541ab7047bbfd3a
Author: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Date:   Sun Sep 1 07:17:54 2024 +0300

    wifi: iwlwifi: s/iwl_mvm_remove_sta_cmd/iwl_remove_sta_cmd
    
    This is not mvm specific.
    
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Link: https://patch.msgid.link/20240901071542.57efe93c2702.I4619885f691cc295cc440a62f23405392da338f4@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:58:04 +01:00
Jose Ignacio Tornos Martinez 5b486c649f wifi: iwlwifi: STA command structure shouldn't be mvm specific
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit 07aeccf161358b893e34376594a4cbcf95de3c06
Author: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Date:   Sun Sep 1 07:17:53 2024 +0300

    wifi: iwlwifi: STA command structure shouldn't be mvm specific
    
    This strcuture is not specific to mvm, so rename it.
    
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Link: https://patch.msgid.link/20240901071542.39c9ceea41d3.I2a06bfca589c467fa84ad82ff86e73ec82e72a5e@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:58:04 +01:00
Jose Ignacio Tornos Martinez da7b564c0d wifi: iwlwifi: s/IWL_MVM_STATION_COUNT_MAX/IWL_STATION_COUNT_MAX
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit b61ed2b80911f981fa500252012330c54b9af5a0
Author: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Date:   Sun Sep 1 07:17:52 2024 +0300

    wifi: iwlwifi: s/IWL_MVM_STATION_COUNT_MAX/IWL_STATION_COUNT_MAX
    
    This isn't mvm specific.
    
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Link: https://patch.msgid.link/20240901071542.5d71a0a2b56c.I7e0fe636d914852963e7a2f5e6037d0c3e367145@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:58:04 +01:00
Jose Ignacio Tornos Martinez bac4345046 wifi: iwlwifi: mvm: tell the firmware about CSA with mode=1
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit 07fb53783be80ca14f08b07d83ed88727db48aac
Author: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Date:   Sun Sep 1 07:17:51 2024 +0300

    wifi: iwlwifi: mvm: tell the firmware about CSA with mode=1
    
    When we de-activate a link because it started a CSA with mode=1, we want
    to tell the firmware it can no longer transmit any frame for that link.
    The firmware will do that on its own if the CSA indication (beacon /
    action frame) was  received on that same link, but with MLO, things got
    more complex and the firmware can't track cross link CSA.
    
    Tell the firmware if we de-activate a link because of CSA with mode=1 to
    prevent it from transmitting, even if it is only an NDP PM=1 frame that
    is part of the de-activation flow.
    
    Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20240901071542.4bef89d438d4.If7147a7a84054e67c05414c753d73f4e2e0e6e37@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:58:04 +01:00
Jose Ignacio Tornos Martinez ef1b81893f wifi: iwlwifi: mvm: refactor scan channel description a bit
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit 1a7d2870f472db94d2dada643651f1e604c67bcf
Author: Johannes Berg <johannes.berg@intel.com>
Date:   Sun Sep 1 07:17:50 2024 +0300

    wifi: iwlwifi: mvm: refactor scan channel description a bit
    
    The channel number is at the same position across all versions
    of the channel description struct, so move it out of the union
    that versions it. Also add __packed annotations to all of the
    sub-structs and the union so it's packed correctly, and fully
    document the structure.
    
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>
    Reviewed-by: Ilan Peer <ilan.peer@intel.com>
    Reviewed-by: Daniel Gabay <daniel.gabay@intel.com>
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20240901071542.e31623ae4201.I1ea69a8ec3d39492f39d84e31fb105b159359c28@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:58:03 +01:00
Jose Ignacio Tornos Martinez 78f9a5cf3f wifi: iwlwifi: mvm: allow ESR when we the ROC expires
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit 76364f3edfde60aa2fa20b578ba9b96797d7bff5
Author: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Date:   Sun Aug 25 19:17:11 2024 +0300

    wifi: iwlwifi: mvm: allow ESR when we the ROC expires
    
    We forgot to release the ROC reason for ESR prevention when the remain
    on channel expires.
    Add this.
    
    Fixes: a1efeb823084 ("wifi: iwlwifi: mvm: Block EMLSR when a p2p/softAP vif is active")
    Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20240825191257.8f8765f359cc.I16fcd6198072d422ff36dce68070aafaf011f4c1@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:58:01 +01:00
Jose Ignacio Tornos Martinez fccd42cd7b wifi: iwlwifi: mvm: avoid NULL pointer dereference
JIRA: https://issues.redhat.com/browse/RHEL-67113
JIRA: https://issues.redhat.com/browse/RHEL-63991
CVE: CVE-2024-49929

commit 557a6cd847645e667f3b362560bd7e7c09aac284
Author: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Date:   Sun Aug 25 19:17:09 2024 +0300

    wifi: iwlwifi: mvm: avoid NULL pointer dereference
    
    iwl_mvm_tx_skb_sta() and iwl_mvm_tx_mpdu() verify that the mvmvsta
    pointer is not NULL.
    It retrieves this pointer using iwl_mvm_sta_from_mac80211, which is
    dereferencing the ieee80211_sta pointer.
    If sta is NULL, iwl_mvm_sta_from_mac80211 will dereference a NULL
    pointer.
    Fix this by checking the sta pointer before retrieving the mvmsta
    from it. If sta is not NULL, then mvmsta isn't either.
    
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Reviewed-by: Johannes Berg <johannes.berg@intel.com>
    Link: https://patch.msgid.link/20240825191257.880921ce23b7.I340052d70ab6d3410724ce955eb00da10e08188f@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:58:01 +01:00
Jose Ignacio Tornos Martinez 2b9246b52e wifi: iwlwifi: allow only CN mcc from WRDD
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit ff5aabe7c2a4a4b089a9ced0cb3d0e284963a7dd
Author: Anjaneyulu <pagadala.yesu.anjaneyulu@intel.com>
Date:   Thu Aug 8 23:22:49 2024 +0300

    wifi: iwlwifi: allow only CN mcc from WRDD
    
    Block other mcc expect CN from WRDD ACPI.
    
    Signed-off-by: Anjaneyulu <pagadala.yesu.anjaneyulu@intel.com>
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20240808232017.fe6ea7aa4b39.I86004687a2963fe26f990770aca103e2f5cb1628@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:58:01 +01:00
Jose Ignacio Tornos Martinez 1daeb920f7 wifi: iwlwifi: mvm: drop wrong STA selection in TX
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit 1c7e1068a7c9c39ed27636db93e71911e0045419
Author: Johannes Berg <johannes.berg@intel.com>
Date:   Thu Aug 8 23:22:48 2024 +0300

    wifi: iwlwifi: mvm: drop wrong STA selection in TX
    
    This shouldn't happen at all, since in station mode all MMPDUs
    go through the TXQ for the STA, and not this function. There
    may or may not be a race in mac80211 through which this might
    happen for some frames while a station is being added, but in
    that case we can also just drop the frame and pretend the STA
    didn't exist yet.
    
    Also, the code is simply wrong since it uses deflink, and it's
    not easy to fix it since the mvmvif->ap_sta pointer cannot be
    used without the mutex, and perhaps the right link might not
    even be known.
    
    Just drop the frame at that point instead of trying to fix it
    up.
    
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20240808232017.45ad105dc7fe.I6d45c82e5758395d9afb8854057ded03c7dc81d7@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:58:00 +01:00
Jose Ignacio Tornos Martinez 698d894e19 wifi: iwlwifi: bump FW API to 93 for BZ/SC devices
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit fa21770fe4f36d3a42297e74c9e02e019b436b07
Author: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Date:   Thu Aug 8 23:22:47 2024 +0300

    wifi: iwlwifi: bump FW API to 93 for BZ/SC devices
    
    Start supporting API version 93 for new devices.
    
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>
    Link: https://patch.msgid.link/20240808232017.5c9846f4c2c3.I6c825bc93aa23db302f24db5617f9b9b06042ec8@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:58:00 +01:00
Jose Ignacio Tornos Martinez ba76c3b9de wifi: iwlwifi: mvm: cleanup iwl_mvm_get_wd_timeout
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit 7dd22dad8dc335dd7650d03ba1c08cae5afdefcc
Author: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Date:   Thu Aug 8 23:22:46 2024 +0300

    wifi: iwlwifi: mvm: cleanup iwl_mvm_get_wd_timeout
    
    This used to extract the timeout from the debug TLV
    (FW_DBG_TRIGGER_TXQ_TIMERS), which is not in use.
    Cleanup iwl_mvm_get_wd_timeout to not consider the debug TLV.
    
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Reviewed-by: Johannes Berg <johannes.berg@intel.com>
    Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Link: https://patch.msgid.link/20240808232017.7a6944bc2e38.I532b4b5487c6be9203ff4db9742d7cc5b148d502@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:58:00 +01:00
Jose Ignacio Tornos Martinez 3d99756637 wifi: iwlwifi: use default command queue watchdog timeout
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit 7921c411490ca8b091068a41de873d79d065aab1
Author: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Date:   Thu Aug 8 23:22:45 2024 +0300

    wifi: iwlwifi: use default command queue watchdog timeout
    
    We used to have the opmode configuring it to the trans according to the
    debug tlv value (FW_DBG_TRIGGER_TXQ_TIMERS).
    But this debug is not used, so trans can just have the default value
    hardcoded.
    
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20240808232017.87af3f063025.I2222981ead13f6a917f2d4b116c5b94200dc9e51@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:58:00 +01:00
Jose Ignacio Tornos Martinez 46e635d99a wifi: iwlwifi: mvm: handle the new EML OMN failure notification
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit a08cf01905dfd7884d41db782667420500bdd90e
Author: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Date:   Sun Aug 25 09:00:54 2024 +0300

    wifi: iwlwifi: mvm: handle the new EML OMN failure notification
    
    Take the proper action upon EML OMN frame failure.
    
    Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20240825090005.01ff45fa69db.I9f2d3ea851050f6031ac07bbe69eb38000fd5683@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:58:00 +01:00
Jose Ignacio Tornos Martinez 10101bcde1 wifi: iwlwifi: mvm: Stop processing MCC update if there was no change
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit 1987bf29f891d30c7d85d7da179a67628c3fe8e6
Author: Ilan Peer <ilan.peer@intel.com>
Date:   Thu Aug 8 23:22:44 2024 +0300

    wifi: iwlwifi: mvm: Stop processing MCC update if there was no change
    
    When processing a MCC update notification from the firmware, if
    the firmware indicates that the regulatory configuration didn't
    change, abort the flow and do not notify higher layers.
    
    Signed-off-by: Ilan Peer <ilan.peer@intel.com>
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20240808232017.60dd273d00e0.I985b3bc61ca4a6cac7c1d1365b5c0afba04f3031@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:58:00 +01:00
Jose Ignacio Tornos Martinez 051ef09b59 wifi: iwlwifi: mvm: add API for EML OMN frame failure
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit 4d8ff1f7df43ee8560818b0b6cdec6e9ce703748
Author: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Date:   Thu Aug 8 23:22:42 2024 +0300

    wifi: iwlwifi: mvm: add API for EML OMN frame failure
    
    When the firmware fails to send EML OMN frames, it notifies the host and
    the host need to take proper action.
    
    Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20240808232017.0c6bc216ef8c.Ida85d2062734a569e1af35f47d14cc5bb4bf893e@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:57:59 +01:00
Jose Ignacio Tornos Martinez 42671f0b27 wifi: iwlwifi: mvm: exit EMLSR if both links are missing beacons
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit cdade208214af34b18635747cb18d3693593c0c2
Author: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Date:   Thu Aug 8 23:22:41 2024 +0300

    wifi: iwlwifi: mvm: exit EMLSR if both links are missing beacons
    
    If both links are missing 5 beacons, we need to exit EMLSR, if only one
    link misses beacons, we need to wait until 11 beacons are missed.
    
    Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20240808232017.b7785943a4fe.I70a459c5e7db85f398d5795ba83bb15f65d6bf9d@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:57:59 +01:00
Jose Ignacio Tornos Martinez 799f1cde48 wifi: iwlwifi: mvm: handle the new missed beacons notification
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit 313e32f60d5439a19b0684d3be1fe50c77ef382d
Author: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Date:   Thu Aug 8 23:22:40 2024 +0300

    wifi: iwlwifi: mvm: handle the new missed beacons notification
    
    Use the same handler for both types and just convert the old version to
    the new. Drop the unused fields from the old one and fake the new
    fields.
    
    Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20240808232017.a64ffc998569.I7d181052b1a69c331d07263f20c1e00cbc0bc891@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:57:59 +01:00
Jose Ignacio Tornos Martinez 05f6a75bf2 wifi: iwlwifi: mvm: add the new API for the missed beacons notification
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit ec6ba5367eaab4d81b14f19380b14852a49dd80a
Author: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Date:   Thu Aug 8 23:22:39 2024 +0300

    wifi: iwlwifi: mvm: add the new API for the missed beacons notification
    
    Note that the new API does not have the same notification ID as the
    previous notification: the new notification belongs to the group 0x3.
    
    Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20240808232017.4ea52360b32e.Ibc25dcabd8aeadda906549482a6c77bc42fb55bb@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:57:59 +01:00
Jose Ignacio Tornos Martinez 431bdb6dbc wifi: iwlwifi: mvm: rename iwl_missed_beacons_notif
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit 658b8b56c1296322a9a064c8e8cb73ea8a44f635
Author: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Date:   Thu Aug 8 23:22:38 2024 +0300

    wifi: iwlwifi: mvm: rename iwl_missed_beacons_notif
    
    A new version is coming up. Rename the current struct to include the
    current version.
    
    s/iwl_missed_beacons_notif/iwl_missed_beacons_notif_v4
    
    Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20240808232017.b5c3a83a05ef.I698611582b5ca8395f42a535c51f7230307e2c6f@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:57:59 +01:00
Jose Ignacio Tornos Martinez e8dfce0bb3 wifi: iwlwifi: mvm: Offload RLC/SMPS functionality to firmware
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit b2a7c91bf93865a34e04707ef600c1c363d79125
Author: Daniel Gabay <daniel.gabay@intel.com>
Date:   Thu Aug 8 23:22:37 2024 +0300

    wifi: iwlwifi: mvm: Offload RLC/SMPS functionality to firmware
    
    Currently, the driver handles SMPS decisions by tracking AP
    capabilities, BT coexistence changes, sending necessary SMPS
    frames to the AP, and updating firmware with RX chain info
    using the RLC_CONFIG_CMD.
    
    Starting with version 3 of the RLC_CONFIG_CMD, the firmware
    takes over this responsibility. It now tracks SMPS, sends
    frames, and configures the RLC.
    
    In this patch:
    1. Stop sending RLC_CONFIG_CMD when firmware supports RLC
       offload (version 3), as rlc.rx_chain_info is not needed by
       firmware, and no other field in the cmd is used.
    2. Prevent the driver from forwarding any SMPS requests to
       mac80211, i.e., the driver should not transmit SMPS frames
       to the AP as firmware handles that.
    3. Set NL80211_FEATURE_DYNAMIC_SMPS and NL80211_FEATURE_STATIC_SMPS
       conditionally based on RLC version.
    
    Signed-off-by: Daniel Gabay <daniel.gabay@intel.com>
    Reviewed-by: Johannes Berg <johannes.berg@intel.com>
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20240808232017.45da23be1f65.I0d46db82dd990a82e8a66876fe2f5310bc9513be@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:57:59 +01:00
Jose Ignacio Tornos Martinez 0cb3e90542 wifi: iwlwifi: mvm: add and improve EMLSR debug info
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit 36a95e9c51684bbc0983219cc1d86a8428e4d65f
Author: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Date:   Mon Jul 29 20:20:18 2024 +0300

    wifi: iwlwifi: mvm: add and improve EMLSR debug info
    
    Add prints of the per-link MPDU counters, and change the other MPDU
    counters related prints to use DL_INFO, which is already used for all
    EMLSR tests anyway, instead of DL_STATS which pollutes the logs with all
    the RX signal info.
    
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Reviewed-by: Daniel Gabay <daniel.gabay@intel.com>
    Link: https://patch.msgid.link/20240729201718.02bd85837c87.I85480c9c4fab0f7a574dd69cbeafd82674146921@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:57:58 +01:00
Jose Ignacio Tornos Martinez e788414acd wifi: iwlwifi: Enable channel puncturing for US/CAN from bios
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit b312e357207c53270bd9b99e0bfd5dd9bf183078
Author: Somashekhar(Som) <somashekhar.puttagangaiah@intel.com>
Date:   Mon Jul 29 20:20:17 2024 +0300

    wifi: iwlwifi: Enable channel puncturing for US/CAN from bios
    
    Add support for enabling channel puncturing for US/CAN based
    on BIOS configuration through UEFI
    
    Signed-off-by: Somashekhar(Som) <somashekhar.puttagangaiah@intel.com>
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20240729201718.828f3ecf5118.I5561ab8c7cd48ad4e5d6daf21b037bf88c619a4a@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:57:58 +01:00
Jose Ignacio Tornos Martinez 74b92ebd58 wifi: iwlwifi: mvm: add firmware debug points for EMLSR entry / exit
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit db9979d5aae8496233a8551320a69a2f9b1b0ac3
Author: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Date:   Mon Jul 29 20:20:16 2024 +0300

    wifi: iwlwifi: mvm: add firmware debug points for EMLSR entry / exit
    
    This will help to dump the firmware logs at the right spot if needed.
    
    Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20240729201718.3a91e89e32f8.Ieb28d7756c47dee52c912a71abe82fa0b08b19da@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:57:58 +01:00
Jose Ignacio Tornos Martinez b89483264a wifi: iwlwiif: mvm: handle the new BT notif
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit 2b7ee1a10a72ef8f3df621133ac04e80e8214037
Author: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Date:   Mon Jul 29 20:20:15 2024 +0300

    wifi: iwlwiif: mvm: handle the new BT notif
    
    Iterate all the links and check if any action must be taken.
    The new notification impacts only the esr decision.
    
    Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20240729201718.00cfc07879c6.I8491483fda3b5888ea6ffa10fbd17807e443f943@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:57:57 +01:00
Jose Ignacio Tornos Martinez 8968d75ffe wifi: iwlwifi: mvm: start to support the new BT profile notification
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit b85b397a9ece4cdde2e18424b822702220094c83
Author: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Date:   Mon Jul 29 20:20:14 2024 +0300

    wifi: iwlwifi: mvm: start to support the new BT profile notification
    
    We have a new notification the BT profile. It contains almost nothing,
    only the wifi loss information. Copy this into mvm. We still need to
    iterate over the vifs / links to use this data.
    
    Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20240729201718.637499f3a85a.I8bf654cf5d8aa038100273876c936845ecc338f7@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:57:57 +01:00
Jose Ignacio Tornos Martinez 6c5c6b61c2 wifi: iwlwifi: mvm: s/iwl_bt_coex_profile_notif/iwl_bt_coex_prof_old_notif
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit 1c9c5aebb5db162515ebb719e0f6cf1292e9c40e
Author: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Date:   Mon Jul 29 20:20:13 2024 +0300

    wifi: iwlwifi: mvm: s/iwl_bt_coex_profile_notif/iwl_bt_coex_prof_old_notif
    
    The iwl_bt_coex_profile_notif is now being obsoleted. It'll be replaced
    by a new notification coming with a non-legacy group. Rename it to avoid
    confusion.
    
    Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20240729201718.dc29fd0d7817.I5881fce86ec8b76ae98d2948265434b8e7d860c1@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:57:57 +01:00
Jose Ignacio Tornos Martinez 1d6240ea9c wifi: iwlwifi: mvm: increase the time between ranging measurements
JIRA: https://issues.redhat.com/browse/RHEL-67113

commit 3a7ee94559dfd640604d0265739e86dec73b64e8
Author: Avraham Stern <avraham.stern@intel.com>
Date:   Mon Jul 29 20:20:12 2024 +0300

    wifi: iwlwifi: mvm: increase the time between ranging measurements
    
    The algo running in fw may take a little longer than 5 milliseconds,
    (e.g. measurement on 80MHz while associated). Increase the minimum
    time between measurements to 7 milliseconds.
    
    Fixes: 830aa3e7d1ca ("iwlwifi: mvm: add support for range request command version 13")
    Signed-off-by: Avraham Stern <avraham.stern@intel.com>
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20240729201718.d3f3c26e00d9.I09e951290e8a3d73f147b88166fd9a678d1d69ed@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@redhat.com>
2024-11-22 10:57:57 +01:00