123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283 |
- /* Copyright (C) 2018 RDA Technologies Limited and/or its affiliates("RDA").
- * All rights reserved.
- *
- * This software is supplied "AS IS" without any warranties.
- * RDA assumes no responsibility or liability for the use of the software,
- * conveys no license or title under any patent, copyright, or mask work
- * right to the product. RDA reserves the right to make changes in the
- * software without notification. RDA also make no representation or
- * warranty that such application will be suitable for the specified use
- * without further testing or modification.
- */
- #ifndef _WLAN_H_
- #define _WLAN_H_
- // Auto generated by dtools(see dtools.txt for its version).
- // Don't edit it manually!
- #define REG_WLAN_BASE (0x14008000)
- typedef volatile struct
- {
- uint32_t __0[1]; // 0x00000000
- uint32_t bank_addr; // 0x00000004
- uint32_t offset_addr; // 0x00000008
- uint32_t regwdata; // 0x0000000c
- uint32_t regrdata; // 0x00000010
- uint32_t protocol_version; // 0x00000014
- uint32_t type; // 0x00000018
- uint32_t subtype; // 0x0000001c
- uint32_t desaddr_l; // 0x00000020
- uint32_t desaddr_h; // 0x00000024
- uint32_t srcaddr_l; // 0x00000028
- uint32_t srcaddr_h; // 0x0000002c
- uint32_t bssidaddr_l; // 0x00000030
- uint32_t bssidaddr_h; // 0x00000034
- uint32_t seqcontl; // 0x00000038
- uint32_t rssival; // 0x0000003c
- uint32_t __64[16]; // 0x00000040
- uint32_t apb_config; // 0x00000080
- uint32_t datardyinterrupt; // 0x00000084
- uint32_t __136[9]; // 0x00000088
- uint32_t framectrl; // 0x000000ac
- uint32_t duration; // 0x000000b0
- uint32_t ht_ctrl; // 0x000000b4
- uint32_t tstamp_l; // 0x000000b8
- uint32_t tstamp_h; // 0x000000bc
- uint32_t bcnintvl; // 0x000000c0
- uint32_t capinfo; // 0x000000c4
- uint32_t elmtid; // 0x000000c8
- uint32_t ssidlen; // 0x000000cc
- uint32_t ssidbyte1; // 0x000000d0
- uint32_t ssidbyte2; // 0x000000d4
- uint32_t ssidbyte3; // 0x000000d8
- uint32_t ssidbyte4; // 0x000000dc
- uint32_t ssidbyte5; // 0x000000e0
- uint32_t ssidbyte6; // 0x000000e4
- uint32_t ssidbyte7; // 0x000000e8
- uint32_t ssidbyte8; // 0x000000ec
- uint32_t out_fcsval; // 0x000000f0
- } HWP_WLAN_T;
- #define hwp_wlan ((HWP_WLAN_T *)REG_ACCESS_ADDRESS(REG_WLAN_BASE))
- // protocol_version
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t protocol_version : 2; // [1:0], read only
- uint32_t __31_2 : 30; // [31:2]
- } b;
- } REG_WLAN_PROTOCOL_VERSION_T;
- // type
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t type : 2; // [1:0], read only
- uint32_t __31_2 : 30; // [31:2]
- } b;
- } REG_WLAN_TYPE_T;
- // subtype
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t subtype : 4; // [3:0], read only
- uint32_t __31_4 : 28; // [31:4]
- } b;
- } REG_WLAN_SUBTYPE_T;
- // desaddr_h
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t desaddr_h : 16; // [15:0], read only
- uint32_t __31_16 : 16; // [31:16]
- } b;
- } REG_WLAN_DESADDR_H_T;
- // srcaddr_h
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t srcaddr_h : 16; // [15:0], read only
- uint32_t __31_16 : 16; // [31:16]
- } b;
- } REG_WLAN_SRCADDR_H_T;
- // bssidaddr_h
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t bssidaddr_h : 16; // [15:0], read only
- uint32_t __31_16 : 16; // [31:16]
- } b;
- } REG_WLAN_BSSIDADDR_H_T;
- // seqcontl
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t seqcontl : 16; // [15:0], read only
- uint32_t __31_16 : 16; // [31:16]
- } b;
- } REG_WLAN_SEQCONTL_T;
- // rssival
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t rssival : 8; // [7:0], read only
- uint32_t __31_8 : 24; // [31:8]
- } b;
- } REG_WLAN_RSSIVAL_T;
- // apb_config
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t apb_clear : 1; // [0]
- uint32_t apb_hold : 1; // [1]
- uint32_t __7_2 : 6; // [7:2]
- uint32_t subtype : 4; // [11:8]
- uint32_t type : 2; // [13:12]
- uint32_t __15_14 : 2; // [15:14]
- uint32_t phyrxenn : 1; // [16]
- uint32_t __31_17 : 15; // [31:17]
- } b;
- } REG_WLAN_APB_CONFIG_T;
- // datardyinterrupt
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t datardyinterrupt : 1; // [0], read only
- uint32_t __31_1 : 31; // [31:1]
- } b;
- } REG_WLAN_DATARDYINTERRUPT_T;
- // framectrl
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t framectrl : 8; // [7:0], read only
- uint32_t __31_8 : 24; // [31:8]
- } b;
- } REG_WLAN_FRAMECTRL_T;
- // duration
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t duration : 16; // [15:0], read only
- uint32_t __31_16 : 16; // [31:16]
- } b;
- } REG_WLAN_DURATION_T;
- // bcnintvl
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t bcnintvl : 16; // [15:0], read only
- uint32_t __31_16 : 16; // [31:16]
- } b;
- } REG_WLAN_BCNINTVL_T;
- // capinfo
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t capinfo : 16; // [15:0], read only
- uint32_t __31_16 : 16; // [31:16]
- } b;
- } REG_WLAN_CAPINFO_T;
- // elmtid
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t elmtid : 8; // [7:0], read only
- uint32_t __31_8 : 24; // [31:8]
- } b;
- } REG_WLAN_ELMTID_T;
- // ssidlen
- typedef union {
- uint32_t v;
- struct
- {
- uint32_t ssidlen : 8; // [7:0], read only
- uint32_t __31_8 : 24; // [31:8]
- } b;
- } REG_WLAN_SSIDLEN_T;
- // protocol_version
- #define WLAN_PROTOCOL_VERSION(n) (((n)&0x3) << 0)
- // type
- #define WLAN_TYPE_TYPE(n) (((n)&0x3) << 0)
- // subtype
- #define WLAN_SUBTYPE_SUBTYPE(n) (((n)&0xf) << 0)
- // desaddr_h
- #define WLAN_DESADDR_H(n) (((n)&0xffff) << 0)
- // srcaddr_h
- #define WLAN_SRCADDR_H(n) (((n)&0xffff) << 0)
- // bssidaddr_h
- #define WLAN_BSSIDADDR_H(n) (((n)&0xffff) << 0)
- // seqcontl
- #define WLAN_SEQCONTL(n) (((n)&0xffff) << 0)
- // rssival
- #define WLAN_RSSIVAL(n) (((n)&0xff) << 0)
- // apb_config
- #define WLAN_APB_CLEAR (1 << 0)
- #define WLAN_APB_HOLD (1 << 1)
- #define WLAN_APB_CONFIG_SUBTYPE(n) (((n)&0xf) << 8)
- #define WLAN_APB_CONFIG_TYPE(n) (((n)&0x3) << 12)
- #define WLAN_PHYRXENN (1 << 16)
- // datardyinterrupt
- #define WLAN_DATARDYINTERRUPT (1 << 0)
- // framectrl
- #define WLAN_FRAMECTRL(n) (((n)&0xff) << 0)
- // duration
- #define WLAN_DURATION(n) (((n)&0xffff) << 0)
- // bcnintvl
- #define WLAN_BCNINTVL(n) (((n)&0xffff) << 0)
- // capinfo
- #define WLAN_CAPINFO(n) (((n)&0xffff) << 0)
- // elmtid
- #define WLAN_ELMTID(n) (((n)&0xff) << 0)
- // ssidlen
- #define WLAN_SSIDLEN(n) (((n)&0xff) << 0)
- #endif // _WLAN_H_
|