/* SPDX-License-Identifier: GPL-2.0-only */ /* * This file is part of wl1271 * * Copyright (C) 1998-2009 Texas Instruments. All rights reserved. * Copyright (C) 2008-2009 Nokia Corporation * * Contact: Luciano Coelho <luciano.coelho@nokia.com>
*/
#define WL1271_TX_SECURITY_LO16(s) ((u16)((s) & 0xffff)) #define WL1271_TX_SECURITY_HI32(s) ((u32)(((s) >> 16) & 0xffffffff)) #define WL1271_TX_SQN_POST_RECOVERY_PADDING 0xff /* Use smaller padding for GEM, as some APs have issues when it's too big */ #define WL1271_TX_SQN_POST_RECOVERY_PADDING_GEM 0x20
/* Defined by FW as 0. Will not be freed or allocated. */ #define WL12XX_SYSTEM_HLID 0
/* * When in AP-mode, we allow (at least) this number of packets * to be transmitted to FW for a STA in PS-mode. Only when packets are * present in the FW buffers it will wake the sleeping STA. We want to put * enough packets for the driver to transmit all of its buffered data before * the STA goes to sleep again. But we don't want to take too much memory * as it might hurt the throughput of active STAs.
*/ #define WL1271_PS_STA_MAX_PACKETS 2
bool ref_clock_xtal; /* specify whether the clock is XTAL or not */
u32 ref_clock_freq; /* in Hertz */
u32 tcxo_clock_freq; /* in Hertz, tcxo is always XTAL */ bool pwr_in_suspend;
};
struct wl1271_link { /* AP-mode - TX queue per AC in link */ struct sk_buff_head tx_queue[NUM_TX_QUEUES];
/* accounting for allocated / freed packets in FW */
u8 allocated_pkts;
u8 prev_freed_pkts;
u16 prev_sec_pn16;
u8 addr[ETH_ALEN];
/* bitmap of TIDs where RX BA sessions are active for this link */
u8 ba_bitmap;
/* the last fw rate index we used for this link */
u8 fw_rate_idx;
/* the last fw rate [Mbps] we used for this link */
u8 fw_rate_mbps;
/* The wlvif this link belongs to. Might be null for global links */ struct wl12xx_vif *wlvif;
/* * total freed FW packets on the link - used for tracking the * AES/TKIP PN across recoveries. Re-initialized each time * from the wl1271_station structure.
*/
u64 total_freed_pkts;
};
/* * total freed FW packets on the link to the STA - used for tracking the * AES/TKIP PN across recoveries. Re-initialized each time from the * wl1271_station structure. * Used in both AP and STA mode.
*/
u64 total_freed_pkts;
};
/* number of in connection stations */ int inconn_count;
/* * This vif's queues are mapped to mac80211 HW queues as: * VO - hw_queue_base * VI - hw_queue_base + 1 * BE - hw_queue_base + 2 * BK - hw_queue_base + 3
*/ int hw_queue_base;
/* do we have a pending auth reply? (and ROC) */ bool ap_pending_auth_reply;
/* time when we sent the pending auth reply */ unsignedlong pending_auth_reply_time;
/* work for canceling ROC after pending auth reply */ struct delayed_work pending_auth_complete_work;
/* * total freed FW packets on the link. * For STA this holds the PN of the link to the AP. * For AP this holds the PN of the broadcast link.
*/
u64 total_freed_pkts;
/* * This struct must be last! * data that has to be saved acrossed reconfigs (e.g. recovery) * should be declared in this struct.
*/ struct {
u8 persistent[0];
};
};
/* WL1271 needs a 200ms sleep after power on, and a 20ms sleep before power
on in case is has been shut down shortly before */ #define WL1271_PRE_POWER_ON_SLEEP 20 /* in milliseconds */ #define WL1271_POWER_ON_SLEEP 200 /* in milliseconds */
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.