Re: [RFC PATCH v3 2/5] Documentation: synopsys-dw-mshc: add bindings for idmac and edmac

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



在 2015/8/5 16:45, Heiko Stübner 写道:
Am Mittwoch, 5. August 2015, 16:43:20 schrieb Shawn Lin:
在 2015/8/5 16:27, Krzysztof Kozlowski 写道:
On 05.08.2015 17:17, Shawn Lin wrote:
synopsys-dw-mshc supports three types of transfer mode. We add bindings
and description for how to use them at runtime. Without idmac and edmac
property, pio is the default transfer mode. Make sure that Idmac and
emdac
should not be used simultaneously.

Signed-off-by: Shawn Lin <shawn.lin@xxxxxxxxxxxxxx>
---

Changes in v3: None
Changes in v2: None

   .../devicetree/bindings/mmc/synopsys-dw-mshc.txt   | 41
   ++++++++++++++++++++++ 1 file changed, 41 insertions(+)

diff --git a/Documentation/devicetree/bindings/mmc/synopsys-dw-mshc.txt
b/Documentation/devicetree/bindings/mmc/synopsys-dw-mshc.txt index
346c609..30369cb 100644
--- a/Documentation/devicetree/bindings/mmc/synopsys-dw-mshc.txt
+++ b/Documentation/devicetree/bindings/mmc/synopsys-dw-mshc.txt

@@ -75,6 +75,25 @@ Optional properties:
   * vmmc-supply: The phandle to the regulator to use for vmmc.  If this
   is
specified we'll defer probe until we can find this regulator.

+* supports-idmac: Enables support for internal DMAC block within the
Synopsys +  Designware Mobile Storage IP block. If supports-idmac
property is present, then +  we MUST NOT add supports-edmac property
since we'd assume that dw-mshc IP is +  integrated with only one type of
dma master.
+
+* supports-edmac: Enables support for external DMAC block outside the
Synopsys +  Designware Mobile Storage IP block. If supports-edmac
property is present, then +  we MUST NOT add supports-idmac property
since we'd assume that dw-mshc IP is +  integrated with only one type of
dma master.
+
+  (Without "supports-idmac" and "supports-edmac", use PIO as default
transfer mode)>
Aren't you breaking here backward compatibility with existing DTB?

Best regards,
Krzysztof
   Thanks, Krzysztof.
   I guess you mean that I should keep existing DTB w/o these two
properties work fine using idmac?
yep
  Okay, I got it.

+
+* dmas: List of DMA specifiers with the controller specific format as
described +  in the generic DMA client binding. This property should be
combined with +  supports-edmac. Refer to dma.txt for details.
+
+* dma-names: DMA request names. Must be "rx-tx". And This property
should be +  combined with supports-edmac. Refer to dma.txt for details.
+
Similarly the use of an external dmac could simply be detected, by the
presence of the dma-* properties. So when the machine defines dma channels use
the external dma, otherwise the internal (or none). So you wouldn't need
separate new properties at all.
  Thanks, Heiko.  I understand your point.
  It will be done in v4.

   Aliases:
- All the MSHC controller nodes should be represented in the aliases
   node using>>
@@ -95,6 +114,8 @@ board specific portions as listed below.

   		#size-cells = <0>;
   	
   	};

+[board specific internal DMA resources]
+

   	dwmmc0@12200000 {
   	
   		clock-frequency = <400000000>;
   		clock-freq-min-max = <400000 200000000>;

@@ -106,4 +127,24 @@ board specific portions as listed below.

   		bus-width = <8>;
   		cap-mmc-highspeed;
   		cap-sd-highspeed;

+		supports-idmac;

   	};

+
+[board specific generic DMA request binding]
+
+	dwmmc0@12200000 {
+		clock-frequency = <400000000>;
+		clock-freq-min-max = <400000 200000000>;
+		num-slots = <1>;
+		broken-cd;
+		fifo-depth = <0x80>;
+		card-detect-delay = <200>;
+		vmmc-supply = <&buck8>;
+		bus-width = <8>;
+		cap-mmc-highspeed;
+		cap-sd-highspeed;
+		supports-edmac;
+		dmas = <&pdma 12>;
+		dma-names = "rx-tx";
+	};
+





--
Shawn Lin






[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux