From: Ilkka Koskinen <ilkka@os.amperecomputing.com> To: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> Cc: guohanjun@huawei.com, sudeep.holla@arm.com, rafael@kernel.org, linux@armlinux.org.uk, lenb@kernel.org, robert.moore@intel.com, linux-acpi@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, patches@amperecomputing.com, scott@os.amperecomputing.com, darren@os.amperecomputing.com, james.morse@arm.com, Ilkka Koskinen <ilkka@os.amperecomputing.com> Subject: Re: [PATCH v3 2/2] ACPI: AGDI: Add driver for Arm Generic Diagnostic Dump and Reset device Date: Thu, 13 Jan 2022 18:17:13 -0800 (PST) [thread overview] Message-ID: <alpine.DEB.2.22.394.2201131801380.3166@ubuntu200401> (raw) In-Reply-To: <alpine.DEB.2.22.394.2201051530290.2489@ubuntu200401> Hi Lorenzo, On Wed, 5 Jan 2022, Ilkka Koskinen wrote: > > Hi Lorenzo, > > On Wed, 5 Jan 2022, Lorenzo Pieralisi wrote: >> [+James, for SDEI bits] >> >> On Thu, Dec 30, 2021 at 07:37:25PM -0800, Ilkka Koskinen wrote: >>> ACPI for Arm Components 1.1 Platform Design Document v1.1 [0] specifices >>> Arm Generic Diagnostic Device Interface (AGDI). It allows an admin to >>> issue diagnostic dump and reset via an SDEI event or an interrupt. >>> This patch implements SDEI path. >>> >>> [0] https://developer.arm.com/documentation/den0093/latest/ >>> >>> Signed-off-by: Ilkka Koskinen <ilkka@os.amperecomputing.com> >>> --- >>> drivers/acpi/arm64/Kconfig | 8 +++ >>> drivers/acpi/arm64/Makefile | 1 + >>> drivers/acpi/arm64/agdi.c | 125 ++++++++++++++++++++++++++++++++++++ >>> 3 files changed, 134 insertions(+) >>> create mode 100644 drivers/acpi/arm64/agdi.c <snip> >>> diff --git a/drivers/acpi/arm64/agdi.c b/drivers/acpi/arm64/agdi.c >>> new file mode 100644 >>> index 000000000000..6525ccbae5c1 >>> --- /dev/null >>> +++ b/drivers/acpi/arm64/agdi.c <snip> >>> >>> +static int __init agdi_init(void) >>> +{ >>> + int ret; >>> + acpi_status status; >>> + struct acpi_table_agdi *agdi_table; >>> + struct agdi_data pdata; >>> + struct platform_device *pdev; >>> + >>> + if (acpi_disabled) >>> + return 0; >> >> Why don't we call agdi_init() from acpi_init() as we do for IORT/VIOT ? >> >> I don't think it is necessary to add a device_initcall(), with related >> ordering dependencies. > > That's a good point. I change it. Actually, I looked at this more carefully. acpi_init() is called in subsys_initcall() while sdei_init() is called in subsys_initcall_sync(). That is, if I call this function in acpi_init(), SDEI driver won't be ready and this driver fails to register the event. Cheers, Ilkka
WARNING: multiple messages have this Message-ID (diff)
From: Ilkka Koskinen <ilkka@os.amperecomputing.com> To: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> Cc: guohanjun@huawei.com, sudeep.holla@arm.com, rafael@kernel.org, linux@armlinux.org.uk, lenb@kernel.org, robert.moore@intel.com, linux-acpi@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, patches@amperecomputing.com, scott@os.amperecomputing.com, darren@os.amperecomputing.com, james.morse@arm.com, Ilkka Koskinen <ilkka@os.amperecomputing.com> Subject: Re: [PATCH v3 2/2] ACPI: AGDI: Add driver for Arm Generic Diagnostic Dump and Reset device Date: Thu, 13 Jan 2022 18:17:13 -0800 (PST) [thread overview] Message-ID: <alpine.DEB.2.22.394.2201131801380.3166@ubuntu200401> (raw) In-Reply-To: <alpine.DEB.2.22.394.2201051530290.2489@ubuntu200401> Hi Lorenzo, On Wed, 5 Jan 2022, Ilkka Koskinen wrote: > > Hi Lorenzo, > > On Wed, 5 Jan 2022, Lorenzo Pieralisi wrote: >> [+James, for SDEI bits] >> >> On Thu, Dec 30, 2021 at 07:37:25PM -0800, Ilkka Koskinen wrote: >>> ACPI for Arm Components 1.1 Platform Design Document v1.1 [0] specifices >>> Arm Generic Diagnostic Device Interface (AGDI). It allows an admin to >>> issue diagnostic dump and reset via an SDEI event or an interrupt. >>> This patch implements SDEI path. >>> >>> [0] https://developer.arm.com/documentation/den0093/latest/ >>> >>> Signed-off-by: Ilkka Koskinen <ilkka@os.amperecomputing.com> >>> --- >>> drivers/acpi/arm64/Kconfig | 8 +++ >>> drivers/acpi/arm64/Makefile | 1 + >>> drivers/acpi/arm64/agdi.c | 125 ++++++++++++++++++++++++++++++++++++ >>> 3 files changed, 134 insertions(+) >>> create mode 100644 drivers/acpi/arm64/agdi.c <snip> >>> diff --git a/drivers/acpi/arm64/agdi.c b/drivers/acpi/arm64/agdi.c >>> new file mode 100644 >>> index 000000000000..6525ccbae5c1 >>> --- /dev/null >>> +++ b/drivers/acpi/arm64/agdi.c <snip> >>> >>> +static int __init agdi_init(void) >>> +{ >>> + int ret; >>> + acpi_status status; >>> + struct acpi_table_agdi *agdi_table; >>> + struct agdi_data pdata; >>> + struct platform_device *pdev; >>> + >>> + if (acpi_disabled) >>> + return 0; >> >> Why don't we call agdi_init() from acpi_init() as we do for IORT/VIOT ? >> >> I don't think it is necessary to add a device_initcall(), with related >> ordering dependencies. > > That's a good point. I change it. Actually, I looked at this more carefully. acpi_init() is called in subsys_initcall() while sdei_init() is called in subsys_initcall_sync(). That is, if I call this function in acpi_init(), SDEI driver won't be ready and this driver fails to register the event. Cheers, Ilkka _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2022-01-14 2:17 UTC|newest] Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-12-31 3:37 [PATCH v3 0/2] ACPI: Arm Generic Diagnostic Dump and Reset device Ilkka Koskinen 2021-12-31 3:37 ` Ilkka Koskinen 2021-12-31 3:37 ` [PATCH v3 1/2] ACPI: tables: Add AGDI to the list of known table signatures Ilkka Koskinen 2021-12-31 3:37 ` Ilkka Koskinen 2021-12-31 3:37 ` [PATCH v3 2/2] ACPI: AGDI: Add driver for Arm Generic Diagnostic Dump and Reset device Ilkka Koskinen 2021-12-31 3:37 ` Ilkka Koskinen 2022-01-04 14:28 ` Rafael J. Wysocki 2022-01-04 14:28 ` Rafael J. Wysocki 2022-01-05 7:05 ` Ilkka Koskinen 2022-01-05 7:05 ` Ilkka Koskinen 2022-01-05 1:34 ` Hanjun Guo 2022-01-05 1:34 ` Hanjun Guo 2022-01-05 7:10 ` Ilkka Koskinen 2022-01-05 7:10 ` Ilkka Koskinen 2022-01-05 10:46 ` Lorenzo Pieralisi 2022-01-05 10:46 ` Lorenzo Pieralisi 2022-01-05 23:46 ` Ilkka Koskinen 2022-01-05 23:46 ` Ilkka Koskinen 2022-01-14 2:17 ` Ilkka Koskinen [this message] 2022-01-14 2:17 ` Ilkka Koskinen 2022-01-20 16:38 ` Lorenzo Pieralisi 2022-01-20 16:38 ` Lorenzo Pieralisi 2022-01-25 23:04 ` Ilkka Koskinen 2022-01-25 23:04 ` Ilkka Koskinen 2021-12-31 10:25 ` [PATCH v3 0/2] ACPI: " Russell King (Oracle) 2021-12-31 10:25 ` Russell King (Oracle)
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=alpine.DEB.2.22.394.2201131801380.3166@ubuntu200401 \ --to=ilkka@os.amperecomputing.com \ --cc=darren@os.amperecomputing.com \ --cc=guohanjun@huawei.com \ --cc=james.morse@arm.com \ --cc=lenb@kernel.org \ --cc=linux-acpi@vger.kernel.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux@armlinux.org.uk \ --cc=lorenzo.pieralisi@arm.com \ --cc=patches@amperecomputing.com \ --cc=rafael@kernel.org \ --cc=robert.moore@intel.com \ --cc=scott@os.amperecomputing.com \ --cc=sudeep.holla@arm.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: linkBe 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.