1/* 2 * File: arch/blackfin/mach-bf561/tepla.c 3 * 4 * Copyright 2004-2007 Analog Devices Inc. 5 * Only SMSC91C1111 was registered, may do more later. 6 * 7 * Copyright 2005 National ICT Australia (NICTA), Aidan Williams <aidan@nicta.com.au> 8 * Thanks to Jamey Hicks. 9 * 10 * This program is free software; you can redistribute it and/or modify 11 * it under the terms of the GNU General Public License version 2 as 12 * published by the Free Software Foundation. 13 */ 14 15#include <linux/device.h> 16#include <linux/platform_device.h> 17#include <asm/irq.h> 18 19char *bfin_board_name = "Tepla-BF561"; 20 21/* 22 * Driver needs to know address, irq and flag pin. 23 */ 24static struct resource smc91x_resources[] = { 25 { 26 .start = 0x2C000300, 27 .end = 0x2C000320, 28 .flags = IORESOURCE_MEM, 29 },{ 30 .start = IRQ_PROG_INTB, 31 .end = IRQ_PROG_INTB, 32 .flags = IORESOURCE_IRQ|IORESOURCE_IRQ_HIGHLEVEL, 33 },{ 34 /* 35 * denotes the flag pin and is used directly if 36 * CONFIG_IRQCHIP_DEMUX_GPIO is defined. 37 */ 38 .start = IRQ_PF7, 39 .end = IRQ_PF7, 40 .flags = IORESOURCE_IRQ|IORESOURCE_IRQ_HIGHLEVEL, 41 }, 42}; 43 44static struct platform_device smc91x_device = { 45 .name = "smc91x", 46 .id = 0, 47 .num_resources = ARRAY_SIZE(smc91x_resources), 48 .resource = smc91x_resources, 49}; 50 51static struct platform_device *tepla_devices[] __initdata = { 52 &smc91x_device, 53}; 54 55static int __init tepla_init(void) 56{ 57 printk(KERN_INFO "%s(): registering device resources\n", __FUNCTION__); 58 return platform_add_devices(tepla_devices, ARRAY_SIZE(tepla_devices)); 59} 60 61arch_initcall(tepla_init); 62