xref: /openbmc/linux/drivers/gpu/drm/i915/i915_mm.h (revision dd21bfa4)
1 /* SPDX-License-Identifier: MIT */
2 /*
3  * Copyright © 2021 Intel Corporation
4  */
5 
6 #ifndef __I915_MM_H__
7 #define __I915_MM_H__
8 
9 #include <linux/bug.h>
10 #include <linux/types.h>
11 
12 struct vm_area_struct;
13 struct io_mapping;
14 struct scatterlist;
15 
16 #if IS_ENABLED(CONFIG_X86)
17 int remap_io_mapping(struct vm_area_struct *vma,
18 		     unsigned long addr, unsigned long pfn, unsigned long size,
19 		     struct io_mapping *iomap);
20 #else
21 static inline
22 int remap_io_mapping(struct vm_area_struct *vma,
23 		     unsigned long addr, unsigned long pfn, unsigned long size,
24 		     struct io_mapping *iomap)
25 {
26 	pr_err("Architecture has no %s() and shouldn't be calling this function\n", __func__);
27 	WARN_ON_ONCE(1);
28 	return 0;
29 }
30 #endif
31 
32 int remap_io_sg(struct vm_area_struct *vma,
33 		unsigned long addr, unsigned long size,
34 		struct scatterlist *sgl, resource_size_t iobase);
35 
36 #endif /* __I915_MM_H__ */
37