Re: [PATCH v4 3/3] remoteproc: zynqmp: get TCM from device-tree
From: Tanmay Shah <hidden>
Date: 2023-09-05 21:49:38
Also in:
linux-arm-kernel, linux-remoteproc, lkml
On 9/4/23 2:50 AM, Philippe Mathieu-Daudé wrote:
Hi, On 29/8/23 20:19, Tanmay Shah wrote:quoted
Use new dt bindings to get TCM address and size information. Also make sure that driver stays compatible with previous device-tree bindings. So, if TCM information isn't available in device-tree for zynqmp platform, hard-coded address of TCM will be used. New platforms that are compatible with this driver must add TCM support in device-tree as per new bindings. Signed-off-by: Tanmay Shah <redacted> --- drivers/remoteproc/xlnx_r5_remoteproc.c | 279 +++++++++++++++++++----- 1 file changed, 221 insertions(+), 58 deletions(-)quoted
/**@@ -75,11 +79,17 @@ struct mbox_info { * Hardcoded TCM bank values. This will be removed once TCM bindings are * accepted for system-dt specifications and upstreamed in linux kernelJust curious, for how long this fall back code has to be maintained? (When/how will we know we can remove it?)
I believe we should never remove it. It's important that driver works with old bindings as well.
quoted
*/ -static const struct mem_bank_data zynqmp_tcm_banks[] = { - {0xffe00000UL, 0x10000UL, PD_R5_0_ATCM, "atcm0"}, /* TCM 64KB each */ - {0xffe20000UL, 0x10000UL, PD_R5_0_BTCM, "btcm0"}, - {0xffe90000UL, 0x10000UL, PD_R5_1_ATCM, "atcm1"}, - {0xffeb0000UL, 0x10000UL, PD_R5_1_BTCM, "btcm1"}, +static const struct mem_bank_data zynqmp_tcm_banks_split[] = { + {0xffe00000, 0x0, 0x10000, PD_R5_0_ATCM, 0, "atcm0"}, /* TCM 64KB each */ + {0xffe20000, 0x20000, 0x10000, PD_R5_0_BTCM, 0, "btcm0"}, + {0xffe90000, 0x0, 0x10000, PD_R5_1_ATCM, 0, "atcm1"}, + {0xffeb0000, 0x20000, 0x10000, PD_R5_1_BTCM, 0, "btcm1"}, +};