ARM: mach-shmobile: bonito: add SMSC9221 support
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Fri, 11 Nov 2011 02:47:36 +0000 (18:47 -0800)
committerPaul Mundt <lethal@linux-sh.org>
Fri, 11 Nov 2011 07:56:35 +0000 (16:56 +0900)
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
arch/arm/mach-shmobile/board-bonito.c

index fe749e354626cdcacd7164f1687d8409fd962b5b..4d2201622323114eced0c40af35693fb06d85d95 100644 (file)
@@ -95,6 +95,7 @@
 #define FPGA_IRQ_BASE          (512)
 #define FPGA_IRQ0              (FPGA_IRQ_BASE)
 #define FPGA_IRQ1              (FPGA_IRQ_BASE + 16)
+#define FPGA_ETH_IRQ           (FPGA_IRQ0 + 15)
 static u16 bonito_fpga_read(u32 offset)
 {
        return __raw_readw(0xf0003000 + offset);
@@ -277,6 +278,37 @@ static struct platform_device lcdc0_device = {
        },
 };
 
+/*
+ * SMSC 9221
+ */
+static struct resource smsc_resources[] = {
+       [0] = {
+               .start          = 0x18010000,
+               .end            = 0x18011000 - 1,
+               .flags          = IORESOURCE_MEM,
+       },
+       [1] = {
+               .start          = FPGA_ETH_IRQ,
+               .flags          = IORESOURCE_IRQ,
+       },
+};
+
+static struct smsc911x_platform_config smsc_platdata = {
+       .flags          = SMSC911X_USE_16BIT,
+       .phy_interface  = PHY_INTERFACE_MODE_MII,
+       .irq_polarity   = SMSC911X_IRQ_POLARITY_ACTIVE_LOW,
+       .irq_type       = SMSC911X_IRQ_TYPE_PUSH_PULL,
+};
+
+static struct platform_device smsc_device = {
+       .name           = "smsc911x",
+       .dev  = {
+               .platform_data = &smsc_platdata,
+       },
+       .resource       = smsc_resources,
+       .num_resources  = ARRAY_SIZE(smsc_resources),
+};
+
 /*
  * core board devices
  */
@@ -288,6 +320,7 @@ static struct platform_device *bonito_core_devices[] __initdata = {
  */
 static struct platform_device *bonito_base_devices[] __initdata = {
        &lcdc0_device,
+       &smsc_device,
 };
 
 /*
This page took 0.028432 seconds and 5 git commands to generate.