Ejemplo n.º 1
0
__s32 DRV_DISP_MExit(void)
{        
	__u8 err;

    BSP_disp_close();
    BSP_disp_exit(g_disp_drv.exit_mode);

#if DRV_VCOM_TIMER

#if  KNOB_USE_HW_TIMER
	if(g_vcom_timer_hdl)
	{
		esTIME_StopTimer(g_vcom_timer_hdl);
		esTIME_ReleaseTimer(g_vcom_timer_hdl);
		g_vcom_timer_hdl = NULL;
	}

#else
    if (esKRNL_TmrStateGet(g_vcom_timer_hdl) == OS_TMR_STATE_RUNNING)
	{
		esKRNL_TmrStop(g_vcom_timer_hdl, OS_TMR_OPT_NONE, NULL);
		esKRNL_TmrDel(g_vcom_timer_hdl);
		g_vcom_timer_hdl = NULL;
    }


#endif
    esPINS_PinGrpRel(vcom_io, 0);
#endif		

	esKRNL_SemDel(g_disp_drv.scaler_finished_sem[0], 0, &err);
	esKRNL_SemDel(g_disp_drv.scaler_finished_sem[1], 0, &err);

    return EPDK_OK;
} 
Ejemplo n.º 2
0
__s32 DRV_DISP_Exit(void)
{
	Fb_Exit();
	BSP_disp_close();
	BSP_disp_exit(g_disp_drv.exit_mode);

	return 0;
}
Ejemplo n.º 3
0
__s32 DRV_DISP_Exit(void)
{        
    Fb_Exit();
    BSP_disp_close();
    BSP_disp_exit(g_disp_drv.exit_mode);

	kfree(g_disp_drv.scaler_finished_sem[0]);
	kfree(g_disp_drv.scaler_finished_sem[1]);

    return 0;
} 
/*
****************************************************************************************************
*
*             DRV_DE_EXIT
*
*  Description: 卸载驱动,通常把只会执行一次的操作放在这里
*               当驱动退出的时候会调用这个这个函数
*               卸载函数没有参数
*  Parameters:
*
*  Return value:
*       0
*       -1
****************************************************************************************************
*/
__s32 DRV_DE_EXIT(void)
{
    if(lcd_op_finished[0] && lcd_timer[0] != NULL)
    {
        wBoot_timer_release(lcd_timer[0]);
        lcd_timer[0] = NULL;
    }
    if(lcd_op_finished[1] && lcd_timer[1] != NULL)
    {
        wBoot_timer_release(lcd_timer[1]);
        lcd_timer[1] = NULL;
    }

    BSP_disp_exit(exit_mode);

    return 0;
}