In theory function atombios_get_encoder_mode should report ATOM_ENCODER_MODE_HDMI when TV supports audio. Current we report ATOM_ENCODER_MODE_DVI if card is DCE4.
Is there any reason for it? Can we just drop that DCE4 condition? This fixme seems to be here since ever.
In theory function atombios_get_encoder_mode should report ATOM_ENCODER_MODE_HDMI when TV supports audio. Current we report ATOM_ENCODER_MODE_DVI if card is DCE4.
Is there any reason for it? Can we just drop that DCE4 condition? This fixme seems to be here since ever.
-- Rafał
2011/12/7 Rafał Miłecki zajec5@gmail.com:
In theory function atombios_get_encoder_mode should report ATOM_ENCODER_MODE_HDMI when TV supports audio. Current we report ATOM_ENCODER_MODE_DVI if card is DCE4.
Is there any reason for it? Can we just drop that DCE4 condition? This fixme seems to be here since ever.
It causes display corruption unless the hdmi packet engine is set up properly.
Alex
-- Rafał
W dniu 7 grudnia 2011 14:53 użytkownik Alex Deucher alexdeucher@gmail.com napisał:
2011/12/7 Rafał Miłecki zajec5@gmail.com:
In theory function atombios_get_encoder_mode should report ATOM_ENCODER_MODE_HDMI when TV supports audio. Current we report ATOM_ENCODER_MODE_DVI if card is DCE4.
Is there any reason for it? Can we just drop that DCE4 condition? This fixme seems to be here since ever.
It causes display corruption unless the hdmi packet engine is set up properly.
Even with radeon.audio=0?
2011/12/7 Rafał Miłecki zajec5@gmail.com:
W dniu 7 grudnia 2011 14:53 użytkownik Alex Deucher alexdeucher@gmail.com napisał:
2011/12/7 Rafał Miłecki zajec5@gmail.com:
In theory function atombios_get_encoder_mode should report ATOM_ENCODER_MODE_HDMI when TV supports audio. Current we report ATOM_ENCODER_MODE_DVI if card is DCE4.
Is there any reason for it? Can we just drop that DCE4 condition? This fixme seems to be here since ever.
It causes display corruption unless the hdmi packet engine is set up properly.
Even with radeon.audio=0?
No, as in that case, DVI is returned. On DCE3.0 and newer chips there is no explicit hdmi engine enable bit. You just select HDMI mode rather than DVI mode in the digital encoder setup. So if you select HDMI in the encoder setup and you have not configured the hdmi engine correctly you will git display corruption or a blank screen. Which is why I had to disable audio by default. Since audio is off by default, the DCE4 conditional in the hdmi case could be removed.
Alex
-- Rafał
W dniu 7 grudnia 2011 15:53 użytkownik Alex Deucher alexdeucher@gmail.com napisał:
2011/12/7 Rafał Miłecki zajec5@gmail.com:
W dniu 7 grudnia 2011 14:53 użytkownik Alex Deucher alexdeucher@gmail.com napisał:
2011/12/7 Rafał Miłecki zajec5@gmail.com:
In theory function atombios_get_encoder_mode should report ATOM_ENCODER_MODE_HDMI when TV supports audio. Current we report ATOM_ENCODER_MODE_DVI if card is DCE4.
Is there any reason for it? Can we just drop that DCE4 condition? This fixme seems to be here since ever.
It causes display corruption unless the hdmi packet engine is set up properly.
Even with radeon.audio=0?
No, as in that case, DVI is returned. On DCE3.0 and newer chips there is no explicit hdmi engine enable bit. You just select HDMI mode rather than DVI mode in the digital encoder setup. So if you select HDMI in the encoder setup and you have not configured the hdmi engine correctly you will git display corruption or a blank screen. Which is why I had to disable audio by default. Since audio is off by default, the DCE4 conditional in the hdmi case could be removed.
OK, it makes sense, thanks.
Btw I believe there *is* HDMI enabling bit on DCE3+, we probably just don't need to poke it manually :) It is bit 0x1000 in registers 0x7000, 0x7c00, 0x10800, 0x11400, 0x12000, 0x12c00
All my HDMI frames are ignored without that bit set.
2011/12/7 Rafał Miłecki zajec5@gmail.com:
W dniu 7 grudnia 2011 15:53 użytkownik Alex Deucher alexdeucher@gmail.com napisał:
2011/12/7 Rafał Miłecki zajec5@gmail.com:
W dniu 7 grudnia 2011 14:53 użytkownik Alex Deucher alexdeucher@gmail.com napisał:
2011/12/7 Rafał Miłecki zajec5@gmail.com:
In theory function atombios_get_encoder_mode should report ATOM_ENCODER_MODE_HDMI when TV supports audio. Current we report ATOM_ENCODER_MODE_DVI if card is DCE4.
Is there any reason for it? Can we just drop that DCE4 condition? This fixme seems to be here since ever.
It causes display corruption unless the hdmi packet engine is set up properly.
Even with radeon.audio=0?
No, as in that case, DVI is returned. On DCE3.0 and newer chips there is no explicit hdmi engine enable bit. You just select HDMI mode rather than DVI mode in the digital encoder setup. So if you select HDMI in the encoder setup and you have not configured the hdmi engine correctly you will git display corruption or a blank screen. Which is why I had to disable audio by default. Since audio is off by default, the DCE4 conditional in the hdmi case could be removed.
OK, it makes sense, thanks.
Btw I believe there *is* HDMI enabling bit on DCE3+, we probably just don't need to poke it manually :) It is bit 0x1000 in registers 0x7000, 0x7c00, 0x10800, 0x11400, 0x12000, 0x12c00
All my HDMI frames are ignored without that bit set.
As I mentioned above, that register (DIG_CNTL) is programmed by DIGxEncoderControl table based on the encoder mode selected (DP, LVDS, DVI, HDMI). Bits 14:12 select the DIG_MODE of the encoder. 0 = DP, 1 = LVDS, 2 = DVI, 3 = HDMI.
Alex
-- Rafał
dri-devel@lists.freedesktop.org