/* We can't use the standard PCI driver registration stuff here, since that allows only one driver to bind to each PCI device (and we want multiple drivers to be able to bind to the device). Instead, manually scan for the PCI device, request a single region, and keep track of the devices that we're using.  */
static int __init cs5535_gpio_scan_pci(void)
/* We can't use the standard PCI driver registration stuff here, since that allows only one driver to bind to each PCI device (and we want multiple drivers to be able to bind to the device). Instead, manually scan for the PCI device, request a single region, and keep track of the devices that we're using.  */
static int __init cs5535_gpio_scan_pci(void)
{
	struct pci_dev *pdev;
	int err = -ENODEV;
	int i;
	for (i = 0; i < ARRAY_SIZE(cs5535_gpio_pci_tbl); i++) {
		pdev = pci_get_device(cs5535_gpio_pci_tbl[i].vendor,
				cs5535_gpio_pci_tbl[i].device, NULL);
		if (pdev) {
			err = cs5535_gpio_probe(pdev, &cs5535_gpio_pci_tbl[i]);
			if (err)
				pci_dev_put(pdev);
			break;
		}
	}
	return err;
}