VisionFive2 Linux kernel

StarFive Tech Linux Kernel for VisionFive (JH7110) boards (mirror)

More than 9999 Commits   33 Branches   57 Tags
author: Stefano Stabellini <stefano.stabellini@xilinx.com> 2021-05-12 13:18:21 -0700 committer: Juergen Gross <jgross@suse.com> 2021-05-14 15:52:05 +0200 commit: cb6f6b3384d7825d2a43f2256c5200e3b3956fc8 parent: dbc03e81586fc33e4945263fd6e09e22eb4b980f
Commit Summary:
xen/arm: move xen_swiotlb_detect to arm/swiotlb-xen.h
Diffstat:
1 file changed, 13 insertions, 1 deletion
diff --git a/include/xen/arm/swiotlb-xen.h b/include/xen/arm/swiotlb-xen.h
index 2994fe6031a0..33336ab58afc 100644
--- a/include/xen/arm/swiotlb-xen.h
+++ b/include/xen/arm/swiotlb-xen.h
@@ -2,6 +2,19 @@
 #ifndef _ASM_ARM_SWIOTLB_XEN_H
 #define _ASM_ARM_SWIOTLB_XEN_H
 
-extern int xen_swiotlb_detect(void);
+#include <xen/features.h>
+#include <xen/xen.h>
+
+static inline int xen_swiotlb_detect(void)
+{
+	if (!xen_domain())
+		return 0;
+	if (xen_feature(XENFEAT_direct_mapped))
+		return 1;
+	/* legacy case */
+	if (!xen_feature(XENFEAT_not_direct_mapped) && xen_initial_domain())
+		return 1;
+	return 0;
+}
 
 #endif /* _ASM_ARM_SWIOTLB_XEN_H */