| b27ae02d | 15-Oct-2017 |
Marek Vasut <marek.vasut@gmail.com> |
UPSTREAM: usb: xhci: Add Renesas R-Car xHCI driver
Add firmware V3, firmware loader and XHCI glue for the Renesas R-Car Gen3 SoCs XHCI controller. Thus far only the R-Car Gen3 R8A7795 ES2.0+ and R8A
UPSTREAM: usb: xhci: Add Renesas R-Car xHCI driver
Add firmware V3, firmware loader and XHCI glue for the Renesas R-Car Gen3 SoCs XHCI controller. Thus far only the R-Car Gen3 R8A7795 ES2.0+ and R8A7796 are supported.
Conflicts: drivers/usb/host/Kconfig drivers/usb/host/Makefile drivers/usb/host/xhci-rcar.c
Change-Id: I3c5417289b4e8b1a54b90a39fa7b426381b761fb Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com> Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org> Cc: Bin Meng <bmeng.cn@gmail.com> Signed-off-by: Frank Wang <frank.wang@rock-chips.com> (cherry picked from commit e1cc60c0d635408b18a31dcdc2002bba07da21a4)
show more ...
|
| 0e266cad | 06-Nov-2017 |
Jon Nettleton <jon@solid-run.com> |
UPSTREAM: mvebu: usb: xhci: a38x support
This makes the initial changes need to support the a38x series of SOCs. It adds the device-tree identifier as well as changing the board_support function to
UPSTREAM: mvebu: usb: xhci: a38x support
This makes the initial changes need to support the a38x series of SOCs. It adds the device-tree identifier as well as changing the board_support function to take the IO address designated by device-tree.
Change-Id: I9558197847260da87cd1b74101c7fa0e9c2f37ef Signed-off-by: Jon Nettleton <jon@solid-run.com> [baruch: use fdt_addr_t; update 37xx and 8K implementations] Signed-off-by: Baruch Siach <baruch@tkos.co.il> Signed-off-by: Stefan Roese <sr@denx.de> Signed-off-by: Frank Wang <frank.wang@rock-chips.com> (cherry picked from commit d3d036af8c0ee848c4113dc609bbd6ab26ebc6cb)
show more ...
|
| 782be0c4 | 15-Mar-2018 |
Christophe Kerello <christophe.kerello@st.com> |
UPSTREAM: usb: dwc2: disable external vbus supply when the device is removed
This patch adds an interface to disable the power in dwc2 driver. This new interface is called when the device is removed
UPSTREAM: usb: dwc2: disable external vbus supply when the device is removed
This patch adds an interface to disable the power in dwc2 driver. This new interface is called when the device is removed.
Change-Id: I4b00ce5f259abe07971753860fc801ff0ebfa0b0 Signed-off-by: Christophe Kerello <christophe.kerello@st.com> Signed-off-by: Patrice Chotard <patrice.chotard@st.com> Signed-off-by: Frank Wang <frank.wang@rock-chips.com> (cherry picked from commit 82e7975b85bea1c2acccf30e6fd11e1a48a7e783)
show more ...
|
| c8f2d7ee | 21-Nov-2018 |
Sven Schwermer <sven@svenschwermer.de> |
UPSTREAM: usb: Remove CMD_USB dependency for common code
Common USB code is built whenever USB is enabled (in non-SPL builds). The USB uclass is built whenever (SPL_)DM_USB is enabled. Both need to
UPSTREAM: usb: Remove CMD_USB dependency for common code
Common USB code is built whenever USB is enabled (in non-SPL builds). The USB uclass is built whenever (SPL_)DM_USB is enabled. Both need to be independent from CMD_USB.
Change-Id: Idb5e7ffeea8cb325855cb2d1b6713d62fe438120 Signed-off-by: Sven Schwermer <sven@svenschwermer.de> Signed-off-by: Frank Wang <frank.wang@rock-chips.com> (cherry picked from commit ab5817027f9b4fce25f5f2a3e20577ac55bbd7e0)
show more ...
|
| 7832d01e | 01-Oct-2017 |
Bin Meng <bmeng.cn@gmail.com> |
UPSTREAM: usb: sandbox: Fix emulator device select logic in usb_emul_find_devnum()
Current emulator select logic in usb_emul_find_devnum() is to test the USB address. The USB address of the device b
UPSTREAM: usb: sandbox: Fix emulator device select logic in usb_emul_find_devnum()
Current emulator select logic in usb_emul_find_devnum() is to test the USB address. The USB address of the device being enumerated is initialized to zero at the beginning of the enumeration process in usb_setup_device(). At this point, the saved USB address in the platform data has not been assigned to any valid USB address either. This means: the logic will select an emulator device according to its sequence of declaring order in the device tree. Take test.dts for example, flash-stick@0 will be selected before flash-stick@1. But unfortunately such logic is wrong.
In fact USB devices show up in a random order during the enumeration which means usb_emul_find_devnum() may be called on port 3 for keyb@3 before on port 0 for flash-stick@0.
To fix this, we introduce a new emulator uclass specific platdata to store the USB device's port number on its parent hub, and update the logic to test the port number instead.
Change-Id: Idbe23382957153d66a4c45f5f7789e002cd65a2f Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Signed-off-by: Frank Wang <frank.wang@rock-chips.com> (cherry picked from commit 84aa8536f0197e439832f56cc7b554af488fc3c8)
show more ...
|
| 20419987 | 01-Oct-2017 |
Bin Meng <bmeng.cn@gmail.com> |
UPSTREAM: usb: sandbox: Initialize root hub's device speed to high speed
At present 'usb tree' shows that the root hub on the Sandbox USB controller is at full speed. But its device descriptor says
UPSTREAM: usb: sandbox: Initialize root hub's device speed to high speed
At present 'usb tree' shows that the root hub on the Sandbox USB controller is at full speed. But its device descriptor says it's USB 2.0, so let's report it as a high speed device.
Change-Id: I95758bc8e0b3730286d461ff1136b797b3a10abd Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Signed-off-by: Frank Wang <frank.wang@rock-chips.com> (cherry picked from commit 813f74ea47d0f77f809d85619153923a99b07222)
show more ...
|
| ee0a9610 | 24-Feb-2018 |
Frank Wang <frank.wang@rock-chips.com> |
usb: host: dwc2: disable hnp and srp default for rockchip platform
Due to rockchip platform use live-tree which deployed from linux kernel, so abandon the previous 'hnp-srp-disable' DT property and
usb: host: dwc2: disable hnp and srp default for rockchip platform
Due to rockchip platform use live-tree which deployed from linux kernel, so abandon the previous 'hnp-srp-disable' DT property and disable hnp and srp default at probe time.
Change-Id: I5fb34bc789812d463b6a3c42b268af447d130950 Signed-off-by: Frank Wang <frank.wang@rock-chips.com>
show more ...
|
| d2e45d1f | 23-Feb-2018 |
Frank Wang <frank.wang@rock-chips.com> |
usb: host: amend clock exception handling for ehci and ohci
Some platforms, like Rockchip, not implement clk_enable/clk_disable APIs, add 'ENOSYS' condition to exclude it.
Change-Id: Ic79122dcad30d
usb: host: amend clock exception handling for ehci and ohci
Some platforms, like Rockchip, not implement clk_enable/clk_disable APIs, add 'ENOSYS' condition to exclude it.
Change-Id: Ic79122dcad30d318d9326aeb287d0b15c99bfbae Signed-off-by: Frank Wang <frank.wang@rock-chips.com>
show more ...
|
| 1bee64cb | 17-Nov-2017 |
Dirk Behme <dirk.behme@gmail.com> |
UPSTREAM: usb: ehci: do not invalidate a NULL buffer
Its a valid use case to call ehci_submit_async() with a NULL buffer with length 0. E.g. from usb_set_configuration().
As invalidate_dcache_range
UPSTREAM: usb: ehci: do not invalidate a NULL buffer
Its a valid use case to call ehci_submit_async() with a NULL buffer with length 0. E.g. from usb_set_configuration().
As invalidate_dcache_range() isn't able to judge if the address NULL is valid or not (depending on the SoC hardware configuration it might be valid) do the check in ehci_submit_async() as here we know that we don't have to invalidate such a buffer.
Change-Id: If8d1ee336c3123356138551ed4cbb556e26bf4ed Signed-off-by: Dirk Behme <dirk.behme@de.bosch.com> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit b3cbcd902db7019410dfe3729a660abcb1f03ffb)
show more ...
|
| 85b3e780 | 20-Nov-2017 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
UPSTREAM: dm: usb: ehci: avoid possible NULL dereference
Currently we check in ehci_shutdown() if ctrl is NULL after dereferencing it.
Before this we have already dereferenced ctrl, ctrl->hccr, and
UPSTREAM: dm: usb: ehci: avoid possible NULL dereference
Currently we check in ehci_shutdown() if ctrl is NULL after dereferencing it.
Before this we have already dereferenced ctrl, ctrl->hccr, and ctrl->hcor in ehci_get_portsc_register(), ehci_submit_root(), and hci_common_init().
A better approach is to already check ctrl, ctrl->hccr, and ctrl->hcor during the initialization in ehci_register() and usb_lowlevel_init() and signal an error here via the return code.
Change-Id: I940999cbb94fbae4642fd25df820997c4d642da1 Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit 45157d27644c23493ea1b5a6c9dd67572eb75c8c)
show more ...
|
| f018b53d | 18-Sep-2017 |
Bin Meng <bmeng.cn@gmail.com> |
UPSTREAM: usb: xhci: Set 'Average TRB Length' to 8 for control endpoints
Update the codes to conform with xHCI spec chapter 6.2.3.
Change-Id: I9227754f7f7faf27f90046178526fad4d45e699e Signed-off-by
UPSTREAM: usb: xhci: Set 'Average TRB Length' to 8 for control endpoints
Update the codes to conform with xHCI spec chapter 6.2.3.
Change-Id: I9227754f7f7faf27f90046178526fad4d45e699e Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit fae35857e1c38776854442f59d6b56c17e93fc39)
show more ...
|
| dd5c0fa3 | 18-Sep-2017 |
Bin Meng <bmeng.cn@gmail.com> |
UPSTREAM: usb: xhci: Set 'Error Count' to 0 for isoch endpoints
Per xHCI spec, 'Error Count' should be set to 0 for isoch endpoints.
Change-Id: Ibf1924935d705faa8a34e0bc94a44e3a0d1c28e2 Signed-off-
UPSTREAM: usb: xhci: Set 'Error Count' to 0 for isoch endpoints
Per xHCI spec, 'Error Count' should be set to 0 for isoch endpoints.
Change-Id: Ibf1924935d705faa8a34e0bc94a44e3a0d1c28e2 Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit ab2b727dc03113fe35d6a9c937911055be3d3990)
show more ...
|
| 2874e912 | 18-Sep-2017 |
Bin Meng <bmeng.cn@gmail.com> |
UPSTREAM: usb: xhci: Program max burst size for endpoint
The 'Max Burst Size' indicates to the xHC the maximum number of consecutive USB transactions that should be executed per scheduling opportuni
UPSTREAM: usb: xhci: Program max burst size for endpoint
The 'Max Burst Size' indicates to the xHC the maximum number of consecutive USB transactions that should be executed per scheduling opportunity. This is a “zero-based” value, where 0 to 15 represents burst sizes of 1 to 16, but at present this is always set to zero. Let's program the required value according to real needs.
Change-Id: Id8dbdbfb248acd016b1e133b86334b9815b8ff2d Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit fa483b2c750f6ebdb5946f46b217aa3f9a449531)
show more ...
|
| 1fa1b460 | 18-Sep-2017 |
Bin Meng <bmeng.cn@gmail.com> |
UPSTREAM: usb: xhci: Honor endpoint's interval
USB endpoint reports the period between consecutive requests to send or receive data as bInverval in its endpoint descriptor. So far this is ignored by
UPSTREAM: usb: xhci: Honor endpoint's interval
USB endpoint reports the period between consecutive requests to send or receive data as bInverval in its endpoint descriptor. So far this is ignored by xHCI driver and the 'Interval' field in xHC's endpoint context is always programmed to zero which means 1ms for low speed or full speed , or 125us for high speed or super speed. We should honor the interval by getting it from endpoint descriptor.
Change-Id: Ib9180ea7b15d29fdc5a90315dcb0ffea672877a3 Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit f51966bf7afe44151756e9a2432705bb56bc2007)
show more ...
|
| 24acdf7a | 18-Sep-2017 |
Bin Meng <bmeng.cn@gmail.com> |
UPSTREAM: usb: xhci: Fix max packet size for full speed device endpoint 0
In xhci_check_maxpacket(), the control endpoint 0 max packet size is wrongly taken from the interface's endpoint descriptor.
UPSTREAM: usb: xhci: Fix max packet size for full speed device endpoint 0
In xhci_check_maxpacket(), the control endpoint 0 max packet size is wrongly taken from the interface's endpoint descriptor. However the default endpoint 0 does not come with an endpoint descriptor hence is not included in the interface structure. Change to use epmaxpacketin[0] instead.
The other bug in this routine is that when setting max packet size to the xHC endpoint 0 context, it does not clear its previous value at all before programming a new one.
Change-Id: I32199e4f4a0f2950fa71b139f667ece35e55483c Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit b5aa857b95194c15126245e99a384ec2fd9536e8)
show more ...
|
| 83e13f0f | 18-Sep-2017 |
Bin Meng <bmeng.cn@gmail.com> |
UPSTREAM: usb: xhci: Add interrupt transfer support
xHCI uses normal TRBs for both bulk and interrupt. This adds the missing interrupt transfer support to xHCI so that devices like USB keyboard that
UPSTREAM: usb: xhci: Add interrupt transfer support
xHCI uses normal TRBs for both bulk and interrupt. This adds the missing interrupt transfer support to xHCI so that devices like USB keyboard that uses interrupt transfer can work.
Change-Id: I857a769b96c3283d99deff1f1092ddd64a9693e2 Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit 1897d60130976ece389d5875187b78ba0d41428f)
show more ...
|