| S1_PTE_ACCESS_EL0)
/* Macros used by the core, only for the EL2 stage-1 mappings */
-#define PAGE_FLAG_UNCACHED S1_PTE_FLAG_NC
+#define PAGE_FLAG_DEVICE S1_PTE_FLAG_DEVICE
#define PAGE_DEFAULT_FLAGS (S1_DEFAULT_FLAGS | S1_PTE_ACCESS_RW)
#define PAGE_READONLY_FLAGS (S1_DEFAULT_FLAGS | S1_PTE_ACCESS_RO)
#define PAGE_PRESENT_FLAGS PTE_FLAG_VALID
return -ENOMEM;
err = paging_create(&hv_paging_structs, XAPIC_BASE, PAGE_SIZE,
(unsigned long)xapic_page,
- PAGE_DEFAULT_FLAGS | PAGE_FLAG_UNCACHED,
+ PAGE_DEFAULT_FLAGS | PAGE_FLAG_DEVICE,
PAGING_NON_COHERENT);
if (err)
return err;
#define PAGE_FLAG_PRESENT 0x01
#define PAGE_FLAG_RW 0x02
#define PAGE_FLAG_US 0x04
-#define PAGE_FLAG_UNCACHED 0x10
+#define PAGE_FLAG_DEVICE 0x10 /* uncached */
#define PAGE_FLAG_EXECUTE 0x8000000000000000
#define PAGE_DEFAULT_FLAGS (PAGE_FLAG_PRESENT | PAGE_FLAG_RW)
return -ENOMEM;
err = paging_create(&hv_paging_structs, IOAPIC_BASE_ADDR, PAGE_SIZE,
(unsigned long)ioapic_page,
- PAGE_DEFAULT_FLAGS | PAGE_FLAG_UNCACHED,
+ PAGE_DEFAULT_FLAGS | PAGE_FLAG_DEVICE,
PAGING_NON_COHERENT);
if (err)
return err;
/*
* Map xAPIC as is; reads are passed, writes are trapped.
*/
- flags = PAGE_READONLY_FLAGS |
- PAGE_FLAG_US |
- PAGE_FLAG_UNCACHED;
+ flags = PAGE_READONLY_FLAGS | PAGE_FLAG_US | PAGE_FLAG_DEVICE;
err = paging_create(&cell->svm.npt_structs, XAPIC_BASE,
PAGE_SIZE, XAPIC_BASE,
flags,
PAGING_NON_COHERENT);
} else {
- flags = PAGE_DEFAULT_FLAGS | PAGE_FLAG_UNCACHED;
+ flags = PAGE_DEFAULT_FLAGS | PAGE_FLAG_DEVICE;
err = paging_create(&cell->svm.npt_structs,
paging_hvirt2phys(avic_page),
PAGE_SIZE, XAPIC_BASE,
err = paging_create(&hv_paging_structs, base_addr, PAGE_SIZE,
(unsigned long)reg_base,
- PAGE_DEFAULT_FLAGS | PAGE_FLAG_UNCACHED,
+ PAGE_DEFAULT_FLAGS | PAGE_FLAG_DEVICE,
PAGING_NON_COHERENT);
if (err)
return err;
return paging_create(&hv_paging_structs, mmcfg_start, mmcfg_size,
(unsigned long)pci_space,
- PAGE_DEFAULT_FLAGS | PAGE_FLAG_UNCACHED,
+ PAGE_DEFAULT_FLAGS | PAGE_FLAG_DEVICE,
PAGING_NON_COHERENT);
}
err = paging_create(&hv_paging_structs,
device->info->msix_address, size,
(unsigned long)device->msix_table,
- PAGE_DEFAULT_FLAGS | PAGE_FLAG_UNCACHED,
+ PAGE_DEFAULT_FLAGS | PAGE_FLAG_DEVICE,
PAGING_NON_COHERENT);
if (err)
goto error_page_free;