[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Zl2H7QVuu0WDlFOS@bogus>
Date: Mon, 3 Jun 2024 10:07:57 +0100
From: Sudeep Holla <sudeep.holla@....com>
To: admiyo@...amperecomputing.com
Cc: Jassi Brar <jassisinghbrar@...il.com>,
Sudeep Holla <sudeep.holla@....com>,
Robert Moore <robert.moore@...el.com>,
"Rafael J. Wysocki" <rafael.j.wysocki@...el.com>,
Len Brown <lenb@...nel.org>, netdev@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 1/3] mctp pcc: Check before sending MCTP PCC response
ACK
On Tue, May 28, 2024 at 03:18:21PM -0400, admiyo@...amperecomputing.com wrote:
> From: Adam Young <admiyo@...erecomputing.com>
>
> Type 4 PCC channels have an option to send back a response
> to the platform when they are done processing the request.
> The flag to indicate whether or not to respond is inside
> the message body, and thus is not available to the pcc
> mailbox. Since only one message can be processed at once per
> channel, the value of this flag is checked during message processing
> and passed back via the channels global structure.
>
> Ideally, the mailbox callback function would return a value
> indicating whether the message requires an ACK, but that
> would be a change to the mailbox API. That would involve
> some change to all (about 12) of the mailbox based drivers,
> and the majority of them would not need to know about the
> ACK call.
>
I don't have all the 3 patches. Is this sent by error or am I expected
to just review this patch while other 2 are not mailbox related ?
> Signed-off-by: Adam Young <admiyo@...amperecomputing.com>
> ---
> drivers/mailbox/pcc.c | 5 ++++-
> include/acpi/pcc.h | 1 +
> 2 files changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/mailbox/pcc.c b/drivers/mailbox/pcc.c
> index 94885e411085..774727b89693 100644
> --- a/drivers/mailbox/pcc.c
> +++ b/drivers/mailbox/pcc.c
> @@ -280,6 +280,7 @@ static irqreturn_t pcc_mbox_irq(int irq, void *p)
> {
> struct pcc_chan_info *pchan;
> struct mbox_chan *chan = p;
> + struct pcc_mbox_chan *pmchan;
> u64 val;
> int ret;
>
> @@ -304,6 +305,8 @@ static irqreturn_t pcc_mbox_irq(int irq, void *p)
> if (pcc_chan_reg_read_modify_write(&pchan->plat_irq_ack))
> return IRQ_NONE;
>
> + pmchan = &pchan->chan;
> + pmchan->ack_rx = true; //TODO default to False
We need to remove this and detect when it can be true if the default expected
is false.
--
Regards,
Sudeep
Powered by blists - more mailing lists