1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef __RGA_MMU_INFO_H__ 3 #define __RGA_MMU_INFO_H__ 4 5 #include "rga2.h" 6 #include "RGA2_API.h" 7 8 #ifndef MIN 9 #define MIN(X, Y) ((X)<(Y)?(X):(Y)) 10 #endif 11 12 #ifndef MAX 13 #define MAX(X, Y) ((X)>(Y)?(X):(Y)) 14 #endif 15 16 extern struct rga2_drvdata_t *rga2_drvdata; 17 18 enum { 19 MMU_MAP_CLEAN = 1 << 0, 20 MMU_MAP_INVALID = 1 << 1, 21 MMU_MAP_MASK = 0x03, 22 MMU_UNMAP_CLEAN = 1 << 2, 23 MMU_UNMAP_INVALID = 1 << 3, 24 MMU_UNMAP_MASK = 0x0c, 25 }; 26 27 int rga2_set_mmu_info(struct rga2_reg *reg, struct rga2_req *req); 28 void rga2_dma_flush_range(void *pstart, void *pend); 29 dma_addr_t rga2_dma_flush_page(struct page *page, int map); 30 31 int rga2_get_dma_info(struct rga2_reg *reg, struct rga2_req *req); 32 void rga2_put_dma_info(struct rga2_reg *reg); 33 34 #endif 35 36