Hi all, the following patches split hw glue layers (blackfin.c, omap2430.c, etc) to its own platform drivers. The idea is to make musb_core agnostic of platform specific details such as controllable clocks, pm_runtime support, context save&restore support, etc. And later, we could get to a point where we build all glue layers together (well, all ARM-based, at least) and have a working binary in all boards. There's still lots of work to be done: need to clenaup the function pointers on musb_platform_ops structure and make use struct dev_pm_ops, etc etc. Anyways, _do_ test it ASAP, if possible I'd like push these on 2.6.38 merge window. Tested (actually testing) on my panda and so far so good. patches are also available at: git://gitorious.org/usb/usb.git musb-hw Felipe Balbi (22): usb: musb: introduce struct musb_platform_ops usb: musb: make all glue layer export struct musb_platform_ops arm: omap4: panda: initialize musb usb: musb: hold context on musb structure usb: musb: add Kconfig options for each glue layer usb: musb: trivial search and replace patch usb: musb: split omap2430 to its own platform_driver usb: musb: split am35x to its own platform_driver usb: musb: split tusb6010 to its own platform_driver usb: musb: split davinci to its own platform_driver usb: musb: split da8xx to its own platform_driver usb: musb: split blackfin to its own platform_driver usb: musb: omap2430: give it a context structure usb: musb: am35x: give it a context structure usb: musb: tusb6010: give it a context structure usb: musb: davinci: give it a context structure usb: musb: da8xx: give it a context structure usb: musb: blackfin: give it a context structure usb: musb: pass platform_ops via platform_data usb: musb: mark ->set_clock deprecated usb: musb: move clock handling to glue layer usb: musb: drop the set_clock magic arch/arm/mach-davinci/usb.c | 5 +- arch/arm/mach-omap2/board-n8x0.c | 6 +- arch/arm/mach-omap2/board-omap4panda.c | 1 + arch/arm/mach-omap2/clock2420_data.c | 2 +- arch/arm/mach-omap2/clock2430_data.c | 2 +- arch/arm/mach-omap2/clock3xxx_data.c | 8 +- arch/arm/mach-omap2/clock44xx_data.c | 2 +- arch/arm/mach-omap2/usb-musb.c | 5 +- arch/arm/mach-omap2/usb-tusb6010.c | 2 +- arch/blackfin/mach-bf527/boards/ad7160eval.c | 2 +- arch/blackfin/mach-bf527/boards/cm_bf527.c | 2 +- arch/blackfin/mach-bf527/boards/ezbrd.c | 2 +- arch/blackfin/mach-bf527/boards/ezkit.c | 2 +- arch/blackfin/mach-bf527/boards/tll6527m.c | 2 +- arch/blackfin/mach-bf548/boards/cm_bf548.c | 2 +- arch/blackfin/mach-bf548/boards/ezkit.c | 2 +- drivers/usb/gadget/gadget_chips.h | 2 +- drivers/usb/musb/Kconfig | 71 +++------ drivers/usb/musb/Makefile | 22 ++-- drivers/usb/musb/am35x.c | 206 ++++++++++++++++++++++---- drivers/usb/musb/blackfin.c | 142 ++++++++++++++++-- drivers/usb/musb/da8xx.c | 165 +++++++++++++++++++-- drivers/usb/musb/davinci.c | 160 +++++++++++++++++++-- drivers/usb/musb/musb_core.c | 164 ++++++++------------ drivers/usb/musb/musb_core.h | 199 ++++++++++++++++--------- drivers/usb/musb/musb_io.h | 4 +- drivers/usb/musb/musb_regs.h | 4 +- drivers/usb/musb/musb_virthub.c | 2 +- drivers/usb/musb/omap2430.c | 192 ++++++++++++++++++++---- drivers/usb/musb/tusb6010.c | 163 ++++++++++++++++++--- include/linux/usb/musb.h | 8 +- 31 files changed, 1179 insertions(+), 372 deletions(-) -- 1.7.3.2.343.g7d43d -- 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