vicp.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2009, 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  */
00033 
00053 #ifndef ti_sdo_linuxutils_vicp_interface_vicp_
00054 #define ti_sdo_linuxutils_vicp_interface_vicp_
00055 
00056 #if defined (__cplusplus)
00057 extern "C" {
00058 #endif
00059 
00062 
00063 #define VICP_VERSION 0x01000000
00064 
00065 
00069 typedef enum VICP_Status {
00070     VICP_OK = 0,        
00071     VICP_EFAIL,         
00072     VICP_ENOCHANNEL,    
00073     VICP_ENOINIT        
00074 } VICP_Status;
00075 
00079 typedef enum VICP_ResourceType {
00080     VICP_IMX0,
00081     VICP_IMX1,
00082     VICP_MJCP,
00083     VICP_NSF,
00084     VICP_HDVICP0,
00085     VICP_HDVICP1,
00086 } VICP_ResourceType;
00087 
00098 typedef enum VICP_InterruptLine {
00099     VICP_FIXED,
00100     VICP_FLEXIBLE
00101 } VICP_InterruptLine;
00102 
00106 typedef enum VICP_InterruptType {
00107     VICP_IRQ,
00108     VICP_FIQ
00109 } VICP_InterruptType;
00110 
00114 int VICP_init(void);
00115 
00119 int VICP_exit(void);
00120 
00124 VICP_Status VICP_register(VICP_ResourceType resource,
00125                           VICP_InterruptLine intrLine,
00126                           VICP_InterruptType intrType);
00127 
00131 VICP_Status VICP_unregister(VICP_ResourceType resource);
00132 
00137 VICP_Status VICP_wait(VICP_ResourceType resource);
00138 
00143 VICP_Status VICP_done(VICP_ResourceType resource, int *done);
00144 
00147 #if defined (__cplusplus)
00148 }
00149 #endif
00150 
00151 #endif
00152 /*
00153  *  @(#) ti.sdo.linuxutils.vicp; 1, 0, 0,55; 6-11-2009 18:00:28; /db/atree/library/trees/linuxutils/linuxutils-e02x/src/
00154  */
00155 

Copyright 2009, Texas Instruments Incorporated