From 41909ba6d82483791db47add5e2baac0458550d2 Mon Sep 17 00:00:00 2001 From: Jai Luthra Date: Fri, 30 Dec 2022 07:24:53 -0600 Subject: [PATCH] remoteproc: k3-c7x: Add support for C7xv DSP on AM62A SoC Add support to the K3 DSP remoteproc driver to configure the C7xv subsystem core on AM62A SoCs. The C7xv susbsytem is based on C71 DSP with anlytics engine for deep learning purposes. The remoteproc handling for device management is similar to the C66/C71 DSPs on K3 J7 family SoCs, even though there are additional hardware accelerators and IP updates to C7xv subsystem. Signed-off-by: Jai Luthra Signed-off-by: Hari Nagalla Link: https://lore.kernel.org/r/20221230132453.32022-3-hnagalla@ti.com Signed-off-by: Mathieu Poirier --- drivers/remoteproc/ti_k3_dsp_remoteproc.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/drivers/remoteproc/ti_k3_dsp_remoteproc.c b/drivers/remoteproc/ti_k3_dsp_remoteproc.c index eb9c64f7b9b4..ec626a37fef6 100644 --- a/drivers/remoteproc/ti_k3_dsp_remoteproc.c +++ b/drivers/remoteproc/ti_k3_dsp_remoteproc.c @@ -870,6 +870,10 @@ static const struct k3_dsp_mem_data c71_mems[] = { { .name = "l1dram", .dev_addr = 0xe00000 }, }; +static const struct k3_dsp_mem_data c7xv_mems[] = { + { .name = "l2sram", .dev_addr = 0x800000 }, +}; + static const struct k3_dsp_dev_data c66_data = { .mems = c66_mems, .num_mems = ARRAY_SIZE(c66_mems), @@ -884,10 +888,18 @@ static const struct k3_dsp_dev_data c71_data = { .uses_lreset = false, }; +static const struct k3_dsp_dev_data c7xv_data = { + .mems = c7xv_mems, + .num_mems = ARRAY_SIZE(c7xv_mems), + .boot_align_addr = SZ_2M, + .uses_lreset = false, +}; + static const struct of_device_id k3_dsp_of_match[] = { { .compatible = "ti,j721e-c66-dsp", .data = &c66_data, }, { .compatible = "ti,j721e-c71-dsp", .data = &c71_data, }, { .compatible = "ti,j721s2-c71-dsp", .data = &c71_data, }, + { .compatible = "ti,am62a-c7xv-dsp", .data = &c7xv_data, }, { /* sentinel */ }, }; MODULE_DEVICE_TABLE(of, k3_dsp_of_match);