Re: [PATCH v5 RESEND 0/2] ACPI: Arm Generic Diagnostic Dump and Reset device

From: Ilkka Koskinen
Date: Mon Mar 07 2022 - 17:29:40 EST




On Fri, 4 Mar 2022, Lorenzo Pieralisi wrote:
On Thu, Mar 03, 2022 at 09:40:01PM -0800, Ilkka Koskinen wrote:
Hi Lorenzo,

Would you prefer this version, which doesn't have platform
device/driver any more?

I thought about that and in order to keep consistency it is better to
keep the platform device model, so please resend the latest version
platform device based and I will ACK it (hopefully it is not too late
for v5.18).

Sure, I can do that. Just one question, do you still prefer agdi_init() getting called from acpi_init() or via device_initcall()?

Please note before resending it that sdei_event_unregister() requires a
retry loop since it can return -EINPROGRESS (see sdei_unregister_ghes()).

Thanks for pointing out, I'll fix it.

Cheers, Ilkka



Thanks,
Lorenzo


--Ilkka


----

Arm Generic Diagnostic Dump and Reset device enables a maintainer to
request OS to perform a diagnostic dump and reset a system via SDEI
event or an interrupt. This patchset adds support for the SDEI path.

I do have a patch to enable the interrupt path as well but I'm holding
it back since AGDI table is missing interrupt configuration fields
(trigger type etc.).

The recently published specification is available at
https://developer.arm.com/documentation/den0093/latest

The patchset was tested on Ampere Altra/Mt. Jade.

The patchset applies on top of
git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm bleeding-edge (9db71e8e3027)

I also tested it works on top of Shuai Xue's new patches in bleeding-edge branch (c6f4ba2d2b9a)

From v1:
* Moved pdata to the stack and dropped unnecessary kzalloc() in agdi_init()
* Changed the ACPICA patch upstreaming order comment in the paragraph above

From v2:
* The first patch was split. The most of it was merged to ACPICA project
at first and later ported to linux-acpi
(fd919e37cb15914c6fe13e13d530a4f732407c6d). The rest are in the first
patch.

From v3:
Fixed:
* Moved header files in alphabetical order and removed unnecessary ones

From v4:
* Platform device/driver stuff removed
* acpi_agdi_init() call moved from device_initcall to acpi_init()
* Slightly modified Kconfig text to keep checkpatch happy

Ilkka Koskinen (2):
ACPI: tables: Add AGDI to the list of known table signatures
ACPI: AGDI: Add support for Arm Generic Diagnostic Dump and Reset
device

drivers/acpi/arm64/Kconfig | 10 +++++++
drivers/acpi/arm64/Makefile | 1 +
drivers/acpi/arm64/agdi.c | 52 +++++++++++++++++++++++++++++++++++++
drivers/acpi/bus.c | 2 ++
drivers/acpi/tables.c | 2 +-
include/linux/acpi_agdi.h | 13 ++++++++++
6 files changed, 79 insertions(+), 1 deletion(-)
create mode 100644 drivers/acpi/arm64/agdi.c
create mode 100644 include/linux/acpi_agdi.h

--
2.17.1