i915: execbuf now works without i915_dma_init being called

main
Jakob Bornecrantz 2008-05-13 09:24:47 +02:00
parent d32ce7f621
commit 5be53a0881
2 changed files with 11 additions and 2 deletions

View File

@ -197,7 +197,9 @@ static int i915_initialize(struct drm_device * dev,
#ifdef I915_HAVE_BUFFER
dev_priv->max_validate_buffers = I915_MAX_VALIDATE_BUFFERS;
if (!drm_core_check_feature(dev, DRIVER_MODESET)) {
dev_priv->max_validate_buffers = I915_MAX_VALIDATE_BUFFERS;
}
#endif
if (!dev_priv->ring.Size) {
@ -260,8 +262,11 @@ static int i915_initialize(struct drm_device * dev,
I915_WRITE(0x02080, dev_priv->dma_status_page);
}
DRM_DEBUG("Enabled hardware status page\n");
#ifdef I915_HAVE_BUFFER
mutex_init(&dev_priv->cmdbuf_mutex);
if (!drm_core_check_feature(dev, DRIVER_MODESET)) {
mutex_init(&dev_priv->cmdbuf_mutex);
}
#endif
if (init->func == I915_INIT_DMA2) {

View File

@ -155,10 +155,14 @@ int i915_load_modeset_init(struct drm_device *dev)
* private backbuffer/depthbuffer usage.
*/
dev_priv->use_mi_batchbuffer_start = 0;
if (IS_I965G(dev)) /* 965 doesn't support older method */
dev_priv->use_mi_batchbuffer_start = 1;
/* Allow hardware batchbuffers unless told otherwise.
*/
dev_priv->allow_batchbuffer = 1;
dev_priv->max_validate_buffers = I915_MAX_VALIDATE_BUFFERS;
mutex_init(&dev_priv->cmdbuf_mutex);
/* Program Hardware Status Page */
if (!IS_G33(dev)) {