VSF Documented
Data Structures | Macros | Variables
vsf_wifi_rt28xx.c File Reference
#include "../../vsf_wifi.h"
#include "../../vsf_wifi_priv.h"

Data Structures

struct  rt28xx_channel_entry_t
 

Macros

#define RT28XX_PBF_SYS_CTRL   0x0400
 
#define RT28XX_USB_DMA_CFG   0x02A0
 
#define RT28XX_WPDMA_GLO_CFG   0x0208
 
#define RT28XX_FW_FIRMWARE_BASE   0x3000 /* base for fw upload */
 
#define RT28XX_H2M_MAILBOX_CSR   0x7010
 
#define RT28XX_H2M_MAILBOX_CID   0x7008
 
#define RT28XX_H2M_MAILBOX_STATUS   0x700C
 
#define RT28XX_H2M_BBP_AGENT   0x7028
 
#define RT28XX_ASIC_VER_ID   0x1000
 
#define RT28XX_MAC_SYS_CTRL   0x1004
 
#define RT28XX_MAC_ADDR_DW0   0x1008
 
#define RT28XX_MAC_ADDR_DW1   0x100C
 
#define RT28XX_MAC_BSSID_DW0   0x1010
 
#define RT28XX_MAC_BSSID_DW1   0x1014
 
#define RT28XX_MAC_MAX_LEN_CFG   0x1018
 
#define RT28XX_BBP_CSR_CFG   0x101C
 
#define RT28XX_RF_CSR_CFG   0x1020
 
#define RT28XX_LED_CFG   0x1024
 
#define RT28XX_AMPDU_MAX_LEN_20M1S   0x1030
 
#define RT28XX_AMPDU_MAX_LEN_40M1S   0x1034
 
#define RT28XX_TX_PIN_CFG   0x1328
 
#define RT28XX_TX_BAND_CFG   0x132C
 
#define RT28XX_TX_SW_CFG1   0x1330
 
#define RT28XX_TX_SW_CFG2   0x1334
 
#define RT28XX_RX_FILTER_CFG   0x1400
 
#define RT28XX_RX_PARSER_CFG   0x1404
 
#define RT28XX_BCN_TIME_CFG   0x1800
 
#define RT28XX_TBTT_TIMER   0x1804
 
#define RT28XX_INT_TIMER_CFG   0x1808
 
#define RT28XX_INT_TIMER_EN   0x180C
 
#define RT28XX_US_CYC_CNT   0x1854
 
#define RT28XX_MAC_SRST   (1 << 0)
 
#define RT28XX_BBP_HRST   (1 << 2)
 
#define RT28XX_MAC_TX_EN   (1 << 2)
 
#define RT28XX_MAC_RX_EN   (1 << 3)
 
#define RT28XX_BBP_BUSY   (1 << 16)
 
#define RT28XX_BBP_WRITE   (1 << 17)
 
#define RT28XX_RF_BUSY   (1 << 16)
 
#define RT28XX_RF_WRITE   (1 << 17)
 
#define RT28XX_FILTER_DROP_NOT_MYBSS   (1 << 0)
 
#define RT28XX_FILTER_DROP_MULTICAST   (1 << 1)
 
#define RT28XX_FILTER_DROP_BROADCAST   (1 << 2)
 
#define RT28XX_FILTER_DROP_UNICAST   (1 << 3)
 
#define RT28XX_FILTER_DROP_CRC_ERROR   (1 << 4)
 
#define RT28XX_FILTER_DROP_PHY_ERROR   (1 << 5)
 
#define RT28XX_FILTER_DROP_CTRL_FRAME   (1 << 6)
 
#define RT28XX_FILTER_DROP_NOT_TO_ME   (1 << 7)
 
#define RT28XX_FILTER_DROP_DUPLICATE   (1 << 11)
 
#define RT28XX_FILTER_DROP_CFEND   (1 << 12)
 
#define RT28XX_FILTER_DROP_CFACK   (1 << 13)
 
#define RT28XX_FILTER_DROP_CTS   (1 << 14)
 
#define RT28XX_FILTER_DROP_RTS   (1 << 15)
 
#define RT28XX_RF1_TUNING   1
 
#define RT28XX_RF2_BAND   2
 
#define RT28XX_RF3_TSSI   3
 
#define RT28XX_RF4_FREQ   4
 
#define RT_OP_REG(r_, v_)   { (uint16_t)(r_), (uint32_t)(v_) }
 
#define RT_OP_BBP(r_, v_)
 
