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 14 void __init swiotlb_detect_4g(void) 15 { 16 if ((memblock_end_of_DRAM() - 1) > 0xffffffff) 17 ppc_swiotlb_enable = 1; 18 } 19 20 static int __init check_swiotlb_enabled(void) 21 { 22 if (ppc_swiotlb_enable) 23 swiotlb_print_info(); 24 else 25 swiotlb_exit(); 26 27 return 0; 28 } 29 subsys_initcall(check_swiotlb_enabled); 30