[ARM] pxa/aspenite: add support for debug ethernet

Signed-off-by: Zhangfei Gao <zhangfei.gao@marvell.com>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
This commit is contained in:
Eric Miao 2009-02-18 16:38:22 +08:00
parent 9c291f0f83
commit a6b993c6b5
2 changed files with 64 additions and 0 deletions

View file

@ -11,26 +11,89 @@
#include <linux/init.h> #include <linux/init.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/platform_device.h>
#include <linux/smc91x.h>
#include <asm/mach-types.h> #include <asm/mach-types.h>
#include <asm/mach/arch.h> #include <asm/mach/arch.h>
#include <mach/addr-map.h> #include <mach/addr-map.h>
#include <mach/mfp-pxa168.h> #include <mach/mfp-pxa168.h>
#include <mach/pxa168.h> #include <mach/pxa168.h>
#include <mach/gpio.h>
#include "common.h" #include "common.h"
static unsigned long common_pin_config[] __initdata = { static unsigned long common_pin_config[] __initdata = {
/* Data Flash Interface */
GPIO0_DFI_D15,
GPIO1_DFI_D14,
GPIO2_DFI_D13,
GPIO3_DFI_D12,
GPIO4_DFI_D11,
GPIO5_DFI_D10,
GPIO6_DFI_D9,
GPIO7_DFI_D8,
GPIO8_DFI_D7,
GPIO9_DFI_D6,
GPIO10_DFI_D5,
GPIO11_DFI_D4,
GPIO12_DFI_D3,
GPIO13_DFI_D2,
GPIO14_DFI_D1,
GPIO15_DFI_D0,
/* Static Memory Controller */
GPIO18_SMC_nCS0,
GPIO34_SMC_nCS1,
GPIO23_SMC_nLUA,
GPIO25_SMC_nLLA,
GPIO28_SMC_RDY,
GPIO29_SMC_SCLK,
GPIO35_SMC_BE1,
GPIO36_SMC_BE2,
GPIO27_GPIO, /* Ethernet IRQ */
/* UART1 */ /* UART1 */
GPIO107_UART1_RXD, GPIO107_UART1_RXD,
GPIO108_UART1_TXD, GPIO108_UART1_TXD,
}; };
static struct smc91x_platdata smc91x_info = {
.flags = SMC91X_USE_16BIT | SMC91X_NOWAIT,
};
static struct resource smc91x_resources[] = {
[0] = {
.start = SMC_CS1_PHYS_BASE + 0x300,
.end = SMC_CS1_PHYS_BASE + 0xfffff,
.flags = IORESOURCE_MEM,
},
[1] = {
.start = gpio_to_irq(27),
.end = gpio_to_irq(27),
.flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHEDGE,
}
};
static struct platform_device smc91x_device = {
.name = "smc91x",
.id = 0,
.dev = {
.platform_data = &smc91x_info,
},
.num_resources = ARRAY_SIZE(smc91x_resources),
.resource = smc91x_resources,
};
static void __init common_init(void) static void __init common_init(void)
{ {
mfp_config(ARRAY_AND_SIZE(common_pin_config)); mfp_config(ARRAY_AND_SIZE(common_pin_config));
/* on-chip devices */
pxa168_add_uart(1); pxa168_add_uart(1);
/* off-chip devices */
platform_device_register(&smc91x_device);
} }
MACHINE_START(ASPENITE, "PXA168-based Aspenite Development Platform") MACHINE_START(ASPENITE, "PXA168-based Aspenite Development Platform")

View file

@ -44,6 +44,7 @@
defined(CONFIG_MACH_MAINSTONE) ||\ defined(CONFIG_MACH_MAINSTONE) ||\
defined(CONFIG_MACH_ZYLONITE) ||\ defined(CONFIG_MACH_ZYLONITE) ||\
defined(CONFIG_MACH_LITTLETON) ||\ defined(CONFIG_MACH_LITTLETON) ||\
defined(CONFIG_MACH_ZYLONITE2) ||\
defined(CONFIG_ARCH_VIPER) defined(CONFIG_ARCH_VIPER)
#include <asm/mach-types.h> #include <asm/mach-types.h>