scsi: ufs: ufs-mediatek: Support clk-scaling to optimize power consumption
authorPo-Wen Kao <powen.kao@mediatek.com>
Tue, 2 Aug 2022 23:54:37 +0000 (07:54 +0800)
committerMartin K. Petersen <martin.petersen@oracle.com>
Tue, 23 Aug 2022 02:58:30 +0000 (22:58 -0400)
commitb7dbc686f60b28d0843ed572f8aa59c3e76e142b
tree7f3937d48165d84e2951a538df517b1f2d51a643
parent2873e0453b0165117bdc28dee3e38d69dd82f4c5
scsi: ufs: ufs-mediatek: Support clk-scaling to optimize power consumption

Provide clk-scaling feature in MediaTek UFS platforms.

MediaTek platform supports clk-scaling by switching parent clock mux of
UFSHCI main clocks: ufs_sel.

The driver needs to prevent changing the rate of ufs_sel because its parent
PLL clock may be shared between multiple IPs. In order to achieve this
goal, the maximum and minimum clock rates of ufs_sel defined in dts should
match the rate of "ufs_sel_max_src" and "ufs_sel_min_src" respectively.

Link: https://lore.kernel.org/r/20220802235437.4547-6-stanley.chu@mediatek.com
Reviewed-by: Stanley Chu <stanley.chu@mediatek.com>
Signed-off-by: Po-Wen Kao <powen.kao@mediatek.com>
Signed-off-by: Stanley Chu <stanley.chu@mediatek.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/ufs/host/ufs-mediatek-trace.h
drivers/ufs/host/ufs-mediatek.c
drivers/ufs/host/ufs-mediatek.h