aboutsummaryrefslogtreecommitdiff
path: root/drivers/ufs/host/Kconfig
AgeCommit message (Collapse)AuthorFilesLines
2023-07-05scsi: ufs: ufs-mediatek: Add dependency for RESET_CONTROLLERRandy Dunlap1-0/+1
When RESET_CONTROLLER is not set, kconfig complains about missing dependencies for RESET_TI_SYSCON, so add the missing dependency just as is done above for SCSI_UFS_QCOM. Silences this kconfig warning: WARNING: unmet direct dependencies detected for RESET_TI_SYSCON Depends on [n]: RESET_CONTROLLER [=n] && HAS_IOMEM [=y] Selected by [m]: - SCSI_UFS_MEDIATEK [=m] && SCSI_UFSHCD [=y] && SCSI_UFSHCD_PLATFORM [=y] && ARCH_MEDIATEK [=y] Fixes: de48898d0cb6 ("scsi: ufs-mediatek: Create reset control device_link") Signed-off-by: Randy Dunlap <[email protected]> Link: lore.kernel.org/r/[email protected] Link: https://lore.kernel.org/r/[email protected] Cc: Stanley Chu <[email protected]> Cc: Peter Wang <[email protected]> Cc: Paul Gazzillo <[email protected]> Cc: Necip Fazil Yildiran <[email protected]> Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: "James E.J. Bottomley" <[email protected]> Cc: "Martin K. Petersen" <[email protected]> Reported-by: kernel test robot <[email protected]> Signed-off-by: Martin K. Petersen <[email protected]>
2023-06-16scsi: ufs: ufs-qcom: Switch to the new ICE APIAbel Vesa1-1/+1
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 <[email protected]> Link: https://lore.kernel.org/r/[email protected] Reviewed-by: Eric Biggers <[email protected]> Signed-off-by: Martin K. Petersen <[email protected]>
2023-02-21scsi: ufs: Make the TC G210 driver dependent on CONFIG_OFBart Van Assche1-1/+1
The TC G210 driver only supports devices declared in the device tree. Hence make this driver dependent on CONFIG_OF. This patch fixes the following compiler error: drivers/ufs/host/tc-dwc-g210-pltfrm.c:36:34: error: ‘tc_dwc_g210_pltfm_match’ defined but not used [-Werror=unused-const-variable=] 36 | static const struct of_device_id tc_dwc_g210_pltfm_match[] = { | Link: https://lore.kernel.org/r/[email protected] Cc: Joao Pinto <[email protected]> Signed-off-by: Bart Van Assche <[email protected]> Reviewed-by: Bean Huo <[email protected]> Signed-off-by: Martin K. Petersen <[email protected]>
2023-02-03scsi: ufs: qcom: fix platform_msi_domain_free_irqs() referenceArnd Bergmann1-1/+2
The newly added MSI support is mostly hidden inside of an #ifdef, except for one line that now causes a build failure when MSI is disabled: drivers/ufs/host/ufs-qcom.c: In function 'ufs_qcom_remove': drivers/ufs/host/ufs-qcom.c:1698:9: error: implicit declaration of function 'platform_msi_domain_free_irqs' [-Werror=i] 1698 | platform_msi_domain_free_irqs(hba->dev); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Above that, the symbol that guards the other call was recently removed, so that is all dead code at the moment. Remove the incorrect #ifdef and instead of a Kconfig dependency to only allow building the driver when CONFIG_GENERIC_MSI_IRQ is enabled. This symbol is always present when PCI_MSI or ARM_GIC_V3_ITS are enabled, both of which should be present on kernels that can run on Qualcomm SoCs. The 'select RESET_CONTROLLER' in combination with this dependency unfortunately causes a dependency loop and this is a user-visible symbol, so it's better to change both to 'depends on'. Link: https://lore.kernel.org/r/[email protected] Fixes: 519b6274a777 ("scsi: ufs: qcom: Add MCQ ESI config vendor specific ops") Fixes: 13e7accb81d6 ("genirq: Get rid of GENERIC_MSI_IRQ_DOMAIN") Signed-off-by: Arnd Bergmann <[email protected]> Reviewed-by: Manivannan Sadhasivam <[email protected]> Acked-by: Can Guo <[email protected]> Signed-off-by: Martin K. Petersen <[email protected]>
2023-01-11scsi: ufs: ufs-unisoc: Add support for Unisoc UFS host controllerZhe Wang1-0/+12
Add driver code for Unisoc UFS host controller, along with UFS initialization. Signed-off-by: Zhe Wang <[email protected]> Reviewed-by: Bart Van Assche <[email protected]> Signed-off-by: Martin K. Petersen <[email protected]>
2022-12-30scsi: ufs: core: Allow UFS host drivers to override the sg entry sizeEric Biggers1-0/+4
Modify the UFSHCD core to allow 'struct ufshcd_sg_entry' to be variable-length. The default is the standard length, but variants can override ufs_hba::sg_entry_size with a larger value if there are vendor-specific fields following the standard ones. This is needed to support inline encryption with ufs-exynos (FMP). Cc: Eric Biggers <[email protected]> Reviewed-by: Avri Altman <[email protected]> Signed-off-by: Eric Biggers <[email protected]> [ bvanassche: edited commit message and introduced CONFIG_SCSI_UFS_VARIABLE_SG_ENTRY_SIZE ] Signed-off-by: Bart Van Assche <[email protected]> Signed-off-by: Martin K. Petersen <[email protected]>
2022-06-13scsi: ufs: ufs-renesas: Add support for Renesas R-Car UFS controllerYoshihiro Shimoda1-0/+12
Add support for Renesas R-Car UFS controller which needs vendor-specific initialization. Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Yoshihiro Shimoda <[email protected]> Signed-off-by: Martin K. Petersen <[email protected]>
2022-05-19scsi: ufs: Split the drivers/scsi/ufs directoryBart Van Assche1-0/+114
Split the drivers/scsi/ufs directory into 'core' and 'host' directories under the drivers/ufs/ directory. Move shared header files into the include/ufs/ directory. This separation makes it clear which header files UFS drivers are allowed to include (include/ufs/*.h) and which header files UFS drivers are not allowed to include (drivers/ufs/core/*.h). Update the MAINTAINERS file. Add myself as a UFS reviewer. Link: https://lore.kernel.org/r/[email protected] Cc: Adrian Hunter <[email protected]> Cc: Avri Altman <[email protected]> Cc: Bean Huo <[email protected]> Cc: Bjorn Andersson <[email protected]> Cc: Keoseong Park <[email protected]> Tested-by: Bean Huo <[email protected]> Tested-by: Adrian Hunter <[email protected]> Reviewed-by: Bean Huo <[email protected]> Acked-by: Avri Altman <[email protected]> Acked-by: Adrian Hunter <[email protected]> Signed-off-by: Bart Van Assche <[email protected]> Signed-off-by: Martin K. Petersen <[email protected]>