1 /* SPDX-License-Identifier: ISC */
3 * Copyright (C) 2018 Lorenzo Bianconi <lorenzo.bianconi83@gmail.com>
9 #include <linux/device.h>
14 #define MT7612U_EEPROM_SIZE 512
16 #define MT_USB_AGGR_SIZE_LIMIT 21 /* 1024B unit */
17 #define MT_USB_AGGR_TIMEOUT 0x80 /* 33ns unit */
19 extern const struct ieee80211_ops mt76x2u_ops
;
21 int mt76x2u_register_device(struct mt76x02_dev
*dev
);
22 int mt76x2u_init_hardware(struct mt76x02_dev
*dev
);
23 void mt76x2u_cleanup(struct mt76x02_dev
*dev
);
24 void mt76x2u_stop_hw(struct mt76x02_dev
*dev
);
26 int mt76x2u_mac_reset(struct mt76x02_dev
*dev
);
27 int mt76x2u_mac_stop(struct mt76x02_dev
*dev
);
29 int mt76x2u_phy_set_channel(struct mt76x02_dev
*dev
,
30 struct cfg80211_chan_def
*chandef
);
31 void mt76x2u_phy_calibrate(struct work_struct
*work
);
33 void mt76x2u_mcu_complete_urb(struct urb
*urb
);
34 int mt76x2u_mcu_init(struct mt76x02_dev
*dev
);
35 int mt76x2u_mcu_fw_init(struct mt76x02_dev
*dev
);
37 int mt76x2u_alloc_queues(struct mt76x02_dev
*dev
);
38 void mt76x2u_queues_deinit(struct mt76x02_dev
*dev
);
39 void mt76x2u_stop_queues(struct mt76x02_dev
*dev
);
40 int mt76x2u_skb_dma_info(struct sk_buff
*skb
, enum dma_msg_port port
,
43 #endif /* __MT76x2U_H */