|  | /* | 
|  | * Copyright 2011 Freescale Semiconductor, Inc. | 
|  | * Copyright 2011 Linaro Ltd. | 
|  | * | 
|  | * The code contained herein is licensed under the GNU General Public | 
|  | * License. You may obtain a copy of the GNU General Public License | 
|  | * Version 2 or later at the following locations: | 
|  | * | 
|  | * http://www.opensource.org/licenses/gpl-license.html | 
|  | * http://www.gnu.org/copyleft/gpl.html | 
|  | */ | 
|  |  | 
|  | #include <linux/init.h> | 
|  | #include <asm/page.h> | 
|  | #include <asm/sizes.h> | 
|  | #include <asm/mach/map.h> | 
|  | #include <mach/hardware.h> | 
|  |  | 
|  | static struct map_desc imx_lluart_desc = { | 
|  | #ifdef CONFIG_DEBUG_IMX6Q_UART2 | 
|  | .virtual	= MX6Q_IO_P2V(MX6Q_UART2_BASE_ADDR), | 
|  | .pfn		= __phys_to_pfn(MX6Q_UART2_BASE_ADDR), | 
|  | .length		= MX6Q_UART2_SIZE, | 
|  | .type		= MT_DEVICE, | 
|  | #endif | 
|  | #ifdef CONFIG_DEBUG_IMX6Q_UART4 | 
|  | .virtual	= MX6Q_IO_P2V(MX6Q_UART4_BASE_ADDR), | 
|  | .pfn		= __phys_to_pfn(MX6Q_UART4_BASE_ADDR), | 
|  | .length		= MX6Q_UART4_SIZE, | 
|  | .type		= MT_DEVICE, | 
|  | #endif | 
|  | }; | 
|  |  | 
|  | void __init imx_lluart_map_io(void) | 
|  | { | 
|  | if (imx_lluart_desc.virtual) | 
|  | iotable_init(&imx_lluart_desc, 1); | 
|  | } |