int disp_helper_get_option(DISP_HELPER_OPTION option)
{
	//DISPMSG("stage=0x%08x\n", disp_global_stage);
	switch(option)
	{
		case DISP_HELPER_OPTION_USE_CMDQ:
		{
			if(_is_normal_stage())
				return 1;
			else if(_is_bringup_stage())
				return 0;
			else if(_is_early_porting_stage())
				return 0;
			else
				BUG_ON(1);
		}
		case DISP_HELPER_OPTION_USE_M4U:
		{
			if(_is_normal_stage())
				return 1;
			else if(_is_bringup_stage())
				return 0;
			else if(_is_early_porting_stage())
				return 0;
			else
				BUG_ON(1);
		}
		case DISP_HELPER_OPTION_USE_CLKMGR:
		{
			if(_is_normal_stage())
				return 1;
			else if(_is_bringup_stage())
				return 0;
			else if(_is_early_porting_stage())
				return 0;
			else
				BUG_ON(1);
		}
		case DISP_HELPER_OPTION_MIPITX_ON_CHIP:
		{
			if(_is_normal_stage())
				return 1;
			else if(_is_bringup_stage())
				return 1;
			else if(_is_early_porting_stage())
				return 0;
			else
				BUG_ON(1);
		}			
		case DISP_HELPER_OPTION_FAKE_LCM_X:
		{
			int x = 0;
			#ifdef CONFIG_CUSTOM_LCM_X
				x = simple_strtoul(CONFIG_CUSTOM_LCM_X, NULL, 0);
			#endif
			return x;
		}			
		case DISP_HELPER_OPTION_FAKE_LCM_Y:
		{
			int y = 0;
			#ifdef CONFIG_CUSTOM_LCM_Y
				y = simple_strtoul(CONFIG_CUSTOM_LCM_Y, NULL, 0);
			#endif
			return y;
		}	
		case DISP_HELPER_OPTION_FAKE_LCM_WIDTH:
		{
			int x = 0;
			int w = DISP_GetScreenWidth();
			#ifdef CONFIG_CUSTOM_LCM_X
				x = simple_strtoul(CONFIG_CUSTOM_LCM_X, NULL, 0);
				if(x != 0)
				{
					w = ALIGN_TO(w, 16);
				}
			#endif
			return w;
		}			
		case DISP_HELPER_OPTION_FAKE_LCM_HEIGHT:
		{
			int h = DISP_GetScreenHeight();
			return h;
		}
		case DISP_HELPER_OPTION_DYNAMIC_SWITCH_UNDERFLOW_EN:
		{
			return 0;
		}
		case DISP_HELPER_OPTION_OVL_WARM_RESET:
		{
			return 1;
		}
		default:
			break;
	}

	BUG_ON(1);
}
Esempio n. 2
0
int disp_helper_get_option(DISP_HELPER_OPTION option)
{
	/* DISPMSG("stage=0x%08x\n", disp_global_stage); */
	switch (option) {
	case DISP_HELPER_OPTION_USE_CMDQ:
		{
			if (_is_normal_stage())
				return 1;
			else if (_is_bringup_stage())
				return 0;
			else if (_is_early_porting_stage())
				return 0;
			else
				BUG_ON(1);
		}
	case DISP_HELPER_OPTION_USE_M4U:
		{
			if (_is_normal_stage())
				return 1;
			else if (_is_bringup_stage())
				return 0;
			else if (_is_early_porting_stage())
				return 0;
			else
				BUG_ON(1);
		}
	case DISP_HELPER_OPTION_USE_CLKMGR:
		{
			if (_is_normal_stage())
				return 1;
			else if (_is_bringup_stage())
				return 0;
			else if (_is_early_porting_stage())
				return 0;
			else
				BUG_ON(1);
		}
	case DISP_HELPER_OPTION_MIPITX_ON_CHIP:
		{
			if (_is_normal_stage())
				return 1;
			else if (_is_bringup_stage())
				return 1;
			else if (_is_early_porting_stage())
				return 0;
			else
				BUG_ON(1);
		}
	case DISP_HELPER_OPTION_FAKE_LCM_X:
		{
			int x = 0;
#ifdef CONFIG_CUSTOM_LCM_X
			/*x = simple_strtoul(CONFIG_CUSTOM_LCM_X, NULL, 0);*/
			kstrtoint(CONFIG_CUSTOM_LCM_X , 0 , &x);
#endif
			return x;
		}
	case DISP_HELPER_OPTION_FAKE_LCM_Y:
		{
			int y = 0;
#ifdef CONFIG_CUSTOM_LCM_Y
			/*y = simple_strtoul(CONFIG_CUSTOM_LCM_Y, NULL, 0);*/
			kstrtoint(CONFIG_CUSTOM_LCM_Y , 0 , &y);
#endif
			return y;
		}
	case DISP_HELPER_OPTION_FAKE_LCM_WIDTH:
		{
			int x = 0;
			int w = DISP_GetScreenWidth();
#ifdef CONFIG_CUSTOM_LCM_X
			/*x = simple_strtoul(CONFIG_CUSTOM_LCM_X, NULL, 0);*/
			kstrtoint(CONFIG_CUSTOM_LCM_X , 0 , &x);
			if (x != 0)
				w = ALIGN_TO(w, 16);
#endif
			return w;
		}
	case DISP_HELPER_OPTION_FAKE_LCM_HEIGHT:
		{
			int h = DISP_GetScreenHeight();
			return h;
		}
	default:
		{
			return _disp_helper_option_value[option];
		}
	}

	return;
}