Linux-ARM-Kernel Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Michal Simek <michal.simek@amd.com>
To: Jay Buddhabhatti <jay.buddhabhatti@amd.com>, git@amd.com
Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v4 0/3] firmware: xilinx: Clean up firmware and EL3 state on kexec
Date: Thu, 6 Aug 2026 15:27:04 +0200	[thread overview]
Message-ID: <5a471469-ba92-46d8-9ed4-90719074dca8@amd.com> (raw)
In-Reply-To: <20260729122522.3732875-1-jay.buddhabhatti@amd.com>



On 7/29/26 14:25, Jay Buddhabhatti wrote:
> During a kexec restart, only the kernel is reloaded while the state held
> in EL3 and platform firmware persists. This leaves the freshly booted
> kernel out of sync with secure firmware for things like the SGI number,
> shutdown scope, allocated peripheral devices and registered notifier
> callbacks, which can lead to unexpected behaviour after a kexec.
> 
> Introduce a mechanism to clear the stale EL3 and platform firmware state
> so the reloaded kernel starts from a clean baseline:
> 
>    - Add TF_A_CLEAR_PM_STATE to clear EL3 PM subsystem state.
>    - Add PM_DEV_ALL_PERIPH to release all peripheral devices in one call.
>    - Add PM_ALL_NOTIFIERS to unregister all notifier callbacks in one call.
> 
> On a graceful kexec reboot the cleanup is performed from
> zynqmp_firmware_shutdown(); on a crash (kdump) restart it is performed
> from zynqmp_firmware_probe() of the reloaded kernel. Each cleanup step
> is guarded by a feature check so it degrades gracefully on firmware
> versions that do not implement the new APIs.
> 
> Changes in v4:
>    - Modified platform check to restrict kexec cleanup to Versal and
>      Versal Net platforms only
>    - Used EL3 firmware instead of TF-A in descriptions and comments
> 
> Changes in v3:
>    - Corrected subject prefix
> 
> Changes in v2:
>    - Drop patch 4/4 (feature check improvements) from this series per
>      review feedback. Those changes are sent separately as:
>      "[PATCH 1/2] firmware: xilinx: Use TF-A feature check for
>      TF-A-specific APIs" and "[PATCH 2/2] firmware: xilinx: Propagate
>      actual error from feature check"
> 
> Jay Buddhabhatti (3):
>    firmware: xilinx: Add support to clear EL3 PM state
>    firmware: xilinx: Release all peripheral devices from firmware
>    firmware: xilinx: Clear firmware notifiers across kexec transitions
> 
>   drivers/firmware/xilinx/zynqmp.c     | 86 +++++++++++++++++++++++++++-
>   include/linux/firmware/xlnx-zynqmp.h | 10 +++-
>   2 files changed, 94 insertions(+), 2 deletions(-)
> 

Applied.
M


      parent reply	other threads:[~2026-08-06 13:27 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-07-23 12:48 [PATCH 0/4] firmware: xilinx: Clean up firmware and TF-A state on kexec Jay Buddhabhatti
2026-07-23 12:48 ` [PATCH 1/4] firmware: xilinx: Add support to clear TF-A PM state Jay Buddhabhatti
2026-07-23 16:25   ` Pandey, Radhey Shyam
2026-07-24  6:17   ` Prasanna Kumar T S M
2026-07-23 12:48 ` [PATCH 2/4] firmware: xilinx: Release all peripheral devices from firmware Jay Buddhabhatti
2026-07-23 16:25   ` Pandey, Radhey Shyam
2026-07-24  6:17   ` Prasanna Kumar T S M
2026-07-23 12:48 ` [PATCH 3/4] firmware: xilinx: Clear firmware notifiers across kexec transitions Jay Buddhabhatti
2026-07-23 16:27   ` Pandey, Radhey Shyam
2026-07-24  6:18   ` Prasanna Kumar T S M
2026-07-23 12:48 ` [PATCH 4/4] firmware: xilinx: Use TF-A feature check for TF-A specific APIs Jay Buddhabhatti
2026-07-23 16:28   ` Pandey, Radhey Shyam
2026-07-24  6:31   ` Prasanna Kumar T S M
2026-07-24  7:37     ` Buddhabhatti, Jay
2026-07-24  9:52 ` [PATCH v2 0/3] firmware: xilinx: Clean up firmware and TF-A state on kexec Jay Buddhabhatti
2026-07-24  9:52   ` [PATCH v2 1/4] firmware: xilinx: Add support to clear TF-A PM state Jay Buddhabhatti
2026-07-24  9:53   ` [PATCH v2 2/4] firmware: xilinx: Release all peripheral devices from firmware Jay Buddhabhatti
2026-07-24  9:53   ` [PATCH v2 3/4] firmware: xilinx: Clear firmware notifiers across kexec transitions Jay Buddhabhatti
2026-07-24 10:19   ` [PATCH v3 0/3] firmware: xilinx: Clean up firmware and TF-A state on kexec Jay Buddhabhatti
2026-07-24 10:19     ` [PATCH v3 1/3] firmware: xilinx: Add support to clear TF-A PM state Jay Buddhabhatti
2026-07-24 11:13       ` Sudeep Holla
2026-07-29  7:05         ` Jay Buddhabhatti
2026-07-24 10:19     ` [PATCH v3 2/3] firmware: xilinx: Release all peripheral devices from firmware Jay Buddhabhatti
2026-07-24 10:19     ` [PATCH v3 3/3] firmware: xilinx: Clear firmware notifiers across kexec transitions Jay Buddhabhatti
2026-07-29 12:25     ` [PATCH v4 0/3] firmware: xilinx: Clean up firmware and EL3 state on kexec Jay Buddhabhatti
2026-07-29 12:25       ` [PATCH v4 1/3] firmware: xilinx: Add support to clear EL3 PM state Jay Buddhabhatti
2026-07-29 12:25       ` [PATCH v4 2/3] firmware: xilinx: Release all peripheral devices from firmware Jay Buddhabhatti
2026-07-29 12:25       ` [PATCH v4 3/3] firmware: xilinx: Clear firmware notifiers across kexec transitions Jay Buddhabhatti
2026-08-06 13:27       ` Michal Simek [this message]

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=5a471469-ba92-46d8-9ed4-90719074dca8@amd.com \
    --to=michal.simek@amd.com \
    --cc=git@amd.com \
    --cc=jay.buddhabhatti@amd.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    /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