Re: [Intel-gfx] [Regression] "drm/i915: Implement display w/a #1143" breaks HDMI on ASUS GL552VW
On Tue, Oct 13, 2020 at 02:15:32PM +0300, Ville Syrjälä wrote: > On Tue, Oct 13, 2020 at 01:20:35PM +0800, Kai-Heng Feng wrote: > > > > > > > On Sep 3, 2020, at 14:26, Kai-Heng Feng > > > wrote: > > > > > > > > > > > >> On Aug 26, 2020, at 21:05, Ville Syrjälä > > >> wrote: > > >> > > >> On Wed, Aug 26, 2020 at 12:40:15PM +0800, Kai-Heng Feng wrote: > > >>> Hi, > > >>> > > On Aug 25, 2020, at 02:46, Runyan, Arthur J > > wrote: > > > > I remember some strangeness about the blnclegdisbl. I'll see if I can > > dig up some more. > > >>> > > >>> > > >>> The register read can be found at [1] and [2]. > > >>> > > >>> [1] > > >>> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comments/119 > > >>> [2] > > >>> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comments/120 > > >> > > >> Looks like it's using the 400mV/0dB setting. Can we get the same dumps > > >> with the driver loaded just to confirm whether we're using different > > >> settings? > > >> > > >> Also a dump of /sys/kernel/debug/dri/0/i915_vbt would be good > > >> to have. > > > > > > https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comments/124 > > > https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comments/125 > > > https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comments/126 > > > > A gentle ping... > > I cooked up some hacks for you to try: > git://github.com/vsyrjala/linux.git skl_vswing_wa_hacks > > An upstream bug report would probably be a good idea so that the > communication doesn't have to go through a middle man over email... any update on this? Cc: Jani > > > > > > > > > Kai-Heng > > > > > >> > > >>> > > >>> Kai-Heng > > >>> > > > > -Original Message- > > From: Ville Syrjälä > > Sent: Monday, August 24, 2020 11:05 AM > > To: Kai-Heng Feng > > Cc: Runyan, Arthur J ; Vivi, Rodrigo > > ; intel-gfx > > Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" > > breaks HDMI on ASUS GL552VW > > > > On Mon, Aug 17, 2020 at 02:17:49PM +0800, Kai-Heng Feng wrote: > > > > > > > > >> On Aug 17, 2020, at 00:22, Runyan, Arthur J > > >> wrote: > > >> > > >> You'll need to read out the DDI_BUF_TRANS_* and DISPIO_CR_TX_BMU_CR0 > > >> registers at boot before i915 programs them and compare with what > > >> driver programs. > > >> Rodrigo can probably show you how. > > > > > > Right, I'll wait for a patch then :) > > > > To grab the BIOS reg values we just have to make sure the driver > > doesn't load. Eg. pass something like > > "modprobe.blacklist=i915,snd_hda_intel 3" to the kernel cmdline (+ > > whatever other magic ubuntu might require). Confirm with something > > like "lsmod | grep i915" to make sure the driver didn't sneak in > > despite our best efforts. > > > > Then we can dump the registers with intel_reg from igt-gpu-tools: > > intel_reg read --count 20 0x64E00 0x64E60 0x64EC0 0x64F20 0x64F80 > > intel_reg read 0x64000 0x64100 0x64200 0x64300 0x64400 0x6C00C > > > > The only somewhat suspicious thing I noticed is that we treat > > DISPIO_CR_TX_BMU_CR0:tx_blnclegdisbl as a bitmask (bit 23 -> DDI A, > > bit 24 -> DDI B, etc.) whereas the spec seems to be saying that we > > should just zero out all the bits of tx_blnclegdisbl when any DDI > > needs iboost. Art, is our interpretation of the bits correct or just a > > fairy tale? > > > > > > > > Kai-Heng > > > > > >> > > >> -Original Message- > > >> From: Kai-Heng Feng > > >> Sent: Thursday, August 13, 2020 10:14 PM > > >> To: Runyan, Arthur J > > >> Cc: Vivi, Rodrigo ; Ville Syrjälä > > >> ; intel-gfx > > >> > > >> Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" > > >> breaks HDMI on ASUS GL552VW > > >> > > >> Hi, > > >> > > >>> On Aug 14, 2020, at 01:56, Runyan, Arthur J > > >>> wrote: > > >>> > > >>> The workaround is freeing up stuck vswing values to let new vswing > > >>> programming kick in. Maybe the new vswing values are wrong. > > >>> Try checking the vswing that driver programs against what BIOS/GOP > > >>> programs. > > >> > > >> Do you mean to print out value of I915_READ()? > > >> val = I915_READ(CHICKEN_TRANS(transcoder)); > > >> > > >> Kai-Heng > > >> > > >>> > > >>> -Original Message- > > >>> From: Vivi, Rodrigo > > >>> Sent: Thursday, August 13, 2020 9:50 AM > > >>> To: Kai-Heng Feng ; Runyan, Arthur J > > >>> > > >>> Cc: Ville Syrjälä ; intel-gfx > > >>> > > >>> Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" > > >>> breaks HDMI on ASUS GL552VW > > >>> > > >>> Art, any comment
Re: [Intel-gfx] [Regression] "drm/i915: Implement display w/a #1143" breaks HDMI on ASUS GL552VW
Hi, > -Original Message- > From: Kai-Heng Feng > Sent: tiistai 13. lokakuuta 2020 15.18 > To: Saarinen, Jani > Cc: Ville Syrjälä ; intel-gfx g...@lists.freedesktop.org>; Runyan, Arthur J > Subject: Re: [Intel-gfx] [Regression] "drm/i915: Implement display w/a #1143" > breaks HDMI on ASUS GL552VW > > > > > On Oct 13, 2020, at 19:50, Saarinen, Jani wrote: > > > > Hi, > >> -Original Message- > >> From: Intel-gfx On Behalf > >> Of Ville Syrjälä > >> Sent: tiistai 13. lokakuuta 2020 14.16 > >> To: Kai-Heng Feng > >> Cc: intel-gfx ; Runyan, Arthur J > >> > >> Subject: Re: [Intel-gfx] [Regression] "drm/i915: Implement display w/a > #1143" > >> breaks HDMI on ASUS GL552VW > >> > >> On Tue, Oct 13, 2020 at 01:20:35PM +0800, Kai-Heng Feng wrote: > >>> > >>> > >>>> On Sep 3, 2020, at 14:26, Kai-Heng Feng > >>>> > >> wrote: > >>>> > >>>> > >>>> > >>>>> On Aug 26, 2020, at 21:05, Ville Syrjälä > >>>>> > >> wrote: > >>>>> > >>>>> On Wed, Aug 26, 2020 at 12:40:15PM +0800, Kai-Heng Feng wrote: > >>>>>> Hi, > >>>>>> > >>>>>>> On Aug 25, 2020, at 02:46, Runyan, Arthur J > >> wrote: > >>>>>>> > >>>>>>> I remember some strangeness about the blnclegdisbl. I'll see if > >>>>>>> I can dig > >> up some more. > >>>>>> > >>>>>> > >>>>>> The register read can be found at [1] and [2]. > >>>>>> > >>>>>> [1] > >>>>>> > >> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comme > >>>>>> nts/119 [2] > >>>>>> > >> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comme > >>>>>> nts/120 > >>>>> > >>>>> Looks like it's using the 400mV/0dB setting. Can we get the same > >>>>> dumps with the driver loaded just to confirm whether we're using > >>>>> different settings? > >>>>> > >>>>> Also a dump of /sys/kernel/debug/dri/0/i915_vbt would be good to > >>>>> have. > >>>> > >>>> > >> > https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comment > >>>> s/124 > >>>> > >> > https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comment > >>>> s/125 > >>>> > >> > https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comment > >>>> s/126 > >>> > >>> A gentle ping... > >> > >> I cooked up some hacks for you to try: > >> git://github.com/vsyrjala/linux.git skl_vswing_wa_hacks > >> > >> An upstream bug report would probably be a good idea so that the > >> communication doesn't have to go through a middle man over email... > > Agree, please make gitlab issue on this. > > It was filed two months ago: > https://gitlab.freedesktop.org/drm/intel/-/issues/2181 Sigh, thanks. > > > > > >> > >>> > >>>> > >>>> Kai-Heng > >>>> > >>>>> > >>>>>> > >>>>>> Kai-Heng > >>>>>> > >>>>>>> > >>>>>>> -Original Message- > >>>>>>> From: Ville Syrjälä > >>>>>>> Sent: Monday, August 24, 2020 11:05 AM > >>>>>>> To: Kai-Heng Feng > >>>>>>> Cc: Runyan, Arthur J ; Vivi, Rodrigo > >>>>>>> ; intel-gfx > >>>>>>> > >>>>>>> Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" > >>>>>>> breaks HDMI on ASUS GL552VW > >>>>>>> > >>>>>>> On Mon, Aug 17, 2020 at 02:17:49PM +0800, Kai-Heng Feng wrote: > >>>>>>>> > >>>>>>>> > >>>>>>>>> On Aug 17, 2020, at 00:22, Runyan, Arthur J > >> wrote: > >>>>>>>>> > >>>>>>>>> You'll need to read out the DDI_BUF_TRANS_* and > >> DISPIO_CR_TX_BMU_CR0 registers at boot before i9
Re: [Intel-gfx] [Regression] "drm/i915: Implement display w/a #1143" breaks HDMI on ASUS GL552VW
> On Oct 13, 2020, at 19:50, Saarinen, Jani wrote: > > Hi, >> -Original Message- >> From: Intel-gfx On Behalf Of Ville >> Syrjälä >> Sent: tiistai 13. lokakuuta 2020 14.16 >> To: Kai-Heng Feng >> Cc: intel-gfx ; Runyan, Arthur J >> >> Subject: Re: [Intel-gfx] [Regression] "drm/i915: Implement display w/a #1143" >> breaks HDMI on ASUS GL552VW >> >> On Tue, Oct 13, 2020 at 01:20:35PM +0800, Kai-Heng Feng wrote: >>> >>> >>>> On Sep 3, 2020, at 14:26, Kai-Heng Feng >> wrote: >>>> >>>> >>>> >>>>> On Aug 26, 2020, at 21:05, Ville Syrjälä >> wrote: >>>>> >>>>> On Wed, Aug 26, 2020 at 12:40:15PM +0800, Kai-Heng Feng wrote: >>>>>> Hi, >>>>>> >>>>>>> On Aug 25, 2020, at 02:46, Runyan, Arthur J >> wrote: >>>>>>> >>>>>>> I remember some strangeness about the blnclegdisbl. I'll see if I can >>>>>>> dig >> up some more. >>>>>> >>>>>> >>>>>> The register read can be found at [1] and [2]. >>>>>> >>>>>> [1] >>>>>> >> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comme >>>>>> nts/119 [2] >>>>>> >> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comme >>>>>> nts/120 >>>>> >>>>> Looks like it's using the 400mV/0dB setting. Can we get the same >>>>> dumps with the driver loaded just to confirm whether we're using >>>>> different settings? >>>>> >>>>> Also a dump of /sys/kernel/debug/dri/0/i915_vbt would be good to >>>>> have. >>>> >>>> >> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comment >>>> s/124 >>>> >> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comment >>>> s/125 >>>> >> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comment >>>> s/126 >>> >>> A gentle ping... >> >> I cooked up some hacks for you to try: >> git://github.com/vsyrjala/linux.git skl_vswing_wa_hacks >> >> An upstream bug report would probably be a good idea so that the >> communication doesn't have to go through a middle man over email... > Agree, please make gitlab issue on this. It was filed two months ago: https://gitlab.freedesktop.org/drm/intel/-/issues/2181 > >> >>> >>>> >>>> Kai-Heng >>>> >>>>> >>>>>> >>>>>> Kai-Heng >>>>>> >>>>>>> >>>>>>> -Original Message- >>>>>>> From: Ville Syrjälä >>>>>>> Sent: Monday, August 24, 2020 11:05 AM >>>>>>> To: Kai-Heng Feng >>>>>>> Cc: Runyan, Arthur J ; Vivi, Rodrigo >>>>>>> ; intel-gfx >>>>>>> >>>>>>> Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" >>>>>>> breaks HDMI on ASUS GL552VW >>>>>>> >>>>>>> On Mon, Aug 17, 2020 at 02:17:49PM +0800, Kai-Heng Feng wrote: >>>>>>>> >>>>>>>> >>>>>>>>> On Aug 17, 2020, at 00:22, Runyan, Arthur J >> wrote: >>>>>>>>> >>>>>>>>> You'll need to read out the DDI_BUF_TRANS_* and >> DISPIO_CR_TX_BMU_CR0 registers at boot before i915 programs them and >> compare with what driver programs. >>>>>>>>> Rodrigo can probably show you how. >>>>>>>> >>>>>>>> Right, I'll wait for a patch then :) >>>>>>> >>>>>>> To grab the BIOS reg values we just have to make sure the driver doesn't >> load. Eg. pass something like "modprobe.blacklist=i915,snd_hda_intel 3" to >> the >> kernel cmdline (+ whatever other magic ubuntu might require). Confirm with >> something like "lsmod | grep i915" to make sure the driver didn't sneak in >> despite our best efforts. >>>>>>> >>>>>>> Then we can dump the registers with intel_reg from igt-gpu-tools: >>>>>>> intel_reg read --count 20 0x64E00 0x64E60 0x64EC0 0x64F20 0x64F80 >>>>
Re: [Intel-gfx] [Regression] "drm/i915: Implement display w/a #1143" breaks HDMI on ASUS GL552VW
Hi, > -Original Message- > From: Intel-gfx On Behalf Of Ville > Syrjälä > Sent: tiistai 13. lokakuuta 2020 14.16 > To: Kai-Heng Feng > Cc: intel-gfx ; Runyan, Arthur J > > Subject: Re: [Intel-gfx] [Regression] "drm/i915: Implement display w/a #1143" > breaks HDMI on ASUS GL552VW > > On Tue, Oct 13, 2020 at 01:20:35PM +0800, Kai-Heng Feng wrote: > > > > > > > On Sep 3, 2020, at 14:26, Kai-Heng Feng > wrote: > > > > > > > > > > > >> On Aug 26, 2020, at 21:05, Ville Syrjälä > wrote: > > >> > > >> On Wed, Aug 26, 2020 at 12:40:15PM +0800, Kai-Heng Feng wrote: > > >>> Hi, > > >>> > > >>>> On Aug 25, 2020, at 02:46, Runyan, Arthur J > wrote: > > >>>> > > >>>> I remember some strangeness about the blnclegdisbl. I'll see if I can > > >>>> dig > up some more. > > >>> > > >>> > > >>> The register read can be found at [1] and [2]. > > >>> > > >>> [1] > > >>> > https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comme > > >>> nts/119 [2] > > >>> > https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comme > > >>> nts/120 > > >> > > >> Looks like it's using the 400mV/0dB setting. Can we get the same > > >> dumps with the driver loaded just to confirm whether we're using > > >> different settings? > > >> > > >> Also a dump of /sys/kernel/debug/dri/0/i915_vbt would be good to > > >> have. > > > > > > > https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comment > > > s/124 > > > > https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comment > > > s/125 > > > > https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comment > > > s/126 > > > > A gentle ping... > > I cooked up some hacks for you to try: > git://github.com/vsyrjala/linux.git skl_vswing_wa_hacks > > An upstream bug report would probably be a good idea so that the > communication doesn't have to go through a middle man over email... Agree, please make gitlab issue on this. > > > > > > > > > Kai-Heng > > > > > >> > > >>> > > >>> Kai-Heng > > >>> > > >>>> > > >>>> -Original Message- > > >>>> From: Ville Syrjälä > > >>>> Sent: Monday, August 24, 2020 11:05 AM > > >>>> To: Kai-Heng Feng > > >>>> Cc: Runyan, Arthur J ; Vivi, Rodrigo > > >>>> ; intel-gfx > > >>>> > > >>>> Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" > > >>>> breaks HDMI on ASUS GL552VW > > >>>> > > >>>> On Mon, Aug 17, 2020 at 02:17:49PM +0800, Kai-Heng Feng wrote: > > >>>>> > > >>>>> > > >>>>>> On Aug 17, 2020, at 00:22, Runyan, Arthur J > wrote: > > >>>>>> > > >>>>>> You'll need to read out the DDI_BUF_TRANS_* and > DISPIO_CR_TX_BMU_CR0 registers at boot before i915 programs them and > compare with what driver programs. > > >>>>>> Rodrigo can probably show you how. > > >>>>> > > >>>>> Right, I'll wait for a patch then :) > > >>>> > > >>>> To grab the BIOS reg values we just have to make sure the driver > > >>>> doesn't > load. Eg. pass something like "modprobe.blacklist=i915,snd_hda_intel 3" to the > kernel cmdline (+ whatever other magic ubuntu might require). Confirm with > something like "lsmod | grep i915" to make sure the driver didn't sneak in > despite our best efforts. > > >>>> > > >>>> Then we can dump the registers with intel_reg from igt-gpu-tools: > > >>>> intel_reg read --count 20 0x64E00 0x64E60 0x64EC0 0x64F20 0x64F80 > > >>>> intel_reg read 0x64000 0x64100 0x64200 0x64300 0x64400 0x6C00C > > >>>> > > >>>> The only somewhat suspicious thing I noticed is that we treat > DISPIO_CR_TX_BMU_CR0:tx_blnclegdisbl as a bitmask (bit 23 -> DDI A, bit 24 -> > DDI B, etc.) whereas the spec seems to be saying that we should just zero out > all > the bits of tx_blnclegdisbl when any DDI needs iboost. Art, is our > interpretatio
Re: [Intel-gfx] [Regression] "drm/i915: Implement display w/a #1143" breaks HDMI on ASUS GL552VW
On Tue, Oct 13, 2020 at 01:20:35PM +0800, Kai-Heng Feng wrote: > > > > On Sep 3, 2020, at 14:26, Kai-Heng Feng wrote: > > > > > > > >> On Aug 26, 2020, at 21:05, Ville Syrjälä > >> wrote: > >> > >> On Wed, Aug 26, 2020 at 12:40:15PM +0800, Kai-Heng Feng wrote: > >>> Hi, > >>> > On Aug 25, 2020, at 02:46, Runyan, Arthur J > wrote: > > I remember some strangeness about the blnclegdisbl. I'll see if I can > dig up some more. > >>> > >>> > >>> The register read can be found at [1] and [2]. > >>> > >>> [1] > >>> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comments/119 > >>> [2] > >>> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comments/120 > >> > >> Looks like it's using the 400mV/0dB setting. Can we get the same dumps > >> with the driver loaded just to confirm whether we're using different > >> settings? > >> > >> Also a dump of /sys/kernel/debug/dri/0/i915_vbt would be good > >> to have. > > > > https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comments/124 > > https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comments/125 > > https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comments/126 > > A gentle ping... I cooked up some hacks for you to try: git://github.com/vsyrjala/linux.git skl_vswing_wa_hacks An upstream bug report would probably be a good idea so that the communication doesn't have to go through a middle man over email... > > > > > Kai-Heng > > > >> > >>> > >>> Kai-Heng > >>> > > -Original Message- > From: Ville Syrjälä > Sent: Monday, August 24, 2020 11:05 AM > To: Kai-Heng Feng > Cc: Runyan, Arthur J ; Vivi, Rodrigo > ; intel-gfx > Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" breaks > HDMI on ASUS GL552VW > > On Mon, Aug 17, 2020 at 02:17:49PM +0800, Kai-Heng Feng wrote: > > > > > >> On Aug 17, 2020, at 00:22, Runyan, Arthur J > >> wrote: > >> > >> You'll need to read out the DDI_BUF_TRANS_* and DISPIO_CR_TX_BMU_CR0 > >> registers at boot before i915 programs them and compare with what > >> driver programs. > >> Rodrigo can probably show you how. > > > > Right, I'll wait for a patch then :) > > To grab the BIOS reg values we just have to make sure the driver doesn't > load. Eg. pass something like "modprobe.blacklist=i915,snd_hda_intel 3" > to the kernel cmdline (+ whatever other magic ubuntu might require). > Confirm with something like "lsmod | grep i915" to make sure the driver > didn't sneak in despite our best efforts. > > Then we can dump the registers with intel_reg from igt-gpu-tools: > intel_reg read --count 20 0x64E00 0x64E60 0x64EC0 0x64F20 0x64F80 > intel_reg read 0x64000 0x64100 0x64200 0x64300 0x64400 0x6C00C > > The only somewhat suspicious thing I noticed is that we treat > DISPIO_CR_TX_BMU_CR0:tx_blnclegdisbl as a bitmask (bit 23 -> DDI A, bit > 24 -> DDI B, etc.) whereas the spec seems to be saying that we should > just zero out all the bits of tx_blnclegdisbl when any DDI needs iboost. > Art, is our interpretation of the bits correct or just a fairy tale? > > > > > Kai-Heng > > > >> > >> -Original Message- > >> From: Kai-Heng Feng > >> Sent: Thursday, August 13, 2020 10:14 PM > >> To: Runyan, Arthur J > >> Cc: Vivi, Rodrigo ; Ville Syrjälä > >> ; intel-gfx > >> > >> Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" > >> breaks HDMI on ASUS GL552VW > >> > >> Hi, > >> > >>> On Aug 14, 2020, at 01:56, Runyan, Arthur J > >>> wrote: > >>> > >>> The workaround is freeing up stuck vswing values to let new vswing > >>> programming kick in. Maybe the new vswing values are wrong. > >>> Try checking the vswing that driver programs against what BIOS/GOP > >>> programs. > >> > >> Do you mean to print out value of I915_READ()? > >> val = I915_READ(CHICKEN_TRANS(transcoder)); > >> > >> Kai-Heng > >> > >>> > >>> -Original Message- > >>> From: Vivi, Rodrigo > >>> Sent: Thursday, August 13, 2020 9:50 AM > >>> To: Kai-Heng Feng ; Runyan, Arthur J > >>> > >>> Cc: Ville Syrjälä ; intel-gfx > >>> > >>> Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" > >>> breaks HDMI on ASUS GL552VW > >>> > >>> Art, any comment here? > >>> > >>> I just checked and the W/a 1143 is implemented as described, but it > >>> is failing HDMI on this hybrid system. > >>> > On Aug 12, 2020, at 9:07 PM, Kai-Heng Feng > wrote: > > Hi, > > There's a regression reported that HDMI output stops working after > os upgrade: >
Re: [Intel-gfx] [Regression] "drm/i915: Implement display w/a #1143" breaks HDMI on ASUS GL552VW
> On Sep 3, 2020, at 14:26, Kai-Heng Feng wrote: > > > >> On Aug 26, 2020, at 21:05, Ville Syrjälä >> wrote: >> >> On Wed, Aug 26, 2020 at 12:40:15PM +0800, Kai-Heng Feng wrote: >>> Hi, >>> On Aug 25, 2020, at 02:46, Runyan, Arthur J wrote: I remember some strangeness about the blnclegdisbl. I'll see if I can dig up some more. >>> >>> >>> The register read can be found at [1] and [2]. >>> >>> [1] >>> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comments/119 >>> [2] >>> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comments/120 >> >> Looks like it's using the 400mV/0dB setting. Can we get the same dumps >> with the driver loaded just to confirm whether we're using different >> settings? >> >> Also a dump of /sys/kernel/debug/dri/0/i915_vbt would be good >> to have. > > https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comments/124 > https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comments/125 > https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comments/126 A gentle ping... > > Kai-Heng > >> >>> >>> Kai-Heng >>> -Original Message- From: Ville Syrjälä Sent: Monday, August 24, 2020 11:05 AM To: Kai-Heng Feng Cc: Runyan, Arthur J ; Vivi, Rodrigo ; intel-gfx Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" breaks HDMI on ASUS GL552VW On Mon, Aug 17, 2020 at 02:17:49PM +0800, Kai-Heng Feng wrote: > > >> On Aug 17, 2020, at 00:22, Runyan, Arthur J >> wrote: >> >> You'll need to read out the DDI_BUF_TRANS_* and DISPIO_CR_TX_BMU_CR0 >> registers at boot before i915 programs them and compare with what driver >> programs. >> Rodrigo can probably show you how. > > Right, I'll wait for a patch then :) To grab the BIOS reg values we just have to make sure the driver doesn't load. Eg. pass something like "modprobe.blacklist=i915,snd_hda_intel 3" to the kernel cmdline (+ whatever other magic ubuntu might require). Confirm with something like "lsmod | grep i915" to make sure the driver didn't sneak in despite our best efforts. Then we can dump the registers with intel_reg from igt-gpu-tools: intel_reg read --count 20 0x64E00 0x64E60 0x64EC0 0x64F20 0x64F80 intel_reg read 0x64000 0x64100 0x64200 0x64300 0x64400 0x6C00C The only somewhat suspicious thing I noticed is that we treat DISPIO_CR_TX_BMU_CR0:tx_blnclegdisbl as a bitmask (bit 23 -> DDI A, bit 24 -> DDI B, etc.) whereas the spec seems to be saying that we should just zero out all the bits of tx_blnclegdisbl when any DDI needs iboost. Art, is our interpretation of the bits correct or just a fairy tale? > > Kai-Heng > >> >> -Original Message- >> From: Kai-Heng Feng >> Sent: Thursday, August 13, 2020 10:14 PM >> To: Runyan, Arthur J >> Cc: Vivi, Rodrigo ; Ville Syrjälä >> ; intel-gfx >> >> Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" >> breaks HDMI on ASUS GL552VW >> >> Hi, >> >>> On Aug 14, 2020, at 01:56, Runyan, Arthur J >>> wrote: >>> >>> The workaround is freeing up stuck vswing values to let new vswing >>> programming kick in. Maybe the new vswing values are wrong. >>> Try checking the vswing that driver programs against what BIOS/GOP >>> programs. >> >> Do you mean to print out value of I915_READ()? >> val = I915_READ(CHICKEN_TRANS(transcoder)); >> >> Kai-Heng >> >>> >>> -Original Message- >>> From: Vivi, Rodrigo >>> Sent: Thursday, August 13, 2020 9:50 AM >>> To: Kai-Heng Feng ; Runyan, Arthur J >>> >>> Cc: Ville Syrjälä ; intel-gfx >>> >>> Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" >>> breaks HDMI on ASUS GL552VW >>> >>> Art, any comment here? >>> >>> I just checked and the W/a 1143 is implemented as described, but it is >>> failing HDMI on this hybrid system. >>> On Aug 12, 2020, at 9:07 PM, Kai-Heng Feng wrote: Hi, There's a regression reported that HDMI output stops working after os upgrade: https://bugs.launchpad.net/bugs/1871721 Here's the bisect result: 0519c102f5285476d7868a387bdb6c58385e4074 is the first bad commit commit 0519c102f5285476d7868a387bdb6c58385e4074 Author: Ville Syrjälä Date: Mon Jan 22 19:41:31 2018 +0200 drm/i915: Implement display w/a #1143 Apparently SKL/KBL/CFL need some manual help to get the programmed HDMI vswing to stick. Implement the relevant workaround (display w/a #1143). Note that the
Re: [Intel-gfx] [Regression] "drm/i915: Implement display w/a #1143" breaks HDMI on ASUS GL552VW
> On Aug 26, 2020, at 21:05, Ville Syrjälä > wrote: > > On Wed, Aug 26, 2020 at 12:40:15PM +0800, Kai-Heng Feng wrote: >> Hi, >> >>> On Aug 25, 2020, at 02:46, Runyan, Arthur J >>> wrote: >>> >>> I remember some strangeness about the blnclegdisbl. I'll see if I can dig >>> up some more. >> >> >> The register read can be found at [1] and [2]. >> >> [1] https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comments/119 >> [2] https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comments/120 > > Looks like it's using the 400mV/0dB setting. Can we get the same dumps > with the driver loaded just to confirm whether we're using different > settings? > > Also a dump of /sys/kernel/debug/dri/0/i915_vbt would be good > to have. https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comments/124 https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comments/125 https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comments/126 Kai-Heng > >> >> Kai-Heng >> >>> >>> -Original Message- >>> From: Ville Syrjälä >>> Sent: Monday, August 24, 2020 11:05 AM >>> To: Kai-Heng Feng >>> Cc: Runyan, Arthur J ; Vivi, Rodrigo >>> ; intel-gfx >>> Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" breaks >>> HDMI on ASUS GL552VW >>> >>> On Mon, Aug 17, 2020 at 02:17:49PM +0800, Kai-Heng Feng wrote: > On Aug 17, 2020, at 00:22, Runyan, Arthur J > wrote: > > You'll need to read out the DDI_BUF_TRANS_* and DISPIO_CR_TX_BMU_CR0 > registers at boot before i915 programs them and compare with what driver > programs. > Rodrigo can probably show you how. Right, I'll wait for a patch then :) >>> >>> To grab the BIOS reg values we just have to make sure the driver doesn't >>> load. Eg. pass something like "modprobe.blacklist=i915,snd_hda_intel 3" to >>> the kernel cmdline (+ whatever other magic ubuntu might require). Confirm >>> with something like "lsmod | grep i915" to make sure the driver didn't >>> sneak in despite our best efforts. >>> >>> Then we can dump the registers with intel_reg from igt-gpu-tools: >>> intel_reg read --count 20 0x64E00 0x64E60 0x64EC0 0x64F20 0x64F80 intel_reg >>> read 0x64000 0x64100 0x64200 0x64300 0x64400 0x6C00C >>> >>> The only somewhat suspicious thing I noticed is that we treat >>> DISPIO_CR_TX_BMU_CR0:tx_blnclegdisbl as a bitmask (bit 23 -> DDI A, bit 24 >>> -> DDI B, etc.) whereas the spec seems to be saying that we should just >>> zero out all the bits of tx_blnclegdisbl when any DDI needs iboost. Art, is >>> our interpretation of the bits correct or just a fairy tale? >>> Kai-Heng > > -Original Message- > From: Kai-Heng Feng > Sent: Thursday, August 13, 2020 10:14 PM > To: Runyan, Arthur J > Cc: Vivi, Rodrigo ; Ville Syrjälä > ; intel-gfx > > Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" > breaks HDMI on ASUS GL552VW > > Hi, > >> On Aug 14, 2020, at 01:56, Runyan, Arthur J >> wrote: >> >> The workaround is freeing up stuck vswing values to let new vswing >> programming kick in. Maybe the new vswing values are wrong. >> Try checking the vswing that driver programs against what BIOS/GOP >> programs. > > Do you mean to print out value of I915_READ()? > val = I915_READ(CHICKEN_TRANS(transcoder)); > > Kai-Heng > >> >> -Original Message- >> From: Vivi, Rodrigo >> Sent: Thursday, August 13, 2020 9:50 AM >> To: Kai-Heng Feng ; Runyan, Arthur J >> >> Cc: Ville Syrjälä ; intel-gfx >> >> Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" >> breaks HDMI on ASUS GL552VW >> >> Art, any comment here? >> >> I just checked and the W/a 1143 is implemented as described, but it is >> failing HDMI on this hybrid system. >> >>> On Aug 12, 2020, at 9:07 PM, Kai-Heng Feng >>> wrote: >>> >>> Hi, >>> >>> There's a regression reported that HDMI output stops working after os >>> upgrade: >>> https://bugs.launchpad.net/bugs/1871721 >>> >>> Here's the bisect result: >>> 0519c102f5285476d7868a387bdb6c58385e4074 is the first bad commit >>> commit 0519c102f5285476d7868a387bdb6c58385e4074 >>> Author: Ville Syrjälä >>> Date: Mon Jan 22 19:41:31 2018 +0200 >>> >>> drm/i915: Implement display w/a #1143 >>> >>> Apparently SKL/KBL/CFL need some manual help to get the >>> programmed HDMI vswing to stick. Implement the relevant >>> workaround (display w/a #1143). >>> >>> Note that the relevant chicken bits live in a transcoder register >>> even though the bits affect a specific DDI port rather than a >>> specific transcoder. Hence we must pick the correct transcoder >>> register instance based on the port
Re: [Intel-gfx] [Regression] "drm/i915: Implement display w/a #1143" breaks HDMI on ASUS GL552VW
On Wed, Aug 26, 2020 at 12:40:15PM +0800, Kai-Heng Feng wrote: > Hi, > > > On Aug 25, 2020, at 02:46, Runyan, Arthur J > > wrote: > > > > I remember some strangeness about the blnclegdisbl. I'll see if I can dig > > up some more. > > > The register read can be found at [1] and [2]. > > [1] https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comments/119 > [2] https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comments/120 Looks like it's using the 400mV/0dB setting. Can we get the same dumps with the driver loaded just to confirm whether we're using different settings? Also a dump of /sys/kernel/debug/dri/0/i915_vbt would be good to have. > > Kai-Heng > > > > > -Original Message- > > From: Ville Syrjälä > > Sent: Monday, August 24, 2020 11:05 AM > > To: Kai-Heng Feng > > Cc: Runyan, Arthur J ; Vivi, Rodrigo > > ; intel-gfx > > Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" breaks > > HDMI on ASUS GL552VW > > > > On Mon, Aug 17, 2020 at 02:17:49PM +0800, Kai-Heng Feng wrote: > >> > >> > >>> On Aug 17, 2020, at 00:22, Runyan, Arthur J > >>> wrote: > >>> > >>> You'll need to read out the DDI_BUF_TRANS_* and DISPIO_CR_TX_BMU_CR0 > >>> registers at boot before i915 programs them and compare with what driver > >>> programs. > >>> Rodrigo can probably show you how. > >> > >> Right, I'll wait for a patch then :) > > > > To grab the BIOS reg values we just have to make sure the driver doesn't > > load. Eg. pass something like "modprobe.blacklist=i915,snd_hda_intel 3" to > > the kernel cmdline (+ whatever other magic ubuntu might require). Confirm > > with something like "lsmod | grep i915" to make sure the driver didn't > > sneak in despite our best efforts. > > > > Then we can dump the registers with intel_reg from igt-gpu-tools: > > intel_reg read --count 20 0x64E00 0x64E60 0x64EC0 0x64F20 0x64F80 intel_reg > > read 0x64000 0x64100 0x64200 0x64300 0x64400 0x6C00C > > > > The only somewhat suspicious thing I noticed is that we treat > > DISPIO_CR_TX_BMU_CR0:tx_blnclegdisbl as a bitmask (bit 23 -> DDI A, bit 24 > > -> DDI B, etc.) whereas the spec seems to be saying that we should just > > zero out all the bits of tx_blnclegdisbl when any DDI needs iboost. Art, is > > our interpretation of the bits correct or just a fairy tale? > > > >> > >> Kai-Heng > >> > >>> > >>> -Original Message- > >>> From: Kai-Heng Feng > >>> Sent: Thursday, August 13, 2020 10:14 PM > >>> To: Runyan, Arthur J > >>> Cc: Vivi, Rodrigo ; Ville Syrjälä > >>> ; intel-gfx > >>> > >>> Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" > >>> breaks HDMI on ASUS GL552VW > >>> > >>> Hi, > >>> > On Aug 14, 2020, at 01:56, Runyan, Arthur J > wrote: > > The workaround is freeing up stuck vswing values to let new vswing > programming kick in. Maybe the new vswing values are wrong. > Try checking the vswing that driver programs against what BIOS/GOP > programs. > >>> > >>> Do you mean to print out value of I915_READ()? > >>> val = I915_READ(CHICKEN_TRANS(transcoder)); > >>> > >>> Kai-Heng > >>> > > -Original Message- > From: Vivi, Rodrigo > Sent: Thursday, August 13, 2020 9:50 AM > To: Kai-Heng Feng ; Runyan, Arthur J > > Cc: Ville Syrjälä ; intel-gfx > > Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" > breaks HDMI on ASUS GL552VW > > Art, any comment here? > > I just checked and the W/a 1143 is implemented as described, but it is > failing HDMI on this hybrid system. > > > On Aug 12, 2020, at 9:07 PM, Kai-Heng Feng > > wrote: > > > > Hi, > > > > There's a regression reported that HDMI output stops working after os > > upgrade: > > https://bugs.launchpad.net/bugs/1871721 > > > > Here's the bisect result: > > 0519c102f5285476d7868a387bdb6c58385e4074 is the first bad commit > > commit 0519c102f5285476d7868a387bdb6c58385e4074 > > Author: Ville Syrjälä > > Date: Mon Jan 22 19:41:31 2018 +0200 > > > > drm/i915: Implement display w/a #1143 > > > > Apparently SKL/KBL/CFL need some manual help to get the > > programmed HDMI vswing to stick. Implement the relevant > > workaround (display w/a #1143). > > > > Note that the relevant chicken bits live in a transcoder register > > even though the bits affect a specific DDI port rather than a > > specific transcoder. Hence we must pick the correct transcoder > > register instance based on the port rather than based on the > > cpu_transcoder. > > > > Also note that for completeness I included support for DDI A/E > > in the code even though we never have HDMI on those ports. > > > > v2: CFL needs the w/a as well (Rodrigo and Art) > > > > Cc: Rodrigo Vivi > > Cc: Art Runyan
Re: [Intel-gfx] [Regression] "drm/i915: Implement display w/a #1143" breaks HDMI on ASUS GL552VW
Hi, > On Aug 25, 2020, at 02:46, Runyan, Arthur J wrote: > > I remember some strangeness about the blnclegdisbl. I'll see if I can dig up > some more. The register read can be found at [1] and [2]. [1] https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comments/119 [2] https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comments/120 Kai-Heng > > -Original Message- > From: Ville Syrjälä > Sent: Monday, August 24, 2020 11:05 AM > To: Kai-Heng Feng > Cc: Runyan, Arthur J ; Vivi, Rodrigo > ; intel-gfx > Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" breaks HDMI > on ASUS GL552VW > > On Mon, Aug 17, 2020 at 02:17:49PM +0800, Kai-Heng Feng wrote: >> >> >>> On Aug 17, 2020, at 00:22, Runyan, Arthur J >>> wrote: >>> >>> You'll need to read out the DDI_BUF_TRANS_* and DISPIO_CR_TX_BMU_CR0 >>> registers at boot before i915 programs them and compare with what driver >>> programs. >>> Rodrigo can probably show you how. >> >> Right, I'll wait for a patch then :) > > To grab the BIOS reg values we just have to make sure the driver doesn't > load. Eg. pass something like "modprobe.blacklist=i915,snd_hda_intel 3" to > the kernel cmdline (+ whatever other magic ubuntu might require). Confirm > with something like "lsmod | grep i915" to make sure the driver didn't sneak > in despite our best efforts. > > Then we can dump the registers with intel_reg from igt-gpu-tools: > intel_reg read --count 20 0x64E00 0x64E60 0x64EC0 0x64F20 0x64F80 intel_reg > read 0x64000 0x64100 0x64200 0x64300 0x64400 0x6C00C > > The only somewhat suspicious thing I noticed is that we treat > DISPIO_CR_TX_BMU_CR0:tx_blnclegdisbl as a bitmask (bit 23 -> DDI A, bit 24 -> > DDI B, etc.) whereas the spec seems to be saying that we should just zero out > all the bits of tx_blnclegdisbl when any DDI needs iboost. Art, is our > interpretation of the bits correct or just a fairy tale? > >> >> Kai-Heng >> >>> >>> -Original Message- >>> From: Kai-Heng Feng >>> Sent: Thursday, August 13, 2020 10:14 PM >>> To: Runyan, Arthur J >>> Cc: Vivi, Rodrigo ; Ville Syrjälä >>> ; intel-gfx >>> >>> Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" >>> breaks HDMI on ASUS GL552VW >>> >>> Hi, >>> On Aug 14, 2020, at 01:56, Runyan, Arthur J wrote: The workaround is freeing up stuck vswing values to let new vswing programming kick in. Maybe the new vswing values are wrong. Try checking the vswing that driver programs against what BIOS/GOP programs. >>> >>> Do you mean to print out value of I915_READ()? >>> val = I915_READ(CHICKEN_TRANS(transcoder)); >>> >>> Kai-Heng >>> -Original Message- From: Vivi, Rodrigo Sent: Thursday, August 13, 2020 9:50 AM To: Kai-Heng Feng ; Runyan, Arthur J Cc: Ville Syrjälä ; intel-gfx Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" breaks HDMI on ASUS GL552VW Art, any comment here? I just checked and the W/a 1143 is implemented as described, but it is failing HDMI on this hybrid system. > On Aug 12, 2020, at 9:07 PM, Kai-Heng Feng > wrote: > > Hi, > > There's a regression reported that HDMI output stops working after os > upgrade: > https://bugs.launchpad.net/bugs/1871721 > > Here's the bisect result: > 0519c102f5285476d7868a387bdb6c58385e4074 is the first bad commit > commit 0519c102f5285476d7868a387bdb6c58385e4074 > Author: Ville Syrjälä > Date: Mon Jan 22 19:41:31 2018 +0200 > > drm/i915: Implement display w/a #1143 > > Apparently SKL/KBL/CFL need some manual help to get the > programmed HDMI vswing to stick. Implement the relevant > workaround (display w/a #1143). > > Note that the relevant chicken bits live in a transcoder register > even though the bits affect a specific DDI port rather than a > specific transcoder. Hence we must pick the correct transcoder > register instance based on the port rather than based on the > cpu_transcoder. > > Also note that for completeness I included support for DDI A/E > in the code even though we never have HDMI on those ports. > > v2: CFL needs the w/a as well (Rodrigo and Art) > > Cc: Rodrigo Vivi > Cc: Art Runyan > Signed-off-by: Ville Syrjälä > Link: > https://patchwork.freedesktop.org/patch/msgid/20180122174131.28046 > -1-ville.syrj...@linux.intel.com > Reviewed-by: Rodrigo Vivi > > > dmesg from drm-tip with drm.debug=0xe can be found here: > https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comme > nts > / > 64 > > Kai-Heng >>> > > -- > Ville Syrjälä > Intel ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org
Re: [Intel-gfx] [Regression] "drm/i915: Implement display w/a #1143" breaks HDMI on ASUS GL552VW
I remember some strangeness about the blnclegdisbl. I'll see if I can dig up some more. -Original Message- From: Ville Syrjälä Sent: Monday, August 24, 2020 11:05 AM To: Kai-Heng Feng Cc: Runyan, Arthur J ; Vivi, Rodrigo ; intel-gfx Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" breaks HDMI on ASUS GL552VW On Mon, Aug 17, 2020 at 02:17:49PM +0800, Kai-Heng Feng wrote: > > > > On Aug 17, 2020, at 00:22, Runyan, Arthur J > > wrote: > > > > You'll need to read out the DDI_BUF_TRANS_* and DISPIO_CR_TX_BMU_CR0 > > registers at boot before i915 programs them and compare with what driver > > programs. > > Rodrigo can probably show you how. > > Right, I'll wait for a patch then :) To grab the BIOS reg values we just have to make sure the driver doesn't load. Eg. pass something like "modprobe.blacklist=i915,snd_hda_intel 3" to the kernel cmdline (+ whatever other magic ubuntu might require). Confirm with something like "lsmod | grep i915" to make sure the driver didn't sneak in despite our best efforts. Then we can dump the registers with intel_reg from igt-gpu-tools: intel_reg read --count 20 0x64E00 0x64E60 0x64EC0 0x64F20 0x64F80 intel_reg read 0x64000 0x64100 0x64200 0x64300 0x64400 0x6C00C The only somewhat suspicious thing I noticed is that we treat DISPIO_CR_TX_BMU_CR0:tx_blnclegdisbl as a bitmask (bit 23 -> DDI A, bit 24 -> DDI B, etc.) whereas the spec seems to be saying that we should just zero out all the bits of tx_blnclegdisbl when any DDI needs iboost. Art, is our interpretation of the bits correct or just a fairy tale? > > Kai-Heng > > > > > -Original Message- > > From: Kai-Heng Feng > > Sent: Thursday, August 13, 2020 10:14 PM > > To: Runyan, Arthur J > > Cc: Vivi, Rodrigo ; Ville Syrjälä > > ; intel-gfx > > > > Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" > > breaks HDMI on ASUS GL552VW > > > > Hi, > > > >> On Aug 14, 2020, at 01:56, Runyan, Arthur J > >> wrote: > >> > >> The workaround is freeing up stuck vswing values to let new vswing > >> programming kick in. Maybe the new vswing values are wrong. > >> Try checking the vswing that driver programs against what BIOS/GOP > >> programs. > > > > Do you mean to print out value of I915_READ()? > > val = I915_READ(CHICKEN_TRANS(transcoder)); > > > > Kai-Heng > > > >> > >> -Original Message- > >> From: Vivi, Rodrigo > >> Sent: Thursday, August 13, 2020 9:50 AM > >> To: Kai-Heng Feng ; Runyan, Arthur J > >> > >> Cc: Ville Syrjälä ; intel-gfx > >> > >> Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" > >> breaks HDMI on ASUS GL552VW > >> > >> Art, any comment here? > >> > >> I just checked and the W/a 1143 is implemented as described, but it is > >> failing HDMI on this hybrid system. > >> > >>> On Aug 12, 2020, at 9:07 PM, Kai-Heng Feng > >>> wrote: > >>> > >>> Hi, > >>> > >>> There's a regression reported that HDMI output stops working after os > >>> upgrade: > >>> https://bugs.launchpad.net/bugs/1871721 > >>> > >>> Here's the bisect result: > >>> 0519c102f5285476d7868a387bdb6c58385e4074 is the first bad commit > >>> commit 0519c102f5285476d7868a387bdb6c58385e4074 > >>> Author: Ville Syrjälä > >>> Date: Mon Jan 22 19:41:31 2018 +0200 > >>> > >>> drm/i915: Implement display w/a #1143 > >>> > >>> Apparently SKL/KBL/CFL need some manual help to get the > >>> programmed HDMI vswing to stick. Implement the relevant > >>> workaround (display w/a #1143). > >>> > >>> Note that the relevant chicken bits live in a transcoder register > >>> even though the bits affect a specific DDI port rather than a > >>> specific transcoder. Hence we must pick the correct transcoder > >>> register instance based on the port rather than based on the > >>> cpu_transcoder. > >>> > >>> Also note that for completeness I included support for DDI A/E > >>> in the code even though we never have HDMI on those ports. > >>> > >>> v2: CFL needs the w/a as well (Rodrigo and Art) > >>> > >>> Cc: Rodrigo Vivi > >>> Cc: Art Runyan > >>> Signed-off-by: Ville Syrjälä > >>> Link: > >>> https://patchwork.freedesktop.org/patch/msgid/20180122174131.28046 > >>> -1-ville.syrj...@linux.intel.com > >>> Reviewed-by: Rodrigo Vivi > >>> > >>> > >>> dmesg from drm-tip with drm.debug=0xe can be found here: > >>> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comme > >>> nts > >>> / > >>> 64 > >>> > >>> Kai-Heng > >> > >> > > -- Ville Syrjälä Intel ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [Intel-gfx] [Regression] "drm/i915: Implement display w/a #1143" breaks HDMI on ASUS GL552VW
On Mon, Aug 17, 2020 at 02:17:49PM +0800, Kai-Heng Feng wrote: > > > > On Aug 17, 2020, at 00:22, Runyan, Arthur J > > wrote: > > > > You'll need to read out the DDI_BUF_TRANS_* and DISPIO_CR_TX_BMU_CR0 > > registers at boot before i915 programs them and compare with what driver > > programs. > > Rodrigo can probably show you how. > > Right, I'll wait for a patch then :) To grab the BIOS reg values we just have to make sure the driver doesn't load. Eg. pass something like "modprobe.blacklist=i915,snd_hda_intel 3" to the kernel cmdline (+ whatever other magic ubuntu might require). Confirm with something like "lsmod | grep i915" to make sure the driver didn't sneak in despite our best efforts. Then we can dump the registers with intel_reg from igt-gpu-tools: intel_reg read --count 20 0x64E00 0x64E60 0x64EC0 0x64F20 0x64F80 intel_reg read 0x64000 0x64100 0x64200 0x64300 0x64400 0x6C00C The only somewhat suspicious thing I noticed is that we treat DISPIO_CR_TX_BMU_CR0:tx_blnclegdisbl as a bitmask (bit 23 -> DDI A, bit 24 -> DDI B, etc.) whereas the spec seems to be saying that we should just zero out all the bits of tx_blnclegdisbl when any DDI needs iboost. Art, is our interpretation of the bits correct or just a fairy tale? > > Kai-Heng > > > > > -Original Message- > > From: Kai-Heng Feng > > Sent: Thursday, August 13, 2020 10:14 PM > > To: Runyan, Arthur J > > Cc: Vivi, Rodrigo ; Ville Syrjälä > > ; intel-gfx > > Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" breaks > > HDMI on ASUS GL552VW > > > > Hi, > > > >> On Aug 14, 2020, at 01:56, Runyan, Arthur J > >> wrote: > >> > >> The workaround is freeing up stuck vswing values to let new vswing > >> programming kick in. Maybe the new vswing values are wrong. > >> Try checking the vswing that driver programs against what BIOS/GOP > >> programs. > > > > Do you mean to print out value of I915_READ()? > > val = I915_READ(CHICKEN_TRANS(transcoder)); > > > > Kai-Heng > > > >> > >> -Original Message- > >> From: Vivi, Rodrigo > >> Sent: Thursday, August 13, 2020 9:50 AM > >> To: Kai-Heng Feng ; Runyan, Arthur J > >> > >> Cc: Ville Syrjälä ; intel-gfx > >> > >> Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" > >> breaks HDMI on ASUS GL552VW > >> > >> Art, any comment here? > >> > >> I just checked and the W/a 1143 is implemented as described, but it is > >> failing HDMI on this hybrid system. > >> > >>> On Aug 12, 2020, at 9:07 PM, Kai-Heng Feng > >>> wrote: > >>> > >>> Hi, > >>> > >>> There's a regression reported that HDMI output stops working after os > >>> upgrade: > >>> https://bugs.launchpad.net/bugs/1871721 > >>> > >>> Here's the bisect result: > >>> 0519c102f5285476d7868a387bdb6c58385e4074 is the first bad commit > >>> commit 0519c102f5285476d7868a387bdb6c58385e4074 > >>> Author: Ville Syrjälä > >>> Date: Mon Jan 22 19:41:31 2018 +0200 > >>> > >>> drm/i915: Implement display w/a #1143 > >>> > >>> Apparently SKL/KBL/CFL need some manual help to get the > >>> programmed HDMI vswing to stick. Implement the relevant > >>> workaround (display w/a #1143). > >>> > >>> Note that the relevant chicken bits live in a transcoder register > >>> even though the bits affect a specific DDI port rather than a > >>> specific transcoder. Hence we must pick the correct transcoder > >>> register instance based on the port rather than based on the > >>> cpu_transcoder. > >>> > >>> Also note that for completeness I included support for DDI A/E > >>> in the code even though we never have HDMI on those ports. > >>> > >>> v2: CFL needs the w/a as well (Rodrigo and Art) > >>> > >>> Cc: Rodrigo Vivi > >>> Cc: Art Runyan > >>> Signed-off-by: Ville Syrjälä > >>> Link: > >>> https://patchwork.freedesktop.org/patch/msgid/20180122174131.28046-1-ville.syrj...@linux.intel.com > >>> Reviewed-by: Rodrigo Vivi > >>> > >>> > >>> dmesg from drm-tip with drm.debug=0xe can be found here: > >>> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comments > >>> / > >>> 64 > >>> > >>> Kai-Heng > >> > >> > > -- Ville Syrjälä Intel ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [Intel-gfx] [Regression] "drm/i915: Implement display w/a #1143" breaks HDMI on ASUS GL552VW
> On Aug 17, 2020, at 00:22, Runyan, Arthur J wrote: > > You'll need to read out the DDI_BUF_TRANS_* and DISPIO_CR_TX_BMU_CR0 > registers at boot before i915 programs them and compare with what driver > programs. > Rodrigo can probably show you how. Right, I'll wait for a patch then :) Kai-Heng > > -Original Message- > From: Kai-Heng Feng > Sent: Thursday, August 13, 2020 10:14 PM > To: Runyan, Arthur J > Cc: Vivi, Rodrigo ; Ville Syrjälä > ; intel-gfx > Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" breaks HDMI > on ASUS GL552VW > > Hi, > >> On Aug 14, 2020, at 01:56, Runyan, Arthur J >> wrote: >> >> The workaround is freeing up stuck vswing values to let new vswing >> programming kick in. Maybe the new vswing values are wrong. >> Try checking the vswing that driver programs against what BIOS/GOP programs. > > Do you mean to print out value of I915_READ()? > val = I915_READ(CHICKEN_TRANS(transcoder)); > > Kai-Heng > >> >> -Original Message- >> From: Vivi, Rodrigo >> Sent: Thursday, August 13, 2020 9:50 AM >> To: Kai-Heng Feng ; Runyan, Arthur J >> >> Cc: Ville Syrjälä ; intel-gfx >> >> Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" >> breaks HDMI on ASUS GL552VW >> >> Art, any comment here? >> >> I just checked and the W/a 1143 is implemented as described, but it is >> failing HDMI on this hybrid system. >> >>> On Aug 12, 2020, at 9:07 PM, Kai-Heng Feng >>> wrote: >>> >>> Hi, >>> >>> There's a regression reported that HDMI output stops working after os >>> upgrade: >>> https://bugs.launchpad.net/bugs/1871721 >>> >>> Here's the bisect result: >>> 0519c102f5285476d7868a387bdb6c58385e4074 is the first bad commit >>> commit 0519c102f5285476d7868a387bdb6c58385e4074 >>> Author: Ville Syrjälä >>> Date: Mon Jan 22 19:41:31 2018 +0200 >>> >>> drm/i915: Implement display w/a #1143 >>> >>> Apparently SKL/KBL/CFL need some manual help to get the >>> programmed HDMI vswing to stick. Implement the relevant >>> workaround (display w/a #1143). >>> >>> Note that the relevant chicken bits live in a transcoder register >>> even though the bits affect a specific DDI port rather than a >>> specific transcoder. Hence we must pick the correct transcoder >>> register instance based on the port rather than based on the >>> cpu_transcoder. >>> >>> Also note that for completeness I included support for DDI A/E >>> in the code even though we never have HDMI on those ports. >>> >>> v2: CFL needs the w/a as well (Rodrigo and Art) >>> >>> Cc: Rodrigo Vivi >>> Cc: Art Runyan >>> Signed-off-by: Ville Syrjälä >>> Link: >>> https://patchwork.freedesktop.org/patch/msgid/20180122174131.28046-1-ville.syrj...@linux.intel.com >>> Reviewed-by: Rodrigo Vivi >>> >>> >>> dmesg from drm-tip with drm.debug=0xe can be found here: >>> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comments >>> / >>> 64 >>> >>> Kai-Heng >> >> > ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [Intel-gfx] [Regression] "drm/i915: Implement display w/a #1143" breaks HDMI on ASUS GL552VW
You'll need to read out the DDI_BUF_TRANS_* and DISPIO_CR_TX_BMU_CR0 registers at boot before i915 programs them and compare with what driver programs. Rodrigo can probably show you how. -Original Message- From: Kai-Heng Feng Sent: Thursday, August 13, 2020 10:14 PM To: Runyan, Arthur J Cc: Vivi, Rodrigo ; Ville Syrjälä ; intel-gfx Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" breaks HDMI on ASUS GL552VW Hi, > On Aug 14, 2020, at 01:56, Runyan, Arthur J wrote: > > The workaround is freeing up stuck vswing values to let new vswing > programming kick in. Maybe the new vswing values are wrong. > Try checking the vswing that driver programs against what BIOS/GOP programs. Do you mean to print out value of I915_READ()? val = I915_READ(CHICKEN_TRANS(transcoder)); Kai-Heng > > -Original Message- > From: Vivi, Rodrigo > Sent: Thursday, August 13, 2020 9:50 AM > To: Kai-Heng Feng ; Runyan, Arthur J > > Cc: Ville Syrjälä ; intel-gfx > > Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" > breaks HDMI on ASUS GL552VW > > Art, any comment here? > > I just checked and the W/a 1143 is implemented as described, but it is > failing HDMI on this hybrid system. > >> On Aug 12, 2020, at 9:07 PM, Kai-Heng Feng >> wrote: >> >> Hi, >> >> There's a regression reported that HDMI output stops working after os >> upgrade: >> https://bugs.launchpad.net/bugs/1871721 >> >> Here's the bisect result: >> 0519c102f5285476d7868a387bdb6c58385e4074 is the first bad commit >> commit 0519c102f5285476d7868a387bdb6c58385e4074 >> Author: Ville Syrjälä >> Date: Mon Jan 22 19:41:31 2018 +0200 >> >> drm/i915: Implement display w/a #1143 >> >> Apparently SKL/KBL/CFL need some manual help to get the >> programmed HDMI vswing to stick. Implement the relevant >> workaround (display w/a #1143). >> >> Note that the relevant chicken bits live in a transcoder register >> even though the bits affect a specific DDI port rather than a >> specific transcoder. Hence we must pick the correct transcoder >> register instance based on the port rather than based on the >> cpu_transcoder. >> >> Also note that for completeness I included support for DDI A/E >> in the code even though we never have HDMI on those ports. >> >> v2: CFL needs the w/a as well (Rodrigo and Art) >> >> Cc: Rodrigo Vivi >> Cc: Art Runyan >> Signed-off-by: Ville Syrjälä >> Link: >> https://patchwork.freedesktop.org/patch/msgid/20180122174131.28046-1-ville.syrj...@linux.intel.com >> Reviewed-by: Rodrigo Vivi >> >> >> dmesg from drm-tip with drm.debug=0xe can be found here: >> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comments >> / >> 64 >> >> Kai-Heng > > ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [Intel-gfx] [Regression] "drm/i915: Implement display w/a #1143" breaks HDMI on ASUS GL552VW
Hi, > On Aug 14, 2020, at 01:56, Runyan, Arthur J wrote: > > The workaround is freeing up stuck vswing values to let new vswing > programming kick in. Maybe the new vswing values are wrong. > Try checking the vswing that driver programs against what BIOS/GOP programs. Do you mean to print out value of I915_READ()? val = I915_READ(CHICKEN_TRANS(transcoder)); Kai-Heng > > -Original Message- > From: Vivi, Rodrigo > Sent: Thursday, August 13, 2020 9:50 AM > To: Kai-Heng Feng ; Runyan, Arthur J > > Cc: Ville Syrjälä ; intel-gfx > > Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" breaks HDMI > on ASUS GL552VW > > Art, any comment here? > > I just checked and the W/a 1143 is implemented as described, but it is > failing HDMI on this hybrid system. > >> On Aug 12, 2020, at 9:07 PM, Kai-Heng Feng >> wrote: >> >> Hi, >> >> There's a regression reported that HDMI output stops working after os >> upgrade: >> https://bugs.launchpad.net/bugs/1871721 >> >> Here's the bisect result: >> 0519c102f5285476d7868a387bdb6c58385e4074 is the first bad commit >> commit 0519c102f5285476d7868a387bdb6c58385e4074 >> Author: Ville Syrjälä >> Date: Mon Jan 22 19:41:31 2018 +0200 >> >> drm/i915: Implement display w/a #1143 >> >> Apparently SKL/KBL/CFL need some manual help to get the >> programmed HDMI vswing to stick. Implement the relevant >> workaround (display w/a #1143). >> >> Note that the relevant chicken bits live in a transcoder register >> even though the bits affect a specific DDI port rather than a >> specific transcoder. Hence we must pick the correct transcoder >> register instance based on the port rather than based on the >> cpu_transcoder. >> >> Also note that for completeness I included support for DDI A/E >> in the code even though we never have HDMI on those ports. >> >> v2: CFL needs the w/a as well (Rodrigo and Art) >> >> Cc: Rodrigo Vivi >> Cc: Art Runyan >> Signed-off-by: Ville Syrjälä >> Link: >> https://patchwork.freedesktop.org/patch/msgid/20180122174131.28046-1-ville.syrj...@linux.intel.com >> Reviewed-by: Rodrigo Vivi >> >> >> dmesg from drm-tip with drm.debug=0xe can be found here: >> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comments/ >> 64 >> >> Kai-Heng > > ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [Intel-gfx] [Regression] "drm/i915: Implement display w/a #1143" breaks HDMI on ASUS GL552VW
The workaround is freeing up stuck vswing values to let new vswing programming kick in. Maybe the new vswing values are wrong. Try checking the vswing that driver programs against what BIOS/GOP programs. -Original Message- From: Vivi, Rodrigo Sent: Thursday, August 13, 2020 9:50 AM To: Kai-Heng Feng ; Runyan, Arthur J Cc: Ville Syrjälä ; intel-gfx Subject: Re: [Regression] "drm/i915: Implement display w/a #1143" breaks HDMI on ASUS GL552VW Art, any comment here? I just checked and the W/a 1143 is implemented as described, but it is failing HDMI on this hybrid system. > On Aug 12, 2020, at 9:07 PM, Kai-Heng Feng > wrote: > > Hi, > > There's a regression reported that HDMI output stops working after os upgrade: > https://bugs.launchpad.net/bugs/1871721 > > Here's the bisect result: > 0519c102f5285476d7868a387bdb6c58385e4074 is the first bad commit > commit 0519c102f5285476d7868a387bdb6c58385e4074 > Author: Ville Syrjälä > Date: Mon Jan 22 19:41:31 2018 +0200 > >drm/i915: Implement display w/a #1143 > >Apparently SKL/KBL/CFL need some manual help to get the >programmed HDMI vswing to stick. Implement the relevant >workaround (display w/a #1143). > >Note that the relevant chicken bits live in a transcoder register >even though the bits affect a specific DDI port rather than a >specific transcoder. Hence we must pick the correct transcoder >register instance based on the port rather than based on the >cpu_transcoder. > >Also note that for completeness I included support for DDI A/E >in the code even though we never have HDMI on those ports. > >v2: CFL needs the w/a as well (Rodrigo and Art) > >Cc: Rodrigo Vivi >Cc: Art Runyan >Signed-off-by: Ville Syrjälä >Link: > https://patchwork.freedesktop.org/patch/msgid/20180122174131.28046-1-ville.syrj...@linux.intel.com >Reviewed-by: Rodrigo Vivi > > > dmesg from drm-tip with drm.debug=0xe can be found here: > https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comments/ > 64 > > Kai-Heng ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [Intel-gfx] [Regression] "drm/i915: Implement display w/a #1143" breaks HDMI on ASUS GL552VW
Art, any comment here? I just checked and the W/a 1143 is implemented as described, but it is failing HDMI on this hybrid system. > On Aug 12, 2020, at 9:07 PM, Kai-Heng Feng > wrote: > > Hi, > > There's a regression reported that HDMI output stops working after os upgrade: > https://bugs.launchpad.net/bugs/1871721 > > Here's the bisect result: > 0519c102f5285476d7868a387bdb6c58385e4074 is the first bad commit > commit 0519c102f5285476d7868a387bdb6c58385e4074 > Author: Ville Syrjälä > Date: Mon Jan 22 19:41:31 2018 +0200 > >drm/i915: Implement display w/a #1143 > >Apparently SKL/KBL/CFL need some manual help to get the >programmed HDMI vswing to stick. Implement the relevant >workaround (display w/a #1143). > >Note that the relevant chicken bits live in a transcoder register >even though the bits affect a specific DDI port rather than a >specific transcoder. Hence we must pick the correct transcoder >register instance based on the port rather than based on the >cpu_transcoder. > >Also note that for completeness I included support for DDI A/E >in the code even though we never have HDMI on those ports. > >v2: CFL needs the w/a as well (Rodrigo and Art) > >Cc: Rodrigo Vivi >Cc: Art Runyan >Signed-off-by: Ville Syrjälä >Link: > https://patchwork.freedesktop.org/patch/msgid/20180122174131.28046-1-ville.syrj...@linux.intel.com >Reviewed-by: Rodrigo Vivi > > > dmesg from drm-tip with drm.debug=0xe can be found here: > https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1871721/comments/64 > > Kai-Heng ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx