xen/arm: fixmap: Rename the fixmap slots to follow the x86 convention

At the moment the fixmap slots are prefixed differently between arm and
x86.

Some of them (e.g. the PMAP slots) are used in common code. So it would
be better if they are named the same way to avoid having to create
aliases.

I have decided to use the x86 naming because they are less change. So
all the Arm fixmap slots will now be prefixed with FIX rather than
FIXMAP.

Signed-off-by: Julien Grall <jgrall@amazon.com>
Signed-off-by: Elias El Yandouzi <eliasely@amazon.com>

Reviewed-by: Henry Wang <Henry.Wang@arm.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
This commit is contained in:
Julien Grall committed 2024-02-16 17:16:08 +00:00
1 parent 78398afae1
commit 0441c3acc7
5 files changed
+25 -25

No files matched your search

+9 -9
View File
@@ -40,10 +40,10 @@ char *__acpi_map_table(paddr_t phys, unsigned long size)
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 */
@@ -54,7 +54,7 @@ char *__acpi_map_table(paddr_t phys, unsigned long size)
size += offset;
mfn = maddr_to_mfn(phys);
idx = FIXMAP_ACPI_BEGIN;
idx = FIX_ACPI_BEGIN;
do {
set_fixmap(idx, mfn, PAGE_HYPERVISOR);
@@ -72,8 +72,8 @@ bool __acpi_unmap_table(const void *ptr, unsigned long size)
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;
/*
@@ -81,16 +81,16 @@ bool __acpi_unmap_table(const void *ptr, unsigned long size)
* 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
{
+1 -1
View File
@@ -17,7 +17,7 @@
/* 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))
+8 -8
View File
@@ -8,17 +8,17 @@
#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__
+3 -3
View File
@@ -351,7 +351,7 @@ void free_init_memory(void)
*/
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;
@@ -359,10 +359,10 @@ void __init copy_from_paddr(void *dst, paddr_t paddr, unsigned long len)
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;
+4 -4
View File
@@ -32,8 +32,8 @@ void *__init pmap_map(mfn_t mfn)
__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
@@ -53,10 +53,10 @@ void __init pmap_unmap(const void *p)
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);
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.