07 May, 2020
1 commit
-
Using this way to check if OTG bus active, not depending on checking
OTG register. Because checking OTG register only working for first
cold boot from ROM. While doing partition reboot, SCFW will turn off
the entire conn SS, so that way won't work.Signed-off-by: Ye Li
Reviewed-by: Peng Fan
27 Apr, 2020
2 commits
-
On 2019.04 SPL, we enabled DM gadget driver for QM/QXP to support
dual USB ports. The CI_UDC DM gadget driver will call init function
inside EHCI mx6 driver, so when building SPL on iMX8QM/QXP with CI UDC
enabled, we have to enable usb host driver as well, and this introduces
about more than 40KB size to SPL.Move the common codes to a independent file, so that both host driver
and gadget driver can call it, then decouple the host and gadget driver.Note: the patch only applies to ci_udc gadget DM driver. For non-DM gadget
driver, it still depends ehci host interfaces.Signed-off-by: Ye Li
Acked-by: Peng Fan
(cherry picked from commit 1afed171a77b4c95cd4ea76f29d5a0a6bb199820) -
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
(cherry picked from commit 5c50d6bd6fda34827a27387e42c9a803da40b1e5)
17 Nov, 2019
1 commit
-
Migrate to use ofnode_* instead of fdt_* so that we may able to use live
dt for usb udc driver.Signed-off-by: Kever Yang
24 Oct, 2019
1 commit
-
The xhci.h header file is currently located under drivers/usb/xhci
Move it to the include/usb folder to make it available to drivers that
are not under drivers/usb/xhciSigned-off-by: Jean-Jacques Hiblot
20 May, 2019
1 commit
-
Replace CONFIG_MPC834* with proper CONFIG_ARCH_MPC834* Kconfig options.
Signed-off-by: Mario Six
21 Apr, 2019
4 commits
-
Add compatible "st,stm32mp1-hsotg" and associated driver data to manage
the usb33d-supply and the ST specific register for VBus sensing.Signed-off-by: Patrick Delaunay
# Conflicts:
# drivers/usb/gadget/dwc2_udc_otg.c
Reviewed-by: Lukasz Majewski -
All TX fifo size can be different, add tx_fifo_sz_array[]
into dwc2_plat_otg_data to be able to set them.tx_fifo_sz_array[] is 17 Bytes long and can contains max 16
tx fifo size (synopsys IP supports max 16 IN endpoints).
First entry of tx_fifo_sz_array[] is the number of valid
fifo size the array contains.In case of tx_fifo_sz_array[] doesn't contains the same
number of element than max hardware endpoint, display
a warning message.Compatibility with board which doesn't use tx_fifo_sz_array[]
(Rockchip rk322x/rk3128/rv1108/rk3288/rk3036) is kept.Signed-off-by: Patrice Chotard
Signed-off-by: Patrick Delaunay
Reviewed-by: Lukasz Majewski -
Add a new function to check the session B validity, to be use to check
cable connection.Signed-off-by: Patrick Delaunay
Reviewed-by: Lukasz Majewski -
Handle "force-b-session-valid" property from DT.
Signed-off-by: Patrick Delaunay
Reviewed-by: Lukasz Majewski
15 Dec, 2018
1 commit
-
The BITMAP related operations can now be moved to ./include/linux/bitmap.h
file to mimic the Linux kernel directory tree.This change also allows to remove the lin_gadget_compat.h header file
(which is a legacy code only for composite U-boot layer).
It was also possible to remove #includes from several USB gadget drivers.Signed-off-by: Lukasz Majewski
Reviewed-by: Stefan Agner
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
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
28 Nov, 2017
1 commit
-
Same macros are defined in various places. Collect them into
include/linux/bitops.h like Linux.Signed-off-by: Masahiro Yamada
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
23 Sep, 2017
1 commit
-
Commit a8ecb39e accidentally reverted config macro CONFIG_ARCH_LS1021A
to CONFIG_LS102XA.Signed-off-by: York Sun
10 Aug, 2017
1 commit
-
Signed-off-by: Rajat Srivastava
Signed-off-by: Rajesh Bhagat
Signed-off-by: yinbo.zhu
[YS: Revise subject, remove commit message]
Reviewed-by: York Sun
16 Jun, 2017
1 commit
-
There was for long time no activity in the mpx5xxx area.
We need to go further and convert to Kconfig, but it
turned out, nobody is interested anymore in mpc5xxx,
so remove it.Signed-off-by: Heiko Schocher
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
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
18 Apr, 2017
1 commit
-
Use CONFIG_ARCH_LS1021A instead.
Signed-off-by: York Sun
24 Sep, 2016
1 commit
-
Collect a couple of duplicated defines into a single place.
Signed-off-by: Masahiro Yamada
27 Jul, 2016
2 commits
-
Remove Soc specific defines and use generic chasis specific defines
for USB controller base address mapping.Signed-off-by: Rajesh Bhagat
Reviewed-by: York Sun
26 Jul, 2016
2 commits
-
The total FIFO size of some SoCs may be different from the existen, this
patch supports fifo size setting from platform data.Signed-off-by: Ziyuan Xu
Acked-by: Simon Glass -
So far, Rockchip SoCs have two kinds of USB2.0 phy, such as Synopsys and
Innosilicon. This patch applys dwc2 usb driver framework to implement
phy_init() and phy_off() methods for Synopsys phy on Rockchip platform.Signed-off-by: Ziyuan Xu
Acked-by: Simon Glass
02 Apr, 2016
5 commits
-
Use definitions from ehci.h instead.
Signed-off-by: Mateusz Kulikowski
Acked-by: Marek Vasut
Tested-by: Simon Glass -
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 -
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 -
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 -
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
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
18 Dec, 2015
7 commits
-
The driver is actually for the Designware DWC2 controller.
This patch renames the global s3c_udc.h header to dwc2_udc.h.The rename is done automatically:
$ sed -i "s/s3c_udc\.h/dwc2_udc.h/g" \
`git grep "s3c_udc\.h" | cut -d : -f 1`Signed-off-by: Marek Vasut
-
The driver is actually for the Designware DWC2 controller.
This patch is the second and final to rename global symbol,
the s3c_udc_probe() function.The rename is done automatically:
$ sed -i "s/s3c_udc_probe/dwc2_udc_probe/g" \
`git grep s3c_udc_probe | cut -d : -f 1`Signed-off-by: Marek Vasut
-
The driver is actually for the Designware DWC2 controller.
This patch is the first to rename global symbol, the struct
s3c_plat_otg_data.The rename is done automatically:
$ sed -i "s/s3c_plat_otg_data/dwc2_plat_otg_data/g" \
`git grep s3c_plat_otg_data | cut -d : -f 1`Signed-off-by: Marek Vasut
-
The driver is actually for the Designware DWC2 controller.
Tweak the comments in the driver to reflect this fact.Signed-off-by: Marek Vasut
-
The extern statements are useless, remove them. Also remove the
extern ... controller, which is completely useless.Signed-off-by: Marek Vasut
-
Most of the functions are local to the s3c_udc driver, remove them
from the s3c_udc.h header to stop those bits from propagating all
over the place. Instead, move all the private stuff into new private
s3c_udc_otg_priv.h header.Signed-off-by: Marek Vasut
-
The driver is actually for the Designware DWC2 controller.
This patch renames struct s3c_udc to struct dwc2_udc to make
things more obvious and clear.Signed-off-by: Marek Vasut
12 Dec, 2014
1 commit
-
Conflicts:
board/freescale/mx6sxsabresd/mx6sxsabresd.cSigned-off-by: Tom Rini