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

📄 ipvd_dbg.c

📁 tuner扫描
💻 C
📖 第 1 页 / 共 2 页
字号:
/*==========================================================================*/
/*     (Copyright (C) 2003 Koninklijke Philips Electronics N.V.             */
/*     All rights reserved.                                                 */
/*     This source code and any compilation or derivative thereof is the    */
/*     proprietary information of Koninklijke Philips Electronics N.V.      */
/*     and is confidential in nature.                                       */
/*     Under no circumstances is this software to be exposed to or placed   */
/*     under an Open Source License of any type without the expressed       */
/*     written permission of Koninklijke Philips Electronics N.V.           */
/*==========================================================================*/
/*==========================================================================*/
/*                                                                          
       SOURCE_FILE:    IPVD_DBG.C

       PACKAGE:        IPVD
       COMPONENT:      IPVD      
                                                                            
       (C) 1998: Philips Semiconductors                                
                                                                            */ 
/*==========================================================================*/


/*MPP:::IPVD======================================================*/

/* PACKAGE NAME:       IPVD

   SCOPE:              DEBUG
      
   ORIGINAL AUTHOR:    IGUENANE Matthieu           

   DESCRIPTION :  

   <concise description of the package>
 
   DATA TYPES:

   <summary of needed data-types and/or includes>

   FUNCTIONS:

   <summary of available functions>

                                                                            */

/*EMP=======================================================================*/

/*==========================================================================*/
/*       I N C L U D E S                                                    */ 
/*==========================================================================*/

#include <dv_dbg.h>
#include <string.h>

#include "ipvd_dbgl.h"
#include "mv_drv.h"  /* Gadget files for MV component */
#include "mv_itvl.h"

/*==========================================================================*/
/*       G L O B A L   D A T A   D E C L A R A T I O N S                    */
/*==========================================================================*/


/*==========================================================================*/
/*       L O C A L   S Y M B O L   D E F I N I T I O N S                    */
/*==========================================================================*/


/*==========================================================================*/
/*       L O C A L   D A T A   D E C L A R A T I O N S                      */
/*==========================================================================*/

/*==========================================================================*/
/*       L O C A L   F U N C T I O N S   P R O T O T Y P E S                */
/*==========================================================================*/

#if defined(DV_DEBUG) || defined (DV_DBG_OFF_LINE_PARSER)
/*==========================================================================*/
/*       G L O B A L  F U N C T I O N S                                     */ 
/*==========================================================================*/

/*MPF=======================================================================*/
/*  
    FUNCTION NAME:     IPVD_DBG_par

    PACKAGE:           DBG

    SCOPE:             DEBUG

    DESCRIPTION:  


    CALLING SEQUENCE:
*/
DV_RETURN                              /* Returns: <description> */
IPVD_DBG_par(    
DV_DBG_EVENT_STORE_ENTRY  in_entry
)
/*EMP=======================================================================*/
{
   DV_RETURN     lv_return = DV_RETURN_OK; /* initialize return value to TRUE */
   char          picture[4];
   char          picture_past[4];
   char          picture_future[4];
   char          field[4];
   static unsigned long lv_disp_frame_store = 0;
  
   unsigned long lv_stc_milli_sec = 0;
   unsigned long lv_stc_micro_sec = 0;  
   
   /* Test if event type is valid */
   if ( in_entry.event >= IPVD_DBG_EV_LAST_EVENT)
   {
      lv_return = DV_RETURN_NOT_OK;
   }
   /* Event valid */
   else
   {
      /* Print STC value of the event */
      DV_DBG_CONVERT_TIME_TO_INT_UNIT(in_entry.time, &lv_stc_milli_sec, &lv_stc_micro_sec);
      DV_DBG_PRINT( "\n STC:%d.%.3d\n", lv_stc_milli_sec, lv_stc_micro_sec);
      /* Analyze event */

      switch( in_entry.event )
      {

         case IPVD_DBG_EV_NO_EVENT:
         DV_DBG_PRINT("IPVD_GENERIC");
         DV_DBG_PRINT(in_entry.info0,in_entry.info1,in_entry.info2,in_entry.info3);
         DV_DBG_PRINT("\n");
         break;


         case IPVD_DBG_EV_VSYNC:
            DV_DBG_PRINT("VSYNC\t\t%x\t%d\n",in_entry.info0,in_entry.info3);
            DV_DBG_PRINT("bfm = 0x%x\n",in_entry.info1);
            DV_DBG_PRINT("rdpt = 0x%x\n",in_entry.info2);
            break;
            
         case IPVD_DBG_EV_FBM_EOPH:            
            DV_DBG_PRINT ("EOPH\n");
            break;
            
         case IPVD_DBG_EV_PARSING_EOPH:
            switch (in_entry.info0)
            {
               case  IPVD_DBG_FBM_PIC_B:
                  strcpy( picture ,"B");
                  break;
               case  IPVD_DBG_FBM_PIC_I:
                  strcpy(picture ,"I");
                  break;
               case  IPVD_DBG_FBM_PIC_P:
                  strcpy(picture ,"P");
                  break;
               case  IPVD_DBG_FBM_PIC_D:
                  strcpy(picture ,"D");
                  break;
               default:
                  strcpy(picture ,"?");
                  break;
            }
            
            DV_DBG_PRINT ("EOPH\t\t%s%d\n",
                          picture,
                          in_entry.info1);
            break;
                
         case IPVD_DBG_EV_STC_ADJUST:
            DV_DBG_PRINT ("STC_ADJUST\t\t%d\n", in_entry.info0);
            break;

         case IPVD_DBG_EV_CHANGE_CHANNEL_REQUESTED:
            DV_DBG_PRINT("CHANGE_CHANNEL\n");
            break;

         case IPVD_DBG_EV_RESET_DONE:
            DV_DBG_PRINT("RESET_DONE\n");
            break;

         case IPVD_DBG_EV_FBM_IN_SYNC:
            switch (in_entry.info0)
            {
               case IPVD_DBG_FBM_PIC_B :
                  strcpy( picture ,"B");
                  break;
               case IPVD_DBG_FBM_PIC_I :
                  strcpy(picture ,"I");
                  break;
               case IPVD_DBG_FBM_PIC_P :
                  strcpy(picture ,"P");
                  break;
               case  IPVD_DBG_FBM_PIC_D:
                  strcpy(picture ,"D");
                  break;
               default:
                  strcpy(picture ,"?");
                  break;
            }
            DV_DBG_PRINT("IN_SYNC\t\t%s%d\n",
                         picture,
                         in_entry.info1);
            break;
         case IPVD_DBG_EV_FBM_DEC_BEGIN:
            /* Tag for triangle */
            DV_DBG_PRINT ("DEC_BEGIN\n");
            break;
                
         case IPVD_DBG_EV_FBM_DEC_END:
            DV_DBG_PRINT ("DEC_END\n");
            break;

         case IPVD_DBG_EV_FBM_DEC_TEXT:
            switch (in_entry.info0)
            {
               case  IPVD_DBG_FBM_PIC_B:
                  strcpy( picture ,"B");
                  break;
               case  IPVD_DBG_FBM_PIC_I:
                  strcpy(picture ,"I");
                  break;
               case  IPVD_DBG_FBM_PIC_P:
                  strcpy(picture ,"P");
                  break;
               case  IPVD_DBG_FBM_PIC_D:
                  strcpy(picture ,"D");
                  break;
               default:
                  strcpy(picture ,"?");
                  break;
            }
            DV_DBG_PRINT("DEC_TEXT\t\t%s%d\tin FS%d\n",
                         picture,
                         in_entry.info1,
                         in_entry.info2
                         );
            break;

         case IPVD_DBG_EV_FBM_START_DEC:
            switch (in_entry.info0)
            {
               case  IPVD_DBG_FBM_PIC_B:
                  strcpy( picture ,"B");
                  break;
               case  IPVD_DBG_FBM_PIC_I:
                  strcpy(picture ,"I");
                  break;
               case  IPVD_DBG_FBM_PIC_P:
                  strcpy(picture ,"P");
                  break;
               case  IPVD_DBG_FBM_PIC_D:
                  strcpy(picture ,"D");
                  break;
               default:
                  strcpy(picture ,"X");
                  break;
            }
            
            switch ((in_entry.info2 >> 16) & 0xFFFF)
            {
               case  IPVD_DBG_FBM_PIC_B:
                  strcpy( picture_past ,"B");
                  break;
               case  IPVD_DBG_FBM_PIC_I:
                  strcpy(picture_past ,"I");
                  break;
               case  IPVD_DBG_FBM_PIC_P:
                  strcpy(picture_past ,"P");
                  break;
               case  IPVD_DBG_FBM_PIC_D:
                  strcpy(picture_past ,"D");
                  break;
               default:
                  strcpy(picture_past ,"X");
                  break;
            }
            
            switch ((in_entry.info3 >> 16) & 0xFFFF)
            {
               case  IPVD_DBG_FBM_PIC_B:
                  strcpy( picture_future ,"B");
                  break;
               case  IPVD_DBG_FBM_PIC_I:
                  strcpy(picture_future ,"I");
                  break;
               case  IPVD_DBG_FBM_PIC_P:
                  strcpy(picture_future ,"P");
                  break;
               case  IPVD_DBG_FBM_PIC_D:
                  strcpy(picture_future ,"D");
                  break;
               default:
                  strcpy(picture_future ,"X");
                  break;
            }
            
            DV_DBG_PRINT ("START_DEC\t\t%s%d\t%s%d\t%s%d\n",
                          picture,
                          in_entry.info1,
                          picture_past,
                          (in_entry.info2 & 0xFFFF),
                          picture_future,
                          (in_entry.info3 & 0xFFFF)
                          );
            break;
                
         case IPVD_DBG_EV_FBM_DISCARD_PIC:
            switch (in_entry.info0)
            {
               case  IPVD_DBG_FBM_PIC_B:
                  strcpy( picture ,"B");
                  break;
               case  IPVD_DBG_FBM_PIC_I:
                  strcpy(picture ,"I");
                  break;
               case  IPVD_DBG_FBM_PIC_P:
                  strcpy(picture ,"P");
                  break;
               case  IPVD_DBG_FBM_PIC_D:
                  strcpy(picture ,"D");
                  break;
               default:
                  strcpy(picture ,"?");
                  break;
            }
            
            DV_DBG_PRINT ("DISC_PICT\t\t%s%d\n",
                          picture,
                          in_entry.info1
                          );
            break;

         case IPVD_DBG_EV_FBM_SYNCHRONIZE:
            switch (in_entry.info0)
            {
               case  IPVD_DBG_FBM_PIC_B:
                  strcpy( picture ,"B");
                  break;
               case  IPVD_DBG_FBM_PIC_I:
                  strcpy(picture ,"I");
                  break;
               case  IPVD_DBG_FBM_PIC_P:
                  strcpy(picture ,"P");
                  break;
               case  IPVD_DBG_FBM_PIC_D:
                  strcpy(picture ,"D");
                  break;
               default:
                  strcpy(picture ,"?");
                  break;
            }
            
            DV_DBG_PRINT ("SYNC_PICT\t\t%s%d\t%x\t%x\n",
                          picture,
                          in_entry.info1,
                          in_entry.info2,
                          in_entry.info3);
            break;

         case IPVD_DBG_EV_FBM_DISP_BEGIN:
            /* Tag for triangle */
            DV_DBG_PRINT ("DISP_BEGIN\n");
            break;

         case IPVD_DBG_EV_FBM_DISP_END:
            DV_DBG_PRINT ("DISP_END\n");
            lv_disp_frame_store = in_entry.info0;
            break;
            
         case IPVD_DBG_EV_UD_SEMAPHORE_ERROR:
            DV_DBG_PRINT ("UD : Semaphore problem - ");

            switch (in_entry.info0)
            {
               case  IPVD_SEMAPHORE_RELEASE:
                  DV_DBG_PRINT ("release\n");
                  break;

               case  IPVD_SEMAPHORE_CREATE:
                  DV_DBG_PRINT ("create\n");
                  break;

               case  IPVD_SEMAPHORE_ACQUIRE:
                  DV_DBG_PRINT ("acquire\n");
                  break;

               case  IPVD_SEMAPHORE_DESTROY:
                  DV_DBG_PRINT ("destroy\n");
                  break;
            }
            
            break;

         case IPVD_DBG_EV_UD_AVAILABLE:
            DV_DBG_PRINT ("UD_AVAILABLE\n");
            break;
            
         case IPVD_DBG_EV_UD_BUFFER_FULL:
            DV_DBG_PRINT ("UD_BUFFER_FULL\n");
            break;
            
         case IPVD_DBG_EV_UD_PROCESSING_NEEDED:
            DV_DBG_PRINT ("UD_PROCESSING_NEEDED\n");
            break;
            
         case IPVD_DBG_EV_USER:
            DV_DBG_PRINT ("EV_USER\t%X\t%X\t%X\t%X\n",in_entry.info0,in_entry.info1,in_entry.info2,in_entry.info3);
            break;

         case IPVD_DBG_EV_FBM_STATUS:
            DV_DBG_PRINT ("FBM_STATUS\t0x%X\t0x%X\t0x%X\t0x%X\n",in_entry.info0,in_entry.info1,in_entry.info2,in_entry.info3);
            break;

         case IPVD_DBG_EV_ENTER_UD_PARSING:
            DV_DBG_PRINT ("ENTER_UD_PARSING\t%d\t%d\t%d\t%d\n",in_entry.info0,in_entry.info1,in_entry.info2,in_entry.info3);
            break;

         case IPVD_DBG_EV_EXIT_UD_PARSING:

⌨️ 快捷键说明

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