[lkml]   [2006]   [Mar]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: proper way to assign fixed PCI resources to a "hotplug" device
On Fri, Mar 03, 2006 at 05:13:55PM -0600, Kumar Gala wrote:
> On Mar 3, 2006, at 4:07 PM, Greg KH wrote:
> >On Fri, Mar 03, 2006 at 11:42:03AM -0600, Kumar Gala wrote:
> >>I was wondering what the proper way to assign and setup a single PCI
> >>device that comes into existence after the system has booted. I have
> >>an FPGA that we load from user space at which time it shows up on the
> >>PCI bus.
> >
> >Idealy your BIOS would set up this information :)
> >
> >>It has a single BAR and I need to assign it at a fixed address in PCI
> >>MMIO space.
> >>
> >>All of the exported interfaces I see have to do with having the
> >>kernel assign the BAR automatically for me.
> >>
> >>the following looks like what I want to do:
> >>
> >>bus = pci_find_bus(0, 3);
> >>dev = pci_scan_single_device(bus, devfn);
> >>pci_bus_alloc_resource(...);
> >>pci_update_resource(dev, dev->resource[0], 0);
> >>pci_bus_add_devices(bus);
> >>
> >>However, pci_update_resource() is not an exported symbol, so I could
> >>replace that code with the need updates to the actual BAR.
> >>
> >>Is this the "right" way to go about this or is there a better
> >>mechanism to do this.
> >
> >Take a look at how the compat pci hotplug driver does this, you
> >probably
> >just need to do the same as it.
> I found cpqhp_configure_device(), but I dont see anything about how
> to handle assigned a fixed address to the BAR.

I don't know either, try asking on the pci hotplug mailing list and CC:
Scott, the author of that driver for how his devices work around that.


greg k-h
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

 \ /
  Last update: 2006-03-04 00:30    [W:0.141 / U:2.440 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site