[Intel-xe] [PATCH v2 5/6] drm/xe/hwmon: Expose hwmon energy attribute
Andi Shyti
andi.shyti at linux.intel.com
Thu Jun 29 15:09:51 UTC 2023
Hi Badal,
[...]
> @@ -614,12 +793,22 @@ void xe_hwmon_register(struct xe_device *xe)
>
> /* primary GT to access device level properties */
> ddat->gt = xe->tiles[0].primary_gt;
> +// ddat->gt = &xe->gt[0];
please clean it up before sending
> + ddat->gt_n = -1;
>
> ddat->hwmon = hwmon;
> snprintf(ddat->name, sizeof(ddat->name), "xe");
>
> init_waitqueue_head(&ddat->waitq);
>
> + for_each_gt(gt, xe, id) {
> + ddat_tile = hwmon->ddat_tile + id;
> + ddat_tile->hwmon = hwmon;
> + ddat_tile->gt = gt;
> + snprintf(ddat_tile->name, sizeof(ddat_tile->name), "xe_tile%u", id);
> + ddat_tile->gt_n = id;
> + }
> +
> hwm_get_preregistration_info(ddat);
>
> drm_dbg(&xe->drm, "Register xe hwmon interface\n");
> @@ -637,6 +826,23 @@ void xe_hwmon_register(struct xe_device *xe)
> }
>
> ddat->hwmon_dev = hwmon_dev;
> +
> + for_each_gt(gt, xe, id) {
you could eventually make a for_each_hwmon_gt()
Andi
> + ddat_tile = hwmon->ddat_tile + id;
> + /*
> + * Create per-gt directories only if a per-gt attribute is
> + * visible. Currently this is only energy
> + */
> + if (!hwm_gt_is_visible(ddat_tile, hwmon_energy, hwmon_energy_input, 0))
> + continue;
> +
> + hwmon_dev = devm_hwmon_device_register_with_info(dev, ddat_tile->name,
> + ddat_tile,
> + &hwm_gt_chip_info,
> + NULL);
> + if (!IS_ERR(hwmon_dev))
> + ddat_tile->hwmon_dev = hwmon_dev;
> + }
More information about the Intel-xe
mailing list