public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [PATCH v3 00/13] ufs: enhancements to support Qualcomm UFS controllers
@ 2024-09-30 12:44 Neil Armstrong
  2024-09-30 12:44 ` [PATCH v3 01/13] ufs: allocate descriptors with size aligned with DMA_MINALIGN Neil Armstrong
                   ` (15 more replies)
  0 siblings, 16 replies; 19+ messages in thread
From: Neil Armstrong @ 2024-09-30 12:44 UTC (permalink / raw)
  To: Tom Rini, Bhupesh Sharma, Neha Malcom Francis
  Cc: Michal Simek, Marek Vasut, bmeng.cn, u-boot, u-boot-qcom,
	Neil Armstrong, Venkatesh Yadav Abbarapu, Bhupesh Sharma

This serie regroups all the fixes and base enhancements required to
support the Qualcomm UFS controllers in U-Boot.

This syncs headers & defines from Linux, and includes 2 set of
fixes that were sent separately:
- ufs: core: remove link_startup_again logic
- ufs: properly fix cache operations

Without those 2 sets, UFS cannot initialize on Qualcomm controlers
since v5, and a numerous of Cache issues makes any UFS controller
fail to initialize.

Since UFS core hasn't changed for a while, and since UFS is core
technology for the Qualcomm SoCs, I volunteer maintaininig the
UFS subsystem if Bhupesh & Neha Malcom Francis are ok with that.

It has been reported to show regressions on:
- TI K3 platforms (j721s2, j721e, j7200, j784s4) [1]
- AMD platform (amd_versal2_virt_defconfig) [2]

[1] https://lore.kernel.org/all/38f599a8-7094-4a04-8ff6-96fc8b9d168a@ti.com/
[2] https://lore.kernel.org/all/SA1PR12MB869713CA620F99077B75EF0E98632@SA1PR12MB8697.namprd12.prod.outlook.com/

Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
---
Changes in v3:
- Fixup patch 9
- Link to v2: https://lore.kernel.org/r/20240920-topic-ufs-enhancements-v2-0-65ae61e73eaa@linaro.org

Changes in v2:
- Added review and tested-by tags
- Updated patch 12 message with more explanations
- Synced patch 9 again with Linux 6.11
- Updated patches 7, 8, 9 and 10 with informations about the origins of the changes
- Link to v1: https://lore.kernel.org/r/20240910-topic-ufs-enhancements-v1-0-3ee0bffacc64@linaro.org

---
Bhupesh Sharma (5):
      ufs/ufs.h: Add definition of 'ufshcd_rmwl()'
      ufs: Clear UECPA once due to LINERESET has happened during LINK_STARTUP
      ufs: Sync possible UFS Quirks with Linux UFS driver
      ufs: Add missing memory barriers
      ufs: Fix debug message in 'ufs_start'

Marek Vasut (2):
      ufs: Add UFSHCD_QUIRK_BROKEN_64BIT_ADDRESS
      ufs: Add UFSHCD_QUIRK_HIBERN_FASTAUTO

Neil Armstrong (6):
      ufs: allocate descriptors with size aligned with DMA_MINALIGN
      ufs: fix dcache flush and invalidate range calculation
      ufs: split flush and invalidate to only invalidate when required
      ufs: use dcache helpers for scsi_cmd data and only invalidate if necessary
      ufs: core: remove link_startup_again logic
      MAINTAINERS: Add myself to the list of UFS maintainers

 MAINTAINERS       |   1 +
 drivers/ufs/ufs.c |  98 +++++++++++++++-----------
 drivers/ufs/ufs.h | 203 ++++++++++++++++++++++++++++++++++++++++++++++++------
 3 files changed, 241 insertions(+), 61 deletions(-)
---
base-commit: ddbcafeb53e7093c58488596bfce6d8823777c3a
change-id: 20240910-topic-ufs-enhancements-fe8ef9ce39d8

Best regards,
-- 
Neil Armstrong <neil.armstrong@linaro.org>


^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2024-10-14  6:56 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-09-30 12:44 [PATCH v3 00/13] ufs: enhancements to support Qualcomm UFS controllers Neil Armstrong
2024-09-30 12:44 ` [PATCH v3 01/13] ufs: allocate descriptors with size aligned with DMA_MINALIGN Neil Armstrong
2024-09-30 12:44 ` [PATCH v3 02/13] ufs: fix dcache flush and invalidate range calculation Neil Armstrong
2024-09-30 12:44 ` [PATCH v3 03/13] ufs: split flush and invalidate to only invalidate when required Neil Armstrong
2024-09-30 12:44 ` [PATCH v3 04/13] ufs: use dcache helpers for scsi_cmd data and only invalidate if necessary Neil Armstrong
2024-09-30 12:44 ` [PATCH v3 05/13] ufs: Add UFSHCD_QUIRK_BROKEN_64BIT_ADDRESS neil.armstrong
2024-09-30 12:44 ` [PATCH v3 06/13] ufs: Add UFSHCD_QUIRK_HIBERN_FASTAUTO neil.armstrong
2024-09-30 12:44 ` [PATCH v3 07/13] ufs/ufs.h: Add definition of 'ufshcd_rmwl()' neil.armstrong
2024-09-30 12:44 ` [PATCH v3 08/13] ufs: Clear UECPA once due to LINERESET has happened during LINK_STARTUP neil.armstrong
2024-09-30 12:44 ` [PATCH v3 09/13] ufs: Sync possible UFS Quirks with Linux UFS driver neil.armstrong
2024-09-30 12:44 ` [PATCH v3 10/13] ufs: Add missing memory barriers neil.armstrong
2024-09-30 12:44 ` [PATCH v3 11/13] ufs: Fix debug message in 'ufs_start' neil.armstrong
2024-09-30 12:44 ` [PATCH v3 12/13] ufs: core: remove link_startup_again logic Neil Armstrong
2024-09-30 12:44 ` [PATCH v3 13/13] MAINTAINERS: Add myself to the list of UFS maintainers Neil Armstrong
2024-10-07  8:13 ` [PATCH v3 00/13] ufs: enhancements to support Qualcomm UFS controllers Neil Armstrong
2024-10-07  8:17   ` Neha Malcom Francis
2024-10-07 12:15     ` neil.armstrong
2024-10-11 18:10 ` Julius Lehmann
2024-10-14  6:56 ` Neil Armstrong

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox