[U-Boot] Targets with xHCI but without DM_USB

Hi,
as you might have noticed, Bin Meng is currently greatly improving the U-Boot xHCI support. While doing this, he noticed that some additions are more complex and especially ugly to add, since some users of the xHCI support have not enabled CONFIG_DM_USB. This adds ugly #ifdef's, which we really would like to avoid. Because of this we checked, which boards exactly are using xHCI without DM_USB enabled. Here a complete list of all the boards:
ls1012ardb_qspi_SECURE_BOOT ls1021atwr_nor_SECURE_BOOT am43xx_hs_evm am57xx_hs_evm ls1021aqds_nand ls1021atwr_nor ls1021atwr_qspi cm_t43 ls1021atwr_nor_lpuart ls1021aqds_sdcard_qspi k2hk_hs_evm am43xx_evm ls1021aqds_qspi am57xx_evm_nodt k2g_hs_evm ls1021atwr_sdcard_qspi am43xx_evm_ethboot ls1021aqds_sdcard_ifc k2l_evm am43xx_evm_usbhost_boot am43xx_evm_qspiboot k2g_evm am57xx_evm ls1021atwr_sdcard_ifc cl-som-am57x k2hk_evm k2e_evm ls1021atwr_sdcard_ifc_SECURE_BOOT ls1021aqds_nor_SECURE_BOOT k2e_hs_evm
So I'm sending this mail to you, the maintainers of the boards above and would like you to check, if you can enable DM_USB for these boards. This would be great, as it would bring the xHCI support into a much better state, with only DM_USB enabled.
Thanks for your feedback in advance.
Thanks, Stefan

Hi Stefan,
On Thursday 29 June 2017 11:15 AM, Stefan Roese wrote:
Hi,
as you might have noticed, Bin Meng is currently greatly improving the U-Boot xHCI support. While doing this, he noticed that some additions are more complex and especially ugly to add, since some users of the xHCI support have not enabled CONFIG_DM_USB. This adds ugly #ifdef's, which we really would like to avoid. Because of this we checked, which boards exactly are using xHCI without DM_USB enabled. Here a complete list of all the boards:
ls1012ardb_qspi_SECURE_BOOT ls1021atwr_nor_SECURE_BOOT am43xx_hs_evm am57xx_hs_evm ls1021aqds_nand ls1021atwr_nor ls1021atwr_qspi cm_t43 ls1021atwr_nor_lpuart ls1021aqds_sdcard_qspi k2hk_hs_evm am43xx_evm ls1021aqds_qspi am57xx_evm_nodt k2g_hs_evm ls1021atwr_sdcard_qspi am43xx_evm_ethboot ls1021aqds_sdcard_ifc k2l_evm am43xx_evm_usbhost_boot am43xx_evm_qspiboot k2g_evm am57xx_evm ls1021atwr_sdcard_ifc cl-som-am57x k2hk_evm k2e_evm ls1021atwr_sdcard_ifc_SECURE_BOOT ls1021aqds_nor_SECURE_BOOT k2e_hs_evm
For TI platforms, there is some work needed to convert xhci-dwc3, xhci-omap and xhci-keystone to DM (under drivers/usb/host)
But the bigger concern of enabling DM_USB is with gadget framework, which is not DM compliant yet. There is a significant amount work[1][2] there before dwc3 gadget can be moved to DM and we can enable DM_USB.
[1]https://lists.denx.de/pipermail/u-boot/2017-June/296081.html [2]https://lists.denx.de/pipermail/u-boot/2017-June/295370.html

Hi Vignesh,
On Thu, Jun 29, 2017 at 2:41 PM, Vignesh R vigneshr@ti.com wrote:
Hi Stefan,
On Thursday 29 June 2017 11:15 AM, Stefan Roese wrote:
Hi,
as you might have noticed, Bin Meng is currently greatly improving the U-Boot xHCI support. While doing this, he noticed that some additions are more complex and especially ugly to add, since some users of the xHCI support have not enabled CONFIG_DM_USB. This adds ugly #ifdef's, which we really would like to avoid. Because of this we checked, which boards exactly are using xHCI without DM_USB enabled. Here a complete list of all the boards:
ls1012ardb_qspi_SECURE_BOOT ls1021atwr_nor_SECURE_BOOT am43xx_hs_evm am57xx_hs_evm ls1021aqds_nand ls1021atwr_nor ls1021atwr_qspi cm_t43 ls1021atwr_nor_lpuart ls1021aqds_sdcard_qspi k2hk_hs_evm am43xx_evm ls1021aqds_qspi am57xx_evm_nodt k2g_hs_evm ls1021atwr_sdcard_qspi am43xx_evm_ethboot ls1021aqds_sdcard_ifc k2l_evm am43xx_evm_usbhost_boot am43xx_evm_qspiboot k2g_evm am57xx_evm ls1021atwr_sdcard_ifc cl-som-am57x k2hk_evm k2e_evm ls1021atwr_sdcard_ifc_SECURE_BOOT ls1021aqds_nor_SECURE_BOOT k2e_hs_evm
For TI platforms, there is some work needed to convert xhci-dwc3, xhci-omap and xhci-keystone to DM (under drivers/usb/host)
But the bigger concern of enabling DM_USB is with gadget framework, which is not DM compliant yet. There is a significant amount work[1][2] there before dwc3 gadget can be moved to DM and we can enable DM_USB.
[1]https://lists.denx.de/pipermail/u-boot/2017-June/296081.html [2]https://lists.denx.de/pipermail/u-boot/2017-June/295370.html
I thought gadget and host support are separate, so host support like xHCI can be moved to DM without affecting gadget support, no? Are they sharing some codes?
Other board maintainers, your comments are welcome.
Regards, Bin

