diff options
author | Nicolas Ferre <nicolas.ferre@atmel.com> | 2014-09-15 12:15:54 -0400 |
---|---|---|
committer | Nicolas Ferre <nicolas.ferre@atmel.com> | 2014-09-22 05:39:05 -0400 |
commit | 2dc850b62e5b727a5413b60197cdddf92ab4f1a2 (patch) | |
tree | 6a5436ba54c8d2124a7b9ea16e18b7517b42bfe7 /arch/arm/mach-at91/include/mach | |
parent | bcc5fd49a0fda5abc22057f65b318788ccb5d2ad (diff) |
ARM: at91: introduce basic SAMA5D4 support
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Acked-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
Diffstat (limited to 'arch/arm/mach-at91/include/mach')
-rw-r--r-- | arch/arm/mach-at91/include/mach/cpu.h | 9 | ||||
-rw-r--r-- | arch/arm/mach-at91/include/mach/sama5d4.h | 33 |
2 files changed, 42 insertions, 0 deletions
diff --git a/arch/arm/mach-at91/include/mach/cpu.h b/arch/arm/mach-at91/include/mach/cpu.h index 86c71debab5b..d77572e8cb15 100644 --- a/arch/arm/mach-at91/include/mach/cpu.h +++ b/arch/arm/mach-at91/include/mach/cpu.h | |||
@@ -86,6 +86,9 @@ enum at91_soc_type { | |||
86 | /* SAMA5D3 */ | 86 | /* SAMA5D3 */ |
87 | AT91_SOC_SAMA5D3, | 87 | AT91_SOC_SAMA5D3, |
88 | 88 | ||
89 | /* SAMA5D4 */ | ||
90 | AT91_SOC_SAMA5D4, | ||
91 | |||
89 | /* Unknown type */ | 92 | /* Unknown type */ |
90 | AT91_SOC_UNKNOWN, | 93 | AT91_SOC_UNKNOWN, |
91 | }; | 94 | }; |
@@ -211,6 +214,12 @@ static inline int at91_soc_is_detected(void) | |||
211 | #define cpu_is_sama5d3() (0) | 214 | #define cpu_is_sama5d3() (0) |
212 | #endif | 215 | #endif |
213 | 216 | ||
217 | #ifdef CONFIG_SOC_SAMA5D4 | ||
218 | #define cpu_is_sama5d4() (at91_soc_initdata.type == AT91_SOC_SAMA5D4) | ||
219 | #else | ||
220 | #define cpu_is_sama5d4() (0) | ||
221 | #endif | ||
222 | |||
214 | /* | 223 | /* |
215 | * Since this is ARM, we will never run on any AVR32 CPU. But these | 224 | * Since this is ARM, we will never run on any AVR32 CPU. But these |
216 | * definitions may reduce clutter in common drivers. | 225 | * definitions may reduce clutter in common drivers. |
diff --git a/arch/arm/mach-at91/include/mach/sama5d4.h b/arch/arm/mach-at91/include/mach/sama5d4.h new file mode 100644 index 000000000000..f256a45d9854 --- /dev/null +++ b/arch/arm/mach-at91/include/mach/sama5d4.h | |||
@@ -0,0 +1,33 @@ | |||
1 | /* | ||
2 | * Chip-specific header file for the SAMA5D4 family | ||
3 | * | ||
4 | * Copyright (C) 2013 Atmel Corporation, | ||
5 | * Nicolas Ferre <nicolas.ferre@atmel.com> | ||
6 | * | ||
7 | * Common definitions. | ||
8 | * Based on SAMA5D4 datasheet. | ||
9 | * | ||
10 | * Licensed under GPLv2 or later. | ||
11 | */ | ||
12 | |||
13 | #ifndef SAMA5D4_H | ||
14 | #define SAMA5D4_H | ||
15 | |||
16 | /* | ||
17 | * User Peripheral physical base addresses. | ||
18 | */ | ||
19 | #define SAMA5D4_BASE_USART3 0xfc00c000 /* (USART3 non-secure) Base Address */ | ||
20 | #define SAMA5D4_BASE_PMC 0xf0018000 /* (PMC) Base Address */ | ||
21 | #define SAMA5D4_BASE_MPDDRC 0xf0010000 /* (MPDDRC) Base Address */ | ||
22 | #define SAMA5D4_BASE_PIOD 0xfc068000 /* (PIOD) Base Address */ | ||
23 | |||
24 | /* Some other peripherals */ | ||
25 | #define SAMA5D4_BASE_SYS2 SAMA5D4_BASE_PIOD | ||
26 | |||
27 | /* | ||
28 | * Internal Memory. | ||
29 | */ | ||
30 | #define SAMA5D4_NS_SRAM_BASE 0x00210000 /* Internal SRAM base address Non-Secure */ | ||
31 | #define SAMA5D4_NS_SRAM_SIZE (64 * SZ_1K) /* Internal SRAM size Non-Secure part (64Kb) */ | ||
32 | |||
33 | #endif | ||