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>
This commit is contained in:
parent
fd9abe1b5b
commit
6aa51068f5
@ -20,9 +20,24 @@ volatile u8 *uart_base;
|
||||
|
||||
#include <plat/uncompress.h>
|
||||
|
||||
static unsigned int __raw_readl(unsigned int ptr)
|
||||
{
|
||||
return *((volatile unsigned int *)ptr);
|
||||
}
|
||||
|
||||
static void arch_detect_cpu(void)
|
||||
{
|
||||
if (machine_is_smdk5250())
|
||||
u32 chip_id = __raw_readl(EXYNOS_PA_CHIPID);
|
||||
|
||||
/*
|
||||
* product_id is bits 31:12
|
||||
* bits 23:20 describe the exynosX family
|
||||
*
|
||||
*/
|
||||
chip_id >>= 20;
|
||||
chip_id &= 0xf;
|
||||
|
||||
if (chip_id == 0x5)
|
||||
uart_base = (volatile u8 *)EXYNOS5_PA_UART + (S3C_UART_OFFSET * CONFIG_S3C_LOWLEVEL_UART_PORT);
|
||||
else
|
||||
uart_base = (volatile u8 *)EXYNOS4_PA_UART + (S3C_UART_OFFSET * CONFIG_S3C_LOWLEVEL_UART_PORT);
|
||||
|
Loading…
Reference in New Issue
Block a user