]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
scsi: ufs: qcom: Enable UFS Shared ICE Feature
authorRam Kumar Dwivedi <quic_rdwivedi@quicinc.com>
Mon, 3 Feb 2025 11:27:39 +0000 (16:57 +0530)
committerMartin K. Petersen <martin.petersen@oracle.com>
Tue, 4 Feb 2025 03:03:19 +0000 (22:03 -0500)
commit640a6af5099ae8f6a858a8612bec70048a4aee69
tree4394c5a432f9e60a8b74fa17f3399f6aec40d2bb
parent34a84c41c71bb02474aa976f1435c33173c7da92
scsi: ufs: qcom: Enable UFS Shared ICE Feature

By default, the UFS controller allocates a fixed number of RX and TX
engines statically. Consequently, when UFS reads are in progress, the TX
ICE engines remain idle, and vice versa.  This leads to inefficient
utilization of RX and TX engines.

To address this limitation, enable the UFS shared ICE feature for Qualcomm
UFS V5.0 and above. This feature utilizes a pool of crypto cores for both
TX streams (UFS Write – Encryption) and RX streams (UFS Read –
Decryption). With this approach, crypto cores are dynamically allocated to
either the RX or TX stream as needed.

Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Co-developed-by: Naveen Kumar Goud Arepalli <quic_narepall@quicinc.com>
Signed-off-by: Naveen Kumar Goud Arepalli <quic_narepall@quicinc.com>
Co-developed-by: Nitin Rawat <quic_nitirawa@quicinc.com>
Signed-off-by: Nitin Rawat <quic_nitirawa@quicinc.com>
Signed-off-by: Ram Kumar Dwivedi <quic_rdwivedi@quicinc.com>
Link: https://lore.kernel.org/r/20250203112739.11425-1-quic_rdwivedi@quicinc.com
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/ufs/host/ufs-qcom.c
drivers/ufs/host/ufs-qcom.h