sktimer.h
上传用户:lgb322
上传日期:2013-02-24
资源大小:30529k
文件大小:3k
源码类别:

嵌入式Linux

开发平台:

Unix_Linux

  1. /******************************************************************************
  2.  *
  3.  * Name: sktimer.h
  4.  * Project: Genesis, PCI Gigabit Ethernet Adapter
  5.  * Version: $Revision: 1.8 $
  6.  * Date: $Date: 1998/09/08 08:48:02 $
  7.  * Purpose: Defines for the timer functions
  8.  *
  9.  ******************************************************************************/
  10. /******************************************************************************
  11.  *
  12.  * (C)Copyright 1989-1998 SysKonnect,
  13.  * a business unit of Schneider & Koch & Co. Datensysteme GmbH.
  14.  * All Rights Reserved
  15.  *
  16.  * THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF SYSKONNECT
  17.  * The copyright notice above does not evidence any
  18.  * actual or intended publication of such source code.
  19.  *
  20.  * This Module contains Proprietary Information of SysKonnect
  21.  * and should be treated as Confidential.
  22.  *
  23.  * The information in this file is provided for the exclusive use of
  24.  * the licensees of SysKonnect.
  25.  * Such users have the right to use, modify, and incorporate this code
  26.  * into products for purposes authorized by the license agreement
  27.  * provided they include this notice and the associated copyright notice
  28.  * with any such product.
  29.  * The information in this file is provided "AS IS" without warranty.
  30.  *
  31.  ******************************************************************************/
  32. /******************************************************************************
  33.  *
  34.  * History:
  35.  *
  36.  * $Log: sktimer.h,v $
  37.  * Revision 1.8  1998/09/08 08:48:02  gklug
  38.  * add: init level handling
  39.  *
  40.  * Revision 1.7  1998/08/20 12:31:29  gklug
  41.  * fix: SK_TIMCTRL needs to be defined
  42.  *
  43.  * Revision 1.6  1998/08/19 09:51:00  gklug
  44.  * fix: remove struct keyword from c-code (see CCC) add typedefs
  45.  *
  46.  * Revision 1.5  1998/08/17 13:43:21  gklug
  47.  * chg: Parameter will be union of 64bit para, 2 times SK_U32 or SK_PTR
  48.  *
  49.  * Revision 1.4  1998/08/14 07:09:31  gklug
  50.  * fix: chg pAc -> pAC
  51.  *
  52.  * Revision 1.3  1998/08/07 12:54:24  gklug
  53.  * fix: first compiled version
  54.  *
  55.  * Revision 1.2  1998/08/07 09:35:29  gklug
  56.  * add: Timer control struct for Adapters context
  57.  * add: function prototypes
  58.  *
  59.  * Revision 1.1  1998/08/05 11:27:01  gklug
  60.  * First version: adapted from SMT
  61.  *
  62.  *
  63.  ******************************************************************************/
  64. /*
  65.  * SKTIMER.H contains all defines and types for the timer functions
  66.  */
  67. #ifndef _SKTIMER_H_
  68. #define _SKTIMER_H_
  69. #include "h/skqueue.h"
  70. /*
  71.  * SK timer
  72.  * - needed wherever a timer is used. Put this in your data structure
  73.  *   wherever you want.
  74.  */
  75. typedef struct s_Timer SK_TIMER;
  76. struct s_Timer {
  77. SK_TIMER *TmNext ; /* linked list */
  78. SK_U32 TmClass ; /* Timer Event class */
  79. SK_U32 TmEvent ; /* Timer Event value */
  80. SK_EVPARA TmPara ; /* Timer Event parameter */
  81. SK_U32 TmDelta ; /* delta time */
  82. int TmActive ; /* flag : active/inactive */
  83. } ;
  84. /*
  85.  * Timer control struct.
  86.  * - use in Adapters context name pAC->Tim
  87.  */
  88. typedef struct s_TimCtrl {
  89. SK_TIMER *StQueue ; /* Head of Timer queue */
  90. } SK_TIMCTRL ;
  91. extern void SkTimerInit(SK_AC *pAC,SK_IOC Ioc, int Level);
  92. extern void SkTimerStop(SK_AC *pAC,SK_IOC Ioc,SK_TIMER *pTimer);
  93. extern void SkTimerStart(SK_AC *pAC,SK_IOC Ioc,SK_TIMER *pTimer,
  94. SK_U32 Time,SK_U32 Class,SK_U32 Event,SK_EVPARA Para);
  95. extern void SkTimerDone(SK_AC *pAC,SK_IOC Ioc);
  96. #endif /* _SKTIMER_H_ */