#ifndef __CARL9170_SHARED_FWDESC_H
#define __CARL9170_SHARED_FWDESC_H
enum carl9170fw_feature_list { … };
#define OTUS_MAGIC …
#define MOTD_MAGIC …
#define FIX_MAGIC …
#define DBG_MAGIC …
#define CHK_MAGIC …
#define TXSQ_MAGIC …
#define WOL_MAGIC …
#define LAST_MAGIC …
#define CARL9170FW_SET_DAY(d) …
#define CARL9170FW_SET_MONTH(m) …
#define CARL9170FW_SET_YEAR(y) …
#define CARL9170FW_GET_DAY(d) …
#define CARL9170FW_GET_MONTH(m) …
#define CARL9170FW_GET_YEAR(y) …
#define CARL9170FW_MAGIC_SIZE …
struct carl9170fw_desc_head { … } __packed;
#define CARL9170FW_DESC_HEAD_SIZE …
#define CARL9170FW_OTUS_DESC_MIN_VER …
#define CARL9170FW_OTUS_DESC_CUR_VER …
struct carl9170fw_otus_desc { … } __packed;
#define CARL9170FW_OTUS_DESC_SIZE …
#define CARL9170FW_MOTD_STRING_LEN …
#define CARL9170FW_MOTD_RELEASE_LEN …
#define CARL9170FW_MOTD_DESC_MIN_VER …
#define CARL9170FW_MOTD_DESC_CUR_VER …
struct carl9170fw_motd_desc { … } __packed;
#define CARL9170FW_MOTD_DESC_SIZE …
#define CARL9170FW_FIX_DESC_MIN_VER …
#define CARL9170FW_FIX_DESC_CUR_VER …
struct carl9170fw_fix_entry { … } __packed;
struct carl9170fw_fix_desc { … } __packed;
#define CARL9170FW_FIX_DESC_SIZE …
#define CARL9170FW_DBG_DESC_MIN_VER …
#define CARL9170FW_DBG_DESC_CUR_VER …
struct carl9170fw_dbg_desc { … } __packed;
#define CARL9170FW_DBG_DESC_SIZE …
#define CARL9170FW_CHK_DESC_MIN_VER …
#define CARL9170FW_CHK_DESC_CUR_VER …
struct carl9170fw_chk_desc { … } __packed;
#define CARL9170FW_CHK_DESC_SIZE …
#define CARL9170FW_TXSQ_DESC_MIN_VER …
#define CARL9170FW_TXSQ_DESC_CUR_VER …
struct carl9170fw_txsq_desc { … } __packed;
#define CARL9170FW_TXSQ_DESC_SIZE …
#define CARL9170FW_WOL_DESC_MIN_VER …
#define CARL9170FW_WOL_DESC_CUR_VER …
struct carl9170fw_wol_desc { … } __packed;
#define CARL9170FW_WOL_DESC_SIZE …
#define CARL9170FW_LAST_DESC_MIN_VER …
#define CARL9170FW_LAST_DESC_CUR_VER …
struct carl9170fw_last_desc { … } __packed;
#define CARL9170FW_LAST_DESC_SIZE …
#define CARL9170FW_DESC_MAX_LENGTH …
#define CARL9170FW_FILL_DESC(_magic, _length, _min_ver, _cur_ver) …
static inline void carl9170fw_fill_desc(struct carl9170fw_desc_head *head,
u8 magic[CARL9170FW_MAGIC_SIZE],
__le16 length, u8 min_ver, u8 cur_ver)
{ … }
#define carl9170fw_for_each_hdr(desc, fw_desc) …
#define CHECK_HDR_VERSION(head, _min_ver) … \
static inline bool carl9170fw_supports(__le32 list, u8 feature)
{ … }
static inline bool carl9170fw_desc_cmp(const struct carl9170fw_desc_head *head,
const u8 descid[CARL9170FW_MAGIC_SIZE],
u16 min_len, u8 compatible_revision)
{ … }
#define CARL9170FW_MIN_SIZE …
#define CARL9170FW_MAX_SIZE …
static inline bool carl9170fw_size_check(unsigned int len)
{ … }
#endif