Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

mailbox: pcc: Mark Tx as complete in PCC IRQ handler

The PCC IRQ handler clears channel-in-use and notifies clients with
mbox_chan_received_data(), but it does not explicitly mark the
transmit as complete. In IRQ completion mode this could leave Tx complete
waiters hanging or lead to generic timeouts in the mailbox core.

Invoke mbox_chan_txdone() in the IRQ path once the platform has
acknowledged the transfer so the core can wake any waiters and update
state accordingly.

Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
Tested-by: Adam Young <admiyo@os.amperecomputing.com>
Signed-off-by: Jassi Brar <jassisinghbrar@gmail.com>

authored by

Sudeep Holla and committed by
Jassi Brar
9c753f7c 3349f800

+1
+1
drivers/mailbox/pcc.c
··· 340 340 */ 341 341 pchan->chan_in_use = false; 342 342 mbox_chan_received_data(chan, NULL); 343 + mbox_chan_txdone(chan, 0); 343 344 344 345 pcc_chan_acknowledge(pchan); 345 346