Home
last modified time | relevance | path

Searched refs:cpu (Results 1 – 25 of 43) sorted by relevance

12

/hyp/platform/trbe/src/
A Dtrbe.c22 trbe_save_context_percpu(cpu_index_t cpu) in trbe_save_context_percpu() argument
24 CPULOCAL_BY_INDEX(trbe_contexts, cpu).TRBLIMITR_EL1 = in trbe_save_context_percpu()
27 CPULOCAL_BY_INDEX(trbe_contexts, cpu).TRBPTR_EL1 = in trbe_save_context_percpu()
30 CPULOCAL_BY_INDEX(trbe_contexts, cpu).TRBBASER_EL1 = in trbe_save_context_percpu()
33 CPULOCAL_BY_INDEX(trbe_contexts, cpu).TRBSR_EL1 = in trbe_save_context_percpu()
36 CPULOCAL_BY_INDEX(trbe_contexts, cpu).TRBMAR_EL1 = in trbe_save_context_percpu()
39 CPULOCAL_BY_INDEX(trbe_contexts, cpu).TRBTRG_EL1 = in trbe_save_context_percpu()
44 trbe_restore_context_percpu(cpu_index_t cpu) in trbe_restore_context_percpu() argument
51 CPULOCAL_BY_INDEX(trbe_contexts, cpu).TRBPTR_EL1, in trbe_restore_context_percpu()
62 CPULOCAL_BY_INDEX(trbe_contexts, cpu).TRBMAR_EL1, in trbe_restore_context_percpu()
[all …]
/hyp/platform/etm/src/
A Detm.c255 (void)cpu; in etm_unlock_percpu()
261 etm_lock_percpu(cpu_index_t cpu) in etm_lock_percpu() argument
335 etm_cprgctlr[cpu] = atomic_load_relaxed(&mapped_etms[cpu]->trcprgctlr); in etm_save_context_percpu()
348 etm_claim_tag[cpu] = in etm_save_context_percpu()
414 etm_claim_tag[cpu]); in etm_restore_context_percpu()
429 etm_unlock_percpu(cpu); in etm_handle_power_cpu_online()
430 etm_os_unlock_percpu(cpu); in etm_handle_power_cpu_online()
447 etm_unlock_percpu(cpu); in etm_handle_power_cpu_suspend()
448 etm_os_lock_percpu(cpu); in etm_handle_power_cpu_suspend()
450 etm_save_context_percpu(cpu); in etm_handle_power_cpu_suspend()
[all …]
/hyp/core/power/src/
A Dpower.c55 for (cpu_index_t cpu = 0U; cpu < PLATFORM_MAX_CORES; cpu++) { in power_handle_boot_cold_init() local
70 (cpu == boot_cpu) ? 1U : 0U; in power_handle_boot_cold_init()
186 if (!platform_cpu_exists(cpu)) { in power_try_cpu_on()
199 ret = platform_cpu_on(cpu); in power_try_cpu_on()
235 power_vote_cpu_on(cpu_index_t cpu) in power_vote_cpu_on() argument
239 assert(cpulocal_index_valid(cpu)); in power_vote_cpu_on()
275 ipi_one(IPI_REASON_IDLE, cpu); in power_vote_cpu_off()
373 for (cpu_index_t cpu = 0U; cpu < PLATFORM_MAX_CORES; cpu++) { in power_handle_boot_hypervisor_handover() local
392 for (cpu_index_t cpu = 0U; cpulocal_index_valid(cpu); cpu++) { in power_handle_boot_hypervisor_start() local
393 if (cpu == boot_cpu) { in power_handle_boot_hypervisor_start()
[all …]
/hyp/platform/soc_qemu/src/
A Dplatform_psci.c65 platform_psci_deepest_cpu_state(cpu_index_t cpu) in platform_psci_deepest_cpu_state() argument
67 (void)cpu; in platform_psci_deepest_cpu_state()
75 platform_psci_deepest_cpu_level_stateid(cpu_index_t cpu) in platform_psci_deepest_cpu_level_stateid() argument
77 (void)cpu; in platform_psci_deepest_cpu_level_stateid()
86 cpu_index_t cpu, psci_mode_t psci_mode) in platform_psci_suspend_state_validation() argument
89 (void)cpu; in platform_psci_suspend_state_validation()
98 platform_psci_get_cluster_index(cpu_index_t cpu) in platform_psci_get_cluster_index() argument
100 (void)cpu; in platform_psci_get_cluster_index()
105 platform_psci_get_index_by_level(cpu_index_t cpu, uint32_t *start_idx, in platform_psci_get_index_by_level() argument
108 (void)cpu; in platform_psci_get_index_by_level()
A Dirq.c55 platform_irq_enable_percpu(irq_t irq, cpu_index_t cpu) in platform_irq_enable_percpu() argument
57 gicv3_irq_enable_percpu(irq, cpu); in platform_irq_enable_percpu()
61 platform_irq_disable_percpu(irq_t irq, cpu_index_t cpu) in platform_irq_disable_percpu() argument
63 gicv3_irq_disable_percpu(irq, cpu); in platform_irq_disable_percpu()
95 platform_irq_deactivate_percpu(irq_t irq, cpu_index_t cpu) in platform_irq_deactivate_percpu() argument
97 gicv3_irq_deactivate_percpu(irq, cpu); in platform_irq_deactivate_percpu()
101 platform_irq_set_mode_percpu(irq_t irq, irq_trigger_t trigger, cpu_index_t cpu) in platform_irq_set_mode_percpu() argument
103 return gicv3_irq_set_trigger_percpu(irq, trigger, cpu); in platform_irq_set_mode_percpu()
A Dcpu.c32 soc_qemu_handle_boot_cpu_cold_init(cpu_index_t cpu) in soc_qemu_handle_boot_cpu_cold_init() argument
34 CPULOCAL_BY_INDEX(cpu_started, cpu) = true; in soc_qemu_handle_boot_cpu_cold_init()
38 platform_cpu_exists(cpu_index_t cpu) in platform_cpu_exists() argument
40 assert(cpu < PLATFORM_MAX_CORES); in platform_cpu_exists()
42 return compiler_expected((util_bit(cpu) & PLATFORM_USABLE_CORES) != 0U); in platform_cpu_exists()
46 platform_cpu_on(cpu_index_t cpu) in platform_cpu_on() argument
48 MPIDR_EL1_t mpidr = platform_cpu_index_to_mpidr(cpu); in platform_cpu_on()
49 thread_t *thread = idle_thread_for(cpu); in platform_cpu_on()
51 CPULOCAL_BY_INDEX(cpu_started, cpu) in platform_cpu_on()
/hyp/vm/vcpu_power/src/
A Dvcpu_power.c26 cpu_index_t cpu = scheduler_get_affinity(vcpu); in vcpu_power_handle_vcpu_poweron() local
27 bool can_vote = cpulocal_index_valid(cpu); in vcpu_power_handle_vcpu_poweron()
37 ret = power_vote_cpu_on(cpu); in vcpu_power_handle_vcpu_poweron()
51 cpu_index_t cpu = scheduler_get_affinity(vcpu); in vcpu_power_handle_vcpu_poweroff() local
52 bool can_vote = cpulocal_index_valid(cpu); in vcpu_power_handle_vcpu_poweroff()
60 power_vote_cpu_off(cpu); in vcpu_power_handle_vcpu_poweroff()
78 bool can_vote = cpulocal_index_valid(cpu); in vcpu_power_handle_vcpu_stopped()
86 power_vote_cpu_off(cpu); in vcpu_power_handle_vcpu_stopped()
97 cpu_index_t cpu = scheduler_get_affinity(vcpu); in vcpu_power_handle_vcpu_run_enabled() local
98 bool can_vote = cpulocal_index_valid(cpu); in vcpu_power_handle_vcpu_run_enabled()
[all …]
/hyp/core/task_queue/src/
A Dtask_queue.c23 task_queue_handle_boot_cpu_cold_init(cpu_index_t cpu) in task_queue_handle_boot_cpu_cold_init() argument
25 spinlock_init(&CPULOCAL_BY_INDEX(task_queue_lock, cpu)); in task_queue_handle_boot_cpu_cold_init()
30 task_queue_entry_bf_set_cpu(&head->bf, cpu); in task_queue_handle_boot_cpu_cold_init()
53 cpu_index_t cpu = cpulocal_get_index(); in task_queue_schedule() local
59 task_queue_entry_bf_set_cpu(&entry->bf, cpu); in task_queue_schedule()
68 ipi_one_relaxed(IPI_REASON_TASK_QUEUE, cpu); in task_queue_schedule()
86 cpu_index_t cpu = task_queue_entry_bf_get_cpu(&entry->bf); in task_queue_cancel() local
88 if (cpu >= PLATFORM_MAX_CORES) { in task_queue_cancel()
93 spinlock_acquire(&CPULOCAL_BY_INDEX(task_queue_lock, cpu)); in task_queue_cancel()
101 spinlock_release(&CPULOCAL_BY_INDEX(task_queue_lock, cpu)); in task_queue_cancel()
[all …]
/hyp/core/scheduler_trivial/src/
A Dscheduler_trivial.c45 thread->scheduler_affinity = cpu; in scheduler_trivial_handle_object_create_thread()
55 cpu_index_t cpu = thread->scheduler_affinity; in scheduler_trivial_handle_object_activate_thread() local
59 &CPULOCAL_BY_INDEX(active_thread, cpu); in scheduler_trivial_handle_object_activate_thread()
81 assert(cpulocal_index_valid(cpu)); in scheduler_trivial_handle_object_deactivate_thread()
85 &CPULOCAL_BY_INDEX(active_thread, cpu); in scheduler_trivial_handle_object_deactivate_thread()
170 cpu_index_t cpu = cpulocal_get_index(); in scheduler_trigger() local
242 cpu_index_t cpu = cpulocal_get_index(); in scheduler_unblock() local
243 if (cpu != thread->scheduler_affinity) { in scheduler_unblock()
282 if (!cpulocal_index_valid(cpu)) { in scheduler_is_running()
296 assert(thread == idle_thread_for(cpu)); in scheduler_is_running()
[all …]
/hyp/vm/psci/include/
A Dpsci_common.h34 psci_vpm_active_vcpus_get(cpu_index_t cpu, thread_t *vcpu)
38 psci_vpm_active_vcpus_put(cpu_index_t cpu, thread_t *vcpu)
42 psci_vpm_active_vcpus_is_zero(cpu_index_t cpu);
46 cpu_index_t cpu);
49 vcpus_state_set(vpm_group_suspend_state_t *vm_state, cpu_index_t cpu,
53 vcpus_state_clear(vpm_group_suspend_state_t *vm_state, cpu_index_t cpu);
/hyp/platform/etm/include/
A Detm.h6 etm_set_reg(cpu_index_t cpu, size_t offset, register_t val, size_t access_size);
9 etm_get_reg(cpu_index_t cpu, size_t offset, register_t *val,
13 etm_save_context_percpu(cpu_index_t cpu);
16 etm_restore_context_percpu(cpu_index_t cpu);
/hyp/platform/gicv3/include/
A Dgicv3.h26 gicv3_irq_enable_percpu(irq_t irq, cpu_index_t cpu);
38 gicv3_irq_disable_percpu(irq_t irq, cpu_index_t cpu);
47 gicv3_irq_set_trigger_percpu(irq_t irq, irq_trigger_t trigger, cpu_index_t cpu);
67 gicv3_irq_deactivate_percpu(irq_t irq, cpu_index_t cpu);
75 gicv3_ipi_one(ipi_reason_t ipi, cpu_index_t cpu);
126 gicv3_lpi_inv_by_id(cpu_index_t cpu, irq_t lpi);
135 gicv3_lpi_inv_all(cpu_index_t cpu);
143 gicv3_lpi_inv_pending(cpu_index_t cpu);
221 gicv3_vpe_sync_deschedule(cpu_index_t cpu, bool maybe_scheduled)
/hyp/core/rcu_bitmap/src/
A Drcu_bitmap.c72 ipi_one(IPI_REASON_RESCHEDULE, cpu); in rcu_bitmap_refresh_active()
73 active_cpus &= (uint32_t)(~util_bit(cpu)); in rcu_bitmap_refresh_active()
93 cpu_index_t cpu = cpulocal_get_index(); in rcu_enqueue() local
118 ipi_one_relaxed(IPI_REASON_RCU_NOTIFY, cpu); in rcu_enqueue()
128 cpu_index_t cpu = cpulocal_get_index(); in rcu_bitmap_activate_cpu() local
129 uint32_t cpu_bit = (uint32_t)util_bit(cpu); in rcu_bitmap_activate_cpu()
194 cpu_index_t cpu = cpulocal_get_index(); in rcu_bitmap_deactivate_cpu() local
340 for (cpu_index_t cpu = 0U; cpu < PLATFORM_MAX_CORES; cpu++) { in rcu_bitmap_quiesce() local
341 if (cpu == this_cpu) { in rcu_bitmap_quiesce()
347 ipi_one(IPI_REASON_RCU_NOTIFY, cpu); in rcu_bitmap_quiesce()
[all …]
/hyp/interfaces/platform/include/
A Dplatform_irq.h68 platform_irq_enable_percpu(irq_t irq, cpu_index_t cpu);
102 platform_irq_disable_percpu(irq_t irq, cpu_index_t cpu);
164 platform_irq_deactivate_percpu(irq_t irq, cpu_index_t cpu);
169 platform_irq_set_mode_percpu(irq_t irq, irq_trigger_t trigger, cpu_index_t cpu);
229 platform_irq_cpu_class(cpu_index_t cpu);
A Dplatform_psci.h11 cpu_index_t cpu, psci_mode_t psci_mode);
29 platform_psci_deepest_cpu_state(cpu_index_t cpu);
33 platform_psci_deepest_cpu_level_stateid(cpu_index_t cpu);
49 platform_psci_get_cluster_index(cpu_index_t cpu);
54 platform_psci_get_index_by_level(cpu_index_t cpu, uint32_t *start_idx,
112 platform_psci_deepest_cluster_level_stateid(cpu_index_t cpu);
/hyp/vm/psci/src/
A Dpsci_pm_list.c22 for (cpu_index_t cpu = 0U; cpu < PLATFORM_MAX_CORES; cpu++) { in psci_pm_list_init() local
23 list_init(&CPULOCAL_BY_INDEX(vcpu_pm_list, cpu)); in psci_pm_list_init()
24 spinlock_init(&CPULOCAL_BY_INDEX(vcpu_pm_list_lock, cpu)); in psci_pm_list_init()
/hyp/vm/vic_base/src/
A Dforward_private.c51 cpu_index_t cpu; in vic_bind_private_hwirq_helper() local
61 cpu = vcpu->scheduler_affinity; in vic_bind_private_hwirq_helper()
64 assert(cpulocal_index_valid(cpu)); in vic_bind_private_hwirq_helper()
74 cpu); in vic_bind_private_hwirq_helper()
117 cpu_index_t cpu = vcpu->scheduler_affinity; in vic_sync_private_hwirq_helper() local
120 assert(cpulocal_index_valid(cpu)); in vic_sync_private_hwirq_helper()
125 fp->virq, irq_info->irq, cpu); in vic_sync_private_hwirq_helper()
139 assert(cpulocal_index_valid(cpu)); in vic_disable_private_hwirq_helper()
171 fp->irq_info[i].cpu = i; in vic_bind_hwirq_forward_private()
283 cpu_index_t cpu = cpulocal_get_index(); in vic_handle_irq_received_forward_private() local
[all …]
/hyp/core/ipi/src/
A Dipi.c110 assert(cpulocal_index_valid(cpu)); in ipi_one_and_check_wakeup_needed()
113 &CPULOCAL_BY_INDEX(ipi_pending, cpu).bits, ipi_bit, in ipi_one_and_check_wakeup_needed()
126 ipi_one(ipi_reason_t ipi, cpu_index_t cpu) in ipi_one() argument
128 if (ipi_one_and_check_wakeup_needed(ipi, cpu)) { in ipi_one()
130 platform_ipi_one(ipi, cpu); in ipi_one()
132 platform_ipi_one(cpu); in ipi_one()
138 ipi_one_relaxed(ipi_reason_t ipi, cpu_index_t cpu) in ipi_one_relaxed() argument
140 (void)ipi_one_and_check_wakeup_needed(ipi, cpu); in ipi_one_relaxed()
144 ipi_one_idle(ipi_reason_t ipi, cpu_index_t cpu) in ipi_one_idle() argument
147 ipi_one_relaxed(ipi, cpu); in ipi_one_idle()
[all …]
/hyp/interfaces/ipi/include/
A Dipi.h63 ipi_one(ipi_reason_t ipi, cpu_index_t cpu);
69 ipi_one_relaxed(ipi_reason_t ipi, cpu_index_t cpu);
78 ipi_one_idle(ipi_reason_t ipi, cpu_index_t cpu);
/hyp/platform/ete/src/
A Dete.c94 ete_save_context_percpu(cpu_index_t cpu, bool may_poweroff) in ete_save_context_percpu() argument
100 ete_context_t *ctx = &CPULOCAL_BY_INDEX(ete_contexts, cpu); in ete_save_context_percpu()
113 CPULOCAL_BY_INDEX(ete_claim_tag, cpu) = in ete_save_context_percpu()
125 ete_restore_context_percpu(cpu_index_t cpu, bool was_poweroff) in ete_restore_context_percpu() argument
127 ete_context_t *ctx = &CPULOCAL_BY_INDEX(ete_contexts, cpu); in ete_restore_context_percpu()
139 CPULOCAL_BY_INDEX(ete_claim_tag, cpu), &vet_ordering); in ete_restore_context_percpu()
/hyp/platform/trbe/include/
A Dtrbe.h6 trbe_save_context_percpu(cpu_index_t cpu);
9 trbe_restore_context_percpu(cpu_index_t cpu);
/hyp/platform/ete/include/
A Dete.h6 ete_save_context_percpu(cpu_index_t cpu, bool may_poweroff);
9 ete_restore_context_percpu(cpu_index_t cpu, bool was_poweroff);
/hyp/interfaces/power/include/
A Dpower.h20 power_vote_cpu_on(cpu_index_t cpu);
28 power_vote_cpu_off(cpu_index_t cpu);
/hyp/core/boot/src/
A Dboot.c42 boot_cold_init(cpu_index_t cpu) LOCK_IMPL in boot_cold_init() argument
56 trigger_boot_cold_init_event(cpu); in boot_cold_init()
57 trigger_boot_cpu_cold_init_event(cpu); in boot_cold_init()
112 boot_secondary_init(cpu_index_t cpu) LOCK_IMPL in boot_secondary_init() argument
118 trigger_boot_cpu_cold_init_event(cpu); in boot_secondary_init()
122 (register_t)cpu); in boot_secondary_init()
/hyp/core/boot/include/
A Dboot_init.h14 boot_cold_init(cpu_index_t cpu);
18 boot_secondary_init(cpu_index_t cpu);

Completed in 78 milliseconds

12