mirror of
https://github.com/torvalds/linux.git
synced 2026-05-31 10:33:41 +02:00
drm/xe: Defer memirq init until needed
memirqs require allocations into GGTT, which we cannot use until after display is enabled. Now that the initialisation of interrupts is postponed, move memirq init too. Reviewed-by: Lucas De Marchi <lucas.demarchi@intel.com> Reviewed-by: Ilia Levi <ilia.levi@intel.com> Link: https://lore.kernel.org/r/20250619104858.418440-14-dev@lankhorst.se Signed-off-by: Maarten Lankhorst <dev@lankhorst.se>
This commit is contained in:
parent
b587016878
commit
e6018b194b
|
|
@ -44,7 +44,6 @@
|
|||
#include "xe_hw_engine_group.h"
|
||||
#include "xe_hwmon.h"
|
||||
#include "xe_irq.h"
|
||||
#include "xe_memirq.h"
|
||||
#include "xe_mmio.h"
|
||||
#include "xe_module.h"
|
||||
#include "xe_nvm.h"
|
||||
|
|
@ -816,9 +815,6 @@ int xe_device_probe(struct xe_device *xe)
|
|||
err = xe_ggtt_init_early(tile->mem.ggtt);
|
||||
if (err)
|
||||
return err;
|
||||
err = xe_memirq_init(&tile->memirq);
|
||||
if (err)
|
||||
return err;
|
||||
}
|
||||
|
||||
for_each_gt(gt, xe, id) {
|
||||
|
|
|
|||
|
|
@ -10,6 +10,7 @@
|
|||
#include "xe_device.h"
|
||||
#include "xe_ggtt.h"
|
||||
#include "xe_gt.h"
|
||||
#include "xe_memirq.h"
|
||||
#include "xe_migrate.h"
|
||||
#include "xe_pcode.h"
|
||||
#include "xe_sa.h"
|
||||
|
|
@ -174,6 +175,12 @@ int xe_tile_init_noalloc(struct xe_tile *tile)
|
|||
|
||||
int xe_tile_init(struct xe_tile *tile)
|
||||
{
|
||||
int err;
|
||||
|
||||
err = xe_memirq_init(&tile->memirq);
|
||||
if (err)
|
||||
return err;
|
||||
|
||||
tile->mem.kernel_bb_pool = xe_sa_bo_manager_init(tile, SZ_1M, 16);
|
||||
if (IS_ERR(tile->mem.kernel_bb_pool))
|
||||
return PTR_ERR(tile->mem.kernel_bb_pool);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user