⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dmadcr.s

📁 WINDRIVER SBC405 BSP
💻 S
📖 第 1 页 / 共 2 页
字号:
/* dmaDcr.s - IBM DMA controller DCR access assembly routines *//*******************************************************************************   This source and object code has been made available to you by IBM on an   AS-IS basis.   IT IS PROVIDED WITHOUT WARRANTY OF ANY KIND, INCLUDING THE WARRANTIES OF   MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE OR OF NONINFRINGEMENT   OF THIRD PARTY RIGHTS.  IN NO EVENT SHALL IBM OR ITS LICENSORS BE LIABLE   FOR INCIDENTAL, CONSEQUENTIAL OR PUNITIVE DAMAGES.  IBM'S OR ITS LICENSOR'S   DAMAGES FOR ANY CAUSE OF ACTION, WHETHER IN CONTRACT OR IN TORT, AT LAW OR   AT EQUITY, SHALL BE LIMITED TO A MAXIMUM OF $1,000 PER LICENSE.  No license   under IBM patents or patent applications is to be implied by the copyright   license.   Any user of this software should understand that neither IBM nor its   licensors will be responsible for any consequences resulting from the use   of this software.   Any person who transfers this source code or any derivative work must   include the IBM copyright notice, this paragraph, and the preceding two   paragraphs in the transferred software.   Any person who transfers this object code or any derivative work must   include the IBM copyright notice in the transferred software.   COPYRIGHT   I B M   CORPORATION 2000   LICENSED MATERIAL  -  PROGRAM PROPERTY OF  I B MNOMANUAL*******************************************************************************//*modification history--------------------01d,30nov01,kab  Update for T2.201c,19nov01,pch  cleanup01b,08may01,pch  Add assembler abstractions (FUNC_EXPORT, FUNC_BEGIN, etc.)01a,26may00,mcg  created*//*DESCRIPTIONThis module contains chip-dependent routines written in assembly language.*/#define _ASMLANGUAGE        /* globals */        FUNC_EXPORT(sysDcrDmacr0Get)        FUNC_EXPORT(sysDcrDmacr0Set)        FUNC_EXPORT(sysDcrDmacr1Get)        FUNC_EXPORT(sysDcrDmacr1Set)        FUNC_EXPORT(sysDcrDmacr2Get)        FUNC_EXPORT(sysDcrDmacr2Set)        FUNC_EXPORT(sysDcrDmacr3Get)        FUNC_EXPORT(sysDcrDmacr3Set)        FUNC_EXPORT(sysDcrDmact0Get)        FUNC_EXPORT(sysDcrDmact0Set)        FUNC_EXPORT(sysDcrDmact1Get)        FUNC_EXPORT(sysDcrDmact1Set)        FUNC_EXPORT(sysDcrDmact2Get)        FUNC_EXPORT(sysDcrDmact2Set)        FUNC_EXPORT(sysDcrDmact3Get)        FUNC_EXPORT(sysDcrDmact3Set)        FUNC_EXPORT(sysDcrDmada0Get)        FUNC_EXPORT(sysDcrDmada0Set)        FUNC_EXPORT(sysDcrDmada1Get)        FUNC_EXPORT(sysDcrDmada1Set)        FUNC_EXPORT(sysDcrDmada2Get)        FUNC_EXPORT(sysDcrDmada2Set)        FUNC_EXPORT(sysDcrDmada3Get)        FUNC_EXPORT(sysDcrDmada3Set)        FUNC_EXPORT(sysDcrDmasa0Get)        FUNC_EXPORT(sysDcrDmasa0Set)        FUNC_EXPORT(sysDcrDmasa1Get)        FUNC_EXPORT(sysDcrDmasa1Set)        FUNC_EXPORT(sysDcrDmasa2Get)        FUNC_EXPORT(sysDcrDmasa2Set)        FUNC_EXPORT(sysDcrDmasa3Get)        FUNC_EXPORT(sysDcrDmasa3Set)        FUNC_EXPORT(sysDcrDmasg0Get)        FUNC_EXPORT(sysDcrDmasg0Set)        FUNC_EXPORT(sysDcrDmasg1Get)        FUNC_EXPORT(sysDcrDmasg1Set)        FUNC_EXPORT(sysDcrDmasg2Get)        FUNC_EXPORT(sysDcrDmasg2Set)        FUNC_EXPORT(sysDcrDmasg3Get)        FUNC_EXPORT(sysDcrDmasg3Set)        FUNC_EXPORT(sysDcrDmasrGet)        FUNC_EXPORT(sysDcrDmasrSet)        FUNC_EXPORT(sysDcrDmasgcGet)        FUNC_EXPORT(sysDcrDmasgcSet)        FUNC_EXPORT(sysDcrDmaslpGet)        FUNC_EXPORT(sysDcrDmaslpSet)        FUNC_EXPORT(sysDcrDmapolGet)        FUNC_EXPORT(sysDcrDmapolSet)	_WRS_TEXT_SEG_START/********************************************************************************* sysDcrDmacr0Get - get the contents of DMA channel 0 config register** This routine reads and returns the contents of the DMA channel 0 configuration* register.** RETURNS: N/A* UINT32 sysDcrDmacr0Get (void)* NOMANUAL*/FUNC_BEGIN(sysDcrDmacr0Get)        mfdcr   r3, DMA_CR0#if defined (PPC405GP_REVB) || defined (PPC405GP_REVC)   /* revB/C errata # 8 */        nop        nop        nop#endif        blrFUNC_END(sysDcrDmacr0Get)	/********************************************************************************* sysDcrDmacr0Set - set the contents of DMA channel 0 configuration register** This routine writes the contents of the DMA channel 0 configuration register** RETURNS: N/A* void sysDcrDmacr0Set (UINT32)* NOMANUAL*/FUNC_BEGIN(sysDcrDmacr0Set)        mtdcr   DMA_CR0, r3#if defined (PPC405GP_REVB) || defined (PPC405GP_REVC)   /* revB/C errata # 8 */        nop        nop        nop#endif        blrFUNC_END(sysDcrDmacr0Set)	/********************************************************************************* sysDcrDmacr1Get - get the contents of DMA channel 1 config register** This routine reads and returns the contents of the DMA channel 1 configuration* register.** RETURNS: N/A* UINT32 sysDcrDmacr1Get (void)* NOMANUAL*/FUNC_BEGIN(sysDcrDmacr1Get)        mfdcr   r3, DMA_CR1#if defined (PPC405GP_REVB) || defined (PPC405GP_REVC)   /* revB/C errata # 8 */        nop        nop        nop#endif        blrFUNC_END(sysDcrDmacr1Get)	/********************************************************************************* sysDcrDmacr1Set - set the contents of DMA channel 1 configuration register** This routine writes the contents of the DMA channel 1 configuration register** RETURNS: N/A* void sysDcrDmacr1Set (UINT32)* NOMANUAL*/FUNC_BEGIN(sysDcrDmacr1Set)        mtdcr   DMA_CR1, r3#if defined (PPC405GP_REVB) || defined (PPC405GP_REVC)   /* revB/C errata # 8 */        nop        nop        nop#endif        blrFUNC_END(sysDcrDmacr1Set)	/********************************************************************************* sysDcrDmacr2Get - get the contents of DMA channel 2 config register** This routine reads and returns the contents of the DMA channel 2 configuration* register.** RETURNS: N/A* UINT32 sysDcrDmacr2Get (void)* NOMANUAL*/FUNC_BEGIN(sysDcrDmacr2Get)        mfdcr   r3, DMA_CR2#if defined (PPC405GP_REVB) || defined (PPC405GP_REVC)   /* revB/C errata # 8 */        nop        nop        nop#endif        blrFUNC_END(sysDcrDmacr2Get)	/********************************************************************************* sysDcrDmacr2Set - set the contents of DMA channel 2 configuration register** This routine writes the contents of the DMA channel 2 configuration register** RETURNS: N/A* void sysDcrDmacr2Set (UINT32)* NOMANUAL*/FUNC_BEGIN(sysDcrDmacr2Set)        mtdcr   DMA_CR2, r3#if defined (PPC405GP_REVB) || defined (PPC405GP_REVC)   /* revB/C errata # 8 */        nop        nop        nop#endif        blrFUNC_END(sysDcrDmacr2Set)	/********************************************************************************* sysDcrDmacr3Get - get the contents of DMA channel 3 config register** This routine reads and returns the contents of the DMA channel 3 configuration* register.** RETURNS: N/A* UINT32 sysDcrDmacr3Get (void)* NOMANUAL*/FUNC_BEGIN(sysDcrDmacr3Get)        mfdcr   r3, DMA_CR3#if defined (PPC405GP_REVB) || defined (PPC405GP_REVC)   /* revB/C errata # 8 */        nop        nop        nop#endif        blrFUNC_END(sysDcrDmacr3Get)	/********************************************************************************* sysDcrDmacr3Set - set the contents of DMA channel 3 configuration register** This routine writes the contents of the DMA channel 3 configuration register** RETURNS: N/A* void sysDcrDmacr3Set (UINT32)* NOMANUAL*/FUNC_BEGIN(sysDcrDmacr3Set)        mtdcr   DMA_CR3, r3#if defined (PPC405GP_REVB) || defined (PPC405GP_REVC)   /* revB/C errata # 8 */        nop        nop        nop#endif        blrFUNC_END(sysDcrDmacr3Set)	/********************************************************************************* sysDcrDmact0Get - get the contents of DMA channel 0 count register** This routine reads and returns the contents of the DMA channel 0 count* register.** RETURNS: N/A* UINT32 sysDcrDmact0Get (void)* NOMANUAL*/FUNC_BEGIN(sysDcrDmact0Get)        mfdcr   r3, DMA_CT0#if defined (PPC405GP_REVB) || defined (PPC405GP_REVC)   /* revB/C errata # 8 */        nop        nop        nop#endif        blrFUNC_END(sysDcrDmact0Get)	/********************************************************************************* sysDcrDmact0Set - set the contents of DMA channel 0 count register** This routine writes the contents of the DMA channel 0 count register** RETURNS: N/A* void sysDcrDmact0Set (UINT32)* NOMANUAL*/FUNC_BEGIN(sysDcrDmact0Set)        mtdcr   DMA_CT0, r3#if defined (PPC405GP_REVB) || defined (PPC405GP_REVC)   /* revB/C errata # 8 */        nop        nop        nop#endif        blrFUNC_END(sysDcrDmact0Set)	/********************************************************************************* sysDcrDmact1Get - get the contents of DMA channel 1 count register** This routine reads and returns the contents of the DMA channel 1 count* register.** RETURNS: N/A* UINT32 sysDcrDmact1Get (void)* NOMANUAL*/FUNC_BEGIN(sysDcrDmact1Get)        mfdcr   r3, DMA_CT1#if defined (PPC405GP_REVB) || defined (PPC405GP_REVC)   /* revB/C errata # 8 */        nop        nop        nop#endif        blrFUNC_END(sysDcrDmact1Get)	/********************************************************************************* sysDcrDmact1Set - set the contents of DMA channel 1 count register** This routine writes the contents of the DMA channel 1 count register** RETURNS: N/A* void sysDcrDmact1Set (UINT32)* NOMANUAL*/FUNC_BEGIN(sysDcrDmact1Set)        mtdcr   DMA_CT1, r3#if defined (PPC405GP_REVB) || defined (PPC405GP_REVC)   /* revB/C errata # 8 */        nop        nop        nop#endif        blrFUNC_END(sysDcrDmact1Set)	/********************************************************************************* sysDcrDmact2Get - get the contents of DMA channel 2 count register** This routine reads and returns the contents of the DMA channel 2 count* register.** RETURNS: N/A* UINT32 sysDcrDmact2Get (void)* NOMANUAL*/FUNC_BEGIN(sysDcrDmact2Get)        mfdcr   r3, DMA_CT2#if defined (PPC405GP_REVB) || defined (PPC405GP_REVC)   /* revB/C errata # 8 */        nop        nop        nop#endif        blrFUNC_END(sysDcrDmact2Get)	/********************************************************************************* sysDcrDmact2Set - set the contents of DMA channel 2 count register** This routine writes the contents of the DMA channel 2 count register** RETURNS: N/A* void sysDcrDmact2Set (UINT32)* NOMANUAL*/FUNC_BEGIN(sysDcrDmact2Set)        mtdcr   DMA_CT2, r3#if defined (PPC405GP_REVB) || defined (PPC405GP_REVC)   /* revB/C errata # 8 */        nop        nop        nop#endif        blrFUNC_END(sysDcrDmact2Set)	/********************************************************************************* sysDcrDmact3Get - get the contents of DMA channel 3 count register** This routine reads and returns the contents of the DMA channel 3 count* register.** RETURNS: N/A* UINT32 sysDcrDmact3Get (void)* NOMANUAL*/FUNC_BEGIN(sysDcrDmact3Get)        mfdcr   r3, DMA_CT3#if defined (PPC405GP_REVB) || defined (PPC405GP_REVC)   /* revB/C errata # 8 */        nop        nop        nop#endif        blrFUNC_END(sysDcrDmact3Get)	/********************************************************************************* sysDcrDmact3Set - set the contents of DMA channel 3 count register** This routine writes the contents of the DMA channel 3 count register** RETURNS: N/A* void sysDcrDmact3Set (UINT32)* NOMANUAL*/FUNC_BEGIN(sysDcrDmact3Set)        mtdcr   DMA_CT3, r3#if defined (PPC405GP_REVB) || defined (PPC405GP_REVC)   /* revB/C errata # 8 */        nop        nop        nop#endif        blrFUNC_END(sysDcrDmact3Set)	/********************************************************************************* sysDcrDmada0Get - get the contents of DMA channel 0 destination address*                   register** This routine reads and returns the contents of the DMA channel 0 destination* address register.** RETURNS: N/A* UINT32 sysDcrDmada0Get (void)* NOMANUAL*/FUNC_BEGIN(sysDcrDmada0Get)        mfdcr   r3, DMA_DA0#if defined (PPC405GP_REVB) || defined (PPC405GP_REVC)   /* revB/C errata # 8 */        nop        nop        nop#endif        blrFUNC_END(sysDcrDmada0Get)	/********************************************************************************* sysDcrDmada0Set - set the contents of DMA channel 0 destination address*                   register** This routine writes the contents of the DMA channel 0 destination address* register.** RETURNS: N/A* void sysDcrDmada0Set (UINT32)* NOMANUAL*/FUNC_BEGIN(sysDcrDmada0Set)        mtdcr   DMA_DA0, r3#if defined (PPC405GP_REVB) || defined (PPC405GP_REVC)   /* revB/C errata # 8 */        nop        nop        nop#endif        blrFUNC_END(sysDcrDmada0Set)	/********************************************************************************* sysDcrDmada1Get - get the contents of DMA channel 1 destination address*                   register** This routine reads and returns the contents of the DMA channel 1 destination* address register.** RETURNS: N/A* UINT32 sysDcrDmada1Get (void)* NOMANUAL*/FUNC_BEGIN(sysDcrDmada1Get)        mfdcr   r3, DMA_DA1#if defined (PPC405GP_REVB) || defined (PPC405GP_REVC)   /* revB/C errata # 8 */        nop        nop        nop#endif        blrFUNC_END(sysDcrDmada1Get)	/********************************************************************************* sysDcrDmada1Set - set the contents of DMA channel 1 destination address*                   register** This routine writes the contents of the DMA channel 1 destination address* register.** RETURNS: N/A* void sysDcrDmada1Set (UINT32)* NOMANUAL*/FUNC_BEGIN(sysDcrDmada1Set)        mtdcr   DMA_DA1, r3#if defined (PPC405GP_REVB) || defined (PPC405GP_REVC)   /* revB/C errata # 8 */        nop        nop        nop#endif        blrFUNC_END(sysDcrDmada1Set)	/********************************************************************************* sysDcrDmada2Get - get the contents of DMA channel 2 destination address*                   register** This routine reads and returns the contents of the DMA channel 2 destination* address register.** RETURNS: N/A* UINT32 sysDcrDmada2Get (void)* NOMANUAL*/FUNC_BEGIN(sysDcrDmada2Get)        mfdcr   r3, DMA_DA2#if defined (PPC405GP_REVB) || defined (PPC405GP_REVC)   /* revB/C errata # 8 */        nop        nop        nop#endif        blrFUNC_END(sysDcrDmada2Get)	/********************************************************************************* sysDcrDmada2Set - set the contents of DMA channel 2 destination address*                   register** This routine writes the contents of the DMA channel 2 destination address* register.** RETURNS: N/A* void sysDcrDmada2Set (UINT32)* NOMANUAL*/FUNC_BEGIN(sysDcrDmada2Set)        mtdcr   DMA_DA2, r3#if defined (PPC405GP_REVB) || defined (PPC405GP_REVC)   /* revB/C errata # 8 */        nop        nop        nop#endif        blrFUNC_END(sysDcrDmada2Set)	/********************************************************************************

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -