|
|
Log in / Subscribe / Register

ufs: Add support for AMD Versal Gen2 UFS

From:  Ajay Neeli <ajay.neeli-AT-amd.com>
To:  <martin.petersen-AT-oracle.com>, <James.Bottomley-AT-HansenPartnership.com>, <robh-AT-kernel.org>, <krzk+dt-AT-kernel.org>, <conor+dt-AT-kernel.org>, <pedrom.sousa-AT-synopsys.com>
Subject:  [PATCH v2 0/4] ufs: Add support for AMD Versal Gen2 UFS
Date:  Tue, 21 Oct 2025 16:59:59 +0530
Message-ID:  <20251021113003.13650-1-ajay.neeli@amd.com>
Cc:  <alim.akhtar-AT-samsung.com>, <avri.altman-AT-wdc.com>, <bvanassche-AT-acm.org>, <linux-scsi-AT-vger.kernel.org>, <devicetree-AT-vger.kernel.org>, <git-AT-amd.com>, <michal.simek-AT-amd.com>, <srinivas.goud-AT-amd.com>, <radhey.shyam.pandey-AT-amd.com>, Ajay Neeli <ajay.neeli-AT-amd.com>
Archive-link:  Article

This patch series adds support for the UFS driver on the AMD Versal Gen 2 SoC.
It includes:
- Device tree bindings and driver implementation.
- Secure read support for the secure retrieval of UFS calibration values.

The UFS host driver is based upon the Synopsis DesignWare (DWC) UFS architecture,
utilizing the existing UFSHCD_DWC and UFSHCD_PLATFORM drivers.

---
Changes in v1->v2:
- Address review comments from v1:
  Rewritten commit message to clarify this as UFS driver for AMD Versal Gen 2 SoC.
  Removed patch that utilized reserved bits for vendor-specific interrupts.
  Moved the PHY reset logic to ufs-host-init to prevent unhandled interrupts.

v1 link: https://lore.kernel.org/linux-scsi/20250919123835.17899-1...
---

Ajay Neeli (1):
  firmware: xilinx: Add APIs for UFS PHY initialization

Izhar Ameer Shaikh (1):
  firmware: xilinx: Add support for secure read/write ioctl interface

Sai Krishna Potthuri (2):
  dt-bindings: ufs: amd-versal2: Add UFS Host Controller for AMD Versal
    Gen 2 SoC
  ufs: amd-versal2: Add UFS support for AMD Versal Gen 2 SoC

 .../devicetree/bindings/ufs/amd,versal2-ufs.yaml   |  61 +++
 MAINTAINERS                                        |   7 +
 drivers/firmware/xilinx/Makefile                   |   2 +-
 drivers/firmware/xilinx/zynqmp-ufs.c               | 118 +++++
 drivers/firmware/xilinx/zynqmp.c                   |  46 ++
 drivers/ufs/host/Kconfig                           |  13 +
 drivers/ufs/host/Makefile                          |   1 +
 drivers/ufs/host/ufs-amd-versal2.c                 | 564 +++++++++++++++++++++
 drivers/ufs/host/ufshcd-dwc.h                      |  46 ++
 include/linux/firmware/xlnx-zynqmp-ufs.h           |  38 ++
 include/linux/firmware/xlnx-zynqmp.h               |  16 +
 include/ufs/unipro.h                               |   1 +
 12 files changed, 912 insertions(+), 1 deletion(-)
 create mode 100644 Documentation/devicetree/bindings/ufs/amd,versal2-ufs.yaml
 create mode 100644 drivers/firmware/xilinx/zynqmp-ufs.c
 create mode 100644 drivers/ufs/host/ufs-amd-versal2.c
 create mode 100644 include/linux/firmware/xlnx-zynqmp-ufs.h

-- 
1.8.3.1




Copyright © 2025, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds