Message ID | 1482351129-10398-2-git-send-email-dhinakaran.pandiyan@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Wed, Dec 21, 2016 at 3:12 PM, Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> wrote: > i915 does not set DRIVER_ATOMIC by default yet but uses atomic_check and > atomic_commit. drm_object_property_get_value() does not read the correct > value of atomic properties if DRIVER_ATOMIC is not set. Checking whether > the driver uses atomic modeset is a better check instead as the property > values are tracked in the state structures. > I think we are in the same boat. Adding Andrey and Harry. Alex > v2: Included header > > Cc: Daniel Vetter <daniel.vetter@ffwll.ch> > Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> > Signed-off-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> > --- > drivers/gpu/drm/drm_mode_object.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/drm_mode_object.c b/drivers/gpu/drm/drm_mode_object.c > index 9f17085..14543ff 100644 > --- a/drivers/gpu/drm/drm_mode_object.c > +++ b/drivers/gpu/drm/drm_mode_object.c > @@ -23,6 +23,7 @@ > #include <linux/export.h> > #include <drm/drmP.h> > #include <drm/drm_mode_object.h> > +#include <drm/drm_atomic.h> > > #include "drm_crtc_internal.h" > > @@ -273,7 +274,7 @@ int drm_object_property_get_value(struct drm_mode_object *obj, > * their value in obj->properties->values[].. mostly to avoid > * having to deal w/ EDID and similar props in atomic paths: > */ > - if (drm_core_check_feature(property->dev, DRIVER_ATOMIC) && > + if (drm_drv_uses_atomic_modeset(property->dev) && > !(property->flags & DRM_MODE_PROP_IMMUTABLE)) > return drm_atomic_get_property(obj, property, val); > > -- > 2.7.4 > > _______________________________________________ > dri-devel mailing list > dri-devel@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel
diff --git a/drivers/gpu/drm/drm_mode_object.c b/drivers/gpu/drm/drm_mode_object.c index 9f17085..14543ff 100644 --- a/drivers/gpu/drm/drm_mode_object.c +++ b/drivers/gpu/drm/drm_mode_object.c @@ -23,6 +23,7 @@ #include <linux/export.h> #include <drm/drmP.h> #include <drm/drm_mode_object.h> +#include <drm/drm_atomic.h> #include "drm_crtc_internal.h" @@ -273,7 +274,7 @@ int drm_object_property_get_value(struct drm_mode_object *obj, * their value in obj->properties->values[].. mostly to avoid * having to deal w/ EDID and similar props in atomic paths: */ - if (drm_core_check_feature(property->dev, DRIVER_ATOMIC) && + if (drm_drv_uses_atomic_modeset(property->dev) && !(property->flags & DRM_MODE_PROP_IMMUTABLE)) return drm_atomic_get_property(obj, property, val);