HardwareEventHandler.c
上传用户:lqx1163
上传日期:2014-08-13
资源大小:9183k
文件大小:7k
源码类别:

MTK

开发平台:

C/C++

  1. /*****************************************************************************
  2. *  Copyright Statement:
  3. *  --------------------
  4. *  This software is protected by Copyright and the information contained
  5. *  herein is confidential. The software may not be copied and the information
  6. *  contained herein may not be used or disclosed except with the written
  7. *  permission of MediaTek Inc. (C) 2005
  8. *
  9. *  BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
  10. *  THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
  11. *  RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
  12. *  AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
  13. *  EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
  14. *  MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
  15. *  NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
  16. *  SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
  17. *  SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
  18. *  THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
  19. *  NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
  20. *  SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
  21. *
  22. *  BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
  23. *  LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
  24. *  AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
  25. *  OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
  26. *  MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE. 
  27. *
  28. *  THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
  29. *  WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
  30. *  LAWS PRINCIPLES.  ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
  31. *  RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
  32. *  THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
  33. *
  34. *****************************************************************************/
  35. /*****************************************************************************
  36.  *
  37.  * Filename:
  38.  * ---------
  39.  * HardwareHandler.c
  40.  *
  41.  * Project:
  42.  * --------
  43.  *   MAUI
  44.  *
  45.  * Description:
  46.  * ------------
  47.  *   This file is intends for Handles the Events Sent from Hardware queue
  48.  *
  49.  * Author:
  50.  * -------
  51.  * -------
  52.  *
  53.  *============================================================================
  54.  *             HISTORY
  55.  * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
  56.  *------------------------------------------------------------------------------
  57.  * removed!
  58.  *
  59.  * removed!
  60.  * removed!
  61.  * removed!
  62.  *
  63.  * removed!
  64.  * removed!
  65.  * removed!
  66.  *
  67.  * removed!
  68.  * removed!
  69.  * removed!
  70.  *
  71.  *------------------------------------------------------------------------------
  72.  * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
  73.  *============================================================================
  74.  ****************************************************************************/
  75. /**
  76.  * Copyright Notice
  77.  * ?2002 - 2003, Pixtel Communications, Inc., 1489 43rd Ave. W.,
  78.  * Vancouver, B.C. V6M 4K8 Canada. All Rights Reserved.
  79.  *  (It is illegal to remove this copyright notice from this software or any
  80.  *  portion of it)
  81.  */
  82. /**************************************************************
  83.    FILENAME : HardwareHandler.c
  84.    PURPOSE     : Handles the Events Sent from Hardware queue.
  85.    REMARKS     : nil
  86.    AUTHOR      : Pixtel Engineers
  87.    DATE     : .
  88. **************************************************************/
  89. #include "MMI_features.h"
  90. #include "StdC.h"
  91. #include "L4Dr1.h"
  92. // #include "CustomCfg.h"
  93. //#ifdef FIRST_PASS
  94. //#include "BuildCfg.h"
  95. //#endif
  96. // #include "CustDataRes.h"
  97. #include "ProtocolEvents.h"
  98. #include "HardwareEventHandler.h"
  99. #include "HardwareEvents.h"
  100. /* Applications should be independant. This is required for customizing 
  101.    packaging of applications.
  102.    #include "Phonebook.h" */
  103. #include "EventsGprot.h"
  104. #include "QueueGprot.h"
  105. #include "gpioInc.h"
  106. #ifdef __MMI_USB_SUPPORT__
  107. #include "USBDeviceGprot.h"
  108. #endif 
  109. #ifdef __MMI_IRDA_SUPPORT__
  110. #include "IrdaMMIGprots.h"
  111. #endif 
  112. #ifdef MMI_ON_HARDWARE_P
  113. #include "l4dr.h"
  114. #endif 
  115. #include "KeyBrd.h"
  116. #ifdef __MMI_TVOUT__
  117. #include "PhoneSetupGprots.h"   /* Init TV-Out */
  118. #endif 
  119. extern void DateTimerIndication(void *p);
  120. extern void GpioDetectInd(void *info);
  121. extern void VolumeChangeIndication(void *info);
  122. /*****************************************************************************
  123.  * FUNCTION
  124.  *  InitHardwareEvents
  125.  * DESCRIPTION
  126.  *  Initialize the ProtocolEvents
  127.  * PARAMETERS
  128.  *  void
  129.  * RETURNS
  130.  *  void
  131.  *****************************************************************************/
  132. void InitHardwareEvents(void)
  133. {
  134. #ifdef MMI_ON_HARDWARE_P
  135.     /*----------------------------------------------------------------*/
  136.     /* Local Variables                                                */
  137.     /*----------------------------------------------------------------*/
  138.     /*----------------------------------------------------------------*/
  139.     /* Code Body                                                      */
  140.     /*----------------------------------------------------------------*/
  141.     SetProtocolEventHandler(L4KeyHandle, MSG_ID_MMI_EQ_KEYPAD_DETECT_IND);
  142.     SetProtocolEventHandler(L4SetClockRSP, MSG_ID_MMI_EQ_SET_RTC_TIME_RSP);
  143.     SetProtocolEventHandler(L4GetClockTimeRSP, MSG_ID_MMI_EQ_GET_RTC_TIME_RSP);
  144.     SetProtocolEventHandler(DateTimerIndication, MSG_ID_MMI_EQ_CLOCK_TICK_IND);
  145.     SetProtocolEventHandler(GpioDetectInd, MSG_ID_MMI_EQ_GPIO_DETECT_IND);
  146.     SetProtocolEventHandler(GpioCtrlReqHdlr, MSG_ID_MMIAPI_DEVICE_GET_CTRL_REQ);
  147.     SetProtocolEventHandler(GpioPlayReqHdlr, MSG_ID_MMIAPI_DEVICE_PLAY_REQ);
  148. #ifdef __MMI_USB_SUPPORT__
  149.     SetProtocolEventHandler(UsbDetectIndHdlr, MSG_ID_MMI_EQ_USBDETECT_IND);
  150. #endif 
  151. #endif /* MMI_ON_HARDWARE_P */ 
  152.     /* GPIO device Detect indication event handler */
  153.     SetProtocolEventHandler(GpioDetectInd, PRT_EQ_GPIO_DETECT_IND);
  154. #ifdef __MMI_USB_SUPPORT__
  155.     SetProtocolEventHandler(UsbDetectIndHdlr, PRT_EQ_USB_DETECT_IND);
  156. #endif 
  157.     /* volume change indication from L4 */
  158.     /* SetProtocolEventHandler( VolumeChangeIndication, MSG_ID_MMI_EQ_VOLUME_CHANGE_IND); */
  159. #ifdef __MMI_IRDA_SUPPORT__
  160.     mmi_irda_init_protocol_event();
  161. #endif 
  162.     SetProtocolEventHandler(mmi_gpio_backlight_ctrl_req_hdlr, MSG_ID_MMIAPI_BACKLIGHT_CONTROL_REQ);
  163.     SetProtocolEventHandler(mmi_gpio_led_ctrl_req_hdlr, MSG_ID_MMIAPI_LED_CONTROL_REQ);
  164. #ifdef __MMI_TVOUT__
  165.     /* init tvout - to re-register message handler */
  166.     mmi_phnset_init_tvout();
  167. #endif /* __MMI_TVOUT__ */
  168. }
  169. /* MTK end */