On Fri, Jul 24, 2015 at 10:39:04PM -0400, Dan Williams wrote: > acpi_os_ioremap uses cached mappings, however it appears that i915 > wants to read dynamic platform state. Switch to ioremap() to prevent it > reading stale state from cache. > > Cc: Daniel Vetter <daniel.vetter@xxxxxxxxx> > Cc: Jani Nikula <jani.nikula@xxxxxxxxxxxxxxx> > Cc: intel-gfx@xxxxxxxxxxxxxxxxxxxxx > Cc: David Airlie <airlied@xxxxxxxx> > Cc: dri-devel@xxxxxxxxxxxxxxxxxxxxx > Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx> > --- > drivers/gpu/drm/i915/intel_opregion.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/i915/intel_opregion.c b/drivers/gpu/drm/i915/intel_opregion.c > index 481337436f72..16ba7c67410d 100644 > --- a/drivers/gpu/drm/i915/intel_opregion.c > +++ b/drivers/gpu/drm/i915/intel_opregion.c > @@ -863,7 +863,7 @@ int intel_opregion_setup(struct drm_device *dev) > INIT_WORK(&opregion->asle_work, asle_work); > #endif > > - base = acpi_os_ioremap(asls, OPREGION_SIZE); > + base = ioremap(asls, OPREGION_SIZE); OpRegion is cached memory shared with the firmware afaik, we probably want a memremap here and switch away from the ioread/write stuff. We have a similar confusion going on for the vbt parsing (which on anything but really old machines is also just normal memory). Same holds for gma500, which is just a copy of i915 for some special platforms. -Daniel -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel