[PATCH 1/3] [IDE] Add helper __ide_setup_pci_device()

From: Jeff Garzik
Date: Wed Oct 24 2007 - 19:48:58 EST


Like ide_setup_pci_device(), except with additional array argument
'u8 *idx' that permits low-level driver to become aware of its assigned
hwifs.

Signed-off-by: Jeff Garzik <jgarzik@xxxxxxxxxx>
---
drivers/ide/setup-pci.c | 17 ++++++++++++-----
include/linux/ide.h | 1 +
2 files changed, 13 insertions(+), 5 deletions(-)

diff --git a/drivers/ide/setup-pci.c b/drivers/ide/setup-pci.c
index 02d14bf..4960b9f 100644
--- a/drivers/ide/setup-pci.c
+++ b/drivers/ide/setup-pci.c
@@ -666,12 +666,10 @@ out:
return ret;
}

-int ide_setup_pci_device(struct pci_dev *dev, const struct ide_port_info *d)
+int __ide_setup_pci_device(struct pci_dev *dev, const struct ide_port_info *d,
+ u8 *idx)
{
- u8 idx[4] = { 0xff, 0xff, 0xff, 0xff };
- int ret;
-
- ret = do_ide_setup_pci_device(dev, d, &idx[0], 1);
+ int ret = do_ide_setup_pci_device(dev, d, idx, 1);

if (ret >= 0)
ide_device_add(idx);
@@ -679,6 +677,15 @@ int ide_setup_pci_device(struct pci_dev *dev, const struct ide_port_info *d)
return ret;
}

+EXPORT_SYMBOL_GPL(__ide_setup_pci_device);
+
+int ide_setup_pci_device(struct pci_dev *dev, const struct ide_port_info *d)
+{
+ u8 idx[4] = { 0xff, 0xff, 0xff, 0xff };
+
+ return __ide_setup_pci_device(dev, d, &idx[0]);
+}
+
EXPORT_SYMBOL_GPL(ide_setup_pci_device);

int ide_setup_pci_devices(struct pci_dev *dev1, struct pci_dev *dev2,
diff --git a/include/linux/ide.h b/include/linux/ide.h
index 4ed4777..3404fb9 100644
--- a/include/linux/ide.h
+++ b/include/linux/ide.h
@@ -1244,6 +1244,7 @@ struct ide_port_info {
u8 udma_mask;
};

+int __ide_setup_pci_device(struct pci_dev *, const struct ide_port_info *, u8 *);
int ide_setup_pci_device(struct pci_dev *, const struct ide_port_info *);
int ide_setup_pci_devices(struct pci_dev *, struct pci_dev *, const struct ide_port_info *);

--
1.5.2.4

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/