public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [U-Boot] [PATCH v2 00/11] Add Support for UFS subsystem for TI's J721e
@ 2019-10-15 12:54 Faiz Abbas
  2019-10-15 12:54 ` [U-Boot] [PATCH v2 01/11] scsi: Simplify scsi_read()/_write() Faiz Abbas
                   ` (11 more replies)
  0 siblings, 12 replies; 26+ messages in thread
From: Faiz Abbas @ 2019-10-15 12:54 UTC (permalink / raw)
  To: u-boot

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

-- 
2.19.2

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

end of thread, other threads:[~2019-10-24 18:53 UTC | newest]

Thread overview: 26+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-10-15 12:54 [U-Boot] [PATCH v2 00/11] Add Support for UFS subsystem for TI's J721e Faiz Abbas
2019-10-15 12:54 ` [U-Boot] [PATCH v2 01/11] scsi: Simplify scsi_read()/_write() Faiz Abbas
2019-10-24 18:52   ` Tom Rini
2019-10-15 12:54 ` [U-Boot] [PATCH v2 02/11] scsi: Add max_bytes_per_req to scsi_platdata Faiz Abbas
2019-10-24 18:52   ` Tom Rini
2019-10-15 12:54 ` [U-Boot] [PATCH v2 03/11] scsi: Retry inquiry 3 times to overcome Unit Attention condition Faiz Abbas
2019-10-24 18:52   ` Tom Rini
2019-10-15 12:54 ` [U-Boot] [PATCH v2 04/11] scsi: Add dma direction member to command structure Faiz Abbas
2019-10-24 18:52   ` Tom Rini
2019-10-15 12:54 ` [U-Boot] [PATCH v2 05/11] ufs: Add Initial Support for UFS subsystem Faiz Abbas
2019-10-23 14:20   ` Bin Meng
2019-10-24 14:45     ` Tom Rini
2019-10-24 18:52   ` Tom Rini
2019-10-15 12:54 ` [U-Boot] [PATCH v2 06/11] ufs: Add Support for Cadence platform UFS driver Faiz Abbas
2019-10-24 18:52   ` Tom Rini
2019-10-15 12:54 ` [U-Boot] [PATCH v2 07/11] ufs: Add glue layer driver for TI J721E devices Faiz Abbas
2019-10-24 18:52   ` Tom Rini
2019-10-15 12:54 ` [U-Boot] [PATCH v2 08/11] arm: dts: k3-j721e-main: Add UFS nodes Faiz Abbas
2019-10-24 18:52   ` Tom Rini
2019-10-15 12:54 ` [U-Boot] [PATCH v2 09/11] cmd: Add Support for UFS commands Faiz Abbas
2019-10-24 18:52   ` Tom Rini
2019-10-15 12:54 ` [U-Boot] [PATCH v2 10/11] env: ti: Add environment variables to boot from UFS Faiz Abbas
2019-10-24 18:53   ` Tom Rini
2019-10-15 12:54 ` [U-Boot] [PATCH v2 11/11] configs: j721e_evm_a72: Enable configs for UFS Faiz Abbas
2019-10-24 18:53   ` Tom Rini
2019-10-23 14:17 ` [U-Boot] [PATCH v2 00/11] Add Support for UFS subsystem for TI's J721e Faiz Abbas

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