diff options
author | Alan Cox <alan@lxorguk.ukuu.org.uk> | 2005-10-04 08:09:19 -0400 |
---|---|---|
committer | Jeff Garzik <jgarzik@pobox.com> | 2005-10-04 08:09:19 -0400 |
commit | 47a8659380d40d5c0786ddb62a89b3f7f1392430 (patch) | |
tree | 696e7f9874e6087e6aaec51fbe1d4a91cd3dfc64 /drivers/scsi/sata_uli.c | |
parent | fe998aa7e27f125f6768ec6b137b0ce2c9790509 (diff) |
libata: bitmask based pci init functions for one or two ports
This redoes the n_ports logic I proposed before as a bitmask.
ata_pci_init_native_mode is now used with a mask allowing for mixed mode
stuff later on. ata_pci_init_legacy_port is called with port number and
does one port now not two. Instead it is called twice by the ata init
logic which cleans both of them up.
There are stil limits in the original code left over
- IRQ/port mapping for legacy mode should be arch specific values
- You can have one legacy mode IDE adapter per PCI root bridge on some systems
- Doesn't handle mixed mode devices yet (but is now a lot closer to it)
Diffstat (limited to 'drivers/scsi/sata_uli.c')
-rw-r--r-- | drivers/scsi/sata_uli.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/scsi/sata_uli.c b/drivers/scsi/sata_uli.c index 4c9fb8b71be1..9c06f2abe7f7 100644 --- a/drivers/scsi/sata_uli.c +++ b/drivers/scsi/sata_uli.c | |||
@@ -202,7 +202,7 @@ static int uli_init_one (struct pci_dev *pdev, const struct pci_device_id *ent) | |||
202 | goto err_out_regions; | 202 | goto err_out_regions; |
203 | 203 | ||
204 | ppi = &uli_port_info; | 204 | ppi = &uli_port_info; |
205 | probe_ent = ata_pci_init_native_mode(pdev, &ppi); | 205 | probe_ent = ata_pci_init_native_mode(pdev, &ppi, ATA_PORT_PRIMARY | ATA_PORT_SECONDARY); |
206 | if (!probe_ent) { | 206 | if (!probe_ent) { |
207 | rc = -ENOMEM; | 207 | rc = -ENOMEM; |
208 | goto err_out_regions; | 208 | goto err_out_regions; |