1. 修改uClinux-dist/linux-2.6.x/arch/blackfin/mach-bf561/boards/ezkit.c文件,添加ISP1362设备驱动

// Add ISP1362
#if defined(CONFIG_USB_ISP1362_HCD) || defined(CONFIG_USB_ISP1362_HCD_MODULE)
static struct resource isp1362_hcd_resources[] = {
[0] = {
.start = 0x2C030000,
.end = 0x2C030000,
.flags = IORESOURCE_MEM,
},
[1] = {
.start = 0x2C030002,
.end = 0x2C030002,
.flags = IORESOURCE_MEM,
},
[2] = {
.start = IRQ_PF46,
.end = IRQ_PF46,
.flags = IORESOURCE_IRQ | IORESOURCE_IRQ_LOWLEVEL,
},
};
static struct isp1362_platform_data isp1362_priv = {
.sel15Kres = 1,
.clknotstop = 0,
.oc_enable = 0,
.int_act_high = 0,
.int_edge_triggered = 0,
.remote_wakeup_connected = 0,
.no_power_switching = 1,
.power_switching_mode = 0,
};
static struct platform_device isp1362_hcd_device = {
.name = "isp1362-hcd",
.id = 0,
.dev = {
.platform_data = &isp1362_priv,
},
.num_resources = ARRAY_SIZE(isp1362_hcd_resources),
.resource = isp1362_hcd_resources,
};
#endif
#if defined(CONFIG_USB_ISP1362_HCD) || defined(CONFIG_USB_ISP1362_HCD_MODULE)
static struct resource isp1362_hcd_resources[] = {
[0] = {
.start = 0x2C030000,
.end = 0x2C030000,
.flags = IORESOURCE_MEM,
},
[1] = {
.start = 0x2C030002,
.end = 0x2C030002,
.flags = IORESOURCE_MEM,
},
[2] = {
.start = IRQ_PF46,
.end = IRQ_PF46,
.flags = IORESOURCE_IRQ | IORESOURCE_IRQ_LOWLEVEL,
},
};
static struct isp1362_platform_data isp1362_priv = {
.sel15Kres = 1,
.clknotstop = 0,
.oc_enable = 0,
.int_act_high = 0,
.int_edge_triggered = 0,
.remote_wakeup_connected = 0,
.no_power_switching = 1,
.power_switching_mode = 0,
};
static struct platform_device isp1362_hcd_device = {
.name = "isp1362-hcd",
.id = 0,
.dev = {
.platform_data = &isp1362_priv,
},
.num_resources = ARRAY_SIZE(isp1362_hcd_resources),
.resource = isp1362_hcd_resources,
};
#endif
在static struct platform_device *ezkit_devices[] __initdata结构体中添加ISP1362
#if defined(CONFIG_USB_ISP1362_HCD) || defined(CONFIG_USB_ISP1362_HCD_MODULE)
&isp1362_hcd_device,
#endif
&isp1362_hcd_device,
#endif
2. 修改uClinux-dist/linux-2.6.x/drivers/usb/host/ISP1362.h,添加延时语句asm("ssync;");
3. 配置内核,选中ISP1362,编译内核,内核启动完成后,插入U盘会有信息回写。
修改好的ISP1362驱动:/Files/rockstone/uClinux_ISP1362.rar