On Thu, 2005-01-06 at 19:11 +0100, [EMAIL PROTECTED] wrote:
> May be my arch interrupt setup or timing broken?
I guess if other peripherals are OK then the basic code is right, but it
sounds as if the configuration for the particular USB IRQ isn't correct.
I don't know the i.MX stuff at all but FWIW I have mine setup as
follows:
in viper_init_irq():
set_irq_type(VIPER_USB_IRQ, IRQT_RISING);
struct resource isp116x_resources[] = {
[0] = { /* DATA */
.start = VIPER_USB_PHYS + 0,
.end = VIPER_USB_PHYS + 1,
.flags = IORESOURCE_MEM,
},
[1] = { /* ADDR */
.start = VIPER_USB_PHYS + 2,
.end = VIPER_USB_PHYS + 3,
.flags = IORESOURCE_MEM,
},
[2] = {
.start = VIPER_USB_IRQ,
.end = VIPER_USB_IRQ,
.flags = IORESOURCE_IRQ,
},
};
static struct isp116x_platform_data isp116x_platform_data = {
// Enable internal resistors on downstream ports
.sel15Kres = 1,
// Clock cannot be stopped
.clknotstop = 0,
// On-chip overcurrent protection
.oc_enable = 1,
// INT output polarity
.int_act_high = 1,
// INT edge or level triggered
.int_edge_triggered = 0,
// End-of-transfer input polarity
.eot_act_high = 0,
// DREQ output polarity
.dreq_act_high = 1,
// WAKEUP pin connected
.remote_wakeup_connected= 0,
// Wakeup by devices on usb bus enabled
.remote_wakeup_enable = 0,
// Switch or not to switch (keep always powered)
.no_power_switching = 1,
// Ganged port power switching (0) or individual port power switching
(1)
.power_switching_mode = 0,
.reset = NULL /* isp116x_reset */,
.delay = isp116x_delay,
};
Ian.
--
Ian Campbell
-------------------------------------------------------
The SF.Net email is sponsored by: Beat the post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel