scsi: ufs: ufs-qcom: Switch to the new ICE API
authorAbel Vesa <abel.vesa@linaro.org>
Mon, 12 Jun 2023 19:28:46 +0000 (22:28 +0300)
committerMartin K. Petersen <martin.petersen@oracle.com>
Fri, 16 Jun 2023 16:04:31 +0000 (12:04 -0400)
commit56541c7c4468a9de26d82ba6e8c10ace286f8fdd
treeecd943577077e27162fe01d247f5725c2724572f
parent29a6d1215b7cd5fdff9c3c31ea26076a694ee0a3
scsi: ufs: ufs-qcom: Switch to the new ICE API

Now that there is a new dedicated ICE driver, drop the ufs-qcom-ice and use
the new ICE api provided by the Qualcomm soc driver ice. The platforms that
already have ICE support will use the API as library since there will not
be a devicetree node, but instead they have reg range. In this case, the
of_qcom_ice_get will return an ICE instance created for the consumer's
device. But if there are platforms that do not have ice reg in the consumer
devicetree node and instead provide a dedicated ICE devicetree node, the
of_qcom_ice_get will look up the device based on qcom,ice property and will
get the ICE instance registered by the probe function of the ice driver.

The ICE clock is now handle by the new driver. This is done by enabling it
on the creation of the ICE instance and then enabling/disabling it on UFS
runtime resume/suspend.

Signed-off-by: Abel Vesa <abel.vesa@linaro.org>
Link: https://lore.kernel.org/r/20230612192847.1599416-3-abel.vesa@linaro.org
Reviewed-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/ufs/host/Kconfig
drivers/ufs/host/Makefile
drivers/ufs/host/ufs-qcom-ice.c [deleted file]
drivers/ufs/host/ufs-qcom.c
drivers/ufs/host/ufs-qcom.h