Re: [Intel-gfx] i915 4.9 regression: DP AUX CH sanitization no longer working on Asus desktops
On Wed, 24 May 2017, Daniel Drake wrote: > On Fri, May 5, 2017 at 4:29 AM, Ville Syrjälä > wrote: >> On Thu, May 04, 2017 at 02:52:09PM -0600, Daniel Drake wrote: >>> On Thu, May 4, 2017 at 2:37 PM, Ville Syrjälä >>> wrote: >>> > Please check if commit bb1d132935c2 ("drm/i915/vbt: split out defaults >>> > that are set when there is no VBT") fixes things for you. >>> >>> I think this is not going to help. This would only make a difference >>> when there is no VBT at all at which point we would see this message >>> in the logs: >>> >>> DRM_INFO("Failed to find VBIOS tables (VBT)\n"); >> >> No, the patch will in fact make a difference only when there is a VBT. > > We confirmed the mentioned patch fixes the issue. Apologies for > doubting you :) Thanks for the follow-up, I made a stable backport request [1] of the relevant commits to v4.9+. BR, Jani. [1] 87bmqfn9sp.fsf@intel.com">http://mid.mail-archive.com/87bmqfn9sp.fsf@intel.com -- Jani Nikula, Intel Open Source Technology Center ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [Intel-gfx] i915 4.9 regression: DP AUX CH sanitization no longer working on Asus desktops
On Fri, May 5, 2017 at 4:29 AM, Ville Syrjälä wrote: > On Thu, May 04, 2017 at 02:52:09PM -0600, Daniel Drake wrote: >> On Thu, May 4, 2017 at 2:37 PM, Ville Syrjälä >> wrote: >> > Please check if commit bb1d132935c2 ("drm/i915/vbt: split out defaults >> > that are set when there is no VBT") fixes things for you. >> >> I think this is not going to help. This would only make a difference >> when there is no VBT at all at which point we would see this message >> in the logs: >> >> DRM_INFO("Failed to find VBIOS tables (VBT)\n"); > > No, the patch will in fact make a difference only when there is a VBT. We confirmed the mentioned patch fixes the issue. Apologies for doubting you :) Thanks! Daniel ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [Intel-gfx] i915 4.9 regression: DP AUX CH sanitization no longer working on Asus desktops
On Thu, May 04, 2017 at 02:52:09PM -0600, Daniel Drake wrote: > On Thu, May 4, 2017 at 2:37 PM, Ville Syrjälä > wrote: > > Please check if commit bb1d132935c2 ("drm/i915/vbt: split out defaults > > that are set when there is no VBT") fixes things for you. > > I think this is not going to help. This would only make a difference > when there is no VBT at all at which point we would see this message > in the logs: > > DRM_INFO("Failed to find VBIOS tables (VBT)\n"); No, the patch will in fact make a difference only when there is a VBT. > > but in this case we have a VBT for ports B, C and E. > > [drm:intel_bios_init [i915]] Port B VBT info: DP:1 HDMI:1 DVI:1 EDP:0 CRT:0 > [drm:intel_bios_init [i915]] VBT HDMI level shift for port B: 8 > [drm:intel_bios_init [i915]] Port C VBT info: DP:0 HDMI:1 DVI:1 EDP:0 CRT:0 > [drm:intel_bios_init [i915]] VBT HDMI level shift for port C: 8 > [drm:intel_bios_init [i915]] Port E VBT info: DP:1 HDMI:0 DVI:0 EDP:0 CRT:0 > [drm:intel_bios_init [i915]] VBT HDMI level shift for port E: 0 > > Let me know if I'm missing something and we will test it anyway Please do. -- Ville Syrjälä Intel OTC ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [Intel-gfx] i915 4.9 regression: DP AUX CH sanitization no longer working on Asus desktops
On Thu, 04 May 2017, Daniel Drake wrote: > Hi, > > Numerous Asus desktops and All-in-one computers (e.g. D520MT) have a > regression on Linux 4.9 where the VGA output is shown all-white. Would you mind filing a bug over at [1], essentially with this message copy-pasted and the dmesg attached to the bug please? Thanks, Jani. [1] https://bugs.freedesktop.org/enter_bug.cgi?product=DRI&component=DRM/Intel > > This is a regression caused by: > > commit 0ce140d45a8398b501934ac289aef0eb7f47c596 > Author: Ville Syrjälä > Date: Tue Oct 11 20:52:47 2016 +0300 > > drm/i915: Clean up DDI DDC/AUX CH sanitation > > > On these platforms, the VGA output is detected as DP (presumably > theres a DP-to-VGA converter on the motherboard). The sanitization > done by the code that was removed here was correctly realising that > port E's DP aux channel was DP_AUX_A, so it disabled DP output on port > A, also showing this message: > >[drm:intel_ddi_init] VBT says port A is not DVI/HDMI/DP compatible, > respect it > > But after this cleanup commit, both port A and port E are activated > and the screen shows all-white. Reverting the commit restores usable > VGA display output. > > The reason the new implementation doesn't catch the duplicate > configuration is because the new code only considers ports that are > present in the VBT where parse_ddi_port() has run on them (in order to > set that port's info->alternate_aux_channel). > > In this case, port A is not present in the VBT so it will not have > info->alternate_aux_channel set, and the new sanitize_aux_ch will run > on port E but will not consider any overlap with port A. > > debug logs from an affected kernel: > https://gist.github.com/dsd/7e56c9bca7b2345b678cfacdab30ec55 > > Should we modify sanitize_aux_ch to look at all aux channels, not only > for the ports specified in the VBT? > > Thanks > Daniel > ___ > dri-devel mailing list > dri-de...@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel -- Jani Nikula, Intel Open Source Technology Center ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [Intel-gfx] i915 4.9 regression: DP AUX CH sanitization no longer working on Asus desktops
On Thu, May 04, 2017 at 02:52:09PM -0600, Daniel Drake wrote: > On Thu, May 4, 2017 at 2:37 PM, Ville Syrjälä > wrote: > > Please check if commit bb1d132935c2 ("drm/i915/vbt: split out defaults > > that are set when there is no VBT") fixes things for you. > > I think this is not going to help. This would only make a difference > when there is no VBT at all at which point we would see this message > in the logs: > > DRM_INFO("Failed to find VBIOS tables (VBT)\n"); > > but in this case we have a VBT for ports B, C and E. > > [drm:intel_bios_init [i915]] Port B VBT info: DP:1 HDMI:1 DVI:1 EDP:0 CRT:0 > [drm:intel_bios_init [i915]] VBT HDMI level shift for port B: 8 > [drm:intel_bios_init [i915]] Port C VBT info: DP:0 HDMI:1 DVI:1 EDP:0 CRT:0 > [drm:intel_bios_init [i915]] VBT HDMI level shift for port C: 8 > [drm:intel_bios_init [i915]] Port E VBT info: DP:1 HDMI:0 DVI:0 EDP:0 CRT:0 > [drm:intel_bios_init [i915]] VBT HDMI level shift for port E: 0 > > Let me know if I'm missing something and we will test it anyway > I think now without the "Split out defaults that are set when there is no VBT" patch, what happens is it enables DP on PORTA by default and then since there is a DP-VGA adapter on Port E it also enables DP on Port E and since both of these ports use the same AUX channel, it causes the AUX CH sanitization issues. Atleast that's my guess at triage. So after the correct VBT parsing, it should actually not enable any AUX transactions on Port A and detect that no child devices connected to Port A. So the AUX CH should only be used for Port E and VGA output should work fine. Manasi > Thanks > Daniel > ___ > dri-devel mailing list > dri-de...@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [Intel-gfx] i915 4.9 regression: DP AUX CH sanitization no longer working on Asus desktops
On Thu, May 4, 2017 at 2:37 PM, Ville Syrjälä wrote: > Please check if commit bb1d132935c2 ("drm/i915/vbt: split out defaults > that are set when there is no VBT") fixes things for you. I think this is not going to help. This would only make a difference when there is no VBT at all at which point we would see this message in the logs: DRM_INFO("Failed to find VBIOS tables (VBT)\n"); but in this case we have a VBT for ports B, C and E. [drm:intel_bios_init [i915]] Port B VBT info: DP:1 HDMI:1 DVI:1 EDP:0 CRT:0 [drm:intel_bios_init [i915]] VBT HDMI level shift for port B: 8 [drm:intel_bios_init [i915]] Port C VBT info: DP:0 HDMI:1 DVI:1 EDP:0 CRT:0 [drm:intel_bios_init [i915]] VBT HDMI level shift for port C: 8 [drm:intel_bios_init [i915]] Port E VBT info: DP:1 HDMI:0 DVI:0 EDP:0 CRT:0 [drm:intel_bios_init [i915]] VBT HDMI level shift for port E: 0 Let me know if I'm missing something and we will test it anyway Thanks Daniel ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [Intel-gfx] i915 4.9 regression: DP AUX CH sanitization no longer working on Asus desktops
On Thu, May 04, 2017 at 02:21:26PM -0600, Daniel Drake wrote: > Hi, > > Numerous Asus desktops and All-in-one computers (e.g. D520MT) have a > regression on Linux 4.9 where the VGA output is shown all-white. > > This is a regression caused by: > > commit 0ce140d45a8398b501934ac289aef0eb7f47c596 > Author: Ville Syrjälä > Date: Tue Oct 11 20:52:47 2016 +0300 > > drm/i915: Clean up DDI DDC/AUX CH sanitation > > > On these platforms, the VGA output is detected as DP (presumably > theres a DP-to-VGA converter on the motherboard). The sanitization > done by the code that was removed here was correctly realising that > port E's DP aux channel was DP_AUX_A, so it disabled DP output on port > A, also showing this message: > >[drm:intel_ddi_init] VBT says port A is not DVI/HDMI/DP compatible, > respect it > > But after this cleanup commit, both port A and port E are activated > and the screen shows all-white. Reverting the commit restores usable > VGA display output. > > The reason the new implementation doesn't catch the duplicate > configuration is because the new code only considers ports that are > present in the VBT where parse_ddi_port() has run on them (in order to > set that port's info->alternate_aux_channel). > > In this case, port A is not present in the VBT so it will not have > info->alternate_aux_channel set, and the new sanitize_aux_ch will run > on port E but will not consider any overlap with port A. > > debug logs from an affected kernel: > https://gist.github.com/dsd/7e56c9bca7b2345b678cfacdab30ec55 > > Should we modify sanitize_aux_ch to look at all aux channels, not only > for the ports specified in the VBT? Please check if commit bb1d132935c2 ("drm/i915/vbt: split out defaults that are set when there is no VBT") fixes things for you. -- Ville Syrjälä Intel OTC ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
[Intel-gfx] i915 4.9 regression: DP AUX CH sanitization no longer working on Asus desktops
Hi, Numerous Asus desktops and All-in-one computers (e.g. D520MT) have a regression on Linux 4.9 where the VGA output is shown all-white. This is a regression caused by: commit 0ce140d45a8398b501934ac289aef0eb7f47c596 Author: Ville Syrjälä Date: Tue Oct 11 20:52:47 2016 +0300 drm/i915: Clean up DDI DDC/AUX CH sanitation On these platforms, the VGA output is detected as DP (presumably theres a DP-to-VGA converter on the motherboard). The sanitization done by the code that was removed here was correctly realising that port E's DP aux channel was DP_AUX_A, so it disabled DP output on port A, also showing this message: [drm:intel_ddi_init] VBT says port A is not DVI/HDMI/DP compatible, respect it But after this cleanup commit, both port A and port E are activated and the screen shows all-white. Reverting the commit restores usable VGA display output. The reason the new implementation doesn't catch the duplicate configuration is because the new code only considers ports that are present in the VBT where parse_ddi_port() has run on them (in order to set that port's info->alternate_aux_channel). In this case, port A is not present in the VBT so it will not have info->alternate_aux_channel set, and the new sanitize_aux_ch will run on port E but will not consider any overlap with port A. debug logs from an affected kernel: https://gist.github.com/dsd/7e56c9bca7b2345b678cfacdab30ec55 Should we modify sanitize_aux_ch to look at all aux channels, not only for the ports specified in the VBT? Thanks Daniel ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx