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

Faiz Abbas faiz_abbas at ti.com
Wed Oct 23 14:17:12 UTC 2019


Tom,

On 15/10/19 6:24 PM, Faiz Abbas wrote:
> 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/65JZXGT3Z6/
> 
> Tested on top of Lokesh's tree:
> https://github.com/lokeshvutla/u-boot
> Branch: j721e-full-boot
> 
> Changes in v2:
> 1. Added environment variables such that its easy to boot kernel from
>    UFS.
> 2. Introduced an API to probe UFS devices individually.
> 3. Changed ti-j721e-ufs wrapper driver to UCLASS_MISC because its not
>    really a UFS device driver.
> 
> 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 (11):
>   scsi: Simplify scsi_read()/_write()
>   scsi: Add max_bytes_per_req 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
>   env: ti: Add environment variables to boot from UFS
>   configs: j721e_evm_a72: Enable configs for UFS
> 
>  MAINTAINERS                     |    5 +
>  arch/arm/dts/k3-j721e-main.dtsi |   24 +
>  cmd/Kconfig                     |    7 +
>  cmd/Makefile                    |    2 +-
>  cmd/ufs.c                       |   37 +
>  configs/j721e_evm_a72_defconfig |    8 +-
>  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      |   71 ++
>  drivers/ufs/ufs-uclass.c        |   16 +
>  drivers/ufs/ufs.c               | 1968 +++++++++++++++++++++++++++++++
>  drivers/ufs/ufs.h               |  918 ++++++++++++++
>  drivers/ufs/unipro.h            |  270 +++++
>  include/configs/j721e_evm.h     |    4 +-
>  include/dm/uclass-id.h          |    1 +
>  include/environment/ti/ufs.h    |   33 +
>  include/scsi.h                  |    5 +
>  include/ufs.h                   |   29 +
>  22 files changed, 3590 insertions(+), 47 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/environment/ti/ufs.h
>  create mode 100644 include/ufs.h
> 

Were you able to pick this up for the merge window?

Thanks,
Faiz


More information about the U-Boot mailing list