Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
linux-davinci
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
linux
linux-davinci
Commits
44dc19c8
Commit
44dc19c8
authored
May 19, 2008
by
David S. Miller
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/linville/wireless-2.6
parents
0686caa3
229ce3ab
Changes
7
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
73 additions
and
18 deletions
+73
-18
drivers/net/wireless/airo.c
drivers/net/wireless/airo.c
+2
-1
drivers/net/wireless/hostap/hostap_hw.c
drivers/net/wireless/hostap/hostap_hw.c
+4
-5
drivers/net/wireless/ipw2200.c
drivers/net/wireless/ipw2200.c
+1
-0
drivers/net/wireless/libertas/main.c
drivers/net/wireless/libertas/main.c
+2
-0
include/net/mac80211.h
include/net/mac80211.h
+23
-2
net/mac80211/mlme.c
net/mac80211/mlme.c
+5
-9
net/mac80211/util.c
net/mac80211/util.c
+36
-1
No files found.
drivers/net/wireless/airo.c
View file @
44dc19c8
...
...
@@ -2668,6 +2668,7 @@ static struct net_device *init_wifidev(struct airo_info *ai,
dev
->
irq
=
ethdev
->
irq
;
dev
->
base_addr
=
ethdev
->
base_addr
;
dev
->
wireless_data
=
ethdev
->
wireless_data
;
SET_NETDEV_DEV
(
dev
,
ethdev
->
dev
.
parent
);
memcpy
(
dev
->
dev_addr
,
ethdev
->
dev_addr
,
dev
->
addr_len
);
err
=
register_netdev
(
dev
);
if
(
err
<
0
)
{
...
...
@@ -2904,7 +2905,7 @@ EXPORT_SYMBOL(init_airo_card);
static
int
waitbusy
(
struct
airo_info
*
ai
)
{
int
delay
=
0
;
while
((
IN4500
(
ai
,
COMMAND
)
&
COMMAND_BUSY
)
&
(
delay
<
10000
))
{
while
((
IN4500
(
ai
,
COMMAND
)
&
COMMAND_BUSY
)
&
&
(
delay
<
10000
))
{
udelay
(
10
);
if
((
++
delay
%
20
)
==
0
)
OUT4500
(
ai
,
EVACK
,
EV_CLEARCOMMANDBUSY
);
...
...
drivers/net/wireless/hostap/hostap_hw.c
View file @
44dc19c8
...
...
@@ -3276,11 +3276,6 @@ while (0)
}
printk
(
KERN_INFO
"%s: Registered netdevice %s
\n
"
,
dev_info
,
dev
->
name
);
#ifndef PRISM2_NO_PROCFS_DEBUG
create_proc_read_entry
(
"registers"
,
0
,
local
->
proc
,
prism2_registers_proc_read
,
local
);
#endif
/* PRISM2_NO_PROCFS_DEBUG */
hostap_init_data
(
local
);
return
dev
;
...
...
@@ -3307,6 +3302,10 @@ static int hostap_hw_ready(struct net_device *dev)
netif_carrier_off
(
local
->
ddev
);
}
hostap_init_proc
(
local
);
#ifndef PRISM2_NO_PROCFS_DEBUG
create_proc_read_entry
(
"registers"
,
0
,
local
->
proc
,
prism2_registers_proc_read
,
local
);
#endif
/* PRISM2_NO_PROCFS_DEBUG */
hostap_init_ap_proc
(
local
);
return
0
;
}
...
...
drivers/net/wireless/ipw2200.c
View file @
44dc19c8
...
...
@@ -11584,6 +11584,7 @@ static int ipw_prom_alloc(struct ipw_priv *priv)
priv
->
prom_net_dev
->
hard_start_xmit
=
ipw_prom_hard_start_xmit
;
priv
->
prom_priv
->
ieee
->
iw_mode
=
IW_MODE_MONITOR
;
SET_NETDEV_DEV
(
priv
->
prom_net_dev
,
&
priv
->
pci_dev
->
dev
);
rc
=
register_netdev
(
priv
->
prom_net_dev
);
if
(
rc
)
{
...
...
drivers/net/wireless/libertas/main.c
View file @
44dc19c8
...
...
@@ -756,6 +756,7 @@ static int lbs_thread(void *data)
priv
->
nr_retries
=
0
;
}
else
{
priv
->
cur_cmd
=
NULL
;
priv
->
dnld_sent
=
DNLD_RES_RECEIVED
;
lbs_pr_info
(
"requeueing command %x due to timeout (#%d)
\n
"
,
le16_to_cpu
(
cmdnode
->
cmdbuf
->
command
),
priv
->
nr_retries
);
...
...
@@ -1564,6 +1565,7 @@ static int lbs_add_rtap(struct lbs_private *priv)
rtap_dev
->
hard_start_xmit
=
lbs_rtap_hard_start_xmit
;
rtap_dev
->
set_multicast_list
=
lbs_set_multicast_list
;
rtap_dev
->
priv
=
priv
;
SET_NETDEV_DEV
(
rtap_dev
,
priv
->
dev
->
dev
.
parent
);
ret
=
register_netdev
(
rtap_dev
);
if
(
ret
)
{
...
...
include/net/mac80211.h
View file @
44dc19c8
...
...
@@ -1594,13 +1594,16 @@ void ieee80211_wake_queues(struct ieee80211_hw *hw);
void
ieee80211_scan_completed
(
struct
ieee80211_hw
*
hw
);
/**
* ieee80211_iterate_active_interfaces
- iterate active interfaces
* ieee80211_iterate_active_interfaces- iterate active interfaces
*
* This function iterates over the interfaces associated with a given
* hardware that are currently active and calls the callback for them.
* This function allows the iterator function to sleep, when the iterator
* function is atomic @ieee80211_iterate_active_interfaces_atomic can
* be used.
*
* @hw: the hardware struct of which the interfaces should be iterated over
* @iterator: the iterator function to call
, cannot sleep
* @iterator: the iterator function to call
* @data: first argument of the iterator function
*/
void
ieee80211_iterate_active_interfaces
(
struct
ieee80211_hw
*
hw
,
...
...
@@ -1608,6 +1611,24 @@ void ieee80211_iterate_active_interfaces(struct ieee80211_hw *hw,
struct
ieee80211_vif
*
vif
),
void
*
data
);
/**
* ieee80211_iterate_active_interfaces_atomic - iterate active interfaces
*
* This function iterates over the interfaces associated with a given
* hardware that are currently active and calls the callback for them.
* This function requires the iterator callback function to be atomic,
* if that is not desired, use @ieee80211_iterate_active_interfaces instead.
*
* @hw: the hardware struct of which the interfaces should be iterated over
* @iterator: the iterator function to call, cannot sleep
* @data: first argument of the iterator function
*/
void
ieee80211_iterate_active_interfaces_atomic
(
struct
ieee80211_hw
*
hw
,
void
(
*
iterator
)(
void
*
data
,
u8
*
mac
,
struct
ieee80211_vif
*
vif
),
void
*
data
);
/**
* ieee80211_start_tx_ba_session - Start a tx Block Ack session.
* @hw: pointer as obtained from ieee80211_alloc_hw().
...
...
net/mac80211/mlme.c
View file @
44dc19c8
...
...
@@ -3446,21 +3446,17 @@ static int ieee80211_sta_config_auth(struct net_device *dev,
struct
ieee80211_sta_bss
*
bss
,
*
selected
=
NULL
;
int
top_rssi
=
0
,
freq
;
if
(
!
(
ifsta
->
flags
&
(
IEEE80211_STA_AUTO_SSID_SEL
|
IEEE80211_STA_AUTO_BSSID_SEL
|
IEEE80211_STA_AUTO_CHANNEL_SEL
)))
{
ifsta
->
state
=
IEEE80211_AUTHENTICATE
;
ieee80211_sta_reset_auth
(
dev
,
ifsta
);
return
0
;
}
spin_lock_bh
(
&
local
->
sta_bss_lock
);
freq
=
local
->
oper_channel
->
center_freq
;
list_for_each_entry
(
bss
,
&
local
->
sta_bss_list
,
list
)
{
if
(
!
(
bss
->
capability
&
WLAN_CAPABILITY_ESS
))
continue
;
if
(
!!
(
bss
->
capability
&
WLAN_CAPABILITY_PRIVACY
)
^
!!
sdata
->
default_key
)
if
((
ifsta
->
flags
&
(
IEEE80211_STA_AUTO_SSID_SEL
|
IEEE80211_STA_AUTO_BSSID_SEL
|
IEEE80211_STA_AUTO_CHANNEL_SEL
))
&&
(
!!
(
bss
->
capability
&
WLAN_CAPABILITY_PRIVACY
)
^
!!
sdata
->
default_key
))
continue
;
if
(
!
(
ifsta
->
flags
&
IEEE80211_STA_AUTO_CHANNEL_SEL
)
&&
...
...
net/mac80211/util.c
View file @
44dc19c8
...
...
@@ -389,6 +389,41 @@ void ieee80211_iterate_active_interfaces(
struct
ieee80211_local
*
local
=
hw_to_local
(
hw
);
struct
ieee80211_sub_if_data
*
sdata
;
rtnl_lock
();
list_for_each_entry
(
sdata
,
&
local
->
interfaces
,
list
)
{
switch
(
sdata
->
vif
.
type
)
{
case
IEEE80211_IF_TYPE_INVALID
:
case
IEEE80211_IF_TYPE_MNTR
:
case
IEEE80211_IF_TYPE_VLAN
:
continue
;
case
IEEE80211_IF_TYPE_AP
:
case
IEEE80211_IF_TYPE_STA
:
case
IEEE80211_IF_TYPE_IBSS
:
case
IEEE80211_IF_TYPE_WDS
:
case
IEEE80211_IF_TYPE_MESH_POINT
:
break
;
}
if
(
sdata
->
dev
==
local
->
mdev
)
continue
;
if
(
netif_running
(
sdata
->
dev
))
iterator
(
data
,
sdata
->
dev
->
dev_addr
,
&
sdata
->
vif
);
}
rtnl_unlock
();
}
EXPORT_SYMBOL_GPL
(
ieee80211_iterate_active_interfaces
);
void
ieee80211_iterate_active_interfaces_atomic
(
struct
ieee80211_hw
*
hw
,
void
(
*
iterator
)(
void
*
data
,
u8
*
mac
,
struct
ieee80211_vif
*
vif
),
void
*
data
)
{
struct
ieee80211_local
*
local
=
hw_to_local
(
hw
);
struct
ieee80211_sub_if_data
*
sdata
;
rcu_read_lock
();
list_for_each_entry_rcu
(
sdata
,
&
local
->
interfaces
,
list
)
{
...
...
@@ -413,4 +448,4 @@ void ieee80211_iterate_active_interfaces(
rcu_read_unlock
();
}
EXPORT_SYMBOL_GPL
(
ieee80211_iterate_active_interfaces
);
EXPORT_SYMBOL_GPL
(
ieee80211_iterate_active_interfaces
_atomic
);
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment