Re: [PATCH V2] scsi: ufs: ufs-qcom: Enable only lane clocks in lane clock APIs
From: Martin K. Petersen (Oracle)
Date: Wed Sep 16 2026 - 22:34:18 EST
On Wed, 09 Sep 2026 11:09:44 +0530, Nitin Rawat wrote:
> ufs_qcom_enable_lane_clks() and ufs_qcom_disable_lane_clks() currently
> use clk_bulk_prepare_enable()/clk_bulk_disable_unprepare() on the
> entire host->clks array obtained from devm_clk_bulk_get_all(). This
> array contains all device clocks, not just lane symbol clocks.
>
> Since the UFS core framework already manages the non-lane clocks via
> the setup_clocks callback, the bulk enable/disable in the lane clock
> APIs resulted in duplicate reference count increments on those shared
> clocks. The extra enable counts were never balanced by a corresponding
> disable from the framework's clock gating path, preventing the clock
> reference counts from reaching zero and ultimately blocking CXO
> shutdown during low-power states.
>
> [...]
Applied to 7.4/scsi-queue, thanks!
[1/1] scsi: ufs: ufs-qcom: Enable only lane clocks in lane clock APIs
https://git.kernel.org/mkp/scsi/c/f07317a8d57f
--
Martin K. Petersen