halmac_fw_info.h 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  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_FW_INFO_H_
  16. #define _HALMAC_FW_INFO_H_
  17. #define H2C_FORMAT_VERSION 11
  18. /* FW bin information */
  19. #define WLAN_FW_HDR_SIZE 64
  20. #define WLAN_FW_HDR_CHKSUM_SIZE 8
  21. #define WLAN_FW_HDR_VERSION 4
  22. #define WLAN_FW_HDR_SUBVERSION 6
  23. #define WLAN_FW_HDR_SUBINDEX 7
  24. #define WLAN_FW_HDR_MONTH 16
  25. #define WLAN_FW_HDR_DATE 17
  26. #define WLAN_FW_HDR_HOUR 18
  27. #define WLAN_FW_HDR_MIN 19
  28. #define WLAN_FW_HDR_YEAR 20
  29. #define WLAN_FW_HDR_MEM_USAGE 24
  30. #define WLAN_FW_HDR_H2C_FMT_VER 28
  31. #define WLAN_FW_HDR_DMEM_ADDR 32
  32. #define WLAN_FW_HDR_DMEM_SIZE 36
  33. #define WLAN_FW_HDR_IMEM_SIZE 48
  34. #define WLAN_FW_HDR_EMEM_SIZE 52
  35. #define WLAN_FW_HDR_EMEM_ADDR 56
  36. #define WLAN_FW_HDR_IMEM_ADDR 60
  37. #define H2C_ACK_HDR_CONTENT_LENGTH 8
  38. #define CFG_PARAMETER_ACK_CONTENT_LENGTH 16
  39. #define SCAN_STATUS_RPT_CONTENT_LENGTH 4
  40. #define C2H_DBG_HDR_LEN 4
  41. #define C2H_DBG_CONTENT_MAX_LENGTH 228
  42. #define C2H_DBG_CONTENT_SEQ_OFFSET 1
  43. /* Rename from FW SysHalCom_Debug_RAM.h */
  44. #define FW_REG_H2CPKT_DONE_SEQ 0x1C8
  45. #define FW_REG_WOW_REASON 0x1C7
  46. enum halmac_data_type {
  47. HALMAC_DATA_TYPE_MAC_REG = 0x00,
  48. HALMAC_DATA_TYPE_BB_REG = 0x01,
  49. HALMAC_DATA_TYPE_RADIO_A = 0x02,
  50. HALMAC_DATA_TYPE_RADIO_B = 0x03,
  51. HALMAC_DATA_TYPE_RADIO_C = 0x04,
  52. HALMAC_DATA_TYPE_RADIO_D = 0x05,
  53. HALMAC_DATA_TYPE_DRV_DEFINE_0 = 0x80,
  54. HALMAC_DATA_TYPE_DRV_DEFINE_1 = 0x81,
  55. HALMAC_DATA_TYPE_DRV_DEFINE_2 = 0x82,
  56. HALMAC_DATA_TYPE_DRV_DEFINE_3 = 0x83,
  57. HALMAC_DATA_TYPE_UNDEFINE = 0x7FFFFFFF,
  58. };
  59. enum halmac_packet_id {
  60. HALMAC_PACKET_PROBE_REQ = 0x00,
  61. HALMAC_PACKET_SYNC_BCN = 0x01,
  62. HALMAC_PACKET_DISCOVERY_BCN = 0x02,
  63. HALMAC_PACKET_UNDEFINE = 0x7FFFFFFF,
  64. };
  65. enum halmac_cs_action_id {
  66. HALMAC_CS_ACTION_NONE = 0x00,
  67. HALMAC_CS_ACTIVE_SCAN = 0x01,
  68. HALMAC_CS_NAN_NONMASTER_DW = 0x02,
  69. HALMAC_CS_NAN_NONMASTER_NONDW = 0x03,
  70. HALMAC_CS_NAN_MASTER_NONDW = 0x04,
  71. HALMAC_CS_NAN_MASTER_DW = 0x05,
  72. HALMAC_CS_ACTION_UNDEFINE = 0x7FFFFFFF,
  73. };
  74. enum halmac_cs_extra_action_id {
  75. HALMAC_CS_EXTRA_ACTION_NONE = 0x00,
  76. HALMAC_CS_EXTRA_UPDATE_PROBE = 0x01,
  77. HALMAC_CS_EXTRA_UPDATE_BEACON = 0x02,
  78. HALMAC_CS_EXTRA_ACTION_UNDEFINE = 0x7FFFFFFF,
  79. };
  80. enum halmac_h2c_return_code {
  81. HALMAC_H2C_RETURN_SUCCESS = 0x00,
  82. HALMAC_H2C_RETURN_CFG_ERR_LEN = 0x01,
  83. HALMAC_H2C_RETURN_CFG_ERR_CMD = 0x02,
  84. HALMAC_H2C_RETURN_EFUSE_ERR_DUMP = 0x03,
  85. HALMAC_H2C_RETURN_DATAPACK_ERR_FULL = 0x04,
  86. HALMAC_H2C_RETURN_DATAPACK_ERR_ID = 0x05,
  87. HALMAC_H2C_RETURN_RUN_ERR_EMPTY = 0x06,
  88. HALMAC_H2C_RETURN_RUN_ERR_LEN = 0x07,
  89. HALMAC_H2C_RETURN_RUN_ERR_CMD = 0x08,
  90. HALMAC_H2C_RETURN_RUN_ERR_ID = 0x09,
  91. HALMAC_H2C_RETURN_PACKET_ERR_FULL = 0x0A,
  92. HALMAC_H2C_RETURN_PACKET_ERR_ID = 0x0B,
  93. HALMAC_H2C_RETURN_SCAN_ERR_FULL = 0x0C,
  94. HALMAC_H2C_RETURN_SCAN_ERR_PHYDM = 0x0D,
  95. HALMAC_H2C_RETURN_ORIG_ERR_ID = 0x0E,
  96. HALMAC_H2C_RETURN_UNDEFINE = 0x7FFFFFFF,
  97. };
  98. enum halmac_scan_report_code {
  99. HALMAC_SCAN_REPORT_DONE = 0x00,
  100. HALMAC_SCAN_REPORT_ERR_PHYDM = 0x01,
  101. HALMAC_SCAN_REPORT_ERR_ID = 0x02,
  102. HALMAC_SCAN_REPORT_ERR_TX = 0x03,
  103. HALMAC_SCAN_REPORT_UNDEFINE = 0x7FFFFFFF,
  104. };
  105. #endif