diff options
author | Yogesh Ashok Powar <yogeshp@marvell.com> | 2011-12-30 06:04:25 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2012-01-04 14:31:46 -0500 |
commit | 7f28197560116f08c4c27342974f9e64cab2cbb1 (patch) | |
tree | 6d66241d34a6f5a7825d8a00839e940146a33c54 /net/mac80211/util.c | |
parent | 98f0a5eb02bbfff662664bf65f469dc4abd701fd (diff) |
mac80211: Call driver commands after drv_start in mac80211 restart code
Ideally, hardware/firmware initialization is complete after the
drv_start routine. In mac80211 restart code (ieee80211_reconfig),
defer calling the driver commands i.e. setup fragmentation
threshold, rts threshold and coverage class till drv_start
routine is called.
Signed-off-by: Nishant Sarmukadam <nishants@marvell.com>
Signed-off-by: Yogesh Ashok Powar <yogeshp@marvell.com>
v2: Removed extra blank line added.
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/util.c')
-rw-r--r-- | net/mac80211/util.c | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/net/mac80211/util.c b/net/mac80211/util.c index eb1a5f737a9c..9919892575f4 100644 --- a/net/mac80211/util.c +++ b/net/mac80211/util.c | |||
@@ -1142,16 +1142,6 @@ int ieee80211_reconfig(struct ieee80211_local *local) | |||
1142 | */ | 1142 | */ |
1143 | } | 1143 | } |
1144 | #endif | 1144 | #endif |
1145 | |||
1146 | /* setup fragmentation threshold */ | ||
1147 | drv_set_frag_threshold(local, hw->wiphy->frag_threshold); | ||
1148 | |||
1149 | /* setup RTS threshold */ | ||
1150 | drv_set_rts_threshold(local, hw->wiphy->rts_threshold); | ||
1151 | |||
1152 | /* reset coverage class */ | ||
1153 | drv_set_coverage_class(local, hw->wiphy->coverage_class); | ||
1154 | |||
1155 | /* everything else happens only if HW was up & running */ | 1145 | /* everything else happens only if HW was up & running */ |
1156 | if (!local->open_count) | 1146 | if (!local->open_count) |
1157 | goto wake_up; | 1147 | goto wake_up; |
@@ -1170,6 +1160,15 @@ int ieee80211_reconfig(struct ieee80211_local *local) | |||
1170 | return res; | 1160 | return res; |
1171 | } | 1161 | } |
1172 | 1162 | ||
1163 | /* setup fragmentation threshold */ | ||
1164 | drv_set_frag_threshold(local, hw->wiphy->frag_threshold); | ||
1165 | |||
1166 | /* setup RTS threshold */ | ||
1167 | drv_set_rts_threshold(local, hw->wiphy->rts_threshold); | ||
1168 | |||
1169 | /* reset coverage class */ | ||
1170 | drv_set_coverage_class(local, hw->wiphy->coverage_class); | ||
1171 | |||
1173 | ieee80211_led_radio(local, true); | 1172 | ieee80211_led_radio(local, true); |
1174 | ieee80211_mod_tpt_led_trig(local, | 1173 | ieee80211_mod_tpt_led_trig(local, |
1175 | IEEE80211_TPT_LEDTRIG_FL_RADIO, 0); | 1174 | IEEE80211_TPT_LEDTRIG_FL_RADIO, 0); |