From 91843dde9b27d951bba1a50a2d7e64c0fab5445a Mon Sep 17 00:00:00 2001 From: Roland Vossen Date: Mon, 5 Sep 2011 10:47:35 +0200 Subject: [PATCH] --- yaml --- r: 268254 b: refs/heads/master c: 17966e3bb8a3a0d883f4893e515c174ac5980413 h: refs/heads/master v: v3 --- [refs] | 2 +- .../drivers/staging/brcm80211/brcmsmac/srom.c | 24 +++++++++---------- 2 files changed, 12 insertions(+), 14 deletions(-) diff --git a/[refs] b/[refs] index 45364bf40d89..d723730edf80 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 94dde6f46df0ab242875d14be9f454b414f1c0fe +refs/heads/master: 17966e3bb8a3a0d883f4893e515c174ac5980413 diff --git a/trunk/drivers/staging/brcm80211/brcmsmac/srom.c b/trunk/drivers/staging/brcm80211/brcmsmac/srom.c index c8f6897cb37a..5bf07328ceaf 100644 --- a/trunk/drivers/staging/brcm80211/brcmsmac/srom.c +++ b/trunk/drivers/staging/brcm80211/brcmsmac/srom.c @@ -28,18 +28,6 @@ #include "otp.h" #include "srom.h" -#define SROM_OFFSET(sih) ((sih->ccrev > 31) ? \ - (((sih->cccaps & CC_CAP_SROM) == 0) ? NULL : \ - ((u8 *)curmap + PCI_16KB0_CCREGS_OFFSET + CC_SROM_OTP)) : \ - ((u8 *)curmap + PCI_BAR0_SPROM_OFFSET)) - -#if defined(BCMDBG) -/* 500 ms after write enable/disable toggle */ -#define WRITE_ENABLE_DELAY 500 -/* 20 ms between each word write */ -#define WRITE_WORD_DELAY 20 -#endif - /* * SROM CRC8 polynomial value: * @@ -792,6 +780,16 @@ static const struct brcms_sromvar perpath_pci_sromvars[] = { static u8 srom_crc8_table[CRC8_TABLE_SIZE]; +static u16 *srom_window_address(struct si_pub *sih, u8 *curmap) +{ + if (sih->ccrev < 32) + return (u16 *)(curmap + PCI_BAR0_SPROM_OFFSET); + if (sih->cccaps & CC_CAP_SROM) + return (u16 *)(curmap + PCI_16KB0_CCREGS_OFFSET + CC_SROM_OTP); + + return NULL; +} + /* Parse SROM and create name=value pairs. 'srom' points to * the SROM word array. 'off' specifies the offset of the * first word 'srom' points to, which should be either 0 or @@ -1147,7 +1145,7 @@ static int initvars_srom_pci(struct si_pub *sih, void *curmap, char **vars, if (!srom) return -ENOMEM; - sromwindow = (u16 *) SROM_OFFSET(sih); + sromwindow = srom_window_address(sih, curmap); crc8_populate_lsb(srom_crc8_table, SROM_CRC8_POLY); if (ai_is_sprom_available(sih)) {