File Index
Files and directories
Sign in
FILE

ipu3-mmu.h

File preview with syntax highlighting.

linux-6.19.14/drivers/staging/media/ipu3/ipu3-mmu.h C
 1/* SPDX-License-Identifier: GPL-2.0 */
 2/* Copyright (C) 2018 Intel Corporation */
 3/* Copyright 2018 Google LLC. */
 4
 5#ifndef __IPU3_MMU_H
 6#define __IPU3_MMU_H
 7
 8#define IPU3_PAGE_SHIFT		12
 9#define IPU3_PAGE_SIZE		(1UL << IPU3_PAGE_SHIFT)
10
11/**
12 * struct imgu_mmu_info - Describes mmu geometry
13 *
14 * @aperture_start:	First address that can be mapped
15 * @aperture_end:	Last address that can be mapped
16 */
17struct imgu_mmu_info {
18	dma_addr_t aperture_start;
19	dma_addr_t aperture_end;
20};
21
22struct device;
23struct scatterlist;
24
25struct imgu_mmu_info *imgu_mmu_init(struct device *parent, void __iomem *base);
26void imgu_mmu_exit(struct imgu_mmu_info *info);
27void imgu_mmu_suspend(struct imgu_mmu_info *info);
28void imgu_mmu_resume(struct imgu_mmu_info *info);
29
30int imgu_mmu_map(struct imgu_mmu_info *info, unsigned long iova,
31		 phys_addr_t paddr, size_t size);
32size_t imgu_mmu_unmap(struct imgu_mmu_info *info, unsigned long iova,
33		      size_t size);
34size_t imgu_mmu_map_sg(struct imgu_mmu_info *info, unsigned long iova,
35		       struct scatterlist *sg, unsigned int nents);
36#endif
~/ Read-only file preview.