static int do_tv_out_open(int argc, char *argv[])
{
	int mode;
	int ret;

	if (argc < 2)
		goto usage;

	mode = to_mode(argv[1]);
	if(mode == TVOUT_MAX)
		goto usage;
	
	ret = tv_out_open(mode);
	if (ret!=0) {
		printf("tv %s %s failed\n",argv[0], argv[1]);
		return 1;
	}

	if(mode==TVOUT_1080I50HZ||mode==TVOUT_1080I||mode==TVOUT_576I||mode==TVOUT_480I){
		udelay(3*1000*1000);
		start_dsp();
	}
	return 0;

usage:
	puts("Usage: tv open mode(1080P/1080I/720P/576P/480P/576I/480I)\n");
	return 1;
}
Exemple #2
0
static int tvout_open(int argc, char *argv[])
{
	int mode;
	int ret;
#if CONFIG_AML_HDMI_TX
	extern void init_hdmi(void);
#endif
	extern void start_dsp(void);

	if (argc < 2)
		goto usage;

	mode = to_mode(argv[1]);
	if(mode == TVOUT_MAX)
		goto usage;

    tv_oper.enable();
#if CONFIG_AML_HDMI_TX
	init_hdmi();
#endif	

	ret = tv_out_open(mode);
	if (ret!=0) {
		printf("tv %s %s failed\n",argv[0], argv[1]);
		return 1;
	}
#if CONFIG_AML_MESON_6
	if(mode==TVOUT_1080I||mode==TVOUT_576I||mode==TVOUT_480I||
		mode == TVOUT_480CVBS ||mode == TVOUT_576CVBS){
		#ifdef CONFIG_DSP_VSYNC_INTERRUPT
		start_dsp();
		#endif
	}
#endif
	return 0;
usage:
#if CONFIG_AML_MESON_8
	puts("Usage: video dev open <mode>(4K2K30HZ/4K2K25HZ/4K2K24HZ/4K2KSMPTE/1080P24HZ\n1080P50HZ/1080I50HZ/720P50HZ/1080P/1080I/720P/576P/480P/576I/480I)\n");
#endif
#if CONFIG_AML_MESON_6
	puts("Usage: video dev open <mode>(1080P24HZ/1080P50HZ/1080I50HZ/720P50HZ/1080P/1080I/720P/576P/480P/576I/480I)\n");
#endif

	return 1;
}