Subject: [PATCH 29/30] solos: Automatically determine number of ports

From: David Woodhouse <[email-masked]>
Date: Tue, 17 Mar 2009 21:29:37 +0000

Signed-off-by: Nathan Williams <[email-masked]>
Signed-off-by: David Woodhouse <[email-masked]>
---
 drivers/atm/solos-pci.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/drivers/atm/solos-pci.c b/drivers/atm/solos-pci.c
index 1ff7304..6fe8f8f 100644
--- a/drivers/atm/solos-pci.c
+++ b/drivers/atm/solos-pci.c
@@ -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);
 
-- 
1.6.0.6