]> www.infradead.org Git - users/jedix/linux-maple.git/commit
mailbox: tegra-hsp: Clear mailbox before using message
authorPekka Pessi <ppessi@nvidia.com>
Mon, 2 Dec 2024 10:05:59 +0000 (15:35 +0530)
committerJassi Brar <jassisinghbrar@gmail.com>
Sat, 18 Jan 2025 22:05:34 +0000 (16:05 -0600)
commit0b7f8328f988178b55ee11d772a6e1238c04d29d
tree397c0c245f37b9decfc87ac8ab578ffccb4bd69e
parentf055feb49c1c4333abb80ce1e9d93841cf74ea84
mailbox: tegra-hsp: Clear mailbox before using message

The Tegra RCE (Camera) driver expects the mailbox to be empty before
processing the IVC messages. On RT kernel, the threads processing the
IVC messages (which are invoked after `mbox_chan_received_data()` is
called) may be on a different CPU or running with a higher priority
than the HSP interrupt handler thread. This can cause it to act on the
message before the mailbox gets cleared in the HSP interrupt handler
resulting in a loss of IVC notification.

Fix this by clearing the mailbox data register before calling
`mbox_chan_received_data()`.

Fixes: 8f585d14030d ("mailbox: tegra-hsp: Add tegra_hsp_sm_ops")
Fixes: 74c20dd0f892 ("mailbox: tegra-hsp: Add 128-bit shared mailbox support")
Cc: stable@vger.kernel.org
Signed-off-by: Pekka Pessi <ppessi@nvidia.com>
Signed-off-by: Kartik Rajput <kkartik@nvidia.com>
Acked-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Jassi Brar <jassisinghbrar@gmail.com>
drivers/mailbox/tegra-hsp.c