Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support DMA 16 bit for Memory to peripheral #43

Merged
merged 2 commits into from
Sep 6, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions system/CMSIS/driver/lpc17xx_gpdma.c
Original file line number Diff line number Diff line change
Expand Up @@ -284,9 +284,9 @@ Status GPDMA_Setup(GPDMA_Channel_CFG_Type *GPDMAChannelConfig)
= GPDMA_DMACCxControl_TransferSize((uint32_t)GPDMAChannelConfig->TransferSize) \
| GPDMA_DMACCxControl_SBSize((uint32_t)GPDMA_LUTPerBurst[GPDMAChannelConfig->DstConn]) \
| GPDMA_DMACCxControl_DBSize((uint32_t)GPDMA_LUTPerBurst[GPDMAChannelConfig->DstConn]) \
| GPDMA_DMACCxControl_SWidth((uint32_t)GPDMA_LUTPerWid[GPDMAChannelConfig->DstConn]) \
| GPDMA_DMACCxControl_DWidth((uint32_t)GPDMA_LUTPerWid[GPDMAChannelConfig->DstConn]) \
| GPDMA_DMACCxControl_SI \
| GPDMA_DMACCxControl_SWidth(GPDMAChannelConfig->TransferWidth > 0 ? GPDMAChannelConfig->TransferWidth : (uint32_t)GPDMA_LUTPerWid[GPDMAChannelConfig->DstConn]) \
| GPDMA_DMACCxControl_DWidth(GPDMAChannelConfig->TransferWidth > 0 ? GPDMAChannelConfig->TransferWidth : (uint32_t)GPDMA_LUTPerWid[GPDMAChannelConfig->DstConn]) \
| GPDMAChannelConfig->MemoryIncrease \
| GPDMA_DMACCxControl_I;
break;
// Peripheral to memory
Expand Down
6 changes: 6 additions & 0 deletions system/CMSIS/include/lpc17xx_gpdma.h
Original file line number Diff line number Diff line change
Expand Up @@ -381,6 +381,12 @@ typedef struct {
uint32_t DMALLI; /**< Linker List Item structure data address
if there's no Linker List, set as '0'
*/

uint32_t MemoryIncrease; /** Setup Memory Increase for GPDMA_TRANSFERTYPE_M2P
GPDMA_DMACCxControl_SI < Source increment
GPDMA_DMACCxControl_DI < Destination increment
Or both, or None
*/
} GPDMA_Channel_CFG_Type;

/**
Expand Down