00001 /* 00002 * Copyright (c) 2010, Texas Instruments Incorporated 00003 * All rights reserved. 00004 * 00005 * Redistribution and use in source and binary forms, with or without 00006 * modification, are permitted provided that the following conditions 00007 * are met: 00008 * 00009 * * Redistributions of source code must retain the above copyright 00010 * notice, this list of conditions and the following disclaimer. 00011 * 00012 * * Redistributions in binary form must reproduce the above copyright 00013 * notice, this list of conditions and the following disclaimer in the 00014 * documentation and/or other materials provided with the distribution. 00015 * 00016 * * Neither the name of Texas Instruments Incorporated nor the names of 00017 * its contributors may be used to endorse or promote products derived 00018 * from this software without specific prior written permission. 00019 * 00020 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 00021 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, 00022 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 00023 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 00024 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 00025 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 00026 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; 00027 * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 00028 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 00029 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 00030 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 00031 * 00032 */ 00049 #ifndef ti_sdo_fc_ires_sdma_IRES_SDMA_ 00050 #define ti_sdo_fc_ires_sdma_IRES_SDMA_ 00051 00054 00055 00056 #ifdef __cplusplus 00057 extern "C" { 00058 #endif 00059 00060 #include <ti/xdais/ires.h> 00061 #include <ti/sdo/linuxutils/sdma/include/sdma.h> 00062 00066 #define IRES_SDMA_PROTOCOLNAME "ti.sdo.fc.ires.sdma" 00067 00071 #define SDMA_GTNAME "ti.sdo.fc.ires.sdma" 00072 00073 /* 00074 * Note, we wrap the PROTOCOLVERSION in an ifdef so the 00075 * resource managers and algs get this version data placed in their object 00076 * files. Apps, which include rman.h, will have this 'NOPROTOCOLREV' defined. 00077 */ 00078 #ifndef ti_sdo_fc_ires_NOPROTOCOLREV 00079 00083 static IRES_ProtocolRevision IRES_SDMA_PROTOCOLREVISION = {1,0,0}; 00084 00085 #endif 00086 00090 typedef struct IRES_SDMA_Obj *IRES_SDMA_Handle; 00091 00095 typedef struct IRES_SDMA_ProtocolArgs { 00096 00097 IRES_ProtocolArgs base; 00098 00099 } IRES_SDMA_ProtocolArgs; 00100 00106 typedef struct IRES_SDMA_Obj { 00107 00108 IRES_Obj ires; 00109 00110 SDMA_ChannelDescriptor * channel; 00111 /* Channel number that is granted to 00112 the requestor */ 00113 } IRES_SDMA_Obj; 00114 00115 /* 00116 * @brief SDMA Register Layout 00117 */ 00118 typedef struct IRES_SDMA_RegisterLayer { 00119 00120 unsigned int DMA4_CCR; 00121 unsigned int DMA4_CLNK_CTRL; 00122 unsigned int DMA4_CICR; 00123 unsigned int DMA4_CSR; 00124 unsigned int DMA4_CSDP; 00125 unsigned int DMA4_CEN; 00126 unsigned int DMA4_CFN; 00127 unsigned int DMA4_CSSA; 00128 unsigned int DMA4_CDSA; 00129 unsigned int DMA4_CSE; 00130 unsigned int DMA4_CSF; 00131 unsigned int DMA4_CDE; 00132 unsigned int DMA4_CDF; 00133 unsigned int DMA4_CSAC; 00134 unsigned int DMA4_CDAC; 00135 unsigned int DMA4_CCEN; 00136 unsigned int DMA4_CCFN; 00137 unsigned int DMA4_COLOR; 00138 } IRES_SDMA_RegisterLayer; 00139 00140 00141 /* 00142 * @brief Static Resource Properties 00143 */ 00144 typedef struct IRES_SDMA_Properties { 00145 00146 IRES_SDMA_RegisterLayer *globalRegs; 00147 00148 } IRES_SDMA_Properties; 00149 00150 #ifdef __cplusplus 00151 } 00152 #endif /* extern "C" */ 00153 00156 #endif /* ti_sdo_fc_ires_sdma_IRES_SDMA_ */ 00157 /* 00158 * @(#) ti.sdo.fc.ires.sdma; 1, 0, 0,132; 12-1-2010 17:25:22; /db/atree/library/trees/fc/fc-p01x/src/ xlibrary 00159 00160 */ 00161