⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 events.h

📁 本程序为ST公司开发的源代码
💻 H
📖 第 1 页 / 共 3 页
字号:
/******************************************************************************* *                    CONFIDENTIAL - PHILIPS APM * *  This is unpublished work is a trade secret. Philips APM owns all rights *  to this work and intends to maintain it in confidence to preserve its *  trade secret status. Philips Automotive Playback Modules reserves the *  right to protect this work as an unpublished copyrighted work in the *  event of an inadvertent Automotive Systems also reserves its right. *  Those having access to this work mayor deliberate unauthorized publication. *  Do not copy it, use it, or disclose the information contained in it *  without the written authorization of Philips Automotive Playback Modules. ******************************************************************************//******************************************************************************//*! \file * *    Project Scope: CDM M8 * *    Organization:  Philips APM-DS * *  Version Control: *    \source       sources/player/events.h *    \version      0.1 *    \author       Bernard Bosnjak *    \date         27.01.2004 * *  Target Hardware:    Accordo ******************************************************************************* *  \brief        Event handling * *  \par          Change History: * * - BB050815b    Introduced end of seek subcode event from shockproof * - BB060822b    Organized subcode and endplay flags * - DR060926b    Defined events for EOC,EOB,EOD,BOC * ******************************************************************************* * * STM CVS Log: * * $Log: events.h,v $ * Revision 1.63  2007/11/08 17:34:07  sedmik * new cmd/status channels on IPOD_AP added * * Revision 1.62  2007/09/26 15:08:07  dellorto * dsp hf event replaced with hf event (generated by check hf fsm) * * Revision 1.61  2007/08/14 15:28:26  dellorto * multiple mechanisms * * Revision 1.60  2007/08/10 12:33:29  longauer * IPOD_AP compilation switch enables future iAP * * Revision 1.59  2007/07/11 07:56:24  longauer * usb events renaming * * Revision 1.58  2007/07/10 13:54:03  longauer * usb events renaming * * Revision 1.57  2007/06/04 16:58:46  longauer * USBtask rearrangement in order to support more logical units; new file usb_pri.h added with USBtask private declarations; USB compilation switches added; constants renaming; * * Revision 1.56  2007/04/11 14:20:13  belardi * Integration of HAVE_CD_MECHA modification by [GP] * * Revision 1.55  2007/04/06 06:36:38  hara * Add _EVENT_TEP_HAD_TIME_BEFORE & T_actual for more robust TOC reading. * * Revision 1.54  2007/02/23 11:40:10  sedmik * IS_PLAYER_STATUS_EVENT, USB defines rearranged * * Revision 1.53  2007/02/21 20:18:14  longauer * usb states and error reorganization;  usb state is propagated to player task = usb *  state messaging * * Revision 1.52  2007/02/21 09:15:43  chlapik * new CTR - CAP interface: ESP history removed from CTR * * Revision 1.51  2007/02/13 11:05:02  sedmik * defines related to player status added * * Revision 1.50  2007/02/09 14:14:47  longauer * minor passthrough events reorganization * * Revision 1.49  2007/02/09 12:12:54  belardi * First integration of iPod pass-through * - new hostif-usb events * * Revision 1.48  2007/01/29 14:32:00  chlapik * support for USB devices with any block size (not only 512B) * * Revision 1.47  2007/01/18 09:08:53  chlapik * q_min item in STRUCT_Q_SUBCODE increased from uint8 to uint16 for long CA songs * * Revision 1.46  2006/12/13 09:28:35  belardi * Added field to STRUCT_Q_SUBCODE to support DirNo parameter in MsgTimeInfo * * Revision 1.45  2006/12/12 10:55:53  sedmik * new defines related to command from hostif to plr * * Revision 1.44  2006/11/27 19:52:43  belardi * Host Update protocol addition * - new Controller command/events * * Revision 1.43  2006/10/27 13:08:54  chlapik * new define for controller's out status event * * Revision 1.42  2006/10/17 14:21:58  chlapik * when PLY checks CTR status, ignore high 16 bits, where multiple ready is encoded * * Revision 1.41  2006/10/10 06:53:55  belardi * Integration of m8_cav2_cm80507 * * Revision 1.40  2006/09/18 09:55:24  belardi * Corrected CVS keyword usage * * Revision 1.39  2006/09/18 09:24:52  belardi * Added Log CVS keyword into file header * * ******************************************************************************/#ifndef __EVENTS_H#define __EVENTS_H#include "configuration.h"typedef uint32 t_event;#define NO_EVENT  ((t_event)0)typedef enum{  EVENT_OUT,  EVENT_PEND,  EVENT_IN,  EVENT_MAX_STAGES} t_event_stage;typedef enum{#if (HAVE_CD_MECHA == 1)  LOADER_CMD_EVENT,#endif#ifdef APM_PICKUP  MSG_SET_REQUEST_PENDING,  MSG_DELPHI_REQUEST_PENDING,#endif  PLAYER_CMD_EVENT,#if ((0!=IPOD_PASSTHROUGH) && (0 != IPOD_AP))  PLAYER_DOWNSTREAM_CMD_EVENT,  PLAYER_UPSTREAM_CMD_EVENT,#endif  /* ((0!=IPOD_PASSTHROUGH) && (0 != IPOD_AP))*/   CONTROLLER_CMD_EVENT,  CAPTURE_CMD_EVENT,#if (HAVE_CD_MECHA == 1)  SERVO_CMD_EVENT,#endif  DECODER_CMD_EVENT,  FILESYS_CMD_EVENT,#if (0 != HAVE_USB)  USB_CMD_EVENT,#if ((0!=IPOD_PASSTHROUGH) || (0!=IPOD_AP))	//[LL]new  USB_DOWNSTREAM_CMD_EVENT,  USB_UPSTREAM_CMD_EVENT,#endif /* IPOD_PASSTHROUGH || IPOD_AP */  #if (0 != IPOD_AP)	//[LL]new  ACP_CMD_EVENT,	//[LL]new#endif /*IPOD_AP*/	//[LL]new #endif /*HAVE_USB*/#if (0 != HAVE_SDC)  SDC_CMD_EVENT,#endif /* HAVE_SDC */  OSAL_MAX_CMD_EVENT,#if (HAVE_CD_MECHA == 1)  LOADER_SW_EVENT       = OSAL_MAX_CMD_EVENT,  LOADER_STATUS_EVENT,#else  LOADER_STATUS_EVENT   = OSAL_MAX_CMD_EVENT,#endif#ifndef APM_PICKUP  HW_EJECT_EVENT,#endif#if (HAVE_CD_MECHA == 1)  DSP_AGC_EVENT,  DSP_FOCUS_EVENT,#ifdef APM_PICKUP  DSP_TTM_FG_EVENT,#endif#ifdef ECC_WORKAROUND  DSP_CLV_BUFFER_EVENT,#endif  DSP_RAMP_EVENT,  DSP_SHORT_JUMP_EVENT,  TRACKING_EVENT,  HF_EVENT,  SLEDGE_SW_EVENT,  SLEDGE_STATUS_EVENT,  TTM_EVENT,#ifdef ECC_WORKAROUND  CLV_IRQ_EVENT,#endif#endif // HAVE_CD_MECHA#ifdef APM_PICKUP  I2C_EVENTBIT,  SVC_PENDING,  SVC_DBG_PENDING,#else  PLAYER_STATUS_EVENT,#endif#if ((0!=IPOD_PASSTHROUGH) && (0 != IPOD_AP))  PLAYER_DOWNSTREAM_STATUS_EVENT,  PLAYER_UPSTREAM_STATUS_EVENT,#endif  /* ((0!=IPOD_PASSTHROUGH) && (0 != IPOD_AP))*/     CONTROLLER_STATUS_EVENT,  CONTROLLER_PRE_EOS_STATUS_EVENT,  CONTROLLER_EOS_STATUS_EVENT,#if (0 != HAVE_USB)  CONTROLLER_USB_STATUS_EVENT,#endif /*HAVE_USB*/  CONTROLLER_SDC_STATUS_EVENT,  CONTROLLER_TIME_STATUS_EVENT,#if (0 != HAVE_USB)  USB_STOP_EVENT,  USB_DATA_EVENT,  USB_STATUS_EVENT,  USB_IRQ_EVENT,#if ((0!=IPOD_PASSTHROUGH) || (0!=IPOD_AP))	//[LL]new  USB_DOWNSTREAM_STATUS_EVENT,            /* JS events are same for (IPOD_PASSTHROUGH=1 & IPOD_AP =0) and (IPOD_AP=1) */  USB_UPSTREAM_STATUS_EVENT,#endif /* IPOD_PASSTHROUGH || IPOD_AP */#if (0 != IPOD_AP)	//[LL]new  ACP_STATUS_EVENT,	//[LL]new#endif /*IPOD_AP*/	//[LL]new#endif /*HAVE_USB*/#if (0 != HAVE_SDC)  SDC_STOP_EVENT,  SDC_DATA_EVENT,  SDC_MOUNT_EVENT,#endif /* HAVE_SDC */#if (0 != HAVE_HOST_UPDATE)  CONTROLLER_HOSTIF_STATUS_EVENT,#endif  DECODER_STOP_EVENT,  DECODER_START_EVENT,  DECODER_SLEEP_EVENT,  DECODER_REQ_EVENT,  DECODER_TIME_EVENT,  DMA0_IRQ_XFER_EVENT,  DMA0_IRQ_TIME_EVENT,  FILESYS_TAG_EVENT,  FILESYS_MOUNT_EVENT,  FILESYS_STOP_EVENT,  FILESYS_INIT_EVENT,  FILESYS_REQ_EVENT,  CAPTURE_READ_EVENT,       //44  CAPTURE_CTR_WAKEUP_EVENT,    CAPTURE_STATUS_EVENT,  CAPTURE_PRE_ENDPLAY_EVENT,  CAPTURE_SUBCODE_EVENT,    //48  DMA_IRQ_WRITE_EVENT,  DMA_IRQ_READ_EVENT,       //50  DMA_IRQ_XFER_EVENT,  BD_IRQ_EVENT,#if (HAVE_CD_MECHA == 1)  SERVO_STATUS_EVENT,  SERVO_ENDPLAY_EVENT,  SERVO_SUBCODE_EVENT,  ACQ_IRQ_SUBCODE_EVENT,#endif  OSAL_MAX_EVENT} OSAL_EVENT_ID_t;/* event is union of simple event and complex event *///#define DEBUG_EVENTS 1#ifdef DEBUG_EVENTStypedef struct{  t_event event;  void    *pevent;  OSAL_EVENT_ID_t name;} t_event_union;#elsetypedef union{  t_event event;  void    *pevent;} t_event_union;#endifextern t_event_union event_out[OSAL_MAX_EVENT];extern t_event_union event_pending[OSAL_MAX_EVENT];extern t_event_union event_in[OSAL_MAX_EVENT];void event_init(void);void event_out_shedule(OSAL_EVENT_ID_t id);void event_in_shedule(OSAL_EVENT_ID_t id);void event_in_clear(OSAL_EVENT_ID_t id);void event_cmd_set(OSAL_EVENT_ID_t id);void event_cmd_shedule(void);void *pevent_get_out(OSAL_EVENT_ID_t id);void event_set_out(OSAL_EVENT_ID_t id);#define event_disable_scheduling()     { Int __csitr__ = OSAL_enter_critical_section()#define event_enable_scheduling()      OSAL_leave_critical_section(__csitr__);}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -