#include "debug.h"
#include "efuse.h"
#include "mac.h"
#include "reg.h"
#define EFUSE_EXTERNALPN_ADDR_BE …
#define EFUSE_B1_MSSDEVTYPE_MASK …
#define EFUSE_B1_MSSCUSTIDX0_MASK …
#define EFUSE_SERIALNUM_ADDR_BE …
#define EFUSE_B2_MSSKEYNUM_MASK …
#define EFUSE_B2_MSSCUSTIDX1_MASK …
#define EFUSE_SB_CRYP_SEL_ADDR …
#define EFUSE_SB_CRYP_SEL_SIZE …
#define EFUSE_SB_CRYP_SEL_DEFAULT …
#define SB_SEL_MGN_MAX_SIZE …
#define EFUSE_SEC_BE_START …
#define EFUSE_SEC_BE_SIZE …
enum rtw89_efuse_mss_dev_type { … };
static const u32 sb_sel_mgn[SB_SEL_MGN_MAX_SIZE] = …;
static void rtw89_enable_efuse_pwr_cut_ddv_be(struct rtw89_dev *rtwdev)
{ … }
static void rtw89_disable_efuse_pwr_cut_ddv_be(struct rtw89_dev *rtwdev)
{ … }
static int rtw89_dump_physical_efuse_map_ddv_be(struct rtw89_dev *rtwdev, u8 *map,
u32 dump_addr, u32 dump_size)
{ … }
static int rtw89_dump_physical_efuse_map_dav_be(struct rtw89_dev *rtwdev, u8 *map,
u32 dump_addr, u32 dump_size)
{ … }
int rtw89_cnv_efuse_state_be(struct rtw89_dev *rtwdev, bool idle)
{ … }
static int rtw89_dump_physical_efuse_map_be(struct rtw89_dev *rtwdev, u8 *map,
u32 dump_addr, u32 dump_size, bool dav)
{ … }
#define EFUSE_HDR_CONST_MASK …
#define EFUSE_HDR_PAGE_MASK …
#define EFUSE_HDR_OFFSET_MASK …
#define EFUSE_HDR_OFFSET_DAV_MASK …
#define EFUSE_HDR_WORD_EN_MASK …
#define invalid_efuse_header_be(hdr1, hdr2, hdr3) …
#define invalid_efuse_content_be(word_en, i) …
#define get_efuse_blk_idx_be(hdr1, hdr2, hdr3) …
#define block_idx_to_logical_idx_be(blk_idx, i) …
#define invalid_efuse_header_dav_be(hdr1, hdr2) …
#define get_efuse_blk_idx_dav_be(hdr1, hdr2) …
static int rtw89_eeprom_parser_be(struct rtw89_dev *rtwdev,
const u8 *phy_map, u32 phy_size, u8 *log_map,
const struct rtw89_efuse_block_cfg *efuse_block)
{ … }
static int rtw89_parse_logical_efuse_block_be(struct rtw89_dev *rtwdev,
const u8 *phy_map, u32 phy_size,
enum rtw89_efuse_block block)
{ … }
int rtw89_parse_efuse_map_be(struct rtw89_dev *rtwdev)
{ … }
int rtw89_parse_phycap_map_be(struct rtw89_dev *rtwdev)
{ … }
static u16 get_sb_cryp_sel_idx(u16 sb_cryp_sel)
{ … }
static u8 get_mss_dev_type_idx(struct rtw89_dev *rtwdev, u8 mss_dev_type)
{ … }
int rtw89_efuse_read_fw_secure_be(struct rtw89_dev *rtwdev)
{ … }
EXPORT_SYMBOL(…);