solos: Automatically determine number of ports
authorNathan Williams <nathan@traverse.com.au>
Fri, 6 Feb 2009 23:19:13 +0000 (10:19 +1100)
committerDavid Woodhouse <David.Woodhouse@intel.com>
Tue, 17 Mar 2009 15:01:02 +0000 (15:01 +0000)
Signed-off-by: Nathan Williams <nathan@traverse.com.au>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
drivers/atm/solos-pci.c

index 1ff730497217ebd041d94eab25664fc171b6c253..6fe8f8fc85533660b0e0b59713883fbfea0d1e25 100644 (file)
@@ -1104,7 +1104,8 @@ static int fpga_probe(struct pci_dev *dev, const struct pci_device_id *id)
                iowrite32(0xF0, card->config_regs + FLAGS_ADDR);
        }
 
-       card->nr_ports = 2; /* FIXME: Detect daughterboard */
+       data32 = ioread32(card->config_regs + PORTS);
+       card->nr_ports = (data32 & 0x000000FF);
 
        pci_set_drvdata(dev, card);