drm/i915: Allocate connector state together with the connectors

Connector states were being allocated in intel_setup_outputs() in loop
over all connectors. That meant hot-added connectors would have a NULL
state. Since the change to use a struct drm_atomic_state for the legacy
modeset, connector states are necessary for the i915 driver to function
properly, so that would lead to oopses.

v2: Fix test for intel_connector_init() success in lvds and sdvo (PRTS)

Signed-off-by: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
Reported-and-tested-by: Nicolas Kalkhof <nkalkhof@web.de>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
This commit is contained in:
Ander Conselvan de Oliveira
2015-04-10 10:59:10 +03:00
کامیت شده توسط Daniel Vetter
والد a6631bc8d6
کامیت 9bdbd0b911
12فایلهای تغییر یافته به همراه64 افزوده شده و 46 حذف شده

مشاهده پرونده

@@ -946,6 +946,12 @@ void intel_lvds_init(struct drm_device *dev)
return;
}
if (intel_connector_init(&lvds_connector->base) < 0) {
kfree(lvds_connector);
kfree(lvds_encoder);
return;
}
lvds_encoder->attached_connector = lvds_connector;
intel_encoder = &lvds_encoder->base;