Home
last modified time | relevance | path

Searched refs:apic (Results 1 – 25 of 66) sorted by relevance

123

/Linux-v4.19/arch/x86/kvm/
Dlapic.c80 struct kvm_lapic *apic = vcpu->arch.apic; in kvm_apic_pending_eoi() local
82 return apic_test_vector(vector, apic->regs + APIC_ISR) || in kvm_apic_pending_eoi()
83 apic_test_vector(vector, apic->regs + APIC_IRR); in kvm_apic_pending_eoi()
104 static inline int apic_enabled(struct kvm_lapic *apic) in apic_enabled() argument
106 return kvm_apic_sw_enabled(apic) && kvm_apic_hw_enabled(apic); in apic_enabled()
116 static inline u8 kvm_xapic_id(struct kvm_lapic *apic) in kvm_xapic_id() argument
118 return kvm_lapic_get_reg(apic, APIC_ID) >> 24; in kvm_xapic_id()
121 static inline u32 kvm_x2apic_id(struct kvm_lapic *apic) in kvm_x2apic_id() argument
123 return apic->vcpu->vcpu_id; in kvm_x2apic_id()
176 max_id = max(max_id, kvm_x2apic_id(vcpu->arch.apic)); in recalculate_apic_map()
[all …]
Dlapic.h79 int kvm_lapic_reg_write(struct kvm_lapic *apic, u32 reg, u32 val);
80 int kvm_lapic_reg_read(struct kvm_lapic *apic, u32 offset, int len,
90 int kvm_apic_local_deliver(struct kvm_lapic *apic, int lvt_type);
135 static inline void kvm_lapic_set_irr(int vec, struct kvm_lapic *apic) in kvm_lapic_set_irr() argument
137 kvm_lapic_set_vector(vec, apic->regs + APIC_IRR); in kvm_lapic_set_irr()
142 apic->irr_pending = true; in kvm_lapic_set_irr()
145 static inline u32 kvm_lapic_get_reg(struct kvm_lapic *apic, int reg_off) in kvm_lapic_get_reg() argument
147 return *((u32 *) (apic->regs + reg_off)); in kvm_lapic_get_reg()
150 static inline void kvm_lapic_set_reg(struct kvm_lapic *apic, int reg_off, u32 val) in kvm_lapic_set_reg() argument
152 *((u32 *) (apic->regs + reg_off)) = val; in kvm_lapic_set_reg()
[all …]
/Linux-v4.19/arch/x86/kernel/apic/
Dprobe_32.c100 static struct apic apic_default __ro_after_init = {
152 struct apic *apic __ro_after_init = &apic_default;
153 EXPORT_SYMBOL_GPL(apic);
158 struct apic **drv; in parse_apic()
165 apic = *drv; in parse_apic()
201 if (!cmdline_apic && apic == &apic_default) in default_setup_apic_routing()
205 if (apic->setup_apic_routing) in default_setup_apic_routing()
206 apic->setup_apic_routing(); in default_setup_apic_routing()
215 struct apic **drv; in generic_apic_probe()
219 apic = *drv; in generic_apic_probe()
[all …]
Dprobe_64.c30 struct apic **drv; in default_setup_apic_routing()
36 if (apic != *drv) { in default_setup_apic_routing()
37 apic = *drv; in default_setup_apic_routing()
39 apic->name); in default_setup_apic_routing()
58 struct apic **drv; in default_acpi_madt_oem_check()
62 if (apic != *drv) { in default_acpi_madt_oem_check()
63 apic = *drv; in default_acpi_madt_oem_check()
65 apic->name); in default_acpi_madt_oem_check()
Dio_apic.c87 int apic, pin; member
279 static inline void io_apic_eoi(unsigned int apic, unsigned int vector) in io_apic_eoi() argument
281 struct io_apic __iomem *io_apic = io_apic_base(apic); in io_apic_eoi()
285 unsigned int native_io_apic_read(unsigned int apic, unsigned int reg) in native_io_apic_read() argument
287 struct io_apic __iomem *io_apic = io_apic_base(apic); in native_io_apic_read()
292 static void io_apic_write(unsigned int apic, unsigned int reg, in io_apic_write() argument
295 struct io_apic __iomem *io_apic = io_apic_base(apic); in io_apic_write()
306 static struct IO_APIC_route_entry __ioapic_read_entry(int apic, int pin) in __ioapic_read_entry() argument
310 eu.w1 = io_apic_read(apic, 0x10 + 2 * pin); in __ioapic_read_entry()
311 eu.w2 = io_apic_read(apic, 0x11 + 2 * pin); in __ioapic_read_entry()
[all …]
Dapic_flat_64.c26 static struct apic apic_physflat;
27 static struct apic apic_flat;
29 struct apic *apic __ro_after_init = &apic_flat;
30 EXPORT_SYMBOL_GPL(apic);
62 __default_send_IPI_dest_field(mask, vector, apic->dest_logical); in _flat_send_IPI_mask()
100 vector, apic->dest_logical); in flat_send_IPI_allbutself()
110 vector, apic->dest_logical); in flat_send_IPI_all()
144 static struct apic apic_flat __ro_after_init = {
239 if (apic == &apic_physflat || num_possible_cpus() > 8 || in physflat_probe()
246 static struct apic apic_physflat __ro_after_init = {
Dipi.c133 apic->send_IPI_mask(cpumask_of(cpu), vector); in default_send_IPI_single()
154 vector, apic->dest_logical); in default_send_IPI_mask_sequence_logical()
173 vector, apic->dest_logical); in default_send_IPI_mask_allbutself_logical()
191 __default_send_IPI_dest_field(mask, vector, apic->dest_logical); in default_send_IPI_mask_logical()
214 __default_send_IPI_shortcut(APIC_DEST_SELF, vector, apic->dest_logical); in default_send_IPI_self()
Dapic_numachip.c24 static const struct apic apic_numachip1;
25 static const struct apic apic_numachip2;
162 return apic == &apic_numachip1; in numachip1_probe()
167 return apic == &apic_numachip2; in numachip2_probe()
242 static const struct apic apic_numachip1 __refconst = {
291 static const struct apic apic_numachip2 __refconst = {
Dx2apic_phys.c15 static struct apic apic_x2apic_phys;
100 return apic == &apic_x2apic_phys; in x2apic_phys_probe()
140 static struct apic apic_x2apic_phys __ro_after_init = {
Dbigsmp_32.c146 static struct apic apic_bigsmp __ro_after_init = {
203 apic = &apic_bigsmp; in generic_bigsmp_probe()
Dx2apic_cluster.c66 __x2apic_send_IPI_dest(dest, vector, apic->dest_logical); in __x2apic_send_IPI_mask()
180 static struct apic apic_x2apic_cluster __ro_after_init = {
Dhw_nmi.c33 apic->send_IPI_mask(mask, NMI_VECTOR); in nmi_raise_cpu_backtrace()
DMakefile10 obj-$(CONFIG_X86_LOCAL_APIC) += apic.o apic_common.o apic_noop.o ipi.o vector.o
/Linux-v4.19/arch/x86/include/asm/
Dapic.h284 struct apic { struct
358 extern struct apic *apic; argument
369 static const struct apic *__apicdrivers_##sym __used \
370 __aligned(sizeof(struct apic *)) \
374 static struct apic *__apicdrivers_##sym1##sym2[2] __used \
375 __aligned(sizeof(struct apic *)) \
378 extern struct apic *__apicdrivers[], *__apicdrivers_end[];
392 return apic->read(reg); in apic_read()
397 apic->write(reg, val); in apic_write()
402 apic->eoi_write(APIC_EOI, APIC_EOI_ACK); in apic_eoi()
[all …]
Dipi.h83 apic->send_IPI_mask_allbutself(cpu_online_mask, vector); in __default_local_send_IPI_allbutself()
85 __default_send_IPI_shortcut(APIC_DEST_ALLBUT, vector, apic->dest_logical); in __default_local_send_IPI_allbutself()
91 apic->send_IPI_mask(cpu_online_mask, vector); in __default_local_send_IPI_all()
93 __default_send_IPI_shortcut(APIC_DEST_ALLINC, vector, apic->dest_logical); in __default_local_send_IPI_all()
Dio_apic.h185 extern unsigned int native_io_apic_read(unsigned int apic, unsigned int reg);
188 static inline unsigned int io_apic_read(unsigned int apic, unsigned int reg) in io_apic_read() argument
190 return x86_apic_ops.io_apic_read(apic, reg); in io_apic_read()
/Linux-v4.19/arch/x86/hyperv/
Dhv_apic.c36 static struct apic orig_apic;
248 orig_apic = *apic; in hv_apic_init()
250 apic->send_IPI = hv_send_ipi; in hv_apic_init()
251 apic->send_IPI_mask = hv_send_ipi_mask; in hv_apic_init()
252 apic->send_IPI_mask_allbutself = hv_send_ipi_mask_allbutself; in hv_apic_init()
253 apic->send_IPI_allbutself = hv_send_ipi_allbutself; in hv_apic_init()
254 apic->send_IPI_all = hv_send_ipi_all; in hv_apic_init()
255 apic->send_IPI_self = hv_send_ipi_self; in hv_apic_init()
261 apic->read = hv_apic_read; in hv_apic_init()
262 apic->write = hv_apic_write; in hv_apic_init()
[all …]
/Linux-v4.19/arch/x86/xen/
Dapic.c14 static unsigned int xen_io_apic_read(unsigned apic, unsigned reg) in xen_io_apic_read() argument
19 apic_op.apic_physbase = mpc_ioapic_addr(apic); in xen_io_apic_read()
29 return apic << 24; in xen_io_apic_read()
154 static struct apic xen_pv_apic = {
209 if (apic == &xen_pv_apic) in xen_apic_check()
212 pr_info("Switched APIC routing from %s to %s.\n", apic->name, in xen_apic_check()
214 apic = &xen_pv_apic; in xen_apic_check()
222 apic = &xen_pv_apic; in xen_init_apic()
/Linux-v4.19/arch/x86/kernel/
Dsmp.c131 apic->send_IPI(cpu, RESCHEDULE_VECTOR); in native_smp_send_reschedule()
136 apic->send_IPI(cpu, CALL_FUNCTION_SINGLE_VECTOR); in native_send_call_func_single_ipi()
144 apic->send_IPI_mask(mask, CALL_FUNCTION_VECTOR); in native_send_call_func_ipi()
153 apic->send_IPI_allbutself(CALL_FUNCTION_VECTOR); in native_send_call_func_ipi()
155 apic->send_IPI_mask(mask, CALL_FUNCTION_VECTOR); in native_send_call_func_ipi()
214 apic->send_IPI_allbutself(REBOOT_VECTOR); in native_stop_other_cpus()
238 apic->send_IPI_allbutself(NMI_VECTOR); in native_stop_other_cpus()
Dsmpboot.c701 apic_icr_write(APIC_DM_NMI | apic->dest_logical, apicid); in wakeup_secondary_cpu_via_nmi()
928 if (apic->dest_logical == APIC_DEST_LOGICAL) in wakeup_cpu_via_init_nmi()
1019 if (apic->wakeup_secondary_cpu) in do_boot_cpu()
1020 boot_error = apic->wakeup_secondary_cpu(apicid, start_ip); in do_boot_cpu()
1074 int apicid = apic->cpu_present_to_apicid(cpu); in native_cpu_up()
1085 !apic->apic_id_valid(apicid)) { in native_cpu_up()
1219 if (!apic->check_phys_apicid_present(boot_cpu_physical_apicid)) { in smp_sanity_check()
1406 if (apic->cpu_present_to_apicid(0) == BAD_APICID && in prefill_possible_map()
1407 apic->apic_id_valid(apicid)) in prefill_possible_map()
Dkvm.c319 apic->native_eoi_write(APIC_EOI, APIC_EOI_ACK); in kvm_guest_apic_eoi_write()
533 apic->send_IPI_mask = kvm_send_ipi_mask; in kvm_setup_pv_ipi()
534 apic->send_IPI_mask_allbutself = kvm_send_ipi_mask_allbutself; in kvm_setup_pv_ipi()
535 apic->send_IPI_allbutself = kvm_send_ipi_allbutself; in kvm_setup_pv_ipi()
536 apic->send_IPI_all = kvm_send_ipi_all; in kvm_setup_pv_ipi()
Dirq_work.c31 apic->send_IPI_self(IRQ_WORK_VECTOR); in arch_irq_work_raise()
/Linux-v4.19/arch/x86/kernel/cpu/
Dtopology.c92 c->cpu_core_id = apic->phys_pkg_id(c->initial_apicid, ht_mask_width) in detect_extended_topology()
94 c->phys_proc_id = apic->phys_pkg_id(c->initial_apicid, core_plus_mask_width); in detect_extended_topology()
98 c->apicid = apic->phys_pkg_id(c->initial_apicid, 0); in detect_extended_topology()
/Linux-v4.19/drivers/acpi/
Dprocessor_core.c53 struct acpi_madt_local_x2apic *apic = in map_x2apic_id() local
56 if (!(apic->lapic_flags & ACPI_MADT_ENABLED)) in map_x2apic_id()
59 if (device_declaration && (apic->uid == acpi_id)) { in map_x2apic_id()
60 *apic_id = apic->local_apic_id; in map_x2apic_id()
/Linux-v4.19/arch/x86/platform/uv/
Duv_irq.c38 entry->delivery_mode = apic->irq_delivery_mode; in uv_program_mmr()
39 entry->dest_mode = apic->irq_dest_mode; in uv_program_mmr()

123