Exemplo n.º 1
0
__s32 Hdmi_hal_init(void)
{
    //hdmi_audio_t audio_para;

	hdmi_core_initial();
//#ifdef __UBOOT_PLAT__
#if 1
{
    __u32 loop_count;

    loop_count = 3;
    while((loop_count--) && (!Hpd_Check()))
    {
        hdmi_main_task_loop();
    }
}
#endif
//for audio test
#if 0
    audio_para.ch0_en = 1;
    audio_para.sample_rate = 44100;
	Hdmi_hal_set_audio_para(&audio_para);

	Hdmi_hal_audio_enable(0, 1);
#endif

    return 0;
}
Exemplo n.º 2
0
__s32 Hdmi_hal_init(void)
{	
    //hdmi_audio_t audio_para;
    
	hdmi_core_initial();
    audio_info.channel_num  = 2;
#ifdef __BOOT_OSAL__
{
    __u32 loop_count;
    
    loop_count = 3;
    while(loop_count--)
    {
        hdmi_main_task_loop();
    }
}
#endif
//for audio test
#if 0
    audio_para.ch0_en = 1;
    audio_para.sample_rate = 44100;
	Hdmi_hal_set_audio_para(&audio_para);

	Hdmi_hal_audio_enable(0, 1);
#endif

    return 0;
}
Exemplo n.º 3
0
__s32 Hdmi_hal_init(void)
{
	//hdmi_audio_t audio_para;
	hdmi_core_initial();
	audio_info.channel_num  = 2;
	//for audio test
#if 0
	audio_para.ch0_en = 1;
	audio_para.sample_rate = 44100;
	Hdmi_hal_set_audio_para(&audio_para);
	Hdmi_hal_audio_enable(0, 1);
#endif
	return 0;
}
Exemplo n.º 4
0
__s32 Hdmi_hal_init(void)
{	
    //hdmi_audio_t audio_para;
	__disp_hdmi_func disp_func;
	//disp_func.hdmi_open = Hdmi_open;
	//disp_func.hdmi_close = Hdmi_close;
	disp_func.hdmi_set_mode = Hdmi_hal_set_display_mode;
	disp_func.hdmi_mode_support = Hdmi_hal_mode_support;
	disp_func.hdmi_get_HPD_status = Hdmi_hal_get_HPD;
	disp_func.hdmi_set_pll = Hdmi_hal_set_pll;
	disp_func.hdmi_get_input_csc = Hmdi_hal_get_input_csc;
	//BSP_disp_set_hdmi_func(&disp_func);
	hdmi_core_initial();
    audio_info.channel_num  = 2;
#ifdef __BOOT_OSAL__
{
    __u32 loop_count;
    
    loop_count = 3;
    while(loop_count--)
    {
        hdmi_main_task_loop();
    }
}
#endif
//for audio test
#if 0
    audio_para.ch0_en = 1;
    audio_para.sample_rate = 44100;
	Hdmi_hal_set_audio_para(&audio_para);

	Hdmi_hal_audio_enable(0, 1);
#endif

    return 0;
}
Exemplo n.º 5
0
__s32 Hdmi_Set_Audio_Para(hdmi_audio_t * audio_para)
{
	__inf("[Hdmi_Set_Audio_Para]\n");

	return Hdmi_hal_set_audio_para(audio_para);
}
Exemplo n.º 6
0
__s32 Hdmi_init(struct platform_device *dev)
{
	__audio_hdmi_func audio_func;
	__disp_hdmi_func disp_func;
	int err = 0;

	if (init_hdmi_obj()) {
		pr_warning("hdmi: init kobject failed\n");
		return -1;
	}

	run_sem = kmalloc(sizeof(struct semaphore), GFP_KERNEL | __GFP_ZERO);
	sema_init((struct semaphore *)run_sem, 0);

	hdmi_base = (void __iomem *) ghdmi.base_hdmi;
	hdmi_core_initial();
	err = hdmi_i2c_sunxi_probe(dev);
	if (err)
		return err;


	audio_info.channel_num = 2;
#if 0
	{ /* for audio test */
		hdmi_audio_t audio_para;

		audio_para.ch0_en = 1;
		audio_para.sample_rate = 44100;
		Hdmi_hal_set_audio_para(&audio_para);

		Hdmi_hal_audio_enable(0, 1);
	}
#endif


	/* Run main task once, should give EDID information directly */
	hdmi_main_task_loop();

	HDMI_task = kthread_create(Hdmi_run_thread, (void *)0, "hdmi proc");
	if (IS_ERR(HDMI_task)) {
		__s32 err = 0;

		__wrn("Unable to start kernel thread %s.\n", "hdmi proc");
		err = PTR_ERR(HDMI_task);
		HDMI_task = NULL;
		return err;
	}
	/* Launch main task loop */
	wake_up_process(HDMI_task);


	audio_func.hdmi_audio_enable = Hdmi_Audio_Enable;
	audio_func.hdmi_set_audio_para = Hdmi_Set_Audio_Para;
#if defined CONFIG_SND_SUNXI_SOC_HDMIAUDIO || \
    (defined CONFIG_SND_SUNXI_SOC_HDMIAUDIO_MODULE && \
     defined CONFIG_FB_SUNXI_HDMI_MODULE)
	audio_set_hdmi_func(&audio_func);
#endif

	disp_func.hdmi_wait_edid = hdmi_wait_edid;
	disp_func.Hdmi_open = Hdmi_open;
	disp_func.Hdmi_close = Hdmi_close;
	disp_func.hdmi_set_mode = Hdmi_set_display_mode;
	disp_func.hdmi_set_videomode = Hdmi_set_display_videomode;
	disp_func.hdmi_mode_support = Hdmi_mode_support;
	disp_func.hdmi_get_video_timing = hdmi_get_video_timing;
	disp_func.hdmi_get_HPD_status = Hdmi_get_HPD_status;
	disp_func.hdmi_set_pll = Hdmi_set_pll;
	disp_set_hdmi_func(&disp_func);

	return 0;
}