[U-Boot] [PATCH v4 0/7] OMAP: Move SATA to use block driver model and introduce a new framework for PHY management

Jean-Jacques Hiblot jjhiblot at ti.com
Fri Apr 21 10:08:44 UTC 2017


This series adds support for SATA using the driver model on omap platforms.
It is based on the work of Mugunthan V N <mugunthanvnm at ti.com> in Feb 2016
In the process it adds a new framework to manage PHY devices

changes since v3:
* Add a patch to split scsi_scan() as discussed in https://patchwork.ozlabs.org/patch/748210/
* reworked the PHY framework to support multiple port PHY devices (required to
  be compatible with the device-tree bindings used in linux). Updated the tests
  as well.
* moved away from "generic[_-]phy" to simply use 'phy' instead. Expect for the name
  of the header file 'generic-phy.h' and for the names of the functions of the API,
  because it's already used by the Ethernet PHY code.
* rebased on top of u-boot-dm/master
* removed the patches already taken in u-boot-dm/master

changes since v2:
* Added unit tests for generic PHY uclass.
* Changed the generic phy API to use a 'struct udevice*' to reference the phy
  device.
* Don't modify anymore the root Makefile.
* Updated the Kconfig with more details on the PHY framework.
* Use a Unique Lincense Identifier (SPDX)
* Use omap5-u-boot.dtsi to mark the ocp2scp bus as compatible with "simple-bus"
* Split scsi_scan() in 2 for clarity. The function was becoming too long.

changes since v1:
* changed the way the 'old' sata code is compiled out when DM_SCSI is enabled.
* added a new framework for PHY management.
* added a new driver for the PIPE3 phy and use it in the dwc_ahci driver.
* changed the interface of scsi_detect_dev() and moved the call part_init() out
  of it.
* modified the fix to scsi_scan() in order to call scsi_detect_dev() only once.
* the max_lun and max_id parameters are now taken from the device-tree.
* Updated the defconfig changes to include the PHY driver and its dependencies.

Jean-Jacques Hiblot (7):
  scsi: dm: split scsi_scan()
  drivers: phy: add generic PHY framework
  dm: test: Add tests for the generic PHY uclass
  drivers: phy: add PIPE3 phy driver
  dra7: dtsi: mark ocp2scp bus compatible with "simple-bus"
  drivers: block: dwc_ahci: Implement a driver for Synopsys DWC sata
    device
  defconfig: dra7xx_evm: enable CONFIG_BLK and disk driver model for
    SCSI

 arch/arm/dts/omap5-u-boot.dtsi  |   4 +
 arch/sandbox/dts/test.dts       |  17 ++
 common/scsi.c                   | 102 ++++++-----
 configs/dra7xx_evm_defconfig    |  12 +-
 configs/dra7xx_hs_evm_defconfig |  11 +-
 configs/sandbox_defconfig       |   2 +
 configs/sandbox_noblk_defconfig |   2 +
 configs/sandbox_spl_defconfig   |   3 +
 drivers/Kconfig                 |   2 +
 drivers/Makefile                |   2 +
 drivers/block/Kconfig           |  10 ++
 drivers/block/Makefile          |   1 +
 drivers/block/dwc_ahci.c        | 101 +++++++++++
 drivers/phy/Kconfig             |  63 +++++++
 drivers/phy/Makefile            |   4 +
 drivers/phy/phy-uclass.c        | 139 +++++++++++++++
 drivers/phy/sandbox-phy.c       |  98 +++++++++++
 drivers/phy/ti-pipe3-phy.c      | 373 ++++++++++++++++++++++++++++++++++++++++
 include/dm/uclass-id.h          |   1 +
 include/generic-phy.h           | 224 ++++++++++++++++++++++++
 test/dm/Makefile                |   2 +
 test/dm/phy.c                   | 112 ++++++++++++
 22 files changed, 1230 insertions(+), 55 deletions(-)
 create mode 100644 drivers/block/dwc_ahci.c
 create mode 100644 drivers/phy/Kconfig
 create mode 100644 drivers/phy/Makefile
 create mode 100644 drivers/phy/phy-uclass.c
 create mode 100644 drivers/phy/sandbox-phy.c
 create mode 100644 drivers/phy/ti-pipe3-phy.c
 create mode 100644 include/generic-phy.h
 create mode 100644 test/dm/phy.c

-- 
1.9.1



More information about the U-Boot mailing list