devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] mmc: omap_hsmmc: Add support for Erratum 2.1.1.128 in device tree boot
@ 2014-01-20 23:29 Nishanth Menon
  2014-01-20 23:39 ` Felipe Balbi
  2014-02-04 12:44 ` Balaji T K
  0 siblings, 2 replies; 12+ messages in thread
From: Nishanth Menon @ 2014-01-20 23:29 UTC (permalink / raw)
  To: Balaji T K, Chris Ball
  Cc: Nishanth Menon, devicetree, Tony Lindgren, linux-mmc, linux-omap,
	linux-arm-kernel

When device is booted using devicetree, platforms impacted by
Erratum 2.1.1.128 is not detected easily in the mmc driver. This erratum
indicates that the module cannot do multi-block transfers.

Handle this by providing a boolean flag to indicate to driver that it is
working on a hardware with mentioned limitation.

Signed-off-by: Nishanth Menon <nm@ti.com>
---

This explains the logs I see:
OMAP3430 LDP (ES2.2):
	uImage only boot:  http://slexy.org/raw/s2YrbMAi7c 
	uImage+dtb concatenated boot: http://slexy.org/raw/s20qVg17T0 

With the following flag set, device is now able to consistently boot with
device tree supported uImage+dtb concat boot.

 .../devicetree/bindings/mmc/ti-omap-hsmmc.txt      |    2 ++
 drivers/mmc/host/omap_hsmmc.c                      |    3 +++
 2 files changed, 5 insertions(+)

diff --git a/Documentation/devicetree/bindings/mmc/ti-omap-hsmmc.txt b/Documentation/devicetree/bindings/mmc/ti-omap-hsmmc.txt
index 8c8908a..ab36f8b 100644
--- a/Documentation/devicetree/bindings/mmc/ti-omap-hsmmc.txt
+++ b/Documentation/devicetree/bindings/mmc/ti-omap-hsmmc.txt
@@ -26,6 +26,8 @@ specifier is required.
 dma-names: List of DMA request names. These strings correspond
 1:1 with the DMA specifiers listed in dmas. The string naming is
 to be "rx" and "tx" for RX and TX DMA requests, respectively.
+ti,erratum-2.1.1.128: boolean, for OMAP3430/OMAP35xx platforms with broken
+multiblock reads
 
 Examples:
 
diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
index 014bfe5..f2d5940 100644
--- a/drivers/mmc/host/omap_hsmmc.c
+++ b/drivers/mmc/host/omap_hsmmc.c
@@ -1730,6 +1730,9 @@ static struct omap_mmc_platform_data *of_get_hsmmc_pdata(struct device *dev)
 	if (of_find_property(np, "ti,dual-volt", NULL))
 		pdata->controller_flags |= OMAP_HSMMC_SUPPORTS_DUAL_VOLT;
 
+	if (of_find_property(np, "ti,erratum-2.1.1.128", NULL))
+		pdata->controller_flags |= OMAP_HSMMC_BROKEN_MULTIBLOCK_READ;
+
 	/* This driver only supports 1 slot */
 	pdata->nr_slots = 1;
 	pdata->slots[0].switch_pin = cd_gpio;
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2014-02-14  5:48 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-01-20 23:29 [PATCH] mmc: omap_hsmmc: Add support for Erratum 2.1.1.128 in device tree boot Nishanth Menon
2014-01-20 23:39 ` Felipe Balbi
2014-01-21 17:38   ` Nishanth Menon
2014-01-21 18:05     ` Felipe Balbi
2014-01-21 19:39       ` Nishanth Menon
2014-01-21 19:45         ` Felipe Balbi
2014-02-04 12:44 ` Balaji T K
2014-02-04 15:18   ` Nishanth Menon
2014-02-05 14:10     ` Balaji T K
2014-02-05 14:12       ` Nishanth Menon
2014-02-13 23:05         ` Tony Lindgren
2014-02-14  5:48           ` Nishanth Menon

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).