rtl8712_spec.h 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  1. /******************************************************************************
  2. *
  3. * Copyright(c) 2007 - 2010 Realtek Corporation. All rights reserved.
  4. *
  5. * This program is free software; you can redistribute it and/or modify it
  6. * under the terms of version 2 of the GNU General Public License as
  7. * published by the Free Software Foundation.
  8. *
  9. * This program is distributed in the hope that it will be useful, but WITHOUT
  10. * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  11. * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
  12. * more details.
  13. *
  14. * You should have received a copy of the GNU General Public License along with
  15. * this program; if not, write to the Free Software Foundation, Inc.,
  16. * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA
  17. *
  18. * Modifications for inclusion into the Linux staging tree are
  19. * Copyright(c) 2010 Larry Finger. All rights reserved.
  20. *
  21. * Contact information:
  22. * WLAN FAE <wlanfae@realtek.com>
  23. * Larry Finger <Larry.Finger@lwfinger.net>
  24. *
  25. ******************************************************************************/
  26. #ifndef __RTL8712_SPEC_H__
  27. #define __RTL8712_SPEC_H__
  28. #define RTL8712_IOBASE_TXPKT 0x10200000 /*IOBASE_TXPKT*/
  29. #define RTL8712_IOBASE_RXPKT 0x10210000 /*IOBASE_RXPKT*/
  30. #define RTL8712_IOBASE_RXCMD 0x10220000 /*IOBASE_RXCMD*/
  31. #define RTL8712_IOBASE_TXSTATUS 0x10230000 /*IOBASE_TXSTATUS*/
  32. #define RTL8712_IOBASE_RXSTATUS 0x10240000 /*IOBASE_RXSTATUS*/
  33. #define RTL8712_IOBASE_IOREG 0x10250000 /*IOBASE_IOREG ADDR*/
  34. #define RTL8712_IOBASE_SCHEDULER 0x10260000 /*IOBASE_SCHEDULE*/
  35. #define RTL8712_IOBASE_TRXDMA 0x10270000 /*IOBASE_TRXDMA*/
  36. #define RTL8712_IOBASE_TXLLT 0x10280000 /*IOBASE_TXLLT*/
  37. #define RTL8712_IOBASE_WMAC 0x10290000 /*IOBASE_WMAC*/
  38. #define RTL8712_IOBASE_FW2HW 0x102A0000 /*IOBASE_FW2HW*/
  39. #define RTL8712_IOBASE_ACCESS_PHYREG 0x102B0000 /*IOBASE_ACCESS_PHYREG*/
  40. #define RTL8712_IOBASE_FF 0x10300000 /*IOBASE_FIFO 0x1031000~0x103AFFFF*/
  41. /*IOREG Offset for 8712*/
  42. #define RTL8712_SYSCFG_ RTL8712_IOBASE_IOREG
  43. #define RTL8712_CMDCTRL_ (RTL8712_IOBASE_IOREG + 0x40)
  44. #define RTL8712_MACIDSETTING_ (RTL8712_IOBASE_IOREG + 0x50)
  45. #define RTL8712_TIMECTRL_ (RTL8712_IOBASE_IOREG + 0x80)
  46. #define RTL8712_FIFOCTRL_ (RTL8712_IOBASE_IOREG + 0xA0)
  47. #define RTL8712_RATECTRL_ (RTL8712_IOBASE_IOREG + 0x160)
  48. #define RTL8712_EDCASETTING_ (RTL8712_IOBASE_IOREG + 0x1D0)
  49. #define RTL8712_WMAC_ (RTL8712_IOBASE_IOREG + 0x200)
  50. #define RTL8712_SECURITY_ (RTL8712_IOBASE_IOREG + 0x240)
  51. #define RTL8712_POWERSAVE_ (RTL8712_IOBASE_IOREG + 0x260)
  52. #define RTL8712_GP_ (RTL8712_IOBASE_IOREG + 0x2E0)
  53. #define RTL8712_INTERRUPT_ (RTL8712_IOBASE_IOREG + 0x300)
  54. #define RTL8712_DEBUGCTRL_ (RTL8712_IOBASE_IOREG + 0x310)
  55. #define RTL8712_OFFLOAD_ (RTL8712_IOBASE_IOREG + 0x2D0)
  56. /*FIFO for 8712*/
  57. #define RTL8712_DMA_BCNQ (RTL8712_IOBASE_FF + 0x10000)
  58. #define RTL8712_DMA_MGTQ (RTL8712_IOBASE_FF + 0x20000)
  59. #define RTL8712_DMA_BMCQ (RTL8712_IOBASE_FF + 0x30000)
  60. #define RTL8712_DMA_VOQ (RTL8712_IOBASE_FF + 0x40000)
  61. #define RTL8712_DMA_VIQ (RTL8712_IOBASE_FF + 0x50000)
  62. #define RTL8712_DMA_BEQ (RTL8712_IOBASE_FF + 0x60000)
  63. #define RTL8712_DMA_BKQ (RTL8712_IOBASE_FF + 0x70000)
  64. #define RTL8712_DMA_RX0FF (RTL8712_IOBASE_FF + 0x80000)
  65. #define RTL8712_DMA_H2CCMD (RTL8712_IOBASE_FF + 0x90000)
  66. #define RTL8712_DMA_C2HCMD (RTL8712_IOBASE_FF + 0xA0000)
  67. /*------------------------------*/
  68. /*BIT 16 15*/
  69. #define DID_SDIO_LOCAL 0 /* 0 0*/
  70. #define DID_WLAN_IOREG 1 /* 0 1*/
  71. #define DID_WLAN_FIFO 3 /* 1 1*/
  72. #define DID_UNDEFINE (-1)
  73. #define CMD_ADDR_MAPPING_SHIFT 2 /*SDIO CMD ADDR MAPPING,
  74. *shift 2 bit for match
  75. * offset[14:2]*/
  76. /*Offset for SDIO LOCAL*/
  77. #define OFFSET_SDIO_LOCAL 0x0FFF
  78. /*Offset for WLAN IOREG*/
  79. #define OFFSET_WLAN_IOREG 0x0FFF
  80. /*Offset for WLAN FIFO*/
  81. #define OFFSET_TX_BCNQ 0x0300
  82. #define OFFSET_TX_HIQ 0x0310
  83. #define OFFSET_TX_CMDQ 0x0320
  84. #define OFFSET_TX_MGTQ 0x0330
  85. #define OFFSET_TX_HCCAQ 0x0340
  86. #define OFFSET_TX_VOQ 0x0350
  87. #define OFFSET_TX_VIQ 0x0360
  88. #define OFFSET_TX_BEQ 0x0370
  89. #define OFFSET_TX_BKQ 0x0380
  90. #define OFFSET_RX_RX0FFQ 0x0390
  91. #define OFFSET_RX_C2HFFQ 0x03A0
  92. #define BK_QID_01 1
  93. #define BK_QID_02 2
  94. #define BE_QID_01 0
  95. #define BE_QID_02 3
  96. #define VI_QID_01 4
  97. #define VI_QID_02 5
  98. #define VO_QID_01 6
  99. #define VO_QID_02 7
  100. #define HCCA_QID_01 8
  101. #define HCCA_QID_02 9
  102. #define HCCA_QID_03 10
  103. #define HCCA_QID_04 11
  104. #define HCCA_QID_05 12
  105. #define HCCA_QID_06 13
  106. #define HCCA_QID_07 14
  107. #define HCCA_QID_08 15
  108. #define HI_QID 17
  109. #define CMD_QID 19
  110. #define MGT_QID 18
  111. #define BCN_QID 16
  112. #include "rtl8712_regdef.h"
  113. #include "rtl8712_bitdef.h"
  114. #include "basic_types.h"
  115. #endif /* __RTL8712_SPEC_H__ */