aboutsummaryrefslogtreecommitdiff
path: root/include/linux/sh_svp.h
diff options
context:
space:
mode:
authorMeizu OpenSource <patchwork@meizu.com>2016-08-15 10:19:42 +0800
committerMeizu OpenSource <patchwork@meizu.com>2016-08-15 10:19:42 +0800
commitd2e1446d81725c351dc73a03b397ce043fb18452 (patch)
tree4dbc616b7f92aea39cd697a9084205ddb805e344 /include/linux/sh_svp.h
first commit
Diffstat (limited to 'include/linux/sh_svp.h')
-rw-r--r--include/linux/sh_svp.h31
1 files changed, 31 insertions, 0 deletions
diff --git a/include/linux/sh_svp.h b/include/linux/sh_svp.h
new file mode 100644
index 000000000..76db34ac9
--- /dev/null
+++ b/include/linux/sh_svp.h
@@ -0,0 +1,31 @@
+#ifndef __SH_SVP_H__
+#define __SH_SVP_H__
+
+#if defined(CONFIG_CMA) && defined(CONFIG_MTK_SVP)
+int svp_region_offline(void);
+int svp_region_online(void);
+#else
+static inline int svp_region_offline(void) { return -ENOSYS; }
+static inline int svp_region_online(void) { return -ENOSYS; }
+#endif
+
+extern struct cma *svp_contiguous_default_area;
+
+#if defined(CONFIG_CMA) && defined(CONFIG_MTK_SVP)
+void svp_contiguous_reserve(phys_addr_t addr_limit);
+
+unsigned long get_svp_cma_basepfn(void);
+unsigned long get_svp_cma_count(void);
+
+int svp_migrate_range(unsigned long pfn);
+int svp_is_in_range(unsigned long pfn);
+
+#else
+static inline void svp_contiguous_reserve(phys_addr_t limit) { }
+static inline unsigned long get_svp_cma_basepfn(void) { return 0; }
+static inline long get_svp_cma_count(void) { return 0; }
+static inline int svp_migrate_range(unsigned long pfn) { return 0; }
+static inline int svp_is_in_range(unsigned long pfn) { return 0; }
+#endif
+
+#endif