Message ID | 1356917699-19479-1-git-send-email-aaro.koskinen@iki.fi (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Mon, Dec 31, 2012 at 03:34:59AM +0200, Aaro Koskinen wrote: > Check that the AGP aperture can be mapped. This follows a similar change > done for Radeon (commit 365048ff, drm/radeon: AGP memory is only I/O if > the aperture can be mapped by the CPU.). > > The patch fixes the following error seen on G5 iMac: > > nouveau E[ DRM] failed to create kernel channel, -12 > > Reviewed-by: Michel Dänzer <michel@daenzer.net> > Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> > --- This patch fixes https://bugs.freedesktop.org/show_bug.cgi?id=58806. For some (weird) reason Nouveau worked on this configuration on 3.6 kernel, so cc'ing stable@vger seems to be appropriate. > drivers/gpu/drm/nouveau/nouveau_bo.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/nouveau/nouveau_bo.c b/drivers/gpu/drm/nouveau/nouveau_bo.c > index 5614c89..69d7b1d 100644 > --- a/drivers/gpu/drm/nouveau/nouveau_bo.c > +++ b/drivers/gpu/drm/nouveau/nouveau_bo.c > @@ -1276,7 +1276,7 @@ nouveau_ttm_io_mem_reserve(struct ttm_bo_device *bdev, struct ttm_mem_reg *mem) > if (drm->agp.stat == ENABLED) { > mem->bus.offset = mem->start << PAGE_SHIFT; > mem->bus.base = drm->agp.base; > - mem->bus.is_iomem = true; > + mem->bus.is_iomem = !dev->agp->cant_use_aperture; > } > #endif > break; > --
On Tue, Jan 1, 2013 at 11:21 AM, Marcin Slusarz <marcin.slusarz@gmail.com> wrote: > On Mon, Dec 31, 2012 at 03:34:59AM +0200, Aaro Koskinen wrote: >> Check that the AGP aperture can be mapped. This follows a similar change >> done for Radeon (commit 365048ff, drm/radeon: AGP memory is only I/O if >> the aperture can be mapped by the CPU.). >> >> The patch fixes the following error seen on G5 iMac: >> >> nouveau E[ DRM] failed to create kernel channel, -12 >> >> Reviewed-by: Michel Dänzer <michel@daenzer.net> >> Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> >> --- > > This patch fixes https://bugs.freedesktop.org/show_bug.cgi?id=58806. > For some (weird) reason Nouveau worked on this configuration on 3.6 kernel, > so cc'ing stable@vger seems to be appropriate. Cool I've picked this up and applied it for stable into fixes now. Dave.
diff --git a/drivers/gpu/drm/nouveau/nouveau_bo.c b/drivers/gpu/drm/nouveau/nouveau_bo.c index 5614c89..69d7b1d 100644 --- a/drivers/gpu/drm/nouveau/nouveau_bo.c +++ b/drivers/gpu/drm/nouveau/nouveau_bo.c @@ -1276,7 +1276,7 @@ nouveau_ttm_io_mem_reserve(struct ttm_bo_device *bdev, struct ttm_mem_reg *mem) if (drm->agp.stat == ENABLED) { mem->bus.offset = mem->start << PAGE_SHIFT; mem->bus.base = drm->agp.base; - mem->bus.is_iomem = true; + mem->bus.is_iomem = !dev->agp->cant_use_aperture; } #endif break;