|
@@ -32,12 +32,61 @@
|
|
|
#include <linux/spi/spi.h>
|
|
|
#include <asm/irq.h>
|
|
|
#include <asm/bfin5xx_spi.h>
|
|
|
+#include <linux/interrupt.h>
|
|
|
+#include <linux/irq.h>
|
|
|
|
|
|
/*
|
|
|
* Name the Board for the /proc/cpuinfo
|
|
|
*/
|
|
|
char *bfin_board_name = "ADDS-BF561-EZKIT";
|
|
|
|
|
|
+#define ISP1761_BASE 0x2C0F0000
|
|
|
+#define ISP1761_IRQ IRQ_PF10
|
|
|
+
|
|
|
+#if defined(CONFIG_USB_ISP1760_HCD) || defined(CONFIG_USB_ISP1760_HCD_MODULE)
|
|
|
+static struct resource bfin_isp1761_resources[] = {
|
|
|
+ [0] = {
|
|
|
+ .name = "isp1761-regs",
|
|
|
+ .start = ISP1761_BASE + 0x00000000,
|
|
|
+ .end = ISP1761_BASE + 0x000fffff,
|
|
|
+ .flags = IORESOURCE_MEM,
|
|
|
+ },
|
|
|
+ [1] = {
|
|
|
+ .start = ISP1761_IRQ,
|
|
|
+ .end = ISP1761_IRQ,
|
|
|
+ .flags = IORESOURCE_IRQ,
|
|
|
+ },
|
|
|
+};
|
|
|
+
|
|
|
+static struct platform_device bfin_isp1761_device = {
|
|
|
+ .name = "isp1761",
|
|
|
+ .id = 0,
|
|
|
+ .num_resources = ARRAY_SIZE(bfin_isp1761_resources),
|
|
|
+ .resource = bfin_isp1761_resources,
|
|
|
+};
|
|
|
+
|
|
|
+static struct platform_device *bfin_isp1761_devices[] = {
|
|
|
+ &bfin_isp1761_device,
|
|
|
+};
|
|
|
+
|
|
|
+int __init bfin_isp1761_init(void)
|
|
|
+{
|
|
|
+ unsigned int num_devices=ARRAY_SIZE(bfin_isp1761_devices);
|
|
|
+
|
|
|
+ printk(KERN_INFO "%s(): registering device resources\n", __FUNCTION__);
|
|
|
+ set_irq_type(ISP1761_IRQ, IRQF_TRIGGER_FALLING);
|
|
|
+
|
|
|
+ return platform_add_devices(bfin_isp1761_devices, num_devices);
|
|
|
+}
|
|
|
+
|
|
|
+void __exit bfin_isp1761_exit(void)
|
|
|
+{
|
|
|
+ platform_device_unregister(&bfin_isp1761_device);
|
|
|
+}
|
|
|
+
|
|
|
+arch_initcall(bfin_isp1761_init);
|
|
|
+#endif
|
|
|
+
|
|
|
/*
|
|
|
* USB-LAN EzExtender board
|
|
|
* Driver needs to know address, irq and flag pin.
|