00001 /* 00002 * Copyright (c) 2011, 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 VICPSYNC_ 00050 #define VICPSYNC_ 00051 00054 00055 00056 #ifdef __cplusplus 00057 extern "C" { 00058 #endif 00059 00060 #include <ti/xdais/ialg.h> 00061 #include <ti/sdo/fc/ires/vicp/ires_vicp2.h> 00062 00063 #define VICPSYNC_GTNAME "ti.sdo.fc.vicpsync" 00064 00069 typedef struct VICPSYNC_Params { 00070 int size; 00071 } VICPSYNC_Params; 00072 00076 typedef enum VICPSYNC_ResourceType { 00077 VICPSYNC_IMX0, 00078 VICPSYNC_IMX1, 00079 VICPSYNC_MJCP, 00080 VICPSYNC_NSF 00081 } VICPSYNC_ResourceType; 00082 00086 typedef enum VICPSYNC_InterruptLine { 00087 VICPSYNC_FIXED, 00088 VICPSYNC_FLEXIBLE 00089 } VICPSYNC_InterruptLine; 00090 00094 typedef enum VICPSYNC_InterruptType { 00095 VICPSYNC_IRQ, 00096 VICPSYNC_FIQ 00097 } VICPSYNC_InterruptType; 00098 00099 typedef enum VICPSYNC_Status { 00100 VICPSYNC_OK, 00101 VICPSYNC_EFAIL, 00102 VICPSYNC_ENORESOURCE 00104 } VICPSYNC_Status; 00105 00109 extern VICPSYNC_Params VICPSYNC_PARAMS; 00110 00111 /*===========================================================================*/ 00131 /*===========================================================================*/ 00132 VICPSYNC_Status VICPSYNC_start(IALG_Handle handle, VICPSYNC_ResourceType res, 00133 VICPSYNC_InterruptType intType, VICPSYNC_InterruptLine intLine, 00134 IRES_VICP2_Handle vicpHandle); 00135 00136 /*===========================================================================*/ 00152 /*===========================================================================*/ 00153 VICPSYNC_Status VICPSYNC_wait (IRES_VICP2_Handle vicpHandle, 00154 VICPSYNC_ResourceType res); 00155 00156 /*===========================================================================*/ 00172 /*===========================================================================*/ 00173 Bool VICPSYNC_done (IRES_VICP2_Handle vicpHandle, VICPSYNC_ResourceType res); 00174 00175 /*===========================================================================*/ 00188 VICPSYNC_Status VICPSYNC_unregister(IRES_VICP2_Handle vicpHandle, 00189 VICPSYNC_ResourceType res); 00190 00191 #ifdef __cplusplus 00192 } 00193 #endif /* extern "C" */ 00194 00195 00198 #endif 00199 /* 00200 * @(#) ti.sdo.fc.vicpsync; 1, 0, 0,211; 3-1-2011 19:00:45; /db/atree/library/trees/fc/fc-n29x/src/ xlibrary 00201 00202 */ 00203