/illumos-gate/usr/src/uts/intel/io/vmm/io/ |
H A D | vlapic.c | 123 const struct LAPIC *lapic = vlapic->apic_page; in vlapic_sw_disabled() local 125 return ((lapic->svr & APIC_SVR_ENABLE) == 0); in vlapic_sw_disabled() 159 struct LAPIC *lapic; in vlapic_dfr_write_handler() local 161 lapic = vlapic->apic_page; in vlapic_dfr_write_handler() 164 lapic->dfr = 0; in vlapic_dfr_write_handler() 168 lapic->dfr &= APIC_DFR_MODEL_MASK; in vlapic_dfr_write_handler() 169 lapic->dfr |= APIC_DFR_RESERVED; in vlapic_dfr_write_handler() 175 struct LAPIC *lapic; in vlapic_ldr_write_handler() local 177 lapic = vlapic->apic_page; in vlapic_ldr_write_handler() 182 lapic->ldr = x2apic_ldr(vlapic); in vlapic_ldr_write_handler() [all …]
|
H A D | vlapic_priv.h | 131 struct LAPIC *apic_page;
|
/illumos-gate/usr/src/test/bhyve-tests/tests/vmm/ |
H A D | import_vlapic.c | 57 /* Read the existing lapic data to get a baseline */ in test_ccr_clamp() 59 err(EXIT_FAILURE, "VM_DATA_READ of lapic failed"); in test_ccr_clamp() 64 err(EXIT_FAILURE, "VM_DATA_WRITE of lapic failed"); in test_ccr_clamp() 78 err(EXIT_FAILURE, "VM_DATA_WRITE of lapic failed"); in test_ccr_clamp() 89 /* Now simulate a read of CCR from that LAPIC */ in test_ccr_clamp() 94 err(EXIT_FAILURE, "could not emulate MMIO of LAPIC CCR"); in test_ccr_clamp() 128 err(EXIT_FAILURE, "VM_DATA_READ of lapic failed"); in test_timer_icr_constraints() 139 /* Reset vCPU to clear timer state from LAPIC */ in test_timer_icr_constraints() 146 err(EXIT_FAILURE, "VM_DATA_READ of lapic failed"); in test_timer_icr_constraints() 164 "VM_DATA_WRITE of invalid lapic data should fail"); in test_timer_icr_constraints()
|
/illumos-gate/usr/src/uts/i86pc/io/ |
H A D | hpet_acpi.c | 100 static kmutex_t hpet_proxy_lock; /* lock for lAPIC proxy data */ 347 * the HPET to proxy the LAPIC. in hpet_acpi_init() 363 * If the hardware indicates that LAPIC timers are always in hpet_acpi_init() 387 * LAPIC Timers. Get a free HPET timer that supports I/O APIC routed interrupt. 1054 * lost wakeups: Set a flag to refuse all future LAPIC Timer in hpet_deep_idle_config() 1277 * as a proxy for their LAPIC Timer. The HPET's Timer in hpet_guaranteed_schedule() 1333 * LAPIC TIMER : disabled 1337 * 2. Successfully programmed the HPET to act as a LAPIC Timer proxy. 1338 * LAPIC TIMER : disabled 1340 * *lapic_expire : hrtime_t when LAPIC timer would have expired [all …]
|
/illumos-gate/usr/src/uts/i86pc/os/cpupm/ |
H A D | cpu_idle.c | 476 * LAPIC timer. in acpi_cpu_cstate() 477 * cstate_use_timer() could disable the LAPIC Timer. Make sure in acpi_cpu_cstate() 478 * to start the LAPIC Timer again before leaving this function. in acpi_cpu_cstate() 532 * CPU's proxy LAPIC timer. This CPU cannot enter C2 or deeper in acpi_cpu_cstate() 533 * because no timer is set to wake it up while its LAPIC timer in acpi_cpu_cstate() 619 * The LAPIC timer may have stopped in deep c-state. in acpi_cpu_cstate() 620 * Reprogram this CPU's LAPIC here before enabling interrupts. in acpi_cpu_cstate() 723 * on the LAPIC in deep C-states. In practice on AMD it seems something in cpu_deep_cstates_supported()
|
/illumos-gate/usr/src/cmd/bhyve/amd64/ |
H A D | kernemu_dev.c | 57 .name = "kern-lapic-mmio", 86 errc(4, rc, "register_mem: LAPIC (0x%08x)", in kernemu_dev_init()
|
/illumos-gate/usr/src/uts/intel/io/vmm/ |
H A D | vmm_lapic.h | 59 * Signals to the LAPIC that an interrupt at 'vector' needs to be generated 81 * Triggers the LAPIC local interrupt (LVT) 'vector' on 'cpu'. 'cpu' can
|
H A D | vmm_sol_dev.c | 315 * vCPU. LAPIC MSI delivery, for example, may be initiated from a worker
|
H A D | vmm.c | 2265 * Some vmm resources, such as the lapic, may have CPU-specific resources
|
/illumos-gate/usr/src/uts/i86pc/sys/ |
H A D | hpet_acpi.h | 40 * with stalled LAPIC Timers. All CPUs use one HPET timer. The timer's 237 * HPET timer and interrupt used as LAPIC proxy during deep C-State. 256 cstate_timer_t cstate_timer; /* HPET Timer used for LAPIC proxy */
|
H A D | hpet.h | 60 * as a proxy for their LAPIC timers which stop during Deep C-State.
|
/illumos-gate/usr/src/test/bhyve-tests/tests/kdev/ |
H A D | payload_vlapic_mmio_access.c | 71 * as a to-specification LAPIC is concerned. in start()
|
H A D | payload_vlapic_freq_periodic.c | 80 * Configure the LAPIC timer for periodic operation, but leave the in start()
|
H A D | payload_vlapic_msr_access.c | 121 * While the LAPIC is in x2APIC mode, writes to in start()
|
/illumos-gate/usr/src/uts/i86pc/os/ |
H A D | intr.c | 51 * each processor with a Local APIC (lapic) and to outfit the system with at 59 * (EOI), etc. a microprocessor now communicates directly to the lapic. This 61 * The programming method is different from the 8259. Consumers map the lapic 67 * interrupts, the lapic provides a way for generating inter-processor 75 * The x2apic is an extension to the lapic which started showing up around the 78 * with the previous generation of lapic and the x2apic is backwards compatible 166 * new interrupt is higher than the current value in the PPR, then the lapic 172 * lapic, the TPR register (also known as CR8 on amd64) that can be used to
|
/illumos-gate/usr/src/contrib/bhyve/x86/ |
H A D | apicreg.h | 127 struct LAPIC { struct 194 typedef struct LAPIC lapic_t; argument
|
/illumos-gate/usr/src/test/bhyve-tests/tests/perf/ |
H A D | payload_entry_exit.c | 62 * emulation is dead simple and LAPIC-related MSR operations are handled within
|
/illumos-gate/usr/src/uts/intel/io/vmm/intel/ |
H A D | vmx.c | 3670 struct LAPIC *lapic; in vmx_apicv_sync() local 3675 lapic = vlapic->apic_page; in vmx_apicv_sync() 3689 uint32_t *tmrp = &lapic->tmr0 + (i * 4); in vmx_apicv_sync() 3690 uint32_t *irrp = &lapic->irr0 + (i * 4); in vmx_apicv_sync() 3769 vlapic->apic_page = (struct LAPIC *)&vmx->apic_page[vcpuid]; in vmx_vlapic_init()
|
/illumos-gate/usr/src/cmd/bhyvectl/ |
H A D | bhyvectl.c | 1072 { "assert-lapic-lvt", REQ_ARG, 0, ASSERT_LAPIC_LVT }, in setup_options()
|
/illumos-gate/usr/src/cmd/bhyve/common/ |
H A D | pci_emul.c | 1626 * [0xF0000000, 4GB) LAPIC, IOAPIC, HPET, firmware in init_pci()
|
/illumos-gate/usr/src/uts/intel/io/vmm/amd/ |
H A D | svm.c | 2531 vlapic->apic_page = (struct LAPIC *)&svm_sc->apic_page[vcpuid]; in svm_vlapic_init()
|
/illumos-gate/usr/src/uts/intel/io/acpica/ |
H A D | changes.txt | 14177 Fix an ifdef to allow compilation on UP with LAPIC but no IOAPIC 14409 one still hangs when testing the LAPIC timer.
|