[PATCH v2 0/3] mailbox: pcc: Improve completion handling and validation

From: Sudeep Holla

Date: Thu Jul 23 2026 - 10:47:00 EST


Hi Jassi,

This series addresses three issues in the PCC mailbox controller which
are on the list for a while and discussed/reviewed. Please pick them
for v7.3 or let me know if you prefer pull request.

First, notify clients through their receive callback when a command
completes through polling, matching the interrupt-driven completion
path.

Second, centralize PCC shared memory signature checking in the mailbox
controller. Invalid signatures are reported without rejecting otherwise
working firmware, while mappings too small to contain a signature remain
fatal.

Finally, fix a race where a fast platform can signal command completion
before the channel is marked in use, causing a shared interrupt to be
ignored and the command to time out. Publish the channel state before
ringing the doorbell and use READ_ONCE()/WRITE_ONCE() for the lockless
flag accesses.


Regards,
Sudeep

Changes in v2:
- Reworked to keep chan_in_use set after a successful doorbell write
and clear it only when the write fails.
- Clarified that ordering is provided by the ordered I/O accessor,
covering both MMIO and port I/O doorbells.
- Clarified the cross-CPU flag access and interrupt-side clearing
before the mailbox core can submit another transfer.
- Link to v1: https://lore.kernel.org/all/20260717075649.467172-1-sudeep.holla@xxxxxxxxxx

Huisong Li (1):
mailbox: pcc: Fix command timeout due to missed interrupt

Sudeep Holla (2):
mailbox: pcc: Notify clients on polled completion
mailbox: pcc: Check shared memory signature on request

drivers/mailbox/pcc.c | 87 +++++++++++++++++++++++++++++++++----------
1 file changed, 67 insertions(+), 20 deletions(-)

--
2.43.0