halmac_sdio_reg.h 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. /******************************************************************************
  2. *
  3. * Copyright(c) 2016 - 2018 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. ******************************************************************************/
  15. #ifndef __HALMAC_SDIO_REG_H__
  16. #define __HALMAC_SDIO_REG_H__
  17. /* SDIO CMD address mapping */
  18. #define HALMAC_SDIO_4BYTE_LEN_MASK 0x1FFF
  19. #define HALMAC_SDIO_LOCAL_MSK 0x0FFF
  20. #define HALMAC_WLAN_MAC_REG_MSK 0xFFFF
  21. #define HALMAC_WLAN_IOREG_MSK 0xFFFF
  22. /* Sdio Address for SDIO Local Reg, TRX FIFO, MAC Reg */
  23. enum halmac_sdio_cmd_addr {
  24. HALMAC_SDIO_CMD_ADDR_SDIO_REG = 0,
  25. HALMAC_SDIO_CMD_ADDR_MAC_REG = 8,
  26. HALMAC_SDIO_CMD_ADDR_TXFF_HIGH = 4,
  27. HALMAC_SDIO_CMD_ADDR_TXFF_LOW = 6,
  28. HALMAC_SDIO_CMD_ADDR_TXFF_NORMAL = 5,
  29. HALMAC_SDIO_CMD_ADDR_TXFF_EXTRA = 7,
  30. HALMAC_SDIO_CMD_ADDR_RXFF = 7,
  31. };
  32. /* IO Bus domain address mapping */
  33. #define SDIO_LOCAL_OFFSET 0x10250000
  34. #define WLAN_IOREG_OFFSET 0x10260000
  35. #define FW_FIFO_OFFSET 0x10270000
  36. #define TX_HIQ_OFFSET 0x10310000
  37. #define TX_MIQ_OFFSET 0x10320000
  38. #define TX_LOQ_OFFSET 0x10330000
  39. #define TX_EXQ_OFFSET 0x10350000
  40. #define RX_RXOFF_OFFSET 0x10340000
  41. /* Get TX WLAN FIFO information in CMD53 addr */
  42. #if (HALMAC_8822B_SUPPORT || HALMAC_8821C_SUPPORT)
  43. #define GET_WLAN_TXFF_DEVICE_ID(cmd53_addr) \
  44. LE_BITS_TO_4BYTE((u32 *)cmd53_addr, 13, 4)
  45. #define GET_WLAN_TXFF_PKT_SIZE(cmd53_addr) \
  46. (LE_BITS_TO_4BYTE((u32 *)cmd53_addr, 0, 13) << 2)
  47. #endif
  48. #endif/* __HALMAC_SDIO_REG_H__ */