Hi Naveen, On Mon, Jul 20, 2015 at 5:55 AM, Naveen Kumar Parna <pnaveenkos@xxxxxxxxx> wrote: > Hi , > > I have a Verilog image & hardware which provides a PCIe interface with > two BAR’s(BAR0 & BAR1) to host. > > BAR0 is having customized UART, GPIO and 1-wire prom modules. These > modules are accessed via customized PCIe interface driver. > > BAR1 is having SD Host controller as per SD Specifications. Here > requirement is such that we should use Linux kernel stack drivers > (sdhci.ko & sdhci-pci.ko). > > > Here the issue is only one driver’s probe() function gets executed > i.e. either customized PCIe driver or sdhci-pci.ko. The PCI infrastructure is designed such that a bus/device/function address identifies a single device. To that device, we can attach a single driver, which manages all BARs on that device. There is no provision for attaching one driver to BAR0 and a different driver to BAR1. To manage the device you describe, you'd have to have a driver that claims the entire PCI device, including both BARs. That driver would internally deal with the UART, GPIO, 1-wire prom, and SD host controller modules. Bjorn -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html