soc: intel_adsp/ace: linker: align cpuhold_* variables
For some weird unknown reasons, the simulator really do not like the cpuhold_* variables to be tightly packed together. This results in cpuhold_spawned not being updated, and we will be stuck in the while loop for it to be set. Workaround this by explicitly aligning these variables on 16 byte boundary. This seems to work for now. Signed-off-by: Daniel Leung <daniel.leung@intel.com>
This commit is contained in:
parent
e5685cab4a
commit
58b035b85f
1 changed files with 18 additions and 0 deletions
|
@ -505,6 +505,24 @@ SECTIONS {
|
|||
.bss SEGSTART_UNCACHED (NOLOAD) :
|
||||
{
|
||||
_bss_start = .;
|
||||
|
||||
#if defined(CONFIG_ZTEST) && defined(CONFIG_SIMULATOR_XTENSA)
|
||||
/* For some weird unknown reasons, the simulator really do not
|
||||
* like these cpuhold_* variables to be tightly packed together.
|
||||
* This results in cpuhold_spawned not being updated, and we
|
||||
* will be stuck in the while loop for it to be set.
|
||||
* Workaround by explicitly aligning these variables.
|
||||
*/
|
||||
. = ALIGN(16);
|
||||
*:ztest.c.obj(.bss.cpuhold_sem)
|
||||
. = ALIGN(16);
|
||||
*:ztest.c.obj(.bss.cpuhold_active)
|
||||
. = ALIGN(16);
|
||||
*:ztest.c.obj(.bss.cpuhold_spawned)
|
||||
. = ALIGN(16);
|
||||
*:ztest.c.obj(.bss.cpuhold_pool_items)
|
||||
#endif /* CONFIG_ZTEST && CONFIG_SIMULATOR_XTENSA */
|
||||
|
||||
*(.dynsbss)
|
||||
*(.sbss)
|
||||
*(.sbss.*)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue