All of lore.kernel.org
 help / color / mirror / Atom feed
From: Paz Zcharya <pazz@chromium.org>
To: Ville Syrjala <ville.syrjala@linux.intel.com>
Cc: intel-gfx@lists.freedesktop.org, Andrzej Hajda <andrzej.hajda@intel.com>
Subject: Re: [PATCH v4 06/16] drm/i915: Rename the DSM/GSM registers
Date: Tue, 30 Jan 2024 23:20:48 +0000	[thread overview]
Message-ID: <ZbmEUId6cflsIKmB@google.com> (raw)
In-Reply-To: <20240125102804.22576-1-ville.syrjala@linux.intel.com>

On Thu, Jan 25, 2024 at 12:28:04PM +0200, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> 
> 0x108100 and 0x1080c0 have been around since snb. Rename the
> defines appropriately.
> 
> v2: Rebase
> 
> Cc: Paz Zcharya <pazz@chromium.org>
> Reviewed-by: Andrzej Hajda <andrzej.hajda@intel.com>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

Hi Ville,

Thank you so much for this incredible series.
It solves the issue regarding MTL initial plane readout
that Andrzej Hajda and I worked on in
https://patchwork.freedesktop.org/patch/570811/?series=127130&rev=2
In addition, it solved the issue with the new GOP.

I tested it on two different devices with Meteor Lake and it worked perfectly:
no i915 errors, no flickers or observable issues.

Tested-by: Paz Zcharya <pazz@chromium.org>

> ---
>  drivers/gpu/drm/i915/gem/i915_gem_stolen.c  | 4 ++--
>  drivers/gpu/drm/i915/gt/intel_ggtt.c        | 2 +-
>  drivers/gpu/drm/i915/gt/intel_region_lmem.c | 2 +-
>  drivers/gpu/drm/i915/i915_reg.h             | 7 ++++---
>  4 files changed, 8 insertions(+), 7 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/gem/i915_gem_stolen.c b/drivers/gpu/drm/i915/gem/i915_gem_stolen.c
> index 9ddcae9b3997..ad6dd7f3259b 100644
> --- a/drivers/gpu/drm/i915/gem/i915_gem_stolen.c
> +++ b/drivers/gpu/drm/i915/gem/i915_gem_stolen.c
> @@ -935,7 +935,7 @@ i915_gem_stolen_lmem_setup(struct drm_i915_private *i915, u16 type,
>  		GEM_BUG_ON((dsm_base + dsm_size) > lmem_size);
>  	} else {
>  		/* Use DSM base address instead for stolen memory */
> -		dsm_base = intel_uncore_read64(uncore, GEN12_DSMBASE) & GEN12_BDSM_MASK;
> +		dsm_base = intel_uncore_read64(uncore, GEN6_DSMBASE) & GEN11_BDSM_MASK;
>  		if (WARN_ON(lmem_size < dsm_base))
>  			return ERR_PTR(-ENODEV);
>  		dsm_size = ALIGN_DOWN(lmem_size - dsm_base, SZ_1M);
> @@ -943,7 +943,7 @@ i915_gem_stolen_lmem_setup(struct drm_i915_private *i915, u16 type,
>  
>  	if (i915_direct_stolen_access(i915)) {
>  		drm_dbg(&i915->drm, "Using direct DSM access\n");
> -		io_start = intel_uncore_read64(uncore, GEN12_DSMBASE) & GEN12_BDSM_MASK;
> +		io_start = intel_uncore_read64(uncore, GEN6_DSMBASE) & GEN11_BDSM_MASK;
>  		io_size = dsm_size;
>  	} else if (pci_resource_len(pdev, GEN12_LMEM_BAR) < lmem_size) {
>  		io_start = 0;
> diff --git a/drivers/gpu/drm/i915/gt/intel_ggtt.c b/drivers/gpu/drm/i915/gt/intel_ggtt.c
> index bce5d8025340..ec1cbe229f0e 100644
> --- a/drivers/gpu/drm/i915/gt/intel_ggtt.c
> +++ b/drivers/gpu/drm/i915/gt/intel_ggtt.c
> @@ -1163,7 +1163,7 @@ static int ggtt_probe_common(struct i915_ggtt *ggtt, u64 size)
>  
>  	if (i915_direct_stolen_access(i915)) {
>  		drm_dbg(&i915->drm, "Using direct GSM access\n");
> -		phys_addr = intel_uncore_read64(uncore, GEN12_GSMBASE) & GEN12_BDSM_MASK;
> +		phys_addr = intel_uncore_read64(uncore, GEN6_GSMBASE) & GEN11_BDSM_MASK;
>  	} else {
>  		phys_addr = pci_resource_start(pdev, GEN4_GTTMMADR_BAR) + gen6_gttadr_offset(i915);
>  	}
> diff --git a/drivers/gpu/drm/i915/gt/intel_region_lmem.c b/drivers/gpu/drm/i915/gt/intel_region_lmem.c
> index af357089da6e..51bb27e10a4f 100644
> --- a/drivers/gpu/drm/i915/gt/intel_region_lmem.c
> +++ b/drivers/gpu/drm/i915/gt/intel_region_lmem.c
> @@ -240,7 +240,7 @@ static struct intel_memory_region *setup_lmem(struct intel_gt *gt)
>  		lmem_size -= tile_stolen;
>  	} else {
>  		/* Stolen starts from GSMBASE without CCS */
> -		lmem_size = intel_uncore_read64(&i915->uncore, GEN12_GSMBASE);
> +		lmem_size = intel_uncore_read64(&i915->uncore, GEN6_GSMBASE);
>  	}
>  
>  	i915_resize_lmem_bar(i915, lmem_size);
> diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
> index b5f5e0bc6608..1ad55aafe679 100644
> --- a/drivers/gpu/drm/i915/i915_reg.h
> +++ b/drivers/gpu/drm/i915/i915_reg.h
> @@ -6323,9 +6323,10 @@ enum skl_power_gate {
>  #define   GMS_MASK			REG_GENMASK(15, 8)
>  #define   GGMS_MASK			REG_GENMASK(7, 6)
>  
> -#define GEN12_GSMBASE			_MMIO(0x108100)
> -#define GEN12_DSMBASE			_MMIO(0x1080C0)
> -#define   GEN12_BDSM_MASK		REG_GENMASK64(63, 20)
> +#define GEN6_GSMBASE			_MMIO(0x108100)
> +#define GEN6_DSMBASE			_MMIO(0x1080C0)
> +#define   GEN6_BDSM_MASK		REG_GENMASK64(31, 20)
> +#define   GEN11_BDSM_MASK		REG_GENMASK64(63, 20)
>  
>  #define XEHP_CLOCK_GATE_DIS		_MMIO(0x101014)
>  #define   SGSI_SIDECLK_DIS		REG_BIT(17)
> -- 
> 2.43.0
> 

  reply	other threads:[~2024-01-30 23:21 UTC|newest]

Thread overview: 71+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-01-16  7:56 [PATCH v3 00/16] drm/i915: (stolen) memory region related fixes Ville Syrjala
2024-01-16  7:56 ` [PATCH v3 01/16] drm/i915: Use struct resource for memory region IO as well Ville Syrjala
2024-01-16 10:23   ` Nirmoy Das
2024-01-30 23:15     ` Paz Zcharya
2024-01-16  7:56 ` [PATCH v3 02/16] drm/i915: Print memory region info during probe Ville Syrjala
2024-01-16 10:20   ` Nirmoy Das
2024-01-30 23:16     ` Paz Zcharya
2024-01-16  7:56 ` [PATCH v3 03/16] drm/i915: Remove ad-hoc lmem/stolen debugs Ville Syrjala
2024-01-16 10:23   ` Nirmoy Das
2024-01-30 23:17     ` Paz Zcharya
2024-01-16  7:56 ` [PATCH v3 04/16] drm/i915: Bypass LMEMBAR/GTTMMADR for MTL stolen memory access Ville Syrjala
2024-01-16 10:31   ` Nirmoy Das
2024-01-25 10:27   ` [PATCH v4 " Ville Syrjala
2024-01-30 23:19     ` Paz Zcharya
2024-01-16  7:56 ` [PATCH v3 05/16] drm/i915: Disable the "binder" Ville Syrjala
2024-01-16 10:32   ` Nirmoy Das
2024-01-17 14:13   ` Michał Winiarski
2024-01-17 17:46     ` Nirmoy Das
2024-01-18 23:12       ` Ville Syrjälä
2024-01-19 10:47         ` Nirmoy Das
2024-01-19 10:49           ` Nirmoy Das
2024-01-25  9:08         ` Ville Syrjälä
2024-01-25 14:59           ` Michał Winiarski
2024-01-31 11:33             ` Ville Syrjälä
2024-01-25 10:27   ` [PATCH v4 " Ville Syrjala
2024-01-30 23:20     ` Paz Zcharya
2024-01-16  7:56 ` [PATCH v3 06/16] drm/i915: Rename the DSM/GSM registers Ville Syrjala
2024-01-16 10:45   ` Nirmoy Das
2024-01-25 10:28   ` [PATCH v4 " Ville Syrjala
2024-01-30 23:20     ` Paz Zcharya [this message]
2024-01-16  7:56 ` [PATCH v3 07/16] drm/i915: Fix PTE decode during initial plane readout Ville Syrjala
2024-01-16 10:46   ` Nirmoy Das
2024-01-30 23:21     ` Paz Zcharya
2024-01-16  7:56 ` [PATCH v3 08/16] drm/i915: Fix region start " Ville Syrjala
2024-01-22 15:07   ` Shankar, Uma
2024-01-30 23:21     ` Paz Zcharya
2024-01-16  7:56 ` [PATCH v3 09/16] drm/i915: Fix MTL " Ville Syrjala
2024-01-22 15:09   ` Shankar, Uma
2024-01-30 23:22     ` Paz Zcharya
2024-01-16  7:56 ` [PATCH v3 10/16] drm/i915: s/phys_base/dma_addr/ Ville Syrjala
2024-01-30 23:22   ` Paz Zcharya
2024-01-16  7:56 ` [PATCH v3 11/16] drm/i915: Split the smem and lmem plane readout apart Ville Syrjala
2024-01-30 23:23   ` Paz Zcharya
2024-01-16  7:56 ` [PATCH v3 12/16] drm/i915: Simplify intel_initial_plane_config() calling convention Ville Syrjala
2024-01-28  4:18   ` kernel test robot
2024-01-28  4:18     ` kernel test robot
2024-01-30 23:24   ` Paz Zcharya
2024-02-02 15:14   ` Jani Nikula
2024-02-02 16:12     ` Ville Syrjälä
2024-02-02 16:15       ` Jani Nikula
2024-02-02 23:58   ` kernel test robot
2024-01-16  7:56 ` [PATCH v3 13/16] drm/i915/fbdev: Fix smem_start for LMEMBAR stolen objects Ville Syrjala
2024-01-30 23:25   ` Paz Zcharya
2024-01-16  7:56 ` [PATCH v3 14/16] drm/i915: Tweak BIOS fb reuse check Ville Syrjala
2024-01-30 23:26   ` Paz Zcharya
2024-01-16  7:56 ` [PATCH v3 15/16] drm/i915: Try to relocate the BIOS fb to the start of ggtt Ville Syrjala
2024-01-30 23:27   ` Paz Zcharya
2024-01-16  7:56 ` [PATCH v3 16/16] drm/i915: Annotate more of the BIOS fb takeover failure paths Ville Syrjala
2024-01-22 15:12   ` Shankar, Uma
2024-01-30 23:27     ` Paz Zcharya
2024-01-16  9:02 ` ✗ Fi.CI.CHECKPATCH: warning for drm/i915: (stolen) memory region related fixes (rev6) Patchwork
2024-01-16  9:02 ` ✗ Fi.CI.SPARSE: " Patchwork
2024-01-16  9:21 ` ✗ Fi.CI.BAT: failure " Patchwork
2024-01-17 16:23 ` ✗ Fi.CI.CHECKPATCH: warning for drm/i915: (stolen) memory region related fixes (rev7) Patchwork
2024-01-17 16:23 ` ✗ Fi.CI.SPARSE: " Patchwork
2024-01-17 16:40 ` ✗ Fi.CI.BAT: failure " Patchwork
2024-01-25 12:00 ` ✗ Fi.CI.CHECKPATCH: warning for drm/i915: (stolen) memory region related fixes (rev10) Patchwork
2024-01-25 12:00 ` ✗ Fi.CI.SPARSE: " Patchwork
2024-01-25 12:02 ` ✓ Fi.CI.BAT: success " Patchwork
2024-01-25 14:39 ` ✗ Fi.CI.IGT: failure " Patchwork
2024-02-02 22:43 [PATCH v4 00/16] drm/i915: (stolen) memory region related fixes Ville Syrjala
2024-02-02 22:43 ` [PATCH v4 06/16] drm/i915: Rename the DSM/GSM registers Ville Syrjala

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=ZbmEUId6cflsIKmB@google.com \
    --to=pazz@chromium.org \
    --cc=andrzej.hajda@intel.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=ville.syrjala@linux.intel.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.