Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 217932
b: refs/heads/master
c: 23f09ce
h: refs/heads/master
v: v3
  • Loading branch information
Chris Wilson committed Sep 8, 2010
1 parent 78f5623 commit 7c6d08c
Show file tree
Hide file tree
Showing 4 changed files with 28 additions and 29 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 5dcdbcb06badbdf2faa698bf3198e421a1e12840
refs/heads/master: 23f09ce31ca68af3728ac5eed3e3efb03c5f990a
8 changes: 4 additions & 4 deletions trunk/drivers/gpu/drm/i915/intel_display.c
Original file line number Diff line number Diff line change
Expand Up @@ -2224,11 +2224,11 @@ static void ironlake_crtc_dpms(struct drm_crtc *crtc, int mode)
static void intel_crtc_dpms_overlay(struct intel_crtc *intel_crtc, bool enable)
{
if (!enable && intel_crtc->overlay) {
struct intel_overlay *overlay = intel_crtc->overlay;
struct drm_device *dev = intel_crtc->base.dev;

mutex_lock(&overlay->dev->struct_mutex);
(void) intel_overlay_switch_off(overlay, false);
mutex_unlock(&overlay->dev->struct_mutex);
mutex_lock(&dev->struct_mutex);
(void) intel_overlay_switch_off(intel_crtc->overlay, false);
mutex_unlock(&dev->struct_mutex);
}

/* Let userspace switch the overlay on again. In most cases userspace
Expand Down
24 changes: 0 additions & 24 deletions trunk/drivers/gpu/drm/i915/intel_drv.h
Original file line number Diff line number Diff line change
Expand Up @@ -146,30 +146,6 @@ struct intel_connector {
struct drm_connector base;
};

struct intel_crtc;
struct intel_overlay {
struct drm_device *dev;
struct intel_crtc *crtc;
struct drm_i915_gem_object *vid_bo;
struct drm_i915_gem_object *old_vid_bo;
int active;
int pfit_active;
u32 pfit_vscale_ratio; /* shifted-point number, (1<<12) == 1.0 */
u32 color_key;
u32 brightness, contrast, saturation;
u32 old_xscale, old_yscale;
/* register access */
u32 flip_addr;
struct drm_i915_gem_object *reg_bo;
/* flip handling */
uint32_t last_flip_req;
int hw_wedged;
#define HW_WEDGED 1
#define NEEDS_WAIT_FOR_FLIP 2
#define RELEASE_OLD_VID 3
#define SWITCH_OFF 4
};

struct intel_crtc {
struct drm_crtc base;
enum pipe pipe;
Expand Down
23 changes: 23 additions & 0 deletions trunk/drivers/gpu/drm/i915/intel_overlay.c
Original file line number Diff line number Diff line change
Expand Up @@ -170,6 +170,29 @@ struct overlay_registers {
u16 RESERVEDG[0x100 / 2 - N_HORIZ_UV_TAPS * N_PHASES];
};

struct intel_overlay {
struct drm_device *dev;
struct intel_crtc *crtc;
struct drm_i915_gem_object *vid_bo;
struct drm_i915_gem_object *old_vid_bo;
int active;
int pfit_active;
u32 pfit_vscale_ratio; /* shifted-point number, (1<<12) == 1.0 */
u32 color_key;
u32 brightness, contrast, saturation;
u32 old_xscale, old_yscale;
/* register access */
u32 flip_addr;
struct drm_i915_gem_object *reg_bo;
/* flip handling */
uint32_t last_flip_req;
int hw_wedged;
#define HW_WEDGED 1
#define NEEDS_WAIT_FOR_FLIP 2
#define RELEASE_OLD_VID 3
#define SWITCH_OFF 4
};

static struct overlay_registers *
intel_overlay_map_regs_atomic(struct intel_overlay *overlay,
int slot)
Expand Down

0 comments on commit 7c6d08c

Please sign in to comment.