remoteproc: zynqmp: fix TCM carveouts in lockstep mode
authorTanmay Shah <tanmay.shah@amd.com>
Wed, 13 Sep 2023 02:43:23 +0000 (19:43 -0700)
committerMathieu Poirier <mathieu.poirier@linaro.org>
Thu, 14 Sep 2023 17:04:43 +0000 (11:04 -0600)
commit9af45bbdcbbbb411b6b7440220593a46282fd64b
tree650c723ac35bc412979f414cc1d204f9d65a1122
parentd1a8ac11ee72c192611b0cae98ad6304314f9ae7
remoteproc: zynqmp: fix TCM carveouts in lockstep mode

In lockstep mode following is TCM address map:

|      *TCM*         |   *R5 View* | *Linux view* |
| R5_0 ATCM (128 KB) | 0x0000_0000 | 0xFFE0_0000  |
| R5_0 BTCM (128 KB) | 0x0002_0000 | 0xFFE2_0000  |

Current driver keeps single TCM carveout in lockstep mode
as ATCM and BTCM addresses form contiguous memory region.

Although the addresses are contiguous, it is not same type
of memory. ATCM typically holds interrupt or exception code
that must be accessed at high speed. BTCM typically holds
a block of data for intensive processing, such as audio or
video processing. As both are different types of memory,
they should be allocated as different carveout. This patch
is fixing TCM carveout allocation in lockstep mode.

Signed-off-by: Tanmay Shah <tanmay.shah@amd.com>
Link: https://lore.kernel.org/r/20230913024323.2768114-1-tanmay.shah@amd.com
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
drivers/remoteproc/xlnx_r5_remoteproc.c