ARM: 8136/1: sa1100: add Micro ASIC platform device
authorLinus Walleij <linus.walleij@linaro.org>
Tue, 2 Sep 2014 12:21:44 +0000 (13:21 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Fri, 12 Sep 2014 16:39:50 +0000 (17:39 +0100)
This adds the Atmel Micro ASIC platform device and selects it
by default for h3100 and h3600.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/mach-sa1100/Kconfig
arch/arm/mach-sa1100/h3xxx.c

index 04f9784ff0edab68132d31bc15110935a4b60883..c6f6ed1cbed08a7f0ebfa40d670ab95b7b1b2d88 100644 (file)
@@ -58,6 +58,7 @@ config SA1100_H3100
        bool "Compaq iPAQ H3100"
        select ARM_SA1110_CPUFREQ
        select HTC_EGPIO
+       select MFD_IPAQ_MICRO
        help
          Say Y here if you intend to run this kernel on the Compaq iPAQ
          H3100 handheld computer.  Information about this machine and the
@@ -69,6 +70,7 @@ config SA1100_H3600
        bool "Compaq iPAQ H3600/H3700"
        select ARM_SA1110_CPUFREQ
        select HTC_EGPIO
+       select MFD_IPAQ_MICRO
        help
          Say Y here if you intend to run this kernel on the Compaq iPAQ
          H3600 handheld computer.  Information about this machine and the
index c79bf467fb7f8efea5b70f7e2d278e3f30c52864..b1d4faa12f9af4a8f736947521cd6e3987648326 100644 (file)
@@ -25,6 +25,7 @@
 #include <asm/mach/map.h>
 
 #include <mach/h3xxx.h>
+#include <mach/irqs.h>
 
 #include "generic.h"
 
@@ -244,9 +245,23 @@ static struct platform_device h3xxx_keys = {
        },
 };
 
+static struct resource h3xxx_micro_resources[] = {
+       DEFINE_RES_MEM(0x80010000, SZ_4K),
+       DEFINE_RES_MEM(0x80020000, SZ_4K),
+       DEFINE_RES_IRQ(IRQ_Ser1UART),
+};
+
+struct platform_device h3xxx_micro_asic = {
+       .name = "ipaq-h3xxx-micro",
+       .id = -1,
+       .resource = h3xxx_micro_resources,
+       .num_resources = ARRAY_SIZE(h3xxx_micro_resources),
+};
+
 static struct platform_device *h3xxx_devices[] = {
        &h3xxx_egpio,
        &h3xxx_keys,
+       &h3xxx_micro_asic,
 };
 
 void __init h3xxx_mach_init(void)