31 Jul, 2019

1 commit

  • Convert the ci_udc driver to driver model by using the uclass
    UCLASS_USB_GADGET_GENERIC. The clk and power of USB controller and USB
    PHY both are initialized by parsing the device tree nodes.

    If CONFIG_DM_USB_GADGET is defined, we use the ci_udc driver in DM way,
    if it does not defined, we can use ci_udc driver in its original Non-DM
    way.

    Move some USB PHY register definitions from ehci-mx6.c to
    asm/mach-imx/regs-usbphy.h in order to share with DM usb gadget driver.

    Signed-off-by: Sherry Sun
    Reviewed-by: Ye Li

    Sherry Sun
     

24 May, 2019

1 commit

  • It is for imx8qm and imx8qxp, and the cadence IP is in it.

    Both DM and Non-DM are supported in this driver. The DM support
    only probes the USB3 node, but won't parse any properties from node in DTS.
    The registers address are still hard coded, that share with non-DM codes.

    The DM driver will enable the power of USB3 controller and USB3 PHY. But
    for Non-DM driver, users need to power up them in board level codes.

    Signed-off-by: Peter Chen
    Signed-off-by: Ye Li
    (cherry picked from commit 952d331f7b12ba278d4f6a68b0be2b1e6d1b31b8)

    Peter Chen
     

15 Dec, 2018

1 commit


06 Dec, 2018

1 commit

  • The regs_phy field of the platform data structure for dwc2-otg is
    today declared an unsigned int, but will eventually be cast into a
    void* for a writel operation. This triggers errors on modern GCC
    versions.

    E.g. we get the following error with GCC 6.3:
    drivers/usb/phy/rockchip_usb2_phy.c: In function 'property_enable':
    arch/arm/include/asm/io.h:49:29: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
    #define __arch_putl(v,a) (*(volatile unsigned int *)(a) = (v))
    ^
    arch/arm/include/asm/io.h:117:48: note: in expansion of macro '__arch_putl'
    #define writel(v,c) ({ u32 __v = v; __iowmb(); __arch_putl(__v,c); __v; })
    ^~~~~~~~~~~
    drivers/usb/phy/rockchip_usb2_phy.c:61:2: note: in expansion of macro 'writel'
    writel(val, pdata->regs_phy + reg->offset);
    ^~~~~~

    This commit changes regs_phy to be a uintptr_t to ensure that it is
    large enough to hold any valid pointer (and fix the associated
    warning).

    Signed-off-by: Philipp Tomsich

    Philipp Tomsich
     

07 May, 2018

