return NULL;
offset = phys & (PAGE_SIZE - 1);
- base = FIXMAP_ADDR(FIXMAP_ACPI_BEGIN) + offset;
+ base = FIXMAP_ADDR(FIX_ACPI_BEGIN) + offset;
/* Check the fixmap is big enough to map the region */
- if ( (FIXMAP_ADDR(FIXMAP_ACPI_END) + PAGE_SIZE - base) < size )
+ if ( (FIXMAP_ADDR(FIX_ACPI_END) + PAGE_SIZE - base) < size )
return NULL;
/* With the fixmap, we can only map one region at the time */
size += offset;
mfn = maddr_to_mfn(phys);
- idx = FIXMAP_ACPI_BEGIN;
+ idx = FIX_ACPI_BEGIN;
do {
set_fixmap(idx, mfn, PAGE_HYPERVISOR);
unsigned int idx;
/* We are only handling fixmap address in the arch code */
- if ( (vaddr < FIXMAP_ADDR(FIXMAP_ACPI_BEGIN)) ||
- (vaddr >= (FIXMAP_ADDR(FIXMAP_ACPI_END) + PAGE_SIZE)) )
+ if ( (vaddr < FIXMAP_ADDR(FIX_ACPI_BEGIN)) ||
+ (vaddr >= (FIXMAP_ADDR(FIX_ACPI_END) + PAGE_SIZE)) )
return false;
/*
* for the ACPI fixmap region. The caller is expected to free with
* the same address.
*/
- ASSERT((vaddr & PAGE_MASK) == FIXMAP_ADDR(FIXMAP_ACPI_BEGIN));
+ ASSERT((vaddr & PAGE_MASK) == FIXMAP_ADDR(FIX_ACPI_BEGIN));
/* The region allocated fit in the ACPI fixmap region. */
- ASSERT(size < (FIXMAP_ADDR(FIXMAP_ACPI_END) + PAGE_SIZE - vaddr));
+ ASSERT(size < (FIXMAP_ADDR(FIX_ACPI_END) + PAGE_SIZE - vaddr));
ASSERT(fixmap_inuse);
fixmap_inuse = false;
- size += vaddr - FIXMAP_ADDR(FIXMAP_ACPI_BEGIN);
- idx = FIXMAP_ACPI_BEGIN;
+ size += vaddr - FIXMAP_ADDR(FIX_ACPI_BEGIN);
+ idx = FIX_ACPI_BEGIN;
do
{
/* need to add the uart address offset in page to the fixmap address */
#define EARLY_UART_VIRTUAL_ADDRESS \
- (FIXMAP_ADDR(FIXMAP_CONSOLE) + (CONFIG_EARLY_UART_BASE_ADDRESS & ~PAGE_MASK))
+ (FIXMAP_ADDR(FIX_CONSOLE) + (CONFIG_EARLY_UART_BASE_ADDRESS & ~PAGE_MASK))
#define TEMPORARY_EARLY_UART_VIRTUAL_ADDRESS \
(TEMPORARY_FIXMAP_ADDR(FIXMAP_CONSOLE) + (CONFIG_EARLY_UART_BASE_ADDRESS & ~PAGE_MASK))
#include <xen/pmap.h>
/* Fixmap slots */
-#define FIXMAP_CONSOLE 0 /* The primary UART */
-#define FIXMAP_MISC 1 /* Ephemeral mappings of hardware */
-#define FIXMAP_ACPI_BEGIN 2 /* Start mappings of ACPI tables */
-#define FIXMAP_ACPI_END (FIXMAP_ACPI_BEGIN + NUM_FIXMAP_ACPI_PAGES - 1) /* End mappings of ACPI tables */
-#define FIXMAP_PMAP_BEGIN (FIXMAP_ACPI_END + 1) /* Start of PMAP */
-#define FIXMAP_PMAP_END (FIXMAP_PMAP_BEGIN + NUM_FIX_PMAP - 1) /* End of PMAP */
+#define FIX_CONSOLE 0 /* The primary UART */
+#define FIX_MISC 1 /* Ephemeral mappings of hardware */
+#define FIX_ACPI_BEGIN 2 /* Start mappings of ACPI tables */
+#define FIX_ACPI_END (FIX_ACPI_BEGIN + NUM_FIXMAP_ACPI_PAGES - 1) /* End mappings of ACPI tables */
+#define FIX_PMAP_BEGIN (FIX_ACPI_END + 1) /* Start of PMAP */
+#define FIX_PMAP_END (FIX_PMAP_BEGIN + NUM_FIX_PMAP - 1) /* End of PMAP */
-#define FIXMAP_LAST FIXMAP_PMAP_END
+#define FIX_LAST FIX_PMAP_END
#define FIXADDR_START FIXMAP_ADDR(0)
-#define FIXADDR_TOP FIXMAP_ADDR(FIXMAP_LAST)
+#define FIXADDR_TOP FIXMAP_ADDR(FIX_LAST)
#ifndef __ASSEMBLY__
*/
void __init copy_from_paddr(void *dst, paddr_t paddr, unsigned long len)
{
- void *src = (void *)FIXMAP_ADDR(FIXMAP_MISC);
+ void *src = (void *)FIXMAP_ADDR(FIX_MISC);
while (len) {
unsigned long l, s;
s = paddr & (PAGE_SIZE - 1);
l = min(PAGE_SIZE - s, len);
- set_fixmap(FIXMAP_MISC, maddr_to_mfn(paddr), PAGE_HYPERVISOR_WC);
+ set_fixmap(FIX_MISC, maddr_to_mfn(paddr), PAGE_HYPERVISOR_WC);
memcpy(dst, src + s, l);
clean_dcache_va_range(dst, l);
- clear_fixmap(FIXMAP_MISC);
+ clear_fixmap(FIX_MISC);
paddr += l;
dst += l;
__set_bit(idx, inuse);
- slot = idx + FIXMAP_PMAP_BEGIN;
- ASSERT(slot >= FIXMAP_PMAP_BEGIN && slot <= FIXMAP_PMAP_END);
+ slot = idx + FIX_PMAP_BEGIN;
+ ASSERT(slot >= FIX_PMAP_BEGIN && slot <= FIX_PMAP_END);
/*
* We cannot use set_fixmap() here. We use PMAP when the domain map
unsigned int slot = virt_to_fix((unsigned long)p);
ASSERT(system_state < SYS_STATE_smp_boot);
- ASSERT(slot >= FIXMAP_PMAP_BEGIN && slot <= FIXMAP_PMAP_END);
+ ASSERT(slot >= FIX_PMAP_BEGIN && slot <= FIX_PMAP_END);
ASSERT(!in_irq());
- idx = slot - FIXMAP_PMAP_BEGIN;
+ idx = slot - FIX_PMAP_BEGIN;
__clear_bit(idx, inuse);
arch_pmap_unmap(slot);