diff options
author | Arnd Bergmann <arnd@arndb.de> | 2014-03-21 13:32:54 -0400 |
---|---|---|
committer | Arnd Bergmann <arnd@arndb.de> | 2014-03-21 20:10:19 -0400 |
commit | 600a1dfae24746ccd8b1617742ef7b98099f83b8 (patch) | |
tree | 67eeaa58816681ed37257499bbfce23dd8db5844 /arch/arm/include | |
parent | b44ce3b0f9c3883e7c537793b808feee9a2a00fb (diff) | |
parent | 9f3ba4567e8d11de89673afea174d206ca9446f6 (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.h | 1 | ||||
-rw-r--r-- | arch/arm/include/debug/tegra.S | 18 |
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 | }; |
75 | extern struct secondary_data secondary_data; | 75 | extern struct secondary_data secondary_data; |
76 | extern volatile int pen_release; | 76 | extern volatile int pen_release; |
77 | extern void secondary_startup(void); | ||
77 | 78 | ||
78 | extern int __cpu_disable(void); | 79 | extern 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 */ |
93 | 10: movw \rp, #TEGRA_PMC_SCRATCH20 & 0xffff | 90 | 10: 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 |
101 | 11: ubfx \rv, \rp, #15, #3 @ 17:15 are UART ID | 98 | 11: 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? |