Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6
This commit is contained in:
commit
dfef948ed2
121 changed files with 2686 additions and 2219 deletions
229
include/linux/i82593.h
Normal file
229
include/linux/i82593.h
Normal file
|
|
@ -0,0 +1,229 @@
|
|||
/*
|
||||
* Definitions for Intel 82593 CSMA/CD Core LAN Controller
|
||||
* The definitions are taken from the 1992 users manual with Intel
|
||||
* order number 297125-001.
|
||||
*
|
||||
* /usr/src/pc/RCS/i82593.h,v 1.1 1996/07/17 15:23:12 root Exp
|
||||
*
|
||||
* Copyright 1994, Anders Klemets <klemets@it.kth.se>
|
||||
*
|
||||
* HISTORY
|
||||
* i82593.h,v
|
||||
* Revision 1.4 2005/11/4 09:15:00 baroniunas
|
||||
* Modified copyright with permission of author as follows:
|
||||
*
|
||||
* "If I82539.H is the only file with my copyright statement
|
||||
* that is included in the Source Forge project, then you have
|
||||
* my approval to change the copyright statement to be a GPL
|
||||
* license, in the way you proposed on October 10."
|
||||
*
|
||||
* Revision 1.1 1996/07/17 15:23:12 root
|
||||
* Initial revision
|
||||
*
|
||||
* Revision 1.3 1995/04/05 15:13:58 adj
|
||||
* Initial alpha release
|
||||
*
|
||||
* Revision 1.2 1994/06/16 23:57:31 klemets
|
||||
* Mirrored all the fields in the configuration block.
|
||||
*
|
||||
* Revision 1.1 1994/06/02 20:25:34 klemets
|
||||
* Initial revision
|
||||
*
|
||||
*
|
||||
*/
|
||||
#ifndef _I82593_H
|
||||
#define _I82593_H
|
||||
|
||||
/* Intel 82593 CSMA/CD Core LAN Controller */
|
||||
|
||||
/* Port 0 Command Register definitions */
|
||||
|
||||
/* Execution operations */
|
||||
#define OP0_NOP 0 /* CHNL = 0 */
|
||||
#define OP0_SWIT_TO_PORT_1 0 /* CHNL = 1 */
|
||||
#define OP0_IA_SETUP 1
|
||||
#define OP0_CONFIGURE 2
|
||||
#define OP0_MC_SETUP 3
|
||||
#define OP0_TRANSMIT 4
|
||||
#define OP0_TDR 5
|
||||
#define OP0_DUMP 6
|
||||
#define OP0_DIAGNOSE 7
|
||||
#define OP0_TRANSMIT_NO_CRC 9
|
||||
#define OP0_RETRANSMIT 12
|
||||
#define OP0_ABORT 13
|
||||
/* Reception operations */
|
||||
#define OP0_RCV_ENABLE 8
|
||||
#define OP0_RCV_DISABLE 10
|
||||
#define OP0_STOP_RCV 11
|
||||
/* Status pointer control operations */
|
||||
#define OP0_FIX_PTR 15 /* CHNL = 1 */
|
||||
#define OP0_RLS_PTR 15 /* CHNL = 0 */
|
||||
#define OP0_RESET 14
|
||||
|
||||
#define CR0_CHNL (1 << 4) /* 0=Channel 0, 1=Channel 1 */
|
||||
#define CR0_STATUS_0 0x00
|
||||
#define CR0_STATUS_1 0x20
|
||||
#define CR0_STATUS_2 0x40
|
||||
#define CR0_STATUS_3 0x60
|
||||
#define CR0_INT_ACK (1 << 7) /* 0=No ack, 1=acknowledge */
|
||||
|
||||
/* Port 0 Status Register definitions */
|
||||
|
||||
#define SR0_NO_RESULT 0 /* dummy */
|
||||
#define SR0_EVENT_MASK 0x0f
|
||||
#define SR0_IA_SETUP_DONE 1
|
||||
#define SR0_CONFIGURE_DONE 2
|
||||
#define SR0_MC_SETUP_DONE 3
|
||||
#define SR0_TRANSMIT_DONE 4
|
||||
#define SR0_TDR_DONE 5
|
||||
#define SR0_DUMP_DONE 6
|
||||
#define SR0_DIAGNOSE_PASSED 7
|
||||
#define SR0_TRANSMIT_NO_CRC_DONE 9
|
||||
#define SR0_RETRANSMIT_DONE 12
|
||||
#define SR0_EXECUTION_ABORTED 13
|
||||
#define SR0_END_OF_FRAME 8
|
||||
#define SR0_RECEPTION_ABORTED 10
|
||||
#define SR0_DIAGNOSE_FAILED 15
|
||||
#define SR0_STOP_REG_HIT 11
|
||||
|
||||
#define SR0_CHNL (1 << 4)
|
||||
#define SR0_EXECUTION (1 << 5)
|
||||
#define SR0_RECEPTION (1 << 6)
|
||||
#define SR0_INTERRUPT (1 << 7)
|
||||
#define SR0_BOTH_RX_TX (SR0_EXECUTION | SR0_RECEPTION)
|
||||
|
||||
#define SR3_EXEC_STATE_MASK 0x03
|
||||
#define SR3_EXEC_IDLE 0
|
||||
#define SR3_TX_ABORT_IN_PROGRESS 1
|
||||
#define SR3_EXEC_ACTIVE 2
|
||||
#define SR3_ABORT_IN_PROGRESS 3
|
||||
#define SR3_EXEC_CHNL (1 << 2)
|
||||
#define SR3_STP_ON_NO_RSRC (1 << 3)
|
||||
#define SR3_RCVING_NO_RSRC (1 << 4)
|
||||
#define SR3_RCV_STATE_MASK 0x60
|
||||
#define SR3_RCV_IDLE 0x00
|
||||
#define SR3_RCV_READY 0x20
|
||||
#define SR3_RCV_ACTIVE 0x40
|
||||
#define SR3_RCV_STOP_IN_PROG 0x60
|
||||
#define SR3_RCV_CHNL (1 << 7)
|
||||
|
||||
/* Port 1 Command Register definitions */
|
||||
|
||||
#define OP1_NOP 0
|
||||
#define OP1_SWIT_TO_PORT_0 1
|
||||
#define OP1_INT_DISABLE 2
|
||||
#define OP1_INT_ENABLE 3
|
||||
#define OP1_SET_TS 5
|
||||
#define OP1_RST_TS 7
|
||||
#define OP1_POWER_DOWN 8
|
||||
#define OP1_RESET_RING_MNGMT 11
|
||||
#define OP1_RESET 14
|
||||
#define OP1_SEL_RST 15
|
||||
|
||||
#define CR1_STATUS_4 0x00
|
||||
#define CR1_STATUS_5 0x20
|
||||
#define CR1_STATUS_6 0x40
|
||||
#define CR1_STOP_REG_UPDATE (1 << 7)
|
||||
|
||||
/* Receive frame status bits */
|
||||
|
||||
#define RX_RCLD (1 << 0)
|
||||
#define RX_IA_MATCH (1 << 1)
|
||||
#define RX_NO_AD_MATCH (1 << 2)
|
||||
#define RX_NO_SFD (1 << 3)
|
||||
#define RX_SRT_FRM (1 << 7)
|
||||
#define RX_OVRRUN (1 << 8)
|
||||
#define RX_ALG_ERR (1 << 10)
|
||||
#define RX_CRC_ERR (1 << 11)
|
||||
#define RX_LEN_ERR (1 << 12)
|
||||
#define RX_RCV_OK (1 << 13)
|
||||
#define RX_TYP_LEN (1 << 15)
|
||||
|
||||
/* Transmit status bits */
|
||||
|
||||
#define TX_NCOL_MASK 0x0f
|
||||
#define TX_FRTL (1 << 4)
|
||||
#define TX_MAX_COL (1 << 5)
|
||||
#define TX_HRT_BEAT (1 << 6)
|
||||
#define TX_DEFER (1 << 7)
|
||||
#define TX_UND_RUN (1 << 8)
|
||||
#define TX_LOST_CTS (1 << 9)
|
||||
#define TX_LOST_CRS (1 << 10)
|
||||
#define TX_LTCOL (1 << 11)
|
||||
#define TX_OK (1 << 13)
|
||||
#define TX_COLL (1 << 15)
|
||||
|
||||
struct i82593_conf_block {
|
||||
u_char fifo_limit : 4,
|
||||
forgnesi : 1,
|
||||
fifo_32 : 1,
|
||||
d6mod : 1,
|
||||
throttle_enb : 1;
|
||||
u_char throttle : 6,
|
||||
cntrxint : 1,
|
||||
contin : 1;
|
||||
u_char addr_len : 3,
|
||||
acloc : 1,
|
||||
preamb_len : 2,
|
||||
loopback : 2;
|
||||
u_char lin_prio : 3,
|
||||
tbofstop : 1,
|
||||
exp_prio : 3,
|
||||
bof_met : 1;
|
||||
u_char : 4,
|
||||
ifrm_spc : 4;
|
||||
u_char : 5,
|
||||
slottim_low : 3;
|
||||
u_char slottim_hi : 3,
|
||||
: 1,
|
||||
max_retr : 4;
|
||||
u_char prmisc : 1,
|
||||
bc_dis : 1,
|
||||
: 1,
|
||||
crs_1 : 1,
|
||||
nocrc_ins : 1,
|
||||
crc_1632 : 1,
|
||||
: 1,
|
||||
crs_cdt : 1;
|
||||
u_char cs_filter : 3,
|
||||
crs_src : 1,
|
||||
cd_filter : 3,
|
||||
: 1;
|
||||
u_char : 2,
|
||||
min_fr_len : 6;
|
||||
u_char lng_typ : 1,
|
||||
lng_fld : 1,
|
||||
rxcrc_xf : 1,
|
||||
artx : 1,
|
||||
sarec : 1,
|
||||
tx_jabber : 1, /* why is this called max_len in the manual? */
|
||||
hash_1 : 1,
|
||||
lbpkpol : 1;
|
||||
u_char : 6,
|
||||
fdx : 1,
|
||||
: 1;
|
||||
u_char dummy_6 : 6, /* supposed to be ones */
|
||||
mult_ia : 1,
|
||||
dis_bof : 1;
|
||||
u_char dummy_1 : 1, /* supposed to be one */
|
||||
tx_ifs_retrig : 2,
|
||||
mc_all : 1,
|
||||
rcv_mon : 2,
|
||||
frag_acpt : 1,
|
||||
tstrttrs : 1;
|
||||
u_char fretx : 1,
|
||||
runt_eop : 1,
|
||||
hw_sw_pin : 1,
|
||||
big_endn : 1,
|
||||
syncrqs : 1,
|
||||
sttlen : 1,
|
||||
tx_eop : 1,
|
||||
rx_eop : 1;
|
||||
u_char rbuf_size : 5,
|
||||
rcvstop : 1,
|
||||
: 2;
|
||||
};
|
||||
|
||||
#define I82593_MAX_MULTICAST_ADDRESSES 128 /* Hardware hashed filter */
|
||||
|
||||
#endif /* _I82593_H */
|
||||
|
|
@ -115,7 +115,7 @@
|
|||
#define IEEE80211_MAX_SSID_LEN 32
|
||||
|
||||
#define IEEE80211_MAX_MESH_ID_LEN 32
|
||||
#define IEEE80211_MESH_CONFIG_LEN 24
|
||||
#define IEEE80211_MESH_CONFIG_LEN 7
|
||||
|
||||
#define IEEE80211_QOS_CTL_LEN 2
|
||||
#define IEEE80211_QOS_CTL_TID_MASK 0x000F
|
||||
|
|
@ -554,6 +554,20 @@ struct ieee80211_tim_ie {
|
|||
u8 virtual_map[1];
|
||||
} __attribute__ ((packed));
|
||||
|
||||
/**
|
||||
* struct ieee80211_rann_ie
|
||||
*
|
||||
* This structure refers to "Root Announcement information element"
|
||||
*/
|
||||
struct ieee80211_rann_ie {
|
||||
u8 rann_flags;
|
||||
u8 rann_hopcount;
|
||||
u8 rann_ttl;
|
||||
u8 rann_addr[6];
|
||||
u32 rann_seq;
|
||||
u32 rann_metric;
|
||||
} __attribute__ ((packed));
|
||||
|
||||
#define WLAN_SA_QUERY_TR_ID_LEN 2
|
||||
|
||||
struct ieee80211_mgmt {
|
||||
|
|
@ -1070,6 +1084,7 @@ enum ieee80211_eid {
|
|||
WLAN_EID_PREQ = 68,
|
||||
WLAN_EID_PREP = 69,
|
||||
WLAN_EID_PERR = 70,
|
||||
WLAN_EID_RANN = 49, /* compatible with FreeBSD */
|
||||
/* 802.11h */
|
||||
WLAN_EID_PWR_CONSTRAINT = 32,
|
||||
WLAN_EID_PWR_CAPABILITY = 33,
|
||||
|
|
|
|||
|
|
@ -160,6 +160,11 @@
|
|||
* @NL80211_CMD_SCAN_ABORTED: scan was aborted, for unspecified reasons,
|
||||
* partial scan results may be available
|
||||
*
|
||||
* @NL80211_CMD_GET_SURVEY: get survey resuls, e.g. channel occupation
|
||||
* or noise level
|
||||
* @NL80211_CMD_NEW_SURVEY_RESULTS: survey data notification (as a reply to
|
||||
* NL80211_CMD_GET_SURVEY and on the "scan" multicast group)
|
||||
*
|
||||
* @NL80211_CMD_REG_CHANGE: indicates to userspace the regulatory domain
|
||||
* has been changed and provides details of the request information
|
||||
* that caused the change such as who initiated the regulatory request
|
||||
|
|
@ -341,6 +346,9 @@ enum nl80211_commands {
|
|||
|
||||
NL80211_CMD_SET_WIPHY_NETNS,
|
||||
|
||||
NL80211_CMD_GET_SURVEY,
|
||||
NL80211_CMD_NEW_SURVEY_RESULTS,
|
||||
|
||||
/* add new commands above here */
|
||||
|
||||
/* used to define NL80211_CMD_MAX below */
|
||||
|
|
@ -584,6 +592,12 @@ enum nl80211_commands {
|
|||
* changed then the list changed and the dump should be repeated
|
||||
* completely from scratch.
|
||||
*
|
||||
* @NL80211_ATTR_4ADDR: Use 4-address frames on a virtual interface
|
||||
*
|
||||
* @NL80211_ATTR_SURVEY_INFO: survey information about a channel, part of
|
||||
* the survey response for %NL80211_CMD_GET_SURVEY, nested attribute
|
||||
* containing info as possible, see &enum survey_info.
|
||||
*
|
||||
* @NL80211_ATTR_MAX: highest attribute number currently defined
|
||||
* @__NL80211_ATTR_AFTER_LAST: internal use
|
||||
*/
|
||||
|
|
@ -714,6 +728,10 @@ enum nl80211_attrs {
|
|||
|
||||
NL80211_ATTR_PID,
|
||||
|
||||
NL80211_ATTR_4ADDR,
|
||||
|
||||
NL80211_ATTR_SURVEY_INFO,
|
||||
|
||||
/* add attributes here, update the policy in nl80211.c */
|
||||
|
||||
__NL80211_ATTR_AFTER_LAST,
|
||||
|
|
@ -895,14 +913,14 @@ enum nl80211_sta_info {
|
|||
*
|
||||
* @NL80211_MPATH_FLAG_ACTIVE: the mesh path is active
|
||||
* @NL80211_MPATH_FLAG_RESOLVING: the mesh path discovery process is running
|
||||
* @NL80211_MPATH_FLAG_DSN_VALID: the mesh path contains a valid DSN
|
||||
* @NL80211_MPATH_FLAG_SN_VALID: the mesh path contains a valid SN
|
||||
* @NL80211_MPATH_FLAG_FIXED: the mesh path has been manually set
|
||||
* @NL80211_MPATH_FLAG_RESOLVED: the mesh path discovery process succeeded
|
||||
*/
|
||||
enum nl80211_mpath_flags {
|
||||
NL80211_MPATH_FLAG_ACTIVE = 1<<0,
|
||||
NL80211_MPATH_FLAG_RESOLVING = 1<<1,
|
||||
NL80211_MPATH_FLAG_DSN_VALID = 1<<2,
|
||||
NL80211_MPATH_FLAG_SN_VALID = 1<<2,
|
||||
NL80211_MPATH_FLAG_FIXED = 1<<3,
|
||||
NL80211_MPATH_FLAG_RESOLVED = 1<<4,
|
||||
};
|
||||
|
|
@ -915,7 +933,7 @@ enum nl80211_mpath_flags {
|
|||
*
|
||||
* @__NL80211_MPATH_INFO_INVALID: attribute number 0 is reserved
|
||||
* @NL80211_ATTR_MPATH_FRAME_QLEN: number of queued frames for this destination
|
||||
* @NL80211_ATTR_MPATH_DSN: destination sequence number
|
||||
* @NL80211_ATTR_MPATH_SN: destination sequence number
|
||||
* @NL80211_ATTR_MPATH_METRIC: metric (cost) of this mesh path
|
||||
* @NL80211_ATTR_MPATH_EXPTIME: expiration time for the path, in msec from now
|
||||
* @NL80211_ATTR_MPATH_FLAGS: mesh path flags, enumerated in
|
||||
|
|
@ -926,7 +944,7 @@ enum nl80211_mpath_flags {
|
|||
enum nl80211_mpath_info {
|
||||
__NL80211_MPATH_INFO_INVALID,
|
||||
NL80211_MPATH_INFO_FRAME_QLEN,
|
||||
NL80211_MPATH_INFO_DSN,
|
||||
NL80211_MPATH_INFO_SN,
|
||||
NL80211_MPATH_INFO_METRIC,
|
||||
NL80211_MPATH_INFO_EXPTIME,
|
||||
NL80211_MPATH_INFO_FLAGS,
|
||||
|
|
@ -1116,6 +1134,26 @@ enum nl80211_reg_rule_flags {
|
|||
NL80211_RRF_NO_IBSS = 1<<8,
|
||||
};
|
||||
|
||||
/**
|
||||
* enum nl80211_survey_info - survey information
|
||||
*
|
||||
* These attribute types are used with %NL80211_ATTR_SURVEY_INFO
|
||||
* when getting information about a survey.
|
||||
*
|
||||
* @__NL80211_SURVEY_INFO_INVALID: attribute number 0 is reserved
|
||||
* @NL80211_SURVEY_INFO_FREQUENCY: center frequency of channel
|
||||
* @NL80211_SURVEY_INFO_NOISE: noise level of channel (u8, dBm)
|
||||
*/
|
||||
enum nl80211_survey_info {
|
||||
__NL80211_SURVEY_INFO_INVALID,
|
||||
NL80211_SURVEY_INFO_FREQUENCY,
|
||||
NL80211_SURVEY_INFO_NOISE,
|
||||
|
||||
/* keep last */
|
||||
__NL80211_SURVEY_INFO_AFTER_LAST,
|
||||
NL80211_SURVEY_INFO_MAX = __NL80211_SURVEY_INFO_AFTER_LAST - 1
|
||||
};
|
||||
|
||||
/**
|
||||
* enum nl80211_mntr_flags - monitor configuration flags
|
||||
*
|
||||
|
|
@ -1196,6 +1234,8 @@ enum nl80211_mntr_flags {
|
|||
* @NL80211_MESHCONF_HWMP_NET_DIAM_TRVS_TIME: The interval of time (in TUs)
|
||||
* that it takes for an HWMP information element to propagate across the mesh
|
||||
*
|
||||
* @NL80211_MESHCONF_ROOTMODE: whether root mode is enabled or not
|
||||
*
|
||||
* @NL80211_MESHCONF_ATTR_MAX: highest possible mesh configuration attribute
|
||||
*
|
||||
* @__NL80211_MESHCONF_ATTR_AFTER_LAST: internal use
|
||||
|
|
@ -1215,6 +1255,7 @@ enum nl80211_meshconf_params {
|
|||
NL80211_MESHCONF_HWMP_ACTIVE_PATH_TIMEOUT,
|
||||
NL80211_MESHCONF_HWMP_PREQ_MIN_INTERVAL,
|
||||
NL80211_MESHCONF_HWMP_NET_DIAM_TRVS_TIME,
|
||||
NL80211_MESHCONF_HWMP_ROOTMODE,
|
||||
|
||||
/* keep last */
|
||||
__NL80211_MESHCONF_ATTR_AFTER_LAST,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue