Thread (24 messages) 24 messages, 7 authors, 2015-08-06

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

From: Shawn Lin <shawn.lin@rock-chips.com>
Date: 2015-08-06 03:13:55
Also in: linux-mips, linux-mmc, linux-rockchip, linux-samsung-soc

在 2015/8/6 10:20, Jaehoon Chung 写道:
On 08/06/2015 11:16 AM, Doug Anderson wrote:
quoted
Shawn,

On Wed, Aug 5, 2015 at 1:17 AM, Shawn Lin [off-list ref] wrote:
quoted
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.
Can't you just read the HCON register?

[17:16]: DMA_INTERFACE
  00: none
  01: DW_DMA
  10: GENERIC_DMA
  11: NON-DW-DMA
If read it and get the exactly information. I think we can use that information.
  It's helpful really, but the description is ambiguous. :(
  So I make a big big mistake when I read it for the firest time .
  I was just wondering the "mismatch" value from HCON and my databook.

Here I get details from our ASIC team guy :

// Name:         DMA_INTERFACE
// Default:      None
// Values:       None (0), DW-DMA (1), Generic-DMA (2), NON-DW-DMA (3)
// Enabled:      INTERNAL_DMAC==0
//
// Configures the type for DMA interface. In addition to AMBA host 
interface,
//  the data FIFO can be accesses by the optional DMA interface. The DMA 
type
//  could be either DW-DMA, which provides hand shake signals to 
DW_ahb_dmac
//  controller, or a generic DMA interface which provides a simpler
//  request/acknowledgement protocol and dedicated DMA data-bus, or
//  no DMA interface.
`define DMA_INTERFACE 1

   if we use idmac, DMA_INTERFACE should be "0", and we get 2b'00 from 
HCON[17:16]
   if we use edmac, DMA_INTERFACE should be "1", "2" and we get 2b'01 ,2b'10
   from HCON[17:16] respectively .
   But if only support PIO mode,   DMA_INTERFACE should be "3", and we 
get 2b'11 from
   HCON[17:16].

   So, "none" means IDMAC, "DW_DMA"/"GENERIC_DMA" refer to two types of 
external dma and "NON-DW-DMA" means pio from databook . It's a little 
difficult to understand it.

  This makes my work easy!

  Thanks, Doug and Jeahoon.
Best Regards,
Jaehoon Chung



-- 
Shawn Lin
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help