Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/xe: Add tile-based SRIOV printk macros

We already have device and GT level SR-IOV specific macros, but
unlike native case, we don't have yet tile-based ones.

Add macros to match native use case and also update GT-based
macros to rely on those new tile-based SR-IOV macros. This will
slightly rearrange the output of the GT logs and instead:

[...] Tile0: GT0: PF: pushed VF1 config with 2 KLVs...

we might see:

[...] PF: Tile0: GT0: pushed VF1 config with 2 KLVs...

but that's even better.

Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
Reviewed-by: Piotr Piórkowski <piotr.piorkowski@intel.com>
Link: https://lore.kernel.org/r/20251005133641.2651-3-michal.wajdeczko@intel.com

+38 -2
+5 -2
drivers/gpu/drm/xe/xe_gt_sriov_printk.h
··· 7 7 #define _XE_GT_SRIOV_PRINTK_H_ 8 8 9 9 #include "xe_gt_printk.h" 10 - #include "xe_sriov_printk.h" 10 + #include "xe_tile_sriov_printk.h" 11 + 12 + #define __XE_GT_SRIOV_PRINTK_FMT(_gt, _fmt, ...) \ 13 + __XE_TILE_SRIOV_PRINTK_FMT((_gt)->tile, __XE_GT_PRINTK_FMT((_gt), _fmt, ##__VA_ARGS__)) 11 14 12 15 #define __xe_gt_sriov_printk(gt, _level, fmt, ...) \ 13 - xe_gt_printk((gt), _level, "%s" fmt, xe_sriov_printk_prefix(gt_to_xe(gt)), ##__VA_ARGS__) 16 + xe_sriov_##_level(gt_to_xe(gt), __XE_GT_SRIOV_PRINTK_FMT((gt), fmt, ##__VA_ARGS__)) 14 17 15 18 #define xe_gt_sriov_err(_gt, _fmt, ...) \ 16 19 __xe_gt_sriov_printk(_gt, err, _fmt, ##__VA_ARGS__)
+33
drivers/gpu/drm/xe/xe_tile_sriov_printk.h
··· 1 + /* SPDX-License-Identifier: MIT */ 2 + /* 3 + * Copyright © 2025 Intel Corporation 4 + */ 5 + 6 + #ifndef _XE_TILE_SRIOV_PRINTK_H_ 7 + #define _XE_TILE_SRIOV_PRINTK_H_ 8 + 9 + #include "xe_tile_printk.h" 10 + #include "xe_sriov_printk.h" 11 + 12 + #define __XE_TILE_SRIOV_PRINTK_FMT(_tile, _fmt, ...) \ 13 + __XE_TILE_PRINTK_FMT((_tile), _fmt, ##__VA_ARGS__) 14 + 15 + #define xe_tile_sriov_printk(_tile, _level, _fmt, ...) \ 16 + xe_sriov_##_level((_tile)->xe, __XE_TILE_SRIOV_PRINTK_FMT((_tile), _fmt, ##__VA_ARGS__)) 17 + 18 + #define xe_tile_sriov_err(_tile, _fmt, ...) \ 19 + xe_tile_sriov_printk(_tile, err, _fmt, ##__VA_ARGS__) 20 + 21 + #define xe_tile_sriov_notice(_tile, _fmt, ...) \ 22 + xe_tile_sriov_printk(_tile, notice, _fmt, ##__VA_ARGS__) 23 + 24 + #define xe_tile_sriov_info(_tile, _fmt, ...) \ 25 + xe_tile_sriov_printk(_tile, info, _fmt, ##__VA_ARGS__) 26 + 27 + #define xe_tile_sriov_dbg(_tile, _fmt, ...) \ 28 + xe_tile_sriov_printk(_tile, dbg, _fmt, ##__VA_ARGS__) 29 + 30 + #define xe_tile_sriov_dbg_verbose(_tile, _fmt, ...) \ 31 + xe_tile_sriov_printk(_tile, dbg_verbose, _fmt, ##__VA_ARGS__) 32 + 33 + #endif