The buffer_aux_granules_map() maps each slot buffer granule one-by-one as seen here :
|
static void *buffer_aux_granules_map(struct granule *g_aux[], |
This is because the underlying xlat_map_memory_page_with_attrs() allows only mapping one page at a time . If xlat lib allowed mapping several pages at once, then potentially it is more optimal as we issue isb() and dsb() only once for the lot.
Need to do the necessary changes to support this optimization.
The buffer_aux_granules_map() maps each slot buffer granule one-by-one as seen here :
tf-rmm/lib/slot_buf/src/buffer.c
Line 220 in 344d529
This is because the underlying xlat_map_memory_page_with_attrs() allows only mapping one page at a time . If xlat lib allowed mapping several pages at once, then potentially it is more optimal as we issue isb() and dsb() only once for the lot.
Need to do the necessary changes to support this optimization.