• Stanley Chu's avatar
    scsi: ufs: Remove pre-defined initial voltage values of device power · 5b44a07b
    Stanley Chu authored
    UFS specficication allows different VCC configurations for UFS devices,
    for example:
    
    	(1). 2.70V - 3.60V (Activated by default in UFS core driver)
    	(2). 1.70V - 1.95V (Activated if "vcc-supply-1p8" is declared in
                              device tree)
    	(3). 2.40V - 2.70V (Supported since UFS 3.x)
    
    With the introduction of UFS 3.x products, an issue is happening that UFS
    driver will use wrong "min_uV-max_uV" values to configure the voltage of
    VCC regulator on UFU 3.x products with the configuration (3) used.
    
    To solve this issue, we simply remove pre-defined initial VCC voltage
    values in UFS core driver with below reasons,
    
    1. UFS specifications do not define how to detect the VCC configuration
       supported by attached device.
    
    2. Device tree already supports standard regulator properties.
    
    Therefore VCC voltage shall be defined correctly in device tree, and shall
    not changed by UFS driver. What UFS driver needs to do is simply enable or
    disable the VCC regulator only.
    
    Similar change is applied to VCCQ and VCCQ2 as well.
    
    Note that we keep struct ufs_vreg unchanged. This allows vendors to
    configure proper min_uV and max_uV of any regulators to make
    regulator_set_voltage() works during regulator toggling flow in the
    future. Without specific vendor configurations, min_uV and max_uV will be
    NULL by default and UFS core driver will enable or disable the regulator
    only without adjusting its voltage.
    
    Link: https://lore.kernel.org/r/20201202091819.22363-1-stanley.chu@mediatek.comReviewed-by: default avatarAsutosh Das <asutoshd@codeaurora.org>
    Reviewed-by: default avatarBjorn Andersson <bjorn.andersson@linaro.org>
    Reviewed-by: default avatarCan Guo <cang@codeaurora.org>
    Acked-by: default avatarAvri Altman <avri.altman@wdc.com>
    Signed-off-by: default avatarStanley Chu <stanley.chu@mediatek.com>
    Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
    5b44a07b
ufshcd-pltfrm.c 10.8 KB