/* Init and set seek LISR and HISR functions * @param None. * @return None */ void video_set_seek_isr(DECODE_TYPE decode_type) { kal_uint32 savedMask; if((decode_type == DECODE_TYPE_MPEG4) || (decode_type == DECODE_TYPE_H263)) { savedMask = SaveAndSetIRQMask(); #ifdef DRV_MP4_V1 IRQMask(IRQ_MPEG4_CODE); #else /*!DRV_MP4_V1*/ IRQMask(IRQ_MPEG4_DEC_CODE); #endif /*DRV_MP4_V1*/ RestoreIRQMask(savedMask); //savedMask = SaveAndSetIRQMask(); mpeg4_dec_init_isr_param(); g_mpeg4_dec_info_ptr->dec_state = MPEG4_DEC_STATE_SEEK; #ifdef MP4_MOVE_LISR_TO_HISR VISUAL_Register_HISR(VISUAL_MPEG4_SEEK_FIRST_HISR_ID, mpeg4_dec_seek_first_HISR); #endif VISUAL_Register_HISR(VISUAL_MP4_SEEK_HISR_ID, mpeg4_dec_seek_HISR); #ifdef DRV_MP4_V1 IRQ_Register_LISR(IRQ_MPEG4_CODE, mpeg4_dec_seek_LISR, "MPEG4Seek"); IRQSensitivity(IRQ_MPEG4_CODE, LEVEL_SENSITIVE); IRQUnmask(IRQ_MPEG4_CODE); #else /*!DRV_MP4_V1*/ IRQ_Register_LISR(IRQ_MPEG4_DEC_CODE, mpeg4_dec_seek_LISR, "MPEG4Seek"); IRQSensitivity(IRQ_MPEG4_DEC_CODE, LEVEL_SENSITIVE); IRQUnmask(IRQ_MPEG4_DEC_CODE); #endif /*DRV_MP4_V1*/ //RestoreIRQMask(savedMask); } }
/* Init and set decode LISR and HISR functions * @param None. * @return None */ void video_set_dec_isr(DECODE_TYPE decode_type) { kal_uint32 savedMask; if((decode_type == DECODE_TYPE_MPEG4) || (decode_type == DECODE_TYPE_H263)) { savedMask = SaveAndSetIRQMask(); #ifdef DRV_MP4_V1 IRQMask(IRQ_MPEG4_CODE); #else /*!DRV_MP4_V1*/ IRQMask(IRQ_MPEG4_DEC_CODE); #endif /*DRV_MP4_V1*/ RestoreIRQMask(savedMask); //savedMask = SaveAndSetIRQMask(); mpeg4_dec_init_isr_param(); g_mpeg4_dec_info_ptr->dec_state = MPEG4_DEC_STATE_NORMAL; #ifdef MP4_MOVE_LISR_TO_HISR VISUAL_Register_HISR(VISUAL_MPEG4_DEC_FIRST_HISR_ID, mpeg4_dec_first_HISR); #endif VISUAL_Register_HISR(VISUAL_MPEG4_DEC_HISR_ID, mpeg4_dec_HISR); //video_dec_set_enable_av_callback(mpeg4_dec_LISR); //RestoreIRQMask(savedMask); } }
/* * FUNCTION * IMGPROC_Init * * DESCRIPTION * Initialize the IMGPROC driver and it should be called only once. * * CALLS * * PARAMETERS * * RETURNS * None * * GLOBALS AFFECTED * None */ kal_int32 API IMGPROC_Init(void) { #if (defined(DRV_IDP_6219_SERIES)) ASSERT(IMGPROC_Events == 0); IMGPROC_Events = kal_create_event_group("IMGPROC Events"); VISUAL_Register_HISR(VISUAL_IMGPROC_HISR_ID,IMGPROC_HISR_Entry); IRQ_Register_LISR(IRQ_IMGPROC_CODE, IMGPROC_LISR_Entry,"IMGPROC"); IRQSensitivity(IRQ_IMGPROC_CODE,LEVEL_SENSITIVE); IRQUnmask(IRQ_IMGPROC_CODE); kal_mem_set(&imgproc_dcb,0,sizeof(IMGPROC_DCB_STRUCT)); #elif (defined(DRV_IDP_6228_SERIES)) IMGPROC_Events = kal_create_event_group("IMGPROC Events"); VISUAL_Register_HISR(VISUAL_IMGPROC_HISR_ID,IMGPROC_HISR_Entry); IRQ_Register_LISR(IRQ_IMGPROC_CODE, IMGPROC_LISR_Entry,"IMGPROC"); IRQSensitivity(IRQ_IMGPROC_CODE,LEVEL_SENSITIVE); IRQUnmask(IRQ_IMGPROC_CODE); #endif return NO_ERROR; }