diff options
author | Ivo van Doorn <ivdoorn@gmail.com> | 2007-10-06 08:11:46 -0400 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2007-10-10 19:55:08 -0400 |
commit | 4abee4bbd771ce42b9a0a19be11264721aa0e3ed (patch) | |
tree | 238f6f7a411c69062aa5d1287409769068b0783d /drivers/net/wireless/rt2x00/rt2500pci.c | |
parent | c109810318ef4d37e495f740e624b1a15b7a0818 (diff) |
[PATCH] rt2x00: Remove duplicate code in MAC & BSSID handling
The various drivers contained duplicate code to handle the
MAC and BSSID initialization correctly. This moves the
address copy to little endian variables to rt2x00config.
Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/rt2x00/rt2500pci.c')
-rw-r--r-- | drivers/net/wireless/rt2x00/rt2500pci.c | 30 |
1 files changed, 8 insertions, 22 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2500pci.c b/drivers/net/wireless/rt2x00/rt2500pci.c index 842da900d7c1..63a7b3cdf0cd 100644 --- a/drivers/net/wireless/rt2x00/rt2500pci.c +++ b/drivers/net/wireless/rt2x00/rt2500pci.c | |||
@@ -249,32 +249,18 @@ static int rt2500pci_rfkill_poll(struct rt2x00_dev *rt2x00dev) | |||
249 | /* | 249 | /* |
250 | * Configuration handlers. | 250 | * Configuration handlers. |
251 | */ | 251 | */ |
252 | static void rt2500pci_config_mac_addr(struct rt2x00_dev *rt2x00dev, u8 *addr) | 252 | static void rt2500pci_config_mac_addr(struct rt2x00_dev *rt2x00dev, |
253 | __le32 *mac) | ||
253 | { | 254 | { |
254 | __le32 reg[2]; | 255 | rt2x00pci_register_multiwrite(rt2x00dev, CSR3, mac, |
255 | 256 | (2 * sizeof(__le32))); | |
256 | memset(®, 0, sizeof(reg)); | ||
257 | memcpy(®, addr, ETH_ALEN); | ||
258 | |||
259 | /* | ||
260 | * The MAC address is passed to us as an array of bytes, | ||
261 | * that array is little endian, so no need for byte ordering. | ||
262 | */ | ||
263 | rt2x00pci_register_multiwrite(rt2x00dev, CSR3, ®, sizeof(reg)); | ||
264 | } | 257 | } |
265 | 258 | ||
266 | static void rt2500pci_config_bssid(struct rt2x00_dev *rt2x00dev, u8 *bssid) | 259 | static void rt2500pci_config_bssid(struct rt2x00_dev *rt2x00dev, |
260 | __le32 *bssid) | ||
267 | { | 261 | { |
268 | __le32 reg[2]; | 262 | rt2x00pci_register_multiwrite(rt2x00dev, CSR5, bssid, |
269 | 263 | (2 * sizeof(__le32))); | |
270 | memset(®, 0, sizeof(reg)); | ||
271 | memcpy(®, bssid, ETH_ALEN); | ||
272 | |||
273 | /* | ||
274 | * The BSSID is passed to us as an array of bytes, | ||
275 | * that array is little endian, so no need for byte ordering. | ||
276 | */ | ||
277 | rt2x00pci_register_multiwrite(rt2x00dev, CSR5, ®, sizeof(reg)); | ||
278 | } | 264 | } |
279 | 265 | ||
280 | static void rt2500pci_config_type(struct rt2x00_dev *rt2x00dev, const int type) | 266 | static void rt2500pci_config_type(struct rt2x00_dev *rt2x00dev, const int type) |