35 lines
1.2 KiB
Diff
35 lines
1.2 KiB
Diff
From 9e6eeee6a1e0477f237dee5015c982296a91403f Mon Sep 17 00:00:00 2001
|
|
From: Pantelis Antoniou <panto@antoniou-consulting.com>
|
|
Date: Fri, 26 Oct 2012 15:48:00 +0300
|
|
Subject: [PATCH 1/2] omap-hsmmc: Correct usage of of_find_node_by_name
|
|
|
|
of_find_node_by_name expect to have the parent node reference taken.
|
|
---
|
|
drivers/mmc/host/omap_hsmmc.c | 10 ++++++++++
|
|
1 file changed, 10 insertions(+)
|
|
|
|
diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
|
|
index 91e2954..8ab4a93 100644
|
|
--- a/drivers/mmc/host/omap_hsmmc.c
|
|
+++ b/drivers/mmc/host/omap_hsmmc.c
|
|
@@ -1949,6 +1949,16 @@ static int omap_hsmmc_probe(struct platform_device *pdev)
|
|
* as we want. */
|
|
mmc->max_segs = 1024;
|
|
|
|
+ /* Eventually we should get our max_segs limitation for EDMA by
|
|
+ * querying the dmaengine API */
|
|
+ if (pdev->dev.of_node) {
|
|
+ struct device_node *parent = of_node_get(pdev->dev.of_node->parent);
|
|
+ struct device_node *node;
|
|
+ node = of_find_node_by_name(parent, "edma");
|
|
+ if (node)
|
|
+ mmc->max_segs = 16;
|
|
+ }
|
|
+
|
|
mmc->max_blk_size = 512; /* Block Length at max can be 1024 */
|
|
mmc->max_blk_count = 0xFFFF; /* No. of Blocks is 16 bits */
|
|
mmc->max_req_size = mmc->max_blk_size * mmc->max_blk_count;
|
|
--
|
|
1.8.2.1
|
|
|