Hi Marek, It's been very long since we had discussion for introducing the wrapper layer to enable using multiple usb controller types. Its been unfortunate that i had been busy with other tasks, and couldn't look into this. Now that i got sometime, i have prepared a simple RFC patch which right now supports APIs translation for submit_control_msg(), submit_bulk_msg(), submit_int_msg(), and usb_lowlevel_init() as well as usb_lowlevel_stop(). This was the simplest approach that could differentiate between controller types.
I had thought of another approach too, wherein there's a 'list' passed by the usb core layer, which would be filled with 'host_controller_drv' structure, that would contain information about the driver. And then each host controller driver will register certain callbacks that can be called from the upper layers. If you say i will send an RFC for this approach. Let me know you comments on what you think of current approach. Thanks Vivek Vivek Gautam (2): usb: Rename usb_submit_int_msg() API to usb_int_msg() RFC: usb: host: Introduce host translational layer common/usb.c | 12 +++-- common/usb_kbd.c | 6 +-- common/usb_storage.c | 2 +- drivers/usb/host/Makefile | 2 + drivers/usb/host/ehci-hcd.c | 15 +++--- drivers/usb/host/host_trans.c | 102 +++++++++++++++++++++++++++++++++++++++++ drivers/usb/host/host_trans.h | 42 +++++++++++++++++ drivers/usb/host/xhci.c | 11 +++-- include/usb.h | 17 ++++--- 9 files changed, 181 insertions(+), 28 deletions(-) create mode 100644 drivers/usb/host/host_trans.c create mode 100644 drivers/usb/host/host_trans.h -- 1.7.10.4 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot