diff options
author | Dima Zavin <dima@android.com> | 2012-04-04 12:27:37 -0400 |
---|---|---|
committer | Kukjin Kim <kgene.kim@samsung.com> | 2012-04-04 12:27:37 -0400 |
commit | 6aa51068f58022ca616fad40b6773a1de50599f0 (patch) | |
tree | f824b50ddbf8d4d072f558e9930eaa8df9de3ea5 /arch | |
parent | fd9abe1b5beafe776c51507dac32486f627c6ad8 (diff) |
ARM: EXYNOS: use chip_id reg in uncompress to select uart base phys
Signed-off-by: Dima Zavin <dima@android.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/mach-exynos/include/mach/uncompress.h | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/arch/arm/mach-exynos/include/mach/uncompress.h b/arch/arm/mach-exynos/include/mach/uncompress.h index 493f4f365ddf..2979995d5a6a 100644 --- a/arch/arm/mach-exynos/include/mach/uncompress.h +++ b/arch/arm/mach-exynos/include/mach/uncompress.h | |||
@@ -20,9 +20,24 @@ volatile u8 *uart_base; | |||
20 | 20 | ||
21 | #include <plat/uncompress.h> | 21 | #include <plat/uncompress.h> |
22 | 22 | ||
23 | static unsigned int __raw_readl(unsigned int ptr) | ||
24 | { | ||
25 | return *((volatile unsigned int *)ptr); | ||
26 | } | ||
27 | |||
23 | static void arch_detect_cpu(void) | 28 | static void arch_detect_cpu(void) |
24 | { | 29 | { |
25 | if (machine_is_smdk5250()) | 30 | u32 chip_id = __raw_readl(EXYNOS_PA_CHIPID); |
31 | |||
32 | /* | ||
33 | * product_id is bits 31:12 | ||
34 | * bits 23:20 describe the exynosX family | ||
35 | * | ||
36 | */ | ||
37 | chip_id >>= 20; | ||
38 | chip_id &= 0xf; | ||
39 | |||
40 | if (chip_id == 0x5) | ||
26 | uart_base = (volatile u8 *)EXYNOS5_PA_UART + (S3C_UART_OFFSET * CONFIG_S3C_LOWLEVEL_UART_PORT); | 41 | uart_base = (volatile u8 *)EXYNOS5_PA_UART + (S3C_UART_OFFSET * CONFIG_S3C_LOWLEVEL_UART_PORT); |
27 | else | 42 | else |
28 | uart_base = (volatile u8 *)EXYNOS4_PA_UART + (S3C_UART_OFFSET * CONFIG_S3C_LOWLEVEL_UART_PORT); | 43 | uart_base = (volatile u8 *)EXYNOS4_PA_UART + (S3C_UART_OFFSET * CONFIG_S3C_LOWLEVEL_UART_PORT); |