Changeset 523 for soft/giet_vm/giet_common/utils.h
- Timestamp:
- Mar 10, 2015, 3:21:01 PM (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
soft/giet_vm/giet_common/utils.h
r514 r523 37 37 38 38 39 /////////////////////////////////////////////////////////////////////////////////// 40 // Locks access functions 41 /////////////////////////////////////////////////////////////////////////////////// 42 volatile typedef struct _giet_barrier_s 43 { 44 char name[32]; // barrier name 45 unsigned int sense; // barrier state (toggle) 46 unsigned int ntasks; // total number of expected tasks 47 unsigned int count; // number of not arrived tasks 48 } _giet_barrier_t; 49 50 extern void _barrier_init( _giet_barrier_t* barrier, 51 unsigned int ntasks ); 52 53 extern void _barrier_wait( _giet_barrier_t* barrier ); 54 55 56 /////////////////////////////////////////////////////////////////////////////////// 57 // Locks access functions 58 /////////////////////////////////////////////////////////////////////////////////// 59 volatile typedef struct _giet_lock_s { unsigned int value; 60 unsigned int padding[15]; } _giet_lock_t; 61 62 63 extern void _get_lock(_giet_lock_t* lock); 64 65 extern void _release_lock(_giet_lock_t* lock); 66 /////////////////////////////////////////////////////////////////////////////////// 39 /////////////////////////////////////////////////////////////////////////// 67 40 // CP0 registers access functions 68 /////////////////////////////////////////////////////////////////////////// ////////41 /////////////////////////////////////////////////////////////////////////// 69 42 70 43 extern unsigned int _get_sched(void); … … 90 63 extern void _set_sr(unsigned int value); 91 64 92 /////////////////////////////////////////////////////////////////////////// ////////65 /////////////////////////////////////////////////////////////////////////// 93 66 // CP2 registers access functions 94 /////////////////////////////////////////////////////////////////////////// ////////67 /////////////////////////////////////////////////////////////////////////// 95 68 96 69 extern unsigned int _get_mmu_ptpr(void); … … 104 77 extern void _set_mmu_dcache_inval(unsigned int value); 105 78 106 /////////////////////////////////////////////////////////////////////////// ////////79 /////////////////////////////////////////////////////////////////////////// 107 80 // Physical addressing functions 108 /////////////////////////////////////////////////////////////////////////// ////////81 /////////////////////////////////////////////////////////////////////////// 109 82 110 83 extern unsigned int _physical_read( unsigned long long paddr ); … … 131 104 unsigned int value ); 132 105 133 /////////////////////////////////////////////////////////////////////////// ////////106 /////////////////////////////////////////////////////////////////////////// 134 107 // Scheduler and task context access functions 135 /////////////////////////////////////////////////////////////////////////// ////////108 /////////////////////////////////////////////////////////////////////////// 136 109 137 110 extern unsigned int _get_current_task_id(void); … … 155 128 unsigned int value ); 156 129 157 /////////////////////////////////////////////////////////////////////////// ////////130 /////////////////////////////////////////////////////////////////////////// 158 131 // Mapping access functions 159 /////////////////////////////////////////////////////////////////////////// ////////132 /////////////////////////////////////////////////////////////////////////// 160 133 161 134 extern mapping_cluster_t * _get_cluster_base(mapping_header_t* header); … … 166 139 extern mapping_proc_t * _get_proc_base(mapping_header_t* header); 167 140 extern mapping_irq_t * _get_irq_base(mapping_header_t* header); 168 extern mapping_coproc_t * _get_coproc_base(mapping_header_t* header);169 extern mapping_cp_port_t * _get_cp_port_base(mapping_header_t* header);170 141 extern mapping_periph_t * _get_periph_base(mapping_header_t* header); 171 142 172 /////////////////////////////////////////////////////////////////////////// ////////143 /////////////////////////////////////////////////////////////////////////// 173 144 // Miscelaneous functions 174 /////////////////////////////////////////////////////////////////////////// ////////145 /////////////////////////////////////////////////////////////////////////// 175 146 176 147 extern void _exit(void); … … 194 165 unsigned int* levels ); 195 166 196 ////////////////////////////////////////////////////////////////////////// /////////167 ////////////////////////////////////////////////////////////////////////// 197 168 // Required by GCC 198 ////////////////////////////////////////////////////////////////////////// /////////169 ////////////////////////////////////////////////////////////////////////// 199 170 200 ///////////////////////////////////////////////////////////////////////////////////201 171 extern void* memcpy( void* dst, 202 172 const void* src,
Note: See TracChangeset
for help on using the changeset viewer.