summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-at91/at91sam9g45.c
diff options
context:
space:
mode:
authorNicolas Ferre <nicolas.ferre@atmel.com>2010-06-11 12:53:14 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2010-06-16 23:00:02 +0100
commit5f9f0a412f16b2b849624f1b760477fb35ceff4a (patch)
tree947aeebdc3fbb9828da3e99dbebe2f7322092bf4 /arch/arm/mach-at91/at91sam9g45.c
parent8a5c9e39379610bf347241c64132d7ee073c3959 (diff)
ARM: 6169/1: AT91: add new at91 chips in at91sam9g45 family
This is the basic support for at91sam9g46, at91sam9m10 and at91sam9m11. Those are just very basic cpu macros and clock definition. Signed-off-by: Patrice Vilchez <patrice.vilchez@atmel.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com> Acked-by: Andrew Victor <linux@maxim.org.za> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-at91/at91sam9g45.c')
-rw-r--r--arch/arm/mach-at91/at91sam9g45.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/arch/arm/mach-at91/at91sam9g45.c b/arch/arm/mach-at91/at91sam9g45.c
index 85166b7e69a..753c0d31a3d 100644
--- a/arch/arm/mach-at91/at91sam9g45.c
+++ b/arch/arm/mach-at91/at91sam9g45.c
@@ -20,6 +20,7 @@
#include <mach/at91_pmc.h>
#include <mach/at91_rstc.h>
#include <mach/at91_shdwc.h>
+#include <mach/cpu.h>
#include "generic.h"
#include "clock.h"
@@ -176,6 +177,13 @@ static struct clk mmc1_clk = {
.type = CLK_TYPE_PERIPHERAL,
};
+/* Video decoder clock - Only for sam9m10/sam9m11 */
+static struct clk vdec_clk = {
+ .name = "vdec_clk",
+ .pmc_mask = 1 << AT91SAM9G45_ID_VDEC,
+ .type = CLK_TYPE_PERIPHERAL,
+};
+
/* One additional fake clock for ohci */
static struct clk ohci_clk = {
.name = "ohci_clk",
@@ -239,6 +247,9 @@ static void __init at91sam9g45_register_clocks(void)
for (i = 0; i < ARRAY_SIZE(periph_clocks); i++)
clk_register(periph_clocks[i]);
+ if (cpu_is_at91sam9m10() || cpu_is_at91sam9m11())
+ clk_register(&vdec_clk);
+
clk_register(&pck0);
clk_register(&pck1);
}