aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/include
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2014-03-21 13:32:54 -0400
committerArnd Bergmann <arnd@arndb.de>2014-03-21 20:10:19 -0400
commit600a1dfae24746ccd8b1617742ef7b98099f83b8 (patch)
tree67eeaa58816681ed37257499bbfce23dd8db5844 /arch/arm/include
parentb44ce3b0f9c3883e7c537793b808feee9a2a00fb (diff)
parent9f3ba4567e8d11de89673afea174d206ca9446f6 (diff)
Merge branch 'randconfig-fixes' into next/fixes-non-critical
This is the first batch of a much longer series of bug fixes found during randconfig testing. This part are all the simple patches that are applicable for the arm-soc tree, while most other fixes will likely go through other maintainers. * randconfig-fixes: (50 commits) ARM: tegra: make debug_ll code build for ARMv6 ARM: sunxi: fix build for THUMB2_KERNEL ARM: exynos: add missing include of linux/module.h ARM: exynos: fix l2x0 saved regs handling ARM: samsung: select CRC32 for SAMSUNG_PM_CHECK ARM: samsung: select ATAGS where necessary ARM: samsung: fix SAMSUNG_PM_DEBUG Kconfig logic ARM: samsung: allow serial driver to be disabled ARM: s5pv210: enable IDE support in MACH_TORBRECK ARM: s5p64x0: fix building with only one soc type ARM: s3c64xx: select power domains only when used ARM: s3c64xx: MACH_SMDK6400 needs HSMMC1 ARM: s3c24xx: osiris dvs needs tps65010 ARM: s3c24xx: fix gta02 build error ARM: s3c24xx: MINI2440 needs I2C for EEPROM_AT24 ARM: integrator: only select pl01x if TTY is enabled ARM: realview: fix sparsemem build ARM: footbridge: make screen_info setup conditional ARM: footbridge: fix build with PCI disabled ARM: footbridge: don't build floppy code for addin mode ... Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'arch/arm/include')
-rw-r--r--arch/arm/include/asm/smp.h1
-rw-r--r--arch/arm/include/debug/tegra.S18
2 files changed, 9 insertions, 10 deletions
diff --git a/arch/arm/include/asm/smp.h b/arch/arm/include/asm/smp.h
index 22a3b9b5d4a1..4157aec4e307 100644
--- a/arch/arm/include/asm/smp.h
+++ b/arch/arm/include/asm/smp.h
@@ -74,6 +74,7 @@ struct secondary_data {
74}; 74};
75extern struct secondary_data secondary_data; 75extern struct secondary_data secondary_data;
76extern volatile int pen_release; 76extern volatile int pen_release;
77extern void secondary_startup(void);
77 78
78extern int __cpu_disable(void); 79extern int __cpu_disable(void);
79 80
diff --git a/arch/arm/include/debug/tegra.S b/arch/arm/include/debug/tegra.S
index f98763f0bc17..3bc80599c022 100644
--- a/arch/arm/include/debug/tegra.S
+++ b/arch/arm/include/debug/tegra.S
@@ -53,8 +53,7 @@
53 53
54#define checkuart(rp, rv, lhu, bit, uart) \ 54#define checkuart(rp, rv, lhu, bit, uart) \
55 /* Load address of CLK_RST register */ \ 55 /* Load address of CLK_RST register */ \
56 movw rp, #TEGRA_CLK_RST_DEVICES_##lhu & 0xffff ; \ 56 ldr rp, =TEGRA_CLK_RST_DEVICES_##lhu ; \
57 movt rp, #TEGRA_CLK_RST_DEVICES_##lhu >> 16 ; \
58 /* Load value from CLK_RST register */ \ 57 /* Load value from CLK_RST register */ \
59 ldr rp, [rp, #0] ; \ 58 ldr rp, [rp, #0] ; \
60 /* Test UART's reset bit */ \ 59 /* Test UART's reset bit */ \
@@ -62,8 +61,7 @@
62 /* If set, can't use UART; jump to save no UART */ \ 61 /* If set, can't use UART; jump to save no UART */ \
63 bne 90f ; \ 62 bne 90f ; \
64 /* Load address of CLK_OUT_ENB register */ \ 63 /* Load address of CLK_OUT_ENB register */ \
65 movw rp, #TEGRA_CLK_OUT_ENB_##lhu & 0xffff ; \ 64 ldr rp, =TEGRA_CLK_OUT_ENB_##lhu ; \
66 movt rp, #TEGRA_CLK_OUT_ENB_##lhu >> 16 ; \
67 /* Load value from CLK_OUT_ENB register */ \ 65 /* Load value from CLK_OUT_ENB register */ \
68 ldr rp, [rp, #0] ; \ 66 ldr rp, [rp, #0] ; \
69 /* Test UART's clock enable bit */ \ 67 /* Test UART's clock enable bit */ \
@@ -71,8 +69,7 @@
71 /* If clear, can't use UART; jump to save no UART */ \ 69 /* If clear, can't use UART; jump to save no UART */ \
72 beq 90f ; \ 70 beq 90f ; \
73 /* Passed all tests, load address of UART registers */ \ 71 /* Passed all tests, load address of UART registers */ \
74 movw rp, #TEGRA_UART##uart##_BASE & 0xffff ; \ 72 ldr rp, =TEGRA_UART##uart##_BASE ; \
75 movt rp, #TEGRA_UART##uart##_BASE >> 16 ; \
76 /* Jump to save UART address */ \ 73 /* Jump to save UART address */ \
77 b 91f 74 b 91f
78 75
@@ -90,15 +87,16 @@
90 87
91#ifdef CONFIG_TEGRA_DEBUG_UART_AUTO_ODMDATA 88#ifdef CONFIG_TEGRA_DEBUG_UART_AUTO_ODMDATA
92 /* Check ODMDATA */ 89 /* Check ODMDATA */
9310: movw \rp, #TEGRA_PMC_SCRATCH20 & 0xffff 9010: ldr \rp, =TEGRA_PMC_SCRATCH20
94 movt \rp, #TEGRA_PMC_SCRATCH20 >> 16
95 ldr \rp, [\rp, #0] @ Load PMC_SCRATCH20 91 ldr \rp, [\rp, #0] @ Load PMC_SCRATCH20
96 ubfx \rv, \rp, #18, #2 @ 19:18 are console type 92 lsr \rv, \rp, #18 @ 19:18 are console type
93 and \rv, \rv, #3
97 cmp \rv, #2 @ 2 and 3 mean DCC, UART 94 cmp \rv, #2 @ 2 and 3 mean DCC, UART
98 beq 11f @ some boards swap the meaning 95 beq 11f @ some boards swap the meaning
99 cmp \rv, #3 @ so accept either 96 cmp \rv, #3 @ so accept either
100 bne 90f 97 bne 90f
10111: ubfx \rv, \rp, #15, #3 @ 17:15 are UART ID 9811: lsr \rv, \rp, #15 @ 17:15 are UART ID
99 and \rv, #7
102 cmp \rv, #0 @ UART 0? 100 cmp \rv, #0 @ UART 0?
103 beq 20f 101 beq 20f
104 cmp \rv, #1 @ UART 1? 102 cmp \rv, #1 @ UART 1?