Signed-off-by: Yuan Zhao <[email protected]> --- ...ondition-during-DSP-firmware-booting.patch | 38 +++++++++++++++++++ .../recipes-ti/ocl/opencl-monitor_git.bb | 3 +- 2 files changed, 40 insertions(+), 1 deletion(-) create mode 100644 meta-arago-extras/recipes-ti/ocl/files/0002-Fix-K2x-race-condition-during-DSP-firmware-booting.patch
diff --git a/meta-arago-extras/recipes-ti/ocl/files/0002-Fix-K2x-race-condition-during-DSP-firmware-booting.patch b/meta-arago-extras/recipes-ti/ocl/files/0002-Fix-K2x-race-condition-during-DSP-firmware-booting.patch new file mode 100644 index 00000000..807639da --- /dev/null +++ b/meta-arago-extras/recipes-ti/ocl/files/0002-Fix-K2x-race-condition-during-DSP-firmware-booting.patch @@ -0,0 +1,38 @@ +ocl: Fix K2x race condition during DSP firmware booting + +- Race condition during booting of K2x DSP monitor firmware, causes + some DSPs not able to create RPMessage object that communicates with + the host (Arm A15). +- The root cause is that one global data in ipc/RPMessage, + "RPMessage_module", is placed in global DDR section shared by all cores. +- The fix is to place "ipc/RPMessage" global data into core-private memory. +- MCT-1279 + +Upstream-Status: Submitted + +Signed-off-by: Yuan Zhao <[email protected]> +--- + monitor/cmds/monitor.cmd | 7 +++++++ + 1 file changed, 7 insertions(+) + +diff --git a/monitor/cmds/monitor.cmd b/monitor/cmds/monitor.cmd +index a6a9fb9..6ec4151 100644 +--- a/monitor/cmds/monitor.cmd ++++ b/monitor/cmds/monitor.cmd +@@ -164,6 +164,13 @@ SECTIONS + } run=DDR3_VIRT, load=DDR3_PER_CORE + */ + ++ /* ipc (e.g. RPMessage_module) need to be private for each core */ ++ .otherlocalfar : ++ { ++ "*.ae66" (.fardata) ++ "*.ae66" (.far) ++ } run=DDR3_VIRT, load=DDR3_PER_CORE ++ + .localddr: run=DDR3_VIRT, load=DDR3_PER_CORE + .ctools_core_private: run=DDR3_VIRT, load=DDR3_PER_CORE + +-- +2.17.1 + diff --git a/meta-arago-extras/recipes-ti/ocl/opencl-monitor_git.bb b/meta-arago-extras/recipes-ti/ocl/opencl-monitor_git.bb index 6689f94b..d2d09bb1 100644 --- a/meta-arago-extras/recipes-ti/ocl/opencl-monitor_git.bb +++ b/meta-arago-extras/recipes-ti/ocl/opencl-monitor_git.bb @@ -5,8 +5,9 @@ LICENSE = "BSD" include ocl.inc require recipes-ti/includes/arago-paths.inc -PR = "${INC_PR}.1" +PR = "${INC_PR}.2" SRC_URI += "file://0001-Update-VRING-in-resource-table-for-new-Linux-kernel.patch;patchdir=.." +SRC_URI += "file://0002-Fix-K2x-race-condition-during-DSP-firmware-booting.patch;patchdir=.." inherit update-alternatives -- 2.24.1 _______________________________________________ meta-arago mailing list [email protected] http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago
