remoteproc/k3-r5: fix loading into BTCM when using R5 local addresses
authorSuman Anna <s-anna@ti.com>
Sat, 28 Sep 2019 00:00:46 +0000 (19:00 -0500)
committerSuman Anna <s-anna@ti.com>
Wed, 2 Oct 2019 02:38:15 +0000 (21:38 -0500)
commit91b50d6d1d8ec21d87358f77dfe7046bd9e74fef
tree6f318e0456fb28817bfddd5d5f7eb874e449822f
parent667bb76caf05557b2b6c4d3e8e2d9a2573d2f1f3
remoteproc/k3-r5: fix loading into BTCM when using R5 local addresses

A R5F remote processor can access its TCMs either using its local address
views at address 0x0 and/or 0x41010000 depending on the LOCZRAMA setting,
or using the corresponding SoC-bus address views (one-to-one views since
there are no MMUs).

The K3 R5F remoteproc driver provides the translations for the TCMs
through the k3_r5_rproc_da_to_va() function to allow loading into TCMs.
This function is translating the SoC-view addresses just fine, but is
only translating ATCMs at address 0x0 at present. This results in a
failure to load any segments into BTCMs when using the R5 local address
range at 0x41010000. Update the logic in this function to fix these
BTCM load issues.

Fixes: 80d807f572e9 ("remoteproc/k3-r5: add a remoteproc driver for R5F subsystem")
Signed-off-by: Suman Anna <s-anna@ti.com>
drivers/remoteproc/ti_k3_r5_remoteproc.c