From: Jesse Barnes <jbarnes@virtuousgeek.org>
To: Daniel Vetter <daniel.vetter@ffwll.ch>
Cc: Intel Graphics Development <intel-gfx@lists.freedesktop.org>
Subject: Re: [PATCH 04/10] drm/i915: move dri1 dungeon out of dev_priv
Date: Fri, 2 Nov 2012 12:09:14 -0700 [thread overview]
Message-ID: <20121102120914.763c1939@jbarnes-desktop> (raw)
In-Reply-To: <1351882511-21290-5-git-send-email-daniel.vetter@ffwll.ch>
On Fri, 2 Nov 2012 19:55:05 +0100
Daniel Vetter <daniel.vetter@ffwll.ch> wrote:
> Also, move dev_priv->counter there, it's only used in i915_dma.c
>
> And also move the dri1 dungeon at the end of dev_priv where no one
> cares about it.
>
> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
> ---
> drivers/gpu/drm/i915/i915_dma.c | 28 ++++++++++++++--------------
> drivers/gpu/drm/i915/i915_drv.h | 31 +++++++++++++++++--------------
> 2 files changed, 31 insertions(+), 28 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
> index a794d3b..320e2c9 100644
> --- a/drivers/gpu/drm/i915/i915_dma.c
> +++ b/drivers/gpu/drm/i915/i915_dma.c
> @@ -451,16 +451,16 @@ static void i915_emit_breadcrumb(struct drm_device *dev)
> drm_i915_private_t *dev_priv = dev->dev_private;
> struct drm_i915_master_private *master_priv = dev->primary->master->driver_priv;
>
> - dev_priv->counter++;
> - if (dev_priv->counter > 0x7FFFFFFFUL)
> - dev_priv->counter = 0;
> + dev_priv->dri1.counter++;
> + if (dev_priv->dri1.counter > 0x7FFFFFFFUL)
> + dev_priv->dri1.counter = 0;
> if (master_priv->sarea_priv)
> - master_priv->sarea_priv->last_enqueue = dev_priv->counter;
> + master_priv->sarea_priv->last_enqueue = dev_priv->dri1.counter;
>
> if (BEGIN_LP_RING(4) == 0) {
> OUT_RING(MI_STORE_DWORD_INDEX);
> OUT_RING(I915_BREADCRUMB_INDEX << MI_STORE_DWORD_INDEX_SHIFT);
> - OUT_RING(dev_priv->counter);
> + OUT_RING(dev_priv->dri1.counter);
> OUT_RING(0);
> ADVANCE_LP_RING();
> }
> @@ -602,12 +602,12 @@ static int i915_dispatch_flip(struct drm_device * dev)
>
> ADVANCE_LP_RING();
>
> - master_priv->sarea_priv->last_enqueue = dev_priv->counter++;
> + master_priv->sarea_priv->last_enqueue = dev_priv->dri1.counter++;
>
> if (BEGIN_LP_RING(4) == 0) {
> OUT_RING(MI_STORE_DWORD_INDEX);
> OUT_RING(I915_BREADCRUMB_INDEX << MI_STORE_DWORD_INDEX_SHIFT);
> - OUT_RING(dev_priv->counter);
> + OUT_RING(dev_priv->dri1.counter);
> OUT_RING(0);
> ADVANCE_LP_RING();
> }
> @@ -775,21 +775,21 @@ static int i915_emit_irq(struct drm_device * dev)
>
> DRM_DEBUG_DRIVER("\n");
>
> - dev_priv->counter++;
> - if (dev_priv->counter > 0x7FFFFFFFUL)
> - dev_priv->counter = 1;
> + dev_priv->dri1.counter++;
> + if (dev_priv->dri1.counter > 0x7FFFFFFFUL)
> + dev_priv->dri1.counter = 1;
> if (master_priv->sarea_priv)
> - master_priv->sarea_priv->last_enqueue = dev_priv->counter;
> + master_priv->sarea_priv->last_enqueue = dev_priv->dri1.counter;
>
> if (BEGIN_LP_RING(4) == 0) {
> OUT_RING(MI_STORE_DWORD_INDEX);
> OUT_RING(I915_BREADCRUMB_INDEX << MI_STORE_DWORD_INDEX_SHIFT);
> - OUT_RING(dev_priv->counter);
> + OUT_RING(dev_priv->dri1.counter);
> OUT_RING(MI_USER_INTERRUPT);
> ADVANCE_LP_RING();
> }
>
> - return dev_priv->counter;
> + return dev_priv->dri1.counter;
> }
>
> static int i915_wait_irq(struct drm_device * dev, int irq_nr)
> @@ -820,7 +820,7 @@ static int i915_wait_irq(struct drm_device * dev, int irq_nr)
>
> if (ret == -EBUSY) {
> DRM_ERROR("EBUSY -- rec: %d emitted: %d\n",
> - READ_BREADCRUMB(dev_priv), (int)dev_priv->counter);
> + READ_BREADCRUMB(dev_priv), (int)dev_priv->dri1.counter);
> }
>
> return ret;
> diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
> index 69cf5fa..98b52e7 100644
> --- a/drivers/gpu/drm/i915/i915_drv.h
> +++ b/drivers/gpu/drm/i915/i915_drv.h
> @@ -586,6 +586,19 @@ struct intel_ilk_power_mgmt {
> struct drm_i915_gem_object *renderctx;
> };
>
> +struct i915_dri1_state {
> + unsigned allow_batchbuffer : 1;
> + u32 __iomem *gfx_hws_cpu_addr;
> +
> + unsigned int cpp;
> + int back_offset;
> + int front_offset;
> + int current_page;
> + int page_flipping;
> +
> + uint32_t counter;
> +};
> +
> typedef struct drm_i915_private {
> struct drm_device *dev;
>
> @@ -620,7 +633,6 @@ typedef struct drm_i915_private {
> uint32_t next_seqno;
>
> drm_dma_handle_t *status_page_dmah;
> - uint32_t counter;
> struct resource mch_res;
>
> atomic_t irq_received;
> @@ -827,19 +839,6 @@ typedef struct drm_i915_private {
> u32 object_count;
> } mm;
>
> - /* Old dri1 support infrastructure, beware the dragons ya fools entering
> - * here! */
> - struct {
> - unsigned allow_batchbuffer : 1;
> - u32 __iomem *gfx_hws_cpu_addr;
> -
> - unsigned int cpp;
> - int back_offset;
> - int front_offset;
> - int current_page;
> - int page_flipping;
> - } dri1;
> -
> /* Kernel Modesetting */
>
> struct sdvo_device_mapping sdvo_mappings[2];
> @@ -893,6 +892,10 @@ typedef struct drm_i915_private {
> uint32_t hw_context_size;
>
> struct i915_suspend_saved_registers regfile;
> +
> + /* Old dri1 support infrastructure, beware the dragons ya fools entering
> + * here! */
> + struct i915_dri1_state dri1;
> } drm_i915_private_t;
>
> /* Iterate over initialised rings */
Reviewed-by: Jesse Barnes <jbarnes@virtuousgeek.org>
--
Jesse Barnes, Intel Open Source Technology Center
next prev parent reply other threads:[~2012-11-02 19:09 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-11-02 18:55 [PATCH 00/10] shrink dev_priv by 300 lines Daniel Vetter
2012-11-02 18:55 ` [PATCH 01/10] drm/i915: move the suspend/resume register file out of dev_priv Daniel Vetter
2012-11-02 19:06 ` Jesse Barnes
2012-11-02 18:55 ` [PATCH 02/10] drm/i915: move dev_priv->(rps|ips) out of line Daniel Vetter
2012-11-02 19:07 ` Jesse Barnes
2012-11-02 18:55 ` [PATCH 03/10] drm/i915: move pwrctx/renderctx to the other ilk power state Daniel Vetter
2012-11-02 19:07 ` Jesse Barnes
2012-11-02 18:55 ` [PATCH 04/10] drm/i915: move dri1 dungeon out of dev_priv Daniel Vetter
2012-11-02 19:09 ` Jesse Barnes [this message]
2012-11-02 18:55 ` [PATCH 05/10] drm/i915: extract dev_priv fbc state into separate substruct Daniel Vetter
2012-11-02 19:09 ` Jesse Barnes
2012-11-03 10:06 ` Daniel Vetter
2012-11-02 18:55 ` [PATCH 06/10] drm/i915: extract l3_parity substruct from dev_priv Daniel Vetter
2012-11-02 19:10 ` Jesse Barnes
2012-11-02 21:56 ` Daniel Vetter
2012-11-02 18:55 ` [PATCH 07/10] drm/i915: move dev_priv->mm out of line Daniel Vetter
2012-11-02 18:55 ` [PATCH 08/10] drm/i915: extract hangcheck/reset/error_state state into substruct Daniel Vetter
2012-11-02 18:55 ` [PATCH 09/10] drm/i915: kill dev_priv->modeset_on_lid Daniel Vetter
2012-11-02 18:55 ` [PATCH 10/10] drm/i915: move fence_regs to the fence lru Daniel Vetter
2012-11-04 17:30 ` [PATCH 00/10] shrink dev_priv by 300 lines Ben Widawsky
2012-11-04 17:53 ` Daniel Vetter
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20121102120914.763c1939@jbarnes-desktop \
--to=jbarnes@virtuousgeek.org \
--cc=daniel.vetter@ffwll.ch \
--cc=intel-gfx@lists.freedesktop.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox