[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH 1/2] xen/arm32: head: Rework how the fixmap and early UART mapping are prepared
Hi Michal, On 02/11/2023 09:29, Michal Orzel wrote: On 02/11/2023 00:30, Julien Grall wrote:From: Julien Grall <jgrall@xxxxxxxxxx> Since commit 5e213f0f4d2c ("xen/arm32: head: Widen the use of the temporary mapping"), boot_second (used to cover regions like Xen and the fixmap) will not be mapped if the identity mapping overlap. So it is ok to prepare the fixmap table and link it in boot_second earlier. With that, the fixmap can also be used earlier via the temporary mapping. Therefore split setup_fixmap() in two: * The table is now linked in create_page_tables() because the boot page tables needs to be recreated for every CPU. * The early UART mapping is only added for the boot CPU0 as the fixmap table is not cleared when secondary CPUs boot. Signed-off-by: Julien Grall <jgrall@xxxxxxxxxx> --- xen/arch/arm/arm32/head.S | 48 ++++++++------------------------------- 1 file changed, 9 insertions(+), 39 deletions(-) diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S index 33b038e7e0ca..fec2433e568f 100644 --- a/xen/arch/arm/arm32/head.S +++ b/xen/arch/arm/arm32/head.S @@ -183,12 +183,16 @@ past_zImage: bl check_cpu_mode bl cpu_init bl create_page_tables + /* Add the UART mapping if requested */ +#ifdef CONFIG_EARLY_PRINTK + mov_w r0, EARLY_UART_VIRTUAL_ADDRESS + create_mapping_entry xen_fixmap, r0, r11, type=PT_DEV_L3When building this patch, I'm getting a "Bad instruction" build error. Quick look shows that you are trying to use the macro create_mapping_entry before macro definition. Unless, I'm using a different baseline (latest staging) than you, this needs to be fixed. You are using the correct baseline. I have just ended up fix the build in patch #2 by mistake. I will move the change here. Apart from that: Reviewed-by: Michal Orzel <michal.orzel@xxxxxxx> Thanks! Cheers, -- Julien Grall
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |