aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorChr <chunkeey@web.de>2008-10-29 17:39:50 -0400
committerJohn W. Linville <linville@tuxdriver.com>2008-11-10 15:17:39 -0500
commit9483407d09077c0bfc612c72835b1e9bbdda0a10 (patch)
tree71595de53aeb25f95a895788ce059b15b5318d0f /drivers
parentc8034c44851ba4c6b55ec6e6b60573cf51589be3 (diff)
p54: initialize all deprecated fields
The new mechanism for allocing space for control frames, didn't "zero" out the payload data... However I haven't heard of any hiccups so far... Signed-off-by: Christian Lamparter <chunkeey@web.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/wireless/p54/p54common.c15
1 files changed, 9 insertions, 6 deletions
diff --git a/drivers/net/wireless/p54/p54common.c b/drivers/net/wireless/p54/p54common.c
index 6f0aa7981b33..1796b8c6c5b8 100644
--- a/drivers/net/wireless/p54/p54common.c
+++ b/drivers/net/wireless/p54/p54common.c
@@ -9,7 +9,7 @@
9 * - the islsm (softmac prism54) driver, which is: 9 * - the islsm (softmac prism54) driver, which is:
10 * Copyright 2004-2006 Jean-Baptiste Note <jbnote@gmail.com>, et al. 10 * Copyright 2004-2006 Jean-Baptiste Note <jbnote@gmail.com>, et al.
11 * - stlc45xx driver 11 * - stlc45xx driver
12 * C Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies). 12 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies).
13 * 13 *
14 * This program is free software; you can redistribute it and/or modify 14 * This program is free software; you can redistribute it and/or modify
15 * it under the terms of the GNU General Public License version 2 as 15 * it under the terms of the GNU General Public License version 2 as
@@ -1241,8 +1241,10 @@ static int p54_setup_mac(struct ieee80211_hw *dev, u16 mode, const u8 *bssid)
1241 else 1241 else
1242 memcpy(setup->bssid, bssid, ETH_ALEN); 1242 memcpy(setup->bssid, bssid, ETH_ALEN);
1243 setup->rx_antenna = priv->rx_antenna; 1243 setup->rx_antenna = priv->rx_antenna;
1244 setup->rx_align = 0;
1244 if (priv->fw_var < 0x500) { 1245 if (priv->fw_var < 0x500) {
1245 setup->v1.basic_rate_mask = cpu_to_le32(0x15f); 1246 setup->v1.basic_rate_mask = cpu_to_le32(0x15f);
1247 memset(setup->v1.rts_rates, 0, 8);
1246 setup->v1.rx_addr = cpu_to_le32(priv->rx_end); 1248 setup->v1.rx_addr = cpu_to_le32(priv->rx_end);
1247 setup->v1.max_rx = cpu_to_le16(priv->rx_mtu); 1249 setup->v1.max_rx = cpu_to_le16(priv->rx_mtu);
1248 setup->v1.rxhw = cpu_to_le16(priv->rxhw); 1250 setup->v1.rxhw = cpu_to_le16(priv->rxhw);
@@ -1326,11 +1328,11 @@ static int p54_set_freq(struct ieee80211_hw *dev, u16 frequency)
1326 } 1328 }
1327 1329
1328 entry += sizeof(__le16); 1330 entry += sizeof(__le16);
1329 chan->pa_points_per_curve = 1331 chan->pa_points_per_curve = 8;
1330 min(priv->curve_data->points_per_channel, (u8) 8); 1332 memset(chan->curve_data, 0, sizeof(*chan->curve_data));
1331 1333 memcpy(chan->curve_data, entry,
1332 memcpy(chan->curve_data, entry, sizeof(*chan->curve_data) * 1334 sizeof(struct p54_pa_curve_data_sample) *
1333 chan->pa_points_per_curve); 1335 min((u8)8, priv->curve_data->points_per_channel));
1334 break; 1336 break;
1335 } 1337 }
1336 1338
@@ -1406,6 +1408,7 @@ static int p54_set_edcf(struct ieee80211_hw *dev)
1406 /* (see prism54/isl_oid.h for further details) */ 1408 /* (see prism54/isl_oid.h for further details) */
1407 edcf->frameburst = cpu_to_le16(0); 1409 edcf->frameburst = cpu_to_le16(0);
1408 edcf->round_trip_delay = cpu_to_le16(0); 1410 edcf->round_trip_delay = cpu_to_le16(0);
1411 edcf->flags = 0;
1409 memset(edcf->mapping, 0, sizeof(edcf->mapping)); 1412 memset(edcf->mapping, 0, sizeof(edcf->mapping));
1410 memcpy(edcf->queue, priv->qos_params, sizeof(edcf->queue)); 1413 memcpy(edcf->queue, priv->qos_params, sizeof(edcf->queue));
1411 priv->tx(dev, skb, 1); 1414 priv->tx(dev, skb, 1);