📄 csl_dmaglobalaux.h
字号:
#ifndef _CSL_DMAGLOBALAUX_H#define _CSL_DMAGLOBALAUX_H#ifdef __cplusplusextern "C" {#endifstatic inlinevoid CSL_dmaChangeGlobalControlSetup ( CSL_DmaHandle hDma, CSL_DmaSetupGlobalControl *glbCtrlSetup){ hDma->gRegs->GCR = CSL_FMK(DMA_GCR_AUTOGATINGON, glbCtrlSetup->autogating) | CSL_FMK(DMA_GCR_FREE, glbCtrlSetup->free) | CSL_FMK(DMA_GCR_ROUNDROBINDISABLE, glbCtrlSetup->pChScheduling);}static inlinevoid CSL_dmaChangeCompatMode ( CSL_DmaHandle hDma, CSL_DmaOmapCompatMode omapCompatMode){ CSL_FINS(hDma->gRegs->GSCR,DMA_GSCR_OMAP31MAPPINGDISABLE,omapCompatMode);}static inlinevoid CSL_dmaGlobalReset ( CSL_DmaHandle hDma, CSL_DmaSwReset swReset){ CSL_FINS(hDma->gRegs->GRST,DMA_GRST_SWRESET,swReset); }static inlinevoid CSL_dmaGetGlobalSetup ( CSL_DmaHandle hDma, CSL_DmaSetupGlobal *globalSetup){ globalSetup->omapCompatMode = (CSL_DmaOmapCompatMode) CSL_FEXT(hDma->gRegs->GSCR,DMA_GSCR_OMAP31MAPPINGDISABLE); globalSetup->swReset = (CSL_DmaSwReset) CSL_FEXT(hDma->gRegs->GRST,DMA_GRST_SWRESET); /* Fall Through */}static inlinevoid CSL_dmaGetGlobalControlSetup ( CSL_DmaHandle hDma, CSL_DmaSetupGlobalControl *glbCtrlSetup){ Uint16 _dma_gcr; if (glbCtrlSetup != NULL) { _dma_gcr = hDma->gRegs->GCR; glbCtrlSetup->autogating = (CSL_DmaAutogating) CSL_FEXT(_dma_gcr,DMA_GCR_AUTOGATINGON); glbCtrlSetup->free = (CSL_DmaFree) CSL_FEXT(_dma_gcr,DMA_GCR_FREE); glbCtrlSetup->pChScheduling = (CSL_DmaPchScheduling) CSL_FEXT(_dma_gcr,DMA_GCR_ROUNDROBINDISABLE); }}static inlinevoid CSL_dmaGetPCHStatus ( CSL_DmaHandle hDma, CSL_DmaPchStatus *pchStatus){ pchStatus->memPch0 = CSL_FEXT(hDma->gRegs->PCHSRM0,DMA_PCHSRM0_PCHSRM0); pchStatus->memPch1 = CSL_FEXT(hDma->gRegs->PCHSRM1,DMA_PCHSRM1_PCHSRM1); pchStatus->lcdPch0 = CSL_FEXT(hDma->gRegs->PCHSRD0,DMA_PCHSRD0_PCHSRD0); pchStatus->periphPch0 = CSL_FEXT(hDma->gRegs->PCHSRP0,DMA_PCHSRP0_PCHSRP0);}static inlinevoid CSL_dmaGetGlobalId ( CSL_DmaHandle hDma, CSL_DmaGlobalId *globalId){ globalId->hwId = hDma->gRegs->HWID; globalId->pChPeriphId = hDma->gRegs->PCHPID; globalId->pChMem0Id = hDma->gRegs->PCHM0ID; globalId->pChMem1Id = hDma->gRegs->PCHM1ID; globalId->pChGraphicId = hDma->gRegs->PCHGID; globalId->pChLcdId = hDma->gRegs->PCHDID;}static inlinevoid CSL_dmaGetCapability ( CSL_DmaHandle hDma, CSL_DmaCapability *capability ){ Uint16 _dma_caps0u; Uint16 _dma_caps0l; Uint16 _dma_caps2; Uint16 _dma_caps3; Uint16 _dma_caps4; _dma_caps0u = hDma->gRegs->CAPS0U; capability->constFillCopy = (CSL_DmaConstFillCopy)CSL_FEXT(_dma_caps0u,DMA_CAPS0U_CONSTFILLCAP); capability->transparentBltCopy = (CSL_DmaTransparentBLTCopy) CSL_FEXT(_dma_caps0u,DMA_CAPS0U_TRANSBLTCAP); capability->overlapDetection = (CSL_DmaOverlapDetection) CSL_FEXT(_dma_caps0u,DMA_CAPS0U_OVERLAPDETECTCAP); capability->directionalBltCopy = (CSL_DmaDirectionalBLTCopy) CSL_FEXT(_dma_caps0u,DMA_CAPS0U_DIRECTIONALBLTCAP); _dma_caps0l = hDma->gRegs->CAPS0L; capability->subByteAdjustment = (CSL_DmaSubByteAdjustment) CSL_FEXT(_dma_caps0l,DMA_CAPS0L_SUBBYTEDESTCAP); capability->originCoordinateCalc = (CSL_DmaOriginCoordinateCalc) CSL_FEXT(_dma_caps0l,DMA_CAPS0L_ORIGINCOORDCAP); capability->bitColourExp = (CSL_Dma1BitColourExp) CSL_FEXT(hDma->gRegs->CAPS1L,DMA_CAPS1L_1BITPALLETIZEDCAP); _dma_caps2 = hDma->gRegs->CAPS2; capability->separateSrcDstIndex = (CSL_DmaSeparateSrcDstIndex) CSL_FEXT(_dma_caps2,DMA_CAPS2_SEPARATEINDEXCAP); capability->dstDblIndexAddr = (CSL_DmaDstDblIndexAddr) CSL_FEXT(_dma_caps2,DMA_CAPS2_DSTDBLINDEXCAP); capability->dstSnglIndexAddr = (CSL_DmaDstSnglIndexAddr) CSL_FEXT(_dma_caps2,DMA_CAPS2_DSTSNGLINDEXCAP); capability->dstPostIncAddr = (CSL_DmaDstPostIncAddr) CSL_FEXT(_dma_caps2,DMA_CAPS2_DSTPOSTINCCAP); capability->dstConstAddr = (CSL_DmaDstConstAddr) CSL_FEXT(_dma_caps2,DMA_CAPS2_DSTCONSTCAP); capability->srcDblIndexAddr = (CSL_DmaSrcDblIndexAddr) CSL_FEXT(_dma_caps2,DMA_CAPS2_SRCDBLINDEXCAP); capability->srcSnglIndexAddr = (CSL_DmaSrcSnglIndexAddr) CSL_FEXT(_dma_caps2,DMA_CAPS2_SRCSNGLINDEXCAP); capability->srcPostIncAddr = (CSL_DmaSrcPostIncAddr) CSL_FEXT(_dma_caps2,DMA_CAPS2_SRCPOSTINCCAP); capability->srcConstAddr = (CSL_DmaSrcConstAddr) CSL_FEXT(_dma_caps2,DMA_CAPS2_SRCCONSTCAP); _dma_caps3 = hDma->gRegs->CAPS3; capability->channelChaining = (CSL_DmaChannelChaining) CSL_FEXT(_dma_caps3,DMA_CAPS3_CHAININGCAP); capability->channelInterleave = (CSL_DmaChannelInterleave) CSL_FEXT(_dma_caps3,DMA_CAPS3_INTERLEAVECAP); capability->autoinitRepeat = (CSL_DmaAutoinitRepeat) CSL_FEXT(_dma_caps3,DMA_CAPS3_REPEATCAP); capability->autoinitEndProg = (CSL_DmaAutoinitEndProg) CSL_FEXT(_dma_caps3,DMA_CAPS3_ENDPROGCAP); capability->frameSync = (CSL_DmaFrameSync) CSL_FEXT(_dma_caps3,DMA_CAPS3_FRAMESYNCCAP); capability->elementSync = (CSL_DmaElementSync) CSL_FEXT(_dma_caps3,DMA_CAPS3_ELEMSYNCCAP); _dma_caps4 = hDma->gRegs->CAPS4; capability->syncTransferStatus = (CSL_DmaSyncTransferStatus) CSL_FEXT(_dma_caps4,DMA_CAPS4_SYNCSTATCAP); capability->blockInt = (CSL_DmaBlockInt) CSL_FEXT(_dma_caps4,DMA_CAPS4_BLOCKINTRCAP); capability->lastFrame = (CSL_DmaLastFrame) CSL_FEXT(_dma_caps4,DMA_CAPS4_LASTINTRCAP); capability->frame = (CSL_DmaFrame) CSL_FEXT(_dma_caps4,DMA_CAPS4_FRAMEINTRCAP); capability->halfFrame = (CSL_DmaHalfFrame) CSL_FEXT(_dma_caps4,DMA_CAPS4_HALFINTRCAP); capability->eventDrop = (CSL_DmaEventDrop) CSL_FEXT(_dma_caps4,DMA_CAPS4_DROPINTRCAP); capability->timeout = (CSL_DmaTimeout) CSL_FEXT(_dma_caps4,DMA_CAPS4_TOUTINTRCAP);}#ifdef __cplusplus}#endif#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -