diff --git a/drivers/net/wireless/wl12xx/wl1271_scan.c b/drivers/net/wireless/wl12xx/wl1271_scan.c
index f938b33912f5f447d676a6b0e01343f220b2220f..fec43eed8c553424231c6b990132b35bf8b7167b 100644
--- a/drivers/net/wireless/wl12xx/wl1271_scan.c
+++ b/drivers/net/wireless/wl12xx/wl1271_scan.c
@@ -65,7 +65,7 @@ static int wl1271_get_scan_channels(struct wl1271 *wl,
 			channels[j].max_duration =
 				cpu_to_le32(WL1271_SCAN_CHAN_MAX_DURATION);
 			channels[j].early_termination = 0;
-			channels[j].tx_power_att = WL1271_SCAN_CURRENT_TX_PWR;
+			channels[j].tx_power_att = req->channels[i]->max_power;
 			channels[j].channel = req->channels[i]->hw_value;
 
 			memset(&channels[j].bssid_lsb, 0xff, 4);