FILE
mcu.h
File preview with syntax highlighting.
linux-6.19.14/drivers/net/wireless/mediatek/mt76/mt7921/mcu.h
1/* SPDX-License-Identifier: BSD-3-Clause-Clear */ 2/* Copyright (C) 2020 MediaTek Inc. */ 3 4#ifndef __MT7921_MCU_H 5#define __MT7921_MCU_H 6 7#include "../mt76_connac_mcu.h" 8 9struct mt7921_mcu_tx_done_event { 10 u8 pid; 11 u8 status; 12 __le16 seq; 13 14 u8 wlan_idx; 15 u8 tx_cnt; 16 __le16 tx_rate; 17 18 u8 flag; 19 u8 tid; 20 u8 rsp_rate; 21 u8 mcs; 22 23 u8 bw; 24 u8 tx_pwr; 25 u8 reason; 26 u8 rsv0[1]; 27 28 __le32 delay; 29 __le32 timestamp; 30 __le32 applied_flag; 31 u8 txs[28]; 32 33 u8 rsv1[32]; 34} __packed; 35 36/* ext event table */ 37enum { 38 MCU_EXT_EVENT_RATE_REPORT = 0x87, 39}; 40 41struct mt7921_mcu_eeprom_info { 42 __le32 addr; 43 __le32 valid; 44 u8 data[MT7921_EEPROM_BLOCK_SIZE]; 45} __packed; 46 47#define MT_RA_RATE_NSS GENMASK(8, 6) 48#define MT_RA_RATE_MCS GENMASK(3, 0) 49#define MT_RA_RATE_TX_MODE GENMASK(12, 9) 50#define MT_RA_RATE_DCM_EN BIT(4) 51#define MT_RA_RATE_BW GENMASK(14, 13) 52 53enum { 54 MT_EBF = BIT(0), /* explicit beamforming */ 55 MT_IBF = BIT(1) /* implicit beamforming */ 56}; 57 58struct mt7921_mcu_ant_id_config { 59 u8 ant_id[4]; 60} __packed; 61 62struct mt7921_txpwr_req { 63 u8 ver; 64 u8 action; 65 __le16 len; 66 u8 dbdc_idx; 67 u8 rsv[3]; 68} __packed; 69 70struct mt7921_txpwr_event { 71 u8 ver; 72 u8 action; 73 __le16 len; 74 struct mt7921_txpwr txpwr; 75} __packed; 76 77struct mt7921_wf_rf_pin_ctrl_event { 78 u8 result; 79 u8 value; 80} __packed; 81 82enum { 83 TM_SWITCH_MODE, 84 TM_SET_AT_CMD, 85 TM_QUERY_AT_CMD, 86}; 87 88enum { 89 MT7921_TM_NORMAL, 90 MT7921_TM_TESTMODE, 91 MT7921_TM_ICAP, 92 MT7921_TM_ICAP_OVERLAP, 93 MT7921_TM_WIFISPECTRUM, 94}; 95 96struct mt7921_rftest_cmd { 97 u8 action; 98 u8 rsv[3]; 99 __le32 param0; 100 __le32 param1; 101} __packed; 102 103struct mt7921_rftest_evt { 104 __le32 param0; 105 __le32 param1; 106} __packed; 107 108struct mt7921_clc_info_tlv { 109 __le16 tag; 110 __le16 len; 111 112 u8 chan_conf; /* BIT(0) : Enable UNII-4 113 * BIT(1) : Enable UNII-5 114 * BIT(2) : Enable UNII-6 115 * BIT(3) : Enable UNII-7 116 * BIT(4) : Enable UNII-8 117 */ 118 u8 rsv[63]; 119} __packed; 120#endif
~/
Read-only file preview.