@@ -358,10 +358,10 @@ static size_t fsl_edma_desc_residue(struct fsl_edma_chan *fsl_chan,
358358
359359 /* calculate the total size in this desc */
360360 for (len = i = 0 ; i < fsl_chan -> edesc -> n_tcds ; i ++ ) {
361- nbytes = le32_to_cpu ( edesc -> tcd [i ].vtcd -> nbytes );
361+ nbytes = fsl_edma_get_tcd_to_cpu ( fsl_chan , edesc -> tcd [i ].vtcd , nbytes );
362362 if (nbytes & (EDMA_V3_TCD_NBYTES_DMLOE | EDMA_V3_TCD_NBYTES_SMLOE ))
363363 nbytes = EDMA_V3_TCD_NBYTES_MLOFF_NBYTES (nbytes );
364- len += nbytes * le16_to_cpu ( edesc -> tcd [i ].vtcd -> biter );
364+ len += nbytes * fsl_edma_get_tcd_to_cpu ( fsl_chan , edesc -> tcd [i ].vtcd , biter );
365365 }
366366
367367 if (!in_progress )
@@ -374,16 +374,16 @@ static size_t fsl_edma_desc_residue(struct fsl_edma_chan *fsl_chan,
374374
375375 /* figure out the finished and calculate the residue */
376376 for (i = 0 ; i < fsl_chan -> edesc -> n_tcds ; i ++ ) {
377- nbytes = le32_to_cpu ( edesc -> tcd [i ].vtcd -> nbytes );
377+ nbytes = fsl_edma_get_tcd_to_cpu ( fsl_chan , edesc -> tcd [i ].vtcd , nbytes );
378378 if (nbytes & (EDMA_V3_TCD_NBYTES_DMLOE | EDMA_V3_TCD_NBYTES_SMLOE ))
379379 nbytes = EDMA_V3_TCD_NBYTES_MLOFF_NBYTES (nbytes );
380380
381- size = nbytes * le16_to_cpu ( edesc -> tcd [i ].vtcd -> biter );
381+ size = nbytes * fsl_edma_get_tcd_to_cpu ( fsl_chan , edesc -> tcd [i ].vtcd , biter );
382382
383383 if (dir == DMA_MEM_TO_DEV )
384- dma_addr = le32_to_cpu ( edesc -> tcd [i ].vtcd -> saddr );
384+ dma_addr = fsl_edma_get_tcd_to_cpu ( fsl_chan , edesc -> tcd [i ].vtcd , saddr );
385385 else
386- dma_addr = le32_to_cpu ( edesc -> tcd [i ].vtcd -> daddr );
386+ dma_addr = fsl_edma_get_tcd_to_cpu ( fsl_chan , edesc -> tcd [i ].vtcd , daddr );
387387
388388 len -= size ;
389389 if (cur_addr >= dma_addr && cur_addr < dma_addr + size ) {
@@ -439,26 +439,26 @@ static void fsl_edma_set_tcd_regs(struct fsl_edma_chan *fsl_chan,
439439 */
440440 edma_write_tcdreg (fsl_chan , 0 , csr );
441441
442- edma_write_tcdreg (fsl_chan , tcd -> saddr , saddr );
443- edma_write_tcdreg (fsl_chan , tcd -> daddr , daddr );
442+ edma_cp_tcd_to_reg (fsl_chan , tcd , saddr );
443+ edma_cp_tcd_to_reg (fsl_chan , tcd , daddr );
444444
445- edma_write_tcdreg (fsl_chan , tcd -> attr , attr );
446- edma_write_tcdreg (fsl_chan , tcd -> soff , soff );
445+ edma_cp_tcd_to_reg (fsl_chan , tcd , attr );
446+ edma_cp_tcd_to_reg (fsl_chan , tcd , soff );
447447
448- edma_write_tcdreg (fsl_chan , tcd -> nbytes , nbytes );
449- edma_write_tcdreg (fsl_chan , tcd -> slast , slast );
448+ edma_cp_tcd_to_reg (fsl_chan , tcd , nbytes );
449+ edma_cp_tcd_to_reg (fsl_chan , tcd , slast );
450450
451- edma_write_tcdreg (fsl_chan , tcd -> citer , citer );
452- edma_write_tcdreg (fsl_chan , tcd -> biter , biter );
453- edma_write_tcdreg (fsl_chan , tcd -> doff , doff );
451+ edma_cp_tcd_to_reg (fsl_chan , tcd , citer );
452+ edma_cp_tcd_to_reg (fsl_chan , tcd , biter );
453+ edma_cp_tcd_to_reg (fsl_chan , tcd , doff );
454454
455- edma_write_tcdreg (fsl_chan , tcd -> dlast_sga , dlast_sga );
455+ edma_cp_tcd_to_reg (fsl_chan , tcd , dlast_sga );
456456
457- csr = le16_to_cpu ( tcd -> csr );
457+ csr = fsl_edma_get_tcd_to_cpu ( fsl_chan , tcd , csr );
458458
459459 if (fsl_chan -> is_sw ) {
460460 csr |= EDMA_TCD_CSR_START ;
461- tcd -> csr = cpu_to_le16 ( csr );
461+ fsl_edma_set_tcd_to_le ( fsl_chan , tcd , csr , csr );
462462 }
463463
464464 /*
@@ -473,7 +473,7 @@ static void fsl_edma_set_tcd_regs(struct fsl_edma_chan *fsl_chan,
473473 edma_writel_chreg (fsl_chan , edma_readl_chreg (fsl_chan , ch_csr ), ch_csr );
474474
475475
476- edma_write_tcdreg (fsl_chan , tcd -> csr , csr );
476+ edma_cp_tcd_to_reg (fsl_chan , tcd , csr );
477477}
478478
479479static inline
@@ -493,12 +493,12 @@ void fsl_edma_fill_tcd(struct fsl_edma_chan *fsl_chan,
493493 * So we put the value in little endian in memory, waiting
494494 * for fsl_edma_set_tcd_regs doing the swap.
495495 */
496- tcd -> saddr = cpu_to_le32 ( src );
497- tcd -> daddr = cpu_to_le32 ( dst );
496+ fsl_edma_set_tcd_to_le ( fsl_chan , tcd , src , saddr );
497+ fsl_edma_set_tcd_to_le ( fsl_chan , tcd , dst , daddr );
498498
499- tcd -> attr = cpu_to_le16 ( attr );
499+ fsl_edma_set_tcd_to_le ( fsl_chan , tcd , attr , attr );
500500
501- tcd -> soff = cpu_to_le16 ( soff );
501+ fsl_edma_set_tcd_to_le ( fsl_chan , tcd , soff , soff );
502502
503503 if (fsl_chan -> is_multi_fifo ) {
504504 /* set mloff to support multiple fifo */
@@ -515,15 +515,16 @@ void fsl_edma_fill_tcd(struct fsl_edma_chan *fsl_chan,
515515 }
516516 }
517517
518- tcd -> nbytes = cpu_to_le32 ( nbytes );
519- tcd -> slast = cpu_to_le32 ( slast );
518+ fsl_edma_set_tcd_to_le ( fsl_chan , tcd , nbytes , nbytes );
519+ fsl_edma_set_tcd_to_le ( fsl_chan , tcd , slast , slast );
520520
521- tcd -> citer = cpu_to_le16 ( EDMA_TCD_CITER_CITER (citer ));
522- tcd -> doff = cpu_to_le16 ( doff );
521+ fsl_edma_set_tcd_to_le ( fsl_chan , tcd , EDMA_TCD_CITER_CITER (citer ), citer );
522+ fsl_edma_set_tcd_to_le ( fsl_chan , tcd , doff , doff );
523523
524- tcd -> dlast_sga = cpu_to_le32 (dlast_sga );
524+ fsl_edma_set_tcd_to_le (fsl_chan , tcd , dlast_sga , dlast_sga );
525+
526+ fsl_edma_set_tcd_to_le (fsl_chan , tcd , EDMA_TCD_BITER_BITER (biter ), biter );
525527
526- tcd -> biter = cpu_to_le16 (EDMA_TCD_BITER_BITER (biter ));
527528 if (major_int )
528529 csr |= EDMA_TCD_CSR_INT_MAJOR ;
529530
@@ -539,7 +540,7 @@ void fsl_edma_fill_tcd(struct fsl_edma_chan *fsl_chan,
539540 if (fsl_chan -> is_sw )
540541 csr |= EDMA_TCD_CSR_START ;
541542
542- tcd -> csr = cpu_to_le16 ( csr );
543+ fsl_edma_set_tcd_to_le ( fsl_chan , tcd , csr , csr );
543544}
544545
545546static struct fsl_edma_desc * fsl_edma_alloc_desc (struct fsl_edma_chan * fsl_chan ,
0 commit comments