Hi Bjorn, Thanks for clarification. Thanks, Naveen. On Mon, Jul 20, 2015 at 7:03 PM, Bjorn Helgaas <bhelgaas@xxxxxxxxxx> wrote: > 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