[PATCH 0/2] Enable UFS ICE clock scaling

Abhinaba Rakshit posted 2 patches 4 months, 1 week ago
drivers/soc/qcom/ice.c      | 25 +++++++++++++++++++++++++
drivers/ufs/host/ufs-qcom.c | 14 ++++++++++++++
include/soc/qcom/ice.h      |  1 +
3 files changed, 40 insertions(+)
[PATCH 0/2] Enable UFS ICE clock scaling
Posted by Abhinaba Rakshit 4 months, 1 week ago
This API enables dynamic scaling of the ICE (Inline Crypto Engine) clock,
which is tightly integrated with the host controller. It is invoked by the UFS 
host controller driver in response to clock scaling requests, ensuring
coordination between ICE and the host controller.

This API helps prevent degradation in storage read/write KPIs,
maintaining consistent I/O throughput performance.

The implementation has been tested using tiotest to verify that enabling ICE
does not negatively impact host controller I/O performance during
read/write operations.

Signed-off-by: Abhinaba Rakshit <abhinaba.rakshit@oss.qualcomm.com>
---
Abhinaba Rakshit (2):
      soc: qcom: ice: enable ICE clock scaling API
      ufs: host: scale ICE clock

 drivers/soc/qcom/ice.c      | 25 +++++++++++++++++++++++++
 drivers/ufs/host/ufs-qcom.c | 14 ++++++++++++++
 include/soc/qcom/ice.h      |  1 +
 3 files changed, 40 insertions(+)
---
base-commit: 3b9b1f8df454caa453c7fb07689064edb2eda90a
change-id: 20251001-enable-ufs-ice-clock-scaling-9c55598295f6

Best regards,
-- 
Abhinaba Rakshit <abhinaba.rakshit@oss.qualcomm.com>
Re: [PATCH 0/2] Enable UFS ICE clock scaling
Posted by Manivannan Sadhasivam 4 months, 1 week ago
On Wed, Oct 01, 2025 at 05:08:18PM +0530, Abhinaba Rakshit wrote:
> This API enables dynamic scaling of the ICE (Inline Crypto Engine) clock,

Which API?

> which is tightly integrated with the host controller. It is invoked by the UFS 
> host controller driver in response to clock scaling requests, ensuring
> coordination between ICE and the host controller.
> 
> This API helps prevent degradation in storage read/write KPIs,
> maintaining consistent I/O throughput performance.

I'd expect clock scaling to save some power, than 'preventing degradation in
performance'.

> 
> The implementation has been tested using tiotest to verify that enabling ICE
> does not negatively impact host controller I/O performance during
> read/write operations.
> 

On which platform?

- Mani

> Signed-off-by: Abhinaba Rakshit <abhinaba.rakshit@oss.qualcomm.com>
> ---
> Abhinaba Rakshit (2):
>       soc: qcom: ice: enable ICE clock scaling API
>       ufs: host: scale ICE clock
> 
>  drivers/soc/qcom/ice.c      | 25 +++++++++++++++++++++++++
>  drivers/ufs/host/ufs-qcom.c | 14 ++++++++++++++
>  include/soc/qcom/ice.h      |  1 +
>  3 files changed, 40 insertions(+)
> ---
> base-commit: 3b9b1f8df454caa453c7fb07689064edb2eda90a
> change-id: 20251001-enable-ufs-ice-clock-scaling-9c55598295f6
> 
> Best regards,
> -- 
> Abhinaba Rakshit <abhinaba.rakshit@oss.qualcomm.com>
> 

-- 
மணிவண்ணன் சதாசிவம்
Re: [PATCH 0/2] Enable UFS ICE clock scaling
Posted by Abhinaba Rakshit 2 months, 4 weeks ago
On Fri, Oct 03, 2025 at 10:18:15PM +0530, Manivannan Sadhasivam wrote:
> On Wed, Oct 01, 2025 at 05:08:18PM +0530, Abhinaba Rakshit wrote:
> > This API enables dynamic scaling of the ICE (Inline Crypto Engine) clock,
> 
> Which API?

Will keep it more specific and update in patchset v2.

> 
> > which is tightly integrated with the host controller. It is invoked by the UFS 
> > host controller driver in response to clock scaling requests, ensuring
> > coordination between ICE and the host controller.
> > 
> > This API helps prevent degradation in storage read/write KPIs,
> > maintaining consistent I/O throughput performance.
> 
> I'd expect clock scaling to save some power, than 'preventing degradation in
> performance'.

The solution should achieve both objectives: maintaining functionality while
dynamically downscaling the clock during periods of low read/write activity to
reduce power consumption.
Will update with more details in patchset v2.

> 
> > 
> > The implementation has been tested using tiotest to verify that enabling ICE
> > does not negatively impact host controller I/O performance during
> > read/write operations.
> > 
> 
> On which platform?

Currently we have tested on Kodiak and Talos, with additional device-tree changes.
Will also update the tests details better in patchset v2.

> 
> - Mani
> 
> > Signed-off-by: Abhinaba Rakshit <abhinaba.rakshit@oss.qualcomm.com>
> > ---
> > Abhinaba Rakshit (2):
> >       soc: qcom: ice: enable ICE clock scaling API
> >       ufs: host: scale ICE clock
> > 
> >  drivers/soc/qcom/ice.c      | 25 +++++++++++++++++++++++++
> >  drivers/ufs/host/ufs-qcom.c | 14 ++++++++++++++
> >  include/soc/qcom/ice.h      |  1 +
> >  3 files changed, 40 insertions(+)
> > ---
> > base-commit: 3b9b1f8df454caa453c7fb07689064edb2eda90a
> > change-id: 20251001-enable-ufs-ice-clock-scaling-9c55598295f6
> > 
> > Best regards,
> > -- 
> > Abhinaba Rakshit <abhinaba.rakshit@oss.qualcomm.com>
> > 
> 
> -- 
> மணிவண்ணன் சதாசிவம்