diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2013-09-06 16:17:02 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2013-09-06 16:17:02 -0400 |
commit | d2f3e9eb7c9e12e89f0ac5f0dbc7a9aed0ea925d (patch) | |
tree | 0a764312ef38576d610ef844f3ef697a501b6afa | |
parent | 1bda20da20e5c64919efcb507a84e192deed1c60 (diff) | |
parent | 2bbc31ef2b398d17016c6438016cc76913990950 (diff) |
Merge tag 'fixes-nc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
Pull ARM SoC low-priority fixes from Olof Johansson:
"This branch contains a handful of fixes for various platforms that
weren't serious enough to be included in late 3.11-rc releases. Most
of them are for minor cleanups and cosmetic fixes.
There's also a bit of code removal here, one board file removal for
clps711x, and removal of some legacy device creation on OMAP2+"
* tag 'fixes-nc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (25 commits)
ARM: OMAP2: use 'int' instead of 'unsigned' for variable 'gpmc_irq_start'
ARM: OMAP2: remove useless variable 'ret'
ARM: OMAP: dma: fix error return code in omap_system_dma_probe()
ARM: OMAP2+: fix wrong address when loading PRM_FRAC_INCREMENTOR_DENUMERATOR_RELOAD
ARM: OMAP2+: am33xx-restart: trigger warm reset on omap2+ boards
ARM: OMAP2: Use a consistent AM33XX SoC option description
ARM: OMAP2+: Remove legacy device creation for McPDM and DMIC
ARM: clps711x: edb7211: Remove extra iotable_init() call
ARM: clps711x: autcpu12: Remove incorrect config checking
ARM: clps711x: Drop fortunet board support
ARM: clps711x: Remove the special name for the syscon driver
ARM: dts: Fix memory node in skeleton64.dtsi
ARM: Keystone: Convert device tree file to use IRQ defines
ARM: keystone: use #include to include skeleton.dtsi
ARM: keystone: Drop the un-necessary dsb from keystone_cpu_smc()
ARM: Keystone: No need to preserve r12 across smc call
ARM: keystone: remove redundant smp_init_cpus definition
ARM: keystone: drop useless HAVE_SCHED_CLOCK
ARM: dove: fix missing __init section of dove_mpp_gpio_mode
ARM: shmobile: armadillo800eva-reference: fix compiler warning
...
27 files changed, 83 insertions, 190 deletions
diff --git a/arch/arm/boot/compressed/head-shmobile.S b/arch/arm/boot/compressed/head-shmobile.S index e2d636336b7c..e7f80928949c 100644 --- a/arch/arm/boot/compressed/head-shmobile.S +++ b/arch/arm/boot/compressed/head-shmobile.S | |||
@@ -55,12 +55,47 @@ __tmp_stack: | |||
55 | __continue: | 55 | __continue: |
56 | #endif /* CONFIG_ZBOOT_ROM_MMC || CONFIG_ZBOOT_ROM_SH_MOBILE_SDHI */ | 56 | #endif /* CONFIG_ZBOOT_ROM_MMC || CONFIG_ZBOOT_ROM_SH_MOBILE_SDHI */ |
57 | 57 | ||
58 | /* Set board ID necessary for boot */ | 58 | adr r0, dtb_info |
59 | ldr r7, 1f @ Set machine type register | 59 | ldmia r0, {r1, r3, r4, r5, r7} |
60 | mov r8, #0 @ pass null pointer as atag | 60 | |
61 | sub r0, r0, r1 @ calculate the delta offset | ||
62 | add r5, r5, r0 @ _edata | ||
63 | |||
64 | ldr lr, [r5, #0] @ check if valid DTB is present | ||
65 | cmp lr, r3 | ||
66 | bne 0f | ||
67 | |||
68 | add r9, r7, #31 @ rounded up to a multiple | ||
69 | bic r9, r9, #31 @ ... of 32 bytes | ||
70 | |||
71 | add r6, r9, r5 @ copy from _edata | ||
72 | add r9, r9, r4 @ to MEMORY_START | ||
73 | |||
74 | 1: ldmdb r6!, {r0 - r3, r10 - r12, lr} | ||
75 | cmp r6, r5 | ||
76 | stmdb r9!, {r0 - r3, r10 - r12, lr} | ||
77 | bhi 1b | ||
78 | |||
79 | /* Success: Zero board ID, pointer to start of memory for atag/dtb */ | ||
80 | mov r7, #0 | ||
81 | mov r8, r4 | ||
61 | b 2f | 82 | b 2f |
62 | 83 | ||
63 | 1 : .long MACH_TYPE | 84 | .align 2 |
85 | dtb_info: | ||
86 | .word dtb_info | ||
87 | #ifndef __ARMEB__ | ||
88 | .word 0xedfe0dd0 @ sig is 0xd00dfeed big endian | ||
89 | #else | ||
90 | .word 0xd00dfeed | ||
91 | #endif | ||
92 | .word MEMORY_START | ||
93 | .word _edata | ||
94 | .word 0x4000 @ maximum DTB size | ||
95 | 0: | ||
96 | /* Failure: Zero board ID, NULL atag/dtb */ | ||
97 | mov r7, #0 | ||
98 | mov r8, #0 @ pass null pointer as atag | ||
64 | 2 : | 99 | 2 : |
65 | 100 | ||
66 | #endif /* CONFIG_ZBOOT_ROM */ | 101 | #endif /* CONFIG_ZBOOT_ROM */ |
diff --git a/arch/arm/boot/dts/keystone.dts b/arch/arm/boot/dts/keystone.dts index 1334b42c6b77..a68e34bbecb2 100644 --- a/arch/arm/boot/dts/keystone.dts +++ b/arch/arm/boot/dts/keystone.dts | |||
@@ -7,7 +7,9 @@ | |||
7 | */ | 7 | */ |
8 | 8 | ||
9 | /dts-v1/; | 9 | /dts-v1/; |
10 | /include/ "skeleton.dtsi" | 10 | #include <dt-bindings/interrupt-controller/arm-gic.h> |
11 | |||
12 | #include "skeleton.dtsi" | ||
11 | 13 | ||
12 | / { | 14 | / { |
13 | model = "Texas Instruments Keystone 2 SoC"; | 15 | model = "Texas Instruments Keystone 2 SoC"; |
@@ -67,18 +69,23 @@ | |||
67 | 69 | ||
68 | timer { | 70 | timer { |
69 | compatible = "arm,armv7-timer"; | 71 | compatible = "arm,armv7-timer"; |
70 | interrupts = <1 13 0xf08>, | 72 | interrupts = |
71 | <1 14 0xf08>, | 73 | <GIC_PPI 13 |
72 | <1 11 0xf08>, | 74 | (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, |
73 | <1 10 0x308>; | 75 | <GIC_PPI 14 |
76 | (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, | ||
77 | <GIC_PPI 11 | ||
78 | (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, | ||
79 | <GIC_PPI 10 | ||
80 | (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; | ||
74 | }; | 81 | }; |
75 | 82 | ||
76 | pmu { | 83 | pmu { |
77 | compatible = "arm,cortex-a15-pmu"; | 84 | compatible = "arm,cortex-a15-pmu"; |
78 | interrupts = <0 20 0xf01>, | 85 | interrupts = <GIC_SPI 20 IRQ_TYPE_EDGE_RISING>, |
79 | <0 21 0xf01>, | 86 | <GIC_SPI 21 IRQ_TYPE_EDGE_RISING>, |
80 | <0 22 0xf01>, | 87 | <GIC_SPI 22 IRQ_TYPE_EDGE_RISING>, |
81 | <0 23 0xf01>; | 88 | <GIC_SPI 23 IRQ_TYPE_EDGE_RISING>; |
82 | }; | 89 | }; |
83 | 90 | ||
84 | soc { | 91 | soc { |
@@ -100,7 +107,7 @@ | |||
100 | reg-io-width = <4>; | 107 | reg-io-width = <4>; |
101 | reg = <0x02530c00 0x100>; | 108 | reg = <0x02530c00 0x100>; |
102 | clock-frequency = <133120000>; | 109 | clock-frequency = <133120000>; |
103 | interrupts = <0 277 0xf01>; | 110 | interrupts = <GIC_SPI 277 IRQ_TYPE_EDGE_RISING>; |
104 | }; | 111 | }; |
105 | 112 | ||
106 | uart1: serial@02531000 { | 113 | uart1: serial@02531000 { |
@@ -110,7 +117,7 @@ | |||
110 | reg-io-width = <4>; | 117 | reg-io-width = <4>; |
111 | reg = <0x02531000 0x100>; | 118 | reg = <0x02531000 0x100>; |
112 | clock-frequency = <133120000>; | 119 | clock-frequency = <133120000>; |
113 | interrupts = <0 280 0xf01>; | 120 | interrupts = <GIC_SPI 280 IRQ_TYPE_EDGE_RISING>; |
114 | }; | 121 | }; |
115 | 122 | ||
116 | }; | 123 | }; |
diff --git a/arch/arm/boot/dts/skeleton64.dtsi b/arch/arm/boot/dts/skeleton64.dtsi index 15994158a998..b5d7f36f33de 100644 --- a/arch/arm/boot/dts/skeleton64.dtsi +++ b/arch/arm/boot/dts/skeleton64.dtsi | |||
@@ -9,5 +9,5 @@ | |||
9 | #size-cells = <2>; | 9 | #size-cells = <2>; |
10 | chosen { }; | 10 | chosen { }; |
11 | aliases { }; | 11 | aliases { }; |
12 | memory { device_type = "memory"; reg = <0 0>; }; | 12 | memory { device_type = "memory"; reg = <0 0 0 0>; }; |
13 | }; | 13 | }; |
diff --git a/arch/arm/mach-clps711x/Kconfig b/arch/arm/mach-clps711x/Kconfig index 01ad4d41e728..bea6295c8c59 100644 --- a/arch/arm/mach-clps711x/Kconfig +++ b/arch/arm/mach-clps711x/Kconfig | |||
@@ -33,9 +33,6 @@ config ARCH_P720T | |||
33 | Say Y here if you intend to run this kernel on the ARM Prospector | 33 | Say Y here if you intend to run this kernel on the ARM Prospector |
34 | 720T. | 34 | 720T. |
35 | 35 | ||
36 | config ARCH_FORTUNET | ||
37 | bool "FORTUNET" | ||
38 | |||
39 | config EP72XX_ROM_BOOT | 36 | config EP72XX_ROM_BOOT |
40 | bool "EP721x/EP731x ROM boot" | 37 | bool "EP721x/EP731x ROM boot" |
41 | help | 38 | help |
diff --git a/arch/arm/mach-clps711x/Makefile b/arch/arm/mach-clps711x/Makefile index f30ed2b496fb..f04151efd96a 100644 --- a/arch/arm/mach-clps711x/Makefile +++ b/arch/arm/mach-clps711x/Makefile | |||
@@ -10,5 +10,4 @@ obj-$(CONFIG_ARCH_AUTCPU12) += board-autcpu12.o | |||
10 | obj-$(CONFIG_ARCH_CDB89712) += board-cdb89712.o | 10 | obj-$(CONFIG_ARCH_CDB89712) += board-cdb89712.o |
11 | obj-$(CONFIG_ARCH_CLEP7312) += board-clep7312.o | 11 | obj-$(CONFIG_ARCH_CLEP7312) += board-clep7312.o |
12 | obj-$(CONFIG_ARCH_EDB7211) += board-edb7211.o | 12 | obj-$(CONFIG_ARCH_EDB7211) += board-edb7211.o |
13 | obj-$(CONFIG_ARCH_FORTUNET) += board-fortunet.o | ||
14 | obj-$(CONFIG_ARCH_P720T) += board-p720t.o | 13 | obj-$(CONFIG_ARCH_P720T) += board-p720t.o |
diff --git a/arch/arm/mach-clps711x/board-autcpu12.c b/arch/arm/mach-clps711x/board-autcpu12.c index 5867aebd8d0c..f8d71a89644a 100644 --- a/arch/arm/mach-clps711x/board-autcpu12.c +++ b/arch/arm/mach-clps711x/board-autcpu12.c | |||
@@ -259,11 +259,7 @@ static void __init autcpu12_init(void) | |||
259 | static void __init autcpu12_init_late(void) | 259 | static void __init autcpu12_init_late(void) |
260 | { | 260 | { |
261 | gpio_request_array(autcpu12_gpios, ARRAY_SIZE(autcpu12_gpios)); | 261 | gpio_request_array(autcpu12_gpios, ARRAY_SIZE(autcpu12_gpios)); |
262 | 262 | platform_device_register(&autcpu12_nand_pdev); | |
263 | if (IS_ENABLED(MTD_NAND_GPIO) && IS_ENABLED(GPIO_GENERIC_PLATFORM)) { | ||
264 | /* We are need both drivers to handle NAND */ | ||
265 | platform_device_register(&autcpu12_nand_pdev); | ||
266 | } | ||
267 | } | 263 | } |
268 | 264 | ||
269 | MACHINE_START(AUTCPU12, "autronix autcpu12") | 265 | MACHINE_START(AUTCPU12, "autronix autcpu12") |
diff --git a/arch/arm/mach-clps711x/board-edb7211.c b/arch/arm/mach-clps711x/board-edb7211.c index 9dfb990f0801..fe6184ead896 100644 --- a/arch/arm/mach-clps711x/board-edb7211.c +++ b/arch/arm/mach-clps711x/board-edb7211.c | |||
@@ -126,21 +126,6 @@ static struct gpio edb7211_gpios[] __initconst = { | |||
126 | { EDB7211_LCDBL, GPIOF_OUT_INIT_LOW, "LCD BACKLIGHT" }, | 126 | { EDB7211_LCDBL, GPIOF_OUT_INIT_LOW, "LCD BACKLIGHT" }, |
127 | }; | 127 | }; |
128 | 128 | ||
129 | static struct map_desc edb7211_io_desc[] __initdata = { | ||
130 | { /* Memory-mapped extra keyboard row */ | ||
131 | .virtual = IO_ADDRESS(EDB7211_EXTKBD_BASE), | ||
132 | .pfn = __phys_to_pfn(EDB7211_EXTKBD_BASE), | ||
133 | .length = SZ_1M, | ||
134 | .type = MT_DEVICE, | ||
135 | }, | ||
136 | }; | ||
137 | |||
138 | void __init edb7211_map_io(void) | ||
139 | { | ||
140 | clps711x_map_io(); | ||
141 | iotable_init(edb7211_io_desc, ARRAY_SIZE(edb7211_io_desc)); | ||
142 | } | ||
143 | |||
144 | /* Reserve screen memory region at the start of main system memory. */ | 129 | /* Reserve screen memory region at the start of main system memory. */ |
145 | static void __init edb7211_reserve(void) | 130 | static void __init edb7211_reserve(void) |
146 | { | 131 | { |
@@ -195,7 +180,7 @@ MACHINE_START(EDB7211, "CL-EDB7211 (EP7211 eval board)") | |||
195 | .nr_irqs = CLPS711X_NR_IRQS, | 180 | .nr_irqs = CLPS711X_NR_IRQS, |
196 | .fixup = fixup_edb7211, | 181 | .fixup = fixup_edb7211, |
197 | .reserve = edb7211_reserve, | 182 | .reserve = edb7211_reserve, |
198 | .map_io = edb7211_map_io, | 183 | .map_io = clps711x_map_io, |
199 | .init_early = clps711x_init_early, | 184 | .init_early = clps711x_init_early, |
200 | .init_irq = clps711x_init_irq, | 185 | .init_irq = clps711x_init_irq, |
201 | .init_time = clps711x_timer_init, | 186 | .init_time = clps711x_timer_init, |
diff --git a/arch/arm/mach-clps711x/board-fortunet.c b/arch/arm/mach-clps711x/board-fortunet.c deleted file mode 100644 index b1561e3d7c5c..000000000000 --- a/arch/arm/mach-clps711x/board-fortunet.c +++ /dev/null | |||
@@ -1,85 +0,0 @@ | |||
1 | /* | ||
2 | * linux/arch/arm/mach-clps711x/fortunet.c | ||
3 | * | ||
4 | * Derived from linux/arch/arm/mach-integrator/arch.c | ||
5 | * | ||
6 | * Copyright (C) 2000 Deep Blue Solutions Ltd | ||
7 | * | ||
8 | * This program is free software; you can redistribute it and/or modify | ||
9 | * it under the terms of the GNU General Public License as published by | ||
10 | * the Free Software Foundation; either version 2 of the License, or | ||
11 | * (at your option) any later version. | ||
12 | * | ||
13 | * This program is distributed in the hope that it will be useful, | ||
14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
16 | * GNU General Public License for more details. | ||
17 | * | ||
18 | * You should have received a copy of the GNU General Public License | ||
19 | * along with this program; if not, write to the Free Software | ||
20 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
21 | */ | ||
22 | #include <linux/types.h> | ||
23 | #include <linux/init.h> | ||
24 | #include <linux/initrd.h> | ||
25 | |||
26 | #include <mach/hardware.h> | ||
27 | #include <asm/setup.h> | ||
28 | #include <asm/mach-types.h> | ||
29 | |||
30 | #include <asm/mach/arch.h> | ||
31 | |||
32 | #include <asm/memory.h> | ||
33 | |||
34 | #include "common.h" | ||
35 | |||
36 | struct meminfo memmap = { | ||
37 | .nr_banks = 1, | ||
38 | .bank = { | ||
39 | { | ||
40 | .start = 0xC0000000, | ||
41 | .size = 0x01000000, | ||
42 | }, | ||
43 | }, | ||
44 | }; | ||
45 | |||
46 | typedef struct tag_IMAGE_PARAMS | ||
47 | { | ||
48 | int ramdisk_ok; | ||
49 | int ramdisk_address; | ||
50 | int ramdisk_size; | ||
51 | int ram_size; | ||
52 | int extra_param_type; | ||
53 | int extra_param_ptr; | ||
54 | int command_line; | ||
55 | } IMAGE_PARAMS; | ||
56 | |||
57 | #define IMAGE_PARAMS_PHYS 0xC01F0000 | ||
58 | |||
59 | static void __init | ||
60 | fortunet_fixup(struct tag *tags, char **cmdline, struct meminfo *mi) | ||
61 | { | ||
62 | IMAGE_PARAMS *ip = phys_to_virt(IMAGE_PARAMS_PHYS); | ||
63 | *cmdline = phys_to_virt(ip->command_line); | ||
64 | #ifdef CONFIG_BLK_DEV_INITRD | ||
65 | if(ip->ramdisk_ok) | ||
66 | { | ||
67 | initrd_start = __phys_to_virt(ip->ramdisk_address); | ||
68 | initrd_end = initrd_start + ip->ramdisk_size; | ||
69 | } | ||
70 | #endif | ||
71 | memmap.bank[0].size = ip->ram_size; | ||
72 | *mi = memmap; | ||
73 | } | ||
74 | |||
75 | MACHINE_START(FORTUNET, "ARM-FortuNet") | ||
76 | /* Maintainer: FortuNet Inc. */ | ||
77 | .nr_irqs = CLPS711X_NR_IRQS, | ||
78 | .fixup = fortunet_fixup, | ||
79 | .map_io = clps711x_map_io, | ||
80 | .init_early = clps711x_init_early, | ||
81 | .init_irq = clps711x_init_irq, | ||
82 | .init_time = clps711x_timer_init, | ||
83 | .handle_irq = clps711x_handle_irq, | ||
84 | .restart = clps711x_restart, | ||
85 | MACHINE_END | ||
diff --git a/arch/arm/mach-clps711x/devices.c b/arch/arm/mach-clps711x/devices.c index 856b81cf2f8a..fb77d1448fec 100644 --- a/arch/arm/mach-clps711x/devices.c +++ b/arch/arm/mach-clps711x/devices.c | |||
@@ -57,7 +57,7 @@ static void __init clps711x_add_syscon(void) | |||
57 | unsigned i; | 57 | unsigned i; |
58 | 58 | ||
59 | for (i = 0; i < ARRAY_SIZE(clps711x_syscon_res); i++) | 59 | for (i = 0; i < ARRAY_SIZE(clps711x_syscon_res); i++) |
60 | platform_device_register_simple("clps711x-syscon", i + 1, | 60 | platform_device_register_simple("syscon", i + 1, |
61 | &clps711x_syscon_res[i], 1); | 61 | &clps711x_syscon_res[i], 1); |
62 | } | 62 | } |
63 | 63 | ||
diff --git a/arch/arm/mach-dove/mpp.c b/arch/arm/mach-dove/mpp.c index 60bd729a1ba5..8a433a51289c 100644 --- a/arch/arm/mach-dove/mpp.c +++ b/arch/arm/mach-dove/mpp.c | |||
@@ -47,7 +47,7 @@ static const struct dove_mpp_grp dove_mpp_grp[] = { | |||
47 | 47 | ||
48 | /* Enable gpio for a range of pins. mode should be a combination of | 48 | /* Enable gpio for a range of pins. mode should be a combination of |
49 | GPIO_OUTPUT_OK | GPIO_INPUT_OK */ | 49 | GPIO_OUTPUT_OK | GPIO_INPUT_OK */ |
50 | static void dove_mpp_gpio_mode(int start, int end, int gpio_mode) | 50 | static void __init dove_mpp_gpio_mode(int start, int end, int gpio_mode) |
51 | { | 51 | { |
52 | int i; | 52 | int i; |
53 | 53 | ||
diff --git a/arch/arm/mach-keystone/Kconfig b/arch/arm/mach-keystone/Kconfig index 51a50e996840..366d1a3b418d 100644 --- a/arch/arm/mach-keystone/Kconfig +++ b/arch/arm/mach-keystone/Kconfig | |||
@@ -7,7 +7,6 @@ config ARCH_KEYSTONE | |||
7 | select HAVE_SMP | 7 | select HAVE_SMP |
8 | select CLKSRC_MMIO | 8 | select CLKSRC_MMIO |
9 | select GENERIC_CLOCKEVENTS | 9 | select GENERIC_CLOCKEVENTS |
10 | select HAVE_SCHED_CLOCK | ||
11 | select ARCH_WANT_OPTIONAL_GPIOLIB | 10 | select ARCH_WANT_OPTIONAL_GPIOLIB |
12 | select ARM_ERRATA_798181 if SMP | 11 | select ARM_ERRATA_798181 if SMP |
13 | help | 12 | help |
diff --git a/arch/arm/mach-keystone/platsmp.c b/arch/arm/mach-keystone/platsmp.c index 14378e3fef16..c12296157d4a 100644 --- a/arch/arm/mach-keystone/platsmp.c +++ b/arch/arm/mach-keystone/platsmp.c | |||
@@ -38,6 +38,5 @@ static int keystone_smp_boot_secondary(unsigned int cpu, | |||
38 | } | 38 | } |
39 | 39 | ||
40 | struct smp_operations keystone_smp_ops __initdata = { | 40 | struct smp_operations keystone_smp_ops __initdata = { |
41 | .smp_init_cpus = arm_dt_init_cpu_maps, | ||
42 | .smp_boot_secondary = keystone_smp_boot_secondary, | 41 | .smp_boot_secondary = keystone_smp_boot_secondary, |
43 | }; | 42 | }; |
diff --git a/arch/arm/mach-keystone/smc.S b/arch/arm/mach-keystone/smc.S index 9b9e4f7b241e..d15de8179fab 100644 --- a/arch/arm/mach-keystone/smc.S +++ b/arch/arm/mach-keystone/smc.S | |||
@@ -22,8 +22,7 @@ | |||
22 | * Return: Non zero value on failure | 22 | * Return: Non zero value on failure |
23 | */ | 23 | */ |
24 | ENTRY(keystone_cpu_smc) | 24 | ENTRY(keystone_cpu_smc) |
25 | stmfd sp!, {r4-r12, lr} | 25 | stmfd sp!, {r4-r11, lr} |
26 | smc #0 | 26 | smc #0 |
27 | dsb | 27 | ldmfd sp!, {r4-r11, pc} |
28 | ldmfd sp!, {r4-r12, pc} | ||
29 | ENDPROC(keystone_cpu_smc) | 28 | ENDPROC(keystone_cpu_smc) |
diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig index 3eed0006d189..3ed8acd42ecd 100644 --- a/arch/arm/mach-omap2/Kconfig +++ b/arch/arm/mach-omap2/Kconfig | |||
@@ -65,7 +65,7 @@ config SOC_OMAP5 | |||
65 | select ARM_ERRATA_798181 if SMP | 65 | select ARM_ERRATA_798181 if SMP |
66 | 66 | ||
67 | config SOC_AM33XX | 67 | config SOC_AM33XX |
68 | bool "AM33XX support" | 68 | bool "TI AM33XX" |
69 | depends on ARCH_MULTI_V7 | 69 | depends on ARCH_MULTI_V7 |
70 | select ARCH_OMAP2PLUS | 70 | select ARCH_OMAP2PLUS |
71 | select ARM_CPU_SUSPEND if PM | 71 | select ARM_CPU_SUSPEND if PM |
diff --git a/arch/arm/mach-omap2/am33xx-restart.c b/arch/arm/mach-omap2/am33xx-restart.c index 1eae96212315..c88d8df753c2 100644 --- a/arch/arm/mach-omap2/am33xx-restart.c +++ b/arch/arm/mach-omap2/am33xx-restart.c | |||
@@ -24,8 +24,8 @@ void am33xx_restart(enum reboot_mode mode, const char *cmd) | |||
24 | { | 24 | { |
25 | /* TODO: Handle mode and cmd if necessary */ | 25 | /* TODO: Handle mode and cmd if necessary */ |
26 | 26 | ||
27 | am33xx_prm_rmw_reg_bits(AM33XX_GLOBAL_WARM_SW_RST_MASK, | 27 | am33xx_prm_rmw_reg_bits(AM33XX_RST_GLOBAL_WARM_SW_MASK, |
28 | AM33XX_GLOBAL_WARM_SW_RST_MASK, | 28 | AM33XX_RST_GLOBAL_WARM_SW_MASK, |
29 | AM33XX_PRM_DEVICE_MOD, | 29 | AM33XX_PRM_DEVICE_MOD, |
30 | AM33XX_PRM_RSTCTRL_OFFSET); | 30 | AM33XX_PRM_RSTCTRL_OFFSET); |
31 | 31 | ||
diff --git a/arch/arm/mach-omap2/board-am3517crane.c b/arch/arm/mach-omap2/board-am3517crane.c index fc53911d0d13..0d499a1878f6 100644 --- a/arch/arm/mach-omap2/board-am3517crane.c +++ b/arch/arm/mach-omap2/board-am3517crane.c | |||
@@ -110,8 +110,6 @@ static void __init am3517_crane_i2c_init(void) | |||
110 | 110 | ||
111 | static void __init am3517_crane_init(void) | 111 | static void __init am3517_crane_init(void) |
112 | { | 112 | { |
113 | int ret; | ||
114 | |||
115 | omap3_mux_init(board_mux, OMAP_PACKAGE_CBB); | 113 | omap3_mux_init(board_mux, OMAP_PACKAGE_CBB); |
116 | omap_serial_init(); | 114 | omap_serial_init(); |
117 | omap_sdrc_init(NULL, NULL); | 115 | omap_sdrc_init(NULL, NULL); |
diff --git a/arch/arm/mach-omap2/devices.c b/arch/arm/mach-omap2/devices.c index 3c1279f27d1f..73ae7536a32b 100644 --- a/arch/arm/mach-omap2/devices.c +++ b/arch/arm/mach-omap2/devices.c | |||
@@ -327,44 +327,6 @@ static void omap_init_audio(void) | |||
327 | static inline void omap_init_audio(void) {} | 327 | static inline void omap_init_audio(void) {} |
328 | #endif | 328 | #endif |
329 | 329 | ||
330 | #if defined(CONFIG_SND_OMAP_SOC_MCPDM) || \ | ||
331 | defined(CONFIG_SND_OMAP_SOC_MCPDM_MODULE) | ||
332 | |||
333 | static void __init omap_init_mcpdm(void) | ||
334 | { | ||
335 | struct omap_hwmod *oh; | ||
336 | struct platform_device *pdev; | ||
337 | |||
338 | oh = omap_hwmod_lookup("mcpdm"); | ||
339 | if (!oh) | ||
340 | return; | ||
341 | |||
342 | pdev = omap_device_build("omap-mcpdm", -1, oh, NULL, 0); | ||
343 | WARN(IS_ERR(pdev), "Can't build omap_device for omap-mcpdm.\n"); | ||
344 | } | ||
345 | #else | ||
346 | static inline void omap_init_mcpdm(void) {} | ||
347 | #endif | ||
348 | |||
349 | #if defined(CONFIG_SND_OMAP_SOC_DMIC) || \ | ||
350 | defined(CONFIG_SND_OMAP_SOC_DMIC_MODULE) | ||
351 | |||
352 | static void __init omap_init_dmic(void) | ||
353 | { | ||
354 | struct omap_hwmod *oh; | ||
355 | struct platform_device *pdev; | ||
356 | |||
357 | oh = omap_hwmod_lookup("dmic"); | ||
358 | if (!oh) | ||
359 | return; | ||
360 | |||
361 | pdev = omap_device_build("omap-dmic", -1, oh, NULL, 0); | ||
362 | WARN(IS_ERR(pdev), "Can't build omap_device for omap-dmic.\n"); | ||
363 | } | ||
364 | #else | ||
365 | static inline void omap_init_dmic(void) {} | ||
366 | #endif | ||
367 | |||
368 | #if defined(CONFIG_SND_OMAP_SOC_OMAP_HDMI) || \ | 330 | #if defined(CONFIG_SND_OMAP_SOC_OMAP_HDMI) || \ |
369 | defined(CONFIG_SND_OMAP_SOC_OMAP_HDMI_MODULE) | 331 | defined(CONFIG_SND_OMAP_SOC_OMAP_HDMI_MODULE) |
370 | 332 | ||
@@ -565,8 +527,6 @@ static int __init omap2_init_devices(void) | |||
565 | omap_init_mbox(); | 527 | omap_init_mbox(); |
566 | /* If dtb is there, the devices will be created dynamically */ | 528 | /* If dtb is there, the devices will be created dynamically */ |
567 | if (!of_have_populated_dt()) { | 529 | if (!of_have_populated_dt()) { |
568 | omap_init_dmic(); | ||
569 | omap_init_mcpdm(); | ||
570 | omap_init_mcspi(); | 530 | omap_init_mcspi(); |
571 | omap_init_sham(); | 531 | omap_init_sham(); |
572 | omap_init_aes(); | 532 | omap_init_aes(); |
diff --git a/arch/arm/mach-omap2/gpmc.c b/arch/arm/mach-omap2/gpmc.c index f3fdd6afa213..9f4795aff48a 100644 --- a/arch/arm/mach-omap2/gpmc.c +++ b/arch/arm/mach-omap2/gpmc.c | |||
@@ -149,7 +149,7 @@ struct omap3_gpmc_regs { | |||
149 | 149 | ||
150 | static struct gpmc_client_irq gpmc_client_irq[GPMC_NR_IRQ]; | 150 | static struct gpmc_client_irq gpmc_client_irq[GPMC_NR_IRQ]; |
151 | static struct irq_chip gpmc_irq_chip; | 151 | static struct irq_chip gpmc_irq_chip; |
152 | static unsigned gpmc_irq_start; | 152 | static int gpmc_irq_start; |
153 | 153 | ||
154 | static struct resource gpmc_mem_root; | 154 | static struct resource gpmc_mem_root; |
155 | static struct resource gpmc_cs_mem[GPMC_CS_NUM]; | 155 | static struct resource gpmc_cs_mem[GPMC_CS_NUM]; |
diff --git a/arch/arm/mach-omap2/timer.c b/arch/arm/mach-omap2/timer.c index b37e1fcbad56..9265e031fa2f 100644 --- a/arch/arm/mach-omap2/timer.c +++ b/arch/arm/mach-omap2/timer.c | |||
@@ -537,7 +537,7 @@ static void __init realtime_counter_init(void) | |||
537 | reg |= num; | 537 | reg |= num; |
538 | __raw_writel(reg, base + INCREMENTER_NUMERATOR_OFFSET); | 538 | __raw_writel(reg, base + INCREMENTER_NUMERATOR_OFFSET); |
539 | 539 | ||
540 | reg = __raw_readl(base + INCREMENTER_NUMERATOR_OFFSET) & | 540 | reg = __raw_readl(base + INCREMENTER_DENUMERATOR_RELOAD_OFFSET) & |
541 | NUMERATOR_DENUMERATOR_MASK; | 541 | NUMERATOR_DENUMERATOR_MASK; |
542 | reg |= den; | 542 | reg |= den; |
543 | __raw_writel(reg, base + INCREMENTER_DENUMERATOR_RELOAD_OFFSET); | 543 | __raw_writel(reg, base + INCREMENTER_DENUMERATOR_RELOAD_OFFSET); |
diff --git a/arch/arm/mach-shmobile/board-armadillo800eva-reference.c b/arch/arm/mach-shmobile/board-armadillo800eva-reference.c index 03b85fec2ddb..8f677df2d4c4 100644 --- a/arch/arm/mach-shmobile/board-armadillo800eva-reference.c +++ b/arch/arm/mach-shmobile/board-armadillo800eva-reference.c | |||
@@ -190,10 +190,10 @@ static void __init eva_init(void) | |||
190 | } | 190 | } |
191 | 191 | ||
192 | #define RESCNT2 IOMEM(0xe6188020) | 192 | #define RESCNT2 IOMEM(0xe6188020) |
193 | static void eva_restart(char mode, const char *cmd) | 193 | static void eva_restart(enum reboot_mode mode, const char *cmd) |
194 | { | 194 | { |
195 | /* Do soft power on reset */ | 195 | /* Do soft power on reset */ |
196 | writel((1 << 31), RESCNT2); | 196 | writel(1 << 31, RESCNT2); |
197 | } | 197 | } |
198 | 198 | ||
199 | static const char *eva_boards_compat_dt[] __initdata = { | 199 | static const char *eva_boards_compat_dt[] __initdata = { |
diff --git a/arch/arm/mach-shmobile/clock-r8a7740.c b/arch/arm/mach-shmobile/clock-r8a7740.c index de10fd78bf2b..f4265e52432c 100644 --- a/arch/arm/mach-shmobile/clock-r8a7740.c +++ b/arch/arm/mach-shmobile/clock-r8a7740.c | |||
@@ -596,7 +596,7 @@ static struct clk_lookup lookups[] = { | |||
596 | CLKDEV_DEV_ID("e6bd0000.mmcif", &mstp_clks[MSTP312]), | 596 | CLKDEV_DEV_ID("e6bd0000.mmcif", &mstp_clks[MSTP312]), |
597 | CLKDEV_DEV_ID("r8a7740-gether", &mstp_clks[MSTP309]), | 597 | CLKDEV_DEV_ID("r8a7740-gether", &mstp_clks[MSTP309]), |
598 | CLKDEV_DEV_ID("e9a00000.sh-eth", &mstp_clks[MSTP309]), | 598 | CLKDEV_DEV_ID("e9a00000.sh-eth", &mstp_clks[MSTP309]), |
599 | CLKDEV_DEV_ID("renesas_tpu_pwm", &mstp_clks[MSTP304]), | 599 | CLKDEV_DEV_ID("renesas-tpu-pwm", &mstp_clks[MSTP304]), |
600 | 600 | ||
601 | CLKDEV_DEV_ID("sh_mobile_sdhi.2", &mstp_clks[MSTP415]), | 601 | CLKDEV_DEV_ID("sh_mobile_sdhi.2", &mstp_clks[MSTP415]), |
602 | CLKDEV_DEV_ID("e6870000.sdhi", &mstp_clks[MSTP415]), | 602 | CLKDEV_DEV_ID("e6870000.sdhi", &mstp_clks[MSTP415]), |
diff --git a/arch/arm/mach-shmobile/headsmp-scu.S b/arch/arm/mach-shmobile/headsmp-scu.S index bfd920083a3b..f45dde701d7b 100644 --- a/arch/arm/mach-shmobile/headsmp-scu.S +++ b/arch/arm/mach-shmobile/headsmp-scu.S | |||
@@ -37,13 +37,15 @@ ENTRY(shmobile_boot_scu) | |||
37 | lsl r1, r1, #3 @ we will shift by cpu_id * 8 bits | 37 | lsl r1, r1, #3 @ we will shift by cpu_id * 8 bits |
38 | ldr r2, [r0, #8] @ SCU Power Status Register | 38 | ldr r2, [r0, #8] @ SCU Power Status Register |
39 | mov r3, #3 | 39 | mov r3, #3 |
40 | bic r2, r2, r3, lsl r1 @ Clear bits of our CPU (Run Mode) | 40 | lsl r3, r3, r1 |
41 | bic r2, r2, r3 @ Clear bits of our CPU (Run Mode) | ||
41 | str r2, [r0, #8] @ write back | 42 | str r2, [r0, #8] @ write back |
42 | 43 | ||
43 | b shmobile_invalidate_start | 44 | b shmobile_invalidate_start |
44 | ENDPROC(shmobile_boot_scu) | 45 | ENDPROC(shmobile_boot_scu) |
45 | 46 | ||
46 | .text | 47 | .text |
48 | .align 2 | ||
47 | .globl shmobile_scu_base | 49 | .globl shmobile_scu_base |
48 | shmobile_scu_base: | 50 | shmobile_scu_base: |
49 | .space 4 | 51 | .space 4 |
diff --git a/arch/arm/mach-shmobile/headsmp.S b/arch/arm/mach-shmobile/headsmp.S index a9d212498987..2667db806c39 100644 --- a/arch/arm/mach-shmobile/headsmp.S +++ b/arch/arm/mach-shmobile/headsmp.S | |||
@@ -24,12 +24,16 @@ ENDPROC(shmobile_invalidate_start) | |||
24 | * This will be mapped at address 0 by SBAR register. | 24 | * This will be mapped at address 0 by SBAR register. |
25 | * We need _long_ jump to the physical address. | 25 | * We need _long_ jump to the physical address. |
26 | */ | 26 | */ |
27 | .arm | ||
27 | .align 12 | 28 | .align 12 |
28 | ENTRY(shmobile_boot_vector) | 29 | ENTRY(shmobile_boot_vector) |
29 | ldr r0, 2f | 30 | ldr r0, 2f |
30 | ldr pc, 1f | 31 | ldr r1, 1f |
32 | bx r1 | ||
33 | |||
31 | ENDPROC(shmobile_boot_vector) | 34 | ENDPROC(shmobile_boot_vector) |
32 | 35 | ||
36 | .align 2 | ||
33 | .globl shmobile_boot_fn | 37 | .globl shmobile_boot_fn |
34 | shmobile_boot_fn: | 38 | shmobile_boot_fn: |
35 | 1: .space 4 | 39 | 1: .space 4 |
diff --git a/arch/arm/mach-shmobile/include/mach/zboot.h b/arch/arm/mach-shmobile/include/mach/zboot.h index f2d8744c1f14..c3c4669a2d72 100644 --- a/arch/arm/mach-shmobile/include/mach/zboot.h +++ b/arch/arm/mach-shmobile/include/mach/zboot.h | |||
@@ -1,7 +1,6 @@ | |||
1 | #ifndef ZBOOT_H | 1 | #ifndef ZBOOT_H |
2 | #define ZBOOT_H | 2 | #define ZBOOT_H |
3 | 3 | ||
4 | #include <asm/mach-types.h> | ||
5 | #include <mach/zboot_macros.h> | 4 | #include <mach/zboot_macros.h> |
6 | 5 | ||
7 | /************************************************** | 6 | /************************************************** |
@@ -11,7 +10,6 @@ | |||
11 | **************************************************/ | 10 | **************************************************/ |
12 | 11 | ||
13 | #ifdef CONFIG_MACH_MACKEREL | 12 | #ifdef CONFIG_MACH_MACKEREL |
14 | #define MACH_TYPE MACH_TYPE_MACKEREL | ||
15 | #define MEMORY_START 0x40000000 | 13 | #define MEMORY_START 0x40000000 |
16 | #include "mach/head-mackerel.txt" | 14 | #include "mach/head-mackerel.txt" |
17 | #else | 15 | #else |
diff --git a/arch/arm/mach-shmobile/sleep-sh7372.S b/arch/arm/mach-shmobile/sleep-sh7372.S index 53f4840e4949..9782862899e8 100644 --- a/arch/arm/mach-shmobile/sleep-sh7372.S +++ b/arch/arm/mach-shmobile/sleep-sh7372.S | |||
@@ -41,6 +41,7 @@ | |||
41 | sh7372_resume_core_standby_sysc: | 41 | sh7372_resume_core_standby_sysc: |
42 | ldr pc, 1f | 42 | ldr pc, 1f |
43 | 43 | ||
44 | .align 2 | ||
44 | .globl sh7372_cpu_resume | 45 | .globl sh7372_cpu_resume |
45 | sh7372_cpu_resume: | 46 | sh7372_cpu_resume: |
46 | 1: .space 4 | 47 | 1: .space 4 |
@@ -96,6 +97,7 @@ sh7372_do_idle_sysc: | |||
96 | 1: | 97 | 1: |
97 | b 1b | 98 | b 1b |
98 | 99 | ||
100 | .align 2 | ||
99 | kernel_flush: | 101 | kernel_flush: |
100 | .word v7_flush_dcache_all | 102 | .word v7_flush_dcache_all |
101 | #endif | 103 | #endif |
diff --git a/arch/arm/plat-omap/dma.c b/arch/arm/plat-omap/dma.c index 4d463ca6821f..037660633fa4 100644 --- a/arch/arm/plat-omap/dma.c +++ b/arch/arm/plat-omap/dma.c | |||
@@ -2083,6 +2083,7 @@ static int omap_system_dma_probe(struct platform_device *pdev) | |||
2083 | dma_irq = platform_get_irq_byname(pdev, irq_name); | 2083 | dma_irq = platform_get_irq_byname(pdev, irq_name); |
2084 | if (dma_irq < 0) { | 2084 | if (dma_irq < 0) { |
2085 | dev_err(&pdev->dev, "failed: request IRQ %d", dma_irq); | 2085 | dev_err(&pdev->dev, "failed: request IRQ %d", dma_irq); |
2086 | ret = dma_irq; | ||
2086 | goto exit_dma_lch_fail; | 2087 | goto exit_dma_lch_fail; |
2087 | } | 2088 | } |
2088 | ret = setup_irq(dma_irq, &omap24xx_dma_irq); | 2089 | ret = setup_irq(dma_irq, &omap24xx_dma_irq); |
diff --git a/drivers/mfd/syscon.c b/drivers/mfd/syscon.c index 1a31512369f9..962a6e17a01a 100644 --- a/drivers/mfd/syscon.c +++ b/drivers/mfd/syscon.c | |||
@@ -159,9 +159,6 @@ static int syscon_probe(struct platform_device *pdev) | |||
159 | 159 | ||
160 | static const struct platform_device_id syscon_ids[] = { | 160 | static const struct platform_device_id syscon_ids[] = { |
161 | { "syscon", }, | 161 | { "syscon", }, |
162 | #ifdef CONFIG_ARCH_CLPS711X | ||
163 | { "clps711x-syscon", }, | ||
164 | #endif | ||
165 | { } | 162 | { } |
166 | }; | 163 | }; |
167 | 164 | ||