Home
last modified time | relevance | path

Searched refs:core (Results 1 – 25 of 169) sorted by relevance

1234567

/ThreadX-v6.4.1/utility/execution_profile_kit/smp_version/
Dtx_execution_profile.c143 UINT core; in _tx_execution_thread_enter() local
150 core = TX_SMP_CORE_ID; in _tx_execution_thread_enter()
153 thread_ptr = _tx_thread_current_ptr[core]; in _tx_execution_thread_enter()
160 last_start_time = _tx_execution_idle_time_last_start[core]; in _tx_execution_thread_enter()
181 total_time = _tx_execution_idle_time_total[core]; in _tx_execution_thread_enter()
195 _tx_execution_idle_time_total[core] = new_total_time; in _tx_execution_thread_enter()
198 _tx_execution_idle_time_last_start[core] = 0; in _tx_execution_thread_enter()
249 UINT core; in _tx_execution_thread_exit() local
253 core = TX_SMP_CORE_ID; in _tx_execution_thread_exit()
256 thread_ptr = _tx_thread_current_ptr[core]; in _tx_execution_thread_exit()
[all …]
/ThreadX-v6.4.1/ports_smp/linux/gnu/src/
Dtx_thread_smp_protect.c81 UINT core; in _tx_thread_smp_protect() local
102 core = _tx_thread_smp_core_get(); in _tx_thread_smp_protect()
105 current_thread = _tx_thread_current_ptr[core]; in _tx_thread_smp_protect()
143 if (_tx_timer_time_slice[core]) in _tx_thread_smp_protect()
146 current_thread -> tx_thread_time_slice = _tx_timer_time_slice[core]; in _tx_thread_smp_protect()
147 _tx_timer_time_slice[core] = 0; in _tx_thread_smp_protect()
151 _tx_thread_current_ptr[core] = TX_NULL; in _tx_thread_smp_protect()
154 … _tx_linux_virtual_cores[core].tx_thread_smp_core_mapping_thread = TX_NULL; in _tx_thread_smp_protect()
155 … _tx_linux_virtual_cores[core].tx_thread_smp_core_mapping_linux_thread_id = 0; in _tx_thread_smp_protect()
200 if (_tx_thread_smp_protection.tx_thread_smp_protect_core == core) in _tx_thread_smp_protect()
[all …]
Dtx_thread_system_return.c91 UINT core; in _tx_thread_system_return() local
98 core = _tx_thread_smp_core_get(); in _tx_thread_system_return()
109 temp_thread_ptr = _tx_thread_current_ptr[core]; in _tx_thread_system_return()
125 if (_tx_timer_time_slice[core]) in _tx_thread_system_return()
129 temp_thread_ptr -> tx_thread_time_slice = _tx_timer_time_slice[core]; in _tx_thread_system_return()
130 _tx_timer_time_slice[core] = 0; in _tx_thread_system_return()
143 _tx_thread_current_ptr[core] = TX_NULL; in _tx_thread_system_return()
146 _tx_linux_virtual_cores[core].tx_thread_smp_core_mapping_thread = TX_NULL; in _tx_thread_system_return()
147 _tx_linux_virtual_cores[core].tx_thread_smp_core_mapping_linux_thread_id = 0; in _tx_thread_system_return()
209 core = _tx_thread_smp_core_get(); in _tx_thread_system_return()
[all …]
Dtx_thread_schedule.c84 UINT core; in _tx_thread_schedule() local
109 for (core = 0; core < TX_THREAD_SMP_MAX_CORES; core++) in _tx_thread_schedule()
113 current_thread = _tx_thread_current_ptr[core]; in _tx_thread_schedule()
140 if (_tx_timer_time_slice[core]) in _tx_thread_schedule()
143 current_thread -> tx_thread_time_slice = _tx_timer_time_slice[core]; in _tx_thread_schedule()
144 _tx_timer_time_slice[core] = 0; in _tx_thread_schedule()
149 _tx_thread_current_ptr[core] = TX_NULL; in _tx_thread_schedule()
152 _tx_linux_virtual_cores[core].tx_thread_smp_core_mapping_thread = TX_NULL; in _tx_thread_schedule()
153 _tx_linux_virtual_cores[core].tx_thread_smp_core_mapping_linux_thread_id = 0; in _tx_thread_schedule()
163 if (_tx_thread_current_ptr[core] == TX_NULL) in _tx_thread_schedule()
[all …]
Dtx_thread_smp_core_get.c76 UINT core; in _tx_thread_smp_core_get() local
85 core = 0; in _tx_thread_smp_core_get()
99 core = i; in _tx_thread_smp_core_get()
110 return(core); in _tx_thread_smp_core_get()
Dtx_thread_smp_current_state_get.c76 UINT core; in _tx_thread_smp_current_state_get() local
86 core = 0; in _tx_thread_smp_current_state_get()
100 core = i; in _tx_thread_smp_current_state_get()
108 current_state = _tx_thread_system_state[core]; in _tx_thread_smp_current_state_get()
Dtx_thread_smp_current_thread_get.c75 UINT core; in _tx_thread_smp_current_thread_get() local
85 core = 0; in _tx_thread_smp_current_thread_get()
99 core = i; in _tx_thread_smp_current_thread_get()
107 current_thread = _tx_thread_current_ptr[core]; in _tx_thread_smp_current_thread_get()
Dtx_thread_interrupt_control.c100 UINT core; in _tx_thread_interrupt_control() local
127 core = _tx_thread_smp_core_get(); in _tx_thread_interrupt_control()
130 thread_ptr = _tx_thread_current_ptr[core]; in _tx_thread_interrupt_control()
160 if (_tx_thread_system_state[core]) in _tx_thread_interrupt_control()
Dtx_thread_smp_unprotect.c75 UINT core; in _tx_thread_smp_unprotect() local
85 core = _tx_thread_smp_core_get(); in _tx_thread_smp_unprotect()
88 if (_tx_thread_smp_protection.tx_thread_smp_protect_core == core) in _tx_thread_smp_unprotect()
/ThreadX-v6.4.1/ports_smp/arc_hs_smp/metaware/src/
Dtx_thread_smp_initialize_wait.s82 lr r0, [IDENTITY] ; Pickup core ID
83 xbfu r0, r0, 8, 8 ; Shift down and isolate core ID
90 st sp, [r1] ; Save this core's system address
111 st r3, [r1] ; Clear this core's state value
116 ld r0, [gp, _tx_thread_system_state@sda] ; Pickup core 0's state value
Dtx_thread_system_return.s83 lr r1, [IDENTITY] ; Pickup core ID
84 xbfu r1, r1, 8, 8 ; Shift down and isolate core ID
88 asl r4, r1, 2 ; Build index into core arrays
115 ; _tx_thread_current_ptr[core] -> tx_thread_stack_ptr = sp;
116 ; sp = _tx_thread_system_stack_ptr[core];
129 mov r14, r1 ; Save core executing
130 mov r15, r7 ; Save current thread pointer for core
138 mov r1, r14 ; Recover current core executing
139 mov r7, r15 ; Recover current thread pointer for core
141 asl r4, r1, 2 ; Build index into core arrays
[all …]
Dtx_thread_schedule.s124 lr r1, [IDENTITY] ; Pickup core ID
125 xbfu r1, r1, 8, 8 ; Shift down and isolate core ID
129 asl r4, r1, 2 ; Build index into core arrays
154 ; while(_tx_thread_execute_ptr[core] == TX_NULL);
175 ; _tx_thread_current_ptr[core] = _tx_thread_execute_ptr[core];
182 ; _tx_thread_current_ptr[core] -> tx_thread_run_count++;
190 ; _tx_timer_time_slice[core] = _tx_thread_current_ptr -> tx_thread_time_slice;
192 mov r6, _tx_timer_time_slice ; Build address of time-slice for this core
208 ; sp = _tx_thread_execute_ptr[core] -> tx_thread_stack_ptr;
/ThreadX-v6.4.1/ports_smp/cortex_a5x_smp/green/src/
Dtx_thread_smp_core_preempt.a6449 /* This function preempts the specified core in situations where the */
50 /* thread corresponding to this core is no longer ready or when the */
51 /* core must be used for a higher-priority thread. If the specified is */
52 /* the current core, this processing is skipped since the will give up */
57 /* core The core to preempt */
86 LSL x2, x2, x0 // Shift by the core ID
87 STR x2, [x1, #0] // Issue inter-core interrupt
Dtx_thread_smp_initialize_wait.a6487 MRS x2, MPIDR_EL1 // Pickup the core ID
88 UBFX x2, x2, #0, #8 // Isolate and right justify core ID
90 …/* Make sure the system state for this core is TX_INITIALIZE_IN_PROGRESS before we check the relea…
96 LDR w0, [x3, x2, LSL #2] // Pickup the current system state for this core
100 /* Save the system stack pointer for this core. */
117 /* Core 0 has released this core. */
119 /* Clear this core's system state variable. */
122 … STR w0, [x3, x2, LSL #2] // Set the current system state for this core to zero
124 /* Now wait for core 0 to finish it's initialization. */
127 LDR w0, [x3, #0] // Pickup the current system state for core 0
[all …]
/ThreadX-v6.4.1/common_smp/src/
Dtx_thread_smp_utilities.c645 UINT core; in _tx_thread_smp_remap_solution_find() local
668 core = schedule_thread -> tx_thread_smp_core_mapped; in _tx_thread_smp_remap_solution_find()
669 if ((thread_possible_cores & (((ULONG) 1) << core)) != ((ULONG) 0)) in _tx_thread_smp_remap_solution_find()
673 thread_remap_list[core] = schedule_thread; in _tx_thread_smp_remap_solution_find()
674 core_queue[queue_last] = core; in _tx_thread_smp_remap_solution_find()
680 thread_possible_cores = thread_possible_cores & ~(((ULONG) 1) << core); in _tx_thread_smp_remap_solution_find()
689 TX_LOWEST_SET_BIT_CALCULATE(test_cores, core) in _tx_thread_smp_remap_solution_find()
692 thread_possible_cores = thread_possible_cores & ~(((ULONG) 1) << core); in _tx_thread_smp_remap_solution_find()
695 thread_remap_list[core] = schedule_thread; in _tx_thread_smp_remap_solution_find()
696 core_queue[queue_last] = core; in _tx_thread_smp_remap_solution_find()
[all …]
/ThreadX-v6.4.1/ports_smp/cortex_a9_smp/gnu/src/
Dtx_thread_context_restore.S135 @ if (--_tx_thread_system_state[core])
160 @ else if (((_tx_thread_current_ptr[core]) && (_tx_thread_current_ptr[core] == _tx_thread_execut…
165 ADD r1, r1, r12 @ Build index to this core's current thread ptr
182 ADD r3, r3, r12 @ Build index to this core's execute thread ptr
226 @ /* We don't have the lock. This core should be in the list. Remove it. */
229 MOV r0, r10 @ Move the core ID to r0 for the macro
230 _tx_thread_smp_protect_wait_list_remove @ Call macro to remove core from the list
243 @ _tx_thread_smp_protect_wait_counts[core]--;
246 LDR r2, [r1, r10, LSL #2] @ Load waiting value for this core
257 STR r2, [r1, #8] @ Mark the protected core as invalid
[all …]
/ThreadX-v6.4.1/ports_smp/cortex_a5_smp/ac5/src/
Dtx_thread_context_restore.s133 ; if (--_tx_thread_system_state[core])
158 ; else if (((_tx_thread_current_ptr[core]) && (_tx_thread_current_ptr[core] == _tx_thread_execut…
163 ADD r1, r1, r12 ; Build index to this core's current thread ptr
180 ADD r3, r3, r12 ; Build index to this core's execute thread ptr
224 ; /* We don't have the lock. This core should be in the list. Remove it. */
227 MOV r0, r10 ; Move the core ID to r0 for the macro
228 macro_call0 _tx_thread_smp_protect_wait_list_remove ; Call macro to remove core from the list
241 ; _tx_thread_smp_protect_wait_counts[core]--;
244 LDR r2, [r1, r10, LSL #2] ; Load waiting value for this core
255 STR r2, [r1, #8] ; Mark the protected core as invalid
[all …]
/ThreadX-v6.4.1/ports_smp/cortex_a9_smp/ac5/src/
Dtx_thread_context_restore.s133 ; if (--_tx_thread_system_state[core])
158 ; else if (((_tx_thread_current_ptr[core]) && (_tx_thread_current_ptr[core] == _tx_thread_execut…
163 ADD r1, r1, r12 ; Build index to this core's current thread ptr
180 ADD r3, r3, r12 ; Build index to this core's execute thread ptr
224 ; /* We don't have the lock. This core should be in the list. Remove it. */
227 MOV r0, r10 ; Move the core ID to r0 for the macro
228 macro_call0 _tx_thread_smp_protect_wait_list_remove ; Call macro to remove core from the list
241 ; _tx_thread_smp_protect_wait_counts[core]--;
244 LDR r2, [r1, r10, LSL #2] ; Load waiting value for this core
255 STR r2, [r1, #8] ; Mark the protected core as invalid
[all …]
/ThreadX-v6.4.1/ports_smp/cortex_a5_smp/gnu/src/
Dtx_thread_context_restore.S135 @ if (--_tx_thread_system_state[core])
160 @ else if (((_tx_thread_current_ptr[core]) && (_tx_thread_current_ptr[core] == _tx_thread_execut…
165 ADD r1, r1, r12 @ Build index to this core's current thread ptr
182 ADD r3, r3, r12 @ Build index to this core's execute thread ptr
226 @ /* We don't have the lock. This core should be in the list. Remove it. */
229 MOV r0, r10 @ Move the core ID to r0 for the macro
230 _tx_thread_smp_protect_wait_list_remove @ Call macro to remove core from the list
243 @ _tx_thread_smp_protect_wait_counts[core]--;
246 LDR r2, [r1, r10, LSL #2] @ Load waiting value for this core
257 STR r2, [r1, #8] @ Mark the protected core as invalid
[all …]
/ThreadX-v6.4.1/ports_arch/ARMv8-A/
Dupdate.ps1122 ForEach ($core in $cores) { variable
124 "tx" { $core_directory = "..\..\ports\" + $core }
125 "tx_smp" { $core_directory = "..\..\ports_smp\" + $core + "_smp" }
126 "txm" { $core_directory = "..\..\ports_module\" + $core }
127 "txm_smp" { $core_directory = "..\..\ports_module_smp\" + $core + "_smp" }
162 $core_short = $core -Replace "cortex_",""
/ThreadX-v6.4.1/ports_arch/ARMv7-A/
Dupdate.ps1117 ForEach ($core in $cores) { variable
119 "tx" { $core_directory = "..\..\ports\" + $core }
120 "tx_smp" { $core_directory = "..\..\ports_smp\" + $core + "_smp" }
121 "txm" { $core_directory = "..\..\ports_module\" + $core }
122 "txm_smp" { $core_directory = "..\..\ports_module_smp\" + $core + "_smp" }
157 $core_short = $core -Replace "cortex_",""
/ThreadX-v6.4.1/ports_smp/cortex_a7_smp/ac5/src/
Dtx_thread_context_restore.s133 ; if (--_tx_thread_system_state[core])
158 ; else if (((_tx_thread_current_ptr[core]) && (_tx_thread_current_ptr[core] == _tx_thread_execut…
163 ADD r1, r1, r12 ; Build index to this core's current thread ptr
180 ADD r3, r3, r12 ; Build index to this core's execute thread ptr
223 ; /* We don't have the lock. This core should be in the list. Remove it. */
226 macro_call0 _tx_thread_smp_protect_wait_list_remove ; Call macro to remove core from the list
239 ; _tx_thread_smp_protect_wait_counts[core]--;
242 LDR r2, [r1, r10, LSL #2] ; Load waiting value for this core
253 STR r2, [r1, #8] ; Mark the protected core as invalid
323 ADD r3, r3, r12 ; Build index to core's time slice
[all …]
/ThreadX-v6.4.1/ports_smp/cortex_a7_smp/gnu/src/
Dtx_thread_context_restore.S138 @ if (--_tx_thread_system_state[core])
163 @ else if (((_tx_thread_current_ptr[core]) && (_tx_thread_current_ptr[core] == _tx_thread_execut…
168 ADD r1, r1, r12 @ Build index to this core's current thread ptr
185 ADD r3, r3, r12 @ Build index to this core's execute thread ptr
228 @ /* We don't have the lock. This core should be in the list. Remove it. */
231 _tx_thread_smp_protect_wait_list_remove @ Call macro to remove core from the list
244 @ _tx_thread_smp_protect_wait_counts[core]--;
247 LDR r2, [r1, r10, LSL #2] @ Load waiting value for this core
258 STR r2, [r1, #8] @ Mark the protected core as invalid
328 ADD r3, r3, r12 @ Build index to core's time slice
[all …]
/ThreadX-v6.4.1/ports_smp/mips32_interaptiv_smp/green/src/
Dtx_thread_smp_core_preempt.mip40 /* This function preempts the specified core in situations where the */
41 /* thread corresponding to this core is no longer ready or when the */
42 /* core must be used for a higher-priority thread. If the specified is */
43 /* the current core, this processing is skipped since the will give up */
48 /* core The core to preempt */
/ThreadX-v6.4.1/ports_smp/mips32_interaptiv_smp/green/example_build/
Ddemo_threadx_ram_interAptiv_3c2v4t.ghsmc3 core {
5 # Boot-MIPS only uses the first 2 TCs of each core.
26 # disable any-core breakpoints, which aren't supported

1234567