diff options
author | Larry Finger <Larry.Finger@lwfinger.net> | 2008-04-19 17:52:12 +0200 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2008-04-23 21:25:35 -0400 |
commit | 4503183aa32e6886400d82282292934fa64a81b0 (patch) | |
tree | 5ff1dd907a07b115b70650cf961b0e0f87d6f7b8 | |
parent | 9fc38458355525f801cd2ab403ac89850489a05e (diff) | |
download | linux-3.10-4503183aa32e6886400d82282292934fa64a81b0.tar.gz linux-3.10-4503183aa32e6886400d82282292934fa64a81b0.tar.bz2 linux-3.10-4503183aa32e6886400d82282292934fa64a81b0.zip |
ssb: Fix all-ones boardflags
In the SSB SPROM a field set to all ones means the value
is not defined in the SPROM.
In case of the boardflags, we need to set them to zero
to avoid confusing drivers. Drivers will only check the
flags by ANDing.
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: Gabor Stefanik <netrolller.3d@gmail.com>
Signed-off-by: Michael Buesch <mb@bu3sch.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r-- | drivers/ssb/pci.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/ssb/pci.c b/drivers/ssb/pci.c index 904b1a8d088..57c4ccfab1e 100644 --- a/drivers/ssb/pci.c +++ b/drivers/ssb/pci.c @@ -484,6 +484,11 @@ static int sprom_extract(struct ssb_bus *bus, struct ssb_sprom *out, goto unsupported; } + if (out->boardflags_lo == 0xFFFF) + out->boardflags_lo = 0; /* per specs */ + if (out->boardflags_hi == 0xFFFF) + out->boardflags_hi = 0; /* per specs */ + return 0; unsupported: ssb_printk(KERN_WARNING PFX "Unsupported SPROM revision %d " |