diff options
author | Bo Shen <voice.shen@atmel.com> | 2014-03-28 17:22:55 +0800 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2014-03-31 08:33:10 +0200 |
commit | 0d823930940e68c62c39076b46a158f85edd5832 (patch) | |
tree | 430b705d51ce8620cafd5636b046e2a2b0955ad2 | |
parent | 06ac5fbe6cbcdc49909656b2cec5406f4964630b (diff) | |
download | barebox-0d823930940e68c62c39076b46a158f85edd5832.tar.gz barebox-0d823930940e68c62c39076b46a158f85edd5832.tar.xz |
ARM: at91: add sama5d36 SoC support
SAMA5D36 SoC is a sub type of SAMA5D3 which has two Ethernets
Signed-off-by: Bo Shen <voice.shen@atmel.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
-rw-r--r-- | arch/arm/mach-at91/include/mach/cpu.h | 5 | ||||
-rw-r--r-- | arch/arm/mach-at91/sama5d3.c | 6 | ||||
-rw-r--r-- | arch/arm/mach-at91/setup.c | 3 |
3 files changed, 11 insertions, 3 deletions
diff --git a/arch/arm/mach-at91/include/mach/cpu.h b/arch/arm/mach-at91/include/mach/cpu.h index 7132489132..0e213ce9da 100644 --- a/arch/arm/mach-at91/include/mach/cpu.h +++ b/arch/arm/mach-at91/include/mach/cpu.h @@ -52,6 +52,7 @@ #define ARCH_EXID_SAMA5D33 0x00414300 #define ARCH_EXID_SAMA5D34 0x00414301 #define ARCH_EXID_SAMA5D35 0x00584300 +#define ARCH_EXID_SAMA5D36 0x00004301 #define ARCH_FAMILY_AT91X92 0x09200000 #define ARCH_FAMILY_AT91SAM9 0x01900000 @@ -104,7 +105,7 @@ enum at91_soc_subtype { /* SAMA5D3 */ AT91_SOC_SAMA5D31, AT91_SOC_SAMA5D33, AT91_SOC_SAMA5D34, - AT91_SOC_SAMA5D35, + AT91_SOC_SAMA5D35, AT91_SOC_SAMA5D36, /* Unknown subtype */ AT91_SOC_SUBTYPE_NONE @@ -206,12 +207,14 @@ static inline int at91_soc_is_detected(void) #define cpu_is_sama5d33() (at91_soc_initdata.subtype == AT91_SOC_SAMA5D33) #define cpu_is_sama5d34() (at91_soc_initdata.subtype == AT91_SOC_SAMA5D34) #define cpu_is_sama5d35() (at91_soc_initdata.subtype == AT91_SOC_SAMA5D35) +#define cpu_is_sama5d36() (at91_soc_initdata.subtype == AT91_SOC_SAMA5D36) #else #define cpu_is_sama5d3() (0) #define cpu_is_sama5d31() (0) #define cpu_is_sama5d33() (0) #define cpu_is_sama5d34() (0) #define cpu_is_sama5d35() (0) +#define cpu_is_sama5d36() (0) #endif /* diff --git a/arch/arm/mach-at91/sama5d3.c b/arch/arm/mach-at91/sama5d3.c index 1bfae14f63..85efb2d78f 100644 --- a/arch/arm/mach-at91/sama5d3.c +++ b/arch/arm/mach-at91/sama5d3.c @@ -348,11 +348,13 @@ static void __init sama5d3_register_clocks(void) if ( cpu_is_sama5d33() || cpu_is_sama5d34() - || cpu_is_sama5d35() ) + || cpu_is_sama5d35() + || cpu_is_sama5d36()) clk_register(&macb0_clk); if ( cpu_is_sama5d31() - || cpu_is_sama5d35() ) + || cpu_is_sama5d35() + || cpu_is_sama5d36()) clk_register(&macb1_clk); if (!cpu_is_sama5d35()) diff --git a/arch/arm/mach-at91/setup.c b/arch/arm/mach-at91/setup.c index 65d0588b43..7a7de98045 100644 --- a/arch/arm/mach-at91/setup.c +++ b/arch/arm/mach-at91/setup.c @@ -162,6 +162,8 @@ static void __init soc_detect(u32 dbgu_base) break; case ARCH_EXID_SAMA5D35: at91_soc_initdata.subtype = AT91_SOC_SAMA5D35; + case ARCH_EXID_SAMA5D36: + at91_soc_initdata.subtype = AT91_SOC_SAMA5D36; break; } } @@ -205,6 +207,7 @@ static const char *soc_subtype_name[] = { [AT91_SOC_SAMA5D33] = "sama5d33", [AT91_SOC_SAMA5D34] = "sama5d34", [AT91_SOC_SAMA5D35] = "sama5d35", + [AT91_SOC_SAMA5D36] = "sama5d36", [AT91_SOC_SUBTYPE_NONE] = "Unknown" }; |