diff options
| -rw-r--r-- | arch/arm/mach-msm/Kconfig | 13 | ||||
| -rw-r--r-- | arch/arm/mach-msm/Makefile | 1 | ||||
| -rw-r--r-- | arch/arm/mach-msm/board-msm8960.c | 110 | ||||
| -rw-r--r-- | arch/arm/mach-msm/common.h | 1 | ||||
| -rw-r--r-- | arch/arm/mach-msm/devices-msm8960.c | 85 | ||||
| -rw-r--r-- | arch/arm/mach-msm/timer.c | 13 |
6 files changed, 0 insertions, 223 deletions
diff --git a/arch/arm/mach-msm/Kconfig b/arch/arm/mach-msm/Kconfig index 2e5a27ecbdce..b2740c800e8c 100644 --- a/arch/arm/mach-msm/Kconfig +++ b/arch/arm/mach-msm/Kconfig | |||
| @@ -50,7 +50,6 @@ config ARCH_MSM8X60 | |||
| 50 | config ARCH_MSM8960 | 50 | config ARCH_MSM8960 |
| 51 | bool "MSM8960" | 51 | bool "MSM8960" |
| 52 | select ARCH_MSM_SCORPIONMP | 52 | select ARCH_MSM_SCORPIONMP |
| 53 | select MACH_MSM8960_SIM if (!MACH_MSM8960_RUMI3) | ||
| 54 | select ARM_GIC | 53 | select ARM_GIC |
| 55 | select CPU_V7 | 54 | select CPU_V7 |
| 56 | select MSM_V2_TLMM | 55 | select MSM_V2_TLMM |
| @@ -112,18 +111,6 @@ config MACH_QSD8X50A_ST1_5 | |||
| 112 | help | 111 | help |
| 113 | Support for the Qualcomm ST1.5. | 112 | Support for the Qualcomm ST1.5. |
| 114 | 113 | ||
| 115 | config MACH_MSM8960_SIM | ||
| 116 | depends on ARCH_MSM8960 | ||
| 117 | bool "MSM8960 Simulator" | ||
| 118 | help | ||
| 119 | Support for the Qualcomm MSM8960 simulator. | ||
| 120 | |||
| 121 | config MACH_MSM8960_RUMI3 | ||
| 122 | depends on ARCH_MSM8960 | ||
| 123 | bool "MSM8960 RUMI3" | ||
| 124 | help | ||
| 125 | Support for the Qualcomm MSM8960 RUMI3 emulator. | ||
| 126 | |||
| 127 | endmenu | 114 | endmenu |
| 128 | 115 | ||
| 129 | config MSM_SMD_PKG3 | 116 | config MSM_SMD_PKG3 |
diff --git a/arch/arm/mach-msm/Makefile b/arch/arm/mach-msm/Makefile index bc2a3cc8ab8d..c7720cf53f38 100644 --- a/arch/arm/mach-msm/Makefile +++ b/arch/arm/mach-msm/Makefile | |||
| @@ -26,7 +26,6 @@ obj-$(CONFIG_MACH_HALIBUT) += board-halibut.o devices-msm7x00.o | |||
| 26 | obj-$(CONFIG_ARCH_MSM7X30) += board-msm7x30.o devices-msm7x30.o | 26 | obj-$(CONFIG_ARCH_MSM7X30) += board-msm7x30.o devices-msm7x30.o |
| 27 | obj-$(CONFIG_ARCH_QSD8X50) += board-qsd8x50.o devices-qsd8x50.o | 27 | obj-$(CONFIG_ARCH_QSD8X50) += board-qsd8x50.o devices-qsd8x50.o |
| 28 | obj-$(CONFIG_ARCH_MSM8X60) += board-dt-8660.o | 28 | obj-$(CONFIG_ARCH_MSM8X60) += board-dt-8660.o |
| 29 | obj-$(CONFIG_ARCH_MSM8960) += board-msm8960.o devices-msm8960.o | ||
| 30 | obj-$(CONFIG_ARCH_MSM8960) += board-dt-8960.o | 29 | obj-$(CONFIG_ARCH_MSM8960) += board-dt-8960.o |
| 31 | 30 | ||
| 32 | obj-$(CONFIG_ARCH_MSM7X30) += gpiomux-v1.o gpiomux.o | 31 | obj-$(CONFIG_ARCH_MSM7X30) += gpiomux-v1.o gpiomux.o |
diff --git a/arch/arm/mach-msm/board-msm8960.c b/arch/arm/mach-msm/board-msm8960.c deleted file mode 100644 index fafead236311..000000000000 --- a/arch/arm/mach-msm/board-msm8960.c +++ /dev/null | |||
| @@ -1,110 +0,0 @@ | |||
| 1 | /* Copyright (c) 2011, Code Aurora Forum. All rights reserved. | ||
| 2 | * | ||
| 3 | * This program is free software; you can redistribute it and/or modify | ||
| 4 | * it under the terms of the GNU General Public License version 2 and | ||
| 5 | * only version 2 as published by the Free Software Foundation. | ||
| 6 | * | ||
| 7 | * This program is distributed in the hope that it will be useful, | ||
| 8 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 9 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 10 | * GNU General Public License for more details. | ||
| 11 | * | ||
| 12 | * You should have received a copy of the GNU General Public License | ||
| 13 | * along with this program; if not, write to the Free Software | ||
| 14 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA | ||
| 15 | * 02110-1301, USA. | ||
| 16 | * | ||
| 17 | */ | ||
| 18 | #include <linux/kernel.h> | ||
| 19 | #include <linux/platform_device.h> | ||
| 20 | #include <linux/io.h> | ||
| 21 | #include <linux/irq.h> | ||
| 22 | #include <linux/clkdev.h> | ||
| 23 | #include <linux/memblock.h> | ||
| 24 | |||
| 25 | #include <asm/mach-types.h> | ||
| 26 | #include <asm/mach/arch.h> | ||
| 27 | #include <asm/hardware/gic.h> | ||
| 28 | #include <asm/setup.h> | ||
| 29 | |||
| 30 | #include <mach/board.h> | ||
| 31 | #include <mach/msm_iomap.h> | ||
| 32 | |||
| 33 | #include "devices.h" | ||
| 34 | #include "common.h" | ||
| 35 | |||
| 36 | static void __init msm8960_fixup(struct tag *tag, char **cmdline, | ||
| 37 | struct meminfo *mi) | ||
| 38 | { | ||
| 39 | for (; tag->hdr.size; tag = tag_next(tag)) | ||
| 40 | if (tag->hdr.tag == ATAG_MEM && | ||
| 41 | tag->u.mem.start == 0x40200000) { | ||
| 42 | tag->u.mem.start = 0x40000000; | ||
| 43 | tag->u.mem.size += SZ_2M; | ||
| 44 | } | ||
| 45 | } | ||
| 46 | |||
| 47 | static void __init msm8960_reserve(void) | ||
| 48 | { | ||
| 49 | memblock_remove(0x40000000, SZ_2M); | ||
| 50 | } | ||
| 51 | |||
| 52 | static void __init msm8960_map_io(void) | ||
| 53 | { | ||
| 54 | msm_map_msm8960_io(); | ||
| 55 | } | ||
| 56 | |||
| 57 | static void __init msm8960_init_irq(void) | ||
| 58 | { | ||
| 59 | gic_init(0, GIC_PPI_START, MSM_QGIC_DIST_BASE, | ||
| 60 | (void *)MSM_QGIC_CPU_BASE); | ||
| 61 | |||
| 62 | if (machine_is_msm8960_rumi3()) | ||
| 63 | writel(0x0000FFFF, MSM_QGIC_DIST_BASE + GIC_DIST_ENABLE_SET); | ||
| 64 | } | ||
| 65 | |||
| 66 | static struct platform_device *sim_devices[] __initdata = { | ||
| 67 | &msm8960_device_uart_gsbi2, | ||
| 68 | }; | ||
| 69 | |||
| 70 | static struct platform_device *rumi3_devices[] __initdata = { | ||
| 71 | &msm8960_device_uart_gsbi5, | ||
| 72 | }; | ||
| 73 | |||
| 74 | static void __init msm8960_sim_init(void) | ||
| 75 | { | ||
| 76 | platform_add_devices(sim_devices, ARRAY_SIZE(sim_devices)); | ||
| 77 | } | ||
| 78 | |||
| 79 | static void __init msm8960_rumi3_init(void) | ||
| 80 | { | ||
| 81 | platform_add_devices(rumi3_devices, ARRAY_SIZE(rumi3_devices)); | ||
| 82 | } | ||
| 83 | |||
| 84 | static void __init msm8960_init_late(void) | ||
| 85 | { | ||
| 86 | smd_debugfs_init(); | ||
| 87 | } | ||
| 88 | |||
| 89 | MACHINE_START(MSM8960_SIM, "QCT MSM8960 SIMULATOR") | ||
| 90 | .fixup = msm8960_fixup, | ||
| 91 | .reserve = msm8960_reserve, | ||
| 92 | .map_io = msm8960_map_io, | ||
| 93 | .init_irq = msm8960_init_irq, | ||
| 94 | .timer = &msm8960_timer, | ||
| 95 | .handle_irq = gic_handle_irq, | ||
| 96 | .init_machine = msm8960_sim_init, | ||
| 97 | .init_late = msm8960_init_late, | ||
| 98 | MACHINE_END | ||
| 99 | |||
| 100 | MACHINE_START(MSM8960_RUMI3, "QCT MSM8960 RUMI3") | ||
| 101 | .fixup = msm8960_fixup, | ||
| 102 | .reserve = msm8960_reserve, | ||
| 103 | .map_io = msm8960_map_io, | ||
| 104 | .init_irq = msm8960_init_irq, | ||
| 105 | .timer = &msm8960_timer, | ||
| 106 | .handle_irq = gic_handle_irq, | ||
| 107 | .init_machine = msm8960_rumi3_init, | ||
| 108 | .init_late = msm8960_init_late, | ||
| 109 | MACHINE_END | ||
| 110 | |||
diff --git a/arch/arm/mach-msm/common.h b/arch/arm/mach-msm/common.h index 9975575a81b9..d68e5d7854f5 100644 --- a/arch/arm/mach-msm/common.h +++ b/arch/arm/mach-msm/common.h | |||
| @@ -14,7 +14,6 @@ | |||
| 14 | 14 | ||
| 15 | extern struct sys_timer msm7x01_timer; | 15 | extern struct sys_timer msm7x01_timer; |
| 16 | extern struct sys_timer msm7x30_timer; | 16 | extern struct sys_timer msm7x30_timer; |
| 17 | extern struct sys_timer msm8960_timer; | ||
| 18 | extern struct sys_timer msm_dt_timer; | 17 | extern struct sys_timer msm_dt_timer; |
| 19 | extern struct sys_timer qsd8x50_timer; | 18 | extern struct sys_timer qsd8x50_timer; |
| 20 | 19 | ||
diff --git a/arch/arm/mach-msm/devices-msm8960.c b/arch/arm/mach-msm/devices-msm8960.c deleted file mode 100644 index d9e1f26475de..000000000000 --- a/arch/arm/mach-msm/devices-msm8960.c +++ /dev/null | |||
| @@ -1,85 +0,0 @@ | |||
| 1 | /* Copyright (c) 2011, Code Aurora Forum. All rights reserved. | ||
| 2 | * | ||
| 3 | * This program is free software; you can redistribute it and/or modify | ||
| 4 | * it under the terms of the GNU General Public License version 2 and | ||
| 5 | * only version 2 as published by the Free Software Foundation. | ||
| 6 | * | ||
| 7 | * This program is distributed in the hope that it will be useful, | ||
| 8 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 9 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 10 | * GNU General Public License for more details. | ||
| 11 | * | ||
| 12 | * You should have received a copy of the GNU General Public License | ||
| 13 | * along with this program; if not, write to the Free Software | ||
| 14 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA | ||
| 15 | * 02110-1301, USA. | ||
| 16 | */ | ||
| 17 | |||
| 18 | #include <linux/kernel.h> | ||
| 19 | #include <linux/platform_device.h> | ||
| 20 | |||
| 21 | #include <linux/dma-mapping.h> | ||
| 22 | #include <mach/irqs-8960.h> | ||
| 23 | #include <mach/board.h> | ||
| 24 | |||
| 25 | #include "devices.h" | ||
| 26 | |||
| 27 | #define MSM_GSBI2_PHYS 0x16100000 | ||
| 28 | #define MSM_UART2DM_PHYS (MSM_GSBI2_PHYS + 0x40000) | ||
| 29 | |||
| 30 | #define MSM_GSBI5_PHYS 0x16400000 | ||
| 31 | #define MSM_UART5DM_PHYS (MSM_GSBI5_PHYS + 0x40000) | ||
| 32 | |||
| 33 | static struct resource resources_uart_gsbi2[] = { | ||
| 34 | { | ||
| 35 | .start = GSBI2_UARTDM_IRQ, | ||
| 36 | .end = GSBI2_UARTDM_IRQ, | ||
| 37 | .flags = IORESOURCE_IRQ, | ||
| 38 | }, | ||
| 39 | { | ||
| 40 | .start = MSM_UART2DM_PHYS, | ||
| 41 | .end = MSM_UART2DM_PHYS + PAGE_SIZE - 1, | ||
| 42 | .name = "uart_resource", | ||
| 43 | .flags = IORESOURCE_MEM, | ||
| 44 | }, | ||
| 45 | { | ||
| 46 | .start = MSM_GSBI2_PHYS, | ||
| 47 | .end = MSM_GSBI2_PHYS + PAGE_SIZE - 1, | ||
| 48 | .name = "gsbi_resource", | ||
| 49 | .flags = IORESOURCE_MEM, | ||
| 50 | }, | ||
| 51 | }; | ||
| 52 | |||
| 53 | struct platform_device msm8960_device_uart_gsbi2 = { | ||
| 54 | .name = "msm_serial", | ||
| 55 | .id = 0, | ||
| 56 | .num_resources = ARRAY_SIZE(resources_uart_gsbi2), | ||
| 57 | .resource = resources_uart_gsbi2, | ||
| 58 | }; | ||
| 59 | |||
| 60 | static struct resource resources_uart_gsbi5[] = { | ||
| 61 | { | ||
| 62 | .start = GSBI5_UARTDM_IRQ, | ||
| 63 | .end = GSBI5_UARTDM_IRQ, | ||
| 64 | .flags = IORESOURCE_IRQ, | ||
| 65 | }, | ||
| 66 | { | ||
| 67 | .start = MSM_UART5DM_PHYS, | ||
| 68 | .end = MSM_UART5DM_PHYS + PAGE_SIZE - 1, | ||
| 69 | .name = "uart_resource", | ||
| 70 | .flags = IORESOURCE_MEM, | ||
| 71 | }, | ||
| 72 | { | ||
| 73 | .start = MSM_GSBI5_PHYS, | ||
| 74 | .end = MSM_GSBI5_PHYS + PAGE_SIZE - 1, | ||
| 75 | .name = "gsbi_resource", | ||
| 76 | .flags = IORESOURCE_MEM, | ||
| 77 | }, | ||
| 78 | }; | ||
| 79 | |||
| 80 | struct platform_device msm8960_device_uart_gsbi5 = { | ||
| 81 | .name = "msm_serial", | ||
| 82 | .id = 0, | ||
| 83 | .num_resources = ARRAY_SIZE(resources_uart_gsbi5), | ||
| 84 | .resource = resources_uart_gsbi5, | ||
| 85 | }; | ||
diff --git a/arch/arm/mach-msm/timer.c b/arch/arm/mach-msm/timer.c index 27ade4f1ee16..7a49195f7a92 100644 --- a/arch/arm/mach-msm/timer.c +++ b/arch/arm/mach-msm/timer.c | |||
| @@ -37,7 +37,6 @@ | |||
| 37 | #define TIMER_ENABLE_CLR_ON_MATCH_EN BIT(1) | 37 | #define TIMER_ENABLE_CLR_ON_MATCH_EN BIT(1) |
| 38 | #define TIMER_ENABLE_EN BIT(0) | 38 | #define TIMER_ENABLE_EN BIT(0) |
| 39 | #define TIMER_CLEAR 0x000C | 39 | #define TIMER_CLEAR 0x000C |
| 40 | #define DGT_CLK_CTL 0x0030 | ||
| 41 | #define DGT_CLK_CTL_DIV_4 0x3 | 40 | #define DGT_CLK_CTL_DIV_4 0x3 |
| 42 | 41 | ||
| 43 | #define GPT_HZ 32768 | 42 | #define GPT_HZ 32768 |
| @@ -346,18 +345,6 @@ struct sys_timer msm7x30_timer = { | |||
| 346 | .init = msm7x30_timer_init | 345 | .init = msm7x30_timer_init |
| 347 | }; | 346 | }; |
| 348 | 347 | ||
| 349 | static void __init msm8960_timer_init(void) | ||
| 350 | { | ||
| 351 | if (msm_timer_map(0x0200A004, 0x0208A024)) | ||
| 352 | return; | ||
| 353 | writel_relaxed(DGT_CLK_CTL_DIV_4, event_base + DGT_CLK_CTL); | ||
| 354 | msm_timer_init(27000000 / 4, 32, 17, true); | ||
| 355 | } | ||
| 356 | |||
| 357 | struct sys_timer msm8960_timer = { | ||
| 358 | .init = msm8960_timer_init | ||
| 359 | }; | ||
| 360 | |||
| 361 | static void __init qsd8x50_timer_init(void) | 348 | static void __init qsd8x50_timer_init(void) |
| 362 | { | 349 | { |
| 363 | if (msm_timer_map(0xAC100000, 0xAC100010)) | 350 | if (msm_timer_map(0xAC100000, 0xAC100010)) |
