Commit 32bd3eb5 authored by Dave Airlie's avatar Dave Airlie
Browse files

Merge tag 'drm-intel-gt-next-2024-09-06' of...

Merge tag 'drm-intel-gt-next-2024-09-06' of https://gitlab.freedesktop.org/drm/i915/kernel

 into drm-next

Driver Changes:

- Expose fan speed via hwmon (Raag)
- Correction to Wa_14019159160 on ARL (John H)
- Whitelist COMMON_SLICE_CHICKEN1 for UMD access on DG2/MTL/ARL (Dnyaneshwar)
- Do not attempt to load the GSC multiple times to avoid hanging GSC HW (Daniele)

- Populate /sys/class/drm/cardX/engines/ even if one engine fails (Andi)
- Use kmemdup_array instead of kmemdup for multiple allocation (Yu)
- Remove extra unlikely() (Hongbo)

Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
From: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/Ztrfr_Wuurfa-3Rv@jlahtine-mobl.ger.corp.intel.com
parents 2ef8d63d 596a7f10
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -75,3 +75,11 @@ Description: RO. Energy input of device or gt in microjoules.
		for the gt.

		Only supported for particular Intel i915 graphics platforms.

What:		/sys/bus/pci/drivers/i915/.../hwmon/hwmon<i>/fan1_input
Date:		November 2024
KernelVersion:	6.12
Contact:	intel-gfx@lists.freedesktop.org
Description:	RO. Fan speed of device in RPM.

		Only supported for particular Intel i915 graphics platforms.
+1 −1
Original line number Diff line number Diff line
@@ -825,7 +825,7 @@ static int eb_select_context(struct i915_execbuffer *eb)
	struct i915_gem_context *ctx;

	ctx = i915_gem_context_lookup(eb->file->driver_priv, eb->args->rsvd1);
	if (unlikely(IS_ERR(ctx)))
	if (IS_ERR(ctx))
		return PTR_ERR(ctx);

	eb->gem_context = ctx;
+2 −0
Original line number Diff line number Diff line
@@ -1553,6 +1553,8 @@
#define VLV_RENDER_C0_COUNT			_MMIO(0x138118)
#define VLV_MEDIA_C0_COUNT			_MMIO(0x13811c)

#define PCU_PWM_FAN_SPEED			_MMIO(0x138140)

#define GEN12_RPSTAT1				_MMIO(0x1381b4)
#define   GEN12_VOLTAGE_MASK			REG_GENMASK(10, 0)
#define   GEN12_CAGF_MASK			REG_GENMASK(19, 11)
+4 −5
Original line number Diff line number Diff line
@@ -111,9 +111,8 @@ static void wa_init_finish(struct i915_wa_list *wal)
{
	/* Trim unused entries. */
	if (!IS_ALIGNED(wal->count, WA_LIST_CHUNK)) {
		struct i915_wa *list = kmemdup(wal->list,
					       wal->count * sizeof(*list),
					       GFP_KERNEL);
		struct i915_wa *list = kmemdup_array(wal->list, wal->count,
						     sizeof(*list), GFP_KERNEL);

		if (list) {
			kfree(wal->list);
@@ -2072,7 +2071,7 @@ static void dg2_whitelist_build(struct intel_engine_cs *engine)
	case RENDER_CLASS:
		/* Required by recommended tuning setting (not a workaround) */
		whitelist_mcr_reg(w, XEHP_COMMON_SLICE_CHICKEN3);

		whitelist_reg(w, GEN7_COMMON_SLICE_CHICKEN1);
		break;
	default:
		break;
@@ -2087,7 +2086,7 @@ static void xelpg_whitelist_build(struct intel_engine_cs *engine)
	case RENDER_CLASS:
		/* Required by recommended tuning setting (not a workaround) */
		whitelist_mcr_reg(w, XEHP_COMMON_SLICE_CHICKEN3);

		whitelist_reg(w, GEN7_COMMON_SLICE_CHICKEN1);
		break;
	default:
		break;
+2 −3
Original line number Diff line number Diff line
@@ -530,9 +530,8 @@ void intel_engines_add_sysfs(struct drm_i915_private *i915)
err_object:
			kobject_put(kobj);
err_engine:
			dev_err(kdev, "Failed to add sysfs engine '%s'\n",
			dev_warn(kdev, "Failed to add sysfs engine '%s'\n",
				 engine->name);
			break;
		}
	}
}
Loading