[PATCH v7 0/7] Initial support for RK3576 UFS controller

Shawn Lin shawn.lin at rock-chips.com
Fri Feb 7 17:01:27 PST 2025


Hi Ulf,

在 2025/2/7 18:17, Ulf Hansson 写道:
> On Wed, 5 Feb 2025 at 07:16, Shawn Lin <shawn.lin at rock-chips.com> wrote:
>>
>> This patchset adds initial UFS controller supprt for RK3576 SoC.
>> Patch 1 is the dt-bindings. Patch 2-4 deal with rpm and spm support
>> in advanced suggested by Ulf. Patch 5 exports two new APIs for host
>> driver. Patch 6 and 7 are the host driver and dtsi support.
> 
> Looks like this series is almost ready to be merged?
> 
> If so, may I suggest that I pick patch2, patch3 and patch4 via my
> pmdomain tree and share them via an immutable branch, so they can be
> pulled into James/Martin's scsi tree? Or do you prefer another route?
> 

Thanks for the review. I'm fine with both. Let's wait for James/Martin's
opinion.

> Kind regards
> Uffe
> 
>>
>>
>> Changes in v7:
>> - add definitions for all kinds of hex values if possible
>> - Misc log and comment improvement
>> - use udelay for less than 10us cases
>> - other improvements suggested by Mani
>> - Use 0x0 for consistency
>> - Collect Mani's acked-by tag
>>
>> Changes in v6:
>> - fix indentation to 4 spaces suggested by Krzysztof
>> - export dev_pm_genpd_rpm_always_on()
>> - replace host drivers with glue drivers suggested by Mani
>> - add Main's review tag
>> - remove UFS_MAX_CLKS
>> - improve err log
>> - remove hardcoded clocks
>> - remove comment from ufs_rockchip_device_reset()
>> - remove pm_runtime_* from ufs_rockchip_remove()
>> - rebase to scsi/next
>> - move ufs_rockchip_set_pm_lvl to ufs_rockchip_rk3576_init()
>> - add comments about device_set_awake_path()
>> - remove comments suggested by Mani
>>
>> Changes in v5:
>> - use ufshc for devicetree example suggested by Mani
>> - fix a compile warning
>> - use device_set_awake_path() and disable ref_out_clk in suspend
>> - remove pd_id from header
>> - reconstruct ufs_rockchip_hce_enable_notify() to workaround hce enable
>>    without using new quirk
>>
>> Changes in v4:
>> - properly describe reset-gpios
>> - deal with power domain of rpm and spm suggested by Ulf
>> - Fix typo and disable clks in ufs_rockchip_remove
>> - remove clk_disable_unprepare(host->ref_out_clk) from
>>    ufs_rockchip_remove
>>
>> Changes in v3:
>> - rename the file to rockchip,rk3576-ufshc.yaml
>> - add description for reset-gpios
>> - use rockchip,rk3576-ufshc as compatible
>> - reword Kconfig description
>> - elaborate more about controller in commit msg
>> - use rockchip,rk3576-ufshc for compatible
>> - remove useless header file
>> - remove inline for ufshcd_is_device_present
>> - use usleep_range instead
>> - remove initialization, reverse Xmas order
>> - remove useless varibles
>> - check vops for null
>> - other small fixes for err path
>> - remove pm_runtime_set_active
>> - fix the active and inactive reset-gpios logic
>> - fix rpm_lvl and spm_lvl to 5 and move to end of probe path
>> - remove unnecessary system PM callbacks
>> - use UFSHCI_QUIRK_DME_RESET_ENABLE_AFTER_HCE instead
>>    of UFSHCI_QUIRK_BROKEN_HCE
>>
>> Changes in v2:
>> - rename the file
>> - add reset-gpios
>>
>> Shawn Lin (6):
>>    dt-bindings: ufs: Document Rockchip UFS host controller
>>    soc: rockchip: add header for suspend mode SIP interface
>>    pmdomain: rockchip: Add smc call to inform firmware
>>    scsi: ufs: core: Export ufshcd_dme_reset() and ufshcd_dme_enable()
>>    scsi: ufs: rockchip: initial support for UFS
>>    arm64: dts: rockchip: Add UFS support for RK3576 SoC
>>
>> Ulf Hansson (1):
>>    pmdomain: core: Introduce dev_pm_genpd_rpm_always_on()
>>
>>   .../bindings/ufs/rockchip,rk3576-ufshc.yaml        | 105 ++++++
>>   arch/arm64/boot/dts/rockchip/rk3576.dtsi           |  24 ++
>>   drivers/pmdomain/core.c                            |  35 ++
>>   drivers/pmdomain/rockchip/pm-domains.c             |   8 +
>>   drivers/ufs/core/ufshcd.c                          |   6 +-
>>   drivers/ufs/host/Kconfig                           |  12 +
>>   drivers/ufs/host/Makefile                          |   1 +
>>   drivers/ufs/host/ufs-rockchip.c                    | 353 +++++++++++++++++++++
>>   drivers/ufs/host/ufs-rockchip.h                    |  90 ++++++
>>   include/linux/pm_domain.h                          |   7 +
>>   include/soc/rockchip/rockchip_sip.h                |   3 +
>>   include/ufs/ufshcd.h                               |   2 +
>>   12 files changed, 644 insertions(+), 2 deletions(-)
>>   create mode 100644 Documentation/devicetree/bindings/ufs/rockchip,rk3576-ufshc.yaml
>>   create mode 100644 drivers/ufs/host/ufs-rockchip.c
>>   create mode 100644 drivers/ufs/host/ufs-rockchip.h
>>
>> --
>> 2.7.4
>>
> 




More information about the Linux-rockchip mailing list