-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
wifi: rtw89: 8851b: add 8851B basic chip_info
BugLink: https://launchpad.net/bugs/2023952 8851B is a 1x1 80 MHz bandwidth chip working on 2/5 GHz. Add these basic information, and more settings will be added by functions. Signed-off-by: Ping-Ke Shih <pkshih@realtek.com> Signed-off-by: Kalle Valo <kvalo@kernel.org> Link: https://lore.kernel.org/r/20230421024551.29994-2-pkshih@realtek.com (cherry picked from commit c8d89bf) Signed-off-by: Chia-Lin Kao (AceLan) <acelan.kao@canonical.com> Acked-by: Andrei Gherzan <andrei.gherzan@canonical.com> Acked-by: Tim Gardner <tim.gardner@canonical.com> Signed-off-by: Roxana Nicolescu <roxana.nicolescu@canonical.com>
- Loading branch information
Ping-Ke Shih
authored and
Roxana Nicolescu
committed
Jul 7, 2023
1 parent
9bc14a9
commit 5d0e968
Showing
2 changed files
with
116 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,101 @@ | ||
// SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause | ||
/* Copyright(c) 2022-2023 Realtek Corporation | ||
*/ | ||
|
||
#include "coex.h" | ||
#include "fw.h" | ||
#include "mac.h" | ||
#include "phy.h" | ||
#include "reg.h" | ||
#include "rtw8851b.h" | ||
#include "rtw8851b_table.h" | ||
#include "txrx.h" | ||
#include "util.h" | ||
|
||
#define RTW8851B_FW_FORMAT_MAX 0 | ||
#define RTW8851B_FW_BASENAME "rtw89/rtw8851b_fw" | ||
#define RTW8851B_MODULE_FIRMWARE \ | ||
RTW8851B_FW_BASENAME ".bin" | ||
|
||
static const struct rtw89_chip_ops rtw8851b_chip_ops = { | ||
.fem_setup = NULL, | ||
.fill_txdesc = rtw89_core_fill_txdesc, | ||
.fill_txdesc_fwcmd = rtw89_core_fill_txdesc, | ||
.h2c_dctl_sec_cam = NULL, | ||
}; | ||
|
||
const struct rtw89_chip_info rtw8851b_chip_info = { | ||
.chip_id = RTL8851B, | ||
.ops = &rtw8851b_chip_ops, | ||
.fw_basename = RTW8851B_FW_BASENAME, | ||
.fw_format_max = RTW8851B_FW_FORMAT_MAX, | ||
.try_ce_fw = true, | ||
.fifo_size = 196608, | ||
.dle_scc_rsvd_size = 98304, | ||
.max_amsdu_limit = 3500, | ||
.dis_2g_40m_ul_ofdma = true, | ||
.rsvd_ple_ofst = 0x2f800, | ||
.wde_qempty_acq_num = 4, | ||
.wde_qempty_mgq_sel = 4, | ||
.rf_base_addr = {0xe000}, | ||
.pwr_on_seq = NULL, | ||
.pwr_off_seq = NULL, | ||
.bb_table = &rtw89_8851b_phy_bb_table, | ||
.bb_gain_table = &rtw89_8851b_phy_bb_gain_table, | ||
.rf_table = {&rtw89_8851b_phy_radioa_table,}, | ||
.nctl_table = &rtw89_8851b_phy_nctl_table, | ||
.byr_table = &rtw89_8851b_byr_table, | ||
.dflt_parms = &rtw89_8851b_dflt_parms, | ||
.rfe_parms_conf = rtw89_8851b_rfe_parms_conf, | ||
.txpwr_factor_rf = 2, | ||
.txpwr_factor_mac = 1, | ||
.dig_table = NULL, | ||
.tssi_dbw_table = NULL, | ||
.support_chanctx_num = 0, | ||
.support_bands = BIT(NL80211_BAND_2GHZ) | | ||
BIT(NL80211_BAND_5GHZ), | ||
.support_bw160 = false, | ||
.support_ul_tb_ctrl = true, | ||
.hw_sec_hdr = false, | ||
.rf_path_num = 1, | ||
.tx_nss = 1, | ||
.rx_nss = 1, | ||
.acam_num = 32, | ||
.bcam_num = 20, | ||
.scam_num = 128, | ||
.bacam_num = 2, | ||
.bacam_dynamic_num = 4, | ||
.bacam_v1 = false, | ||
.sec_ctrl_efuse_size = 4, | ||
.physical_efuse_size = 1216, | ||
.logical_efuse_size = 2048, | ||
.limit_efuse_size = 1280, | ||
.dav_phy_efuse_size = 0, | ||
.dav_log_efuse_size = 0, | ||
.phycap_addr = 0x580, | ||
.phycap_size = 128, | ||
.para_ver = 0, | ||
.wlcx_desired = 0x06000000, | ||
.btcx_desired = 0x7, | ||
.scbd = 0x1, | ||
.mailbox = 0x1, | ||
|
||
.ps_mode_supported = BIT(RTW89_PS_MODE_RFOFF) | | ||
BIT(RTW89_PS_MODE_CLK_GATED), | ||
.low_power_hci_modes = 0, | ||
.h2c_cctl_func_id = H2C_FUNC_MAC_CCTLINFO_UD, | ||
.hci_func_en_addr = R_AX_HCI_FUNC_EN, | ||
.h2c_desc_size = sizeof(struct rtw89_txwd_body), | ||
.txwd_body_size = sizeof(struct rtw89_txwd_body), | ||
.bss_clr_map_reg = R_BSS_CLR_MAP_V1, | ||
.dma_ch_mask = BIT(RTW89_DMA_ACH4) | BIT(RTW89_DMA_ACH5) | | ||
BIT(RTW89_DMA_ACH6) | BIT(RTW89_DMA_ACH7) | | ||
BIT(RTW89_DMA_B1MG) | BIT(RTW89_DMA_B1HI), | ||
.edcca_lvl_reg = R_SEG0R_EDCCA_LVL_V1, | ||
}; | ||
EXPORT_SYMBOL(rtw8851b_chip_info); | ||
|
||
MODULE_FIRMWARE(RTW8851B_MODULE_FIRMWARE); | ||
MODULE_AUTHOR("Realtek Corporation"); | ||
MODULE_DESCRIPTION("Realtek 802.11ax wireless 8851B driver"); | ||
MODULE_LICENSE("Dual BSD/GPL"); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
/* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */ | ||
/* Copyright(c) 2022-2023 Realtek Corporation | ||
*/ | ||
|
||
#ifndef __RTW89_8851B_H__ | ||
#define __RTW89_8851B_H__ | ||
|
||
#include "core.h" | ||
|
||
#define RF_PATH_NUM_8851B 1 | ||
#define BB_PATH_NUM_8851B 1 | ||
|
||
extern const struct rtw89_chip_info rtw8851b_chip_info; | ||
|
||
#endif |