On Tue, Dec 19, 2017 at 11:19:52AM +0000, Wen He wrote: > > > This struct defined description two different dma message format that > > > Compound Command Descriptor Format and qDMA Compound S/G Format, > > if add this too to union, it could be ambiguous. > > > > at lower level do we care about the format, we fill and submit to HW > > > > Okay, Is that ok? > > Will and below using fsl_qdma_desc_format instead fsl_qdma_ccfg and delete fsl_qdma_csgf in next version. > Keep and fixed all of description call function, the desc pointer defined by the fsl_qdma_descs_format. > > struct fsl_qdma_desc_format *ccdf, *csgf; > > then fill and submit to HW. Looks okay for now, will check the resulting code and let you know > > > > IIRC there are macros which which take care of this, can you check > > > > other FSL drivers please > > > > > > > > > > Okay, but I search the FSL drivers and no found. Do you know where are > > them ? > > > > See DMA_IN/OUT in dma/fsldma.h > > > > Okay, but DMA_IN/OUT need struct fsldma_chan. > May be I can refer to it that Implement a similar macro, will and below to instead it in next version. > > #define QDMA_IN(fsl_qdma_engine, addr) \ > (((fsl_qdma_engine)->big_endian & FSL_DMA_BIG_ENDIAN) ? \ > ioread32be(addr) : ioread32(addr)) > > #define QDMA_OUT(fsl_qdma_engine, addr, val) \ > (((fsl_qdma_engine)->big_endian & FSL_DMA_BIG_ENDIAN) ? \ > iowrite32be(val, addr) : iowrite32(val, addr)) Ah that would be duplicate. How about making it common and abstracting this as FSL_DMA_IN/OUT and using in both drivers? -- ~Vinod -- To unsubscribe from this list: send the line "unsubscribe dmaengine" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html