diff options
author | Mark Brown <broonie@linaro.org> | 2013-08-14 12:22:09 +0200 |
---|---|---|
committer | Mark Brown <broonie@linaro.org> | 2013-08-14 12:22:09 +0200 |
commit | 3c729b4344456ebd520636563c854090e3dec611 (patch) | |
tree | 6caae9f4d4c9f9ae2e033d64486649c6f603a209 /drivers/gpu/drm/nouveau/nouveau_drm.c | |
parent | spi: s3c64xx: Use dmaengine_prep_slave_single() to prepare DMA transfers (diff) | |
parent | Linux 3.11-rc5 (diff) | |
download | linux-3c729b4344456ebd520636563c854090e3dec611.tar.xz linux-3c729b4344456ebd520636563c854090e3dec611.zip |
Merge tag 'v3.11-rc5' into spi-s3c64xx
Linux 3.11-rc5
Diffstat (limited to 'drivers/gpu/drm/nouveau/nouveau_drm.c')
-rw-r--r-- | drivers/gpu/drm/nouveau/nouveau_drm.c | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/drivers/gpu/drm/nouveau/nouveau_drm.c b/drivers/gpu/drm/nouveau/nouveau_drm.c index 218a4b522fe5..61972668fd05 100644 --- a/drivers/gpu/drm/nouveau/nouveau_drm.c +++ b/drivers/gpu/drm/nouveau/nouveau_drm.c @@ -192,6 +192,18 @@ nouveau_accel_init(struct nouveau_drm *drm) arg0 = NVE0_CHANNEL_IND_ENGINE_GR; arg1 = 1; + } else + if (device->chipset >= 0xa3 && + device->chipset != 0xaa && + device->chipset != 0xac) { + ret = nouveau_channel_new(drm, &drm->client, NVDRM_DEVICE, + NVDRM_CHAN + 1, NvDmaFB, NvDmaTT, + &drm->cechan); + if (ret) + NV_ERROR(drm, "failed to create ce channel, %d\n", ret); + + arg0 = NvDmaFB; + arg1 = NvDmaTT; } else { arg0 = NvDmaFB; arg1 = NvDmaTT; @@ -284,8 +296,6 @@ static int nouveau_drm_probe(struct pci_dev *pdev, return 0; } -static struct lock_class_key drm_client_lock_class_key; - static int nouveau_drm_load(struct drm_device *dev, unsigned long flags) { @@ -297,7 +307,6 @@ nouveau_drm_load(struct drm_device *dev, unsigned long flags) ret = nouveau_cli_create(pdev, "DRM", sizeof(*drm), (void**)&drm); if (ret) return ret; - lockdep_set_class(&drm->client.mutex, &drm_client_lock_class_key); dev->dev_private = drm; drm->dev = dev; |