Commit 21c74a8e authored by Jason Wessel's avatar Jason Wessel Committed by Dave Airlie

drm, kdb, kms: Change mode_set_base_atomic() enter argument to be an enum

The enter argument as implemented by commit 413d45d3 (drm, kdb, kms:
Add an enter argument to mode_set_base_atomic() API) should be more
descriptive as to what it does vs just passing 1 and 0 around.

There is no runtime behavior change as a result of this patch.
Reported-by: default avatarJesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: default avatarJason Wessel <jason.wessel@windriver.com>
CC: David Airlie <airlied@linux.ie>
CC: dri-devel@lists.freedesktop.org
Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
parent 99231028
...@@ -289,8 +289,7 @@ int drm_fb_helper_debug_enter(struct fb_info *info) ...@@ -289,8 +289,7 @@ int drm_fb_helper_debug_enter(struct fb_info *info)
mode_set->fb, mode_set->fb,
mode_set->x, mode_set->x,
mode_set->y, mode_set->y,
1); ENTER_ATOMIC_MODE_SET);
} }
} }
...@@ -336,7 +335,7 @@ int drm_fb_helper_debug_leave(struct fb_info *info) ...@@ -336,7 +335,7 @@ int drm_fb_helper_debug_leave(struct fb_info *info)
drm_fb_helper_restore_lut_atomic(mode_set->crtc); drm_fb_helper_restore_lut_atomic(mode_set->crtc);
funcs->mode_set_base_atomic(mode_set->crtc, fb, crtc->x, funcs->mode_set_base_atomic(mode_set->crtc, fb, crtc->x,
crtc->y, 0); crtc->y, LEAVE_ATOMIC_MODE_SET);
} }
return 0; return 0;
......
...@@ -1492,7 +1492,7 @@ intel_pin_and_fence_fb_obj(struct drm_device *dev, ...@@ -1492,7 +1492,7 @@ intel_pin_and_fence_fb_obj(struct drm_device *dev,
/* Assume fb object is pinned & idle & fenced and just update base pointers */ /* Assume fb object is pinned & idle & fenced and just update base pointers */
static int static int
intel_pipe_set_base_atomic(struct drm_crtc *crtc, struct drm_framebuffer *fb, intel_pipe_set_base_atomic(struct drm_crtc *crtc, struct drm_framebuffer *fb,
int x, int y, int enter) int x, int y, enum mode_set_atomic state)
{ {
struct drm_device *dev = crtc->dev; struct drm_device *dev = crtc->dev;
struct drm_i915_private *dev_priv = dev->dev_private; struct drm_i915_private *dev_priv = dev->dev_private;
...@@ -1614,7 +1614,8 @@ intel_pipe_set_base(struct drm_crtc *crtc, int x, int y, ...@@ -1614,7 +1614,8 @@ intel_pipe_set_base(struct drm_crtc *crtc, int x, int y,
atomic_read(&obj_priv->pending_flip) == 0); atomic_read(&obj_priv->pending_flip) == 0);
} }
ret = intel_pipe_set_base_atomic(crtc, crtc->fb, x, y, 0); ret = intel_pipe_set_base_atomic(crtc, crtc->fb, x, y,
LEAVE_ATOMIC_MODE_SET);
if (ret) { if (ret) {
i915_gem_object_unpin(to_intel_framebuffer(crtc->fb)->obj); i915_gem_object_unpin(to_intel_framebuffer(crtc->fb)->obj);
mutex_unlock(&dev->struct_mutex); mutex_unlock(&dev->struct_mutex);
......
...@@ -860,12 +860,12 @@ nv04_crtc_mode_set_base(struct drm_crtc *crtc, int x, int y, ...@@ -860,12 +860,12 @@ nv04_crtc_mode_set_base(struct drm_crtc *crtc, int x, int y,
static int static int
nv04_crtc_mode_set_base_atomic(struct drm_crtc *crtc, nv04_crtc_mode_set_base_atomic(struct drm_crtc *crtc,
struct drm_framebuffer *fb, struct drm_framebuffer *fb,
int x, int y, int enter) int x, int y, enum mode_set_atomic state)
{ {
struct drm_nouveau_private *dev_priv = crtc->dev->dev_private; struct drm_nouveau_private *dev_priv = crtc->dev->dev_private;
struct drm_device *dev = dev_priv->dev; struct drm_device *dev = dev_priv->dev;
if (enter) if (state == ENTER_ATOMIC_MODE_SET)
nouveau_fbcon_save_disable_accel(dev); nouveau_fbcon_save_disable_accel(dev);
else else
nouveau_fbcon_restore_accel(dev); nouveau_fbcon_restore_accel(dev);
......
...@@ -708,7 +708,7 @@ nv50_crtc_mode_set_base(struct drm_crtc *crtc, int x, int y, ...@@ -708,7 +708,7 @@ nv50_crtc_mode_set_base(struct drm_crtc *crtc, int x, int y,
static int static int
nv50_crtc_mode_set_base_atomic(struct drm_crtc *crtc, nv50_crtc_mode_set_base_atomic(struct drm_crtc *crtc,
struct drm_framebuffer *fb, struct drm_framebuffer *fb,
int x, int y, int enter) int x, int y, enum mode_set_atomic state)
{ {
return nv50_crtc_do_mode_set_base(crtc, fb, x, y, true, true); return nv50_crtc_do_mode_set_base(crtc, fb, x, y, true, true);
} }
......
...@@ -1270,7 +1270,7 @@ int atombios_crtc_set_base(struct drm_crtc *crtc, int x, int y, ...@@ -1270,7 +1270,7 @@ int atombios_crtc_set_base(struct drm_crtc *crtc, int x, int y,
int atombios_crtc_set_base_atomic(struct drm_crtc *crtc, int atombios_crtc_set_base_atomic(struct drm_crtc *crtc,
struct drm_framebuffer *fb, struct drm_framebuffer *fb,
int x, int y, int enter) int x, int y, enum mode_set_atomic state)
{ {
struct drm_device *dev = crtc->dev; struct drm_device *dev = crtc->dev;
struct radeon_device *rdev = dev->dev_private; struct radeon_device *rdev = dev->dev_private;
......
...@@ -353,7 +353,7 @@ int radeon_crtc_set_base(struct drm_crtc *crtc, int x, int y, ...@@ -353,7 +353,7 @@ int radeon_crtc_set_base(struct drm_crtc *crtc, int x, int y,
int radeon_crtc_set_base_atomic(struct drm_crtc *crtc, int radeon_crtc_set_base_atomic(struct drm_crtc *crtc,
struct drm_framebuffer *fb, struct drm_framebuffer *fb,
int x, int y, int enter) int x, int y, enum mode_set_atomic state)
{ {
return radeon_crtc_do_set_base(crtc, fb, x, y, 1); return radeon_crtc_do_set_base(crtc, fb, x, y, 1);
} }
......
...@@ -35,6 +35,7 @@ ...@@ -35,6 +35,7 @@
#include <drm_edid.h> #include <drm_edid.h>
#include <drm_dp_helper.h> #include <drm_dp_helper.h>
#include <drm_fixed.h> #include <drm_fixed.h>
#include <drm_crtc_helper.h>
#include <linux/i2c.h> #include <linux/i2c.h>
#include <linux/i2c-id.h> #include <linux/i2c-id.h>
#include <linux/i2c-algo-bit.h> #include <linux/i2c-algo-bit.h>
...@@ -526,7 +527,8 @@ extern int atombios_crtc_set_base(struct drm_crtc *crtc, int x, int y, ...@@ -526,7 +527,8 @@ extern int atombios_crtc_set_base(struct drm_crtc *crtc, int x, int y,
struct drm_framebuffer *old_fb); struct drm_framebuffer *old_fb);
extern int atombios_crtc_set_base_atomic(struct drm_crtc *crtc, extern int atombios_crtc_set_base_atomic(struct drm_crtc *crtc,
struct drm_framebuffer *fb, struct drm_framebuffer *fb,
int x, int y, int enter); int x, int y,
enum mode_set_atomic state);
extern int atombios_crtc_mode_set(struct drm_crtc *crtc, extern int atombios_crtc_mode_set(struct drm_crtc *crtc,
struct drm_display_mode *mode, struct drm_display_mode *mode,
struct drm_display_mode *adjusted_mode, struct drm_display_mode *adjusted_mode,
...@@ -538,7 +540,8 @@ extern int radeon_crtc_set_base(struct drm_crtc *crtc, int x, int y, ...@@ -538,7 +540,8 @@ extern int radeon_crtc_set_base(struct drm_crtc *crtc, int x, int y,
struct drm_framebuffer *old_fb); struct drm_framebuffer *old_fb);
extern int radeon_crtc_set_base_atomic(struct drm_crtc *crtc, extern int radeon_crtc_set_base_atomic(struct drm_crtc *crtc,
struct drm_framebuffer *fb, struct drm_framebuffer *fb,
int x, int y, int enter); int x, int y,
enum mode_set_atomic state);
extern int radeon_crtc_do_set_base(struct drm_crtc *crtc, extern int radeon_crtc_do_set_base(struct drm_crtc *crtc,
struct drm_framebuffer *fb, struct drm_framebuffer *fb,
int x, int y, int atomic); int x, int y, int atomic);
......
...@@ -39,6 +39,11 @@ ...@@ -39,6 +39,11 @@
#include <linux/fb.h> #include <linux/fb.h>
enum mode_set_atomic {
LEAVE_ATOMIC_MODE_SET,
ENTER_ATOMIC_MODE_SET,
};
struct drm_crtc_helper_funcs { struct drm_crtc_helper_funcs {
/* /*
* Control power levels on the CRTC. If the mode passed in is * Control power levels on the CRTC. If the mode passed in is
...@@ -62,7 +67,7 @@ struct drm_crtc_helper_funcs { ...@@ -62,7 +67,7 @@ struct drm_crtc_helper_funcs {
struct drm_framebuffer *old_fb); struct drm_framebuffer *old_fb);
int (*mode_set_base_atomic)(struct drm_crtc *crtc, int (*mode_set_base_atomic)(struct drm_crtc *crtc,
struct drm_framebuffer *fb, int x, int y, struct drm_framebuffer *fb, int x, int y,
int is_enter); enum mode_set_atomic);
/* reload the current crtc LUT */ /* reload the current crtc LUT */
void (*load_lut)(struct drm_crtc *crtc); void (*load_lut)(struct drm_crtc *crtc);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment