For some interaction with a PCI device that is being built, we\'d like to create large contiguous pieces of memory that the board can access. As it stands now, the largest piece
If you can compile your PCI device driver into the kernel (that is, not linked as a module), you could try allocating the memory at boot time. That should let you bypass the upper bounds on dynamic allocations. Refer to Linux Device Drivers, ed. 3 ch. 8 for details.
CMA(Contiguous Memory Allocator) are the best solution for your need IMO. You just need to ship to the newest kernel.