1c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev/* 2c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * Copyright (c) 2010, Texas Instruments Incorporated 3c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * All rights reserved. 4c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * 5c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * Redistribution and use in source and binary forms, with or without 6c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * modification, are permitted provided that the following conditions 7c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * are met: 8c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * 9c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * * Redistributions of source code must retain the above copyright 10c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * notice, this list of conditions and the following disclaimer. 11c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * 12c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * * Redistributions in binary form must reproduce the above copyright 13c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * notice, this list of conditions and the following disclaimer in the 14c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * documentation and/or other materials provided with the distribution. 15c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * 16c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * * Neither the name of Texas Instruments Incorporated nor the names of 17c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * its contributors may be used to endorse or promote products derived 18c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * from this software without specific prior written permission. 19c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * 20c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 21c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, 22c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 23c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 24c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 25c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 26c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; 27c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 28c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 29c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 30c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 31c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev */ 32c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev 33c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev/* 34c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev* @file timm_osal_types.h 35c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev* The timm_osal_types header file defines the primative osal type definitions. 36c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev* @path 37c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev* 38c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev*/ 39c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev/* -------------------------------------------------------------------------- */ 40c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev/* ========================================================================= 41c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev *! 42c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev *! Revision History 43c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev *! =================================== 44c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev *! 0.1: Created the first draft version, ksrini@ti.com 45c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev * ========================================================================= */ 46c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev 47c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#ifndef _TIMM_OSAL_TYPES_H_ 48c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#define _TIMM_OSAL_TYPES_H_ 49c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev 50c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#ifdef __cplusplus 51c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchevextern "C" 52c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev{ 53c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#endif /* __cplusplus */ 54c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev 55c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev 56c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev 57c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#ifdef __KERNEL__ 58c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#include <linux/types.h> 59c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#else 60c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#include <stdint.h> 61c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#endif 62c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev 63c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev typedef int8_t TIMM_OSAL_S8; /*INT8 */ 64c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev typedef int16_t TIMM_OSAL_S16; /*INT16 */ 65c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev typedef int32_t TIMM_OSAL_S32; /*INT32 */ 66c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev 67c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#define TIMM_OSAL_INT8_MIN 0xFF 68c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#define TIMM_OSAL_INT8_MAX 0x7F 69c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev 70c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#define TIMM_OSAL_INT16_MIN 0xFFFF 71c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#define TIMM_OSAL_INT16_MAX 0x7FFF 72c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev 73c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#define TIMM_OSAL_INT32_MIN 0xFFFFFFFF 74c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#define TIMM_OSAL_INT32_MAX 0x7FFFFFFF 75c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev 76c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev typedef uint8_t TIMM_OSAL_U8; /*UINT8 */ 77c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev typedef uint16_t TIMM_OSAL_U16; /*UINT16 */ 78c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev typedef uint32_t TIMM_OSAL_U32; /*UINT32 */ 79c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev 80c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#define TIMM_OSAL_UINT8_MIN 0 81c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#define TIMM_OSAL_UINT8_MAX 0xFF 82c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev 83c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#define TIMM_OSAL_UINT16_MIN 0 84c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#define TIMM_OSAL_UINT16_MAX 0xFFFF 85c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev 86c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#define TIMM_OSAL_UINT32_MIN 0 87c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#define TIMM_OSAL_UINT32_MAX 0xFFFFFFFF 88c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev 89c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev 90c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev typedef char TIMM_OSAL_CHAR; 91c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev /*CHAR*/ typedef void *TIMM_OSAL_HANDLE; 92c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev typedef void *TIMM_OSAL_PTR; 93c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev 94c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev typedef enum TIMM_OSAL_BOOL 95c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev { 96c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev TIMM_OSAL_FALSE = 0, 97c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev TIMM_OSAL_TRUE = !TIMM_OSAL_FALSE, 98c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev TIMM_OSAL_BOOL_MAX = 0x7FFFFFFF 99c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev } TIMM_OSAL_BOOL; 100c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev 101c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#define TIMM_OSAL_SUSPEND 0xFFFFFFFFUL 102c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#define TIMM_OSAL_NO_SUSPEND 0x0 103c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#define TIMM_OSAL_TIMED_OUT 0x7FFFFFFFUL 104c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev 105c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev 106c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#define SUCCESS 0 107c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#define NO_SUCCESS -1 108c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev 109c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#define ERROR 1 110c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev/* 111c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#define TRUE 0 112c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#define FALSE 1 113c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev*/ 114c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#define URGENT_MESSAGE 2 115c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#define NORMAL_MESSAGE 1 116c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev 117c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev 118c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#define TIMM_OSAL_NULL 0 119c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev 120c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#ifdef __cplusplus 121c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev} 122c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#endif /* __cplusplus */ 123c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev 124c322989ae6ff6769490828de1b5eda12b749cce9Iliyan Malchev#endif /* _TIMM_OSAL_TYPES_H_ */ 125