ARC: SMP: Enable use of ARConnect Inter-core Debug Unit #23212
Labels
area: ARC
ARC Architecture
area: SMP
Symmetric multiprocessing
Enhancement
Changes/Updates/Additions to existing features
Milestone
ARC's SMP-supporting IP called ARConnect has a special module which helps with interactive debugging of multi-core ARC designs by halting all cores in the cluster whenever any core is halted.
We do have helper functions in place (
z_arc_connect_debug_select_{set|read}()
&z_arc_connect_debug_mask_{set|read}()
) so that's just a matter of using them for SMP platforms which are as of today MDB simulator & HSDK board.One thing to note is we have to be careful setting this module up in a sense that we may want to use not all cores in the cluster for a particular execution (and that's perfectly possible by changing amount of SMP cores in menuconfig via
CONFIG_MP_NUM_CPUS
) so we shouldn't hard-code setup for all cores in the cluster but do it gradually adding core-by core as they start-up. Otherwise immediately after we set ICD to monitor all cores we'll get stuck as some cores were intentionally left halted.The text was updated successfully, but these errors were encountered: