37 u8 rfc1042_eth_hdr[
ETH_ALEN] = { 0xaa, 0xaa, 0x03, 0x00, 0x00, 0x00 };
45 "Tx: Bridge packet limit reached. Drop packet!\n");
51 rfc1042_eth_hdr,
sizeof(rfc1042_eth_hdr)))
55 hdr_chop = (
u8 *)eth_hdr - (
u8 *)uap_rx_pd;
68 "data: Tx: insufficient skb headroom %d\n",
75 "Tx: cannot allocate new_skb\n");
77 priv->
stats.tx_dropped++;
87 tx_info = MWIFIEX_SKB_TXCB(skb);
93 skb->
tstamp = timeval_to_ktime(tv);
130 dev_err(adapter->
dev,
"drop packet in disconnected state.\n");
137 if (is_multicast_ether_addr(ra)) {
139 mwifiex_uap_queue_bridged_pkt(priv, skb_uap);
143 mwifiex_uap_queue_bridged_pkt(priv, skb);
174 mwifiex_get_priv_by_id(adapter, rx_info->
bss_num,
187 "wrong rx packet: len=%d, offset=%d, length=%d\n",
190 priv->
stats.rx_dropped++;
192 if (adapter->
if_ops.data_complete)
193 adapter->
if_ops.data_complete(adapter, skb);
204 __skb_queue_head_init(&list);
209 priv->
wdev->iftype, 0,
false);
211 while (!skb_queue_empty(&list)) {
212 rx_skb = __skb_dequeue(&list);
216 "AP:Rx A-MSDU failed");
223 dev_err(adapter->
dev,
"Rx of mgmt packet failed");
251 if (adapter->
if_ops.data_complete)
252 adapter->
if_ops.data_complete(adapter, skb);
258 priv->
stats.rx_dropped++;
290 dev_err(adapter->
dev,
"Tx: bad packet length: %d\n", skb->
len);
295 pkt_type = mwifiex_is_skb_mgmt_frame(skb) ?
PKT_TYPE_MGMT : 0;
298 pad = (4 - (((
void *)skb->
data -
NULL) & 0x3)) % 4;
300 len =
sizeof(*txpd) +
pad;
307 memset(txpd, 0,
sizeof(*txpd));