Lines Matching refs:rtlpriv
38 static bool _rtl92d_is_fw_downloaded(struct rtl_priv *rtlpriv) in _rtl92d_is_fw_downloaded() argument
40 return (rtl_read_dword(rtlpriv, REG_MCUFWDL) & MCUFWDL_RDY) ? in _rtl92d_is_fw_downloaded()
46 struct rtl_priv *rtlpriv = rtl_priv(hw); in _rtl92d_enable_fw_download() local
50 tmp = rtl_read_byte(rtlpriv, REG_SYS_FUNC_EN + 1); in _rtl92d_enable_fw_download()
51 rtl_write_byte(rtlpriv, REG_SYS_FUNC_EN + 1, tmp | 0x04); in _rtl92d_enable_fw_download()
52 tmp = rtl_read_byte(rtlpriv, REG_MCUFWDL); in _rtl92d_enable_fw_download()
53 rtl_write_byte(rtlpriv, REG_MCUFWDL, tmp | 0x01); in _rtl92d_enable_fw_download()
54 tmp = rtl_read_byte(rtlpriv, REG_MCUFWDL + 2); in _rtl92d_enable_fw_download()
55 rtl_write_byte(rtlpriv, REG_MCUFWDL + 2, tmp & 0xf7); in _rtl92d_enable_fw_download()
57 tmp = rtl_read_byte(rtlpriv, REG_MCUFWDL); in _rtl92d_enable_fw_download()
58 rtl_write_byte(rtlpriv, REG_MCUFWDL, tmp & 0xfe); in _rtl92d_enable_fw_download()
69 struct rtl_priv *rtlpriv = rtl_priv(hw); in _rtl92d_fw_block_write() local
79 rtl_write_dword(rtlpriv, (FW_8192D_START_ADDRESS + offset), in _rtl92d_fw_block_write()
86 rtl_write_byte(rtlpriv, (FW_8192D_START_ADDRESS + in _rtl92d_fw_block_write()
95 struct rtl_priv *rtlpriv = rtl_priv(hw); in _rtl92d_fw_page_write() local
99 value8 = (rtl_read_byte(rtlpriv, REG_MCUFWDL + 2) & 0xF8) | u8page; in _rtl92d_fw_page_write()
100 rtl_write_byte(rtlpriv, (REG_MCUFWDL + 2), value8); in _rtl92d_fw_page_write()
121 struct rtl_priv *rtlpriv = rtl_priv(hw); in _rtl92d_write_fw() local
127 RT_TRACE(rtlpriv, COMP_FW, DBG_TRACE, "FW size is %d bytes,\n", size); in _rtl92d_write_fw()
133 RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, in _rtl92d_write_fw()
151 struct rtl_priv *rtlpriv = rtl_priv(hw); in _rtl92d_fw_free_to_go() local
156 value32 = rtl_read_dword(rtlpriv, REG_MCUFWDL); in _rtl92d_fw_free_to_go()
160 RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, in _rtl92d_fw_free_to_go()
165 RT_TRACE(rtlpriv, COMP_FW, DBG_TRACE, in _rtl92d_fw_free_to_go()
167 value32 = rtl_read_dword(rtlpriv, REG_MCUFWDL); in _rtl92d_fw_free_to_go()
169 rtl_write_dword(rtlpriv, REG_MCUFWDL, value32); in _rtl92d_fw_free_to_go()
175 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl92d_firmware_selfreset() local
180 rtl_write_byte(rtlpriv, REG_HMETFR + 3, 0x20); in rtl92d_firmware_selfreset()
181 u1b_tmp = rtl_read_byte(rtlpriv, REG_SYS_FUNC_EN + 1); in rtl92d_firmware_selfreset()
187 u1b_tmp = rtl_read_byte(rtlpriv, REG_SYS_FUNC_EN + 1); in rtl92d_firmware_selfreset()
190 RT_TRACE(rtlpriv, COMP_FW, DBG_DMESG, in rtl92d_firmware_selfreset()
196 struct rtl_priv *rtlpriv = rtl_priv(hw); in _rtl92d_fw_init() local
200 RT_TRACE(rtlpriv, COMP_FW, DBG_DMESG, "FW already have download\n"); in _rtl92d_fw_init()
205 if (rtl_read_byte(rtlpriv, FW_MAC0_READY) & in _rtl92d_fw_init()
207 RT_TRACE(rtlpriv, COMP_FW, DBG_DMESG, in _rtl92d_fw_init()
209 rtl_read_byte(rtlpriv, in _rtl92d_fw_init()
215 if (rtl_read_byte(rtlpriv, FW_MAC1_READY) & in _rtl92d_fw_init()
217 RT_TRACE(rtlpriv, COMP_FW, DBG_DMESG, in _rtl92d_fw_init()
219 rtl_read_byte(rtlpriv, in _rtl92d_fw_init()
228 RT_TRACE(rtlpriv, COMP_FW, DBG_DMESG, in _rtl92d_fw_init()
230 rtl_read_byte(rtlpriv, FW_MAC0_READY)); in _rtl92d_fw_init()
232 RT_TRACE(rtlpriv, COMP_FW, DBG_DMESG, in _rtl92d_fw_init()
234 rtl_read_byte(rtlpriv, FW_MAC1_READY)); in _rtl92d_fw_init()
236 RT_TRACE(rtlpriv, COMP_FW, DBG_DMESG, in _rtl92d_fw_init()
238 rtl_read_dword(rtlpriv, REG_MCUFWDL)); in _rtl92d_fw_init()
244 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl92d_download_fw() local
256 if (rtlpriv->max_fw_size == 0 || !rtlhal->pfirmware) in rtl92d_download_fw()
263 RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, in rtl92d_download_fw()
268 RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, in rtl92d_download_fw()
275 fw_downloaded = _rtl92d_is_fw_downloaded(rtlpriv); in rtl92d_download_fw()
276 if ((rtl_read_byte(rtlpriv, 0x1f) & BIT(5)) == BIT(5)) in rtl92d_download_fw()
288 fw_downloaded = _rtl92d_is_fw_downloaded(rtlpriv); in rtl92d_download_fw()
289 if ((rtl_read_byte(rtlpriv, 0x1f) & BIT(5)) == BIT(5)) in rtl92d_download_fw()
300 RT_TRACE(rtlpriv, COMP_FW, DBG_DMESG, in rtl92d_download_fw()
304 value = rtl_read_byte(rtlpriv, 0x1f); in rtl92d_download_fw()
306 rtl_write_byte(rtlpriv, 0x1f, value); in rtl92d_download_fw()
309 value = rtl_read_byte(rtlpriv, 0x1f); in rtl92d_download_fw()
311 rtl_write_byte(rtlpriv, 0x1f, value); in rtl92d_download_fw()
319 if (rtl_read_byte(rtlpriv, REG_MCUFWDL) & BIT(7)) { in rtl92d_download_fw()
321 rtl_write_byte(rtlpriv, REG_MCUFWDL, 0x00); in rtl92d_download_fw()
329 value = rtl_read_byte(rtlpriv, 0x1f); in rtl92d_download_fw()
331 rtl_write_byte(rtlpriv, 0x1f, value); in rtl92d_download_fw()
334 RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, in rtl92d_download_fw()
338 RT_TRACE(rtlpriv, COMP_FW, DBG_TRACE, "fw is ready to run!\n"); in rtl92d_download_fw()
347 struct rtl_priv *rtlpriv = rtl_priv(hw); in _rtl92d_check_fw_read_last_h2c() local
351 val_hmetfr = rtl_read_byte(rtlpriv, REG_HMETFR); in _rtl92d_check_fw_read_last_h2c()
360 struct rtl_priv *rtlpriv = rtl_priv(hw); in _rtl92d_fill_h2c_command() local
377 RT_TRACE(rtlpriv, COMP_CMD, DBG_LOUD, in _rtl92d_fill_h2c_command()
381 RT_TRACE(rtlpriv, COMP_CMD, DBG_LOUD, "come in\n"); in _rtl92d_fill_h2c_command()
383 spin_lock_irqsave(&rtlpriv->locks.h2c_lock, flag); in _rtl92d_fill_h2c_command()
385 RT_TRACE(rtlpriv, COMP_CMD, DBG_LOUD, in _rtl92d_fill_h2c_command()
390 spin_unlock_irqrestore(&rtlpriv->locks.h2c_lock, in _rtl92d_fill_h2c_command()
393 RT_TRACE(rtlpriv, COMP_CMD, DBG_LOUD, in _rtl92d_fill_h2c_command()
401 spin_lock_irqsave(&rtlpriv->locks.h2c_lock, in _rtl92d_fill_h2c_command()
404 spin_unlock_irqrestore(&rtlpriv->locks.h2c_lock, flag); in _rtl92d_fill_h2c_command()
407 spin_unlock_irqrestore(&rtlpriv->locks.h2c_lock, flag); in _rtl92d_fill_h2c_command()
414 RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, in _rtl92d_fill_h2c_command()
437 RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, in _rtl92d_fill_h2c_command()
445 RT_TRACE(rtlpriv, COMP_CMD, DBG_LOUD, in _rtl92d_fill_h2c_command()
452 u1b_tmp = rtl_read_byte(rtlpriv, 0x1BF); in _rtl92d_fill_h2c_command()
453 RT_TRACE(rtlpriv, COMP_CMD, DBG_LOUD, in _rtl92d_fill_h2c_command()
458 RT_TRACE(rtlpriv, COMP_CMD, DBG_LOUD, in _rtl92d_fill_h2c_command()
466 RT_TRACE(rtlpriv, COMP_CMD, DBG_LOUD, in _rtl92d_fill_h2c_command()
474 rtl_write_byte(rtlpriv, box_reg + idx, in _rtl92d_fill_h2c_command()
481 rtl_write_byte(rtlpriv, box_reg + idx, in _rtl92d_fill_h2c_command()
488 rtl_write_byte(rtlpriv, box_reg + idx, in _rtl92d_fill_h2c_command()
496 rtl_write_byte(rtlpriv, box_extreg + idx, in _rtl92d_fill_h2c_command()
499 rtl_write_byte(rtlpriv, box_reg + idx, in _rtl92d_fill_h2c_command()
507 rtl_write_byte(rtlpriv, box_extreg + idx, in _rtl92d_fill_h2c_command()
510 rtl_write_byte(rtlpriv, box_reg + idx, in _rtl92d_fill_h2c_command()
514 RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, in _rtl92d_fill_h2c_command()
522 RT_TRACE(rtlpriv, COMP_CMD, DBG_LOUD, in _rtl92d_fill_h2c_command()
526 spin_lock_irqsave(&rtlpriv->locks.h2c_lock, flag); in _rtl92d_fill_h2c_command()
528 spin_unlock_irqrestore(&rtlpriv->locks.h2c_lock, flag); in _rtl92d_fill_h2c_command()
529 RT_TRACE(rtlpriv, COMP_CMD, DBG_LOUD, "go out\n"); in _rtl92d_fill_h2c_command()
546 struct rtl_priv *rtlpriv = rtl_priv(hw); in _rtl92d_cmd_send_packet() local
557 spin_lock_irqsave(&rtlpriv->locks.irq_th_lock, flags); in _rtl92d_cmd_send_packet()
560 rtlpriv->cfg->ops->get_desc((u8 *) pdesc, true, HW_DESC_OWN); in _rtl92d_cmd_send_packet()
561 rtlpriv->cfg->ops->fill_tx_cmddesc(hw, (u8 *) pdesc, 1, 1, skb); in _rtl92d_cmd_send_packet()
563 spin_unlock_irqrestore(&rtlpriv->locks.irq_th_lock, flags); in _rtl92d_cmd_send_packet()
564 rtlpriv->cfg->ops->tx_polling(hw, BEACON_QUEUE); in _rtl92d_cmd_send_packet()
686 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl92d_set_fw_rsvdpagepkt() local
728 RT_PRINT_DATA(rtlpriv, COMP_CMD, DBG_LOUD, in rtl92d_set_fw_rsvdpagepkt()
731 RT_PRINT_DATA(rtlpriv, COMP_CMD, DBG_DMESG, in rtl92d_set_fw_rsvdpagepkt()
746 RT_TRACE(rtlpriv, COMP_POWER, DBG_LOUD, in rtl92d_set_fw_rsvdpagepkt()
748 RT_PRINT_DATA(rtlpriv, COMP_CMD, DBG_DMESG, in rtl92d_set_fw_rsvdpagepkt()
753 RT_TRACE(rtlpriv, COMP_ERR, DBG_WARNING, in rtl92d_set_fw_rsvdpagepkt()