Home
last modified time | relevance | path

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

1234

/Linux-v6.1/arch/x86/kvm/
Dlapic.c71 static int kvm_lapic_msr_read(struct kvm_lapic *apic, u32 reg, u64 *data);
72 static int kvm_lapic_msr_write(struct kvm_lapic *apic, u32 reg, u64 data);
79 static inline void kvm_lapic_set_reg(struct kvm_lapic *apic, int reg_off, u32 val) in kvm_lapic_set_reg() argument
81 __kvm_lapic_set_reg(apic->regs, reg_off, val); in kvm_lapic_set_reg()
90 static __always_inline u64 kvm_lapic_get_reg64(struct kvm_lapic *apic, int reg) in kvm_lapic_get_reg64() argument
92 return __kvm_lapic_get_reg64(apic->regs, reg); in kvm_lapic_get_reg64()
101 static __always_inline void kvm_lapic_set_reg64(struct kvm_lapic *apic, in kvm_lapic_set_reg64() argument
104 __kvm_lapic_set_reg64(apic->regs, reg, val); in kvm_lapic_set_reg64()
114 struct kvm_lapic *apic = vcpu->arch.apic; in kvm_apic_pending_eoi() local
116 return apic_test_vector(vector, apic->regs + APIC_ISR) || in kvm_apic_pending_eoi()
[all …]
Dlapic.h113 int kvm_apic_local_deliver(struct kvm_lapic *apic, int lvt_type);
118 void kvm_apic_send_ipi(struct kvm_lapic *apic, u32 icr_low, u32 icr_high);
137 int kvm_x2apic_icr_write(struct kvm_lapic *apic, u64 data);
160 static inline void kvm_lapic_set_irr(int vec, struct kvm_lapic *apic) in kvm_lapic_set_irr() argument
162 kvm_lapic_set_vector(vec, apic->regs + APIC_IRR); in kvm_lapic_set_irr()
167 apic->irr_pending = true; in kvm_lapic_set_irr()
175 static inline u32 kvm_lapic_get_reg(struct kvm_lapic *apic, int reg_off) in kvm_lapic_get_reg() argument
177 return __kvm_lapic_get_reg(apic->regs, reg_off); in kvm_lapic_get_reg()
185 return vcpu->arch.apic; in lapic_in_kernel()
191 static inline int kvm_apic_hw_enabled(struct kvm_lapic *apic) in kvm_apic_hw_enabled() argument
[all …]
/Linux-v6.1/arch/x86/kernel/apic/
Dprobe_32.c64 static struct apic apic_default __ro_after_init = {
113 struct apic *apic __ro_after_init = &apic_default;
114 EXPORT_SYMBOL_GPL(apic);
119 struct apic **drv; in parse_apic()
126 apic = *drv; in parse_apic()
164 if (!cmdline_apic && apic == &apic_default) in default_setup_apic_routing()
168 if (apic->setup_apic_routing) in default_setup_apic_routing()
169 apic->setup_apic_routing(); in default_setup_apic_routing()
175 struct apic **drv; in generic_apic_probe()
179 apic = *drv; in generic_apic_probe()
[all …]
Dprobe_64.c21 struct apic **drv; in default_setup_apic_routing()
27 if (apic != *drv) { in default_setup_apic_routing()
28 apic = *drv; in default_setup_apic_routing()
30 apic->name); in default_setup_apic_routing()
39 struct apic **drv; in default_acpi_madt_oem_check()
43 if (apic != *drv) { in default_acpi_madt_oem_check()
44 apic = *drv; in default_acpi_madt_oem_check()
46 apic->name); in default_acpi_madt_oem_check()
Dio_apic.c89 int apic, pin; member
268 static inline void io_apic_eoi(unsigned int apic, unsigned int vector) in io_apic_eoi() argument
270 struct io_apic __iomem *io_apic = io_apic_base(apic); in io_apic_eoi()
274 unsigned int native_io_apic_read(unsigned int apic, unsigned int reg) in native_io_apic_read() argument
276 struct io_apic __iomem *io_apic = io_apic_base(apic); in native_io_apic_read()
281 static void io_apic_write(unsigned int apic, unsigned int reg, in io_apic_write() argument
284 struct io_apic __iomem *io_apic = io_apic_base(apic); in io_apic_write()
290 static struct IO_APIC_route_entry __ioapic_read_entry(int apic, int pin) in __ioapic_read_entry() argument
294 entry.w1 = io_apic_read(apic, 0x10 + 2 * pin); in __ioapic_read_entry()
295 entry.w2 = io_apic_read(apic, 0x11 + 2 * pin); in __ioapic_read_entry()
[all …]
Dapic_flat_64.c20 static struct apic apic_physflat;
21 static struct apic apic_flat;
23 struct apic *apic __ro_after_init = &apic_flat;
24 EXPORT_SYMBOL_GPL(apic);
109 static struct apic apic_flat __ro_after_init = {
192 if (apic == &apic_physflat || num_possible_cpus() > 8 || in physflat_probe()
199 static struct apic apic_physflat __ro_after_init = {
Dipi.c55 apic->send_IPI_allbutself(vector); in apic_send_IPI_allbutself()
57 apic->send_IPI_mask_allbutself(cpu_online_mask, vector); in apic_send_IPI_allbutself()
71 apic->send_IPI(cpu, RESCHEDULE_VECTOR); in native_smp_send_reschedule()
76 apic->send_IPI(cpu, CALL_FUNCTION_SINGLE_VECTOR); in native_send_call_func_single_ipi()
88 apic->send_IPI_all(CALL_FUNCTION_VECTOR); in native_send_call_func_ipi()
90 apic->send_IPI_allbutself(CALL_FUNCTION_VECTOR); in native_send_call_func_ipi()
95 apic->send_IPI_mask(mask, CALL_FUNCTION_VECTOR); in native_send_call_func_ipi()
227 apic->send_IPI_mask(cpumask_of(cpu), vector); in default_send_IPI_single()
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 = {
289 static const struct apic apic_numachip2 __refconst = {
Dx2apic_phys.c10 static struct apic apic_x2apic_phys;
103 return apic == &apic_x2apic_phys; in x2apic_phys_probe()
155 static struct apic apic_x2apic_phys __ro_after_init = {
Dbigsmp_32.c122 static struct apic apic_bigsmp __ro_after_init = {
176 apic = &apic_bigsmp; in generic_bigsmp_probe()
Dapic.c248 apic = &apic_noop; in apic_disable()
538 apic->send_IPI_mask(mask, LOCAL_TIMER_VECTOR); in lapic_timer_broadcast()
1457 if (apic->disable_esr) { in lapic_setup_esr()
1583 if (lapic_is_integrated() && apic->disable_esr) { in setup_local_APIC()
1594 BUG_ON(!apic->apic_id_registered()); in setup_local_APIC()
1601 apic->init_apic_ldr(); in setup_local_APIC()
1604 if (apic->dest_mode_logical) { in setup_local_APIC()
2538 apic->x86_32_early_logical_apicid(cpu); in generic_processor_info()
2559 msg->arch_addr_lo.dest_mode_logical = apic->dest_mode_logical; in __irq_msi_compose_msg()
2596 struct apic **drv; in acpi_wake_cpu_handler_update()
[all …]
Dhw_nmi.c34 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-v6.1/arch/x86/include/asm/
Dapic.h280 struct apic { struct
355 extern struct apic *apic; argument
366 static const struct apic *__apicdrivers_##sym __used \
367 __aligned(sizeof(struct apic *)) \
371 static struct apic *__apicdrivers_##sym1##sym2[2] __used \
372 __aligned(sizeof(struct apic *)) \
375 extern struct apic *__apicdrivers[], *__apicdrivers_end[];
389 return apic->read(reg); in apic_read()
394 apic->write(reg, val); in apic_write()
399 apic->eoi_write(APIC_EOI, APIC_EOI_ACK); in apic_eoi()
[all …]
Dio_apic.h163 extern unsigned int native_io_apic_read(unsigned int apic, unsigned int reg);
166 static inline unsigned int io_apic_read(unsigned int apic, unsigned int reg) in io_apic_read() argument
168 return x86_apic_ops.io_apic_read(apic, reg); in io_apic_read()
/Linux-v6.1/arch/x86/hyperv/
Dhv_apic.c35 static struct apic orig_apic;
285 orig_apic = *apic; in hv_apic_init()
287 apic->send_IPI = hv_send_ipi; in hv_apic_init()
288 apic->send_IPI_mask = hv_send_ipi_mask; in hv_apic_init()
289 apic->send_IPI_mask_allbutself = hv_send_ipi_mask_allbutself; in hv_apic_init()
290 apic->send_IPI_allbutself = hv_send_ipi_allbutself; in hv_apic_init()
291 apic->send_IPI_all = hv_send_ipi_all; in hv_apic_init()
292 apic->send_IPI_self = hv_send_ipi_self; in hv_apic_init()
311 apic->read = hv_apic_read; in hv_apic_init()
312 apic->write = hv_apic_write; in hv_apic_init()
[all …]
Dhv_spinlock.c23 apic->send_IPI(cpu, X86_PLATFORM_IPI_VECTOR); in hv_qlock_kick()
71 if (!hv_pvspin || !apic || in hv_init_spinlocks()
/Linux-v6.1/arch/x86/xen/
Dapic.c16 static unsigned int xen_io_apic_read(unsigned apic, unsigned reg) in xen_io_apic_read() argument
21 apic_op.apic_physbase = mpc_ioapic_addr(apic); in xen_io_apic_read()
31 return apic << 24; in xen_io_apic_read()
144 static struct apic xen_pv_apic = {
191 if (apic == &xen_pv_apic) in xen_apic_check()
194 pr_info("Switched APIC routing from %s to %s.\n", apic->name, in xen_apic_check()
196 apic = &xen_pv_apic; in xen_apic_check()
204 apic = &xen_pv_apic; in xen_init_apic()
/Linux-v6.1/arch/x86/kvm/svm/
Davic.c82 if (apic_x2apic_mode(svm->vcpu.arch.apic) && in avic_activate_vmcb()
296 if (!vcpu->arch.apic->regs) in avic_init_backing_page()
307 svm->avic_backing_page = virt_to_page(vcpu->arch.apic->regs); in avic_init_backing_page()
424 int apic = ffs(icrh & 0xffff) - 1; in avic_kick_target_vcpus_fast() local
431 if (apic < 0 || icrh != (1 << apic)) in avic_kick_target_vcpus_fast()
434 l1_physical_id = (cluster << 4) + apic; in avic_kick_target_vcpus_fast()
443 target_vcpu->arch.apic->irr_pending = true; in avic_kick_target_vcpus_fast()
471 if (apic_x2apic_mode(vcpu->arch.apic)) in avic_kick_target_vcpus()
478 vcpu->arch.apic->irr_pending = true; in avic_kick_target_vcpus()
494 struct kvm_lapic *apic = vcpu->arch.apic; in avic_incomplete_ipi_interception() local
[all …]
/Linux-v6.1/arch/x86/kernel/cpu/
Dtopology.c148 c->cpu_core_id = apic->phys_pkg_id(c->initial_apicid, in detect_extended_topology()
152 c->cpu_die_id = apic->phys_pkg_id(c->initial_apicid, in detect_extended_topology()
156 c->phys_proc_id = apic->phys_pkg_id(c->initial_apicid, in detect_extended_topology()
161 c->apicid = apic->phys_pkg_id(c->initial_apicid, 0); in detect_extended_topology()
/Linux-v6.1/arch/x86/kernel/
Dsmpboot.c798 u32 dm = apic->dest_mode_logical ? APIC_DEST_LOGICAL : APIC_DEST_PHYSICAL; in wakeup_secondary_cpu_via_nmi()
1032 id = apic->dest_mode_logical ? cpu0_logical_apicid : apicid; in wakeup_cpu_via_init_nmi()
1083 if (apic->wakeup_secondary_cpu_64) in do_boot_cpu()
1132 if (apic->wakeup_secondary_cpu_64) in do_boot_cpu()
1133 boot_error = apic->wakeup_secondary_cpu_64(apicid, start_ip); in do_boot_cpu()
1134 else if (apic->wakeup_secondary_cpu) in do_boot_cpu()
1135 boot_error = apic->wakeup_secondary_cpu(apicid, start_ip); in do_boot_cpu()
1186 int apicid = apic->cpu_present_to_apicid(cpu); in native_cpu_up()
1197 !apic->apic_id_valid(apicid)) { in native_cpu_up()
1334 if (!apic->check_phys_apicid_present(boot_cpu_physical_apicid)) { in smp_sanity_check()
[all …]
Dirq_work.c31 apic->send_IPI_self(IRQ_WORK_VECTOR); in arch_irq_work_raise()
/Linux-v6.1/drivers/acpi/
Dprocessor_core.c51 struct acpi_madt_local_x2apic *apic = in map_x2apic_id() local
54 if (!(apic->lapic_flags & ACPI_MADT_ENABLED)) in map_x2apic_id()
57 if (device_declaration && (apic->uid == acpi_id)) { in map_x2apic_id()
58 *apic_id = apic->local_apic_id; in map_x2apic_id()
/Linux-v6.1/arch/x86/platform/uv/
Duv_irq.c38 entry->delivery_mode = apic->delivery_mode; in uv_program_mmr()
39 entry->dest_mode = apic->dest_mode_logical; in uv_program_mmr()
/Linux-v6.1/drivers/iommu/intel/
Dirq_remapping.c218 static struct intel_iommu *map_ioapic_to_iommu(int apic) in map_ioapic_to_iommu() argument
223 if (ir_ioapic[i].id == apic && ir_ioapic[i].iommu) in map_ioapic_to_iommu()
308 static int set_ioapic_sid(struct irte *irte, int apic) in set_ioapic_sid() argument
318 if (ir_ioapic[i].iommu && ir_ioapic[i].id == apic) { in set_ioapic_sid()
326 pr_warn("Failed to set source-id of IOAPIC (%d)\n", apic); in set_ioapic_sid()
1121 irte->dst_mode = apic->dest_mode_logical; in prepare_irte()
1130 irte->dlvry_mode = apic->delivery_mode; in prepare_irte()

1234