diff options
Diffstat (limited to 'sys/contrib/dev/rtw88/rtw8703b.c')
| -rw-r--r-- | sys/contrib/dev/rtw88/rtw8703b.c | 64 | 
1 files changed, 3 insertions, 61 deletions
| diff --git a/sys/contrib/dev/rtw88/rtw8703b.c b/sys/contrib/dev/rtw88/rtw8703b.c index 4cf3a08b785e..18ca16f521f2 100644 --- a/sys/contrib/dev/rtw88/rtw8703b.c +++ b/sys/contrib/dev/rtw88/rtw8703b.c @@ -519,15 +519,6 @@ static const struct rtw_rqpn rqpn_table_8703b[] = {  	 RTW_DMA_MAPPING_EXTRA, RTW_DMA_MAPPING_HIGH},  }; -/* Default power index table for RTL8703B, used if EFUSE does not - * contain valid data. Replaces EFUSE data from offset 0x10 (start of - * txpwr_idx_table). - */ -static const u8 rtw8703b_txpwr_idx_table[] = { -	0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, -	0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x02 -}; -  static void try_mac_from_devicetree(struct rtw_dev *rtwdev)  {  #if defined(CONFIG_OF) @@ -546,15 +537,9 @@ static void try_mac_from_devicetree(struct rtw_dev *rtwdev)  #endif  } -#define DBG_EFUSE_FIX(rtwdev, name)					\ -	rtw_dbg(rtwdev, RTW_DBG_EFUSE, "Fixed invalid EFUSE value: "	\ -		# name "=0x%x\n", rtwdev->efuse.name) -  static int rtw8703b_read_efuse(struct rtw_dev *rtwdev, u8 *log_map)  {  	struct rtw_efuse *efuse = &rtwdev->efuse; -	u8 *pwr = (u8 *)efuse->txpwr_idx_table; -	bool valid = false;  	int ret;  	ret = rtw8723x_read_efuse(rtwdev, log_map); @@ -564,51 +549,6 @@ static int rtw8703b_read_efuse(struct rtw_dev *rtwdev, u8 *log_map)  	if (!is_valid_ether_addr(efuse->addr))  		try_mac_from_devicetree(rtwdev); -	/* If TX power index table in EFUSE is invalid, fall back to -	 * built-in table. -	 */ -	for (int i = 0; i < ARRAY_SIZE(rtw8703b_txpwr_idx_table); i++) -		if (pwr[i] != 0xff) { -			valid = true; -			break; -		} -	if (!valid) { -		for (int i = 0; i < ARRAY_SIZE(rtw8703b_txpwr_idx_table); i++) -			pwr[i] = rtw8703b_txpwr_idx_table[i]; -		rtw_dbg(rtwdev, RTW_DBG_EFUSE, -			"Replaced invalid EFUSE TX power index table."); -		rtw8723x_debug_txpwr_limit(rtwdev, -					   efuse->txpwr_idx_table, 2); -	} - -	/* Override invalid antenna settings. */ -	if (efuse->bt_setting == 0xff) { -		/* shared antenna */ -		efuse->bt_setting |= BIT(0); -		/* RF path A */ -		efuse->bt_setting &= ~BIT(6); -		DBG_EFUSE_FIX(rtwdev, bt_setting); -	} - -	/* Override invalid board options: The coex code incorrectly -	 * assumes that if bits 6 & 7 are set the board doesn't -	 * support coex. Regd is also derived from rf_board_option and -	 * should be 0 if there's no valid data. -	 */ -	if (efuse->rf_board_option == 0xff) { -		efuse->regd = 0; -		efuse->rf_board_option &= GENMASK(5, 0); -		DBG_EFUSE_FIX(rtwdev, rf_board_option); -	} - -	/* Override invalid crystal cap setting, default comes from -	 * vendor driver. Chip specific. -	 */ -	if (efuse->crystal_cap == 0xff) { -		efuse->crystal_cap = 0x20; -		DBG_EFUSE_FIX(rtwdev, crystal_cap); -	} -  	return 0;  } @@ -1904,6 +1844,7 @@ static const struct rtw_chip_ops rtw8703b_ops = {  	.power_on		= rtw_power_on,  	.power_off		= rtw_power_off,  	.mac_init		= rtw8723x_mac_init, +	.mac_postinit		= rtw8723x_mac_postinit,  	.dump_fw_crash		= NULL,  	.shutdown		= NULL,  	.read_efuse		= rtw8703b_read_efuse, @@ -1916,6 +1857,7 @@ static const struct rtw_chip_ops rtw8703b_ops = {  	.set_antenna		= NULL,  	.cfg_ldo25		= rtw8723x_cfg_ldo25,  	.efuse_grant		= rtw8723x_efuse_grant, +	.set_ampdu_factor	= NULL,  	.false_alarm_statistics	= rtw8723x_false_alarm_statistics,  	.phy_calibration	= rtw8703b_phy_calibration,  	.dpk_track		= NULL, @@ -1953,7 +1895,7 @@ const struct rtw_chip_info rtw8703b_hw_spec = {  	.id = RTW_CHIP_TYPE_8703B,  	.fw_name = "rtw88/rtw8703b_fw.bin", -	.wlan_cpu = RTW_WCPU_11N, +	.wlan_cpu = RTW_WCPU_8051,  	.tx_pkt_desc_sz = 40,  	.tx_buf_desc_sz = 16,  	.rx_pkt_desc_sz = 24, | 
