DF-4202 / fix.diff
--- sys/dev/drm/amd/amdgpu/amdgpu_connectors.c +++ amdgpu_connectors.fixed.c @@ -402,10 +402,12 @@ * registers or add a mode table, but this works and is much * simpler. */ mode = drm_cvt_mode(dev, native_mode->hdisplay, native_mode->vdisplay, 60, true, false, false); - mode->type = DRM_MODE_TYPE_PREFERRED | DRM_MODE_TYPE_DRIVER; - DRM_DEBUG_KMS("Adding cvt approximation of native panel mode %s\n", mode->name); + if (mode) { + mode->type = DRM_MODE_TYPE_PREFERRED | DRM_MODE_TYPE_DRIVER; + DRM_DEBUG_KMS("Adding cvt approximation of native panel mode %s\n", mode->name); + } } return mode; } @@ -456,9 +458,10 @@ if (common_modes[i].w < 320 || common_modes[i].h < 200) continue; mode = drm_cvt_mode(dev, common_modes[i].w, common_modes[i].h, 60, false, false, false); - drm_mode_probed_add(connector, mode); + if (mode) + drm_mode_probed_add(connector, mode); } } static int amdgpu_connector_set_property(struct drm_connector *connector, |