Thread (7 messages) 7 messages, 3 authors, 2017-11-08

[PATCH 2/3] dmaengine: qcom_hidma: add support for the new revision

From: robin.murphy@arm.com (Robin Murphy)
Date: 2017-11-06 18:03:20
Also in: linux-arm-msm, lkml

On 06/11/17 17:26, Sinan Kaya wrote:
quoted hunk ↗ jump to hunk
Add support for probing the newer HW.

Signed-off-by: Sinan Kaya <redacted>
---
 drivers/dma/qcom/hidma.c | 6 ++++++
 1 file changed, 6 insertions(+)
diff --git a/drivers/dma/qcom/hidma.c b/drivers/dma/qcom/hidma.c
index e366985..29d6aaa 100644
--- a/drivers/dma/qcom/hidma.c
+++ b/drivers/dma/qcom/hidma.c
@@ -749,9 +749,13 @@ static bool hidma_msi_capable(struct device *dev)
 			return false;
 
 		ret = strcmp(of_compat, "qcom,hidma-1.1");
+		if (ret)
+			ret = strcmp(of_compat, "qcom,hidma-1.2");
 	} else {
 #ifdef CONFIG_ACPI
 		ret = strcmp(acpi_device_hid(adev), "QCOM8062");
+		if (ret)
+			ret = strcmp(acpi_device_hid(adev), "QCOM8063");
This string-juggling looks to have already hit the point at which it
doesn't scale well - it would be a lot nicer to make use of
of_device_get_match_data() and the ACPI equivalent to abstract the
version-specific data appropriately.

Robin.
quoted hunk ↗ jump to hunk
 #endif
 	}
 	return ret == 0;
@@ -954,6 +958,7 @@ static int hidma_remove(struct platform_device *pdev)
 static const struct acpi_device_id hidma_acpi_ids[] = {
 	{"QCOM8061"},
 	{"QCOM8062"},
+	{"QCOM8063"},
 	{},
 };
 MODULE_DEVICE_TABLE(acpi, hidma_acpi_ids);
@@ -962,6 +967,7 @@ static int hidma_remove(struct platform_device *pdev)
 static const struct of_device_id hidma_match[] = {
 	{.compatible = "qcom,hidma-1.0",},
 	{.compatible = "qcom,hidma-1.1",},
+	{.compatible = "qcom,hidma-1.2",},
 	{},
 };
 MODULE_DEVICE_TABLE(of, hidma_match);
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help