Hi Bin,
On Monday 03 July 2017 06:49 PM, Bin Meng wrote:
Hi Vignesh,
On Thu, Jun 29, 2017 at 2:41 PM, Vignesh R vigneshr@ti.com wrote:
Hi Stefan,
On Thursday 29 June 2017 11:15 AM, Stefan Roese wrote:
Hi,
as you might have noticed, Bin Meng is currently greatly improving the U-Boot xHCI support. While doing this, he noticed that some additions are more complex and especially ugly to add, since some users of the xHCI support have not enabled CONFIG_DM_USB. This adds ugly #ifdef's, which we really would like to avoid. Because of this we checked, which boards exactly are using xHCI without DM_USB enabled. Here a complete list of all the boards:
ls1012ardb_qspi_SECURE_BOOT ls1021atwr_nor_SECURE_BOOT am43xx_hs_evm am57xx_hs_evm ls1021aqds_nand ls1021atwr_nor ls1021atwr_qspi cm_t43 ls1021atwr_nor_lpuart ls1021aqds_sdcard_qspi k2hk_hs_evm am43xx_evm ls1021aqds_qspi am57xx_evm_nodt k2g_hs_evm ls1021atwr_sdcard_qspi am43xx_evm_ethboot ls1021aqds_sdcard_ifc k2l_evm am43xx_evm_usbhost_boot am43xx_evm_qspiboot k2g_evm am57xx_evm ls1021atwr_sdcard_ifc cl-som-am57x k2hk_evm k2e_evm ls1021atwr_sdcard_ifc_SECURE_BOOT ls1021aqds_nor_SECURE_BOOT k2e_hs_evm
For TI platforms, there is some work needed to convert xhci-dwc3, xhci-omap and xhci-keystone to DM (under drivers/usb/host)
But the bigger concern of enabling DM_USB is with gadget framework, which is not DM compliant yet. There is a significant amount work[1][2] there before dwc3 gadget can be moved to DM and we can enable DM_USB.
[1]https://lists.denx.de/pipermail/u-boot/2017-June/296081.html [2]https://lists.denx.de/pipermail/u-boot/2017-June/295370.html
I thought gadget and host support are separate, so host support like xHCI can be moved to DM without affecting gadget support, no? Are they sharing some codes?
Right now, the assumption is if DM_USB is enabled, then both host and gadget frameworks use DM along with DT. If, DM_USB is enabled, then board specific registration of gadget drivers don't happen. Also, I see couple of gadget drivers like ether.c. ci_udc.c (and everything under musb_new) seem use DM_USB already, making it hard for DM based host and non DM gadget to exist.
Some work would be needed to remove dependency b/w DM_USB and gadget support.

+Alison and York for LS1021A_xxx boards..
On Tue, Jul 4, 2017 at 12:36 PM, Vignesh R vigneshr@ti.com wrote:
Hi Bin,
On Monday 03 July 2017 06:49 PM, Bin Meng wrote:
Hi Vignesh,
On Thu, Jun 29, 2017 at 2:41 PM, Vignesh R vigneshr@ti.com wrote:
Hi Stefan,
On Thursday 29 June 2017 11:15 AM, Stefan Roese wrote:
Hi,
as you might have noticed, Bin Meng is currently greatly improving the U-Boot xHCI support. While doing this, he noticed that some additions are more complex and especially ugly to add, since some users of the xHCI support have not enabled CONFIG_DM_USB. This adds ugly #ifdef's, which we really would like to avoid. Because of this we checked, which boards exactly are using xHCI without DM_USB enabled. Here a complete list of all the boards:
ls1012ardb_qspi_SECURE_BOOT ls1021atwr_nor_SECURE_BOOT am43xx_hs_evm am57xx_hs_evm ls1021aqds_nand ls1021atwr_nor ls1021atwr_qspi cm_t43 ls1021atwr_nor_lpuart ls1021aqds_sdcard_qspi k2hk_hs_evm am43xx_evm ls1021aqds_qspi am57xx_evm_nodt k2g_hs_evm ls1021atwr_sdcard_qspi am43xx_evm_ethboot ls1021aqds_sdcard_ifc k2l_evm am43xx_evm_usbhost_boot am43xx_evm_qspiboot k2g_evm am57xx_evm ls1021atwr_sdcard_ifc cl-som-am57x k2hk_evm k2e_evm ls1021atwr_sdcard_ifc_SECURE_BOOT ls1021aqds_nor_SECURE_BOOT k2e_hs_evm
For TI platforms, there is some work needed to convert xhci-dwc3, xhci-omap and xhci-keystone to DM (under drivers/usb/host)
But the bigger concern of enabling DM_USB is with gadget framework, which is not DM compliant yet. There is a significant amount work[1][2] there before dwc3 gadget can be moved to DM and we can enable DM_USB.
[1]https://lists.denx.de/pipermail/u-boot/2017-June/296081.html [2]https://lists.denx.de/pipermail/u-boot/2017-June/295370.html
I thought gadget and host support are separate, so host support like xHCI can be moved to DM without affecting gadget support, no? Are they sharing some codes?
Right now, the assumption is if DM_USB is enabled, then both host and gadget frameworks use DM along with DT. If, DM_USB is enabled, then board specific registration of gadget drivers don't happen. Also, I see couple of gadget drivers like ether.c. ci_udc.c (and everything under musb_new) seem use DM_USB already, making it hard for DM based host and non DM gadget to exist.
Some work would be needed to remove dependency b/w DM_USB and gadget support.
Thanks for the clarification!
Regards, Bin

