diff options
Diffstat (limited to 'arm64-ufs-qcom-Add-support-for-platforms-booting-ACPI.patch')
-rw-r--r-- | arm64-ufs-qcom-Add-support-for-platforms-booting-ACPI.patch | 83 |
1 files changed, 0 insertions, 83 deletions
diff --git a/arm64-ufs-qcom-Add-support-for-platforms-booting-ACPI.patch b/arm64-ufs-qcom-Add-support-for-platforms-booting-ACPI.patch deleted file mode 100644 index 318922766..000000000 --- a/arm64-ufs-qcom-Add-support-for-platforms-booting-ACPI.patch +++ /dev/null @@ -1,83 +0,0 @@ -From 9ceb22fbffbad710db2c91ed32e4e73503f13301 Mon Sep 17 00:00:00 2001 -From: Peter Robinson <pbrobinson@gmail.com> -Date: Tue, 25 Jun 2019 19:12:10 +0100 -Subject: [PATCH] scsi: ufs-qcom: Add support for platforms booting ACPI - -New Qualcomm AArch64 based laptops are now available which use UFS -as their primary data storage medium. These devices are supplied -with ACPI support out of the box. This patch ensures the Qualcomm -UFS driver will be bound when the "QCOM24A5" H/W device is -advertised as present. - -Signed-off-by: Lee Jones <lee.jones@linaro.org> -Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> -Signed-off-by: Peter Robinson <pbrobinson@gmail.com> ---- - drivers/scsi/ufs/ufs-qcom.c | 23 ++++++++++++++++++++--- - 1 file changed, 20 insertions(+), 3 deletions(-) - -diff --git a/drivers/scsi/ufs/ufs-qcom.c b/drivers/scsi/ufs/ufs-qcom.c -index b4d1b5c22987..ee4b1da1e223 100644 ---- a/drivers/scsi/ufs/ufs-qcom.c -+++ b/drivers/scsi/ufs/ufs-qcom.c -@@ -3,6 +3,7 @@ - * Copyright (c) 2013-2016, Linux Foundation. All rights reserved. - */ - -+#include <linux/acpi.h> - #include <linux/time.h> - #include <linux/of.h> - #include <linux/platform_device.h> -@@ -161,6 +162,9 @@ static int ufs_qcom_init_lane_clks(struct ufs_qcom_host *host) - int err = 0; - struct device *dev = host->hba->dev; - -+ if (has_acpi_companion(dev)) -+ return 0; -+ - err = ufs_qcom_host_clk_get(dev, "rx_lane0_sync_clk", - &host->rx_l0_sync_clk, false); - if (err) -@@ -1127,9 +1131,13 @@ static int ufs_qcom_init(struct ufs_hba *hba) - __func__, err); - goto out_variant_clear; - } else if (IS_ERR(host->generic_phy)) { -- err = PTR_ERR(host->generic_phy); -- dev_err(dev, "%s: PHY get failed %d\n", __func__, err); -- goto out_variant_clear; -+ if (has_acpi_companion(dev)) { -+ host->generic_phy = NULL; -+ } else { -+ err = PTR_ERR(host->generic_phy); -+ dev_err(dev, "%s: PHY get failed %d\n", __func__, err); -+ goto out_variant_clear; -+ } - } - - err = ufs_qcom_bus_register(host); -@@ -1599,6 +1607,14 @@ static const struct of_device_id ufs_qcom_of_match[] = { - }; - MODULE_DEVICE_TABLE(of, ufs_qcom_of_match); - -+#ifdef CONFIG_ACPI -+static const struct acpi_device_id ufs_qcom_acpi_match[] = { -+ { "QCOM24A5" }, -+ { }, -+}; -+MODULE_DEVICE_TABLE(acpi, ufs_qcom_acpi_match); -+#endif -+ - static const struct dev_pm_ops ufs_qcom_pm_ops = { - .suspend = ufshcd_pltfrm_suspend, - .resume = ufshcd_pltfrm_resume, -@@ -1615,6 +1631,7 @@ static struct platform_driver ufs_qcom_pltform = { - .name = "ufshcd-qcom", - .pm = &ufs_qcom_pm_ops, - .of_match_table = of_match_ptr(ufs_qcom_of_match), -+ .acpi_match_table = ACPI_PTR(ufs_qcom_acpi_match), - }, - }; - module_platform_driver(ufs_qcom_pltform); --- -2.21.0 - |