[PATCH] ARC: module: Fix !CONFIG_ARC_DW2_UNWIND builds

2017-01-16 Thread Vineet Gupta
commit d65283f7b695b5 added mod->arch.secstr under CONFIG_ARC_DW2_UNWIND, but used it unconditionally which broke builds when the option was disabled. Fix that by adjusting the #ifdef guard. And while at it add a missing guard (for unwinder) in module.c as well Reported-by: Waldemar Brodkorb Cc:

[PATCH 3/4] ARCv2: smp: MCIP: remove debug aid to halt all cores when one halts

2017-01-16 Thread Vineet Gupta
This was really usefull when doing initial bringup and also for occassional debug of software and hardware bugs. However in the new smp-boot regime, non masters will "self" halt even for run-on-reset configs. This will misinteract with the debug feature as in even master will get halted when the no

[PATCH 2/4] ARC: smp-boot: run-on-reset: add callback to allow non masters to wait

2017-01-16 Thread Vineet Gupta
Currently for halt-on-reset, non masters spin on a shared memory which is wiggled by Master at right time. This is not efficient when hardware support exists to stop and resume them from Master (using an external IP block). More importantly Master might be setting up SLC or IO-Coherency aperutes in

[PATCH 1/4] ARC: smp-boot: waiting API for run-from-reset need not jump to entry point

2017-01-16 Thread Vineet Gupta
For run-on-reset SMP configs, non master cores call a routine which waits until Master gives it a "go" signal (currently using a shared mem flag). The same routine then jumps off the well known entry point of all non Master cores i.e. @first_lines_of_secondary This patch moves the last part out wa

[PATCH 4/4] ARCv2: smp-boot: MCIP: use Inter-Core-Debug unit to kick start non master cpus

2017-01-16 Thread Vineet Gupta
This essentially converts a run-on-reset to halt-on-reset - so non masters self halt in early boot code. And later they are resumed from halted PC using MCIP ICD assist. As mentioned in prev commits, this paves way for radio silence on coherency unit, while master is setting up IOC and such. Sign

[PATCH 0/4] ARC rework SMP boot waiting to handle IO-Coherency case

2017-01-16 Thread Vineet Gupta
ARC SMP supports halt-on-reset and run-on-reset for non master cores. run-on-reset is applicable for internal bitfiles as well as debugger assisted boots (where all cores are started together) run-on-reset uses a poll-shared-flag-in-mem-n-spin approach which is not efficient and moreover is wrong