| /ThreadX-v6.3.0/ports_smp/arc_hs_smp/metaware/example_build/sample_threadx/ |
| D | arc.h | 84 static inline void spinlock_acquire(unsigned int *lock) in spinlock_acquire() argument 95 : [slock] "r" (lock), in spinlock_acquire() 100 static inline void spinlock_release(unsigned int *lock) in spinlock_release() argument 106 : [slock] "r" (lock), in spinlock_release()
|
| /ThreadX-v6.3.0/ports_smp/arc_hs_smp/metaware/src/ |
| D | tx_thread_smp_protect.s | 88 llock r6, [r4] ; Attempt to get the inter-core lock 89 breq r3, r6, _continue ; If the lock is available, continue 90 b.d _tx_thread_smp_protect ; Attempt to get the lock again 93 scond r2, [r4] ; Attempt to set the lock 94 … beq_s _got_lock ; If STATUS32[Z] flag is set, we got the lock! 95 b.d _tx_thread_smp_protect ; Attempt to get the lock again
|
| /ThreadX-v6.3.0/ports_smp/cortex_a9_smp/ac5/example_build/sample_threadx/ |
| D | MP_Mutexes.s | 15 ; unsigned int lock; <-- offset 0 18 …; lock: 0xFF=unlocked 0x0 = Locked by CPU 0, 0x1 = Locked by CPU 1, 0x2 = Locked by CPU 2, 0x3 … 47 LDREX r1, [r0] ; Read lock field 53 ; Attempt to lock mutex 57 STREX r2, r1, [r0] ; Attempt to lock mutex, by write CPU's ID to lock field 88 MOV r1, #UNLOCKED ; Write "unlocked" into lock field
|
| D | MP_Mutexes.h | 18 unsigned int lock; member
|
| /ThreadX-v6.3.0/ports_smp/cortex_r8_smp/ac5/example_build/sample_threadx/ |
| D | MP_Mutexes.s | 15 ; unsigned int lock; <-- offset 0 18 …; lock: 0xFF=unlocked 0x0 = Locked by CPU 0, 0x1 = Locked by CPU 1, 0x2 = Locked by CPU 2, 0x3 … 47 LDREX r1, [r0] ; Read lock field 53 ; Attempt to lock mutex 57 STREX r2, r1, [r0] ; Attempt to lock mutex, by write CPU's ID to lock field 88 MOV r1, #UNLOCKED ; Write "unlocked" into lock field
|
| D | MP_Mutexes.h | 18 unsigned int lock; member
|
| /ThreadX-v6.3.0/ports_smp/cortex_a7_smp/gnu/example_build/ |
| D | MP_Mutexes.S | 15 @ ; unsigned int lock; <-- offset 0 18 @ ; lock: 0xFF=unlocked 0x0 = Locked by CPU 0, 0x1 = Locked by CPU 1, 0x2 = Locked by CPU 2, 0x… 55 LDREX r1, [r0] @ Read lock field 61 @ Attempt to lock mutex 65 STREX r2, r1, [r0] @ Attempt to lock mutex, by write CPU's ID to lock field 100 MOV r1, #UNLOCKED @ Write "unlocked" into lock field
|
| D | MP_Mutexes.h | 18 unsigned int lock; member
|
| /ThreadX-v6.3.0/ports_smp/cortex_a7_smp/ac5/example_build/sample_threadx/ |
| D | MP_Mutexes.s | 18 ; unsigned int lock; <-- offset 0 21 …; lock: 0xFF=unlocked 0x0 = Locked by CPU 0, 0x1 = Locked by CPU 1, 0x2 = Locked by CPU 2, 0x3 … 50 LDREX r1, [r0] ; Read lock field 56 ; Attempt to lock mutex 60 STREX r2, r1, [r0] ; Attempt to lock mutex, by write CPU's ID to lock field 91 MOV r1, #UNLOCKED ; Write "unlocked" into lock field
|
| D | MP_Mutexes.h | 20 unsigned int lock; member
|
| /ThreadX-v6.3.0/ports_smp/cortex_a5_smp/ac5/example_build/sample_threadx/ |
| D | MP_Mutexes.s | 18 ; unsigned int lock; <-- offset 0 21 …; lock: 0xFF=unlocked 0x0 = Locked by CPU 0, 0x1 = Locked by CPU 1, 0x2 = Locked by CPU 2, 0x3 … 50 LDREX r1, [r0] ; Read lock field 56 ; Attempt to lock mutex 60 STREX r2, r1, [r0] ; Attempt to lock mutex, by write CPU's ID to lock field 91 MOV r1, #UNLOCKED ; Write "unlocked" into lock field
|
| D | MP_Mutexes.h | 20 unsigned int lock; member
|
| /ThreadX-v6.3.0/ports/xtensa/xcc/src/ |
| D | tx_clib_lock.c | 154 TX_MUTEX * lock; in _Mtxinit() local 160 lock = &(xclib_locks[lcnt]); in _Mtxinit() 165 tx_mutex_create (lock, "Clib lock", 0); in _Mtxinit() 167 tx_mutex_create (lock, "Clib lock", TX_INHERIT); in _Mtxinit() 170 *mtx = lock; in _Mtxinit()
|
| /ThreadX-v6.3.0/ports_smp/cortex_a9_smp/gnu/example_build/ |
| D | MP_Mutexes.h | 20 unsigned int lock; member
|
| /ThreadX-v6.3.0/ports_smp/cortex_a5_smp/gnu/example_build/ |
| D | MP_Mutexes.h | 20 unsigned int lock; member
|
| /ThreadX-v6.3.0/ports_smp/cortex_a7_smp/gnu/src/ |
| D | tx_thread_smp_protect.S | 155 MOV r3, #1 @ Build lock value 164 _tx_thread_smp_protect_lock_got @ Call the lock got function 193 MOV r3, #1 @ Build lock value 194 STR r3, [r2, #0] @ Store lock value 295 MOV r3, #1 @ Build lock value 296 STR r3, [r2, #0] @ Store lock value
|
| /ThreadX-v6.3.0/ports_smp/cortex_a9_smp/gnu/src/ |
| D | tx_thread_smp_protect.S | 155 MOV r3, #1 @ Build lock value 164 _tx_thread_smp_protect_lock_got @ Call the lock got function 193 MOV r3, #1 @ Build lock value 194 STR r3, [r2, #0] @ Store lock value 295 MOV r3, #1 @ Build lock value 296 STR r3, [r2, #0] @ Store lock value
|
| D | tx_thread_schedule.S | 131 MOV r2, #172 @ Build offset to the lock 132 ADD r2, r0, r2 @ Get the address to the lock 133 LDREX r3, [r2] @ Pickup the lock value 152 STR r3, [r2] @ Release the lock 153 DMB @ Ensure write to lock completes 165 MOV r3, #0 @ Build clear value for the lock 166 STR r3, [r2] @ Release the lock
|
| /ThreadX-v6.3.0/ports_smp/cortex_a5_smp/gnu/src/ |
| D | tx_thread_smp_protect.S | 153 MOV r3, #1 @ Build lock value 162 _tx_thread_smp_protect_lock_got @ Call the lock got function 191 MOV r3, #1 @ Build lock value 192 STR r3, [r2, #0] @ Store lock value 293 MOV r3, #1 @ Build lock value 294 STR r3, [r2, #0] @ Store lock value
|
| /ThreadX-v6.3.0/ports_smp/cortex_a7_smp/ac5/src/ |
| D | tx_thread_smp_protect.s | 151 MOV r3, #1 ; Build lock value 160 macro_call0 _tx_thread_smp_protect_lock_got ; Call the lock got function 189 MOV r3, #1 ; Build lock value 190 STR r3, [r2, #0] ; Store lock value 291 MOV r3, #1 ; Build lock value 292 STR r3, [r2, #0] ; Store lock value
|
| D | tx_thread_schedule.s | 129 MOV r2, #172 ; Build offset to the lock 130 ADD r2, r0, r2 ; Get the address to the lock 131 LDREX r3, [r2] ; Pickup the lock value 150 STR r3, [r2] ; Release the lock 151 DMB ; Ensure write to lock completes 163 MOV r3, #0 ; Build clear value for the lock 164 STR r3, [r2] ; Release the lock
|
| /ThreadX-v6.3.0/ports_smp/cortex_a9_smp/ac5/src/ |
| D | tx_thread_smp_protect.s | 153 MOV r3, #1 ; Build lock value 162 macro_call0 _tx_thread_smp_protect_lock_got ; Call the lock got function 191 MOV r3, #1 ; Build lock value 192 STR r3, [r2, #0] ; Store lock value 293 MOV r3, #1 ; Build lock value 294 STR r3, [r2, #0] ; Store lock value
|
| D | tx_thread_schedule.s | 129 MOV r2, #172 ; Build offset to the lock 130 ADD r2, r0, r2 ; Get the address to the lock 131 LDREX r3, [r2] ; Pickup the lock value 150 STR r3, [r2] ; Release the lock 151 DMB ; Ensure write to lock completes 163 MOV r3, #0 ; Build clear value for the lock 164 STR r3, [r2] ; Release the lock
|
| /ThreadX-v6.3.0/ports_smp/cortex_a5_smp/ac5/src/ |
| D | tx_thread_smp_protect.s | 151 MOV r3, #1 ; Build lock value 160 macro_call0 _tx_thread_smp_protect_lock_got ; Call the lock got function 189 MOV r3, #1 ; Build lock value 190 STR r3, [r2, #0] ; Store lock value 291 MOV r3, #1 ; Build lock value 292 STR r3, [r2, #0] ; Store lock value
|
| D | tx_thread_schedule.s | 130 MOV r2, #172 ; Build offset to the lock 131 ADD r2, r0, r2 ; Get the address to the lock 132 LDREX r3, [r2] ; Pickup the lock value 151 STR r3, [r2] ; Release the lock 152 DMB ; Ensure write to lock completes 164 MOV r3, #0 ; Build clear value for the lock 165 STR r3, [r2] ; Release the lock
|