Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 236283
b: refs/heads/master
c: 774dee1
h: refs/heads/master
i:
  236281: a40ca1b
  236279: 4ee131b
v: v3
  • Loading branch information
Mike McCormack authored and Greg Kroah-Hartman committed Mar 7, 2011
1 parent 0b7c305 commit c35633c
Show file tree
Hide file tree
Showing 4 changed files with 17 additions and 18 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 8e0af57d9eb893a27e35d09e29d89b974a5d375d
refs/heads/master: 774dee1c1af9dd4994d5055bf2507c9ad72991e3
4 changes: 2 additions & 2 deletions trunk/drivers/staging/rtl8192e/ieee80211/ieee80211.h
Original file line number Diff line number Diff line change
Expand Up @@ -1811,8 +1811,6 @@ typedef struct _RT_POWER_SAVE_CONTROL
bool bLeisurePs;
u32 PowerProfile;
u8 LpsIdleCount;
u8 RegMaxLPSAwakeIntvl;
u8 LPSAwakeIntvl;

u32 CurPsLevel;
u32 RegRfPsLevel;
Expand Down Expand Up @@ -2200,6 +2198,8 @@ struct ieee80211_device {

/* for PS mode */
unsigned long last_rx_ps_time;
u8 LPSAwakeIntvl;
u8 RegMaxLPSAwakeIntvl;

/* used if IEEE_SOFTMAC_SINGLE_QUEUE is set */
struct sk_buff *mgmt_queue_ring[MGMT_QUEUE_NUM];
Expand Down
27 changes: 13 additions & 14 deletions trunk/drivers/staging/rtl8192e/ieee80211/ieee80211_softmac.c
Original file line number Diff line number Diff line change
Expand Up @@ -1738,7 +1738,6 @@ short ieee80211_sta_ps_sleep(struct ieee80211_device *ieee, u32 *time_h, u32 *ti
{
int timeout = ieee->ps_timeout;
u8 dtim;
PRT_POWER_SAVE_CONTROL pPSC = (PRT_POWER_SAVE_CONTROL)(&(ieee->PowerSaveControl));

if(ieee->LPSDelayCnt)
{
Expand Down Expand Up @@ -1767,35 +1766,35 @@ short ieee80211_sta_ps_sleep(struct ieee80211_device *ieee, u32 *time_h, u32 *ti

if(time_l){
if(ieee->bAwakePktSent == true) {
pPSC->LPSAwakeIntvl = 1;//tx wake one beacon
ieee->LPSAwakeIntvl = 1;//tx wake one beacon
} else {
u8 MaxPeriod = 1;

if(pPSC->LPSAwakeIntvl == 0)
pPSC->LPSAwakeIntvl = 1;
if(pPSC->RegMaxLPSAwakeIntvl == 0) // Default (0x0 - eFastPs, 0xFF -DTIM, 0xNN - 0xNN * BeaconIntvl)
if(ieee->LPSAwakeIntvl == 0)
ieee->LPSAwakeIntvl = 1;
if(ieee->RegMaxLPSAwakeIntvl == 0) // Default (0x0 - eFastPs, 0xFF -DTIM, 0xNN - 0xNN * BeaconIntvl)
MaxPeriod = 1; // 1 Beacon interval
else if(pPSC->RegMaxLPSAwakeIntvl == 0xFF) // DTIM
else if(ieee->RegMaxLPSAwakeIntvl == 0xFF) // DTIM
MaxPeriod = ieee->current_network.dtim_period;
else
MaxPeriod = pPSC->RegMaxLPSAwakeIntvl;
pPSC->LPSAwakeIntvl = (pPSC->LPSAwakeIntvl >= MaxPeriod) ? MaxPeriod : (pPSC->LPSAwakeIntvl + 1);
MaxPeriod = ieee->RegMaxLPSAwakeIntvl;
ieee->LPSAwakeIntvl = (ieee->LPSAwakeIntvl >= MaxPeriod) ? MaxPeriod : (ieee->LPSAwakeIntvl + 1);
}
{
u8 LPSAwakeIntvl_tmp = 0;
u8 period = ieee->current_network.dtim_period;
u8 count = ieee->current_network.tim.tim_count;
if(count == 0 ) {
if(pPSC->LPSAwakeIntvl > period)
LPSAwakeIntvl_tmp = period + (pPSC->LPSAwakeIntvl - period) -((pPSC->LPSAwakeIntvl-period)%period);
if(ieee->LPSAwakeIntvl > period)
LPSAwakeIntvl_tmp = period + (ieee->LPSAwakeIntvl - period) -((ieee->LPSAwakeIntvl-period)%period);
else
LPSAwakeIntvl_tmp = pPSC->LPSAwakeIntvl;
LPSAwakeIntvl_tmp = ieee->LPSAwakeIntvl;

} else {
if(pPSC->LPSAwakeIntvl > ieee->current_network.tim.tim_count)
LPSAwakeIntvl_tmp = count + (pPSC->LPSAwakeIntvl - count) -((pPSC->LPSAwakeIntvl-count)%period);
if(ieee->LPSAwakeIntvl > ieee->current_network.tim.tim_count)
LPSAwakeIntvl_tmp = count + (ieee->LPSAwakeIntvl - count) -((ieee->LPSAwakeIntvl-count)%period);
else
LPSAwakeIntvl_tmp = pPSC->LPSAwakeIntvl;
LPSAwakeIntvl_tmp = ieee->LPSAwakeIntvl;
}

*time_l = ieee->current_network.last_dtim_sta_time[0]
Expand Down
2 changes: 1 addition & 1 deletion trunk/drivers/staging/rtl8192e/r8192E_core.c
Original file line number Diff line number Diff line change
Expand Up @@ -1915,7 +1915,7 @@ static void rtl8192_init_priv_variable(struct net_device* dev)
pPSC->RegRfPsLevel |= RT_RF_OFF_LEVL_ASPM;
pPSC->RegRfPsLevel |= RT_RF_LPS_LEVEL_ASPM;
pPSC->bLeisurePs = true;
pPSC->RegMaxLPSAwakeIntvl = 5;
priv->ieee80211->RegMaxLPSAwakeIntvl = 5;
priv->bHwRadioOff = false;

priv->being_init_adapter = false;
Expand Down

0 comments on commit c35633c

Please sign in to comment.