Esempio n. 1
0
static void hdmi_hpd_changed(struct hdmi_device *hdev, int state)
{
	u32 preset;
	int ret;

	if (state == switch_get_state(&hdev->hpd_switch))
		return;

	if (state) {
		ret = edid_update(hdev);
		if (ret == -ENODEV) {
			dev_err(hdev->dev, "failed to update edid\n");
			return;
		}

		preset = edid_preferred_preset(hdev);
		if (preset == V4L2_DV_INVALID)
			preset = HDMI_DEFAULT_PRESET;

		hdev->dvi_mode = !edid_supports_hdmi(hdev);
		hdev->cur_preset = preset;
		hdev->cur_conf = hdmi_preset2conf(preset);
	}

	switch_set_state(&hdev->hpd_switch, state);

	dev_info(hdev->dev, "%s\n", state ? "plugged" : "unplugged");
}
static void hdmi_hpd_changed(struct hdmi_device *hdev, int state)
{
    int ret;
#ifdef CONFIG_SEC_MHL_SUPPORT
    u32 audio_info = 0;
#endif

    if (state == switch_get_state(&hdev->hpd_switch))
        return;

    if (state) {
        ret = edid_update(hdev);
        if (ret == -ENODEV) {
            dev_err(hdev->dev, "failed to update edid\n");
            return;
        }

        hdev->dvi_mode = !edid_supports_hdmi(hdev);
        hdev->cur_timings = edid_preferred_preset(hdev);
        hdev->cur_conf = hdmi_timing2conf(&hdev->cur_timings);
    }

    switch_set_state(&hdev->hpd_switch, state);

    dev_info(hdev->dev, "%s\n", state ? "plugged" : "unplugged");

#ifdef CONFIG_SEC_MHL_SUPPORT
    if (state) {
        /*Audio CH event*/
        audio_info = edid_audio_informs(hdev);
        pr_err("[HDMI] send audio_info :: %x\n", audio_info);
        switch_set_state(&hdev->audio_ch_switch, (int)audio_info);

    } else {
        switch_set_state(&hdev->audio_ch_switch, -1);
    }
#endif
}
Esempio n. 3
0
static void hdmi_hpd_changed(struct hdmi_device *hdev, int state)
{
	int ret;

	if (state == switch_get_state(&hdev->hpd_switch))
		return;

	if (state) {
		ret = edid_update(hdev);
		if (ret == -ENODEV) {
			dev_err(hdev->dev, "failed to update edid\n");
			return;
		}

		hdev->dvi_mode = !edid_supports_hdmi(hdev);
		hdev->cur_timings = edid_preferred_preset(hdev);
		hdev->cur_conf = hdmi_timing2conf(&hdev->cur_timings);
	}

	switch_set_state(&hdev->hpd_switch, state);

	dev_info(hdev->dev, "%s\n", state ? "plugged" : "unplugged");
}