X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=include%2Fshared%2Ffwcmd.h;h=ea1d80f9a50efb3a8d4c59113c6782479b90d8aa;hb=cb6ee23c791499d599404f1d24d746d15a471e6a;hp=8fea62901b2bcfae0405dbfe9739c503ed4af522;hpb=8bd3397985e442761ce6956b3ba2e126a2577c42;p=carl9170fw.git diff --git a/include/shared/fwcmd.h b/include/shared/fwcmd.h index 8fea629..ea1d80f 100644 --- a/include/shared/fwcmd.h +++ b/include/shared/fwcmd.h @@ -55,6 +55,8 @@ enum carl9170_cmd_oids { CARL9170_CMD_READ_TSF = 0x06, CARL9170_CMD_RX_FILTER = 0x07, CARL9170_CMD_WOL = 0x08, + CARL9170_CMD_TALLY = 0x09, + CARL9170_CMD_WREGB = 0x0a, /* CAM */ CARL9170_CMD_EKEY = 0x10, @@ -122,6 +124,12 @@ struct carl9170_write_reg { } regs[0] __packed; } __packed; +struct carl9170_write_reg_byte { + __le32 addr; + __le32 count; + u8 val[0]; +} __packed; + #define CARL9170FW_PHY_HT_ENABLE 0x4 #define CARL9170FW_PHY_HT_DYN2040 0x8 #define CARL9170FW_PHY_HT_EXT_CHAN_OFF 0x3 @@ -155,6 +163,14 @@ struct carl9170_psm { } __packed; #define CARL9170_PSM_SIZE 4 +/* + * Note: If a bit in rx_filter is set, then it + * means that the particular frames which matches + * the condition are FILTERED/REMOVED/DISCARDED! + * (This is can be a bit confusing, especially + * because someone people think it's the exact + * opposite way, so watch out!) + */ struct carl9170_rx_filter_cmd { __le32 rx_filter; } __packed; @@ -186,7 +202,7 @@ struct carl9170_wol_cmd { u8 mac[6]; u8 bssid[6]; __le32 null_interval; - __le32 free_for_use2; + __le32 free_for_use2; __le32 mask; u8 pattern[32]; } __packed; @@ -217,6 +233,7 @@ struct carl9170_cmd { struct carl9170_u32_list echo; struct carl9170_reg_list rreg; struct carl9170_write_reg wreg; + struct carl9170_write_reg_byte wregb; struct carl9170_rf_init rf_init; struct carl9170_psm psm; struct carl9170_wol_cmd wol; @@ -286,6 +303,15 @@ struct carl9170_tsf_rsp { } __packed; #define CARL9170_TSF_RSP_SIZE 8 +struct carl9170_tally_rsp { + __le32 active; + __le32 cca; + __le32 tx_time; + __le32 rx_total; + __le32 rx_overrun; + __le32 tick; +} __packed; + struct carl9170_rsp { struct carl9170_cmd_head hdr; @@ -300,6 +326,7 @@ struct carl9170_rsp { struct carl9170_gpio gpio; struct carl9170_tsf_rsp tsf; struct carl9170_psm psm; + struct carl9170_tally_rsp tally; u8 data[CARL9170_MAX_CMD_PAYLOAD_LEN]; } __packed; } __packed __aligned(4);