| /ThreadX-v6.3.0/ports_smp/mips32_interaptiv_smp/gnu/src/ |
| D | tx_thread_smp_protect.S | 75 la $10, _tx_thread_smp_protection # Build address to protection structure 76 lw $9, ($10) # Pickup the protection 77 … bne $9, $0, _already_owned # If non-zero, then the protection is already in force 79 ll $11, ($10) # Pickup the protection in force flag 80 bne $11, $0, _get_retry # Is the protection still available? 81 li $11, 1 # Build protection in force flag 83 beq $11, $0, _get_retry # If successful, we got the protection! 104 b _tx_thread_smp_protect # Try to get the protection again 109 beq $9, $25, _have_the_protection # If equal, we already have the protection 110 lw $12, 12($10) # Pickup protection count [all …]
|
| D | tx_thread_smp_unprotect.S | 76 la $10, _tx_thread_smp_protection # Build address of protection structure 78 …bne $9, $25, _still_protected # Not the same VPE, protection is in force somewhere e… 79 lw $12, 12($10) # Pickup protection count 80 beq $12, $0, _still_protected # If zero, protection is not in force anymore 82 sw $12, 12($10) # Store back the protection count 83 bne $12, $0, _still_protected # If non-zero, nested protection condition
|
| D | tx_thread_system_return.S | 183 la $10,_tx_thread_smp_protection # Build address of protection structure 195 sw $11, 8($10) # Set protection VPE to invalid 200 sw $0, ($10) # Release protection
|
| /ThreadX-v6.3.0/ports_smp/cortex_a7_smp/gnu/src/ |
| D | tx_thread_smp_unprotect.s | 97 LDR r2,=_tx_thread_smp_protection @ Build address of protection structure 100 …BNE _still_protected @ If this is not the owning core, protection is in for… 102 LDR r3, [r2, #12] @ Pickup the protection count 103 CMP r3, #0 @ Check to see if the protection is still active 104 …BEQ _still_protected @ If the protection count is zero, protection has alre… 106 SUB r3, r3, #1 @ Decrement the protection count 108 CMP r3, #0 @ Check to see if the protection is still active 109 …BNE _still_protected @ If the protection count is non-zero, protection is s… 113 BNE _still_protected @ Yes, skip the protection release 118 BNE _still_protected @ Yes, skip the protection release [all …]
|
| D | tx_thread_smp_protect.S | 113 LDR r2, =_tx_thread_smp_protection @ Build address to protection structure 116 BNE _protection_not_owned @ No, the protection is not already owned 136 LDREX r3, [r2, #0] @ Pickup the protection flag 138 BNE _start_waiting @ No, protection not available 156 STREX r4, r3, [r2, #0] @ Attempt to get the protection 163 DMB @ Ensure write to protection finishes 186 LDR r3, [r2, #0] @ Pickup the protection flag 188 BNE _start_waiting @ No, protection not available 267 BEQ _got_lock_after_waiting @ Yes, the protection is already owned. This means 268 @ an ISR preempted us and got protection [all …]
|
| /ThreadX-v6.3.0/ports_smp/cortex_a9_smp/gnu/src/ |
| D | tx_thread_smp_unprotect.S | 97 LDR r2,=_tx_thread_smp_protection @ Build address of protection structure 100 …BNE _still_protected @ If this is not the owning core, protection is in for… 102 LDR r3, [r2, #12] @ Pickup the protection count 103 CMP r3, #0 @ Check to see if the protection is still active 104 …BEQ _still_protected @ If the protection count is zero, protection has alre… 106 SUB r3, r3, #1 @ Decrement the protection count 108 CMP r3, #0 @ Check to see if the protection is still active 109 …BNE _still_protected @ If the protection count is non-zero, protection is s… 113 BNE _still_protected @ Yes, skip the protection release 118 BNE _still_protected @ Yes, skip the protection release [all …]
|
| D | tx_thread_smp_protect.S | 113 LDR r2, =_tx_thread_smp_protection @ Build address to protection structure 116 BNE _protection_not_owned @ No, the protection is not already owned 136 LDREX r3, [r2, #0] @ Pickup the protection flag 138 BNE _start_waiting @ No, protection not available 156 STREX r4, r3, [r2, #0] @ Attempt to get the protection 163 DMB @ Ensure write to protection finishes 186 LDR r3, [r2, #0] @ Pickup the protection flag 188 BNE _start_waiting @ No, protection not available 267 BEQ _got_lock_after_waiting @ Yes, the protection is already owned. This means 268 @ an ISR preempted us and got protection [all …]
|
| /ThreadX-v6.3.0/ports_smp/cortex_a5_smp/gnu/src/ |
| D | tx_thread_smp_unprotect.S | 97 LDR r2,=_tx_thread_smp_protection @ Build address of protection structure 100 …BNE _still_protected @ If this is not the owning core, protection is in for… 102 LDR r3, [r2, #12] @ Pickup the protection count 103 CMP r3, #0 @ Check to see if the protection is still active 104 …BEQ _still_protected @ If the protection count is zero, protection has alre… 106 SUB r3, r3, #1 @ Decrement the protection count 108 CMP r3, #0 @ Check to see if the protection is still active 109 …BNE _still_protected @ If the protection count is non-zero, protection is s… 113 BNE _still_protected @ Yes, skip the protection release 118 BNE _still_protected @ Yes, skip the protection release [all …]
|
| D | tx_thread_smp_protect.S | 111 LDR r2, =_tx_thread_smp_protection @ Build address to protection structure 114 BNE _protection_not_owned @ No, the protection is not already owned 134 LDREX r3, [r2, #0] @ Pickup the protection flag 136 BNE _start_waiting @ No, protection not available 154 STREX r4, r3, [r2, #0] @ Attempt to get the protection 161 DMB @ Ensure write to protection finishes 184 LDR r3, [r2, #0] @ Pickup the protection flag 186 BNE _start_waiting @ No, protection not available 265 BEQ _got_lock_after_waiting @ Yes, the protection is already owned. This means 266 @ an ISR preempted us and got protection [all …]
|
| /ThreadX-v6.3.0/ports_smp/cortex_a9_smp/ac5/src/ |
| D | tx_thread_smp_unprotect.s | 95 LDR r2,=_tx_thread_smp_protection ; Build address of protection structure 98 …BNE _still_protected ; If this is not the owning core, protection is in for… 100 LDR r3, [r2, #12] ; Pickup the protection count 101 CMP r3, #0 ; Check to see if the protection is still active 102 …BEQ _still_protected ; If the protection count is zero, protection has alre… 104 SUB r3, r3, #1 ; Decrement the protection count 106 CMP r3, #0 ; Check to see if the protection is still active 107 …BNE _still_protected ; If the protection count is non-zero, protection is s… 111 BNE _still_protected ; Yes, skip the protection release 116 BNE _still_protected ; Yes, skip the protection release [all …]
|
| D | tx_thread_smp_protect.s | 111 LDR r2, =_tx_thread_smp_protection ; Build address to protection structure 114 BNE _protection_not_owned ; No, the protection is not already owned 134 LDREX r3, [r2, #0] ; Pickup the protection flag 136 BNE _start_waiting ; No, protection not available 154 STREX r4, r3, [r2, #0] ; Attempt to get the protection 161 DMB ; Ensure write to protection finishes 184 LDR r3, [r2, #0] ; Pickup the protection flag 186 BNE _start_waiting ; No, protection not available 265 BEQ _got_lock_after_waiting ; Yes, the protection is already owned. This means 266 ; an ISR preempted us and got protection [all …]
|
| /ThreadX-v6.3.0/ports_smp/cortex_a7_smp/ac5/src/ |
| D | tx_thread_smp_unprotect.s | 95 LDR r2,=_tx_thread_smp_protection ; Build address of protection structure 98 …BNE _still_protected ; If this is not the owning core, protection is in for… 100 LDR r3, [r2, #12] ; Pickup the protection count 101 CMP r3, #0 ; Check to see if the protection is still active 102 …BEQ _still_protected ; If the protection count is zero, protection has alre… 104 SUB r3, r3, #1 ; Decrement the protection count 106 CMP r3, #0 ; Check to see if the protection is still active 107 …BNE _still_protected ; If the protection count is non-zero, protection is s… 111 BNE _still_protected ; Yes, skip the protection release 116 BNE _still_protected ; Yes, skip the protection release [all …]
|
| D | tx_thread_smp_protect.s | 109 LDR r2, =_tx_thread_smp_protection ; Build address to protection structure 112 BNE _protection_not_owned ; No, the protection is not already owned 132 LDREX r3, [r2, #0] ; Pickup the protection flag 134 BNE _start_waiting ; No, protection not available 152 STREX r4, r3, [r2, #0] ; Attempt to get the protection 159 DMB ; Ensure write to protection finishes 182 LDR r3, [r2, #0] ; Pickup the protection flag 184 BNE _start_waiting ; No, protection not available 263 BEQ _got_lock_after_waiting ; Yes, the protection is already owned. This means 264 ; an ISR preempted us and got protection [all …]
|
| /ThreadX-v6.3.0/ports_smp/cortex_a5_smp/ac5/src/ |
| D | tx_thread_smp_unprotect.s | 95 LDR r2,=_tx_thread_smp_protection ; Build address of protection structure 98 …BNE _still_protected ; If this is not the owning core, protection is in for… 100 LDR r3, [r2, #12] ; Pickup the protection count 101 CMP r3, #0 ; Check to see if the protection is still active 102 …BEQ _still_protected ; If the protection count is zero, protection has alre… 104 SUB r3, r3, #1 ; Decrement the protection count 106 CMP r3, #0 ; Check to see if the protection is still active 107 …BNE _still_protected ; If the protection count is non-zero, protection is s… 111 BNE _still_protected ; Yes, skip the protection release 116 BNE _still_protected ; Yes, skip the protection release [all …]
|
| D | tx_thread_smp_protect.s | 109 LDR r2, =_tx_thread_smp_protection ; Build address to protection structure 112 BNE _protection_not_owned ; No, the protection is not already owned 132 LDREX r3, [r2, #0] ; Pickup the protection flag 134 BNE _start_waiting ; No, protection not available 152 STREX r4, r3, [r2, #0] ; Attempt to get the protection 159 DMB ; Ensure write to protection finishes 182 LDR r3, [r2, #0] ; Pickup the protection flag 184 BNE _start_waiting ; No, protection not available 263 BEQ _got_lock_after_waiting ; Yes, the protection is already owned. This means 264 ; an ISR preempted us and got protection [all …]
|
| /ThreadX-v6.3.0/ports_smp/cortex_a5x_smp/green/src/ |
| D | tx_thread_smp_unprotect.a64 | 51 /* This function releases previously obtained protection. The supplied */ 83 LDR x1,=_tx_thread_smp_protection // Build address of protection structure 88 …B.NE _still_protected // If this is not the owning core, protection is in fo… 90 LDR w2, [x1, #8] // Pickup the protection count 91 CMP w2, #0 // Check to see if the protection is still active 92 …B.EQ _still_protected // If the protection count is zero, protection has alr… 94 SUB w2, w2, #1 // Decrement the protection count 96 CMP w2, #0 // Check to see if the protection is still active 97 …B.NE _still_protected // If the protection count is non-zero, protection is … 101 B.NE _still_protected // Yes, skip the protection release [all …]
|
| D | tx_thread_smp_protect.a64 | 51 /* This function gets protection for running inside the ThreadX */ 90 LDR x1, =_tx_thread_smp_protection // Build address to protection structure 93 B.EQ _owned // Yes, the protection is already owned 95 LDAXR w4, [x1, #0] // Pickup the protection flag 96 CBZ w4, _get_protection // Yes, get the protection 102 B _tx_thread_smp_protect // On waking, restart the protection attempt 106 STXR w5, w4, [x1] // Attempt to get the protection 109 B _tx_thread_smp_protect // Restart the protection attempt
|
| /ThreadX-v6.3.0/ports_smp/mips32_interaptiv_smp/green/src/ |
| D | tx_thread_smp_protect.mip | 41 /* This function gets protection for running inside the ThreadX */ 75 la $10, _tx_thread_smp_protection # Build address to protection structure 76 lw $9, ($10) # Pickup the protection 77 … bne $9, $0, _already_owned # If non-zero, then the protection is already in force 79 ll $11, ($10) # Pickup the protection in force flag 80 bne $11, $0, _get_retry # Is the protection still available? 81 li $11, 1 # Build protection in force flag 83 beq $11, $0, _get_retry # If successful, we got the protection! 104 b _tx_thread_smp_protect # Try to get the protection again 109 beq $9, $25, _have_the_protection # If equal, we already have the protection [all …]
|
| D | tx_thread_smp_unprotect.mip | 41 /* This function releases previously obtained protection. The supplied */ 76 la $10, _tx_thread_smp_protection # Build address of protection structure 78 …bne $9, $25, _still_protected # Not the same VPE, protection is in force somewhere e… 79 lw $12, 12($10) # Pickup protection count 80 beq $12, $0, _still_protected # If zero, protection is not in force anymore 82 sw $12, 12($10) # Store back the protection count 83 bne $12, $0, _still_protected # If non-zero, nested protection condition 87 …bne $12, $0, _still_protected # Don't release protection if preempt disable flag is … 96 sw $0, ($10) # Clear protection
|
| D | tx_timer_interrupt.mip | 57 /* _tx_thread_smp_protect Get protection */ 58 /* _tx_thread_smp_unprotect Release protection */ 91 /* Get protection before the timer variables are updated. */ 94 jal _tx_thread_smp_protect # Get VPE protection 206 /* Release VPE protection. */ 210 jal _tx_thread_smp_unprotect # Release protection
|
| /ThreadX-v6.3.0/ports_smp/arc_hs_smp/metaware/src/ |
| D | tx_thread_smp_unprotect.s | 83 mov r4, _tx_thread_smp_protection ; Build address of the protection structure 85 …brne r1, r5, _still_protected ; If not the owning core, protection is in for… 87 breq r6, 0, _still_protected ; If zero, protection is still active 90 brne r6, 0, _still_protected ; If non-zero, protection is still active
|
| D | tx_thread_smp_protect.s | 83 mov r2, 1 ; Build protection flag 85 mov r4, _tx_thread_smp_protection ; Build address of the protection structure 87 …breq r1, r5, _owned ; Check if the core already owns the protection
|
| /ThreadX-v6.3.0/ports_module/cortex_a7/ac5/example_build/ |
| D | txm_module_preamble.s | 33 … ; Bit 0: 0 -> Privileged mode execution (no MMU protection) 34 … ; 1 -> User mode execution (MMU protection)
|
| /ThreadX-v6.3.0/ports_module/cortex_r4/iar/example_build/ |
| D | txm_module_preamble.s | 36 … ; Bit 0: 0 -> Privileged mode execution (no MPU protection) 37 … ; 1 -> User mode execution (MPU protection)
|
| /ThreadX-v6.3.0/ports_module/cortex_a7/iar/example_build/ |
| D | txm_module_preamble.s | 38 … ; Bit 1: 0 -> No MPU protection 39 … ; 1 -> MPU protection (must have user mode selected - bit 0 set)
|