[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <6b14156b-9734-f0e0-5954-57cc76576a37@huawei.com>
Date: Tue, 18 Nov 2025 15:29:18 +0800
From: Hanjun Guo <guohanjun@...wei.com>
To: Will Deacon <will@...nel.org>, Kazuhiro Abe <fj1078ii@...jp.fujitsu.com>
CC: Lorenzo Pieralisi <lpieralisi@...nel.org>, Sudeep Holla
<sudeep.holla@....com>, "Rafael J. Wysocki" <rafael@...nel.org>, Len Brown
<lenb@...nel.org>, <linux-acpi@...r.kernel.org>,
<linux-arm-kernel@...ts.infradead.org>, <linux-kernel@...r.kernel.org>, Ilkka
Koskinen <ilkka@...amperecomputing.com>, Catalin Marinas
<catalin.marinas@....com>
Subject: Re: [PATCH v4] ACPI: AGDI: Add interrupt signaling mode support
On 2025/11/5 0:06, Will Deacon wrote:
> On Mon, Oct 20, 2025 at 09:23:05PM +0800, Hanjun Guo wrote:
>> On 2025/10/17 15:39, Kazuhiro Abe wrote:
>>> AGDI has two types of signaling modes: SDEI and interrupt.
>>> Currently, the AGDI driver only supports SDEI.
>>> Therefore, add support for interrupt signaling mode
>>> The interrupt vector is retrieved from the AGDI table, and call panic
>>> function when an interrupt occurs.
>>>
>>> Reviewed-by: Ilkka Koskinen <ilkka@...amperecomputing.com>
>>> Signed-off-by: Kazuhiro Abe <fj1078ii@...jp.fujitsu.com>
>>> ---
>>> Hanjun, I have addressed all your comments.
>>> Please review them.
>>>
>>> v3->v4
>>> - Add a comment to the flags member.
>>> - Fix agdi_interrupt_probe.
>>> - Fix agdi_interrupt_remove.
>>> - Add space in struct initializsation.
>>> - Delete curly braces.
>>
>> Looks good to me,
>>
>> Acked-by: Hanjun Guo <guohanjun@...wei.com>
>
> I wasn't cc'd on the original patch but I couldn't figure out why it
> uses IRQF_NO_AUTOEN when requesting the irq given that the first thing
> it does is enable it.
Sorry for the late reply, seems this comment was addressed.
But when I go back to read the latest AGDI spec [0], I see
the signaling mode can be SDEI *and* interrupt:
Flags node structures 1 36 Bits [1:0]: Signaling mode:
2: Both SDEI and Interrupt-based signaling is
supported. While an SDEI event handler is
registered, the platform is allowed to not
generate the wired interrupt
So which means we need to support both SDEI and interrupt when the
signaling mode is 2, but for now, the code is
+ if (agdi_table->flags & ACPI_AGDI_SIGNALING_MODE)
+ pdata.gsiv = agdi_table->gsiv;
+ else
+ pdata.sdei_event = agdi_table->sdei_event;
Kazuhiro, could you take a look again?
Thanks
Hanjun
[0]: https://developer.arm.com/documentation/den0093/latest/
Powered by blists - more mailing lists