All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] drm/i915/cnl: Wa to ignore VBT alternate pin on B-stepping.
@ 2017-04-07  0:54 Rodrigo Vivi
  2017-04-07  1:14 ` ✗ Fi.CI.BAT: failure for " Patchwork
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Rodrigo Vivi @ 2017-04-07  0:54 UTC (permalink / raw)
  To: intel-gfx; +Cc: Rodrigo Vivi

Current VBT available for pre-production machines
tells that we need to use alternate pin. But if we use it
we end up needing to define a different table.

However if we respect the spec, ignore the VBT for now
we get a more reliable HDMI.

Cc: Clint Taylor <clinton.a.taylor@intel.com>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
---
 drivers/gpu/drm/i915/intel_hdmi.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi.c
index f8c40ae..0d389bc 100644
--- a/drivers/gpu/drm/i915/intel_hdmi.c
+++ b/drivers/gpu/drm/i915/intel_hdmi.c
@@ -1884,7 +1884,8 @@ static u8 intel_hdmi_ddc_pin(struct drm_i915_private *dev_priv,
 		&dev_priv->vbt.ddi_port_info[port];
 	u8 ddc_pin;
 
-	if (info->alternate_ddc_pin) {
+	if (info->alternate_ddc_pin &&
+	    !IS_CNL_REVID(dev_priv, CNL_REVID_B0, CNL_REVID_B0)) {
 		DRM_DEBUG_KMS("Using DDC pin 0x%x for port %c (VBT)\n",
 			      info->alternate_ddc_pin, port_name(port));
 		return info->alternate_ddc_pin;
-- 
1.9.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* ✗ Fi.CI.BAT: failure for drm/i915/cnl: Wa to ignore VBT alternate pin on B-stepping.
  2017-04-07  0:54 [PATCH] drm/i915/cnl: Wa to ignore VBT alternate pin on B-stepping Rodrigo Vivi
@ 2017-04-07  1:14 ` Patchwork
  2017-04-07 13:19 ` [PATCH] " Ville Syrjälä
  2017-04-07 18:56 ` kbuild test robot
  2 siblings, 0 replies; 5+ messages in thread
From: Patchwork @ 2017-04-07  1:14 UTC (permalink / raw)
  To: Rodrigo Vivi; +Cc: intel-gfx

== Series Details ==

Series: drm/i915/cnl: Wa to ignore VBT alternate pin on B-stepping.
URL   : https://patchwork.freedesktop.org/series/22626/
State : failure

== Summary ==

  CC [M]  drivers/gpu/drm/i915/gvt/cmd_parser.o
  CC [M]  drivers/gpu/drm/i915/gvt/render.o
  CC [M]  drivers/gpu/drm/i915/intel_lpe_audio.o
  AR      lib/lib.a
  EXPORTS lib/lib-ksyms.o
  LD [M]  drivers/ssb/ssb.o
  LD      drivers/acpi/acpica/built-in.o
  LD      net/ipv6/ipv6.o
  LD [M]  drivers/gpu/drm/vgem/vgem.o
  LD [M]  sound/pci/hda/snd-hda-codec-generic.o
  LD      lib/built-in.o
  LD      drivers/i2c/built-in.o
  LD      sound/pci/built-in.o
  LD      drivers/acpi/built-in.o
  LD      sound/built-in.o
  LD      net/ipv6/built-in.o
  LD      drivers/tty/serial/8250/8250.o
  LD      drivers/scsi/scsi_mod.o
  LD      drivers/pci/pcie/aer/aerdriver.o
  LD      drivers/pci/pcie/aer/built-in.o
  LD      drivers/net/phy/libphy.o
  LD      drivers/pci/pcie/built-in.o
  LD      drivers/net/phy/built-in.o
  LD      drivers/thermal/thermal_sys.o
  LD      drivers/thermal/built-in.o
