mirror of
https://github.com/linux-msm/laptops-kernel.git
synced 2026-08-13 14:19:53 -07:00
Merge tag 'wireless-next-2025-03-04-v2' of https://git.kernel.org/pub/scm/linux/kernel/git/wireless/wireless-next
Johannes Berg says: ==================== First 6.15 material: * cfg80211/mac80211 - remove cooked monitor support - strict mode for better AP testing - basic EPCS support - OMI RX bandwidth reduction support * rtw88 - preparation for RTL8814AU support * rtw89 - use wiphy_lock/wiphy_work - preparations for MLO - BT-Coex improvements - regulatory support in firmware files * iwlwifi - preparations for the new iwlmld sub-driver * tag 'wireless-next-2025-03-04-v2' of https://git.kernel.org/pub/scm/linux/kernel/git/wireless/wireless-next: (128 commits) wifi: iwlwifi: remove mld/roc.c wifi: mac80211: refactor populating mesh related fields in sinfo wifi: cfg80211: reorg sinfo structure elements for mesh wifi: iwlwifi: Fix spelling mistake "Increate" -> "Increase" wifi: iwlwifi: add Debug Host Command APIs wifi: iwlwifi: add IWL_MAX_NUM_IGTKS macro wifi: iwlwifi: add OMI bandwidth reduction APIs wifi: iwlwifi: remove mvm prefix from iwl_mvm_d3_end_notif wifi: iwlwifi: remember if the UATS table was read successfully wifi: iwlwifi: export iwl_get_lari_config_bitmap wifi: iwlwifi: add support for external 32 KHz clock wifi: iwlwifi: mld: add a debug level for EHT prints wifi: iwlwifi: mld: add a debug level for PTP prints wifi: iwlwifi: remove mvm prefix from iwl_mvm_esr_mode_notif wifi: iwlwifi: use 0xff instead of 0xffffffff for invalid wifi: iwlwifi: location api cleanup wifi: cfg80211: expose update timestamp to drivers wifi: mac80211: add ieee80211_iter_chan_contexts_mtx wifi: mac80211: fix integer overflow in hwmp_route_info_get() wifi: mac80211: Fix possible integer promotion issue ... ==================== Link: https://patch.msgid.link/20250304125605.127914-3-johannes@sipsolutions.net Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
@@ -32,6 +32,10 @@ properties:
|
||||
shutdown-gpios:
|
||||
maxItems: 1
|
||||
|
||||
default-blocked:
|
||||
$ref: /schemas/types.yaml#/definitions/flag
|
||||
description: configure rfkill state as blocked at boot
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- radio-type
|
||||
@@ -48,4 +52,5 @@ examples:
|
||||
label = "rfkill-pcie-wlan";
|
||||
radio-type = "wlan";
|
||||
shutdown-gpios = <&gpio2 25 GPIO_ACTIVE_HIGH>;
|
||||
default-blocked;
|
||||
};
|
||||
|
||||
@@ -2166,7 +2166,7 @@ static void b43_print_fw_helptext(struct b43_wl *wl, bool error)
|
||||
{
|
||||
const char text[] =
|
||||
"You must go to " \
|
||||
"https://wireless.wiki.kernel.org/en/users/Drivers/b43#devicefirmware " \
|
||||
"https://wireless.docs.kernel.org/en/latest/en/users/drivers/b43/developers.html#list-of-firmware " \
|
||||
"and download the correct firmware for this driver version. " \
|
||||
"Please carefully read all instructions on this website.\n";
|
||||
|
||||
|
||||
@@ -3295,7 +3295,7 @@ static int ipw_init_nic(struct ipw_priv *priv)
|
||||
rc = ipw_poll_bit(priv, IPW_GP_CNTRL_RW,
|
||||
IPW_GP_CNTRL_BIT_CLOCK_READY, 250);
|
||||
if (rc < 0)
|
||||
IPW_DEBUG_INFO("FAILED wait for clock stablization\n");
|
||||
IPW_DEBUG_INFO("FAILED wait for clock stabilization\n");
|
||||
|
||||
/* assert SW reset */
|
||||
ipw_set_bit(priv, IPW_RESET_REG, IPW_RESET_REG_SW_RESET);
|
||||
|
||||
@@ -1011,8 +1011,6 @@ netdev_tx_t libipw_xmit(struct sk_buff *skb, struct net_device *dev);
|
||||
void libipw_txb_free(struct libipw_txb *);
|
||||
|
||||
/* libipw_rx.c */
|
||||
void libipw_rx_any(struct libipw_device *ieee, struct sk_buff *skb,
|
||||
struct libipw_rx_stats *stats);
|
||||
int libipw_rx(struct libipw_device *ieee, struct sk_buff *skb,
|
||||
struct libipw_rx_stats *rx_stats);
|
||||
/* make sure to set stats->len */
|
||||
|
||||
@@ -823,96 +823,6 @@ int libipw_rx(struct libipw_device *ieee, struct sk_buff *skb,
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* Filter out unrelated packets, call libipw_rx[_mgt]
|
||||
* This function takes over the skb, it should not be used again after calling
|
||||
* this function. */
|
||||
void libipw_rx_any(struct libipw_device *ieee,
|
||||
struct sk_buff *skb, struct libipw_rx_stats *stats)
|
||||
{
|
||||
struct libipw_hdr_4addr *hdr;
|
||||
int is_packet_for_us;
|
||||
u16 fc;
|
||||
|
||||
if (ieee->iw_mode == IW_MODE_MONITOR) {
|
||||
if (!libipw_rx(ieee, skb, stats))
|
||||
dev_kfree_skb_irq(skb);
|
||||
return;
|
||||
}
|
||||
|
||||
if (skb->len < sizeof(struct ieee80211_hdr))
|
||||
goto drop_free;
|
||||
|
||||
hdr = (struct libipw_hdr_4addr *)skb->data;
|
||||
fc = le16_to_cpu(hdr->frame_ctl);
|
||||
|
||||
if ((fc & IEEE80211_FCTL_VERS) != 0)
|
||||
goto drop_free;
|
||||
|
||||
switch (fc & IEEE80211_FCTL_FTYPE) {
|
||||
case IEEE80211_FTYPE_MGMT:
|
||||
if (skb->len < sizeof(struct libipw_hdr_3addr))
|
||||
goto drop_free;
|
||||
libipw_rx_mgt(ieee, hdr, stats);
|
||||
dev_kfree_skb_irq(skb);
|
||||
return;
|
||||
case IEEE80211_FTYPE_DATA:
|
||||
break;
|
||||
case IEEE80211_FTYPE_CTL:
|
||||
return;
|
||||
default:
|
||||
return;
|
||||
}
|
||||
|
||||
is_packet_for_us = 0;
|
||||
switch (ieee->iw_mode) {
|
||||
case IW_MODE_ADHOC:
|
||||
/* our BSS and not from/to DS */
|
||||
if (ether_addr_equal(hdr->addr3, ieee->bssid) &&
|
||||
((fc & (IEEE80211_FCTL_TODS + IEEE80211_FCTL_FROMDS)) == 0)) {
|
||||
/* promisc: get all */
|
||||
if (ieee->dev->flags & IFF_PROMISC)
|
||||
is_packet_for_us = 1;
|
||||
/* to us */
|
||||
else if (ether_addr_equal(hdr->addr1, ieee->dev->dev_addr))
|
||||
is_packet_for_us = 1;
|
||||
/* mcast */
|
||||
else if (is_multicast_ether_addr(hdr->addr1))
|
||||
is_packet_for_us = 1;
|
||||
}
|
||||
break;
|
||||
case IW_MODE_INFRA:
|
||||
/* our BSS (== from our AP) and from DS */
|
||||
if (ether_addr_equal(hdr->addr2, ieee->bssid) &&
|
||||
((fc & (IEEE80211_FCTL_TODS + IEEE80211_FCTL_FROMDS)) == IEEE80211_FCTL_FROMDS)) {
|
||||
/* promisc: get all */
|
||||
if (ieee->dev->flags & IFF_PROMISC)
|
||||
is_packet_for_us = 1;
|
||||
/* to us */
|
||||
else if (ether_addr_equal(hdr->addr1, ieee->dev->dev_addr))
|
||||
is_packet_for_us = 1;
|
||||
/* mcast */
|
||||
else if (is_multicast_ether_addr(hdr->addr1)) {
|
||||
/* not our own packet bcasted from AP */
|
||||
if (!ether_addr_equal(hdr->addr3, ieee->dev->dev_addr))
|
||||
is_packet_for_us = 1;
|
||||
}
|
||||
}
|
||||
break;
|
||||
default:
|
||||
/* ? */
|
||||
break;
|
||||
}
|
||||
|
||||
if (is_packet_for_us)
|
||||
if (!libipw_rx(ieee, skb, stats))
|
||||
dev_kfree_skb_irq(skb);
|
||||
return;
|
||||
|
||||
drop_free:
|
||||
dev_kfree_skb_irq(skb);
|
||||
ieee->dev->stats.rx_dropped++;
|
||||
}
|
||||
|
||||
#define MGMT_FRAME_FIXED_PART_LENGTH 0x24
|
||||
|
||||
static u8 qos_oui[QOS_OUI_LEN] = { 0x00, 0x50, 0xF2 };
|
||||
@@ -1729,6 +1639,5 @@ void libipw_rx_mgt(struct libipw_device *ieee,
|
||||
}
|
||||
}
|
||||
|
||||
EXPORT_SYMBOL_GPL(libipw_rx_any);
|
||||
EXPORT_SYMBOL(libipw_rx_mgt);
|
||||
EXPORT_SYMBOL(libipw_rx);
|
||||
|
||||
@@ -132,15 +132,8 @@ static void il4965_rs_fill_link_cmd(struct il_priv *il,
|
||||
static void il4965_rs_stay_in_table(struct il_lq_sta *lq_sta,
|
||||
bool force_search);
|
||||
|
||||
#ifdef CONFIG_MAC80211_DEBUGFS
|
||||
static void il4965_rs_dbgfs_set_mcs(struct il_lq_sta *lq_sta,
|
||||
u32 *rate_n_flags, int idx);
|
||||
#else
|
||||
static void
|
||||
il4965_rs_dbgfs_set_mcs(struct il_lq_sta *lq_sta, u32 * rate_n_flags, int idx)
|
||||
{
|
||||
}
|
||||
#endif
|
||||
|
||||
/*
|
||||
* The following tables contain the expected throughput metrics for all rates
|
||||
@@ -2495,8 +2488,6 @@ il4965_rs_free_sta(void *il_r, struct ieee80211_sta *sta, void *il_sta)
|
||||
D_RATE("leave\n");
|
||||
}
|
||||
|
||||
#ifdef CONFIG_MAC80211_DEBUGFS
|
||||
|
||||
static void
|
||||
il4965_rs_dbgfs_set_mcs(struct il_lq_sta *lq_sta, u32 * rate_n_flags, int idx)
|
||||
{
|
||||
@@ -2758,7 +2749,6 @@ il4965_rs_add_debugfs(void *il, void *il_sta, struct dentry *dir)
|
||||
debugfs_create_u8("tx_agg_tid_enable", 0600, dir,
|
||||
&lq_sta->tx_agg_tid_en);
|
||||
}
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Initialization of rate scaling information is done by driver after
|
||||
@@ -2781,9 +2771,8 @@ static const struct rate_control_ops rs_4965_ops = {
|
||||
.free = il4965_rs_free,
|
||||
.alloc_sta = il4965_rs_alloc_sta,
|
||||
.free_sta = il4965_rs_free_sta,
|
||||
#ifdef CONFIG_MAC80211_DEBUGFS
|
||||
.add_sta_debugfs = il4965_rs_add_debugfs,
|
||||
#endif
|
||||
.add_sta_debugfs = PTR_IF(IS_ENABLED(CONFIG_MAC80211_DEBUGFS),
|
||||
il4965_rs_add_debugfs),
|
||||
};
|
||||
|
||||
int
|
||||
|
||||
@@ -2815,9 +2815,7 @@ struct il_lq_sta {
|
||||
struct il_scale_tbl_info lq_info[LQ_SIZE]; /* "active", "search" */
|
||||
struct il_traffic_load load[TID_MAX_LOAD_COUNT];
|
||||
u8 tx_agg_tid_en;
|
||||
#ifdef CONFIG_MAC80211_DEBUGFS
|
||||
u32 dbg_fixed_rate;
|
||||
#endif
|
||||
struct il_priv *drv;
|
||||
|
||||
/* used to be in sta_info */
|
||||
|
||||
@@ -205,7 +205,6 @@ const char iwl_ax101_name[] = "Intel(R) Wi-Fi 6 AX101";
|
||||
const char iwl_ax200_name[] = "Intel(R) Wi-Fi 6 AX200 160MHz";
|
||||
const char iwl_ax201_name[] = "Intel(R) Wi-Fi 6 AX201 160MHz";
|
||||
const char iwl_ax203_name[] = "Intel(R) Wi-Fi 6 AX203";
|
||||
const char iwl_ax204_name[] = "Intel(R) Wi-Fi 6 AX204 160MHz";
|
||||
|
||||
const char iwl_ax200_killer_1650w_name[] =
|
||||
"Killer(R) Wi-Fi 6 AX1650w 160MHz Wireless Network Adapter (200D2W)";
|
||||
|
||||
@@ -180,7 +180,6 @@ const struct iwl_cfg_trans_params iwl_ma_trans_cfg = {
|
||||
};
|
||||
|
||||
const char iwl_ax211_name[] = "Intel(R) Wi-Fi 6E AX211 160MHz";
|
||||
const char iwl_ax221_name[] = "Intel(R) Wi-Fi 6E AX221 160MHz";
|
||||
const char iwl_ax231_name[] = "Intel(R) Wi-Fi 6E AX231 160MHz";
|
||||
const char iwl_ax411_name[] = "Intel(R) Wi-Fi 6E AX411 160MHz";
|
||||
|
||||
|
||||
@@ -50,6 +50,13 @@ static const struct iwl_base_params iwl_bz_base_params = {
|
||||
.pcie_l1_allowed = true,
|
||||
};
|
||||
|
||||
const struct iwl_ht_params iwl_bz_ht_params = {
|
||||
.stbc = true,
|
||||
.ldpc = true,
|
||||
.ht40_bands = BIT(NL80211_BAND_2GHZ) | BIT(NL80211_BAND_5GHZ) |
|
||||
BIT(NL80211_BAND_6GHZ),
|
||||
};
|
||||
|
||||
#define IWL_DEVICE_BZ_COMMON \
|
||||
.ucode_api_max = IWL_BZ_UCODE_API_MAX, \
|
||||
.ucode_api_min = IWL_BZ_UCODE_API_MIN, \
|
||||
@@ -113,7 +120,7 @@ static const struct iwl_base_params iwl_bz_base_params = {
|
||||
|
||||
#define IWL_DEVICE_BZ \
|
||||
IWL_DEVICE_BZ_COMMON, \
|
||||
.ht_params = &iwl_22000_ht_params
|
||||
.ht_params = &iwl_bz_ht_params
|
||||
|
||||
/*
|
||||
* This size was picked according to 8 MSDUs inside 512 A-MSDUs in an
|
||||
@@ -145,7 +152,6 @@ const struct iwl_cfg_trans_params iwl_gl_trans_cfg = {
|
||||
.low_latency_xtal = true,
|
||||
};
|
||||
|
||||
const char iwl_bz_name[] = "Intel(R) TBD Bz device";
|
||||
const char iwl_fm_name[] = "Intel(R) Wi-Fi 7 BE201 320MHz";
|
||||
const char iwl_wh_name[] = "Intel(R) Wi-Fi 7 BE211 320MHz";
|
||||
const char iwl_gl_name[] = "Intel(R) Wi-Fi 7 BE200 320MHz";
|
||||
|
||||
@@ -114,7 +114,7 @@ static const struct iwl_base_params iwl_dr_base_params = {
|
||||
.uhb_supported = true, \
|
||||
.features = IWL_TX_CSUM_NETIF_FLAGS | NETIF_F_RXCSUM, \
|
||||
.num_rbds = IWL_NUM_RBDS_DR_EHT, \
|
||||
.ht_params = &iwl_22000_ht_params
|
||||
.ht_params = &iwl_bz_ht_params
|
||||
|
||||
/*
|
||||
* This size was picked according to 8 MSDUs inside 512 A-MSDUs in an
|
||||
|
||||
@@ -121,7 +121,7 @@ static const struct iwl_base_params iwl_sc_base_params = {
|
||||
.uhb_supported = true, \
|
||||
.features = IWL_TX_CSUM_NETIF_FLAGS | NETIF_F_RXCSUM, \
|
||||
.num_rbds = IWL_NUM_RBDS_SC_EHT, \
|
||||
.ht_params = &iwl_22000_ht_params
|
||||
.ht_params = &iwl_bz_ht_params
|
||||
|
||||
/*
|
||||
* This size was picked according to 8 MSDUs inside 512 A-MSDUs in an
|
||||
@@ -142,22 +142,16 @@ const struct iwl_cfg_trans_params iwl_sc_trans_cfg = {
|
||||
.ltr_delay = IWL_CFG_TRANS_LTR_DELAY_2500US,
|
||||
};
|
||||
|
||||
const char iwl_sc_name[] = "Intel(R) TBD Sc device";
|
||||
|
||||
const struct iwl_cfg iwl_cfg_sc = {
|
||||
.fw_name_mac = "sc",
|
||||
IWL_DEVICE_SC,
|
||||
};
|
||||
|
||||
const char iwl_sc2_name[] = "Intel(R) TBD Sc2 device";
|
||||
|
||||
const struct iwl_cfg iwl_cfg_sc2 = {
|
||||
.fw_name_mac = "sc2",
|
||||
IWL_DEVICE_SC,
|
||||
};
|
||||
|
||||
const char iwl_sc2f_name[] = "Intel(R) TBD Sc2f device";
|
||||
|
||||
const struct iwl_cfg iwl_cfg_sc2f = {
|
||||
.fw_name_mac = "sc2f",
|
||||
IWL_DEVICE_SC,
|
||||
|
||||
@@ -124,17 +124,6 @@ enum iwl_antenna_ok iwl_tx_ant_restriction(struct iwl_priv *priv)
|
||||
return restriction->tx_stream;
|
||||
}
|
||||
|
||||
enum iwl_antenna_ok iwl_rx_ant_restriction(struct iwl_priv *priv)
|
||||
{
|
||||
struct iwl_tt_mgmt *tt = &priv->thermal_throttle;
|
||||
struct iwl_tt_restriction *restriction;
|
||||
|
||||
if (!priv->thermal_throttle.advanced_tt)
|
||||
return IWL_ANT_OK_MULTI;
|
||||
restriction = tt->restriction + tt->state;
|
||||
return restriction->rx_stream;
|
||||
}
|
||||
|
||||
#define CT_KILL_EXIT_DURATION (5) /* 5 seconds duration */
|
||||
#define CT_KILL_WAITING_DURATION (300) /* 300ms duration */
|
||||
|
||||
|
||||
@@ -100,7 +100,6 @@ u8 iwl_tt_current_power_mode(struct iwl_priv *priv);
|
||||
bool iwl_tt_is_low_power_state(struct iwl_priv *priv);
|
||||
bool iwl_ht_enabled(struct iwl_priv *priv);
|
||||
enum iwl_antenna_ok iwl_tx_ant_restriction(struct iwl_priv *priv);
|
||||
enum iwl_antenna_ok iwl_rx_ant_restriction(struct iwl_priv *priv);
|
||||
void iwl_tt_enter_ct_kill(struct iwl_priv *priv);
|
||||
void iwl_tt_exit_ct_kill(struct iwl_priv *priv);
|
||||
void iwl_tt_handler(struct iwl_priv *priv);
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
|
||||
/*
|
||||
* Copyright (C) 2012-2014, 2018, 2020-2021, 2024 Intel Corporation
|
||||
* Copyright (C) 2012-2014, 2018, 2020-2021, 2024-2025 Intel Corporation
|
||||
* Copyright (C) 2013-2015 Intel Mobile Communications GmbH
|
||||
* Copyright (C) 2016-2017 Intel Deutschland GmbH
|
||||
*/
|
||||
@@ -117,7 +117,7 @@ struct iwl_alive_ntf_v6 {
|
||||
* finishing init flow
|
||||
* @IWL_INIT_DEBUG_CFG: driver is going to send debug config command
|
||||
* @IWL_INIT_NVM: driver is going to send NVM_ACCESS commands
|
||||
* @IWL_INIT_PHY: driver is going to send PHY_DB commands
|
||||
* @IWL_INIT_PHY: driver is going to send the PHY_CONFIGURATION_CMD
|
||||
*/
|
||||
enum iwl_extended_cfg_flags {
|
||||
IWL_INIT_DEBUG_CFG,
|
||||
|
||||
@@ -502,10 +502,15 @@ enum iwl_legacy_cmds {
|
||||
/**
|
||||
* @DTS_MEASUREMENT_NOTIFICATION:
|
||||
* &struct iwl_dts_measurement_notif_v1 or
|
||||
* &struct iwl_dts_measurement_notif_v2
|
||||
* &struct iwl_dts_measurement_notif
|
||||
*/
|
||||
DTS_MEASUREMENT_NOTIFICATION = 0xdd,
|
||||
|
||||
/**
|
||||
* @DEBUG_HOST_COMMAND: &struct iwl_dhc_cmd
|
||||
*/
|
||||
DEBUG_HOST_COMMAND = 0xf1,
|
||||
|
||||
/**
|
||||
* @LDBG_CONFIG_CMD: configure continuous trace recording
|
||||
*/
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
|
||||
/*
|
||||
* Copyright (C) 2012-2014, 2022 Intel Corporation
|
||||
* Copyright (C) 2012-2014, 2022, 2024 Intel Corporation
|
||||
* Copyright (C) 2013-2015 Intel Mobile Communications GmbH
|
||||
* Copyright (C) 2016-2017 Intel Deutschland GmbH
|
||||
*/
|
||||
@@ -14,6 +14,9 @@
|
||||
* @FW_CTXT_COLOR_POS: position of the color
|
||||
* @FW_CTXT_COLOR_MSK: mask of the color
|
||||
* @FW_CTXT_INVALID: value used to indicate unused/invalid
|
||||
* @FW_CTXT_ID_INVALID: value used to indicate unused/invalid. This can be
|
||||
* used with newer firmware which no longer use the color. Typically,
|
||||
* firmware versions supported by iwlmld can use this value.
|
||||
*/
|
||||
enum iwl_ctxt_id_and_color {
|
||||
FW_CTXT_ID_POS = 0,
|
||||
@@ -21,6 +24,7 @@ enum iwl_ctxt_id_and_color {
|
||||
FW_CTXT_COLOR_POS = 8,
|
||||
FW_CTXT_COLOR_MSK = 0xff << FW_CTXT_COLOR_POS,
|
||||
FW_CTXT_INVALID = 0xffffffff,
|
||||
FW_CTXT_ID_INVALID = 0xff,
|
||||
};
|
||||
|
||||
#define FW_CMD_ID_AND_COLOR(_id, _color) (((_id) << FW_CTXT_ID_POS) |\
|
||||
|
||||
@@ -1006,7 +1006,7 @@ struct iwl_wowlan_wake_pkt_notif {
|
||||
* struct iwl_mvm_d3_end_notif - d3 end notification
|
||||
* @flags: See &enum iwl_d0i3_flags
|
||||
*/
|
||||
struct iwl_mvm_d3_end_notif {
|
||||
struct iwl_d3_end_notif {
|
||||
__le32 flags;
|
||||
} __packed;
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
|
||||
/*
|
||||
* Copyright (C) 2024 Intel Corporation
|
||||
* Copyright (C) 2024-2025 Intel Corporation
|
||||
* Copyright (C) 2012-2014, 2018-2022 Intel Corporation
|
||||
* Copyright (C) 2013-2015 Intel Mobile Communications GmbH
|
||||
* Copyright (C) 2016-2017 Intel Deutschland GmbH
|
||||
@@ -90,9 +90,15 @@ enum iwl_data_path_subcmd_ids {
|
||||
*/
|
||||
SEC_KEY_CMD = 0x18,
|
||||
|
||||
/**
|
||||
* @OMI_SEND_STATUS_NOTIF: notification after OMI was sent
|
||||
* uses &struct iwl_omi_send_status_notif
|
||||
*/
|
||||
OMI_SEND_STATUS_NOTIF = 0xF2,
|
||||
|
||||
/**
|
||||
* @ESR_MODE_NOTIF: notification to recommend/force a wanted esr mode,
|
||||
* uses &struct iwl_mvm_esr_mode_notif
|
||||
* uses &struct iwl_esr_mode_notif
|
||||
*/
|
||||
ESR_MODE_NOTIF = 0xF3,
|
||||
|
||||
@@ -688,4 +694,13 @@ struct iwl_sec_key_cmd {
|
||||
} __packed u; /* SEC_KEY_OPERATION_API_U_VER_1 */
|
||||
} __packed; /* SEC_KEY_CMD_API_S_VER_1 */
|
||||
|
||||
/**
|
||||
* struct iwl_omi_send_status_notif - OMI status notification
|
||||
* @success: indicates that the OMI was sent successfully
|
||||
* (currently always set)
|
||||
*/
|
||||
struct iwl_omi_send_status_notif {
|
||||
__le32 success;
|
||||
} __packed; /* OMI_SEND_STATUS_NTFY_API_S_VER_1 */
|
||||
|
||||
#endif /* __iwl_fw_api_datapath_h__ */
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
|
||||
/*
|
||||
* Copyright (C) 2018-2024 Intel Corporation
|
||||
* Copyright (C) 2018-2025 Intel Corporation
|
||||
*/
|
||||
#ifndef __iwl_fw_dbg_tlv_h__
|
||||
#define __iwl_fw_dbg_tlv_h__
|
||||
@@ -527,6 +527,8 @@ enum iwl_fw_ini_time_point {
|
||||
* @IWL_FW_INI_APPLY_POLICY_OVERRIDE_DATA: override trigger data.
|
||||
* Append otherwise
|
||||
* @IWL_FW_INI_APPLY_POLICY_DUMP_COMPLETE_CMD: send cmd once dump collected
|
||||
* @IWL_FW_INI_APPLY_POLICY_RESET_HANDSHAKE: perform reset handshake and
|
||||
* split dump to before/after with region marking
|
||||
*/
|
||||
enum iwl_fw_ini_trigger_apply_policy {
|
||||
IWL_FW_INI_APPLY_POLICY_MATCH_TIME_POINT = BIT(0),
|
||||
@@ -535,6 +537,7 @@ enum iwl_fw_ini_trigger_apply_policy {
|
||||
IWL_FW_INI_APPLY_POLICY_OVERRIDE_CFG = BIT(9),
|
||||
IWL_FW_INI_APPLY_POLICY_OVERRIDE_DATA = BIT(10),
|
||||
IWL_FW_INI_APPLY_POLICY_DUMP_COMPLETE_CMD = BIT(16),
|
||||
IWL_FW_INI_APPLY_POLICY_RESET_HANDSHAKE = BIT(17),
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -556,12 +559,14 @@ enum iwl_fw_ini_trigger_reset_fw_policy {
|
||||
* @IWL_FW_INI_DEBUG_DUMP_POLICY_NO_LIMIT: OS has no limit of dump size
|
||||
* @IWL_FW_INI_DEBUG_DUMP_POLICY_MAX_LIMIT_600KB: mini dump only 600KB region dump
|
||||
* @IWL_FW_IWL_DEBUG_DUMP_POLICY_MAX_LIMIT_5MB: mini dump 5MB size dump
|
||||
* @IWL_FW_IWL_DEBUG_DUMP_POLICY_BEFORE_RESET: dump this region before reset
|
||||
* handshake (if requested by %IWL_FW_INI_APPLY_POLICY_RESET_HANDSHAKE)
|
||||
*/
|
||||
enum iwl_fw_ini_dump_policy {
|
||||
IWL_FW_INI_DEBUG_DUMP_POLICY_NO_LIMIT = BIT(0),
|
||||
IWL_FW_INI_DEBUG_DUMP_POLICY_MAX_LIMIT_600KB = BIT(1),
|
||||
IWL_FW_IWL_DEBUG_DUMP_POLICY_MAX_LIMIT_5MB = BIT(2),
|
||||
|
||||
IWL_FW_IWL_DEBUG_DUMP_POLICY_BEFORE_RESET = BIT(3),
|
||||
};
|
||||
|
||||
/**
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user