summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/rt2x00/rt2800usb.c
diff options
context:
space:
mode:
authorBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2009-11-08 14:39:55 +0100
committerJohn W. Linville <linville@tuxdriver.com>2009-11-11 17:09:16 -0500
commit40beee5c15a816bf77747e15940ac3b97229faf4 (patch)
tree3278db50b79e23b7e204e002163115bc8be429c4 /drivers/net/wireless/rt2x00/rt2800usb.c
parent30e840346c516ad4e36f710fa485933ccc7afa66 (diff)
downloadkernel-crypto-40beee5c15a816bf77747e15940ac3b97229faf4.tar.gz
kernel-crypto-40beee5c15a816bf77747e15940ac3b97229faf4.tar.xz
kernel-crypto-40beee5c15a816bf77747e15940ac3b97229faf4.zip
rt2800usb: add eFuse EEPROM support
It is needed for at least RT3070 chip. Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> Acked-by: Ivo van Doorn <IvDoorn@gmail.com> Acked-by: Gertjan van Wingerde <gwingerde@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/rt2x00/rt2800usb.c')
-rw-r--r--drivers/net/wireless/rt2x00/rt2800usb.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2800usb.c b/drivers/net/wireless/rt2x00/rt2800usb.c
index a6b0484d581..54afbc8378d 100644
--- a/drivers/net/wireless/rt2x00/rt2800usb.c
+++ b/drivers/net/wireless/rt2x00/rt2800usb.c
@@ -667,7 +667,11 @@ static void rt2800usb_fill_rxdone(struct queue_entry *entry,
*/
static int rt2800usb_validate_eeprom(struct rt2x00_dev *rt2x00dev)
{
- rt2x00usb_eeprom_read(rt2x00dev, rt2x00dev->eeprom, EEPROM_SIZE);
+ if (rt2800_efuse_detect(rt2x00dev))
+ rt2800_read_eeprom_efuse(rt2x00dev);
+ else
+ rt2x00usb_eeprom_read(rt2x00dev, rt2x00dev->eeprom,
+ EEPROM_SIZE);
return rt2800_validate_eeprom(rt2x00dev);
}