From 9a08b2b935cedec1c563b03999cb37bfbeeb8b22 Mon Sep 17 00:00:00 2001 From: Matt Roper Date: Thu, 6 Apr 2023 16:56:18 -0700 Subject: [PATCH] drm/xe: Add printable name to IP descriptors Printing the name, along with the IP version number, will help reduce confusion about which IP is present on a platform. Cc: Lucas De Marchi Reviewed-by: Lucas De Marchi Link: https://lore.kernel.org/r/20230406235621.1914492-7-matthew.d.roper@intel.com Signed-off-by: Matt Roper Signed-off-by: Rodrigo Vivi --- drivers/gpu/drm/xe/xe_device_types.h | 4 ++++ drivers/gpu/drm/xe/xe_pci.c | 21 ++++++++++++++++++--- drivers/gpu/drm/xe/xe_pci_types.h | 2 ++ 3 files changed, 24 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/xe/xe_device_types.h b/drivers/gpu/drm/xe/xe_device_types.h index 74326091bf98..87b92f5f078d 100644 --- a/drivers/gpu/drm/xe/xe_device_types.h +++ b/drivers/gpu/drm/xe/xe_device_types.h @@ -51,6 +51,10 @@ struct xe_device { /** @info: device info */ struct intel_device_info { + /** @graphics_name: graphics IP name */ + const char *graphics_name; + /** @media_name: media IP name */ + const char *media_name; /** @graphics_verx100: graphics IP version */ u32 graphics_verx100; /** @media_verx100: media IP version */ diff --git a/drivers/gpu/drm/xe/xe_pci.c b/drivers/gpu/drm/xe/xe_pci.c index 0697496c26d0..a9233d3a8ff1 100644 --- a/drivers/gpu/drm/xe/xe_pci.c +++ b/drivers/gpu/drm/xe/xe_pci.c @@ -71,6 +71,7 @@ struct xe_device_desc { #define NOP(x) x static const struct xe_graphics_desc graphics_xelp = { + .name = "Xe_LP", .ver = 12, .rel = 0, @@ -81,6 +82,7 @@ static const struct xe_graphics_desc graphics_xelp = { }; static const struct xe_graphics_desc graphics_xelpp = { + .name = "Xe_LP+", .ver = 12, .rel = 10, @@ -97,6 +99,7 @@ static const struct xe_graphics_desc graphics_xelpp = { .vm_max_level = 3 static const struct xe_graphics_desc graphics_xehpg = { + .name = "Xe_HPG", .ver = 12, .rel = 55, @@ -110,6 +113,7 @@ static const struct xe_graphics_desc graphics_xehpg = { }; static const struct xe_graphics_desc graphics_xehpc = { + .name = "Xe_HPC", .ver = 12, .rel = 60, @@ -135,6 +139,7 @@ static const struct xe_graphics_desc graphics_xehpc = { }; static const struct xe_graphics_desc graphics_xelpg = { + .name = "Xe_LPG", .ver = 12, .rel = 70, @@ -147,6 +152,7 @@ static const struct xe_graphics_desc graphics_xelpg = { }; static const struct xe_media_desc media_xem = { + .name = "Xe_M", .ver = 12, .rel = 0, @@ -156,6 +162,7 @@ static const struct xe_media_desc media_xem = { }; static const struct xe_media_desc media_xehpm = { + .name = "Xe_HPM", .ver = 12, .rel = 55, @@ -165,6 +172,7 @@ static const struct xe_media_desc media_xehpm = { }; static const struct xe_media_desc media_xelpmp = { + .name = "Xe_LPM+", .ver = 13, .rel = 0, @@ -384,6 +392,8 @@ static void xe_info_init(struct xe_device *xe, desc->media->rel; xe->info.is_dgfx = desc->is_dgfx; xe->info.platform = desc->platform; + xe->info.graphics_name = desc->graphics->name; + xe->info.media_name = desc->media ? desc->media->name : "none"; xe->info.dma_mask_size = desc->graphics->dma_mask_size; xe->info.vram_flags = desc->graphics->vram_flags; xe->info.vm_max_level = desc->graphics->vm_max_level; @@ -485,12 +495,17 @@ static int xe_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent) subplatform_desc = find_subplatform(xe, desc); xe_info_init(xe, desc, subplatform_desc); - drm_dbg(&xe->drm, "%s %s %04x:%04x dgfx:%d gfx100:%d media100:%d dma_m_s:%d tc:%d", + drm_dbg(&xe->drm, "%s %s %04x:%04x dgfx:%d gfx:%s (%d.%02d) media:%s (%d.%02d) dma_m_s:%d tc:%d", desc->platform_name, subplatform_desc ? subplatform_desc->name : "", xe->info.devid, xe->info.revid, - xe->info.is_dgfx, xe->info.graphics_verx100, - xe->info.media_verx100, + xe->info.is_dgfx, + xe->info.graphics_name, + xe->info.graphics_verx100 / 100, + xe->info.graphics_verx100 % 100, + xe->info.media_name, + xe->info.media_verx100 / 100, + xe->info.media_verx100 % 100, xe->info.dma_mask_size, xe->info.tile_count); drm_dbg(&xe->drm, "Stepping = (G:%s, M:%s, D:%s, B:%s)\n", diff --git a/drivers/gpu/drm/xe/xe_pci_types.h b/drivers/gpu/drm/xe/xe_pci_types.h index f4bc5ef1bce3..e479c1c4ed30 100644 --- a/drivers/gpu/drm/xe/xe_pci_types.h +++ b/drivers/gpu/drm/xe/xe_pci_types.h @@ -9,6 +9,7 @@ #include struct xe_graphics_desc { + const char *name; u8 ver; u8 rel; @@ -28,6 +29,7 @@ struct xe_graphics_desc { }; struct xe_media_desc { + const char *name; u8 ver; u8 rel;