Commit 082802a3 authored by Koby Elbaz's avatar Koby Elbaz Committed by Rodrigo Vivi

drm/xe: add skip_pcode flag

Per device, set this flag to enable access to the PCODE uC or to skip it.
Signed-off-by: default avatarKoby Elbaz <kelbaz@habana.ai>
Reviewed-by: default avatarRodrigo Vivi <rodrigo.vivi@intel.com>
Signed-off-by: default avatarRodrigo Vivi <rodrigo.vivi@intel.com>
parent 8e357802
......@@ -260,6 +260,8 @@ struct xe_device {
u8 enable_display:1;
/** @bypass_mtcfg: Bypass Multi-Tile configuration from MTCFG register */
u8 bypass_mtcfg:1;
/** @skip_pcode: skip access to PCODE uC */
u8 skip_pcode:1;
/** @supports_mmio_ext: supports MMIO extension/s */
u8 supports_mmio_ext:1;
/** @has_heci_gscfi: device has heci gscfi */
......
......@@ -63,6 +63,7 @@ struct xe_device_desc {
u8 has_llc:1;
u8 has_sriov:1;
u8 bypass_mtcfg:1;
u8 skip_pcode:1;
u8 supports_mmio_ext:1;
u8 skip_guc_pc:1;
};
......@@ -581,6 +582,7 @@ static int xe_info_init(struct xe_device *xe,
xe->info.has_llc = desc->has_llc;
xe->info.has_sriov = desc->has_sriov;
xe->info.bypass_mtcfg = desc->bypass_mtcfg;
xe->info.skip_pcode = desc->skip_pcode;
xe->info.supports_mmio_ext = desc->supports_mmio_ext;
xe->info.tile_mmio_ext_size = graphics_desc->tile_mmio_ext_size;
......
......@@ -61,6 +61,9 @@ static int pcode_mailbox_rw(struct xe_gt *gt, u32 mbox, u32 *data0, u32 *data1,
{
int err;
if (gt_to_xe(gt)->info.skip_pcode)
return 0;
lockdep_assert_held(&gt->pcode.lock);
if ((xe_mmio_read32(gt, PCODE_MAILBOX) & PCODE_READY) != 0)
......@@ -249,6 +252,9 @@ int xe_pcode_init(struct xe_gt *gt)
int timeout_us = 180000000; /* 3 min */
int ret;
if (gt_to_xe(gt)->info.skip_pcode)
return 0;
if (!IS_DGFX(gt_to_xe(gt)))
return 0;
......@@ -280,6 +286,9 @@ int xe_pcode_probe(struct xe_gt *gt)
{
drmm_mutex_init(&gt_to_xe(gt)->drm, &gt->pcode.lock);
if (gt_to_xe(gt)->info.skip_pcode)
return 0;
if (!IS_DGFX(gt_to_xe(gt)))
return 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment