drm/nouveau/disp: Silence DCB warnings.
authorRosen Penev <rosenp@gmail.com>
Wed, 26 Jul 2017 00:21:43 +0000 (17:21 -0700)
committerBen Skeggs <bskeggs@redhat.com>
Tue, 22 Aug 2017 08:04:32 +0000 (18:04 +1000)
Most of these errors seem to be WFD related. Official documentation
says dcb type 8 is reserved. It's probably used for WFD. Silence
the warning in either case.

Connector type 70 is stated to be a virtual connector for WiFi
display. Since we know this, don't warn that we don't.

Signed-off by: Rosen Penev <rosenp@gmail.com>

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
drivers/gpu/drm/nouveau/include/nvkm/subdev/bios/conn.h
drivers/gpu/drm/nouveau/include/nvkm/subdev/bios/dcb.h
drivers/gpu/drm/nouveau/nouveau_connector.c
drivers/gpu/drm/nouveau/nvkm/engine/disp/base.c

index e8e77ee..deb4772 100644 (file)
@@ -18,6 +18,7 @@ enum dcb_connector_type {
        DCB_CONNECTOR_HDMI_C = 0x63,
        DCB_CONNECTOR_DMS59_DP0 = 0x64,
        DCB_CONNECTOR_DMS59_DP1 = 0x65,
+       DCB_CONNECTOR_WFD       = 0x70,
        DCB_CONNECTOR_NONE = 0xff
 };
 
index 4892a65..903d117 100644 (file)
@@ -6,6 +6,7 @@ enum dcb_output_type {
        DCB_OUTPUT_TMDS         = 0x2,
        DCB_OUTPUT_LVDS         = 0x3,
        DCB_OUTPUT_DP           = 0x6,
+       DCB_OUTPUT_WFD          = 0x8,
        DCB_OUTPUT_EOL          = 0xe,
        DCB_OUTPUT_UNUSED       = 0xf,
        DCB_OUTPUT_ANY = -1,
index 5137155..70d8e0d 100644 (file)
@@ -1184,6 +1184,7 @@ drm_conntype_from_dcb(enum dcb_connector_type dcb)
        case DCB_CONNECTOR_HDMI_0   :
        case DCB_CONNECTOR_HDMI_1   :
        case DCB_CONNECTOR_HDMI_C   : return DRM_MODE_CONNECTOR_HDMIA;
+       case DCB_CONNECTOR_WFD      : return DRM_MODE_CONNECTOR_VIRTUAL;
        default:
                break;
        }
index 88582af..93a75e5 100644 (file)
@@ -285,6 +285,10 @@ nvkm_disp_oneinit(struct nvkm_engine *engine)
                case DCB_OUTPUT_DP:
                        ret = nvkm_dp_new(disp, i, &dcbE, &outp);
                        break;
+               case DCB_OUTPUT_WFD:
+                       /* No support for WFD yet. */
+                       ret = -ENODEV;
+                       continue;
                default:
                        nvkm_warn(subdev, "dcb %d type %d unknown\n",
                                  i, dcbE.type);