From: Rodrigo Vivi <rodrigo.vivi@intel.com>
To: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
Cc: "Anoop, Vijay" <anoop.c.vijay@intel.com>,
<intel-xe@lists.freedesktop.org>, <badal.nilawar@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>
Subject: Re: [PATCH v7 2/2] drm/xe/sysctrl: Add helper to check oCode firmware readiness
Date: Wed, 26 Aug 2026 17:31:04 -0400 [thread overview]
Message-ID: <ao9bGMMFk1mnWmvM@intel.com> (raw)
In-Reply-To: <an+HER3exoUdIj0P@soc-5CG1426VCC.clients.intel.com>
On Fri, Aug 14, 2026 at 02:22:25PM -0700, Umesh Nerlige Ramappa wrote:
> On Fri, Aug 14, 2026 at 02:53:07AM -0700, Anoop, Vijay wrote:
> > From: Anoop Vijay <anoop.c.vijay@intel.com>
> >
> > Add xe_sysctrl_is_oobmsm_fw_ready(), a convenience wrapper around
> > xe_sysctrl_check_app_status() to check oCode application readiness.
> >
> > Signed-off-by: Anoop Vijay <anoop.c.vijay@intel.com>
> > ---
> > v6:
> > - New patch — split oCode application readiness helper out of the
> > original patch into its own commit
> >
> > v7: (Umesh)
> > - Clarify xe_sysctrl_is_oobmsm_fw_ready() comment for sysctrl-less platforms
> > - Add XE_SYSCTRL_APP_OCODE to enum xe_sysctrl_app_id in xe_sysctrl.c
> > ---
> > drivers/gpu/drm/xe/xe_sysctrl.c | 23 +++++++++++++++++++++++
> > drivers/gpu/drm/xe/xe_sysctrl.h | 1 +
> > 2 files changed, 24 insertions(+)
> >
> > diff --git a/drivers/gpu/drm/xe/xe_sysctrl.c b/drivers/gpu/drm/xe/xe_sysctrl.c
> > index c53a26af3189..488e30b3d075 100644
> > --- a/drivers/gpu/drm/xe/xe_sysctrl.c
> > +++ b/drivers/gpu/drm/xe/xe_sysctrl.c
> > @@ -42,6 +42,7 @@
> > * application ID.
> > */
> > enum xe_sysctrl_app_id {
> > + XE_SYSCTRL_APP_OCODE = 0x0C,
> > XE_SYSCTRL_APP_DIAG = 0x0D,
> > };
> >
> > @@ -189,6 +190,28 @@ xe_sysctrl_check_app_status(struct xe_device *xe, enum xe_sysctrl_app_id app_id)
> > return XE_SYSCTRL_FIRMWARE_APP_INITIALIZED;
> > }
> >
> > +/**
> > + * xe_sysctrl_is_oobmsm_fw_ready() - Check if oCode firmware is fully initialized
> > + * @xe: xe device instance
> > + *
> > + * Returns true if oCode firmware has reached the initialized state, indicating
> > + * it is ready to handle requests. On platforms without System Controller
> > + * support there is no System Controller mailbox to gate on, so oCode firmware
> > + * readiness is not tracked through this path; the function unconditionally
> > + * returns true so callers are not blocked by this check on such platforms.
> > + *
> > + * Return: true if oCode firmware is initialized, or if System Controller is
> > + * not present on this platform; false otherwise
> > + */
> > +bool xe_sysctrl_is_oobmsm_fw_ready(struct xe_device *xe)
> > +{
> > + enum xe_sysctrl_fw_status status =
> > + xe_sysctrl_check_app_status(xe, XE_SYSCTRL_APP_OCODE);
> > +
> > + return status == XE_SYSCTRL_FIRMWARE_APP_INITIALIZED ||
> > + status == XE_SYSCTRL_FIRMWARE_APP_NOTSUPP;
> > +}
>
> Same here. I would split it into 2 separate helpers.
Yes, please!
>
> Thanks,
> Umesh
> > +
> > /**
> > * xe_sysctrl_is_diag_fw_ready() - Check if diag firmware is fully initialized
> > * @xe: xe device instance
> > diff --git a/drivers/gpu/drm/xe/xe_sysctrl.h b/drivers/gpu/drm/xe/xe_sysctrl.h
> > index 8dc576796890..b69a3f474236 100644
> > --- a/drivers/gpu/drm/xe/xe_sysctrl.h
> > +++ b/drivers/gpu/drm/xe/xe_sysctrl.h
> > @@ -20,6 +20,7 @@ void xe_sysctrl_event(struct xe_sysctrl *sc);
> > int xe_sysctrl_init(struct xe_device *xe);
> > void xe_sysctrl_irq_handler(struct xe_device *xe, u32 master_ctl);
> > void xe_sysctrl_pm_resume(struct xe_device *xe);
> > +bool xe_sysctrl_is_oobmsm_fw_ready(struct xe_device *xe);
> > bool xe_sysctrl_is_diag_fw_ready(struct xe_device *xe);
> >
> > #endif
> > --
> > 2.43.0
> >
next prev parent reply other threads:[~2026-08-26 21:31 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-14 9:53 [PATCH v7 0/2] drm/xe/sysctrl: Add helper to query application status Anoop, Vijay
2026-08-14 9:53 ` [PATCH v7 1/2] " Anoop, Vijay
2026-08-14 21:21 ` Umesh Nerlige Ramappa
2026-08-18 17:41 ` Anoop Vijay
2026-08-19 21:00 ` Umesh Nerlige Ramappa
2026-08-20 16:37 ` Umesh Nerlige Ramappa
2026-08-26 21:30 ` Rodrigo Vivi
2026-08-14 9:53 ` [PATCH v7 2/2] drm/xe/sysctrl: Add helper to check oCode firmware readiness Anoop, Vijay
2026-08-14 21:22 ` Umesh Nerlige Ramappa
2026-08-26 21:31 ` Rodrigo Vivi [this message]
2026-08-14 10:00 ` ✓ CI.KUnit: success for drm/xe/sysctrl: Add helper to query application status (rev7) Patchwork
2026-08-14 10:40 ` ✓ Xe.CI.BAT: " Patchwork
2026-08-14 12:10 ` ✓ Xe.CI.FULL: " Patchwork
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=ao9bGMMFk1mnWmvM@intel.com \
--to=rodrigo.vivi@intel.com \
--cc=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=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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.