Lines Matching full:mmio

19 	uint64_t *mmio;  member
53 WRITE_ONCE(*io->mmio, io->mmio_gpa + i); in guest_code()
60 WRITE_ONCE(*io->mmio, io->mmio_gpa + i); in guest_code()
64 WRITE_ONCE(*io->mmio, io->mmio_gpa + i); in guest_code()
88 * data_offset is garbage, e.g. an MMIO gpa. in vcpu_run_and_verify_io_exit()
95 TEST_ASSERT((!want_pio && (run->exit_reason == KVM_EXIT_MMIO && run->mmio.is_write && in vcpu_run_and_verify_io_exit()
96 run->mmio.phys_addr == io->mmio_gpa && run->mmio.len == 8 && in vcpu_run_and_verify_io_exit()
97 *(uint64_t *)run->mmio.data == io->mmio_gpa + io->ring_size - 1)) || in vcpu_run_and_verify_io_exit()
102 "(MMIO addr = 0x%llx, write = %u, len = %u, data = %lx)\n " in vcpu_run_and_verify_io_exit()
104 ring_start, want_pio ? 4 : 8, want_pio ? "PIO" : "MMIO", in vcpu_run_and_verify_io_exit()
107 … run->exit_reason == KVM_EXIT_MMIO ? "MMIO" : run->exit_reason == KVM_EXIT_IO ? "PIO" : "other", in vcpu_run_and_verify_io_exit()
108 run->mmio.phys_addr, run->mmio.is_write, run->mmio.len, *(uint64_t *)run->mmio.data, in vcpu_run_and_verify_io_exit()
137 entry->len, entry->pio ? "PIO" : "MMIO", in vcpu_run_and_verify_coalesced_io()
143 "Wanted 8-byte MMIO to 0x%lx = %lx in entry %u, got %u-byte %s 0x%llx = 0x%lx", in vcpu_run_and_verify_coalesced_io()
145 entry->len, entry->pio ? "PIO" : "MMIO", in vcpu_run_and_verify_coalesced_io()
166 * Verify ucall, which may use non-coalesced MMIO or PIO, generates an in test_coalesced_io()
176 /* Verify that non-coalesced MMIO/PIO generates an exit to userspace. */ in test_coalesced_io()
218 * Arbitrary address+port (MMIO mustn't overlap memslots), with in main()
219 * the MMIO GPA identity mapped in the guest. in main()
222 .mmio = (uint64_t *)(4ull * SZ_1G), in main()
226 virt_map(vm, (uint64_t)kvm_builtin_io_ring.mmio, kvm_builtin_io_ring.mmio_gpa, 1); in main()