How Do I Allocate Less Than the Entire BAR for a PCI Device?

David Christensen dave at randomparity.com
Fri Apr 7 23:44:17 UTC 2006


The Ethernet driver I'm working on has a very large PCI BAR mapping 
for memory (32MB), but I only need 128KB of that BAR memory for use
by the driver.  How can I map only the amount of memory I need with
bus_alloc_resource()?  It looks like I can specify the size if I
also know the BAR starting address, but I'm not sure how to find that.
Has anyone done this or know of any existing code that does this?  All
of the examples I looked at used all of BAR mapped memory.

David Christensen



More information about the freebsd-drivers mailing list