Changeset 345 for soft/giet_vm/giet_kernel/kernel_init.c
- Timestamp:
- Jun 25, 2014, 2:19:37 PM (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
soft/giet_vm/giet_kernel/kernel_init.c
r330 r345 116 116 117 117 __attribute__((section (".kdata"))) 118 unsigned int _ptabs_vaddr[GIET_NB_VSPACE_MAX]; // virtual addresses118 volatile unsigned int _ptabs_vaddr[GIET_NB_VSPACE_MAX]; // virtual addresses 119 119 120 120 __attribute__((section (".kdata"))) 121 unsigned int _ptabs_ptprs[GIET_NB_VSPACE_MAX]; // physical addresses >> 13121 volatile unsigned int _ptabs_ptprs[GIET_NB_VSPACE_MAX]; // physical addresses >> 13 122 122 123 123 /////////////////////////////////////////////////////////////////////////////////// … … 126 126 127 127 __attribute__((section (".kdata"))) 128 static_scheduler_t* _schedulers[NB_PROCS_MAX<<(X_WIDTH+Y_WIDTH)]; // virtual addresses128 volatile static_scheduler_t* _schedulers[NB_PROCS_MAX<<(X_WIDTH+Y_WIDTH)]; // virtual addresses 129 129 130 130 //////////////////////////////////////////////////////////////////////////////////// … … 133 133 134 134 __attribute__((section (".kdata"))) 135 unsigned int _idle_stack[X_SIZE * Y_SIZE * NB_PROCS_MAX * 128 ];135 volatile unsigned int _idle_stack[X_SIZE * Y_SIZE * NB_PROCS_MAX * 128 ]; 136 136 137 137 //////////////////////////////////////////////////////////////////////////////////// … … 140 140 141 141 __attribute__((section (".kdata"))) 142 unsigned int _init_barrier = 0;142 volatile unsigned int _init_barrier = 0; 143 143 144 144 /////////////////////////////////////////////////////////////////////////////////// … … 340 340 341 341 // busy waiting until all processors synchronized 342 while ( _init_barrier != NB_TOTAL_PROCS ) asm volatile ("nop");342 while ( _init_barrier != NB_TOTAL_PROCS ); 343 343 344 344 // set registers and jump to user code … … 351 351 : 352 352 : "r"(sp_value), "r"(sr_value), "r"(ptpr_value), "r"(epc_value) 353 : "$29" );353 : "$29", "memory" ); 354 354 355 355 } // end kernel_init()
Note: See TracChangeset
for help on using the changeset viewer.