summaryrefslogtreecommitdiff
path: root/linux-core/intel_display.c
diff options
context:
space:
mode:
Diffstat (limited to 'linux-core/intel_display.c')
-rw-r--r--linux-core/intel_display.c21
1 files changed, 15 insertions, 6 deletions
diff --git a/linux-core/intel_display.c b/linux-core/intel_display.c
index 6493af16..0081b5be 100644
--- a/linux-core/intel_display.c
+++ b/linux-core/intel_display.c
@@ -1167,13 +1167,10 @@ struct drm_crtc *intel_get_load_detect_pipe(struct intel_output *intel_output,
}
/*
- * If we didn't find an unused CRTC, use the first available one
- * that can drive this connector.
+ * If we didn't find an unused CRTC, don't use any.
*/
if (!crtc) {
- crtc = supported_crtc;
- if (!crtc)
- return NULL;
+ return NULL;
}
encoder->crtc = crtc;
@@ -1366,7 +1363,7 @@ void intel_crtc_init(struct drm_device *dev, int pipe)
struct intel_crtc *intel_crtc;
int i;
- intel_crtc = kzalloc(sizeof(struct intel_crtc), GFP_KERNEL);
+ intel_crtc = kzalloc(sizeof(struct intel_crtc) + (INTELFB_CONN_LIMIT * sizeof(struct drm_connector *)), GFP_KERNEL);
if (intel_crtc == NULL)
return;
@@ -1383,6 +1380,16 @@ void intel_crtc_init(struct drm_device *dev, int pipe)
intel_crtc->cursor_addr = 0;
intel_crtc->dpms_mode = DPMSModeOff;
drm_crtc_helper_add(&intel_crtc->base, &intel_helper_funcs);
+
+ intel_crtc->mode_set.crtc = &intel_crtc->base;
+ intel_crtc->mode_set.connectors = (struct drm_connector **)(intel_crtc + 1);
+ intel_crtc->mode_set.num_connectors = 0;
+
+ if (i915_fbpercrtc) {
+
+
+
+ }
}
struct drm_crtc *intel_get_crtc_from_pipe(struct drm_device *dev, int pipe)
@@ -1513,6 +1520,7 @@ struct drm_framebuffer *intel_user_framebuffer_create(struct drm_device *dev,
static const struct drm_mode_config_funcs intel_mode_funcs = {
.resize_fb = NULL,
.fb_create = intel_user_framebuffer_create,
+ .fb_changed = intelfb_probe,
};
void intel_modeset_init(struct drm_device *dev)
@@ -1554,6 +1562,7 @@ void intel_modeset_init(struct drm_device *dev)
intel_setup_outputs(dev);
+ /* setup fbs */
//drm_initial_config(dev, false);
}