1 // SPDX-License-Identifier: GPL-2.0-or-later 2 /* 3 * Contains routines needed to support swiotlb for ppc. 4 * 5 * Copyright (C) 2009-2010 Freescale Semiconductor, Inc. 6 * Author: Becky Bruce 7 */ 8 #include <linux/memblock.h> 9 #include <asm/machdep.h> 10 #include <asm/swiotlb.h> 11 12 unsigned int ppc_swiotlb_enable; 13 unsigned int ppc_swiotlb_flags; 14 swiotlb_detect_4g(void)15void __init swiotlb_detect_4g(void) 16 { 17 if ((memblock_end_of_DRAM() - 1) > 0xffffffff) 18 ppc_swiotlb_enable = 1; 19 } 20 check_swiotlb_enabled(void)21static int __init check_swiotlb_enabled(void) 22 { 23 if (ppc_swiotlb_enable) 24 swiotlb_print_info(); 25 else 26 swiotlb_exit(); 27 28 return 0; 29 } 30 subsys_initcall(check_swiotlb_enabled); 31