On Mon, 13 Jan 2014 16:25:21 +0530 akash.goel@xxxxxxxxx wrote: > From: Akash Goel <akash.goel@xxxxxxxxx> > > There is a conflict seen when requesting the kernel to reserve > the physical space used for the stolen area. This is because > some BIOS are wrapping the stolen area in the root PCI bus, but have > an off-by-one error. As a workaround we retry the reservation with an > offset of 1 instead of 0. > > v2: updated commit message & the comment in source file (Daniel) > > Signed-off-by: Akash Goel <akash.goel@xxxxxxxxx> > --- > drivers/gpu/drm/i915/i915_gem_stolen.c | 20 +++++++++++++++++--- > 1 file changed, 17 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/i915/i915_gem_stolen.c b/drivers/gpu/drm/i915/i915_gem_stolen.c > index 1a24e84..114a806 100644 > --- a/drivers/gpu/drm/i915/i915_gem_stolen.c > +++ b/drivers/gpu/drm/i915/i915_gem_stolen.c > @@ -82,9 +82,23 @@ static unsigned long i915_stolen_to_physical(struct drm_device *dev) > r = devm_request_mem_region(dev->dev, base, dev_priv->gtt.stolen_size, > "Graphics Stolen Memory"); > if (r == NULL) { > - DRM_ERROR("conflict detected with stolen region: [0x%08x - 0x%08x]\n", > - base, base + (uint32_t)dev_priv->gtt.stolen_size); > - base = 0; > + /* > + * One more attempt but this time requesting region from > + * base + 1, as we have seen that this resolves the region > + * conflict with the PCI Bus. > + * This is a BIOS w/a: Some BIOS wrap stolen in the root > + * PCI bus, but have an off-by-one error. Hence retry the > + * reservation starting from 1 instead of 0. > + */ > + r = devm_request_mem_region(dev->dev, base + 1, > + dev_priv->gtt.stolen_size - 1, > + "Graphics Stolen Memory"); > + if (r == NULL) { > + DRM_ERROR("conflict detected with stolen region:"\ > + "[0x%08x - 0x%08x]\n", > + base, base + (uint32_t)dev_priv->gtt.stolen_size); > + base = 0; > + } > } > > return base; Reviewed-by: Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx> Tested-by: Arjan van de Ven <arjan@xxxxxxxxxxxxxxx> Thanks, -- Jesse Barnes, Intel Open Source Technology Center _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx