linux/drivers/net/wireless/mediatek/mt76/mt7925/mac.c

// SPDX-License-Identifier: ISC
/* Copyright (C) 2023 MediaTek Inc. */

#include <linux/devcoredump.h>
#include <linux/etherdevice.h>
#include <linux/timekeeping.h>
#include "mt7925.h"
#include "../dma.h"
#include "mac.h"
#include "mcu.h"

bool mt7925_mac_wtbl_update(struct mt792x_dev *dev, int idx, u32 mask)
{}

static void mt7925_mac_sta_poll(struct mt792x_dev *dev)
{}

void mt7925_mac_set_fixed_rate_table(struct mt792x_dev *dev,
				     u8 tbl_idx, u16 rate_idx)
{}

/* The HW does not translate the mac header to 802.3 for mesh point */
static int mt7925_reverse_frag0_hdr_trans(struct sk_buff *skb, u16 hdr_gap)
{}

static int
mt7925_mac_fill_rx_rate(struct mt792x_dev *dev,
			struct mt76_rx_status *status,
			struct ieee80211_supported_band *sband,
			__le32 *rxv, u8 *mode)
{}

static int
mt7925_mac_fill_rx(struct mt792x_dev *dev, struct sk_buff *skb)
{}

static void
mt7925_mac_write_txwi_8023(__le32 *txwi, struct sk_buff *skb,
			   struct mt76_wcid *wcid)
{}

static void
mt7925_mac_write_txwi_80211(struct mt76_dev *dev, __le32 *txwi,
			    struct sk_buff *skb,
			    struct ieee80211_key_conf *key)
{}

void
mt7925_mac_write_txwi(struct mt76_dev *dev, __le32 *txwi,
		      struct sk_buff *skb, struct mt76_wcid *wcid,
		      struct ieee80211_key_conf *key, int pid,
		      enum mt76_txq_id qid, u32 changed)
{}
EXPORT_SYMBOL_GPL();

static void mt7925_tx_check_aggr(struct ieee80211_sta *sta, struct sk_buff *skb,
				 struct mt76_wcid *wcid)
{}

static bool
mt7925_mac_add_txs_skb(struct mt792x_dev *dev, struct mt76_wcid *wcid,
		       int pid, __le32 *txs_data)
{}

void mt7925_mac_add_txs(struct mt792x_dev *dev, void *data)
{}

void mt7925_txwi_free(struct mt792x_dev *dev, struct mt76_txwi_cache *t,
		      struct ieee80211_sta *sta, struct mt76_wcid *wcid,
		      struct list_head *free_list)
{}
EXPORT_SYMBOL_GPL();

static void
mt7925_mac_tx_free(struct mt792x_dev *dev, void *data, int len)
{}

bool mt7925_rx_check(struct mt76_dev *mdev, void *data, int len)
{}
EXPORT_SYMBOL_GPL();

void mt7925_queue_rx_skb(struct mt76_dev *mdev, enum mt76_rxq_id q,
			 struct sk_buff *skb, u32 *info)
{}
EXPORT_SYMBOL_GPL();

static void
mt7925_vif_connect_iter(void *priv, u8 *mac,
			struct ieee80211_vif *vif)
{}

/* system error recovery */
void mt7925_mac_reset_work(struct work_struct *work)
{}

void mt7925_coredump_work(struct work_struct *work)
{}

/* usb_sdio */
static void
mt7925_usb_sdio_write_txwi(struct mt792x_dev *dev, struct mt76_wcid *wcid,
			   enum mt76_txq_id qid, struct ieee80211_sta *sta,
			   struct ieee80211_key_conf *key, int pid,
			   struct sk_buff *skb)
{}

int mt7925_usb_sdio_tx_prepare_skb(struct mt76_dev *mdev, void *txwi_ptr,
				   enum mt76_txq_id qid, struct mt76_wcid *wcid,
				   struct ieee80211_sta *sta,
				   struct mt76_tx_info *tx_info)
{}
EXPORT_SYMBOL_GPL();

void mt7925_usb_sdio_tx_complete_skb(struct mt76_dev *mdev,
				     struct mt76_queue_entry *e)
{}
EXPORT_SYMBOL_GPL();

bool mt7925_usb_sdio_tx_status_data(struct mt76_dev *mdev, u8 *update)
{}
EXPORT_SYMBOL_GPL();

#if IS_ENABLED(CONFIG_IPV6)
void mt7925_set_ipv6_ns_work(struct work_struct *work)
{}
#endif