From: "Anoop, Vijay" <anoop.c.vijay@intel.com>
To: intel-xe@lists.freedesktop.org
Cc: umesh.nerlige.ramappa@intel.com, badal.nilawar@intel.com,
rodrigo.vivi@intel.com, aravind.iddamsetty@intel.com,
riana.tauro@intel.com, anshuman.gupta@intel.com,
matthew.d.roper@intel.com, michael.j.ruhl@intel.com,
paul.e.luse@intel.com, mohamed.mansoor.v@intel.com,
kam.nasim@intel.com, anoop.c.vijay@intel.com
Subject: [RFC v1 3/5] drm/xe/fwctl: Add Xe FWCTL type definitions
Date: Fri, 20 Mar 2026 00:25:31 -0700 [thread overview]
Message-ID: <20260320072528.1780651-10-anoop.c.vijay@intel.com> (raw)
In-Reply-To: <20260320072528.1780651-7-anoop.c.vijay@intel.com>
From: Anoop Vijay <anoop.c.vijay@intel.com>
Add type definitions required for Xe FWCTL infrastructure. Introduce
xe_fwctl_types.h to define core data structures used by driver,
including Xe FWCTL device context, per-file context, and firmware
operation hooks.
This patch adds type definitions only and does not introduce functional
FWCTL logic.
Signed-off-by: Anoop Vijay <anoop.c.vijay@intel.com>
---
drivers/gpu/drm/xe/xe_fwctl_types.h | 52 +++++++++++++++++++++++++++++
1 file changed, 52 insertions(+)
create mode 100644 drivers/gpu/drm/xe/xe_fwctl_types.h
diff --git a/drivers/gpu/drm/xe/xe_fwctl_types.h b/drivers/gpu/drm/xe/xe_fwctl_types.h
new file mode 100644
index 000000000000..22498f2b2fd9
--- /dev/null
+++ b/drivers/gpu/drm/xe/xe_fwctl_types.h
@@ -0,0 +1,52 @@
+/* SPDX-License-Identifier: MIT */
+/*
+ * Copyright © 2026 Intel Corporation
+ */
+
+#ifndef _XE_FWCTL_TYPES_H_
+#define _XE_FWCTL_TYPES_H_
+
+#include <linux/fwctl.h>
+
+struct xe_device;
+
+/**
+ * struct xe_fwctl - Xe fwctl device context
+ * @fwctl: Base fwctl device
+ * @xe: Back-pointer to Xe device
+ *
+ * This structure wraps the fwctl subsystem device with Xe specific
+ * context.
+ */
+struct xe_fwctl {
+ struct fwctl_device fwctl;
+ struct xe_device *xe;
+};
+
+/**
+ * struct xe_fwctl_uctx - Per-FD context
+ * @uctx: Base fwctl context
+ *
+ * Per file-descriptor context for Xe fwctl operations.
+ */
+struct xe_fwctl_uctx {
+ struct fwctl_uctx uctx;
+};
+
+/**
+ * struct xe_fw_ops - Per-firmware operations
+ * @name: Firmware name
+ * @rpc: Execute RPC
+ * @validate_scope: Validate RPC vs scope
+ *
+ * Operations table for each firmware type
+ */
+struct xe_fw_ops {
+ const char *name;
+ void *(*rpc)(struct xe_device *xe, enum fwctl_rpc_scope scope,
+ void *in, size_t in_len, size_t *out_len);
+ bool (*validate_scope)(void *in, size_t in_len,
+ enum fwctl_rpc_scope scope);
+};
+
+#endif
--
2.43.0
next prev parent reply other threads:[~2026-03-20 7:25 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-20 7:25 [RFC v1 0/5] drm/xe/fwctl: Add FWCTL interface for Xe firmware management Anoop, Vijay
2026-03-20 7:25 ` [RFC v1 1/5] drm/xe/xe_sysctrl: Add System Controller support Anoop, Vijay
2026-03-20 7:25 ` [RFC v1 2/5] drm/xe/fwctl: Add uAPI definitions for Xe FWCTL support Anoop, Vijay
2026-05-07 21:05 ` Rodrigo Vivi
2026-03-20 7:25 ` Anoop, Vijay [this message]
2026-05-07 21:07 ` [RFC v1 3/5] drm/xe/fwctl: Add Xe FWCTL type definitions Rodrigo Vivi
2026-03-20 7:25 ` [RFC v1 4/5] drm/xe/fwctl: Add Xe FWCTL infrastructure support Anoop, Vijay
2026-03-20 7:25 ` [RFC v1 5/5] drm/xe/fwctl: Add System Controller FWCTL RPC handler Anoop, Vijay
2026-05-07 21:12 ` Rodrigo Vivi
2026-03-20 7:30 ` ✗ CI.checkpatch: warning for drm/xe/fwctl: Add FWCTL interface for Xe firmware management Patchwork
2026-03-20 7:32 ` ✓ CI.KUnit: success " Patchwork
2026-03-20 7:46 ` ✗ CI.checksparse: warning " Patchwork
2026-03-20 8:20 ` ✓ Xe.CI.BAT: success " Patchwork
2026-03-21 3:59 ` ✗ Xe.CI.FULL: failure " Patchwork
2026-04-28 0:12 ` [RFC v1 0/5] " Anoop Vijay
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260320072528.1780651-10-anoop.c.vijay@intel.com \
--to=anoop.c.vijay@intel.com \
--cc=anshuman.gupta@intel.com \
--cc=aravind.iddamsetty@intel.com \
--cc=badal.nilawar@intel.com \
--cc=intel-xe@lists.freedesktop.org \
--cc=kam.nasim@intel.com \
--cc=matthew.d.roper@intel.com \
--cc=michael.j.ruhl@intel.com \
--cc=mohamed.mansoor.v@intel.com \
--cc=paul.e.luse@intel.com \
--cc=riana.tauro@intel.com \
--cc=rodrigo.vivi@intel.com \
--cc=umesh.nerlige.ramappa@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox