* [PATCH] drm/xe/display: Remove invalid initial plane PTE check for iGPU
@ 2026-09-05 14:25 Andrew Zhou
2026-09-05 14:36 ` sashiko-bot
` (3 more replies)
0 siblings, 4 replies; 8+ messages in thread
From: Andrew Zhou @ 2026-09-05 14:25 UTC (permalink / raw)
To: Jani Nikula, Rodrigo Vivi, Matthew Brost, Thomas Hellström
Cc: intel-xe, intel-gfx, dri-devel, Andrew Zhou
Pantherlake intergrated graphics can have the XE_GGTT_PTEDM bit set
in the BIOS-initialised framebuffer PTE. The new validation rejects
this and fails to create the initial frambuffer, resulting in static.
Remove the too-strict validation.
Signed-off-by: Andrew Zhou <zhoulol888@gmail.com>
Tested-by: Andrew Zhou <zhoulol888@gmail.com>
Tested-on: Intel Core Ultra X7 358H, integrated graphics, B0 stepping
---
drivers/gpu/drm/xe/display/xe_initial_plane.c | 8 --------
1 file changed, 8 deletions(-)
diff --git a/drivers/gpu/drm/xe/display/xe_initial_plane.c b/drivers/gpu/drm/xe/display/xe_initial_plane.c
index 0f86b7303..8c95dc4e6 100644
--- a/drivers/gpu/drm/xe/display/xe_initial_plane.c
+++ b/drivers/gpu/drm/xe/display/xe_initial_plane.c
@@ -85,7 +85,6 @@ initial_plane_bo(struct xe_device *xe,
&phys_base);
} else {
struct ttm_resource_manager *stolen;
- u64 pte;
stolen = ttm_manager_type(&xe->ttm, XE_PL_STOLEN);
if (!stolen) {
@@ -93,13 +92,6 @@ initial_plane_bo(struct xe_device *xe,
return NULL;
}
- pte = xe_ggtt_read_pte(tile0->mem.ggtt, base);
-
- if (is_pte_local(pte) != need_pte_local(xe)) {
- drm_err(&xe->drm, "Initial plane PTE has bad local memory bit\n");
- return NULL;
- }
-
phys_base = base;
flags |= XE_BO_FLAG_STOLEN;
--
2.55.0
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH] drm/xe/display: Remove invalid initial plane PTE check for iGPU
2026-09-05 14:25 [PATCH] drm/xe/display: Remove invalid initial plane PTE check for iGPU Andrew Zhou
@ 2026-09-05 14:36 ` sashiko-bot
2026-09-08 18:38 ` ✗ LGCI.VerificationFailed: failure for " Patchwork
` (2 subsequent siblings)
3 siblings, 0 replies; 8+ messages in thread
From: sashiko-bot @ 2026-09-05 14:36 UTC (permalink / raw)
To: Andrew Zhou; +Cc: intel-gfx, intel-xe, dri-devel
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Low] The patch removes the validation from the integrated graphics path, rendering the `has_lmembar()` logic completely dead and meaningless.
--
commit b290f7e32abe43d35ac4f5def3b10e9bcf641a88
Author: Andrew Zhou <zhoulol888@gmail.com>
drm/xe/display: Remove invalid initial plane PTE check for iGPU
This commit removes the initial plane PTE local memory validation for
integrated graphics, as Pantherlake can have the XE_GGTT_PTEDM bit set.
The check was causing a failure to create the initial framebuffer.
> diff --git a/drivers/gpu/drm/xe/display/xe_initial_plane.c b/drivers/gpu/drm/xe/display/xe_initial_plane.c
> index 0f86b73036d03..8c95dc4e6f2ef 100644
> --- a/drivers/gpu/drm/xe/display/xe_initial_plane.c
> +++ b/drivers/gpu/drm/xe/display/xe_initial_plane.c
[ ... ]
> @@ -93,13 +92,6 @@ initial_plane_bo(struct xe_device *xe,
> return NULL;
> }
>
> - pte = xe_ggtt_read_pte(tile0->mem.ggtt, base);
> -
> - if (is_pte_local(pte) != need_pte_local(xe)) {
> - drm_err(&xe->drm, "Initial plane PTE has bad local memory bit\n");
> - return NULL;
> - }
> -
[Severity: Low]
Does this leave need_pte_local() with dead logic?
By removing this validation from the integrated graphics path (!IS_DGFX(xe)),
the only remaining caller of need_pte_local() is inside the earlier
if (IS_DGFX(xe)) branch in initial_plane_bo().
Because need_pte_local() is defined as:
static bool need_pte_local(struct xe_device *xe)
{
return IS_DGFX(xe) || has_lmembar(xe);
}
It will now unconditionally evaluate to true when called, rendering the
has_lmembar(xe) check completely meaningless.
Should need_pte_local() and its underlying logic be simplified or removed
as well to prevent confusion?
> phys_base = base;
> flags |= XE_BO_FLAG_STOLEN;
>
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260905142500.17666-1-zhoulol888@gmail.com?part=1
^ permalink raw reply [flat|nested] 8+ messages in thread
* ✗ LGCI.VerificationFailed: failure for drm/xe/display: Remove invalid initial plane PTE check for iGPU
2026-09-05 14:25 [PATCH] drm/xe/display: Remove invalid initial plane PTE check for iGPU Andrew Zhou
2026-09-05 14:36 ` sashiko-bot
@ 2026-09-08 18:38 ` Patchwork
2026-09-15 6:42 ` [PATCH v2] " Andrew Zhou
2026-09-15 14:14 ` ✗ LGCI.VerificationFailed: failure for drm/xe/display: Remove invalid initial plane PTE check for iGPU (rev2) Patchwork
3 siblings, 0 replies; 8+ messages in thread
From: Patchwork @ 2026-09-08 18:38 UTC (permalink / raw)
To: Andrew Zhou; +Cc: intel-xe
== Series Details ==
Series: drm/xe/display: Remove invalid initial plane PTE check for iGPU
URL : https://patchwork.freedesktop.org/series/173615/
State : failure
== Summary ==
Series author address 'zhoulol888@gmail.com' is not on the allowlist, which prevents CI from being automatically triggered.
If you want CI to run for this series, ask Patchwork project owners to click 'retest' on the series in Patchwork.
Exception occurred during validation, bailing out!
Build URL: http://intel-gfx-ci-public.igk.intel.com:8080/job/xe_pw_trigger/1274585/ (on master)
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH v2] drm/xe/display: Remove invalid initial plane PTE check for iGPU
2026-09-05 14:25 [PATCH] drm/xe/display: Remove invalid initial plane PTE check for iGPU Andrew Zhou
2026-09-05 14:36 ` sashiko-bot
2026-09-08 18:38 ` ✗ LGCI.VerificationFailed: failure for " Patchwork
@ 2026-09-15 6:42 ` Andrew Zhou
2026-09-15 8:40 ` Jani Nikula
2026-09-15 14:14 ` ✗ LGCI.VerificationFailed: failure for drm/xe/display: Remove invalid initial plane PTE check for iGPU (rev2) Patchwork
3 siblings, 1 reply; 8+ messages in thread
From: Andrew Zhou @ 2026-09-15 6:42 UTC (permalink / raw)
To: Jani Nikula, Rodrigo Vivi, Matthew Brost, Thomas Hellström
Cc: intel-xe, intel-gfx, dri-devel, Andrew Zhou
Pantherlake integrated graphics can have the XE_GGTT_PTEDM bit set in
the BIOS-initialised framebuffer PTE. The validation rejects this and
fails to create the initial framebuffer, resulting in static.
Remove the too-strict validation. Since this was the only caller of
need_pte_local() outside the DGFX path, the helper is now
unconditionally true there; fold the check and drop the dead
need_pte_local() and has_lmembar() helpers.
Signed-off-by: Andrew Zhou <zhoulol888@gmail.com>
Tested-by: Andrew Zhou <zhoulol888@gmail.com>
Tested-on: Intel Core Ultra X7 358H, integrated graphics, B0 stepping
---
v1 -> v2:
- Drop need_pte_local() and has_lmembar(), now dead after removing the
iGPU validation (sashiko)
---
drivers/gpu/drm/xe/display/xe_initial_plane.c | 20 +------------------
1 file changed, 1 insertion(+), 19 deletions(-)
diff --git a/drivers/gpu/drm/xe/display/xe_initial_plane.c b/drivers/gpu/drm/xe/display/xe_initial_plane.c
index 0f86b7303..3484b3033 100644
--- a/drivers/gpu/drm/xe/display/xe_initial_plane.c
+++ b/drivers/gpu/drm/xe/display/xe_initial_plane.c
@@ -27,16 +27,6 @@ static bool is_pte_local(u64 pte)
return pte & XE_GGTT_PTE_DM;
}
-static bool has_lmembar(struct xe_device *xe)
-{
- return GRAPHICS_VERx100(xe) >= 1270;
-}
-
-static bool need_pte_local(struct xe_device *xe)
-{
- return IS_DGFX(xe) || has_lmembar(xe);
-}
-
static struct xe_bo *
initial_plane_bo(struct xe_device *xe,
struct intel_initial_plane_config *plane_config)
@@ -60,7 +50,7 @@ initial_plane_bo(struct xe_device *xe,
if (IS_DGFX(xe)) {
u64 pte = xe_ggtt_read_pte(tile0->mem.ggtt, base);
- if (is_pte_local(pte) != need_pte_local(xe)) {
+ if (!is_pte_local(pte)) {
drm_err(&xe->drm, "Initial plane PTE has bad local memory bit\n");
return NULL;
}
@@ -85,7 +75,6 @@ initial_plane_bo(struct xe_device *xe,
&phys_base);
} else {
struct ttm_resource_manager *stolen;
- u64 pte;
stolen = ttm_manager_type(&xe->ttm, XE_PL_STOLEN);
if (!stolen) {
@@ -93,13 +82,6 @@ initial_plane_bo(struct xe_device *xe,
return NULL;
}
- pte = xe_ggtt_read_pte(tile0->mem.ggtt, base);
-
- if (is_pte_local(pte) != need_pte_local(xe)) {
- drm_err(&xe->drm, "Initial plane PTE has bad local memory bit\n");
- return NULL;
- }
-
phys_base = base;
flags |= XE_BO_FLAG_STOLEN;
--
2.54.0
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH v2] drm/xe/display: Remove invalid initial plane PTE check for iGPU
2026-09-15 6:42 ` [PATCH v2] " Andrew Zhou
@ 2026-09-15 8:40 ` Jani Nikula
2026-09-15 13:59 ` Activate Windows
0 siblings, 1 reply; 8+ messages in thread
From: Jani Nikula @ 2026-09-15 8:40 UTC (permalink / raw)
To: Andrew Zhou, Rodrigo Vivi, Matthew Brost, Thomas Hellström
Cc: intel-xe, intel-gfx, dri-devel, Andrew Zhou, ville.syrjala,
Maarten Lankhorst, Matthew Brost
On Tue, 15 Sep 2026, Andrew Zhou <zhoulol888@gmail.com> wrote:
> Pantherlake integrated graphics can have the XE_GGTT_PTEDM bit set in
> the BIOS-initialised framebuffer PTE. The validation rejects this and
> fails to create the initial framebuffer, resulting in static.
>
> Remove the too-strict validation. Since this was the only caller of
> need_pte_local() outside the DGFX path, the helper is now
> unconditionally true there; fold the check and drop the dead
> need_pte_local() and has_lmembar() helpers.
>
> Signed-off-by: Andrew Zhou <zhoulol888@gmail.com>
> Tested-by: Andrew Zhou <zhoulol888@gmail.com>
> Tested-on: Intel Core Ultra X7 358H, integrated graphics, B0 stepping
This is basically a revert of 0d5d5d0c2c72 ("drm/xe: Check the PTE local
memory bit for initial FB in stolen"). You'd do well to dig a bit of git
blame and see what changed, why, and by whom.
Cc: Ville, Maarten, Matthew
BR,
Jani.
> ---
> v1 -> v2:
> - Drop need_pte_local() and has_lmembar(), now dead after removing the
> iGPU validation (sashiko)
> ---
> drivers/gpu/drm/xe/display/xe_initial_plane.c | 20 +------------------
> 1 file changed, 1 insertion(+), 19 deletions(-)
>
> diff --git a/drivers/gpu/drm/xe/display/xe_initial_plane.c b/drivers/gpu/drm/xe/display/xe_initial_plane.c
> index 0f86b7303..3484b3033 100644
> --- a/drivers/gpu/drm/xe/display/xe_initial_plane.c
> +++ b/drivers/gpu/drm/xe/display/xe_initial_plane.c
> @@ -27,16 +27,6 @@ static bool is_pte_local(u64 pte)
> return pte & XE_GGTT_PTE_DM;
> }
>
> -static bool has_lmembar(struct xe_device *xe)
> -{
> - return GRAPHICS_VERx100(xe) >= 1270;
> -}
> -
> -static bool need_pte_local(struct xe_device *xe)
> -{
> - return IS_DGFX(xe) || has_lmembar(xe);
> -}
> -
> static struct xe_bo *
> initial_plane_bo(struct xe_device *xe,
> struct intel_initial_plane_config *plane_config)
> @@ -60,7 +50,7 @@ initial_plane_bo(struct xe_device *xe,
> if (IS_DGFX(xe)) {
> u64 pte = xe_ggtt_read_pte(tile0->mem.ggtt, base);
>
> - if (is_pte_local(pte) != need_pte_local(xe)) {
> + if (!is_pte_local(pte)) {
> drm_err(&xe->drm, "Initial plane PTE has bad local memory bit\n");
> return NULL;
> }
> @@ -85,7 +75,6 @@ initial_plane_bo(struct xe_device *xe,
> &phys_base);
> } else {
> struct ttm_resource_manager *stolen;
> - u64 pte;
>
> stolen = ttm_manager_type(&xe->ttm, XE_PL_STOLEN);
> if (!stolen) {
> @@ -93,13 +82,6 @@ initial_plane_bo(struct xe_device *xe,
> return NULL;
> }
>
> - pte = xe_ggtt_read_pte(tile0->mem.ggtt, base);
> -
> - if (is_pte_local(pte) != need_pte_local(xe)) {
> - drm_err(&xe->drm, "Initial plane PTE has bad local memory bit\n");
> - return NULL;
> - }
> -
> phys_base = base;
> flags |= XE_BO_FLAG_STOLEN;
--
Jani Nikula, Intel
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2] drm/xe/display: Remove invalid initial plane PTE check for iGPU
2026-09-15 8:40 ` Jani Nikula
@ 2026-09-15 13:59 ` Activate Windows
2026-09-18 13:54 ` Activate Windows
0 siblings, 1 reply; 8+ messages in thread
From: Activate Windows @ 2026-09-15 13:59 UTC (permalink / raw)
To: Jani Nikula
Cc: Rodrigo Vivi, Matthew Brost, Thomas Hellström, intel-xe,
intel-gfx, dri-devel, ville.syrjala, Maarten Lankhorst
[-- Attachment #1: Type: text/plain, Size: 3790 bytes --]
Thank you.
Follow-up: reading 0d5d5d0c2c72, the check assumes GRAPHICS_VERx100(xe) >=
1270 stands in for "MTL+ with LMEMBAR". On the PTL I hit this on, the
initial plane is rejected.
I'm working out whether the BIOS PTE actually lacks XE_GGTT_PTE_DM there --
I'll follow up with a proper v2. I don't have the machine in front of me
for a few days.
On Tue, Sep 15, 2026 at 4:40 PM Jani Nikula <jani.nikula@linux.intel.com>
wrote:
> On Tue, 15 Sep 2026, Andrew Zhou <zhoulol888@gmail.com> wrote:
> > Pantherlake integrated graphics can have the XE_GGTT_PTEDM bit set in
> > the BIOS-initialised framebuffer PTE. The validation rejects this and
> > fails to create the initial framebuffer, resulting in static.
> >
> > Remove the too-strict validation. Since this was the only caller of
> > need_pte_local() outside the DGFX path, the helper is now
> > unconditionally true there; fold the check and drop the dead
> > need_pte_local() and has_lmembar() helpers.
> >
> > Signed-off-by: Andrew Zhou <zhoulol888@gmail.com>
> > Tested-by: Andrew Zhou <zhoulol888@gmail.com>
> > Tested-on: Intel Core Ultra X7 358H, integrated graphics, B0 stepping
>
> This is basically a revert of 0d5d5d0c2c72 ("drm/xe: Check the PTE local
> memory bit for initial FB in stolen"). You'd do well to dig a bit of git
> blame and see what changed, why, and by whom.
>
> Cc: Ville, Maarten, Matthew
>
>
> BR,
> Jani.
>
> > ---
> > v1 -> v2:
> > - Drop need_pte_local() and has_lmembar(), now dead after removing the
> > iGPU validation (sashiko)
> > ---
> > drivers/gpu/drm/xe/display/xe_initial_plane.c | 20 +------------------
> > 1 file changed, 1 insertion(+), 19 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/xe/display/xe_initial_plane.c
> b/drivers/gpu/drm/xe/display/xe_initial_plane.c
> > index 0f86b7303..3484b3033 100644
> > --- a/drivers/gpu/drm/xe/display/xe_initial_plane.c
> > +++ b/drivers/gpu/drm/xe/display/xe_initial_plane.c
> > @@ -27,16 +27,6 @@ static bool is_pte_local(u64 pte)
> > return pte & XE_GGTT_PTE_DM;
> > }
> >
> > -static bool has_lmembar(struct xe_device *xe)
> > -{
> > - return GRAPHICS_VERx100(xe) >= 1270;
> > -}
> > -
> > -static bool need_pte_local(struct xe_device *xe)
> > -{
> > - return IS_DGFX(xe) || has_lmembar(xe);
> > -}
> > -
> > static struct xe_bo *
> > initial_plane_bo(struct xe_device *xe,
> > struct intel_initial_plane_config *plane_config)
> > @@ -60,7 +50,7 @@ initial_plane_bo(struct xe_device *xe,
> > if (IS_DGFX(xe)) {
> > u64 pte = xe_ggtt_read_pte(tile0->mem.ggtt, base);
> >
> > - if (is_pte_local(pte) != need_pte_local(xe)) {
> > + if (!is_pte_local(pte)) {
> > drm_err(&xe->drm, "Initial plane PTE has bad local
> memory bit\n");
> > return NULL;
> > }
> > @@ -85,7 +75,6 @@ initial_plane_bo(struct xe_device *xe,
> > &phys_base);
> > } else {
> > struct ttm_resource_manager *stolen;
> > - u64 pte;
> >
> > stolen = ttm_manager_type(&xe->ttm, XE_PL_STOLEN);
> > if (!stolen) {
> > @@ -93,13 +82,6 @@ initial_plane_bo(struct xe_device *xe,
> > return NULL;
> > }
> >
> > - pte = xe_ggtt_read_pte(tile0->mem.ggtt, base);
> > -
> > - if (is_pte_local(pte) != need_pte_local(xe)) {
> > - drm_err(&xe->drm, "Initial plane PTE has bad local
> memory bit\n");
> > - return NULL;
> > - }
> > -
> > phys_base = base;
> > flags |= XE_BO_FLAG_STOLEN;
>
> --
> Jani Nikula, Intel
>
[-- Attachment #2: Type: text/html, Size: 5083 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread
* ✗ LGCI.VerificationFailed: failure for drm/xe/display: Remove invalid initial plane PTE check for iGPU (rev2)
2026-09-05 14:25 [PATCH] drm/xe/display: Remove invalid initial plane PTE check for iGPU Andrew Zhou
` (2 preceding siblings ...)
2026-09-15 6:42 ` [PATCH v2] " Andrew Zhou
@ 2026-09-15 14:14 ` Patchwork
3 siblings, 0 replies; 8+ messages in thread
From: Patchwork @ 2026-09-15 14:14 UTC (permalink / raw)
To: Andrew Zhou; +Cc: intel-xe
== Series Details ==
Series: drm/xe/display: Remove invalid initial plane PTE check for iGPU (rev2)
URL : https://patchwork.freedesktop.org/series/173615/
State : failure
== Summary ==
Series author address 'zhoulol888@gmail.com' is not on the allowlist, which prevents CI from being automatically triggered.
If you want CI to run for this series, ask Patchwork project owners to click 'retest' on the series in Patchwork.
Exception occurred during validation, bailing out!
Build URL: http://intel-gfx-ci-public.igk.intel.com:8080/job/xe_pw_trigger/1281520/ (on master)
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2] drm/xe/display: Remove invalid initial plane PTE check for iGPU
2026-09-15 13:59 ` Activate Windows
@ 2026-09-18 13:54 ` Activate Windows
0 siblings, 0 replies; 8+ messages in thread
From: Activate Windows @ 2026-09-18 13:54 UTC (permalink / raw)
To: Jani Nikula
Cc: Rodrigo Vivi, Matthew Brost, Thomas Hellström, intel-xe,
intel-gfx, dri-devel, ville.syrjala, Maarten Lankhorst
[-- Attachment #1: Type: text/plain, Size: 4102 bytes --]
Please drop this. Removing the check changes nothing, so the PTE check
isn't the cause. Sorry for the noise.
On Tue, Sep 15, 2026 at 9:59 PM Activate Windows <zhoulol888@gmail.com>
wrote:
> Thank you.
> Follow-up: reading 0d5d5d0c2c72, the check assumes GRAPHICS_VERx100(xe)
> >= 1270 stands in for "MTL+ with LMEMBAR". On the PTL I hit this on, the
> initial plane is rejected.
>
> I'm working out whether the BIOS PTE actually lacks XE_GGTT_PTE_DM there
> -- I'll follow up with a proper v2. I don't have the machine in front of me
> for a few days.
>
> On Tue, Sep 15, 2026 at 4:40 PM Jani Nikula <jani.nikula@linux.intel.com>
> wrote:
>
>> On Tue, 15 Sep 2026, Andrew Zhou <zhoulol888@gmail.com> wrote:
>> > Pantherlake integrated graphics can have the XE_GGTT_PTEDM bit set in
>> > the BIOS-initialised framebuffer PTE. The validation rejects this and
>> > fails to create the initial framebuffer, resulting in static.
>> >
>> > Remove the too-strict validation. Since this was the only caller of
>> > need_pte_local() outside the DGFX path, the helper is now
>> > unconditionally true there; fold the check and drop the dead
>> > need_pte_local() and has_lmembar() helpers.
>> >
>> > Signed-off-by: Andrew Zhou <zhoulol888@gmail.com>
>> > Tested-by: Andrew Zhou <zhoulol888@gmail.com>
>> > Tested-on: Intel Core Ultra X7 358H, integrated graphics, B0 stepping
>>
>> This is basically a revert of 0d5d5d0c2c72 ("drm/xe: Check the PTE local
>> memory bit for initial FB in stolen"). You'd do well to dig a bit of git
>> blame and see what changed, why, and by whom.
>>
>> Cc: Ville, Maarten, Matthew
>>
>>
>> BR,
>> Jani.
>>
>> > ---
>> > v1 -> v2:
>> > - Drop need_pte_local() and has_lmembar(), now dead after removing the
>> > iGPU validation (sashiko)
>> > ---
>> > drivers/gpu/drm/xe/display/xe_initial_plane.c | 20 +------------------
>> > 1 file changed, 1 insertion(+), 19 deletions(-)
>> >
>> > diff --git a/drivers/gpu/drm/xe/display/xe_initial_plane.c
>> b/drivers/gpu/drm/xe/display/xe_initial_plane.c
>> > index 0f86b7303..3484b3033 100644
>> > --- a/drivers/gpu/drm/xe/display/xe_initial_plane.c
>> > +++ b/drivers/gpu/drm/xe/display/xe_initial_plane.c
>> > @@ -27,16 +27,6 @@ static bool is_pte_local(u64 pte)
>> > return pte & XE_GGTT_PTE_DM;
>> > }
>> >
>> > -static bool has_lmembar(struct xe_device *xe)
>> > -{
>> > - return GRAPHICS_VERx100(xe) >= 1270;
>> > -}
>> > -
>> > -static bool need_pte_local(struct xe_device *xe)
>> > -{
>> > - return IS_DGFX(xe) || has_lmembar(xe);
>> > -}
>> > -
>> > static struct xe_bo *
>> > initial_plane_bo(struct xe_device *xe,
>> > struct intel_initial_plane_config *plane_config)
>> > @@ -60,7 +50,7 @@ initial_plane_bo(struct xe_device *xe,
>> > if (IS_DGFX(xe)) {
>> > u64 pte = xe_ggtt_read_pte(tile0->mem.ggtt, base);
>> >
>> > - if (is_pte_local(pte) != need_pte_local(xe)) {
>> > + if (!is_pte_local(pte)) {
>> > drm_err(&xe->drm, "Initial plane PTE has bad
>> local memory bit\n");
>> > return NULL;
>> > }
>> > @@ -85,7 +75,6 @@ initial_plane_bo(struct xe_device *xe,
>> > &phys_base);
>> > } else {
>> > struct ttm_resource_manager *stolen;
>> > - u64 pte;
>> >
>> > stolen = ttm_manager_type(&xe->ttm, XE_PL_STOLEN);
>> > if (!stolen) {
>> > @@ -93,13 +82,6 @@ initial_plane_bo(struct xe_device *xe,
>> > return NULL;
>> > }
>> >
>> > - pte = xe_ggtt_read_pte(tile0->mem.ggtt, base);
>> > -
>> > - if (is_pte_local(pte) != need_pte_local(xe)) {
>> > - drm_err(&xe->drm, "Initial plane PTE has bad
>> local memory bit\n");
>> > - return NULL;
>> > - }
>> > -
>> > phys_base = base;
>> > flags |= XE_BO_FLAG_STOLEN;
>>
>> --
>> Jani Nikula, Intel
>>
>
[-- Attachment #2: Type: text/html, Size: 5545 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2026-09-18 15:27 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-05 14:25 [PATCH] drm/xe/display: Remove invalid initial plane PTE check for iGPU Andrew Zhou
2026-09-05 14:36 ` sashiko-bot
2026-09-08 18:38 ` ✗ LGCI.VerificationFailed: failure for " Patchwork
2026-09-15 6:42 ` [PATCH v2] " Andrew Zhou
2026-09-15 8:40 ` Jani Nikula
2026-09-15 13:59 ` Activate Windows
2026-09-18 13:54 ` Activate Windows
2026-09-15 14:14 ` ✗ LGCI.VerificationFailed: failure for drm/xe/display: Remove invalid initial plane PTE check for iGPU (rev2) Patchwork
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox