Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
linux
Commits
d2daeabf
Commit
d2daeabf
authored
Jul 08, 2009
by
David S. Miller
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6
parents
c3b85423
1ce822fa
Changes
19
Hide whitespace changes
Inline
Side-by-side
Showing
19 changed files
with
48 additions
and
17 deletions
+48
-17
Documentation/DocBook/mac80211.tmpl
Documentation/DocBook/mac80211.tmpl
+0
-2
drivers/net/wireless/ath/Kconfig
drivers/net/wireless/ath/Kconfig
+1
-0
drivers/net/wireless/ath/ath9k/xmit.c
drivers/net/wireless/ath/ath9k/xmit.c
+8
-1
drivers/net/wireless/b43/b43.h
drivers/net/wireless/b43/b43.h
+1
-0
drivers/net/wireless/b43/main.c
drivers/net/wireless/b43/main.c
+5
-2
drivers/net/wireless/b43/pcmcia.c
drivers/net/wireless/b43/pcmcia.c
+1
-0
drivers/net/wireless/b43legacy/b43legacy.h
drivers/net/wireless/b43legacy/b43legacy.h
+1
-0
drivers/net/wireless/b43legacy/main.c
drivers/net/wireless/b43legacy/main.c
+5
-2
drivers/net/wireless/iwmc3200wifi/Kconfig
drivers/net/wireless/iwmc3200wifi/Kconfig
+9
-0
drivers/net/wireless/mac80211_hwsim.c
drivers/net/wireless/mac80211_hwsim.c
+1
-0
drivers/net/wireless/p54/p54common.c
drivers/net/wireless/p54/p54common.c
+3
-2
drivers/net/wireless/zd1211rw/zd_usb.c
drivers/net/wireless/zd1211rw/zd_usb.c
+2
-1
drivers/platform/x86/hp-wmi.c
drivers/platform/x86/hp-wmi.c
+1
-1
drivers/ssb/pcmcia.c
drivers/ssb/pcmcia.c
+4
-2
include/linux/rfkill.h
include/linux/rfkill.h
+0
-1
net/mac80211/mesh_hwmp.c
net/mac80211/mesh_hwmp.c
+1
-1
net/mac80211/rc80211_minstrel.c
net/mac80211/rc80211_minstrel.c
+4
-1
net/wireless/nl80211.c
net/wireless/nl80211.c
+1
-0
net/wireless/scan.c
net/wireless/scan.c
+0
-1
No files found.
Documentation/DocBook/mac80211.tmpl
View file @
d2daeabf
...
...
@@ -184,8 +184,6 @@ usage should require reading the full document.
!Finclude/net/mac80211.h ieee80211_ctstoself_get
!Finclude/net/mac80211.h ieee80211_ctstoself_duration
!Finclude/net/mac80211.h ieee80211_generic_frame_duration
!Finclude/net/mac80211.h ieee80211_get_hdrlen_from_skb
!Finclude/net/mac80211.h ieee80211_hdrlen
!Finclude/net/mac80211.h ieee80211_wake_queue
!Finclude/net/mac80211.h ieee80211_stop_queue
!Finclude/net/mac80211.h ieee80211_wake_queues
...
...
drivers/net/wireless/ath/Kconfig
View file @
d2daeabf
config ATH_COMMON
tristate "Atheros Wireless Cards"
depends on WLAN_80211
depends on ATH5K || ATH9K || AR9170_USB
source "drivers/net/wireless/ath/ath5k/Kconfig"
...
...
drivers/net/wireless/ath/ath9k/xmit.c
View file @
d2daeabf
...
...
@@ -355,7 +355,14 @@ static void ath_tx_complete_aggr(struct ath_softc *sc, struct ath_txq *txq,
}
if
(
bf_next
==
NULL
)
{
INIT_LIST_HEAD
(
&
bf_head
);
/*
* Make sure the last desc is reclaimed if it
* not a holding desc.
*/
if
(
!
bf_last
->
bf_stale
)
list_move_tail
(
&
bf
->
list
,
&
bf_head
);
else
INIT_LIST_HEAD
(
&
bf_head
);
}
else
{
ASSERT
(
!
list_empty
(
bf_q
));
list_move_tail
(
&
bf
->
list
,
&
bf_head
);
...
...
drivers/net/wireless/b43/b43.h
View file @
d2daeabf
...
...
@@ -648,6 +648,7 @@ struct b43_wl {
u8
nr_devs
;
bool
radiotap_enabled
;
bool
radio_enabled
;
/* The beacon we are currently using (AP or IBSS mode).
* This beacon stuff is protected by the irq_lock. */
...
...
drivers/net/wireless/b43/main.c
View file @
d2daeabf
...
...
@@ -3497,8 +3497,8 @@ static int b43_op_config(struct ieee80211_hw *hw, u32 changed)
if
(
phy
->
ops
->
set_rx_antenna
)
phy
->
ops
->
set_rx_antenna
(
dev
,
antenna
);
if
(
!!
conf
->
radio_enabled
!=
phy
->
radio_on
)
{
if
(
conf
->
radio_enabled
)
{
if
(
wl
->
radio_enabled
!=
phy
->
radio_on
)
{
if
(
wl
->
radio_enabled
)
{
b43_software_rfkill
(
dev
,
false
);
b43info
(
dev
->
wl
,
"Radio turned on by software
\n
"
);
if
(
!
dev
->
radio_hw_enable
)
{
...
...
@@ -4339,6 +4339,7 @@ static int b43_op_start(struct ieee80211_hw *hw)
wl
->
beacon0_uploaded
=
0
;
wl
->
beacon1_uploaded
=
0
;
wl
->
beacon_templates_virgin
=
1
;
wl
->
radio_enabled
=
1
;
mutex_lock
(
&
wl
->
mutex
);
...
...
@@ -4378,6 +4379,7 @@ static void b43_op_stop(struct ieee80211_hw *hw)
if
(
b43_status
(
dev
)
>=
B43_STAT_STARTED
)
b43_wireless_core_stop
(
dev
);
b43_wireless_core_exit
(
dev
);
wl
->
radio_enabled
=
0
;
mutex_unlock
(
&
wl
->
mutex
);
cancel_work_sync
(
&
(
wl
->
txpower_adjust_work
));
...
...
@@ -4560,6 +4562,7 @@ static int b43_wireless_core_attach(struct b43_wldev *dev)
B43_WARN_ON
(
1
);
dev
->
phy
.
gmode
=
have_2ghz_phy
;
dev
->
phy
.
radio_on
=
1
;
tmp
=
dev
->
phy
.
gmode
?
B43_TMSLOW_GMODE
:
0
;
b43_wireless_core_reset
(
dev
,
tmp
);
...
...
drivers/net/wireless/b43/pcmcia.c
View file @
d2daeabf
...
...
@@ -35,6 +35,7 @@
static
/*const */
struct
pcmcia_device_id
b43_pcmcia_tbl
[]
=
{
PCMCIA_DEVICE_MANF_CARD
(
0x2D0
,
0x448
),
PCMCIA_DEVICE_MANF_CARD
(
0x2D0
,
0x476
),
PCMCIA_DEVICE_NULL
,
};
...
...
drivers/net/wireless/b43legacy/b43legacy.h
View file @
d2daeabf
...
...
@@ -607,6 +607,7 @@ struct b43legacy_wl {
u8
nr_devs
;
bool
radiotap_enabled
;
bool
radio_enabled
;
/* The beacon we are currently using (AP or IBSS mode).
* This beacon stuff is protected by the irq_lock. */
...
...
drivers/net/wireless/b43legacy/main.c
View file @
d2daeabf
...
...
@@ -2689,8 +2689,8 @@ static int b43legacy_op_dev_config(struct ieee80211_hw *hw,
/* Antennas for RX and management frame TX. */
b43legacy_mgmtframe_txantenna
(
dev
,
antenna_tx
);
if
(
!!
conf
->
radio_enabled
!=
phy
->
radio_on
)
{
if
(
conf
->
radio_enabled
)
{
if
(
wl
->
radio_enabled
!=
phy
->
radio_on
)
{
if
(
wl
->
radio_enabled
)
{
b43legacy_radio_turn_on
(
dev
);
b43legacyinfo
(
dev
->
wl
,
"Radio turned on by software
\n
"
);
if
(
!
dev
->
radio_hw_enable
)
...
...
@@ -3441,6 +3441,7 @@ static int b43legacy_op_start(struct ieee80211_hw *hw)
wl
->
beacon0_uploaded
=
0
;
wl
->
beacon1_uploaded
=
0
;
wl
->
beacon_templates_virgin
=
1
;
wl
->
radio_enabled
=
1
;
mutex_lock
(
&
wl
->
mutex
);
...
...
@@ -3479,6 +3480,7 @@ static void b43legacy_op_stop(struct ieee80211_hw *hw)
if
(
b43legacy_status
(
dev
)
>=
B43legacy_STAT_STARTED
)
b43legacy_wireless_core_stop
(
dev
);
b43legacy_wireless_core_exit
(
dev
);
wl
->
radio_enabled
=
0
;
mutex_unlock
(
&
wl
->
mutex
);
}
...
...
@@ -3620,6 +3622,7 @@ static int b43legacy_wireless_core_attach(struct b43legacy_wldev *dev)
have_bphy
=
1
;
dev
->
phy
.
gmode
=
(
have_gphy
||
have_bphy
);
dev
->
phy
.
radio_on
=
1
;
tmp
=
dev
->
phy
.
gmode
?
B43legacy_TMSLOW_GMODE
:
0
;
b43legacy_wireless_core_reset
(
dev
,
tmp
);
...
...
drivers/net/wireless/iwmc3200wifi/Kconfig
View file @
d2daeabf
...
...
@@ -4,6 +4,15 @@ config IWM
depends on CFG80211
select WIRELESS_EXT
select FW_LOADER
help
The Intel Wireless Multicomm 3200 hardware is a combo
card with GPS, Bluetooth, WiMax and 802.11 radios. It
runs over SDIO and is typically found on Moorestown
based platform. This driver takes care of the 802.11
part, which is a fullmac one.
If you choose to build it as a module, it'll be called
iwmc3200wifi.ko.
config IWM_DEBUG
bool "Enable full debugging output in iwmc3200wifi"
...
...
drivers/net/wireless/mac80211_hwsim.c
View file @
d2daeabf
...
...
@@ -418,6 +418,7 @@ static bool mac80211_hwsim_tx_frame(struct ieee80211_hw *hw,
continue
;
if
(
!
data2
->
started
||
!
hwsim_ps_rx_ok
(
data2
,
skb
)
||
!
data
->
channel
||
!
data2
->
channel
||
data
->
channel
->
center_freq
!=
data2
->
channel
->
center_freq
||
!
(
data
->
group
&
data2
->
group
))
continue
;
...
...
drivers/net/wireless/p54/p54common.c
View file @
d2daeabf
...
...
@@ -912,13 +912,14 @@ static void p54_rx_frame_sent(struct ieee80211_hw *dev, struct sk_buff *skb)
}
__skb_unlink
(
entry
,
&
priv
->
tx_queue
);
spin_unlock_irqrestore
(
&
priv
->
tx_queue
.
lock
,
flags
);
frame_len
=
entry
->
len
;
entry_hdr
=
(
struct
p54_hdr
*
)
entry
->
data
;
entry_data
=
(
struct
p54_tx_data
*
)
entry_hdr
->
data
;
priv
->
tx_stats
[
entry_data
->
hw_queue
].
len
--
;
if
(
priv
->
tx_stats
[
entry_data
->
hw_queue
].
len
)
priv
->
tx_stats
[
entry_data
->
hw_queue
].
len
--
;
priv
->
stats
.
dot11ACKFailureCount
+=
payload
->
tries
-
1
;
spin_unlock_irqrestore
(
&
priv
->
tx_queue
.
lock
,
flags
);
/*
* Frames in P54_QUEUE_FWSCAN and P54_QUEUE_BEACON are
...
...
drivers/net/wireless/zd1211rw/zd_usb.c
View file @
d2daeabf
...
...
@@ -38,7 +38,6 @@ static struct usb_device_id usb_ids[] = {
/* ZD1211 */
{
USB_DEVICE
(
0x0ace
,
0x1211
),
.
driver_info
=
DEVICE_ZD1211
},
{
USB_DEVICE
(
0x0ace
,
0xa211
),
.
driver_info
=
DEVICE_ZD1211
},
{
USB_DEVICE
(
0x07b8
,
0x6001
),
.
driver_info
=
DEVICE_ZD1211
},
{
USB_DEVICE
(
0x126f
,
0xa006
),
.
driver_info
=
DEVICE_ZD1211
},
{
USB_DEVICE
(
0x6891
,
0xa727
),
.
driver_info
=
DEVICE_ZD1211
},
{
USB_DEVICE
(
0x0df6
,
0x9071
),
.
driver_info
=
DEVICE_ZD1211
},
...
...
@@ -61,6 +60,7 @@ static struct usb_device_id usb_ids[] = {
{
USB_DEVICE
(
0x157e
,
0x300a
),
.
driver_info
=
DEVICE_ZD1211
},
{
USB_DEVICE
(
0x0105
,
0x145f
),
.
driver_info
=
DEVICE_ZD1211
},
/* ZD1211B */
{
USB_DEVICE
(
0x054c
,
0x0257
),
.
driver_info
=
DEVICE_ZD1211B
},
{
USB_DEVICE
(
0x0ace
,
0x1215
),
.
driver_info
=
DEVICE_ZD1211B
},
{
USB_DEVICE
(
0x0ace
,
0xb215
),
.
driver_info
=
DEVICE_ZD1211B
},
{
USB_DEVICE
(
0x157e
,
0x300d
),
.
driver_info
=
DEVICE_ZD1211B
},
...
...
@@ -87,6 +87,7 @@ static struct usb_device_id usb_ids[] = {
{
USB_DEVICE
(
0x0471
,
0x1237
),
.
driver_info
=
DEVICE_ZD1211B
},
{
USB_DEVICE
(
0x07fa
,
0x1196
),
.
driver_info
=
DEVICE_ZD1211B
},
{
USB_DEVICE
(
0x0df6
,
0x0036
),
.
driver_info
=
DEVICE_ZD1211B
},
{
USB_DEVICE
(
0x07b8
,
0x6001
),
.
driver_info
=
DEVICE_ZD1211B
},
/* "Driverless" devices that need ejecting */
{
USB_DEVICE
(
0x0ace
,
0x2011
),
.
driver_info
=
DEVICE_INSTALLER
},
{
USB_DEVICE
(
0x0ace
,
0x20ff
),
.
driver_info
=
DEVICE_INSTALLER
},
...
...
drivers/platform/x86/hp-wmi.c
View file @
d2daeabf
...
...
@@ -171,7 +171,7 @@ static int hp_wmi_tablet_state(void)
static
int
hp_wmi_set_block
(
void
*
data
,
bool
blocked
)
{
unsigned
long
b
=
(
unsigned
long
)
data
;
int
query
=
BIT
(
b
+
8
)
|
((
!
!
blocked
)
<<
b
);
int
query
=
BIT
(
b
+
8
)
|
((
!
blocked
)
<<
b
);
return
hp_wmi_perform_query
(
HPWMI_WIRELESS_QUERY
,
1
,
query
);
}
...
...
drivers/ssb/pcmcia.c
View file @
d2daeabf
...
...
@@ -678,7 +678,8 @@ int ssb_pcmcia_get_invariants(struct ssb_bus *bus,
sprom
->
board_rev
=
tuple
.
TupleData
[
1
];
break
;
case
SSB_PCMCIA_CIS_PA
:
GOTO_ERROR_ON
(
tuple
.
TupleDataLen
!=
9
,
GOTO_ERROR_ON
((
tuple
.
TupleDataLen
!=
9
)
&&
(
tuple
.
TupleDataLen
!=
10
),
"pa tpl size"
);
sprom
->
pa0b0
=
tuple
.
TupleData
[
1
]
|
((
u16
)
tuple
.
TupleData
[
2
]
<<
8
);
...
...
@@ -718,7 +719,8 @@ int ssb_pcmcia_get_invariants(struct ssb_bus *bus,
sprom
->
antenna_gain
.
ghz5
.
a3
=
tuple
.
TupleData
[
1
];
break
;
case
SSB_PCMCIA_CIS_BFLAGS
:
GOTO_ERROR_ON
(
tuple
.
TupleDataLen
!=
3
,
GOTO_ERROR_ON
((
tuple
.
TupleDataLen
!=
3
)
&&
(
tuple
.
TupleDataLen
!=
5
),
"bfl tpl size"
);
sprom
->
boardflags_lo
=
tuple
.
TupleData
[
1
]
|
((
u16
)
tuple
.
TupleData
[
2
]
<<
8
);
...
...
include/linux/rfkill.h
View file @
d2daeabf
...
...
@@ -99,7 +99,6 @@ enum rfkill_user_states {
#undef RFKILL_STATE_UNBLOCKED
#undef RFKILL_STATE_HARD_BLOCKED
#include <linux/types.h>
#include <linux/kernel.h>
#include <linux/list.h>
#include <linux/mutex.h>
...
...
net/mac80211/mesh_hwmp.c
View file @
d2daeabf
...
...
@@ -637,7 +637,7 @@ static void mesh_queue_preq(struct mesh_path *mpath, u8 flags)
struct
ieee80211_if_mesh
*
ifmsh
=
&
sdata
->
u
.
mesh
;
struct
mesh_preq_queue
*
preq_node
;
preq_node
=
kmalloc
(
sizeof
(
struct
mesh_preq_queue
),
GFP_
KERNEL
);
preq_node
=
kmalloc
(
sizeof
(
struct
mesh_preq_queue
),
GFP_
ATOMIC
);
if
(
!
preq_node
)
{
printk
(
KERN_DEBUG
"Mesh HWMP: could not allocate PREQ node
\n
"
);
return
;
...
...
net/mac80211/rc80211_minstrel.c
View file @
d2daeabf
...
...
@@ -66,7 +66,7 @@ rix_to_ndx(struct minstrel_sta_info *mi, int rix)
for
(
i
=
rix
;
i
>=
0
;
i
--
)
if
(
mi
->
r
[
i
].
rix
==
rix
)
break
;
WARN_ON
(
mi
->
r
[
i
].
rix
!=
rix
);
WARN_ON
(
i
<
0
);
return
i
;
}
...
...
@@ -181,6 +181,9 @@ minstrel_tx_status(void *priv, struct ieee80211_supported_band *sband,
break
;
ndx
=
rix_to_ndx
(
mi
,
ar
[
i
].
idx
);
if
(
ndx
<
0
)
continue
;
mi
->
r
[
ndx
].
attempts
+=
ar
[
i
].
count
;
if
((
i
!=
IEEE80211_TX_MAX_RATES
-
1
)
&&
(
ar
[
i
+
1
].
idx
<
0
))
...
...
net/wireless/nl80211.c
View file @
d2daeabf
...
...
@@ -447,6 +447,7 @@ static int nl80211_set_wiphy(struct sk_buff *skb, struct genl_info *info)
rdev
=
__cfg80211_drv_from_info
(
info
);
if
(
IS_ERR
(
rdev
))
{
mutex_unlock
(
&
cfg80211_mutex
);
result
=
PTR_ERR
(
rdev
);
goto
unlock
;
}
...
...
net/wireless/scan.c
View file @
d2daeabf
...
...
@@ -366,7 +366,6 @@ cfg80211_bss_update(struct cfg80211_registered_device *dev,
found
=
rb_find_bss
(
dev
,
res
);
if
(
found
)
{
kref_get
(
&
found
->
ref
);
found
->
pub
.
beacon_interval
=
res
->
pub
.
beacon_interval
;
found
->
pub
.
tsf
=
res
->
pub
.
tsf
;
found
->
pub
.
signal
=
res
->
pub
.
signal
;
...
...
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