#define RT_OP_RF(r_, v_)
 

Variables

const vsf_wifi_chip_drv_t vsf_wifi_rt28xx_drv
 

Macro Definition Documentation

◆ RT28XX_PBF_SYS_CTRL

#define RT28XX_PBF_SYS_CTRL   0x0400

◆ RT28XX_USB_DMA_CFG

#define RT28XX_USB_DMA_CFG   0x02A0

◆ RT28XX_WPDMA_GLO_CFG

#define RT28XX_WPDMA_GLO_CFG   0x0208

◆ RT28XX_FW_FIRMWARE_BASE

#define RT28XX_FW_FIRMWARE_BASE   0x3000 /* base for fw upload */

◆ RT28XX_H2M_MAILBOX_CSR

#define RT28XX_H2M_MAILBOX_CSR   0x7010

◆ RT28XX_H2M_MAILBOX_CID

#define RT28XX_H2M_MAILBOX_CID   0x7008

◆ RT28XX_H2M_MAILBOX_STATUS

#define RT28XX_H2M_MAILBOX_STATUS   0x700C

◆ RT28XX_H2M_BBP_AGENT

#define RT28XX_H2M_BBP_AGENT   0x7028

◆ RT28XX_ASIC_VER_ID

#define RT28XX_ASIC_VER_ID   0x1000

◆ RT28XX_MAC_SYS_CTRL

#define RT28XX_MAC_SYS_CTRL   0x1004

◆ RT28XX_MAC_ADDR_DW0

#define RT28XX_MAC_ADDR_DW0   0x1008

◆ RT28XX_MAC_ADDR_DW1

#define RT28XX_MAC_ADDR_DW1   0x100C

◆ RT28XX_MAC_BSSID_DW0

#define RT28XX_MAC_BSSID_DW0   0x1010

◆ RT28XX_MAC_BSSID_DW1

#define RT28XX_MAC_BSSID_DW1   0x1014

◆ RT28XX_MAC_MAX_LEN_CFG

#define RT28XX_MAC_MAX_LEN_CFG   0x1018

◆ RT28XX_BBP_CSR_CFG

#define RT28XX_BBP_CSR_CFG   0x101C

◆ RT28XX_RF_CSR_CFG

#define RT28XX_RF_CSR_CFG   0x1020

◆ RT28XX_LED_CFG

#define RT28XX_LED_CFG   0x1024

◆ RT28XX_AMPDU_MAX_LEN_20M1S

#define RT28XX_AMPDU_MAX_LEN_20M1S   0x1030

◆ RT28XX_AMPDU_MAX_LEN_40M1S

#define RT28XX_AMPDU_MAX_LEN_40M1S   0x1034

◆ RT28XX_TX_PIN_CFG

#define RT28XX_TX_PIN_CFG   0x1328

◆ RT28XX_TX_BAND_CFG

#define RT28XX_TX_BAND_CFG   0x132C

◆ RT28XX_TX_SW_CFG1

#define RT28XX_TX_SW_CFG1   0x1330

◆ RT28XX_TX_SW_CFG2

#define RT28XX_TX_SW_CFG2   0x1334

◆ RT28XX_RX_FILTER_CFG

#define RT28XX_RX_FILTER_CFG   0x1400

◆ RT28XX_RX_PARSER_CFG

#define RT28XX_RX_PARSER_CFG   0x1404

◆ RT28XX_BCN_TIME_CFG

#define RT28XX_BCN_TIME_CFG   0x1800

◆ RT28XX_TBTT_TIMER

#define RT28XX_TBTT_TIMER   0x1804

◆ RT28XX_INT_TIMER_CFG

#define RT28XX_INT_TIMER_CFG   0x1808

◆ RT28XX_INT_TIMER_EN

#define RT28XX_INT_TIMER_EN   0x180C

◆ RT28XX_US_CYC_CNT

#define RT28XX_US_CYC_CNT   0x1854

◆ RT28XX_MAC_SRST

#define RT28XX_MAC_SRST   (1 << 0)

◆ RT28XX_BBP_HRST

#define RT28XX_BBP_HRST   (1 << 2)

◆ RT28XX_MAC_TX_EN

#define RT28XX_MAC_TX_EN   (1 << 2)

◆ RT28XX_MAC_RX_EN

#define RT28XX_MAC_RX_EN   (1 << 3)

◆ RT28XX_BBP_BUSY

#define RT28XX_BBP_BUSY   (1 << 16)

◆ RT28XX_BBP_WRITE

#define RT28XX_BBP_WRITE   (1 << 17)

◆ RT28XX_RF_BUSY

#define RT28XX_RF_BUSY   (1 << 16)

◆ RT28XX_RF_WRITE

#define RT28XX_RF_WRITE   (1 << 17)

◆ RT28XX_FILTER_DROP_NOT_MYBSS

#define RT28XX_FILTER_DROP_NOT_MYBSS   (1 << 0)

◆ RT28XX_FILTER_DROP_MULTICAST

#define RT28XX_FILTER_DROP_MULTICAST   (1 << 1)

◆ RT28XX_FILTER_DROP_BROADCAST

#define RT28XX_FILTER_DROP_BROADCAST   (1 << 2)

◆ RT28XX_FILTER_DROP_UNICAST

#define RT28XX_FILTER_DROP_UNICAST   (1 << 3)

◆ RT28XX_FILTER_DROP_CRC_ERROR

#define RT28XX_FILTER_DROP_CRC_ERROR   (1 << 4)

◆ RT28XX_FILTER_DROP_PHY_ERROR

#define RT28XX_FILTER_DROP_PHY_ERROR   (1 << 5)

◆ RT28XX_FILTER_DROP_CTRL_FRAME

#define RT28XX_FILTER_DROP_CTRL_FRAME   (1 << 6)

◆ RT28XX_FILTER_DROP_NOT_TO_ME

#define RT28XX_FILTER_DROP_NOT_TO_ME   (1 << 7)

◆ RT28XX_FILTER_DROP_DUPLICATE

#define RT28XX_FILTER_DROP_DUPLICATE   (1 << 11)

◆ RT28XX_FILTER_DROP_CFEND

#define RT28XX_FILTER_DROP_CFEND   (1 << 12)

◆ RT28XX_FILTER_DROP_CFACK

#define RT28XX_FILTER_DROP_CFACK   (1 << 13)

◆ RT28XX_FILTER_DROP_CTS

#define RT28XX_FILTER_DROP_CTS   (1 << 14)

◆ RT28XX_FILTER_DROP_RTS

#define RT28XX_FILTER_DROP_RTS   (1 << 15)

◆ RT28XX_RF1_TUNING

#define RT28XX_RF1_TUNING   1

◆ RT28XX_RF2_BAND

#define RT28XX_RF2_BAND   2

◆ RT28XX_RF3_TSSI

#define RT28XX_RF3_TSSI   3

◆ RT28XX_RF4_FREQ

#define RT28XX_RF4_FREQ   4

◆ RT_OP_REG

#define RT_OP_REG (   r_,
  v_ 
)    { (uint16_t)(r_), (uint32_t)(v_) }

◆ RT_OP_BBP

#define RT_OP_BBP (   r_,
  v_ 
)
Value:
RT28XX_BBP_WRITE | (((uint32_t)(r_) & 0xFF) << 8) \
| ((uint32_t)(v_) & 0xFF))
unsigned uint32_t
Definition stdint.h:9
#define RT_OP_REG(r_, v_)
Definition vsf_wifi_rt28xx.c:136
#define RT28XX_BBP_WRITE
Definition vsf_wifi_rt28xx.c:104
#define RT28XX_BBP_CSR_CFG
Definition vsf_wifi_rt28xx.c:77

◆ RT_OP_RF

#define RT_OP_RF (   r_,
  v_ 
)
Value:
RT28XX_RF_WRITE | (((uint32_t)(r_) & 0xFF) << 8) \
| ((uint32_t)(v_) & 0xFF))
#define RT28XX_RF_CSR_CFG
Definition vsf_wifi_rt28xx.c:78
#define RT28XX_RF_WRITE
Definition vsf_wifi_rt28xx.c:106

Variable Documentation

◆ vsf_wifi_rt28xx_drv

const vsf_wifi_chip_drv_t vsf_wifi_rt28xx_drv
Initial value:
= {
.name = "rt28xx",
.firmware_load = __rt28xx_firmware_load,
.init = __rt28xx_init,
.fini = __rt28xx_fini,
.set_channel = __rt28xx_set_channel,
.set_rx_filter = __rt28xx_set_rx_filter,
.set_mac_addr = __rt28xx_set_mac_addr,
.set_bssid = __rt28xx_set_bssid,
.set_auth_mode = __rt28xx_set_auth_mode,
.connect = __rt28xx_connect,
.disconnect = __rt28xx_disconnect,
.get_link_info = __rt28xx_get_link_info,
}
Generated from commit: vsfteam/vsf@3b461d0