From: Thomas Zimmermann Date: Wed, 7 Feb 2024 12:01:19 +0000 (+0100) Subject: Merge drm/drm-next into drm-misc-next X-Git-Tag: v6.9-rc1~126^2~23^2~17 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=0e85f1ae4ac6dae238b0f35232d1aa52e1b6943f;p=thirdparty%2Flinux.git Merge drm/drm-next into drm-misc-next Backmerging to update drm-misc-next to the state of v6.8-rc3. Also fixes a build problem with xe. Signed-off-by: Thomas Zimmermann --- 0e85f1ae4ac6dae238b0f35232d1aa52e1b6943f diff --cc drivers/gpu/drm/bridge/samsung-dsim.c index f9d85fe1df7ec,6a10aa5c85f5f..95fedc68b0ae5 --- a/drivers/gpu/drm/bridge/samsung-dsim.c +++ b/drivers/gpu/drm/bridge/samsung-dsim.c @@@ -1526,11 -1498,6 +1503,7 @@@ static void samsung_dsim_atomic_disable if (!(dsi->state & DSIM_STATE_ENABLED)) return; - if (!samsung_dsim_hw_is_exynos(dsi->plat_data->hw_type)) - samsung_dsim_set_stop_state(dsi, true); - + samsung_dsim_set_display_enable(dsi, false); - dsi->state &= ~DSIM_STATE_VIDOUT_AVAILABLE; } @@@ -1539,9 -1506,8 +1512,6 @@@ static void samsung_dsim_atomic_post_di { struct samsung_dsim *dsi = bridge_to_dsi(bridge); - if (!samsung_dsim_hw_is_exynos(dsi->plat_data->hw_type)) - samsung_dsim_set_stop_state(dsi, true); - samsung_dsim_set_display_enable(dsi, false); -- dsi->state &= ~DSIM_STATE_ENABLED; pm_runtime_put_sync(dsi->dev); } diff --cc drivers/gpu/drm/xe/xe_bo.c index 0b0e262e2166d,0b0e262e2166d..de89f42247e1c --- a/drivers/gpu/drm/xe/xe_bo.c +++ b/drivers/gpu/drm/xe/xe_bo.c @@@ -38,22 -38,22 +38,26 @@@ static const struct ttm_place sys_place static struct ttm_placement sys_placement = { .num_placement = 1, .placement = &sys_placement_flags, -- .num_busy_placement = 1, -- .busy_placement = &sys_placement_flags, }; --static const struct ttm_place tt_placement_flags = { -- .fpfn = 0, -- .lpfn = 0, -- .mem_type = XE_PL_TT, -- .flags = 0, ++static const struct ttm_place tt_placement_flags[] = { ++ { ++ .fpfn = 0, ++ .lpfn = 0, ++ .mem_type = XE_PL_TT, ++ .flags = TTM_PL_FLAG_DESIRED, ++ }, ++ { ++ .fpfn = 0, ++ .lpfn = 0, ++ .mem_type = XE_PL_SYSTEM, ++ .flags = TTM_PL_FLAG_FALLBACK, ++ } }; static struct ttm_placement tt_placement = { -- .num_placement = 1, -- .placement = &tt_placement_flags, -- .num_busy_placement = 1, -- .busy_placement = &sys_placement_flags, ++ .num_placement = 2, ++ .placement = tt_placement_flags, }; bool mem_type_is_vram(u32 mem_type) @@@ -230,8 -230,8 +234,6 @@@ static int __xe_bo_placement_for_flags( bo->placement = (struct ttm_placement) { .num_placement = c, .placement = bo->placements, -- .num_busy_placement = c, -- .busy_placement = bo->placements, }; return 0; @@@ -251,7 -251,7 +253,6 @@@ static void xe_evict_flags(struct ttm_b /* Don't handle scatter gather BOs */ if (tbo->type == ttm_bo_type_sg) { placement->num_placement = 0; -- placement->num_busy_placement = 0; return; } @@@ -1353,8 -1353,8 +1354,6 @@@ static int __xe_bo_fixed_placement(stru bo->placement = (struct ttm_placement) { .num_placement = 1, .placement = place, -- .num_busy_placement = 1, -- .busy_placement = place, }; return 0; @@@ -2112,9 -2112,9 +2111,7 @@@ int xe_bo_migrate(struct xe_bo *bo, u3 xe_place_from_ttm_type(mem_type, &requested); placement.num_placement = 1; -- placement.num_busy_placement = 1; placement.placement = &requested; -- placement.busy_placement = &requested; /* * Stolen needs to be handled like below VRAM handling if we ever need