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

📄 visiontmdasmxscale.c

📁 IXP425的BSP代码
💻 C
字号:
/* visionTmdAsmXscale.c - Wind River visionTMD Interupt routines *//* Copyright 1988-2002 Wind River Systems Inc. *//*modification history--------------------01d,26apr01,g_h  Fix syntax error from LONG to ULONG01c,21dec01,g_h  Rename to visionTmdAsmXscale.c01b,30nov01,g_h  Cleaning for T2.201a,19nov01,g_h  Adapted from visionTMDAsmPPC.c ver 01e*//*DESCRIPTIONThese low-level IO interface routines which signal the emulationproduct that we desire to initialize/initiate/complete IO.*/#include "vxWorks.h"#include "drv/wdb/vision/visionTmdDrv.h"/* externals */IMPORT unsigned long txDesc; /* Duplicate location of the XMIT space */IMPORT unsigned long rxDesc; /* Duplicate location of the RECV space *//* forward declarations */LOCAL void tmdXSCALESignalSubDescReady (ULONG lrxDesc, ULONG ltxDesc);#if (CPU == XSCALE)/***************************************************************************** tmdXSCALESignalDescReady - inform emulator the location of Rx/Tx *                            descriptors** This routine inform emulator the location of Rx/Tx descriptors.** RETURNS: N/A*/void tmdXSCALESignalDescReady    (    void    )    {    tmdXSCALESignalSubDescReady (rxDesc, txDesc);    }#endif /* (CPU == XSCALE) */#if (CPU == XSCALE)/***************************************************************************** tmdXSCALEignalTxReady - inform emulator the location of Rx/Tx *                         descriptors.** This routine inform emulator the location of Rx/Tx descriptors.** RETURNS: N/A*/         void tmdXSCALESignalTxReady    (    void    )    {    _WRS_ASM("txBdmBgnd:                     ");    _WRS_ASM("      .long 0xE1200070         ");    }#endif /* (CPU == XSCALE) */#if (CPU == XSCALE)/***************************************************************************** tmdXSCALESignalRxReady - inform emulator the location of Rx/Tx *                          descriptors.** This routine inform emulator the location of Rx/Tx descriptors.** RETURNS: N/A*/                                                                              void tmdXSCALESignalRxReady    (    void    )                                                    {    return;    }#endif /* (CPU == XSCALE) */#if (CPU == XSCALE)/***************************************************************************** tmdXSCALESignalSubDescReady - inform emulator the location of Rx/Tx *                                 descriptors.** This routine inform emulator the location of Rx/Tx descriptors.** RETURNS: N/A*/                                                                              LOCAL void tmdXSCALESignalSubDescReady    (    ULONG lrxDesc,     ULONG ltxDesc    )    {    /* Setup rxDesc Ptr into R2 */    _WRS_ASM("	    MOV   r2,r0              ");	    /* Setup txDesc Ptr into R1 */    _WRS_ASM("	    MOV   r1,r1              ");    /* Set R0 to init command (0x5c5c5c5c) */    _WRS_ASM("      MOV   r0,#0x5c           ");    _WRS_ASM("      ADD   r0,r0,r0,lsl #0x8  ");    _WRS_ASM("      ADD   r0,r0,r0,lsl #0x10 ");    /* Setup R3 to point to Tx function */    _WRS_ASM("      LDR   r3,=txBdmBgnd;     ");    /* Notify emulator via software breakpoint */    _WRS_ASM("      .long 0xE1200070         ");     _WRS_ASM("      MOV   pc, lr             ");    _WRS_ASM("      .ltorg                   ");    }#endif /* (CPU == XSCALE) */

⌨️ 快捷键说明

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