summaryrefslogtreecommitdiffstats
path: root/drivers/atm/solos-pci.c
diff options
context:
space:
mode:
authorDavid Woodhouse <dwmw2@infradead.org>2010-11-01 11:35:28 +0100
committerDavid S. Miller <davem@davemloft.net>2010-11-08 21:17:05 +0100
commit3ce1227c3c374c742ed78484226e24567f09ff99 (patch)
tree0b3328b7dc057b49f32ac32f64f7694eb79426d9 /drivers/atm/solos-pci.c
parentsolos: Add 'Firmware' attribute for Traverse overall firmware version (diff)
downloadlinux-3ce1227c3c374c742ed78484226e24567f09ff99.tar.xz
linux-3ce1227c3c374c742ed78484226e24567f09ff99.zip
solos: Refuse to upgrade firmware with older FPGA. It doesn't work.
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to '')
-rw-r--r--drivers/atm/solos-pci.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/atm/solos-pci.c b/drivers/atm/solos-pci.c
index f46138ab38b6..2e08c996fd30 100644
--- a/drivers/atm/solos-pci.c
+++ b/drivers/atm/solos-pci.c
@@ -1161,6 +1161,14 @@ static int fpga_probe(struct pci_dev *dev, const struct pci_device_id *id)
dev_info(&dev->dev, "Solos FPGA Version %d.%02d svn-%d\n",
major_ver, minor_ver, fpga_ver);
+ if (fpga_ver < 37 && (fpga_upgrade || firmware_upgrade ||
+ db_fpga_upgrade || db_firmware_upgrade)) {
+ dev_warn(&dev->dev,
+ "FPGA too old; cannot upgrade flash. Use JTAG.\n");
+ fpga_upgrade = firmware_upgrade = 0;
+ db_fpga_upgrade = db_firmware_upgrade = 0;
+ }
+
if (card->fpga_version >= DMA_SUPPORTED){
card->using_dma = 1;
} else {