Daniel Ribeiro <drwyrm@xxxxxxxxx> writes: > Em Qua, 2009-04-08 às 20:07 +0200, Robert Jarzmik escreveu: >> My naive view was that when suspend is triggered, you have either : >> (1) >> - pxa27x_udc suspend() called => udc is disabled > > pxa_udc_resume -> dplus_pullup -> udc_command -> transceiver_set_pullup > -> SPI or I2C (before spi/i2c is ready). > I could leave this change out, but then i would not be able to use > udc_command to set pullup. OK, I understand now. You want pxa27x_udc to become child of the transceiver bus (either I2C, SPI, etc ...). This way, it will be suspended first, when I2C/SPI is still operationnal, and on resume, the underlying bus will be resumed first, and pxa27x_udc resume() will be able to toggle D+ line. Sound good to me. Unless someone wants to code a "transceiver bus" for USB, that is the simplest solution. Of course, you'll have to amend all boards initializations, happy you :) What do think of it, David ? -- Robert -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html