lkml.org 
[lkml]   [2022]   [Dec]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Subject[PATCH v5 00/23] ufs: qcom: Add HS-G4 support
    Date
    Hello,

    This series adds HS-G4 support to the Qcom UFS driver and PHY driver.
    The newer Qcom platforms support configuring the UFS controller and PHY
    in dual gears (i.e., controller/PHY can be configured to run in two gear
    speeds). This is accomplished by adding two different PHY init sequences
    to the PHY driver and the UFS driver requesting the one that's required
    based on the platform configuration.

    Initially the ufs-qcom driver will use the default gear G2 for enumerating
    the UFS device. Afer enumeration, the max gear supported by both the
    controller and device would be found out and that will be used thereafter.
    But for using the max gear after enumeration, the ufs-qcom driver requires
    the UFS device to be reinitialized. For this purpose, a separate quirk has
    been introduced in the UFS core along with a callback and those will be used
    by the ufs-qcom driver.

    This series has been tested on following platforms:

    * Qcom RB5 development platform powered by SM8250 SoC
    * SM8450 based dev board
    * Qdrive3/sa8540p-ride board based on SC8280XP (derivative)

    Merging Strategy:
    -----------------

    The PHY patches are expected to go through PHY tree and UFS, MAINTAINERS
    patches are expected to go through SCSI tree.

    NOTE: Since this series targets multiple SoCs (base like SM8350) and
    (derivative like SC8280XP), testing on all of these platforms is really
    appreciated. Although, if the series works for base SoC, then for derivatives
    also it should work.

    Thanks,
    Mani

    Changes in v5:

    * Collected Review and tested-by tags
    * Reworded patch 18/23 (Bart) and also the comment for reinit_notify

    Changes in v4:

    * Dropped HS G3 specific setting from SM8350 default init sequence
    * Added G4 support to SM8350 and SC8280XP
    * Covered all qcom files under drivers/ufs/host in MAINTAINERS file
    * Added missing Suggested-by tags for Can Guo
    * Rebased on top of linux-next 20221201

    Changes in v3:

    * Dropped the "device-max-gear" DT property and switched to reinitialization (Krzysztof)
    * Added HS-G4 support to all compatible SoCs (SM8150, SM8250 and SM8450). This will also
    benefit the derivative SoCs of these platforms like SC8180x, SC8280x etc...
    * Splitted the qmp_phy_init_tbl changes into separate patches (Vinod)
    * Collected reviews from Andrew H

    Changes in v2:

    * Collected reviews from Dmitry
    * Renamed "max-gear" property to "max-device-gear"
    * Used min() for deciding which gear to use instead of open comparision
    * Added comment about the old register name

    Manivannan Sadhasivam (23):
    phy: qcom-qmp-ufs: Remove _tbl suffix from qmp_phy_init_tbl
    definitions
    phy: qcom-qmp-ufs: Rename MSM8996 PHY definitions
    phy: qcom-qmp-ufs: Move register settings to qmp_phy_cfg_tbls struct
    phy: qcom-qmp-ufs: Add support for configuring PHY in HS Series B mode
    phy: qcom-qmp-ufs: Add support for configuring PHY in HS G4 mode
    phy: qcom-qmp-ufs: Move HS Rate B register setting to tbls_hs_b
    phy: qcom-qmp-ufs: Add HS G4 mode support to SM8150 SoC
    phy: qcom-qmp-ufs: Add HS G4 mode support to SM8250 SoC
    phy: qcom-qmp-ufs: Avoid setting HS G3 specific registers
    phy: qcom-qmp-ufs: Add HS G4 mode support to SM8350 SoC
    phy: qcom-qmp-ufs: Add HS G4 mode support to SM8450 SoC
    phy: qcom-qmp-ufs: Add HS G4 mode support to SC8280XP SoC
    scsi: ufs: ufs-qcom: Remove un-necessary goto statements
    scsi: ufs: ufs-qcom: Remove un-necessary WARN_ON()
    scsi: ufs: ufs-qcom: Use bitfields where appropriate
    scsi: ufs: ufs-qcom: Use dev_err_probe() for printing probe error
    scsi: ufs: ufs-qcom: Fix the Qcom register name for offset 0xD0
    scsi: ufs: core: Add reinit_notify() callback
    scsi: ufs: core: Add support for reinitializing the UFS device
    scsi: ufs: ufs-qcom: Factor out the logic finding the HS Gear
    scsi: ufs: ufs-qcom: Add support for reinitializing the UFS device
    scsi: ufs: ufs-qcom: Add support for finding max gear on new platforms
    MAINTAINERS: Add myself as the maintainer for Qcom UFS drivers

    MAINTAINERS | 8 +
    .../phy/qualcomm/phy-qcom-qmp-pcs-ufs-v5.h | 1 +
    drivers/phy/qualcomm/phy-qcom-qmp-ufs.c | 454 +++++++++++++-----
    drivers/ufs/core/ufshcd-priv.h | 6 +
    drivers/ufs/core/ufshcd.c | 63 ++-
    drivers/ufs/host/ufs-qcom.c | 170 +++----
    drivers/ufs/host/ufs-qcom.h | 70 +--
    include/ufs/ufshcd.h | 8 +
    8 files changed, 532 insertions(+), 248 deletions(-)

    --
    2.25.1

    \
     
     \ /
      Last update: 2023-03-26 23:17    [W:3.295 / U:0.184 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site