Message ID | 1465374150-19443-2-git-send-email-rajesh.bhagat@nxp.com |
---|---|
State | Superseded |
Headers | show |
On 06/08/2016 10:22 AM, Rajesh Bhagat wrote: > This adds the required code to set up a ULPI USB port, for > new NXP USB PHY used in QorIQ platforms. > > To use this both CONFIG_USB_ULPI and CONFIG_USB_ULPI_VIEWPORT > have to be set in the board configuration file. > > Signed-off-by: Rajesh Bhagat <rajesh.bhagat@nxp.com> > --- > drivers/usb/host/ehci-fsl.c | 21 +++++++++++++++++++++ > 1 files changed, 21 insertions(+), 0 deletions(-) > > diff --git a/drivers/usb/host/ehci-fsl.c b/drivers/usb/host/ehci-fsl.c > index a43d37d..897f453 100644 > --- a/drivers/usb/host/ehci-fsl.c > +++ b/drivers/usb/host/ehci-fsl.c > @@ -16,6 +16,9 @@ > #include <hwconfig.h> > #include <fsl_usb.h> > #include <fdt_support.h> > +#ifdef CONFIG_USB_ULPI > +#include <usb/ulpi.h> > +#endif > > #include "ehci.h" > > @@ -50,6 +53,10 @@ int ehci_hcd_init(int index, enum usb_init_type init, > const char *phy_type = NULL; > size_t len; > char current_usb_controller[5]; > +#ifdef CONFIG_USB_ULPI > + int ret; > + struct ulpi_viewport ulpi_vp; > +#endif > #ifdef CONFIG_SYS_FSL_USB_INTERNAL_UTMI_PHY > char usb_phy[5]; > > @@ -126,6 +133,20 @@ int ehci_hcd_init(int index, enum usb_init_type init, > udelay(1000); /* delay required for PHY Clk to appear */ > if (!usb_phy_clk_valid(ehci)) > return -EINVAL; > + > +#ifdef CONFIG_USB_ULPI > + ulpi_vp.viewport_addr = (u32)&ehci->ulpi_viewpoint; > + ulpi_vp.port_num = 0; > + > + ret = ulpi_init(&ulpi_vp); > + if (ret) { > + puts("NXP ULPI viewport init failed\n"); > + return -1; return ret; > + } > + > + ulpi_set_vbus(&ulpi_vp, 1, 1); > + ulpi_set_vbus_indicator(&ulpi_vp, 1, 1, 1); > +#endif > out_le32(&(*hcor)->or_portsc[0], PORT_PTS_ULPI); > } > >
> -----Original Message----- > From: Marek Vasut [mailto:marex@denx.de] > Sent: Wednesday, June 08, 2016 7:29 PM > To: Rajesh Bhagat <rajesh.bhagat@nxp.com>; u-boot@lists.denx.de > Cc: Sriram Dash <sriram.dash@nxp.com>; albert.u.boot@aribaud.net; > prabhakar@freescale.com; york sun <york.sun@nxp.com>; Rajat Srivastava > <rajat.srivastava@nxp.com> > Subject: Re: [PATCH 1/3] drivers: usb: fsl: add USB ULPI init code > > On 06/08/2016 10:22 AM, Rajesh Bhagat wrote: > > This adds the required code to set up a ULPI USB port, for new NXP USB > > PHY used in QorIQ platforms. > > > > To use this both CONFIG_USB_ULPI and CONFIG_USB_ULPI_VIEWPORT have to > > be set in the board configuration file. > > > > Signed-off-by: Rajesh Bhagat <rajesh.bhagat@nxp.com> > > --- > > drivers/usb/host/ehci-fsl.c | 21 +++++++++++++++++++++ > > 1 files changed, 21 insertions(+), 0 deletions(-) > > > > diff --git a/drivers/usb/host/ehci-fsl.c b/drivers/usb/host/ehci-fsl.c > > index a43d37d..897f453 100644 > > --- a/drivers/usb/host/ehci-fsl.c > > +++ b/drivers/usb/host/ehci-fsl.c > > @@ -16,6 +16,9 @@ > > #include <hwconfig.h> > > #include <fsl_usb.h> > > #include <fdt_support.h> > > +#ifdef CONFIG_USB_ULPI > > +#include <usb/ulpi.h> > > +#endif > > > > #include "ehci.h" > > > > @@ -50,6 +53,10 @@ int ehci_hcd_init(int index, enum usb_init_type init, > > const char *phy_type = NULL; > > size_t len; > > char current_usb_controller[5]; > > +#ifdef CONFIG_USB_ULPI > > + int ret; > > + struct ulpi_viewport ulpi_vp; > > +#endif > > #ifdef CONFIG_SYS_FSL_USB_INTERNAL_UTMI_PHY > > char usb_phy[5]; > > > > @@ -126,6 +133,20 @@ int ehci_hcd_init(int index, enum usb_init_type init, > > udelay(1000); /* delay required for PHY Clk to appear */ > > if (!usb_phy_clk_valid(ehci)) > > return -EINVAL; > > + > > +#ifdef CONFIG_USB_ULPI > > + ulpi_vp.viewport_addr = (u32)&ehci->ulpi_viewpoint; > > + ulpi_vp.port_num = 0; > > + > > + ret = ulpi_init(&ulpi_vp); > > + if (ret) { > > + puts("NXP ULPI viewport init failed\n"); > > + return -1; Hello Marek, > > return ret; > Will take care in v2. Best Regards, Rajesh Bhagat > > + } > > + > > + ulpi_set_vbus(&ulpi_vp, 1, 1); > > + ulpi_set_vbus_indicator(&ulpi_vp, 1, 1, 1); #endif > > out_le32(&(*hcor)->or_portsc[0], PORT_PTS_ULPI); > > } > > > > > > > -- > Best regards, > Marek Vasut
diff --git a/drivers/usb/host/ehci-fsl.c b/drivers/usb/host/ehci-fsl.c index a43d37d..897f453 100644 --- a/drivers/usb/host/ehci-fsl.c +++ b/drivers/usb/host/ehci-fsl.c @@ -16,6 +16,9 @@ #include <hwconfig.h> #include <fsl_usb.h> #include <fdt_support.h> +#ifdef CONFIG_USB_ULPI +#include <usb/ulpi.h> +#endif #include "ehci.h" @@ -50,6 +53,10 @@ int ehci_hcd_init(int index, enum usb_init_type init, const char *phy_type = NULL; size_t len; char current_usb_controller[5]; +#ifdef CONFIG_USB_ULPI + int ret; + struct ulpi_viewport ulpi_vp; +#endif #ifdef CONFIG_SYS_FSL_USB_INTERNAL_UTMI_PHY char usb_phy[5]; @@ -126,6 +133,20 @@ int ehci_hcd_init(int index, enum usb_init_type init, udelay(1000); /* delay required for PHY Clk to appear */ if (!usb_phy_clk_valid(ehci)) return -EINVAL; + +#ifdef CONFIG_USB_ULPI + ulpi_vp.viewport_addr = (u32)&ehci->ulpi_viewpoint; + ulpi_vp.port_num = 0; + + ret = ulpi_init(&ulpi_vp); + if (ret) { + puts("NXP ULPI viewport init failed\n"); + return -1; + } + + ulpi_set_vbus(&ulpi_vp, 1, 1); + ulpi_set_vbus_indicator(&ulpi_vp, 1, 1, 1); +#endif out_le32(&(*hcor)->or_portsc[0], PORT_PTS_ULPI); }
This adds the required code to set up a ULPI USB port, for new NXP USB PHY used in QorIQ platforms. To use this both CONFIG_USB_ULPI and CONFIG_USB_ULPI_VIEWPORT have to be set in the board configuration file. Signed-off-by: Rajesh Bhagat <rajesh.bhagat@nxp.com> --- drivers/usb/host/ehci-fsl.c | 21 +++++++++++++++++++++ 1 files changed, 21 insertions(+), 0 deletions(-)