21 lines
		
	
	
		
			431 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			21 lines
		
	
	
		
			431 B
		
	
	
	
		
			C
		
	
	
	
	
	
| /* SPDX-License-Identifier: GPL-2.0 */
 | |
| #ifndef _ASM_ARM_SWIOTLB_XEN_H
 | |
| #define _ASM_ARM_SWIOTLB_XEN_H
 | |
| 
 | |
| #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 */
 |