[U-Boot] [PATCH 00/10] Add Support for UFS subsystem for TI's J721e

Faiz Abbas faiz_abbas at ti.com
Mon Sep 9 08:19:49 UTC 2019


The following patches add support for the Universal Flash Storage (UFS)
subsystem and its implementation on TI's J721e platform.

The UFS Application Layer (UAP) uses SCSI SAM-4 command set for
communication with the device. Therefore, the first 4 patches prepare
the scsi layer for compatibility with UFS. Patch 9 also adds support for
initializing and configuring the device from the U-boot command line.

The UFS Transport Protocol Layer (UTP) and UFS Interconnect Layer (UIC)
are implemented with patch 5. This series only adds support for
detect and read/write operations to the LUNs present in the remote
device. Task Management operations and configuration of LUNs will be
added in a future series.

Patches 6 through 10 add platform driver, device tree and config support
for TI's J721E devices.

Log: https://pastebin.ubuntu.com/p/fTPZsxNjZM/

Tested on top of Lokesh's tree:
https://github.com/lokeshvutla/u-boot
Branch: j721e-full-boot

References:

[1] JESD220D UFS 3.0:
	https://www.jedec.org/standards-documents/docs/jesd220c
[2] JESD223D UFS Host Controller Interface (UFSHCI) version 3.0:
	https://www.jedec.org/standards-documents/docs/jesd223c

Faiz Abbas (10):
  scsi: Simplify scsi_read()/_write()
  scsi: Add max_bytes to scsi_platdata
  scsi: Retry inquiry 3 times to overcome Unit Attention condition
  scsi: Add dma direction member to command structure
  ufs: Add Initial Support for UFS subsystem
  ufs: Add Support for Cadence platform UFS driver
  ufs: Add glue layer driver for TI J721E devices
  arm: dts: k3-j721e-main: Add UFS nodes
  cmd: Add Support for UFS commands
  configs: j721e_evm_a72: Enable configs for UFS

 arch/arm/dts/k3-j721e-main.dtsi |   25 +
 cmd/Kconfig                     |    7 +
 cmd/Makefile                    |    2 +-
 cmd/ufs.c                       |   28 +
 configs/j721e_evm_a72_defconfig |    7 +-
 drivers/Kconfig                 |    2 +
 drivers/Makefile                |    1 +
 drivers/scsi/scsi.c             |   83 +-
 drivers/ufs/Kconfig             |   23 +
 drivers/ufs/Makefile            |    8 +
 drivers/ufs/cdns-platform.c     |  122 ++
 drivers/ufs/ti-j721e-ufs.c      |   75 ++
 drivers/ufs/ufs-uclass.c        |   16 +
 drivers/ufs/ufs.c               | 1973 +++++++++++++++++++++++++++++++
 drivers/ufs/ufs.h               |  918 ++++++++++++++
 drivers/ufs/unipro.h            |  270 +++++
 include/dm/uclass-id.h          |    1 +
 include/scsi.h                  |    4 +
 include/ufs.h                   |    7 +
 19 files changed, 3526 insertions(+), 46 deletions(-)
 create mode 100644 cmd/ufs.c
 create mode 100644 drivers/ufs/Kconfig
 create mode 100644 drivers/ufs/Makefile
 create mode 100644 drivers/ufs/cdns-platform.c
 create mode 100644 drivers/ufs/ti-j721e-ufs.c
 create mode 100644 drivers/ufs/ufs-uclass.c
 create mode 100644 drivers/ufs/ufs.c
 create mode 100644 drivers/ufs/ufs.h
 create mode 100644 drivers/ufs/unipro.h
 create mode 100644 include/ufs.h

-- 
2.19.2



More information about the U-Boot mailing list