Re: [U-Boot] [PATCH RFC v2 0/6] usb: host: Add driver model support

+mailing list
On 18 February 2015 at 06:14, Simon Glass sjg@chromium.org wrote:
Hi Vivek,
On 18 February 2015 at 03:40, Vivek Gautam gautam.vivek@samsung.com wrote:
Hi Marek, Simon,
This patch-series comes as a update for an earlier posted series[1] "[PATCH RFC 0/2] usb: host: Add a wrapper layer for mutiple host support" which was posted long back.
We had discussion to introduce the driver model instead of the approach used in [1]. The driver model seems pretty straight-forward and easier to implement besides giving a clean approach to use multiple host controller types, viz. EHCI, XHCI or OHCI simultaneously on a platform which has such provision.
It's rather bad on my side that it took so long to post the updated version. Got busy with the projects. :-(
So here's the RFC-v2 which implements the driver model approach. I have added support on OHCI, EHCI and XHCI and enabled EHCI and XHCI on Exynos5250 machines. Though not tested thoroughly, i can see EHCI and XHCI working together (enumerating the Root hubs).
Let me know you comments on what you think of current approach.
Great to see this - will take a look. Did you see my RFC on 30th Jan? E.g. this:
https://patchwork.ozlabs.org/patch/434995/
Regards, Simon
Thanks Vivek
[1] [PATCH RFC 0/2] usb: host: Add a wrapper layer for mutiple host support http://lists.denx.de/pipermail/u-boot/2014-June/182559.html
Vivek Gautam (6): usb: Rename usb_submit_int_msg() API to usb_int_msg() dm: usb: Make necessary changes in framework for driver model dm: usb-host: Add UCLASS driver for USB dm: usb-host: Add support for driver model in o/e/xhci. arm: exynos5: Enable EHCI and XHCI hcds through device tree. configs: smdk5250: Enable using XHCI and EHCI together
arch/arm/dts/exynos5.dtsi | 8 +++ common/usb.c | 101 ++++++++++++++++++++++++++++++--- common/usb_hub.c | 2 +- common/usb_kbd.c | 4 +- common/usb_storage.c | 2 +- drivers/usb/host/Kconfig | 9 +++ drivers/usb/host/Makefile | 3 + drivers/usb/host/ehci-hcd.c | 36 +++++++++--- drivers/usb/host/ohci-hcd.c | 35 +++++++++--- drivers/usb/host/usb-uclass.c | 107 +++++++++++++++++++++++++++++++++++ drivers/usb/host/xhci.c | 34 ++++++++--- include/configs/exynos5-common.h | 3 + include/configs/exynos5250-common.h | 3 + include/configs/smdk5250.h | 2 + include/dm/uclass-id.h | 1 + include/usb.h | 62 +++++++++++++++----- 16 files changed, 365 insertions(+), 47 deletions(-) create mode 100644 drivers/usb/host/usb-uclass.c
-- 1.7.10.4

Hi Simon,
On Wed, Feb 18, 2015 at 6:45 PM, Simon Glass sjg@chromium.org wrote:
+mailing list
On 18 February 2015 at 06:14, Simon Glass sjg@chromium.org wrote:
Hi Vivek,
On 18 February 2015 at 03:40, Vivek Gautam gautam.vivek@samsung.com wrote:
Hi Marek, Simon,
This patch-series comes as a update for an earlier posted series[1] "[PATCH RFC 0/2] usb: host: Add a wrapper layer for mutiple host support" which was posted long back.
We had discussion to introduce the driver model instead of the approach used in [1]. The driver model seems pretty straight-forward and easier to implement besides giving a clean approach to use multiple host controller types, viz. EHCI, XHCI or OHCI simultaneously on a platform which has such provision.
It's rather bad on my side that it took so long to post the updated version. Got busy with the projects. :-(
So here's the RFC-v2 which implements the driver model approach. I have added support on OHCI, EHCI and XHCI and enabled EHCI and XHCI on Exynos5250 machines. Though not tested thoroughly, i can see EHCI and XHCI working together (enumerating the Root hubs).
Let me know you comments on what you think of current approach.
Great to see this - will take a look. Did you see my RFC on 30th Jan? E.g. this:
sorry i did not check that patch earlier. Thanks for pointing out.
Will take a look at the series.
Regards, Simon
Thanks Vivek
[1] [PATCH RFC 0/2] usb: host: Add a wrapper layer for mutiple host support http://lists.denx.de/pipermail/u-boot/2014-June/182559.html
Vivek Gautam (6): usb: Rename usb_submit_int_msg() API to usb_int_msg() dm: usb: Make necessary changes in framework for driver model dm: usb-host: Add UCLASS driver for USB dm: usb-host: Add support for driver model in o/e/xhci. arm: exynos5: Enable EHCI and XHCI hcds through device tree. configs: smdk5250: Enable using XHCI and EHCI together
arch/arm/dts/exynos5.dtsi | 8 +++ common/usb.c | 101 ++++++++++++++++++++++++++++++--- common/usb_hub.c | 2 +- common/usb_kbd.c | 4 +- common/usb_storage.c | 2 +- drivers/usb/host/Kconfig | 9 +++ drivers/usb/host/Makefile | 3 + drivers/usb/host/ehci-hcd.c | 36 +++++++++--- drivers/usb/host/ohci-hcd.c | 35 +++++++++--- drivers/usb/host/usb-uclass.c | 107 +++++++++++++++++++++++++++++++++++ drivers/usb/host/xhci.c | 34 ++++++++--- include/configs/exynos5-common.h | 3 + include/configs/exynos5250-common.h | 3 + include/configs/smdk5250.h | 2 + include/dm/uclass-id.h | 1 + include/usb.h | 62 +++++++++++++++----- 16 files changed, 365 insertions(+), 47 deletions(-) create mode 100644 drivers/usb/host/usb-uclass.c
-- 1.7.10.4
U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot

Hi Vivek,
On 18 February 2015 at 06:30, Vivek Gautam gautamvivek1987@gmail.com wrote:
Hi Simon,
On Wed, Feb 18, 2015 at 6:45 PM, Simon Glass sjg@chromium.org wrote:
+mailing list
On 18 February 2015 at 06:14, Simon Glass sjg@chromium.org wrote:
Hi Vivek,
On 18 February 2015 at 03:40, Vivek Gautam gautam.vivek@samsung.com wrote:
Hi Marek, Simon,
This patch-series comes as a update for an earlier posted series[1] "[PATCH RFC 0/2] usb: host: Add a wrapper layer for mutiple host support" which was posted long back.
We had discussion to introduce the driver model instead of the approach used in [1]. The driver model seems pretty straight-forward and easier to implement besides giving a clean approach to use multiple host controller types, viz. EHCI, XHCI or OHCI simultaneously on a platform which has such provision.
It's rather bad on my side that it took so long to post the updated version. Got busy with the projects. :-(
So here's the RFC-v2 which implements the driver model approach. I have added support on OHCI, EHCI and XHCI and enabled EHCI and XHCI on Exynos5250 machines. Though not tested thoroughly, i can see EHCI and XHCI working together (enumerating the Root hubs).
Let me know you comments on what you think of current approach.
Great to see this - will take a look. Did you see my RFC on 30th Jan? E.g. this:
sorry i did not check that patch earlier. Thanks for pointing out.
Will take a look at the series.
Any thoughts on this please?
I'd like to figure out what we should do next. I was hoping to get something in place in dm/next soon.
Regards, Simon
Thanks Vivek
[1] [PATCH RFC 0/2] usb: host: Add a wrapper layer for mutiple host support http://lists.denx.de/pipermail/u-boot/2014-June/182559.html
Vivek Gautam (6): usb: Rename usb_submit_int_msg() API to usb_int_msg() dm: usb: Make necessary changes in framework for driver model dm: usb-host: Add UCLASS driver for USB dm: usb-host: Add support for driver model in o/e/xhci. arm: exynos5: Enable EHCI and XHCI hcds through device tree. configs: smdk5250: Enable using XHCI and EHCI together
arch/arm/dts/exynos5.dtsi | 8 +++ common/usb.c | 101 ++++++++++++++++++++++++++++++--- common/usb_hub.c | 2 +- common/usb_kbd.c | 4 +- common/usb_storage.c | 2 +- drivers/usb/host/Kconfig | 9 +++ drivers/usb/host/Makefile | 3 + drivers/usb/host/ehci-hcd.c | 36 +++++++++--- drivers/usb/host/ohci-hcd.c | 35 +++++++++--- drivers/usb/host/usb-uclass.c | 107 +++++++++++++++++++++++++++++++++++ drivers/usb/host/xhci.c | 34 ++++++++--- include/configs/exynos5-common.h | 3 + include/configs/exynos5250-common.h | 3 + include/configs/smdk5250.h | 2 + include/dm/uclass-id.h | 1 + include/usb.h | 62 +++++++++++++++----- 16 files changed, 365 insertions(+), 47 deletions(-) create mode 100644 drivers/usb/host/usb-uclass.c
-- 1.7.10.4
U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
-- Best Regards Vivek Gautam Samsung R&D Institute, Bangalore India
REgards, Simon

Hi Simon,
On Tue, Feb 24, 2015 at 10:17 PM, Simon Glass sjg@chromium.org wrote:
Hi Vivek,
On 18 February 2015 at 06:30, Vivek Gautam gautamvivek1987@gmail.com wrote:
Hi Simon,
On Wed, Feb 18, 2015 at 6:45 PM, Simon Glass sjg@chromium.org wrote:
+mailing list
On 18 February 2015 at 06:14, Simon Glass sjg@chromium.org wrote:
Hi Vivek,
On 18 February 2015 at 03:40, Vivek Gautam gautam.vivek@samsung.com wrote:
Hi Marek, Simon,
This patch-series comes as a update for an earlier posted series[1] "[PATCH RFC 0/2] usb: host: Add a wrapper layer for mutiple host support" which was posted long back.
We had discussion to introduce the driver model instead of the approach used in [1]. The driver model seems pretty straight-forward and easier to implement besides giving a clean approach to use multiple host controller types, viz. EHCI, XHCI or OHCI simultaneously on a platform which has such provision.
It's rather bad on my side that it took so long to post the updated version. Got busy with the projects. :-(
So here's the RFC-v2 which implements the driver model approach. I have added support on OHCI, EHCI and XHCI and enabled EHCI and XHCI on Exynos5250 machines. Though not tested thoroughly, i can see EHCI and XHCI working together (enumerating the Root hubs).
Let me know you comments on what you think of current approach.
Great to see this - will take a look. Did you see my RFC on 30th Jan? E.g. this:
sorry i did not check that patch earlier. Thanks for pointing out.
Will take a look at the series.
Any thoughts on this please?
I'd like to figure out what we should do next. I was hoping to get something in place in dm/next soon.
I had a cursory look at your patch-series, and it looks in a better shape than mine. While my approach seems very simple wherein the callbacks have just been introduced in the usb-uclass driver, i think your patches handle the things more efficiently.
I will be reviewing them completely today, and will test them also for XHCI on snow board.
Sorry for keeping you waiting on this !!
Regards, Simon
Thanks Vivek
[1] [PATCH RFC 0/2] usb: host: Add a wrapper layer for mutiple host support http://lists.denx.de/pipermail/u-boot/2014-June/182559.html
Vivek Gautam (6): usb: Rename usb_submit_int_msg() API to usb_int_msg() dm: usb: Make necessary changes in framework for driver model dm: usb-host: Add UCLASS driver for USB dm: usb-host: Add support for driver model in o/e/xhci. arm: exynos5: Enable EHCI and XHCI hcds through device tree. configs: smdk5250: Enable using XHCI and EHCI together
arch/arm/dts/exynos5.dtsi | 8 +++ common/usb.c | 101 ++++++++++++++++++++++++++++++--- common/usb_hub.c | 2 +- common/usb_kbd.c | 4 +- common/usb_storage.c | 2 +- drivers/usb/host/Kconfig | 9 +++ drivers/usb/host/Makefile | 3 + drivers/usb/host/ehci-hcd.c | 36 +++++++++--- drivers/usb/host/ohci-hcd.c | 35 +++++++++--- drivers/usb/host/usb-uclass.c | 107 +++++++++++++++++++++++++++++++++++ drivers/usb/host/xhci.c | 34 ++++++++--- include/configs/exynos5-common.h | 3 + include/configs/exynos5250-common.h | 3 + include/configs/smdk5250.h | 2 + include/dm/uclass-id.h | 1 + include/usb.h | 62 +++++++++++++++----- 16 files changed, 365 insertions(+), 47 deletions(-) create mode 100644 drivers/usb/host/usb-uclass.c
-- 1.7.10.4
U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
-- Best Regards Vivek Gautam Samsung R&D Institute, Bangalore India
REgards, Simon

Hi Vivek,
On 25 February 2015 at 00:54, Vivek Gautam gautamvivek1987@gmail.com wrote:
Hi Simon,
On Tue, Feb 24, 2015 at 10:17 PM, Simon Glass sjg@chromium.org wrote:
Hi Vivek,
On 18 February 2015 at 06:30, Vivek Gautam gautamvivek1987@gmail.com wrote:
Hi Simon,
On Wed, Feb 18, 2015 at 6:45 PM, Simon Glass sjg@chromium.org wrote:
+mailing list
On 18 February 2015 at 06:14, Simon Glass sjg@chromium.org wrote:
Hi Vivek,
On 18 February 2015 at 03:40, Vivek Gautam gautam.vivek@samsung.com wrote:
Hi Marek, Simon,
This patch-series comes as a update for an earlier posted series[1] "[PATCH RFC 0/2] usb: host: Add a wrapper layer for mutiple host support" which was posted long back.
We had discussion to introduce the driver model instead of the approach used in [1]. The driver model seems pretty straight-forward and easier to implement besides giving a clean approach to use multiple host controller types, viz. EHCI, XHCI or OHCI simultaneously on a platform which has such provision.
It's rather bad on my side that it took so long to post the updated version. Got busy with the projects. :-(
So here's the RFC-v2 which implements the driver model approach. I have added support on OHCI, EHCI and XHCI and enabled EHCI and XHCI on Exynos5250 machines. Though not tested thoroughly, i can see EHCI and XHCI working together (enumerating the Root hubs).
Let me know you comments on what you think of current approach.
Great to see this - will take a look. Did you see my RFC on 30th Jan? E.g. this:
sorry i did not check that patch earlier. Thanks for pointing out.
Will take a look at the series.
Any thoughts on this please?
I'd like to figure out what we should do next. I was hoping to get something in place in dm/next soon.
I had a cursory look at your patch-series, and it looks in a better shape than mine. While my approach seems very simple wherein the callbacks have just been introduced in the usb-uclass driver, i think your patches handle the things more efficiently.
I will be reviewing them completely today, and will test them also for XHCI on snow board.
Sorry for keeping you waiting on this !!
Thanks for looking at it. Let me know if you have any comments. I'm planning to respin soon.
In your series you add both EHCI and XHCI support for Exynos, and we should really have that. The rename patch looks like something we need.
I'll take a look at how to fix the remaining problems with my series, add some more tests and finish off the sandbox implementation. Then we can work out how to merge the work you have done.
Regards, Simon
participants (2)
-
Simon Glass
-
Vivek Gautam