Using DMA_MAXMIN_MAPSPACE
The DMA_MAXMIN_MAPSPACE flag is supplied on the d_map_init service or the d_map_init_ext service to prevent the d_map_init service or the d_map_init_ext service from allocating more DMA space for the DMA handle than what the device driver requests.
The device drivers request a specific amount of DMA space by specifying a DMA_MAXMIN_* flag on the d_map_init service or by specifying the d_info_t.di_max_mapspace flag on the d_map_init_ext service. Because some device drivers support non-page-aligned DMA transfers of the specified maximum DMA space, by default the d_map_init service or the d_map_init_ext service allocates at least one additional page of DMA space.
Device drivers that use the DMA_MAXMIN_MAPSPACE flag cannot support non-page-aligned DMA transfers of the specified maximum DMA space. The DMA_MAXMIN_MAPSPACE flag indicates that the value of the maximum DMA space represents the amount of mappable address space the device driver requires, rather than the maximum transfer value.