The order of pte vs checks isn't important, so read the pte
outside the if block. This makes it slightly more readable.

Signed-off-by: Maarten Lankhorst <[email protected]>
---
 drivers/gpu/drm/xe/display/xe_initial_plane.c | 35 ++++++-------------
 1 file changed, 11 insertions(+), 24 deletions(-)

diff --git a/drivers/gpu/drm/xe/display/xe_initial_plane.c 
b/drivers/gpu/drm/xe/display/xe_initial_plane.c
index 275cfb13fbbd0..13ac68a15ac36 100644
--- a/drivers/gpu/drm/xe/display/xe_initial_plane.c
+++ b/drivers/gpu/drm/xe/display/xe_initial_plane.c
@@ -45,7 +45,7 @@ initial_plane_bo(struct xe_device *xe,
        struct xe_bo *bo;
        resource_size_t phys_base;
        u32 base, size, flags;
-       u64 page_size = xe->info.vram_flags & XE_VRAM_FLAGS_NEED64K ? SZ_64K : 
SZ_4K;
+       u64 page_size = xe->info.vram_flags & XE_VRAM_FLAGS_NEED64K ? SZ_64K : 
SZ_4K, pte;
        struct xe_ggtt_node *original_ggtt_node;
 
        if (plane_config->size == 0)
@@ -58,16 +58,14 @@ initial_plane_bo(struct xe_device *xe,
                        page_size);
        size -= base;
 
-       if (IS_DGFX(xe)) {
-               u64 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 = pte & ~(page_size - 1);
+       pte = xe_ggtt_read_pte(tile0->mem.ggtt, base);
+       phys_base = pte & ~(page_size - 1);
+       if (is_pte_local(pte) != need_pte_local(xe)) {
+               drm_err(&xe->drm, "Initial plane PTE has bad local memory 
bit\n");
+               return NULL;
+       }
 
+       if (IS_DGFX(xe)) {
                flags |= XE_BO_FLAG_VRAM0;
 
                /*
@@ -85,25 +83,14 @@ initial_plane_bo(struct xe_device *xe,
                            "Using phys_base=%pa, based on initial plane 
programming\n",
                            &phys_base);
        } else {
-               struct ttm_resource_manager *stolen;
-               u64 pte;
+               flags |= XE_BO_FLAG_STOLEN;
+               phys_base -= xe_ttm_stolen_gpu_offset(xe);
 
-               stolen = ttm_manager_type(&xe->ttm, XE_PL_STOLEN);
-               if (!stolen) {
+               if (!ttm_manager_type(&xe->ttm, XE_PL_STOLEN)) {
                        drm_dbg_kms(&xe->drm, "No stolen for initial FB\n");
                        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 = (pte & ~(page_size - 1)) - 
xe_ttm_stolen_gpu_offset(xe);
-               flags |= XE_BO_FLAG_STOLEN;
-
                if (IS_ENABLED(CONFIG_FRAMEBUFFER_CONSOLE) &&
                    IS_ENABLED(CONFIG_DRM_FBDEV_EMULATION) &&
                    !xe_display_bo_fbdev_prefer_stolen(xe, plane_config->size)) 
{
-- 
2.53.0

Reply via email to