Gregory Bean | d2e753b | 2010-04-30 21:33:38 -0700 | [diff] [blame] | 1 | /* |
Russell King | a09e64f | 2008-08-05 16:14:15 +0100 | [diff] [blame] | 2 | * Copyright (C) 2007 Google, Inc. |
David Brown | 8c27e6f | 2011-01-07 10:20:49 -0800 | [diff] [blame] | 3 | * Copyright (c) 2008-2011, Code Aurora Forum. All rights reserved. |
Russell King | a09e64f | 2008-08-05 16:14:15 +0100 | [diff] [blame] | 4 | * Author: Brian Swetland <swetland@google.com> |
| 5 | * |
| 6 | * This software is licensed under the terms of the GNU General Public |
| 7 | * License version 2, as published by the Free Software Foundation, and |
| 8 | * may be copied, distributed, and modified under those terms. |
| 9 | * |
| 10 | * This program is distributed in the hope that it will be useful, |
| 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| 13 | * GNU General Public License for more details. |
| 14 | * |
| 15 | * |
| 16 | * The MSM peripherals are spread all over across 768MB of physical |
| 17 | * space, which makes just having a simple IO_ADDRESS macro to slide |
| 18 | * them into the right virtual location rough. Instead, we will |
| 19 | * provide a master phys->virt mapping for peripherals here. |
| 20 | * |
| 21 | */ |
| 22 | |
| 23 | #ifndef __ASM_ARCH_MSM_IOMAP_H |
| 24 | #define __ASM_ARCH_MSM_IOMAP_H |
| 25 | |
| 26 | #include <asm/sizes.h> |
| 27 | |
| 28 | /* Physical base address and size of peripherals. |
| 29 | * Ordered by the virtual base addresses they will be mapped at. |
| 30 | * |
| 31 | * MSM_VIC_BASE must be an value that can be loaded via a "mov" |
| 32 | * instruction, otherwise entry-macro.S will not compile. |
| 33 | * |
| 34 | * If you add or remove entries here, you'll want to edit the |
| 35 | * msm_io_desc array in arch/arm/mach-msm/io.c to reflect your |
| 36 | * changes. |
| 37 | * |
| 38 | */ |
| 39 | |
Daniel Walker | 184d252 | 2010-05-05 07:08:13 -0700 | [diff] [blame] | 40 | #if defined(CONFIG_ARCH_MSM7X30) |
| 41 | #include "msm_iomap-7x30.h" |
| 42 | #elif defined(CONFIG_ARCH_QSD8X50) |
Daniel Walker | eb61bf8 | 2010-05-05 07:03:55 -0700 | [diff] [blame] | 43 | #include "msm_iomap-8x50.h" |
Gregory Bean | 1963a2a | 2010-08-28 10:05:44 -0700 | [diff] [blame] | 44 | #elif defined(CONFIG_ARCH_MSM8X60) |
| 45 | #include "msm_iomap-8x60.h" |
Daniel Walker | eb61bf8 | 2010-05-05 07:03:55 -0700 | [diff] [blame] | 46 | #else |
Gregory Bean | d2e753b | 2010-04-30 21:33:38 -0700 | [diff] [blame] | 47 | #include "msm_iomap-7x00.h" |
Daniel Walker | eb61bf8 | 2010-05-05 07:03:55 -0700 | [diff] [blame] | 48 | #endif |
Dima Zavin | b42dc44 | 2010-01-29 11:43:42 -0800 | [diff] [blame] | 49 | |
Stepan Moskovchenko | 5d0afd7 | 2010-12-01 19:05:49 -0800 | [diff] [blame] | 50 | #include "msm_iomap-8960.h" |
| 51 | |
Stephen Boyd | 650e3f0 | 2011-11-08 10:33:03 -0800 | [diff] [blame] | 52 | #define MSM_DEBUG_UART_SIZE SZ_4K |
| 53 | #if defined(CONFIG_DEBUG_MSM_UART1) |
| 54 | #define MSM_DEBUG_UART_BASE 0xE1000000 |
| 55 | #define MSM_DEBUG_UART_PHYS MSM_UART1_PHYS |
| 56 | #elif defined(CONFIG_DEBUG_MSM_UART2) |
| 57 | #define MSM_DEBUG_UART_BASE 0xE1000000 |
| 58 | #define MSM_DEBUG_UART_PHYS MSM_UART2_PHYS |
| 59 | #elif defined(CONFIG_DEBUG_MSM_UART3) |
| 60 | #define MSM_DEBUG_UART_BASE 0xE1000000 |
| 61 | #define MSM_DEBUG_UART_PHYS MSM_UART3_PHYS |
| 62 | #endif |
| 63 | |
Justin P. Mattock | 70f23fd | 2011-05-10 10:16:21 +0200 | [diff] [blame] | 64 | /* Virtual addresses shared across all MSM targets. */ |
David Brown | 8c27e6f | 2011-01-07 10:20:49 -0800 | [diff] [blame] | 65 | #define MSM_CSR_BASE IOMEM(0xE0001000) |
David Brown | 8bb0644 | 2011-01-04 11:02:59 -0800 | [diff] [blame] | 66 | #define MSM_QGIC_DIST_BASE IOMEM(0xF0000000) |
| 67 | #define MSM_QGIC_CPU_BASE IOMEM(0xF0001000) |
David Brown | 8c27e6f | 2011-01-07 10:20:49 -0800 | [diff] [blame] | 68 | #define MSM_TMR_BASE IOMEM(0xF0200000) |
| 69 | #define MSM_TMR0_BASE IOMEM(0xF0201000) |
David Brown | 03db072 | 2011-05-12 00:54:36 -0700 | [diff] [blame] | 70 | #define MSM_GPIO1_BASE IOMEM(0xE0003000) |
| 71 | #define MSM_GPIO2_BASE IOMEM(0xE0004000) |
Steve Muckle | 6cf6dfe | 2010-01-06 14:55:24 -0800 | [diff] [blame] | 72 | |
Russell King | a09e64f | 2008-08-05 16:14:15 +0100 | [diff] [blame] | 73 | #endif |