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

Shawn Lin shawn.lin at rock-chips.com
Wed Aug 5 01:56:10 PDT 2015


在 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 at rock-chips.com>
>>>> ---
>>>>
>>>> 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 at 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 at 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





More information about the Linux-rockchip mailing list