| /linux/drivers/net/wireless/realtek/rtw88/ |
| H A D | rtw8814a.c | 19 static void rtw8814a_efuse_grant(struct rtw_dev *rtwdev, bool on) in rtw8814a_efuse_grant() argument 22 rtw_write8(rtwdev, REG_EFUSE_ACCESS, EFUSE_ACCESS_ON); in rtw8814a_efuse_grant() 24 rtw_write16_set(rtwdev, REG_SYS_FUNC_EN, BIT_FEN_ELDR); in rtw8814a_efuse_grant() 25 rtw_write16_set(rtwdev, REG_SYS_CLKR, in rtw8814a_efuse_grant() 28 rtw_write8(rtwdev, REG_EFUSE_ACCESS, EFUSE_ACCESS_OFF); in rtw8814a_efuse_grant() 32 static void rtw8814a_read_rfe_type(struct rtw_dev *rtwdev) in rtw8814a_read_rfe_type() argument 34 struct rtw_efuse *efuse = &rtwdev->efuse; in rtw8814a_read_rfe_type() 39 if (rtw_hci_type(rtwdev) == RTW_HCI_TYPE_PCIE) in rtw8814a_read_rfe_type() 41 else if (rtw_hci_type(rtwdev) == RTW_HCI_TYPE_USB) in rtw8814a_read_rfe_type() 45 static void rtw8814a_read_amplifier_type(struct rtw_dev *rtwdev) in rtw8814a_read_amplifier_type() argument [all …]
|
| H A D | ps.c | 13 static int rtw_ips_pwr_up(struct rtw_dev *rtwdev) in rtw_ips_pwr_up() argument 17 ret = rtw_core_start(rtwdev); in rtw_ips_pwr_up() 19 rtw_err(rtwdev, "leave idle state failed\n"); in rtw_ips_pwr_up() 21 rtw_coex_ips_notify(rtwdev, COEX_IPS_LEAVE); in rtw_ips_pwr_up() 22 rtw_set_channel(rtwdev); in rtw_ips_pwr_up() 27 int rtw_enter_ips(struct rtw_dev *rtwdev) in rtw_enter_ips() argument 29 if (!test_bit(RTW_FLAG_POWERON, rtwdev->flags)) in rtw_enter_ips() 32 rtw_coex_ips_notify(rtwdev, COEX_IPS_ENTER); in rtw_enter_ips() 34 rtw_core_stop(rtwdev); in rtw_enter_ips() 35 rtw_hci_link_ps(rtwdev, true); in rtw_enter_ips() [all …]
|
| H A D | rtw88xxa.c | 18 void rtw88xxa_efuse_grant(struct rtw_dev *rtwdev, bool on) in rtw88xxa_efuse_grant() argument 21 rtw_write8(rtwdev, REG_EFUSE_ACCESS, EFUSE_ACCESS_ON); in rtw88xxa_efuse_grant() 23 rtw_write16_set(rtwdev, REG_SYS_FUNC_EN, BIT_FEN_ELDR); in rtw88xxa_efuse_grant() 24 rtw_write16_set(rtwdev, REG_SYS_CLKR, in rtw88xxa_efuse_grant() 27 rtw_write8(rtwdev, REG_EFUSE_ACCESS, EFUSE_ACCESS_OFF); in rtw88xxa_efuse_grant() 32 static void rtw8812a_read_amplifier_type(struct rtw_dev *rtwdev) in rtw8812a_read_amplifier_type() argument 34 struct rtw_efuse *efuse = &rtwdev->efuse; in rtw8812a_read_amplifier_type() 80 static void rtw8812a_read_rfe_type(struct rtw_dev *rtwdev, in rtw8812a_read_rfe_type() argument 83 struct rtw_efuse *efuse = &rtwdev->efuse; in rtw8812a_read_rfe_type() 86 if (rtwdev->hci.type == RTW_HCI_TYPE_USB) in rtw8812a_read_rfe_type() [all …]
|
| H A D | wow.c | 13 static void rtw_wow_show_wakeup_reason(struct rtw_dev *rtwdev) in rtw_wow_show_wakeup_reason() argument 21 reason = rtw_read8(rtwdev, REG_WOWLAN_WAKE_REASON); in rtw_wow_show_wakeup_reason() 26 rtw_dbg(rtwdev, RTW_DBG_WOW, "WOW: Rx deauth\n"); in rtw_wow_show_wakeup_reason() 30 rtw_dbg(rtwdev, RTW_DBG_WOW, "WOW: AP is off\n"); in rtw_wow_show_wakeup_reason() 34 rtw_dbg(rtwdev, RTW_DBG_WOW, "WOW: Rx magic packet\n"); in rtw_wow_show_wakeup_reason() 38 rtw_dbg(rtwdev, RTW_DBG_WOW, "WOW: Rx gtk rekey\n"); in rtw_wow_show_wakeup_reason() 45 rtw_dbg(rtwdev, RTW_DBG_WOW, "WOW: Rx pattern match packet\n"); in rtw_wow_show_wakeup_reason() 53 rtw_dbg(rtwdev, RTW_DBG_WOW, "Rx NLO\n"); in rtw_wow_show_wakeup_reason() 56 rtw_warn(rtwdev, "Unknown wakeup reason %x\n", reason); in rtw_wow_show_wakeup_reason() 57 ieee80211_report_wowlan_wakeup(rtwdev->wow.wow_vif, NULL, in rtw_wow_show_wakeup_reason() [all …]
|
| H A D | mac.c | 12 void rtw_set_channel_mac(struct rtw_dev *rtwdev, u8 channel, u8 bw, in rtw_set_channel_mac() argument 26 rtw_write8(rtwdev, REG_DATA_SC, in rtw_set_channel_mac() 29 value32 = rtw_read32(rtwdev, REG_WMAC_TRXPTCL_CTL); in rtw_set_channel_mac() 42 rtw_write32(rtwdev, REG_WMAC_TRXPTCL_CTL, value32); in rtw_set_channel_mac() 44 if (rtw_chip_wcpu_8051(rtwdev)) in rtw_set_channel_mac() 47 value32 = rtw_read32(rtwdev, REG_AFE_CTRL1) & ~(BIT_MAC_CLK_SEL); in rtw_set_channel_mac() 49 rtw_write32(rtwdev, REG_AFE_CTRL1, value32); in rtw_set_channel_mac() 51 rtw_write8(rtwdev, REG_USTIME_TSF, MAC_CLK_SPEED); in rtw_set_channel_mac() 52 rtw_write8(rtwdev, REG_USTIME_EDCA, MAC_CLK_SPEED); in rtw_set_channel_mac() 54 value8 = rtw_read8(rtwdev, REG_CCK_CHECK); in rtw_set_channel_mac() [all …]
|
| H A D | rtw8812a.c | 14 static void rtw8812a_power_off(struct rtw_dev *rtwdev) in rtw8812a_power_off() argument 16 rtw88xxa_power_off(rtwdev, enter_lps_flow_8812a); in rtw8812a_power_off() 58 static void rtw8812a_query_phy_status(struct rtw_dev *rtwdev, u8 *phy_status, in rtw8812a_query_phy_status() argument 61 rtw88xxa_query_phy_status(rtwdev, phy_status, pkt_stat, in rtw8812a_query_phy_status() 67 if (rtwdev->hal.cck_high_power) in rtw8812a_query_phy_status() 77 static void rtw8812a_cfg_ldo25(struct rtw_dev *rtwdev, bool enable) in rtw8812a_cfg_ldo25() argument 81 static void rtw8812a_do_lck(struct rtw_dev *rtwdev) in rtw8812a_do_lck() argument 85 cont_tx = rtw_read32_mask(rtwdev, REG_SINGLE_TONE_CONT_TX, 0x70000); in rtw8812a_do_lck() 87 lc_cal = rtw_read_rf(rtwdev, RF_PATH_A, RF_CFGCH, RFREG_MASK); in rtw8812a_do_lck() 90 rtw_write8(rtwdev, REG_TXPAUSE, 0xff); in rtw8812a_do_lck() [all …]
|
| H A D | rtw8822c.c | 23 static void rtw8822c_config_trx_mode(struct rtw_dev *rtwdev, u8 tx_path, 44 static int rtw8822c_read_efuse(struct rtw_dev *rtwdev, u8 *log_map) in rtw8822c_read_efuse() argument 46 struct rtw_efuse *efuse = &rtwdev->efuse; in rtw8822c_read_efuse() 70 switch (rtw_hci_type(rtwdev)) { in rtw8822c_read_efuse() 88 static void rtw8822c_header_file_init(struct rtw_dev *rtwdev, bool pre) in rtw8822c_header_file_init() argument 90 rtw_write32_set(rtwdev, REG_3WIRE, BIT_3WIRE_TX_EN | BIT_3WIRE_RX_EN); in rtw8822c_header_file_init() 91 rtw_write32_set(rtwdev, REG_3WIRE, BIT_3WIRE_PI_ON); in rtw8822c_header_file_init() 92 rtw_write32_set(rtwdev, REG_3WIRE2, BIT_3WIRE_TX_EN | BIT_3WIRE_RX_EN); in rtw8822c_header_file_init() 93 rtw_write32_set(rtwdev, REG_3WIRE2, BIT_3WIRE_PI_ON); in rtw8822c_header_file_init() 96 rtw_write32_clr(rtwdev, REG_ENCCK, BIT_CCK_OFDM_BLK_EN); in rtw8822c_header_file_init() [all …]
|
| H A D | rtw8703b.c | 522 static void try_mac_from_devicetree(struct rtw_dev *rtwdev) in try_mac_from_devicetree() argument 524 struct device_node *node = rtwdev->dev->of_node; in try_mac_from_devicetree() 525 struct rtw_efuse *efuse = &rtwdev->efuse; in try_mac_from_devicetree() 531 rtw_dbg(rtwdev, RTW_DBG_EFUSE, in try_mac_from_devicetree() 538 static int rtw8703b_read_efuse(struct rtw_dev *rtwdev, u8 *log_map) in rtw8703b_read_efuse() argument 540 struct rtw_efuse *efuse = &rtwdev->efuse; in rtw8703b_read_efuse() 543 ret = rtw8723x_read_efuse(rtwdev, log_map); in rtw8703b_read_efuse() 548 try_mac_from_devicetree(rtwdev); in rtw8703b_read_efuse() 553 static void rtw8703b_pwrtrack_init(struct rtw_dev *rtwdev) in rtw8703b_pwrtrack_init() argument 555 struct rtw_dm_info *dm_info = &rtwdev->dm_info; in rtw8703b_pwrtrack_init() [all …]
|
| H A D | rtw8821a.c | 14 static void rtw8821a_power_off(struct rtw_dev *rtwdev) in rtw8821a_power_off() argument 16 rtw88xxa_power_off(rtwdev, enter_lps_flow_8821a); in rtw8821a_power_off() 41 static void rtw8821a_query_phy_status(struct rtw_dev *rtwdev, u8 *phy_status, in rtw8821a_query_phy_status() argument 44 rtw88xxa_query_phy_status(rtwdev, phy_status, pkt_stat, in rtw8821a_query_phy_status() 48 static void rtw8821a_cfg_ldo25(struct rtw_dev *rtwdev, bool enable) in rtw8821a_cfg_ldo25() argument 57 static void rtw8821a_iqk_backup_rf(struct rtw_dev *rtwdev, u32 *rfa_backup, in rtw8821a_iqk_backup_rf() argument 63 rtw_write32_mask(rtwdev, REG_CCASEL, BIT(31), 0x0); in rtw8821a_iqk_backup_rf() 67 rfa_backup[i] = rtw_read_rf(rtwdev, RF_PATH_A, in rtw8821a_iqk_backup_rf() 71 static void rtw8821a_iqk_restore_rf(struct rtw_dev *rtwdev, in rtw8821a_iqk_restore_rf() argument 78 rtw_write32_mask(rtwdev, REG_CCASEL, BIT(31), 0x0); in rtw8821a_iqk_restore_rf() [all …]
|
| H A D | rtw8723d.c | 67 static void rtw8723d_pwrtrack_init(struct rtw_dev *rtwdev) in rtw8723d_pwrtrack_init() argument 69 struct rtw_dm_info *dm_info = &rtwdev->dm_info; in rtw8723d_pwrtrack_init() 74 for (path = RF_PATH_A; path < rtwdev->hal.rf_path_num; path++) { in rtw8723d_pwrtrack_init() 80 dm_info->thermal_meter_k = rtwdev->efuse.thermal_meter_k; in rtw8723d_pwrtrack_init() 85 static void rtw8723d_phy_set_param(struct rtw_dev *rtwdev) in rtw8723d_phy_set_param() argument 91 rtw_write16_set(rtwdev, REG_SYS_FUNC_EN, in rtw8723d_phy_set_param() 93 rtw_write8_set(rtwdev, REG_RF_CTRL, in rtw8723d_phy_set_param() 95 rtw_write8(rtwdev, REG_AFE_CTRL1 + 1, 0x80); in rtw8723d_phy_set_param() 97 rtw_phy_load_tables(rtwdev); in rtw8723d_phy_set_param() 100 rtw_write32_clr(rtwdev, REG_RCR, BIT_RCR_ADF); in rtw8723d_phy_set_param() [all …]
|
| H A D | mac80211.c | 22 struct rtw_dev *rtwdev = hw->priv; in rtw_ops_tx() local 24 if (!test_bit(RTW_FLAG_RUNNING, rtwdev->flags)) { in rtw_ops_tx() 29 rtw_tx(rtwdev, control, skb); in rtw_ops_tx() 35 struct rtw_dev *rtwdev = hw->priv; in rtw_ops_wake_tx_queue() local 38 if (!test_bit(RTW_FLAG_RUNNING, rtwdev->flags)) in rtw_ops_wake_tx_queue() 41 spin_lock_bh(&rtwdev->txq_lock); in rtw_ops_wake_tx_queue() 43 list_add_tail(&rtwtxq->list, &rtwdev->txqs); in rtw_ops_wake_tx_queue() 44 spin_unlock_bh(&rtwdev->txq_lock); in rtw_ops_wake_tx_queue() 48 __rtw_tx_work(rtwdev); in rtw_ops_wake_tx_queue() 50 queue_work(rtwdev->tx_wq, &rtwdev->tx_work); in rtw_ops_wake_tx_queue() [all …]
|
| H A D | main.c | 167 struct rtw_dev *rtwdev; member 171 static void rtw_dynamic_csi_rate(struct rtw_dev *rtwdev, struct rtw_vif *rtwvif) in rtw_dynamic_csi_rate() argument 173 struct rtw_bf_info *bf_info = &rtwdev->bf_info; in rtw_dynamic_csi_rate() 181 rtw_chip_cfg_csi_rate(rtwdev, rtwdev->dm_info.min_rssi, in rtw_dynamic_csi_rate() 198 rtw_dynamic_csi_rate(iter_data->rtwdev, rtwvif); in rtw_vif_watch_dog_iter() 206 static void rtw_sw_beacon_loss_check(struct rtw_dev *rtwdev, in rtw_sw_beacon_loss_check() argument 212 if (rtw_fw_feature_check(&rtwdev->fw, FW_FEATURE_BCN_FILTER) || !rtwvif) in rtw_sw_beacon_loss_check() 218 rtwdev->beacon_loss = received_beacons < expected_beacons / 2; in rtw_sw_beacon_loss_check() 226 struct rtw_dev *rtwdev = container_of(work, struct rtw_dev, in rtw_watch_dog_work() local 228 struct rtw_traffic_stats *stats = &rtwdev->stats; in rtw_watch_dog_work() [all …]
|
| H A D | coex.c | 13 static u8 rtw_coex_next_rssi_state(struct rtw_dev *rtwdev, u8 pre_state, in rtw_coex_next_rssi_state() argument 16 const struct rtw_chip_info *chip = rtwdev->chip; in rtw_coex_next_rssi_state() 36 static void rtw_coex_limited_tx(struct rtw_dev *rtwdev, in rtw_coex_limited_tx() argument 39 const struct rtw_chip_info *chip = rtwdev->chip; in rtw_coex_limited_tx() 40 struct rtw_coex *coex = &rtwdev->coex; in rtw_coex_limited_tx() 53 coex_stat->darfrc = rtw_read32(rtwdev, REG_DARFRC); in rtw_coex_limited_tx() 54 coex_stat->darfrch = rtw_read32(rtwdev, REG_DARFRCH); in rtw_coex_limited_tx() 55 coex_stat->retry_limit = rtw_read16(rtwdev, REG_RETRY_LIMIT); in rtw_coex_limited_tx() 60 rtw_read8(rtwdev, REG_AMPDU_MAX_TIME_V1); in rtw_coex_limited_tx() 69 rtw_write8_set(rtwdev, REG_TX_HANG_CTRL, BIT_EN_GNT_BT_AWAKE); in rtw_coex_limited_tx() [all …]
|
| H A D | rtw8821c.c | 48 static int rtw8821c_read_efuse(struct rtw_dev *rtwdev, u8 *log_map) in rtw8821c_read_efuse() argument 50 struct rtw_hal *hal = &rtwdev->hal; in rtw8821c_read_efuse() 51 struct rtw_efuse *efuse = &rtwdev->efuse; in rtw8821c_read_efuse() 90 if (rtwdev->efuse.rfe_option == 2 || rtwdev->efuse.rfe_option == 4) in rtw8821c_read_efuse() 93 switch (rtw_hci_type(rtwdev)) { in rtw8821c_read_efuse() 118 static u8 rtw8821c_get_swing_index(struct rtw_dev *rtwdev) in rtw8821c_get_swing_index() argument 123 swing = rtw_read32_mask(rtwdev, REG_TXSCALE_A, 0xffe00000); in rtw8821c_get_swing_index() 133 static void rtw8821c_pwrtrack_init(struct rtw_dev *rtwdev) in rtw8821c_pwrtrack_init() argument 135 struct rtw_dm_info *dm_info = &rtwdev->dm_info; in rtw8821c_pwrtrack_init() 136 u8 swing_idx = rtw8821c_get_swing_index(rtwdev); in rtw8821c_pwrtrack_init() [all …]
|
| H A D | rtw8723x.c | 38 static void __rtw8723x_lck(struct rtw_dev *rtwdev) in __rtw8723x_lck() argument 44 val_ctx = rtw_read8(rtwdev, REG_CTX); in __rtw8723x_lck() 46 rtw_write8(rtwdev, REG_CTX, val_ctx & ~BIT_MASK_CTX_TYPE); in __rtw8723x_lck() 48 rtw_write8(rtwdev, REG_TXPAUSE, 0xFF); in __rtw8723x_lck() 49 lc_cal = rtw_read_rf(rtwdev, RF_PATH_A, RF_CFGCH, RFREG_MASK); in __rtw8723x_lck() 51 rtw_write_rf(rtwdev, RF_PATH_A, RF_CFGCH, RFREG_MASK, lc_cal | BIT_LCK); in __rtw8723x_lck() 55 rtwdev, RF_PATH_A, RF_CFGCH, BIT_LCK); in __rtw8723x_lck() 57 rtw_warn(rtwdev, "failed to poll LCK status bit\n"); in __rtw8723x_lck() 59 rtw_write_rf(rtwdev, RF_PATH_A, RF_CFGCH, RFREG_MASK, lc_cal); in __rtw8723x_lck() 61 rtw_write8(rtwdev, REG_CTX, val_ctx); in __rtw8723x_lck() [all …]
|
| H A D | pci.c | 51 static u8 rtw_pci_read8(struct rtw_dev *rtwdev, u32 addr) in rtw_pci_read8() argument 53 struct rtw_pci *rtwpci = (struct rtw_pci *)rtwdev->priv; in rtw_pci_read8() 58 static u16 rtw_pci_read16(struct rtw_dev *rtwdev, u32 addr) in rtw_pci_read16() argument 60 struct rtw_pci *rtwpci = (struct rtw_pci *)rtwdev->priv; in rtw_pci_read16() 65 static u32 rtw_pci_read32(struct rtw_dev *rtwdev, u32 addr) in rtw_pci_read32() argument 67 struct rtw_pci *rtwpci = (struct rtw_pci *)rtwdev->priv; in rtw_pci_read32() 72 static void rtw_pci_write8(struct rtw_dev *rtwdev, u32 addr, u8 val) in rtw_pci_write8() argument 74 struct rtw_pci *rtwpci = (struct rtw_pci *)rtwdev->priv; in rtw_pci_write8() 79 static void rtw_pci_write16(struct rtw_dev *rtwdev, u32 addr, u16 val) in rtw_pci_write16() argument 81 struct rtw_pci *rtwpci = (struct rtw_pci *)rtwdev->priv; in rtw_pci_write16() [all …]
|
| H A D | rtw8822b.c | 20 static void rtw8822b_config_trx_mode(struct rtw_dev *rtwdev, u8 tx_path, 41 static int rtw8822b_read_efuse(struct rtw_dev *rtwdev, u8 *log_map) in rtw8822b_read_efuse() argument 43 struct rtw_efuse *efuse = &rtwdev->efuse; in rtw8822b_read_efuse() 68 switch (rtw_hci_type(rtwdev)) { in rtw8822b_read_efuse() 86 static void rtw8822b_phy_rfe_init(struct rtw_dev *rtwdev) in rtw8822b_phy_rfe_init() argument 89 rtw_write32_mask(rtwdev, 0x64, BIT(29) | BIT(28), 0x3); in rtw8822b_phy_rfe_init() 90 rtw_write32_mask(rtwdev, 0x4c, BIT(26) | BIT(25), 0x0); in rtw8822b_phy_rfe_init() 91 rtw_write32_mask(rtwdev, 0x40, BIT(2), 0x1); in rtw8822b_phy_rfe_init() 94 rtw_write32_mask(rtwdev, 0x1990, 0x3f, 0x30); in rtw8822b_phy_rfe_init() 95 rtw_write32_mask(rtwdev, 0x1990, (BIT(11) | BIT(10)), 0x3); in rtw8822b_phy_rfe_init() [all …]
|
| H A D | fw.c | 62 static void _rtw_fw_dump_dbg_info(struct rtw_dev *rtwdev, in _rtw_fw_dump_dbg_info() argument 71 val = rtw_read32_mask(rtwdev, reg->addr, reg->mask); in _rtw_fw_dump_dbg_info() 73 rtw_dbg(rtwdev, RTW_DBG_FW, "[%s]addr:0x%x mask:0x%x value:0x%x\n", in _rtw_fw_dump_dbg_info() 78 void rtw_fw_dump_dbg_info(struct rtw_dev *rtwdev) in rtw_fw_dump_dbg_info() argument 82 if (!rtw_dbg_is_enabled(rtwdev, RTW_DBG_FW)) in rtw_fw_dump_dbg_info() 85 _rtw_fw_dump_dbg_info(rtwdev, fw_h2c_regs, ARRAY_SIZE(fw_h2c_regs)); in rtw_fw_dump_dbg_info() 86 _rtw_fw_dump_dbg_info(rtwdev, fw_c2h_regs, ARRAY_SIZE(fw_c2h_regs)); in rtw_fw_dump_dbg_info() 88 rtw_dbg(rtwdev, RTW_DBG_FW, "Firmware Coredump %dth\n", i + 1); in rtw_fw_dump_dbg_info() 89 _rtw_fw_dump_dbg_info(rtwdev, fw_core_regs, ARRAY_SIZE(fw_core_regs)); in rtw_fw_dump_dbg_info() 93 static void rtw_fw_c2h_cmd_handle_ext(struct rtw_dev *rtwdev, in rtw_fw_c2h_cmd_handle_ext() argument [all …]
|
| H A D | phy.c | 147 static void rtw_phy_cck_pd_init(struct rtw_dev *rtwdev) in rtw_phy_cck_pd_init() argument 149 struct rtw_dm_info *dm_info = &rtwdev->dm_info; in rtw_phy_cck_pd_init() 160 void rtw_phy_set_edcca_th(struct rtw_dev *rtwdev, u8 l2h, u8 h2l) in rtw_phy_set_edcca_th() argument 162 const struct rtw_hw_reg_offset *edcca_th = rtwdev->chip->edcca_th; in rtw_phy_set_edcca_th() 164 rtw_write32_mask(rtwdev, in rtw_phy_set_edcca_th() 168 rtw_write32_mask(rtwdev, in rtw_phy_set_edcca_th() 175 void rtw_phy_adaptivity_set_mode(struct rtw_dev *rtwdev) in rtw_phy_adaptivity_set_mode() argument 177 const struct rtw_chip_info *chip = rtwdev->chip; in rtw_phy_adaptivity_set_mode() 178 struct rtw_dm_info *dm_info = &rtwdev->dm_info; in rtw_phy_adaptivity_set_mode() 183 rtw_dbg(rtwdev, RTW_DBG_PHY, "EDCCA disabled, cannot be set\n"); in rtw_phy_adaptivity_set_mode() [all …]
|
| H A D | rtw8723x.h | 137 void (*lck)(struct rtw_dev *rtwdev); 138 int (*read_efuse)(struct rtw_dev *rtwdev, u8 *log_map); 139 int (*mac_init)(struct rtw_dev *rtwdev); 140 int (*mac_postinit)(struct rtw_dev *rtwdev); 141 void (*cfg_ldo25)(struct rtw_dev *rtwdev, bool enable); 142 void (*set_tx_power_index)(struct rtw_dev *rtwdev); 143 void (*efuse_grant)(struct rtw_dev *rtwdev, bool on); 144 void (*false_alarm_statistics)(struct rtw_dev *rtwdev); 145 void (*iqk_backup_regs)(struct rtw_dev *rtwdev, 147 void (*iqk_restore_regs)(struct rtw_dev *rtwdev, [all …]
|
| H A D | phy.h | 23 void rtw_phy_init(struct rtw_dev *rtwdev); 24 void rtw_phy_dynamic_mechanism(struct rtw_dev *rtwdev); 26 u32 rtw_phy_read_rf(struct rtw_dev *rtwdev, enum rtw_rf_path rf_path, 28 u32 rtw_phy_read_rf_sipi(struct rtw_dev *rtwdev, enum rtw_rf_path rf_path, 30 bool rtw_phy_write_rf_reg_sipi(struct rtw_dev *rtwdev, enum rtw_rf_path rf_path, 32 bool rtw_phy_write_rf_reg(struct rtw_dev *rtwdev, enum rtw_rf_path rf_path, 34 bool rtw_phy_write_rf_reg_mix(struct rtw_dev *rtwdev, enum rtw_rf_path rf_path, 36 void rtw_phy_setup_phy_cond(struct rtw_dev *rtwdev, u32 pkg); 37 void rtw_parse_tbl_phy_cond(struct rtw_dev *rtwdev, const struct rtw_table *tbl); 38 void rtw_parse_tbl_bb_pg(struct rtw_dev *rtwdev, const struct rtw_table *tbl); [all …]
|
| H A D | debug.c | 20 struct rtw_dev *rtwdev; member 170 struct rtw_dev *rtwdev = debugfs_priv->rtwdev; in rtw_debugfs_get_read_reg() local 177 val = rtw_read8(rtwdev, addr); in rtw_debugfs_get_read_reg() 181 val = rtw_read16(rtwdev, addr); in rtw_debugfs_get_read_reg() 185 val = rtw_read32(rtwdev, addr); in rtw_debugfs_get_read_reg() 195 struct rtw_dev *rtwdev = debugfs_priv->rtwdev; in rtw_debugfs_get_rf_read() local 203 mutex_lock(&rtwdev->mutex); in rtw_debugfs_get_rf_read() 204 val = rtw_read_rf(rtwdev, path, addr, mask); in rtw_debugfs_get_rf_read() 205 mutex_unlock(&rtwdev->mutex); in rtw_debugfs_get_rf_read() 216 struct rtw_dev *rtwdev = debugfs_priv->rtwdev; in rtw_debugfs_get_fix_rate() local [all …]
|
| H A D | tx.c | 12 void rtw_tx_stats(struct rtw_dev *rtwdev, struct ieee80211_vif *vif, in rtw_tx_stats() argument 25 rtwdev->stats.tx_unicast += skb->len; in rtw_tx_stats() 26 rtwdev->stats.tx_cnt++; in rtw_tx_stats() 35 void rtw_tx_fill_tx_desc(struct rtw_dev *rtwdev, in rtw_tx_fill_tx_desc() argument 71 if (rtwdev->chip->old_datarate_fb_limit) in rtw_tx_fill_tx_desc() 112 static u8 get_highest_ht_tx_rate(struct rtw_dev *rtwdev, in get_highest_ht_tx_rate() argument 117 if (rtwdev->hal.rf_type == RF_2T2R && sta->deflink.ht_cap.mcs.rx_mask[1] != 0) in get_highest_ht_tx_rate() 125 static u8 get_highest_vht_tx_rate(struct rtw_dev *rtwdev, in get_highest_vht_tx_rate() argument 128 struct rtw_efuse *efuse = &rtwdev->efuse; in get_highest_vht_tx_rate() 166 static void rtw_tx_report_enable(struct rtw_dev *rtwdev, in rtw_tx_report_enable() argument [all …]
|
| /linux/drivers/net/wireless/realtek/rtw89/ |
| H A D | rtw8922a_rfk.c | 13 static void rtw8922a_tssi_cont_en(struct rtw89_dev *rtwdev, bool en, in rtw8922a_tssi_cont_en() argument 19 rtw89_phy_write32_mask(rtwdev, tssi_trk_man[path], B_TSSI_CONT_EN, 0); in rtw8922a_tssi_cont_en() 21 rtw89_phy_write32_mask(rtwdev, tssi_trk_man[path], B_TSSI_CONT_EN, 1); in rtw8922a_tssi_cont_en() 24 void rtw8922a_tssi_cont_en_phyidx(struct rtw89_dev *rtwdev, bool en, u8 phy_idx) in rtw8922a_tssi_cont_en_phyidx() argument 26 if (rtwdev->mlo_dbcc_mode == MLO_1_PLUS_1_1RF) { in rtw8922a_tssi_cont_en_phyidx() 28 rtw8922a_tssi_cont_en(rtwdev, en, RF_PATH_A); in rtw8922a_tssi_cont_en_phyidx() 30 rtw8922a_tssi_cont_en(rtwdev, en, RF_PATH_B); in rtw8922a_tssi_cont_en_phyidx() 32 rtw8922a_tssi_cont_en(rtwdev, en, RF_PATH_A); in rtw8922a_tssi_cont_en_phyidx() 33 rtw8922a_tssi_cont_en(rtwdev, en, RF_PATH_B); in rtw8922a_tssi_cont_en_phyidx() 38 void rtw8922a_ctl_band_ch_bw(struct rtw89_dev *rtwdev, enum rtw89_phy_idx phy, in rtw8922a_ctl_band_ch_bw() argument [all …]
|
| H A D | rtw8852b_common.h | 117 int (*mac_enable_bb_rf)(struct rtw89_dev *rtwdev); 118 int (*mac_disable_bb_rf)(struct rtw89_dev *rtwdev); 119 void (*bb_sethw)(struct rtw89_dev *rtwdev); 120 void (*bb_reset_all)(struct rtw89_dev *rtwdev, enum rtw89_phy_idx phy_idx); 121 void (*bb_cfg_txrx_path)(struct rtw89_dev *rtwdev); 122 void (*bb_cfg_tx_path)(struct rtw89_dev *rtwdev, u8 tx_path); 123 void (*bb_ctrl_rx_path)(struct rtw89_dev *rtwdev, 126 void (*bb_set_plcp_tx)(struct rtw89_dev *rtwdev); 127 void (*bb_set_power)(struct rtw89_dev *rtwdev, s16 pwr_dbm, 129 void (*bb_set_pmac_pkt_tx)(struct rtw89_dev *rtwdev, u8 enable, [all …]
|