Messages in this thread |  | | Date | Wed, 07 Jun 2006 21:23:19 +0900 | From | Kenji Kaneshige <> | Subject | Re: [PATCH 4/4] Make Emulex lpfc driver legacy I/O port free |
| |
Christoph Hellwig wrote: > On Wed, Jun 07, 2006 at 12:15:34PM +0900, Kenji Kaneshige wrote: > >>This patch makes Emulex lpfc driver legacy I/O port free. > > > Your interface for this is really horrible ;-) > > >>+ int bars = pci_select_bars(pdev, IORESOURCE_MEM); >> >>- if (pci_enable_device(pdev)) >>+ if (pci_enable_device_bars(pdev, bars)) >> goto out; >>- if (pci_request_regions(pdev, LPFC_DRIVER_NAME)) >>+ if (pci_request_selected_regions(pdev, bars, LPFC_DRIVER_NAME)) >> goto out_disable_device; > > > Please make this something like: > > if (pci_enable_device_noioport(pdev)) > goto out; > if (pci_request_regions(pdev, LPFC_DRIVER_NAME)) > goto out_disable_device; > > as in: > > - get rid of this awkward pci_select_bars function, the pci_enable* function > should do all the work and add a flag to struct pci_dev so that all other > functions do the right thing. > >
No. Your idea is very similar to the idea of previous version of my patche which had a bug. The problem is that it doesn't work if pci_request_regions() is called before pci_enable_device*() (This is the correct order, though so many drivers breaks this rule).
Thanks, Kenji Kaneshige
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|  |