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 at gmail.com> --- drm/nouveau/include/nvkm/subdev/bios/conn.h | 1 + drm/nouveau/include/nvkm/subdev/bios/dcb.h | 1 + drm/nouveau/nouveau_connector.c | 1 + drm/nouveau/nvkm/engine/disp/base.c | 4 ++++ 4 files changed, 7 insertions(+) diff --git a/drm/nouveau/include/nvkm/subdev/bios/conn.h b/drm/nouveau/include/nvkm/subdev/bios/conn.h index e8e77ee2..deb47728 100644 --- a/drm/nouveau/include/nvkm/subdev/bios/conn.h +++ b/drm/nouveau/include/nvkm/subdev/bios/conn.h @@ -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 }; diff --git a/drm/nouveau/include/nvkm/subdev/bios/dcb.h b/drm/nouveau/include/nvkm/subdev/bios/dcb.h index 4892a65d..903d1176 100644 --- a/drm/nouveau/include/nvkm/subdev/bios/dcb.h +++ b/drm/nouveau/include/nvkm/subdev/bios/dcb.h @@ -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, diff --git a/drm/nouveau/nouveau_connector.c b/drm/nouveau/nouveau_connector.c index dab78c66..94799d88 100644 --- a/drm/nouveau/nouveau_connector.c +++ b/drm/nouveau/nouveau_connector.c @@ -1195,6 +1195,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; } diff --git a/drm/nouveau/nvkm/engine/disp/base.c b/drm/nouveau/nvkm/engine/disp/base.c index c7c84d34..5b0f49f8 100644 --- a/drm/nouveau/nvkm/engine/disp/base.c +++ b/drm/nouveau/nvkm/engine/disp/base.c @@ -283,6 +283,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); -- 2.13.3