Hi, Bin,
I have sent a patch to enable driver model for USB for LS1021A boards.
Thanks for reminding.
Best Regards, Alison Wang
-----Original Message----- From: Bin Meng [mailto:bmeng.cn@gmail.com] Sent: Tuesday, July 04, 2017 10:16 PM To: Vignesh R vigneshr@ti.com; Alison Wang alison.wang@nxp.com; York Sun york.sun@nxp.com Cc: Stefan Roese sr@denx.de; U-Boot list u-boot@lists.denx.de; Marek Vasut marex@denx.de; Prabhakar Kushwaha prabhakar.kushwaha@nxp.com; Sumit Garg sumit.garg@nxp.com; Vutla, Lokesh lokeshvutla@ti.com; Alison Wang alison.wang@freescale.com; Nikita Kiryanov nikita@compulab.co.il; Davis, Andrew afd@ti.com; Andrianov, Vitaly vitalya@ti.com; Uri Mashiach uri.mashiach@compulab.co.il Subject: Re: [U-Boot] Targets with xHCI but without DM_USB
+Alison and York for LS1021A_xxx boards..
On Tue, Jul 4, 2017 at 12:36 PM, Vignesh R vigneshr@ti.com wrote:
Hi Bin,
On Monday 03 July 2017 06:49 PM, Bin Meng wrote:
Hi Vignesh,
On Thu, Jun 29, 2017 at 2:41 PM, Vignesh R vigneshr@ti.com wrote:
Hi Stefan,
On Thursday 29 June 2017 11:15 AM, Stefan Roese wrote:
Hi,
as you might have noticed, Bin Meng is currently greatly improving the U-Boot xHCI support. While doing this, he noticed that some additions are more complex and especially ugly to add, since some users of the xHCI support have not enabled CONFIG_DM_USB. This
adds
ugly #ifdef's, which we really would like to avoid. Because of
this
we checked, which boards exactly are using xHCI without DM_USB enabled. Here a complete list of all the boards:
ls1012ardb_qspi_SECURE_BOOT ls1021atwr_nor_SECURE_BOOT am43xx_hs_evm am57xx_hs_evm ls1021aqds_nand ls1021atwr_nor ls1021atwr_qspi cm_t43 ls1021atwr_nor_lpuart ls1021aqds_sdcard_qspi k2hk_hs_evm am43xx_evm ls1021aqds_qspi am57xx_evm_nodt k2g_hs_evm ls1021atwr_sdcard_qspi am43xx_evm_ethboot ls1021aqds_sdcard_ifc k2l_evm am43xx_evm_usbhost_boot am43xx_evm_qspiboot k2g_evm am57xx_evm ls1021atwr_sdcard_ifc cl-som-am57x k2hk_evm k2e_evm ls1021atwr_sdcard_ifc_SECURE_BOOT ls1021aqds_nor_SECURE_BOOT k2e_hs_evm
For TI platforms, there is some work needed to convert xhci-dwc3, xhci-omap and xhci-keystone to DM (under drivers/usb/host)
But the bigger concern of enabling DM_USB is with gadget framework, which is not DM compliant yet. There is a significant amount work[1][2] there before dwc3 gadget can be moved to DM and we can
enable DM_USB.
[1]https://lists.denx.de/pipermail/u-boot/2017-June/296081.html [2]https://lists.denx.de/pipermail/u-boot/2017-June/295370.html
I thought gadget and host support are separate, so host support like xHCI can be moved to DM without affecting gadget support, no? Are they sharing some codes?
Right now, the assumption is if DM_USB is enabled, then both host and gadget frameworks use DM along with DT. If, DM_USB is enabled, then board specific registration of gadget drivers don't happen. Also, I see couple of gadget drivers like ether.c. ci_udc.c (and everything under musb_new) seem use DM_USB already, making it hard for DM based host and non DM gadget to exist.
Some work would be needed to remove dependency b/w DM_USB and gadget support.
Thanks for the clarification!
Regards, Bin
participants (4)
-
Alison Wang
-
Bin Meng
-
Stefan Roese
-
Vignesh R