Message ID | 20241011-u-boot-dwc3-gadget-dcache-fixup-v4-0-5f3498d8035b@linaro.org |
---|---|
Headers | show |
Series | dwc3: gadget: properly fix cache operations | expand |
Hi, On Fri, 11 Oct 2024 16:38:23 +0200, Neil Armstrong wrote: > We experience huge problems with cache handling on Qualcomm > systems, and it appears the dcache handling in the DWC3 gadget > code is quite wrong and causes operational issues. > > This serie fixes the dcache operations on unaligned data, > and properly invalidate buffers when reading back data from > hardware. > > [...] Thanks, Applied to https://source.denx.de/u-boot/custodians/u-boot-dfu (u-boot-dfu) [1/3] usb: dwc3: allocate setup_buf with dma_alloc_coherent() https://source.denx.de/u-boot/custodians/u-boot-dfu/-/commit/1f12fc7e3350b179d17efaf5ba00fc3683cf33ec [2/3] usb: dwc3: fix dcache flush range calculation https://source.denx.de/u-boot/custodians/u-boot-dfu/-/commit/502a50ab1f7e32e3e90056597e8ce6a0931789ba [3/3] usb: dwc3: invalidate dcache on buffer used in interrupt handling https://source.denx.de/u-boot/custodians/u-boot-dfu/-/commit/3e47302dd71267b85e5ec65c5b6d881c23cce6cb -- Mattijs
On Fri, 11 Oct 2024 16:38:23 +0200, Neil Armstrong wrote: > We experience huge problems with cache handling on Qualcomm > systems, and it appears the dcache handling in the DWC3 gadget > code is quite wrong and causes operational issues. > > This serie fixes the dcache operations on unaligned data, > and properly invalidate buffers when reading back data from > hardware. > > [...] Applied to u-boot/master, thanks!
Hi Tom, On lun., oct. 21, 2024 at 17:31, Tom Rini <trini@konsulko.com> wrote: > On Fri, 11 Oct 2024 16:38:23 +0200, Neil Armstrong wrote: > >> We experience huge problems with cache handling on Qualcomm >> systems, and it appears the dcache handling in the DWC3 gadget >> code is quite wrong and causes operational issues. >> >> This serie fixes the dcache operations on unaligned data, >> and properly invalidate buffers when reading back data from >> hardware. >> >> [...] > > Applied to u-boot/master, thanks! I think you already pulled this via: https://patchwork.ozlabs.org/project/uboot/patch/87iktr2l9t.fsf@baylibre.com/ > > -- > Tom
On Tue, Oct 22, 2024 at 11:10:27AM +0200, Mattijs Korpershoek wrote: > Hi Tom, > > On lun., oct. 21, 2024 at 17:31, Tom Rini <trini@konsulko.com> wrote: > > > On Fri, 11 Oct 2024 16:38:23 +0200, Neil Armstrong wrote: > > > >> We experience huge problems with cache handling on Qualcomm > >> systems, and it appears the dcache handling in the DWC3 gadget > >> code is quite wrong and causes operational issues. > >> > >> This serie fixes the dcache operations on unaligned data, > >> and properly invalidate buffers when reading back data from > >> hardware. > >> > >> [...] > > > > Applied to u-boot/master, thanks! > > I think you already pulled this via: > > https://patchwork.ozlabs.org/project/uboot/patch/87iktr2l9t.fsf@baylibre.com/ Ah, hunh. OK. So, I should try and run the script to update patchwork status based on patch hashes more often. And I think b4 applied it to the original merge base, then merged to master as a no-op.
We experience huge problems with cache handling on Qualcomm systems, and it appears the dcache handling in the DWC3 gadget code is quite wrong and causes operational issues. This serie fixes the dcache operations on unaligned data, and properly invalidate buffers when reading back data from hardware. Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> --- Changes in v4: - Go back to CACHELINE_SIZE, and do not use DMA_MINALIGN since it's not valid for all platforms - Link to v3: https://lore.kernel.org/r/20241002-u-boot-dwc3-gadget-dcache-fixup-v3-0-5398088ef93c@linaro.org Changes in v3: - Cast addresses to (unsigned long) when calling invalidate_dcache_range() - Drop unused CACHELINE_SIZE - Fix warning by casting ctrl to uintptr_r when calling dwc3_invalidate_cache() - Link to v2: https://lore.kernel.org/r/20240724-u-boot-dwc3-gadget-dcache-fixup-v2-0-65836d699a71@linaro.org Changes in v2: - Fix typo in drivers/usb/dwc3/core.h and rewrite patch 1 commit message - Link to v1: https://lore.kernel.org/r/20240719-u-boot-dwc3-gadget-dcache-fixup-v1-0-58a5f026ea8e@linaro.org --- Neil Armstrong (3): usb: dwc3: allocate setup_buf with dma_alloc_coherent() usb: dwc3: fix dcache flush range calculation usb: dwc3: invalidate dcache on buffer used in interrupt handling drivers/usb/dwc3/core.h | 2 ++ drivers/usb/dwc3/ep0.c | 6 ++++-- drivers/usb/dwc3/gadget.c | 10 ++++++---- drivers/usb/dwc3/io.h | 13 ++++++++++++- 4 files changed, 24 insertions(+), 7 deletions(-) --- base-commit: ddbcafeb53e7093c58488596bfce6d8823777c3a change-id: 20240719-u-boot-dwc3-gadget-dcache-fixup-ea1e92758663 Best regards,