Lines Matching refs:data
121 /* rate data (static) */
384 struct iwl_nvm_data *data,
418 !data->sku_cap_band_52ghz_enable)
430 data->vht160_supported = true;
444 channel = &data->channels[n_channels];
453 /* Initialize regulatory-based run-time data */
484 struct iwl_nvm_data *data,
504 if (data->vht160_supported)
514 if (data->sku_cap_mimo_disabled) {
836 struct iwl_nvm_data *data,
851 iwl_init_ht_hw_capab(trans, data, &ht_cap, NL80211_BAND_5GHZ,
854 iwl_init_vht_hw_capab(trans, data, &vht_cap, tx_chains, rx_chains);
883 struct iwl_nvm_data *data,
895 if (!data->sku_cap_11be_enable || iwlwifi_mod_params.disable_11be)
1032 iftype_data->vendor_elems.data = iwl_vendor_caps;
1045 struct iwl_nvm_data *data,
1057 BUILD_BUG_ON(sizeof(data->iftd.low) != sizeof(iwl_he_eht_capa));
1058 BUILD_BUG_ON(sizeof(data->iftd.high) != sizeof(iwl_he_eht_capa));
1059 BUILD_BUG_ON(sizeof(data->iftd.uhb) != sizeof(iwl_he_eht_capa));
1063 iftype_data = data->iftd.low;
1066 iftype_data = data->iftd.high;
1069 iftype_data = data->iftd.uhb;
1082 iwl_nvm_fixup_sband_iftd(trans, data, sband, &iftype_data[i],
1085 iwl_init_he_6ghz_capa(trans, data, sband, tx_chains, rx_chains);
1089 struct iwl_nvm_data *data,
1100 n_channels = iwl_init_channel_map(dev, cfg, data, nvm_ch_flags,
1102 sband = &data->bands[NL80211_BAND_2GHZ];
1106 n_used += iwl_init_sband_channels(data, sband, n_channels,
1108 iwl_init_ht_hw_capab(trans, data, &sband->ht_cap, NL80211_BAND_2GHZ,
1111 if (data->sku_cap_11ax_enable && !iwlwifi_mod_params.disable_11ax)
1112 iwl_init_he_hw_capab(trans, data, sband, tx_chains, rx_chains,
1115 sband = &data->bands[NL80211_BAND_5GHZ];
1119 n_used += iwl_init_sband_channels(data, sband, n_channels,
1121 iwl_init_ht_hw_capab(trans, data, &sband->ht_cap, NL80211_BAND_5GHZ,
1123 if (data->sku_cap_11ac_enable && !iwlwifi_mod_params.disable_11ac)
1124 iwl_init_vht_hw_capab(trans, data, &sband->vht_cap,
1127 if (data->sku_cap_11ax_enable && !iwlwifi_mod_params.disable_11ax)
1128 iwl_init_he_hw_capab(trans, data, sband, tx_chains, rx_chains,
1132 sband = &data->bands[NL80211_BAND_6GHZ];
1137 n_used += iwl_init_sband_channels(data, sband, n_channels,
1140 if (data->sku_cap_11ax_enable && !iwlwifi_mod_params.disable_11ax)
1141 iwl_init_he_hw_capab(trans, data, sband, tx_chains, rx_chains,
1191 struct iwl_nvm_data *data,
1195 data->radio_cfg_type = NVM_RF_CFG_TYPE_MSK(radio_cfg);
1196 data->radio_cfg_step = NVM_RF_CFG_STEP_MSK(radio_cfg);
1197 data->radio_cfg_dash = NVM_RF_CFG_DASH_MSK(radio_cfg);
1198 data->radio_cfg_pnum = NVM_RF_CFG_PNUM_MSK(radio_cfg);
1203 data->radio_cfg_type = EXT_NVM_RF_CFG_TYPE_MSK(radio_cfg);
1204 data->radio_cfg_step = EXT_NVM_RF_CFG_STEP_MSK(radio_cfg);
1205 data->radio_cfg_dash = EXT_NVM_RF_CFG_DASH_MSK(radio_cfg);
1206 data->radio_cfg_pnum = EXT_NVM_RF_CFG_FLAVOR_MSK(radio_cfg);
1207 data->valid_tx_ant = EXT_NVM_RF_CFG_TX_ANT_MSK(radio_cfg);
1208 data->valid_rx_ant = EXT_NVM_RF_CFG_RX_ANT_MSK(radio_cfg);
1227 struct iwl_nvm_data *data)
1234 iwl_flip_hw_address(mac_addr0, mac_addr1, data->hw_addr);
1239 if (is_valid_ether_addr(data->hw_addr))
1245 iwl_flip_hw_address(mac_addr0, mac_addr1, data->hw_addr);
1250 struct iwl_nvm_data *data,
1268 memcpy(data->hw_addr, hw_addr, ETH_ALEN);
1274 if (is_valid_ether_addr(data->hw_addr) &&
1289 iwl_flip_hw_address(mac_addr0, mac_addr1, data->hw_addr);
1299 struct iwl_nvm_data *data, const __be16 *nvm_hw,
1303 iwl_set_hw_address_from_csr(trans, data);
1308 data->hw_addr[0] = hw_addr[1];
1309 data->hw_addr[1] = hw_addr[0];
1310 data->hw_addr[2] = hw_addr[3];
1311 data->hw_addr[3] = hw_addr[2];
1312 data->hw_addr[4] = hw_addr[5];
1313 data->hw_addr[5] = hw_addr[4];
1315 iwl_set_hw_address_family_8000(trans, cfg, data,
1319 if (!is_valid_ether_addr(data->hw_addr)) {
1326 data->hw_addr, iwl_read_prph(trans, REG_OTP_MINOR));
1368 struct iwl_nvm_data *data;
1374 data = kzalloc(struct_size(data, channels,
1378 data = kzalloc(struct_size(data, channels,
1381 if (!data)
1386 data->nvm_version = mei_nvm->nvm_version;
1388 iwl_set_radio_cfg(cfg, data, mei_nvm->radio_cfg);
1389 if (data->valid_tx_ant)
1390 tx_chains &= data->valid_tx_ant;
1391 if (data->valid_rx_ant)
1392 rx_chains &= data->valid_rx_ant;
1394 data->sku_cap_mimo_disabled = false;
1395 data->sku_cap_band_24ghz_enable = true;
1396 data->sku_cap_band_52ghz_enable = true;
1397 data->sku_cap_11n_enable =
1399 data->sku_cap_11ac_enable = true;
1400 data->sku_cap_11ax_enable =
1403 data->lar_enabled = mei_nvm->caps & MEI_NVM_CAPS_LARI_SUPPORT;
1405 data->n_hw_addrs = mei_nvm->n_hw_addrs;
1407 if (iwl_set_hw_address(trans, cfg, data, NULL, NULL)) {
1408 kfree(data);
1412 if (data->lar_enabled &&
1416 iwl_init_sbands(trans, data, mei_nvm->channels, tx_chains, rx_chains,
1419 return data;
1431 struct iwl_nvm_data *data;
1439 data = kzalloc(struct_size(data, channels,
1443 data = kzalloc(struct_size(data, channels,
1447 data = kzalloc(struct_size(data, channels,
1450 if (!data)
1453 data->nvm_version = iwl_get_nvm_version(cfg, nvm_sw);
1456 iwl_set_radio_cfg(cfg, data, radio_cfg);
1457 if (data->valid_tx_ant)
1458 tx_chains &= data->valid_tx_ant;
1459 if (data->valid_rx_ant)
1460 rx_chains &= data->valid_rx_ant;
1463 data->sku_cap_band_24ghz_enable = sku & NVM_SKU_CAP_BAND_24GHZ;
1464 data->sku_cap_band_52ghz_enable = sku & NVM_SKU_CAP_BAND_52GHZ;
1465 data->sku_cap_11n_enable = sku & NVM_SKU_CAP_11N_ENABLE;
1467 data->sku_cap_11n_enable = false;
1468 data->sku_cap_11ac_enable = data->sku_cap_11n_enable &&
1470 data->sku_cap_mimo_disabled = sku & NVM_SKU_CAP_MIMO_DISABLE;
1472 data->n_hw_addrs = iwl_get_n_hw_addrs(cfg, nvm_sw);
1479 kfree(data);
1488 data->xtal_calib[0] = *(nvm_calib + XTAL_CALIB);
1489 data->xtal_calib[1] = *(nvm_calib + XTAL_CALIB + 1);
1492 u16 lar_offset = data->nvm_version < 0xE39 ?
1497 data->lar_enabled = !!(lar_config &
1499 lar_enabled = data->lar_enabled;
1504 if (iwl_set_hw_address(trans, cfg, data, nvm_hw, mac_override)) {
1505 kfree(data);
1516 iwl_init_sbands(trans, data, ch_section, tx_chains, rx_chains,
1518 data->calib_version = 255;
1520 return data;
1765 void iwl_nvm_fixups(u32 hw_id, unsigned int section, u8 *data,
1772 hw_id == IWL_4165_DEVICE_ID && data && len >= 5 &&
1773 (data[4] & NVM_SKU_CAP_MIMO_DISABLE))
1775 data[3] = ANT_B | (ANT_B << 4);
1787 * 5a40 -> data
1810 u8 data[];
1855 eof = fw_entry->data + fw_entry->size;
1856 dword_buff = (const __le32 *)fw_entry->data;
1863 * This header must be skipped when providing the NVM data to the FW.
1868 file_sec = (const void *)(fw_entry->data + NVM_HEADER_SIZE);
1881 file_sec = (const void *)fw_entry->data;
1885 if (file_sec->data > eof) {
1922 if (file_sec->data + section_size > eof) {
1936 temp = kmemdup(file_sec->data, section_size, GFP_KERNEL);
1944 kfree(nvm_sections[section_id].data);
1945 nvm_sections[section_id].data = temp;
1949 file_sec = (const void *)(file_sec->data + section_size);
1964 .data = { &cmd, },
1996 rsp = (void *)hcmd.resp_pkt->data;
2019 /* Initialize general data */
2027 /* Initialize MAC sku data */
2044 /* Initialize PHY sku data */