drivers/gpu/drm/i915/intel_hdmi.c: In function ‘intel_hdmi_ddc_pin’:
drivers/gpu/drm/i915/intel_hdmi.c:1888:7: error: implicit declaration of function ‘IS_CNL_REVID’ [-Werror=implicit-function-declaration]
      !IS_CNL_REVID(dev_priv, CNL_REVID_B0, CNL_REVID_B0)) {
       ^
drivers/gpu/drm/i915/intel_hdmi.c:1888:30: error: ‘CNL_REVID_B0’ undeclared (first use in this function)
      !IS_CNL_REVID(dev_priv, CNL_REVID_B0, CNL_REVID_B0)) {
                              ^
drivers/gpu/drm/i915/intel_hdmi.c:1888:30: note: each undeclared identifier is reported only once for each function it appears in
  LD [M]  drivers/misc/mei/mei-me.o
  LD      drivers/gpu/drm/drm.o
  LD      drivers/misc/built-in.o
cc1: all warnings being treated as errors
scripts/Makefile.build:294: recipe for target 'drivers/gpu/drm/i915/intel_hdmi.o' failed
make[4]: *** [drivers/gpu/drm/i915/intel_hdmi.o] Error 1
make[4]: *** Waiting for unfinished jobs....
  LD      drivers/video/fbdev/core/fb.o
  LD      kernel/sched/built-in.o
  LD      drivers/usb/storage/usb-storage.o
  LD      drivers/video/fbdev/core/built-in.o
  LD      drivers/usb/storage/built-in.o
  LD      net/xfrm/built-in.o
  LD      kernel/built-in.o
  LD      drivers/video/fbdev/built-in.o
  LD [M]  drivers/usb/serial/usbserial.o
  LD [M]  drivers/net/ethernet/intel/igbvf/igbvf.o
  LD      drivers/pci/built-in.o
  LD      drivers/iommu/built-in.o
  LD [M]  drivers/net/ethernet/broadcom/genet/genet.o
  LD      drivers/spi/built-in.o
  LD      drivers/usb/gadget/libcomposite.o
  LD      drivers/usb/gadget/udc/udc-core.o
  LD      drivers/usb/gadget/udc/built-in.o
  LD      drivers/usb/gadget/built-in.o
  LD [M]  drivers/net/ethernet/intel/e1000/e1000.o
  LD      drivers/tty/serial/8250/8250_base.o
  LD      drivers/tty/serial/8250/built-in.o
  LD      drivers/tty/serial/built-in.o
  LD      drivers/scsi/sd_mod.o
  LD      drivers/scsi/built-in.o
  LD      drivers/video/console/built-in.o
  LD      drivers/video/built-in.o
  LD      drivers/usb/core/usbcore.o
  LD      drivers/usb/core/built-in.o
  LD      fs/btrfs/btrfs.o
  LD      drivers/tty/vt/built-in.o
  LD      fs/btrfs/built-in.o
  LD      drivers/tty/built-in.o
  LD      net/ipv4/built-in.o
  CC      arch/x86/kernel/cpu/capflags.o
  LD      net/core/built-in.o
  LD      arch/x86/kernel/cpu/built-in.o
  LD      drivers/md/md-mod.o
  LD      drivers/md/built-in.o
  LD      arch/x86/kernel/built-in.o
  LD      net/built-in.o
  LD      arch/x86/built-in.o
  LD      drivers/usb/host/xhci-hcd.o
  LD [M]  drivers/net/ethernet/intel/igb/igb.o
  LD      fs/ext4/ext4.o
  LD      fs/ext4/built-in.o
  LD      fs/built-in.o
  LD [M]  drivers/net/ethernet/intel/e1000e/e1000e.o
  LD      drivers/usb/host/built-in.o
  LD      drivers/usb/built-in.o
scripts/Makefile.build:553: recipe for target 'drivers/gpu/drm/i915' failed
make[3]: *** [drivers/gpu/drm/i915] Error 2
scripts/Makefile.build:553: recipe for target 'drivers/gpu/drm' failed
make[2]: *** [drivers/gpu/drm] Error 2
scripts/Makefile.build:553: recipe for target 'drivers/gpu' failed
make[1]: *** [drivers/gpu] Error 2
make[1]: *** Waiting for unfinished jobs....
  LD      drivers/net/ethernet/built-in.o
  LD      drivers/net/built-in.o
Makefile:1002: recipe for target 'drivers' failed
make: *** [drivers] Error 2

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] drm/i915/cnl: Wa to ignore VBT alternate pin on B-stepping.
  2017-04-07  0:54 [PATCH] drm/i915/cnl: Wa to ignore VBT alternate pin on B-stepping Rodrigo Vivi
  2017-04-07  1:14 ` ✗ Fi.CI.BAT: failure for " Patchwork
@ 2017-04-07 13:19 ` Ville Syrjälä
  2017-04-07 13:22   ` Vivi, Rodrigo
  2017-04-07 18:56 ` kbuild test robot
  2 siblings, 1 reply; 5+ messages in thread
From: Ville Syrjälä @ 2017-04-07 13:19 UTC (permalink / raw)
  To: Rodrigo Vivi; +Cc: intel-gfx

On Thu, Apr 06, 2017 at 05:54:26PM -0700, Rodrigo Vivi wrote:
> Current VBT available for pre-production machines
> tells that we need to use alternate pin. But if we use it
> we end up needing to define a different table.
> 
> However if we respect the spec, ignore the VBT for now
> we get a more reliable HDMI.
> 
> Cc: Clint Taylor <clinton.a.taylor@intel.com>
> Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
> ---
>  drivers/gpu/drm/i915/intel_hdmi.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi.c
> index f8c40ae..0d389bc 100644
> --- a/drivers/gpu/drm/i915/intel_hdmi.c
> +++ b/drivers/gpu/drm/i915/intel_hdmi.c
> @@ -1884,7 +1884,8 @@ static u8 intel_hdmi_ddc_pin(struct drm_i915_private *dev_priv,
>  		&dev_priv->vbt.ddi_port_info[port];
>  	u8 ddc_pin;
>  
> -	if (info->alternate_ddc_pin) {
> +	if (info->alternate_ddc_pin &&
> +	    !IS_CNL_REVID(dev_priv, CNL_REVID_B0, CNL_REVID_B0)) {

So it's got broken VBT? In that case it would make more sense to me
to put the kludge into the VBT parsing code.

>  		DRM_DEBUG_KMS("Using DDC pin 0x%x for port %c (VBT)\n",
>  			      info->alternate_ddc_pin, port_name(port));
>  		return info->alternate_ddc_pin;
> -- 
> 1.9.1
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Ville Syrjälä
Intel OTC
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] drm/i915/cnl: Wa to ignore VBT alternate pin on B-stepping.
  2017-04-07 13:19 ` [PATCH] " Ville Syrjälä
@ 2017-04-07 13:22   ` Vivi, Rodrigo
  0 siblings, 0 replies; 5+ messages in thread
From: Vivi, Rodrigo @ 2017-04-07 13:22 UTC (permalink / raw)
  To: ville.syrjala; +Cc: intel-gfx

On Fri, 2017-04-07 at 16:19 +0300, Ville Syrjälä wrote:
> On Thu, Apr 06, 2017 at 05:54:26PM -0700, Rodrigo Vivi wrote:
> > Current VBT available for pre-production machines
> > tells that we need to use alternate pin. But if we use it
> > we end up needing to define a different table.
> > 
> > However if we respect the spec, ignore the VBT for now
> > we get a more reliable HDMI.
> > 
> > Cc: Clint Taylor <clinton.a.taylor@intel.com>
> > Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
> > ---
> >  drivers/gpu/drm/i915/intel_hdmi.c | 3 ++-
> >  1 file changed, 2 insertions(+), 1 deletion(-)
> > 
> > diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi.c
> > index f8c40ae..0d389bc 100644
> > --- a/drivers/gpu/drm/i915/intel_hdmi.c
> > +++ b/drivers/gpu/drm/i915/intel_hdmi.c
> > @@ -1884,7 +1884,8 @@ static u8 intel_hdmi_ddc_pin(struct drm_i915_private *dev_priv,
> >  		&dev_priv->vbt.ddi_port_info[port];
> >  	u8 ddc_pin;
> >  
> > -	if (info->alternate_ddc_pin) {
> > +	if (info->alternate_ddc_pin &&
> > +	    !IS_CNL_REVID(dev_priv, CNL_REVID_B0, CNL_REVID_B0)) {
> 
> So it's got broken VBT? In that case it would make more sense to me
> to put the kludge into the VBT parsing code.

yeap. It makes sense. I will move that to there later.
Thanks.

> 
> >  		DRM_DEBUG_KMS("Using DDC pin 0x%x for port %c (VBT)\n",
> >  			      info->alternate_ddc_pin, port_name(port));
> >  		return info->alternate_ddc_pin;
> > -- 
> > 1.9.1
> > 
> > _______________________________________________
> > Intel-gfx mailing list
> > Intel-gfx@lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/intel-gfx
> 

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] drm/i915/cnl: Wa to ignore VBT alternate pin on B-stepping.
  2017-04-07  0:54 [PATCH] drm/i915/cnl: Wa to ignore VBT alternate pin on B-stepping Rodrigo Vivi
  2017-04-07  1:14 ` ✗ Fi.CI.BAT: failure for " Patchwork
  2017-04-07 13:19 ` [PATCH] " Ville Syrjälä
@ 2017-04-07 18:56 ` kbuild test robot
  2 siblings, 0 replies; 5+ messages in thread
From: kbuild test robot @ 2017-04-07 18:56 UTC (permalink / raw)
  Cc: intel-gfx, kbuild-all, Rodrigo Vivi

[-- Attachment #1: Type: text/plain, Size: 3390 bytes --]

Hi Rodrigo,

[auto build test ERROR on drm-intel/for-linux-next]
[also build test ERROR on v4.11-rc5 next-20170407]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Rodrigo-Vivi/drm-i915-cnl-Wa-to-ignore-VBT-alternate-pin-on-B-stepping/20170408-021103
base:   git://anongit.freedesktop.org/drm-intel for-linux-next
config: i386-randconfig-x012-201714 (attached as .config)
compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901
reproduce:
        # save the attached .config to linux build tree
        make ARCH=i386 

All errors (new ones prefixed by >>):

   In file included from include/uapi/linux/stddef.h:1:0,
                    from include/linux/stddef.h:4,
                    from include/uapi/linux/posix_types.h:4,
                    from include/uapi/linux/types.h:13,
                    from include/linux/types.h:5,
                    from include/linux/mod_devicetable.h:11,
                    from include/linux/i2c.h:29,
                    from drivers/gpu//drm/i915/intel_hdmi.c:29:
   drivers/gpu//drm/i915/intel_hdmi.c: In function 'intel_hdmi_ddc_pin':
>> drivers/gpu//drm/i915/intel_hdmi.c:1888:7: error: implicit declaration of function 'IS_CNL_REVID' [-Werror=implicit-function-declaration]
         !IS_CNL_REVID(dev_priv, CNL_REVID_B0, CNL_REVID_B0)) {
          ^
   include/linux/compiler.h:160:30: note: in definition of macro '__trace_if'
     if (__builtin_constant_p(!!(cond)) ? !!(cond) :   \
                                 ^~~~
   drivers/gpu//drm/i915/intel_hdmi.c:1887:2: note: in expansion of macro 'if'
     if (info->alternate_ddc_pin &&
     ^~
>> drivers/gpu//drm/i915/intel_hdmi.c:1888:30: error: 'CNL_REVID_B0' undeclared (first use in this function)
         !IS_CNL_REVID(dev_priv, CNL_REVID_B0, CNL_REVID_B0)) {
                                 ^
   include/linux/compiler.h:160:30: note: in definition of macro '__trace_if'
     if (__builtin_constant_p(!!(cond)) ? !!(cond) :   \
                                 ^~~~
   drivers/gpu//drm/i915/intel_hdmi.c:1887:2: note: in expansion of macro 'if'
     if (info->alternate_ddc_pin &&
     ^~
   drivers/gpu//drm/i915/intel_hdmi.c:1888:30: note: each undeclared identifier is reported only once for each function it appears in
         !IS_CNL_REVID(dev_priv, CNL_REVID_B0, CNL_REVID_B0)) {
                                 ^
   include/linux/compiler.h:160:30: note: in definition of macro '__trace_if'
     if (__builtin_constant_p(!!(cond)) ? !!(cond) :   \
                                 ^~~~
   drivers/gpu//drm/i915/intel_hdmi.c:1887:2: note: in expansion of macro 'if'
     if (info->alternate_ddc_pin &&
     ^~
   cc1: some warnings being treated as errors

vim +/IS_CNL_REVID +1888 drivers/gpu//drm/i915/intel_hdmi.c

  1882	{
  1883		const struct ddi_vbt_port_info *info =
  1884			&dev_priv->vbt.ddi_port_info[port];
  1885		u8 ddc_pin;
  1886	
  1887		if (info->alternate_ddc_pin &&
> 1888		    !IS_CNL_REVID(dev_priv, CNL_REVID_B0, CNL_REVID_B0)) {
  1889			DRM_DEBUG_KMS("Using DDC pin 0x%x for port %c (VBT)\n",
  1890				      info->alternate_ddc_pin, port_name(port));
  1891			return info->alternate_ddc_pin;

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 24975 bytes --]

[-- Attachment #3: Type: text/plain, Size: 160 bytes --]

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2017-04-07 18:56 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-04-07  0:54 [PATCH] drm/i915/cnl: Wa to ignore VBT alternate pin on B-stepping Rodrigo Vivi
2017-04-07  1:14 ` ✗ Fi.CI.BAT: failure for " Patchwork
2017-04-07 13:19 ` [PATCH] " Ville Syrjälä
2017-04-07 13:22   ` Vivi, Rodrigo
2017-04-07 18:56 ` kbuild test robot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.