aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-rockchip
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2015-06-26 14:08:27 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2015-06-26 14:08:27 -0400
commitc11d716218910c3aa2bac1bb641e6086ad649555 (patch)
tree13c9ea4c82360ab6150432c219430e6bc7e8bc18 /arch/arm/mach-rockchip
parent47a469421d792dcb91a1e73319d26134241953d2 (diff)
parente75ea4569d6d1d10935d74ff80bad52dc09bd062 (diff)
Merge tag 'armsoc-cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
Pull ARM SoC cleanups from Kevin Hilman: "A relatively small setup of cleanups this time around, and similar to last time the bulk of it is removal of legacy board support: - OMAP: removal of legacy (non-DT) booting for several platforms - i.MX: remove some legacy board files" * tag 'armsoc-cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (36 commits) ARM: fix EFM32 build breakage caused by cpu_resume_arm ARM: 8389/1: Add cpu_resume_arm() for firmwares that resume in ARM state ARM: v7 setup function should invalidate L1 cache mach-omap2: Remove use of deprecated marco, PTR_RET in devices.c ARM: OMAP2+: Remove calls to deprecacted marco,PTR_RET in the files,fb.c and pmu.c ARM: OMAP2+: Constify irq_domain_ops ARM: OMAP2+: use symbolic defines for console loglevels instead of numbers ARM: at91: remove useless Makefile.boot ARM: at91: remove at91rm9200_sdramc.h ARM: at91: remove mach/at91_ramc.h and mach/at91rm9200_mc.h ARM: at91/pm: use the atmel-mc syscon defines pcmcia: at91_cf: Use syscon to configure the MC/smc ARM: at91: declare the at91rm9200 memory controller as a syscon mfd: syscon: Add Atmel MC (Memory Controller) registers definition ARM: at91: drop sam9_smc.c ata: at91: use syscon to configure the smc ARM: ux500: delete static resource defines ARM: ux500: rename ux500_map_io ARM: ux500: look up PRCMU resource from DT ARM: ux500: kill off L2CC static map ...
Diffstat (limited to 'arch/arm/mach-rockchip')
-rw-r--r--arch/arm/mach-rockchip/core.h1
-rw-r--r--arch/arm/mach-rockchip/headsmp.S8
-rw-r--r--arch/arm/mach-rockchip/platsmp.c5
3 files changed, 2 insertions, 12 deletions
diff --git a/arch/arm/mach-rockchip/core.h b/arch/arm/mach-rockchip/core.h
index 39bca96b555a..492c048813da 100644
--- a/arch/arm/mach-rockchip/core.h
+++ b/arch/arm/mach-rockchip/core.h
@@ -17,4 +17,3 @@ extern char rockchip_secondary_trampoline;
17extern char rockchip_secondary_trampoline_end; 17extern char rockchip_secondary_trampoline_end;
18 18
19extern unsigned long rockchip_boot_fn; 19extern unsigned long rockchip_boot_fn;
20extern void rockchip_secondary_startup(void);
diff --git a/arch/arm/mach-rockchip/headsmp.S b/arch/arm/mach-rockchip/headsmp.S
index 46c22dedf632..d69708b07282 100644
--- a/arch/arm/mach-rockchip/headsmp.S
+++ b/arch/arm/mach-rockchip/headsmp.S
@@ -15,14 +15,6 @@
15#include <linux/linkage.h> 15#include <linux/linkage.h>
16#include <linux/init.h> 16#include <linux/init.h>
17 17
18ENTRY(rockchip_secondary_startup)
19 mrc p15, 0, r0, c0, c0, 0 @ read main ID register
20 ldr r1, =0x00000c09 @ Cortex-A9 primary part number
21 teq r0, r1
22 beq v7_invalidate_l1
23 b secondary_startup
24ENDPROC(rockchip_secondary_startup)
25
26ENTRY(rockchip_secondary_trampoline) 18ENTRY(rockchip_secondary_trampoline)
27 ldr pc, 1f 19 ldr pc, 1f
28ENDPROC(rockchip_secondary_trampoline) 20ENDPROC(rockchip_secondary_trampoline)
diff --git a/arch/arm/mach-rockchip/platsmp.c b/arch/arm/mach-rockchip/platsmp.c
index 5b4ca3c3c879..2e6ab67e2284 100644
--- a/arch/arm/mach-rockchip/platsmp.c
+++ b/arch/arm/mach-rockchip/platsmp.c
@@ -149,8 +149,7 @@ static int __cpuinit rockchip_boot_secondary(unsigned int cpu,
149 * sram_base_addr + 8: start address for pc 149 * sram_base_addr + 8: start address for pc
150 * */ 150 * */
151 udelay(10); 151 udelay(10);
152 writel(virt_to_phys(rockchip_secondary_startup), 152 writel(virt_to_phys(secondary_startup), sram_base_addr + 8);
153 sram_base_addr + 8);
154 writel(0xDEADBEAF, sram_base_addr + 4); 153 writel(0xDEADBEAF, sram_base_addr + 4);
155 dsb_sev(); 154 dsb_sev();
156 } 155 }
@@ -189,7 +188,7 @@ static int __init rockchip_smp_prepare_sram(struct device_node *node)
189 } 188 }
190 189
191 /* set the boot function for the sram code */ 190 /* set the boot function for the sram code */
192 rockchip_boot_fn = virt_to_phys(rockchip_secondary_startup); 191 rockchip_boot_fn = virt_to_phys(secondary_startup);
193 192
194 /* copy the trampoline to sram, that runs during startup of the core */ 193 /* copy the trampoline to sram, that runs during startup of the core */
195 memcpy(sram_base_addr, &rockchip_secondary_trampoline, trampoline_sz); 194 memcpy(sram_base_addr, &rockchip_secondary_trampoline, trampoline_sz);