diff options
author | Gertjan van Wingerde <gwingerde@gmail.com> | 2011-11-16 17:16:15 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2011-12-09 11:52:30 -0500 |
commit | 2e72634a130dcac5d9e88e9187d7eab6c0ea8713 (patch) | |
tree | c8ef443c7a465e2f983f36491711efb2e96b2990 /drivers/net | |
parent | 23e76fdc4cc34c116b37eedc2a3a8ecaa081541e (diff) |
rt2x00: Fix efuse EEPROM reading on PPC32.
commit 68fa64ef606bcee688fce46d07aa68f175070156 upstream.
Fix __le32 to __le16 conversion of the first word of an 8-word block
of EEPROM read via the efuse method.
Reported-and-tested-by: Ingvar Hagelund <ingvar@redpill-linpro.com>
Signed-off-by: Gertjan van Wingerde <gwingerde@gmail.com>
Acked-by: Helmut Schaa <helmut.schaa@googlemail.com>
Acked-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/net')
-rw-r--r-- | drivers/net/wireless/rt2x00/rt2800lib.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2800lib.c b/drivers/net/wireless/rt2x00/rt2800lib.c index 3f7ea1ce295..e6e174caec8 100644 --- a/drivers/net/wireless/rt2x00/rt2800lib.c +++ b/drivers/net/wireless/rt2x00/rt2800lib.c | |||
@@ -3514,7 +3514,7 @@ static void rt2800_efuse_read(struct rt2x00_dev *rt2x00dev, unsigned int i) | |||
3514 | /* Apparently the data is read from end to start */ | 3514 | /* Apparently the data is read from end to start */ |
3515 | rt2800_register_read_lock(rt2x00dev, EFUSE_DATA3, ®); | 3515 | rt2800_register_read_lock(rt2x00dev, EFUSE_DATA3, ®); |
3516 | /* The returned value is in CPU order, but eeprom is le */ | 3516 | /* The returned value is in CPU order, but eeprom is le */ |
3517 | rt2x00dev->eeprom[i] = cpu_to_le32(reg); | 3517 | *(u32 *)&rt2x00dev->eeprom[i] = cpu_to_le32(reg); |
3518 | rt2800_register_read_lock(rt2x00dev, EFUSE_DATA2, ®); | 3518 | rt2800_register_read_lock(rt2x00dev, EFUSE_DATA2, ®); |
3519 | *(u32 *)&rt2x00dev->eeprom[i + 2] = cpu_to_le32(reg); | 3519 | *(u32 *)&rt2x00dev->eeprom[i + 2] = cpu_to_le32(reg); |
3520 | rt2800_register_read_lock(rt2x00dev, EFUSE_DATA1, ®); | 3520 | rt2800_register_read_lock(rt2x00dev, EFUSE_DATA1, ®); |