1 commit

  • When U-Boot started using SPDX tags we were among the early adopters and
    there weren't a lot of other examples to borrow from. So we picked the
    area of the file that usually had a full license text and replaced it
    with an appropriate SPDX-License-Identifier: entry. Since then, the
    Linux Kernel has adopted SPDX tags and they place it as the very first
    line in a file (except where shebangs are used, then it's second line)
    and with slightly different comment styles than us.

    In part due to community overlap, in part due to better tag visibility
    and in part for other minor reasons, switch over to that style.

    This commit changes all instances where we have a single declared
    license in the tag as both the before and after are identical in tag
    contents. There's also a few places where I found we did not have a tag
    and have introduced one.

    Signed-off-by: Tom Rini

    Tom Rini
     

28 Nov, 2017

1 commit


12 Oct, 2017

1 commit

  • When compiling with W=1 the following warning is observed:

    board/freescale/mx6sabresd/mx6sabresd.c:601:5: warning: no previous prototype for ‘board_ehci_power’ [-Wmissing-prototypes] int board_ehci_power(int port, int on)

    Remove this warning by adding the function prototype into usb/ehci-ci.h file.

    Signed-off-by: Diego Dorta

    Diego Dorta
     

23 Sep, 2017

1 commit


10 Aug, 2017

1 commit


16 Jun, 2017

1 commit


12 Jun, 2017

1 commit

  • There was for long time no activity in the 8xx area.
    We need to go further and convert to Kconfig, but it
    turned out, nobody is interested anymore in 8xx,
    so remove it (with a heavy heart, knowing that I remove
    here the root of U-Boot).

    Signed-off-by: Heiko Schocher

    Heiko Schocher
     

08 Jun, 2017

1 commit

  • The regs_otg field in uintptr_t of the platform data structure for
    dwc2-otg has thus far been an unsigned int, but will eventually be
    casted into a void*.

    This raises the following error with GCC 6.3 and buildman:
    ../drivers/usb/gadget/dwc2_udc_otg.c: In function 'dwc2_udc_probe':
    ../drivers/usb/gadget/dwc2_udc_otg.c:821:8: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
    reg = (struct dwc2_usbotg_reg *)pdata->regs_otg;
    ^

    This changes regs_otg to a uintptr_t to ensure that it is large enough
    to hold any valid pointer (and fix the associated warning).

    Signed-off-by: Philipp Tomsich

    Philipp Tomsich
     

18 Apr, 2017

1 commit


24 Sep, 2016

1 commit


27 Jul, 2016

2 commits


26 Jul, 2016

2 commits


02 Apr, 2016

5 commits

  • Use definitions from ehci.h instead.

    Signed-off-by: Mateusz Kulikowski
    Acked-by: Marek Vasut
    Tested-by: Simon Glass

    Mateusz Kulikowski
     
  • Some registers of usb_ehci were marked as reserved.
    This may be true for some variants of Chipidea USB core, but they have
    meaning on other devices.

    The following registers were added:
    sbusstatus/sbusmode: AHB-related registers
    genconfig*: Auxiluary IP core configuration registers.

    Signed-off-by: Mateusz Kulikowski
    Reviewed-by: Marek Vasut
    Tested-by: Simon Glass

    Mateusz Kulikowski
     
  • Most of ehci-fsl header describe USB controller
    designed by Chipidea and used by various SoC vendors.

    This patch renames it to a generic header: ehci-ci.h
    Contents of file are not changed (so it contains several
    references to freescale SoCs).

    Signed-off-by: Mateusz Kulikowski
    Acked-by: Marek Vasut
    Tested-by: Simon Glass

    Mateusz Kulikowski
     
  • ulpi_read and ulpi_write are used to read/write registers via ULPI bus.
    Code generates compilation warnings on 64-bit machines where pointer
    is cast to u32.

    This patch drops all but last 8 bits of register address.
    It is possible, because addresses on ULPI bus are 6- or 8-bit.

    It is not possible (according to ULPI 1.1 spec) to have more
    than 8-bit addressing.

    This patch should not cause regressions as all calls to
    ulpi_read/write use either structure pointer (@ address 0) or integer
    offsets cast to pointer - addresses requested are way below 8-bit range.

    Signed-off-by: Mateusz Kulikowski
    Acked-by: Marek Vasut

    Mateusz Kulikowski
     
  • viewport_addr is address of memory mapped ULPI viewport.
    It is used only as argument to readl/writel later
    causing compile warnings on 64-bit devices.

    This fix changes its type to match pointer size.

    Signed-off-by: Mateusz Kulikowski
    Acked-by: Marek Vasut

    Mateusz Kulikowski
     

19 Jan, 2016

1 commit

  • In a number of places we had wordings of the GPL (or LGPL in a few
    cases) license text that were split in such a way that it wasn't caught
    previously. Convert all of these to the correct SPDX-License-Identifier
    tag.

    Signed-off-by: Tom Rini

    Tom Rini
     

18 Dec, 2015

7 commits


12 Dec, 2014

1 commit


25 Nov, 2014

1 commit


15 Nov, 2014

1 commit

  • usb_phy_enable should return status bit, but not phy mode bit, thus
    add a new function usb_phy_mode to query the PHY for it's mode and
    make usb_phy_enable just return 0 but not 'phy_ctrl & USBPHY_CTRL_OTG_ID'.

    Include a new board weak function board_usb_phy_mode. If board code
    does not reimplement this function, it just call usb_phy_mode and return
    usb_phy_mode's return value. The reason to include such a weak function
    is: " SOC OTG core board HOST port, but no pin id for
    the board host port, so board can not use usb_phy_mode to return the
    phy mode, but define it's own rule."

    Signed-off-by: Peng Fan
    Signed-off-by: Ye Li

    Peng Fan
     

07 Nov, 2014

1 commit

  • Allow passing in a custom configuration of the gusbcfg register
    via platform data.

    Signed-off-by: Marek Vasut
    Cc: Chin Liang See
    Cc: Dinh Nguyen
    Cc: Vince Bridgers
    Acked-by: Pavel Machek
    Cc: Stefan Roese
    Reviewed-by: Lukasz Majewski
    Tested-by: Lukasz Majewski

    Marek Vasut
     

31 Oct, 2014

1 commit

  • [1] arch/arm/include/asm/arch-at91/at91_shdwn.h
    The top9000 was the last board to use this header file.
    It was removed by commit d58a9451e733 (ppc/arm: zap EMK boards).

    [2] board/matrix_vision/common/*
    Some Matrix Vision boards were dropped by commit e7a565638a7a
    (powerpc: mpc83xx: remove board support for MERGERBOX and MVBLM7)
    and commit af55e35d3389
    (powerpc: mpc5xxx: remove board support for MVBC_P and MVSMR).
    Since then these files have been unused.

    [3] include/usb/omap1510_udc.h
    The omap5912osk was the last board to use this header file.
    It was removed by commit 62d636aa2ac2
    (omap: remove omap5912osk board support).

    Signed-off-by: Masahiro Yamada
    Acked-By: Wolfgang Denk

    Masahiro Yamada
     

26 Aug, 2014

1 commit

  • resync ubi subsystem with linux:

    commit 455c6fdbd219161bd09b1165f11699d6d73de11c
    Author: Linus Torvalds
    Date: Sun Mar 30 20:40:15 2014 -0700

    Linux 3.14

    A nice side effect of this, is we introduce UBI Fastmap support
    to U-Boot.

    Signed-off-by: Heiko Schocher
    Signed-off-by: Tom Rini
    Cc: Marek Vasut
    Cc: Sergey Lapin
    Cc: Scott Wood
    Cc: Joerg Krause

    Heiko Schocher
     

09 Aug, 2014

1 commit

  • The following configs are not defined at all.

    - CONFIG_OMAP1510
    - CONFIG_OMAP_1510P1
    - CONFIG_OMAP_SX1
    - CONFIG_OMAP3_DMA
    - CONFIG_OMAP3_ZOOM2
    - CONFIG_OMAP_INNOVATOR

    Signed-off-by: Masahiro Yamada
    Cc: Tom Rini

    Masahiro Yamada
     

17 May, 2014

1 commit


23 Apr, 2014

1 commit

  • Increase TXFIFOTHRES field value in TXFILLTUNING register of usb for T4 Rev 2.0.
    This decreases data burst rate with which data packets are posted from the TX
    latency FIFO to compensate for latencies in DDR pipeline during DMA.
    This avoids Tx buffer underruns and leads to successful usb writes

    Signed-off-by: Ramneek Mehresh
    Signed-off-by: Nikhil Badola
    Reviewed-by: York Sun

    Nikhil Badola