MFC 303688,303750,305166,305167: Centralize and rework page pod handling.
Note that the TOE DDP code in 10 is different from 11 and later and
had to be updated directly.
303688:
cxgbe/t4_tom: Read the chip's DDP page sizes and save them in a
per-adapter data structure. This replaces a global array with hardcoded
page sizes.
303750:
cxgbe/t4_tom: The page pod arena allocates from pod address space and
not index space. The minimum valid allocation out of this arena is the
size of a single page pod.
305166:
cxgbe/t4_tom: Add general purpose routines to deal with page pod regions
and allocations within them. Switch to these routines to manage the TOE
DDP region.
305167:
cxgbe/t4_tom: Two new routines to allocate and write page pods for a
buffer in the kernel's address space.
Sponsored by: Chelsio Communications
git-svn-id: svn://svn.freebsd.org/base/stable/10@309556
ccf9f872-aa2e-dd11-9fc8-
001c23d0bc1f