On Tue, Jun 24, 2008 at 5:42 PM, Felipe Balbi <[EMAIL PROTECTED]> wrote: > > > On Tue, 24 Jun 2008 17:34:59 +0530, "Arun KS" <[EMAIL PROTECTED]> wrote: >> From 58efa8d0019a7f777aaad2d43afb05170df25fae Mon Sep 17 00:00:00 2001 >> From: Arun KS <[EMAIL PROTECTED]> >> Date: Tue, 24 Jun 2008 16:01:32 +0530 >> Subject: [PATCH] OMAP2EVM: Adding ethernet support >> >> OMAP2EVM: add ethernet support (smc911x) >> >> Signed-off-by: Arun KS <[EMAIL PROTECTED]> >> --- >> arch/arm/mach-omap2/board-omap2evm.c | 37 >> ++++++++++++++++++++++++++++ >> include/asm-arm/arch-omap/board-omap2evm.h | 5 ++- >> 2 files changed, 40 insertions(+), 2 deletions(-) >> >> diff --git a/arch/arm/mach-omap2/board-omap2evm.c >> b/arch/arm/mach-omap2/board-omap2evm.c >> index d00e502..e9a2cef 100644 >> --- a/arch/arm/mach-omap2/board-omap2evm.c >> +++ b/arch/arm/mach-omap2/board-omap2evm.c >> @@ -27,11 +27,43 @@ >> #include <asm/arch/board.h> >> #include <asm/arch/common.h> >> >> +static struct resource omap2evm_smc911x_resources[] = { >> + [0] = { >> + .start = OMAP2EVM_ETHR_START, >> + .end = (OMAP2EVM_ETHR_START + OMAP2EVM_ETHR_SIZE - 1), >> + .flags = IORESOURCE_MEM, >> + }, >> + [1] = { >> + .start = OMAP_GPIO_IRQ(OMAP2EVM_ETHR_GPIO_IRQ), >> + .end = OMAP_GPIO_IRQ(OMAP2EVM_ETHR_GPIO_IRQ), >> + .flags = IORESOURCE_IRQ, > > it looks like drivers/net/smc911x doesn't use IORESOURCE_IRQ, am I > misreading it ? >
Yes this driver uses platform_get_irq(pdev, 0) to get its irq number. >> + }, >> +}; >> + >> +static struct platform_device omap2evm_smc911x_device = { >> + .name = "smc911x", >> + .id = -1, >> + .num_resources = ARRAY_SIZE(omap2evm_smc911x_resources), >> + .resource = &omap2evm_smc911x_resources [0], >> +}; >> + >> +static inline void __init omap2evm_init_smc911x(void) >> +{ >> + if (omap_request_gpio(OMAP2EVM_ETHR_GPIO_IRQ) < 0) { >> + printk(KERN_ERR "Failed to request GPIO%d for smc911x IRQ\n", >> + OMAP2EVM_ETHR_GPIO_IRQ); >> + return; >> + } >> + >> + omap_set_gpio_direction(OMAP2EVM_ETHR_GPIO_IRQ, 1); > > please use gpiolib ;-) > >> +} >> + >> static void __init omap2_evm_init_irq(void) >> { >> omap2_init_common_hw(); >> omap_init_irq(); >> omap_gpio_init(); >> + omap2evm_init_smc911x(); >> } >> >> static struct omap_uart_config omap2_evm_uart_config __initdata = { >> @@ -53,8 +85,13 @@ static int __init omap2_evm_i2c_init(void) >> return 0; >> } >> >> +static struct platform_device *omap2_evm_devices[] __initdata = { >> + &omap2evm_smc911x_device, >> +}; >> + >> static void __init omap2_evm_init(void) >> { >> + platform_add_devices(omap2_evm_devices, >> ARRAY_SIZE(omap2_evm_devices)); >> omap_board_config = omap2_evm_config; >> omap_board_config_size = ARRAY_SIZE(omap2_evm_config); >> omap_serial_init(); >> diff --git a/include/asm-arm/arch-omap/board-omap2evm.h >> b/include/asm-arm/arch-omap/board-omap2evm.h >> index 98273a9..d770c58 100644 >> --- a/include/asm-arm/arch-omap/board-omap2evm.h >> +++ b/include/asm-arm/arch-omap/board-omap2evm.h >> @@ -30,7 +30,8 @@ >> #define __ASM_ARCH_OMAP2_EVM_H >> >> /* Placeholder for OMAP2EVM specific defines */ >> -#define OMAP24XX_ETHR_START 0x08000300 >> -#define OMAP24XX_ETHR_GPIO_IRQ 149 >> +#define OMAP2EVM_ETHR_START 0x2c000000 >> +#define OMAP2EVM_ETHR_SIZE 1024 >> +#define OMAP2EVM_ETHR_GPIO_IRQ 149 >> >> #endif /* __ASM_ARCH_OMAP2_EVM_H */ >> -- >> 1.5.3.4 > -- > Best Regards, > > Felipe Balbi > http://felipebalbi.com > [EMAIL PROTECTED] > > -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html