The majority of xe_gt_irq_postinstall() is really focused on the hardware engine interrupts; other GT-related interrupts such as the GuC are enabled/disabled independently. Renaming the function and making it truly GT-specific will make it more clear what the intended focus is. Disabling/masking of other interrupts (such as GuC interrupts) is unnecessary since that has already happened during the irq_reset stage, and doing so will become harmful once the media GT is re-enabled since calls to xe_gt_irq_postinstall during media GT initialization would incorrectly disable the primary GT's GuC interrupts. Also, since this function is called from gt_fw_domain_init(), it's not necessary to also call it earlier during xe_irq_postinstall; just xe_irq_resume to handle runtime resume should be sufficient. v2: - Drop unnecessary !gt check. (Lucas) - Reword some comments about enable/unmask for clarity. (Lucas) Reviewed-by: Lucas De Marchi <lucas.demarchi@intel.com> Link: https://lore.kernel.org/r/20230601215244.678611-26-matthew.d.roper@intel.com Signed-off-by: Matt Roper <matthew.d.roper@intel.com> Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
19 lines
391 B
C
19 lines
391 B
C
/* SPDX-License-Identifier: MIT */
|
|
/*
|
|
* Copyright © 2022 Intel Corporation
|
|
*/
|
|
|
|
#ifndef _XE_IRQ_H_
|
|
#define _XE_IRQ_H_
|
|
|
|
struct xe_device;
|
|
struct xe_tile;
|
|
struct xe_gt;
|
|
|
|
int xe_irq_install(struct xe_device *xe);
|
|
void xe_irq_shutdown(struct xe_device *xe);
|
|
void xe_irq_suspend(struct xe_device *xe);
|
|
void xe_irq_resume(struct xe_device *xe);
|
|
void xe_irq_enable_hwe(struct xe_gt *gt);
|
|
|
|
#endif
|