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
71be7a36
Commit
71be7a36
authored
Jan 25, 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
a8d694c6
2fcbab04
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
29 additions
and
7 deletions
+29
-7
drivers/net/wireless/iwlwifi/iwl-3945-rs.c
drivers/net/wireless/iwlwifi/iwl-3945-rs.c
+11
-3
drivers/net/wireless/iwlwifi/iwl-agn-rs.c
drivers/net/wireless/iwlwifi/iwl-agn-rs.c
+12
-2
drivers/net/wireless/p54/p54usb.c
drivers/net/wireless/p54/p54usb.c
+5
-2
drivers/net/wireless/rtl818x/rtl8187_dev.c
drivers/net/wireless/rtl818x/rtl8187_dev.c
+1
-0
No files found.
drivers/net/wireless/iwlwifi/iwl-3945-rs.c
View file @
71be7a36
...
@@ -638,12 +638,16 @@ static void rs_get_rate(void *priv_r, struct ieee80211_sta *sta,
...
@@ -638,12 +638,16 @@ static void rs_get_rate(void *priv_r, struct ieee80211_sta *sta,
s8
scale_action
=
0
;
s8
scale_action
=
0
;
unsigned
long
flags
;
unsigned
long
flags
;
struct
ieee80211_hdr
*
hdr
=
(
struct
ieee80211_hdr
*
)
skb
->
data
;
struct
ieee80211_hdr
*
hdr
=
(
struct
ieee80211_hdr
*
)
skb
->
data
;
u16
fc
,
rate_mask
;
u16
fc
;
u16
rate_mask
=
0
;
struct
iwl3945_priv
*
priv
=
(
struct
iwl3945_priv
*
)
priv_r
;
struct
iwl3945_priv
*
priv
=
(
struct
iwl3945_priv
*
)
priv_r
;
struct
ieee80211_tx_info
*
info
=
IEEE80211_SKB_CB
(
skb
);
struct
ieee80211_tx_info
*
info
=
IEEE80211_SKB_CB
(
skb
);
IWL_DEBUG_RATE
(
"enter
\n
"
);
IWL_DEBUG_RATE
(
"enter
\n
"
);
if
(
sta
)
rate_mask
=
sta
->
supp_rates
[
sband
->
band
];
/* Send management frames and broadcast/multicast data using lowest
/* Send management frames and broadcast/multicast data using lowest
* rate. */
* rate. */
fc
=
le16_to_cpu
(
hdr
->
frame_control
);
fc
=
le16_to_cpu
(
hdr
->
frame_control
);
...
@@ -651,11 +655,15 @@ static void rs_get_rate(void *priv_r, struct ieee80211_sta *sta,
...
@@ -651,11 +655,15 @@ static void rs_get_rate(void *priv_r, struct ieee80211_sta *sta,
is_multicast_ether_addr
(
hdr
->
addr1
)
||
is_multicast_ether_addr
(
hdr
->
addr1
)
||
!
sta
||
!
priv_sta
)
{
!
sta
||
!
priv_sta
)
{
IWL_DEBUG_RATE
(
"leave: No STA priv data to update!
\n
"
);
IWL_DEBUG_RATE
(
"leave: No STA priv data to update!
\n
"
);
info
->
control
.
rates
[
0
].
idx
=
rate_lowest_index
(
sband
,
sta
);
if
(
!
rate_mask
)
info
->
control
.
rates
[
0
].
idx
=
rate_lowest_index
(
sband
,
NULL
);
else
info
->
control
.
rates
[
0
].
idx
=
rate_lowest_index
(
sband
,
sta
);
return
;
return
;
}
}
rate_mask
=
sta
->
supp_rates
[
sband
->
band
];
index
=
min
(
rs_sta
->
last_txrate_idx
&
0xffff
,
IWL_RATE_COUNT
-
1
);
index
=
min
(
rs_sta
->
last_txrate_idx
&
0xffff
,
IWL_RATE_COUNT
-
1
);
if
(
sband
->
band
==
IEEE80211_BAND_5GHZ
)
if
(
sband
->
band
==
IEEE80211_BAND_5GHZ
)
...
...
drivers/net/wireless/iwlwifi/iwl-agn-rs.c
View file @
71be7a36
...
@@ -944,6 +944,7 @@ static void rs_tx_status(void *priv_r, struct ieee80211_supported_band *sband,
...
@@ -944,6 +944,7 @@ static void rs_tx_status(void *priv_r, struct ieee80211_supported_band *sband,
}
}
/* See if there's a better rate or modulation mode to try. */
/* See if there's a better rate or modulation mode to try. */
if
(
sta
&&
sta
->
supp_rates
[
sband
->
band
])
rs_rate_scale_perform
(
priv
,
hdr
,
sta
,
lq_sta
);
rs_rate_scale_perform
(
priv
,
hdr
,
sta
,
lq_sta
);
out:
out:
return
;
return
;
...
@@ -2101,14 +2102,23 @@ static void rs_get_rate(void *priv_r, struct ieee80211_sta *sta, void *priv_sta,
...
@@ -2101,14 +2102,23 @@ static void rs_get_rate(void *priv_r, struct ieee80211_sta *sta, void *priv_sta,
struct
ieee80211_tx_info
*
info
=
IEEE80211_SKB_CB
(
skb
);
struct
ieee80211_tx_info
*
info
=
IEEE80211_SKB_CB
(
skb
);
struct
iwl_lq_sta
*
lq_sta
=
priv_sta
;
struct
iwl_lq_sta
*
lq_sta
=
priv_sta
;
int
rate_idx
;
int
rate_idx
;
u64
mask_bit
=
0
;
IWL_DEBUG_RATE_LIMIT
(
"rate scale calculate new rate for skb
\n
"
);
IWL_DEBUG_RATE_LIMIT
(
"rate scale calculate new rate for skb
\n
"
);
if
(
sta
)
mask_bit
=
sta
->
supp_rates
[
sband
->
band
];
/* Send management frames and broadcast/multicast data using lowest
/* Send management frames and broadcast/multicast data using lowest
* rate. */
* rate. */
if
(
!
ieee80211_is_data
(
hdr
->
frame_control
)
||
if
(
!
ieee80211_is_data
(
hdr
->
frame_control
)
||
is_multicast_ether_addr
(
hdr
->
addr1
)
||
!
sta
||
!
lq_sta
)
{
is_multicast_ether_addr
(
hdr
->
addr1
)
||
!
sta
||
!
lq_sta
)
{
info
->
control
.
rates
[
0
].
idx
=
rate_lowest_index
(
sband
,
sta
);
if
(
!
mask_bit
)
info
->
control
.
rates
[
0
].
idx
=
rate_lowest_index
(
sband
,
NULL
);
else
info
->
control
.
rates
[
0
].
idx
=
rate_lowest_index
(
sband
,
sta
);
return
;
return
;
}
}
...
...
drivers/net/wireless/p54/p54usb.c
View file @
71be7a36
...
@@ -229,6 +229,8 @@ static void p54u_tx_3887(struct ieee80211_hw *dev, struct sk_buff *skb)
...
@@ -229,6 +229,8 @@ static void p54u_tx_3887(struct ieee80211_hw *dev, struct sk_buff *skb)
usb_sndbulkpipe
(
priv
->
udev
,
P54U_PIPE_DATA
),
usb_sndbulkpipe
(
priv
->
udev
,
P54U_PIPE_DATA
),
skb
->
data
,
skb
->
len
,
FREE_AFTER_TX
(
skb
)
?
skb
->
data
,
skb
->
len
,
FREE_AFTER_TX
(
skb
)
?
p54u_tx_cb
:
p54u_tx_dummy_cb
,
skb
);
p54u_tx_cb
:
p54u_tx_dummy_cb
,
skb
);
addr_urb
->
transfer_flags
|=
URB_ZERO_PACKET
;
data_urb
->
transfer_flags
|=
URB_ZERO_PACKET
;
usb_anchor_urb
(
addr_urb
,
&
priv
->
submitted
);
usb_anchor_urb
(
addr_urb
,
&
priv
->
submitted
);
err
=
usb_submit_urb
(
addr_urb
,
GFP_ATOMIC
);
err
=
usb_submit_urb
(
addr_urb
,
GFP_ATOMIC
);
...
@@ -237,7 +239,7 @@ static void p54u_tx_3887(struct ieee80211_hw *dev, struct sk_buff *skb)
...
@@ -237,7 +239,7 @@ static void p54u_tx_3887(struct ieee80211_hw *dev, struct sk_buff *skb)
goto
out
;
goto
out
;
}
}
usb_anchor_urb
(
addr
_urb
,
&
priv
->
submitted
);
usb_anchor_urb
(
data
_urb
,
&
priv
->
submitted
);
err
=
usb_submit_urb
(
data_urb
,
GFP_ATOMIC
);
err
=
usb_submit_urb
(
data_urb
,
GFP_ATOMIC
);
if
(
err
)
if
(
err
)
usb_unanchor_urb
(
data_urb
);
usb_unanchor_urb
(
data_urb
);
...
@@ -332,12 +334,13 @@ static void p54u_tx_net2280(struct ieee80211_hw *dev, struct sk_buff *skb)
...
@@ -332,12 +334,13 @@ static void p54u_tx_net2280(struct ieee80211_hw *dev, struct sk_buff *skb)
* free what's inside the transfer_buffer after the callback routine
* free what's inside the transfer_buffer after the callback routine
* has completed.
* has completed.
*/
*/
int_urb
->
transfer_flags
|=
URB_FREE_BUFFER
;
int_urb
->
transfer_flags
|=
URB_FREE_BUFFER
|
URB_ZERO_PACKET
;
usb_fill_bulk_urb
(
data_urb
,
priv
->
udev
,
usb_fill_bulk_urb
(
data_urb
,
priv
->
udev
,
usb_sndbulkpipe
(
priv
->
udev
,
P54U_PIPE_DATA
),
usb_sndbulkpipe
(
priv
->
udev
,
P54U_PIPE_DATA
),
hdr
,
skb
->
len
+
sizeof
(
*
hdr
),
FREE_AFTER_TX
(
skb
)
?
hdr
,
skb
->
len
+
sizeof
(
*
hdr
),
FREE_AFTER_TX
(
skb
)
?
p54u_tx_cb
:
p54u_tx_dummy_cb
,
skb
);
p54u_tx_cb
:
p54u_tx_dummy_cb
,
skb
);
data_urb
->
transfer_flags
|=
URB_ZERO_PACKET
;
usb_anchor_urb
(
int_urb
,
&
priv
->
submitted
);
usb_anchor_urb
(
int_urb
,
&
priv
->
submitted
);
err
=
usb_submit_urb
(
int_urb
,
GFP_ATOMIC
);
err
=
usb_submit_urb
(
int_urb
,
GFP_ATOMIC
);
...
...
drivers/net/wireless/rtl818x/rtl8187_dev.c
View file @
71be7a36
...
@@ -273,6 +273,7 @@ static int rtl8187_tx(struct ieee80211_hw *dev, struct sk_buff *skb)
...
@@ -273,6 +273,7 @@ static int rtl8187_tx(struct ieee80211_hw *dev, struct sk_buff *skb)
usb_fill_bulk_urb
(
urb
,
priv
->
udev
,
usb_sndbulkpipe
(
priv
->
udev
,
ep
),
usb_fill_bulk_urb
(
urb
,
priv
->
udev
,
usb_sndbulkpipe
(
priv
->
udev
,
ep
),
buf
,
skb
->
len
,
rtl8187_tx_cb
,
skb
);
buf
,
skb
->
len
,
rtl8187_tx_cb
,
skb
);
urb
->
transfer_flags
|=
URB_ZERO_PACKET
;
usb_anchor_urb
(
urb
,
&
priv
->
anchored
);
usb_anchor_urb
(
urb
,
&
priv
->
anchored
);
rc
=
usb_submit_urb
(
urb
,
GFP_ATOMIC
);
rc
=
usb_submit_urb
(
urb
,
GFP_ATOMIC
);
if
(
rc
<
0
)
{
if
(
rc
<
0
)
{
...
...
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