Forcing PIO mode instead of DMA via DT property

Marek Vasut marex at denx.de
Tue Jul 31 00:00:44 EST 2012


Dear Aggrwal Poonam-B10812,

[...]

> > > > We just had such a situation, where PIO had to be used on a specific
> > > > bus, because due to a hardware problem (board design error) DMA
> > > > would crash the system.  Yet the same driver/kernel would work fine
> > > > with DMA on other buses / boards.  OK, this was on x86, so DT would
> > > > not have helped, but I think a bus-specific property of being able
> > > > to do DMA (or not) might indeed make sense for the DT.
> > > 
> > > In that case probably we can use QUIRKS like broken-dma. I see this in
> > > the sdhc driver in Linux. On P2020 chip(rev 1.0) of FSL DMA was broken
> > > so we used this to force PIO.
> > 
> > Do you please happen to have any sample of such DT binding for reference?
> 
> Sorry cannot find the DT bindings in upstream, probably this issue was not
> there in P2020 Rev2.0 hence so. I can cite a node from FSL old SDK
> sdhci at 2e000 {
> 			compatible = "fsl,p2020-esdhc", "fsl,esdhc";
> 			reg = <0x2e000 0x1000>;
> 			interrupts = <72 0x2>;
> 			interrupt-parent = <&mpic>;
> 			fsl,sdhci-adjust-timeout;
> 			/* Filled in by U-Boot */
> 			clock-frequency = <0>;
> 		};
> 
> 
> 
> You can look at drivers/mmc/host/sdhci-of-esdhc.c which handles various
> quirks.

Ok, so you suggest we add such a property or what is the conclusion please?

Best regards,
Marek Vasut


More information about the devicetree-discuss mailing list