[U-Boot] [PATCH 7/8] smdk5420: Correct the vbus gpio configuration for USB controller

Marek Vasut marex at denx.de
Tue Jan 7 08:49:23 CET 2014


On Tuesday, January 07, 2014 at 07:37:46 AM, Vivek Gautam wrote:
> Hi Marek,
> 
> On Mon, Jan 6, 2014 at 9:22 PM, Marek Vasut <marex at denx.de> wrote:
> > On Monday, January 06, 2014 at 10:29:42 AM, Vivek Gautam wrote:
> >> On smdk5420 two availbale XHCI controllers require VBUS GPIO
> >> to be configured, the EHCI however doesn't have any such VBUS
> >> GPIO. So correcting the available board_usb_vbus_init() function
> >> to the needs.
> >> 
> >> Signed-off-by: Vivek Gautam <gautam.vivek at samsung.com>
> >> ---
> >> 
> >>  board/samsung/smdk5420/smdk5420.c |   11 ++++++-----
> >>  1 file changed, 6 insertions(+), 5 deletions(-)
> >> 
> >> diff --git a/board/samsung/smdk5420/smdk5420.c
> >> b/board/samsung/smdk5420/smdk5420.c index 3ad2ad0..4f23000 100644
> >> --- a/board/samsung/smdk5420/smdk5420.c
> >> +++ b/board/samsung/smdk5420/smdk5420.c
> >> @@ -18,14 +18,15 @@
> >> 
> >>  DECLARE_GLOBAL_DATA_PTR;
> >> 
> >> -#ifdef CONFIG_USB_EHCI_EXYNOS
> >> +#ifdef CONFIG_USB_XHCI_EXYNOS
> >> 
> >>  static int board_usb_vbus_init(void)
> >>  {
> >> 
> >> -     struct exynos5_gpio_part1 *gpio1 = (struct exynos5_gpio_part1 *)
> >> -                                            
> >> samsung_get_base_gpio_part1(); +     struct exynos5420_gpio_part4
> >> *gpio4 = (struct exynos5420_gpio_part4 *) +                            
> >>                 samsung_get_base_gpio_part4();
> >> 
> >>       /* Enable VBUS power switch */
> >> 
> >> -     s5p_gpio_direction_output(&gpio1->x2, 6, 1);
> >> +     s5p_gpio_direction_output(&gpio4->g0, 5, 1);
> >> +     s5p_gpio_direction_output(&gpio4->g1, 4, 1);
> > 
> > This VBUS toggling should happen on per-port basis, right ?
> 
> No this VBUS gpio toggling is actually enabling the VBUS line of the
> controller. And since we have 2 controllers on exynos5420, so added the
> required 2 gpios for the purpose
> (GPG0[5], and GPG1[4]).

So if I understand this correctly, it should happen on per-controller basis 
then?

Best regards,
Marek Vasut


More information about the U-Boot mailing list