halmac_efuse_88xx.h 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  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_EFUSE_88XX_H_
  16. #define _HALMAC_EFUSE_88XX_H_
  17. #include "../halmac_api.h"
  18. #if HALMAC_88XX_SUPPORT
  19. enum halmac_ret_status
  20. dump_efuse_map_88xx(struct halmac_adapter *adapter,
  21. enum halmac_efuse_read_cfg cfg);
  22. enum halmac_ret_status
  23. dump_efuse_map_bt_88xx(struct halmac_adapter *adapter,
  24. enum halmac_efuse_bank bank, u32 size, u8 *map);
  25. enum halmac_ret_status
  26. write_efuse_bt_88xx(struct halmac_adapter *adapter, u32 offset, u8 value,
  27. enum halmac_efuse_bank bank);
  28. enum halmac_ret_status
  29. read_efuse_bt_88xx(struct halmac_adapter *adapter, u32 offset, u8 *value,
  30. enum halmac_efuse_bank bank);
  31. enum halmac_ret_status
  32. cfg_efuse_auto_check_88xx(struct halmac_adapter *adapter, u8 enable);
  33. enum halmac_ret_status
  34. get_efuse_available_size_88xx(struct halmac_adapter *adapter, u32 *size);
  35. enum halmac_ret_status
  36. get_efuse_size_88xx(struct halmac_adapter *adapter, u32 *size);
  37. enum halmac_ret_status
  38. get_log_efuse_size_88xx(struct halmac_adapter *adapter, u32 *size);
  39. enum halmac_ret_status
  40. dump_log_efuse_map_88xx(struct halmac_adapter *adapter,
  41. enum halmac_efuse_read_cfg cfg);
  42. enum halmac_ret_status
  43. read_logical_efuse_88xx(struct halmac_adapter *adapter, u32 offset, u8 *value);
  44. enum halmac_ret_status
  45. write_log_efuse_88xx(struct halmac_adapter *adapter, u32 offset, u8 value);
  46. enum halmac_ret_status
  47. pg_efuse_by_map_88xx(struct halmac_adapter *adapter,
  48. struct halmac_pg_efuse_info *info,
  49. enum halmac_efuse_read_cfg cfg);
  50. enum halmac_ret_status
  51. mask_log_efuse_88xx(struct halmac_adapter *adapter,
  52. struct halmac_pg_efuse_info *info);
  53. enum halmac_ret_status
  54. read_efuse_88xx(struct halmac_adapter *adapter, u32 offset, u32 size, u8 *map);
  55. enum halmac_ret_status
  56. write_hw_efuse_88xx(struct halmac_adapter *adapter, u32 offset, u8 value);
  57. enum halmac_ret_status
  58. switch_efuse_bank_88xx(struct halmac_adapter *adapter,
  59. enum halmac_efuse_bank bank);
  60. enum halmac_ret_status
  61. get_efuse_data_88xx(struct halmac_adapter *adapter, u8 *buf, u32 size);
  62. enum halmac_ret_status
  63. cnv_efuse_state_88xx(struct halmac_adapter *adapter,
  64. enum halmac_cmd_construct_state dest_state);
  65. enum halmac_ret_status
  66. get_dump_phy_efuse_status_88xx(struct halmac_adapter *adapter,
  67. enum halmac_cmd_process_status *proc_status,
  68. u8 *data, u32 *size);
  69. enum halmac_ret_status
  70. get_dump_log_efuse_status_88xx(struct halmac_adapter *adapter,
  71. enum halmac_cmd_process_status *proc_status,
  72. u8 *data, u32 *size);
  73. enum halmac_ret_status
  74. get_h2c_ack_phy_efuse_88xx(struct halmac_adapter *adapter, u8 *buf, u32 size);
  75. u32
  76. get_rsvd_efuse_size_88xx(struct halmac_adapter *adapter);
  77. #endif /* HALMAC_88XX_SUPPORT */
  78. #endif/* _HALMAC_EFUSE_88XX_H_ */