[U-Boot] [RFC PATCH 2/8] arm: actions: Add owl memory map regions

André Przywara andre.przywara at arm.com
Sun Jan 6 01:16:43 UTC 2019


On 05/01/2019 18:27, Manivannan Sadhasivam wrote:

Hi,

> On Thu, Jan 03, 2019 at 06:56:17PM +0530, Amit Singh Tomar wrote:
>> This adds memory regions needed to setup MMU for actions
>> S900 and S700 SoCs.
>>
>> Signed-off-by: Amit Singh Tomar <amittomer25 at gmail.com>
>> ---
>>  arch/arm/mach-owl/Makefile      |  1 +
>>  arch/arm/mach-owl/sysmap-owl.c  | 32 ++++++++++++++++++++++++++++++++
>>  arch/arm/mach-owl/sysmap-s900.c | 32 --------------------------------
>>  3 files changed, 33 insertions(+), 32 deletions(-)
>>  create mode 100644 arch/arm/mach-owl/sysmap-owl.c
>>  delete mode 100644 arch/arm/mach-owl/sysmap-s900.c
>>
>> diff --git a/arch/arm/mach-owl/Makefile b/arch/arm/mach-owl/Makefile
>> index 2a76ee0..417c859 100644
>> --- a/arch/arm/mach-owl/Makefile
>> +++ b/arch/arm/mach-owl/Makefile
>> @@ -1,3 +1,4 @@
>>  # SPDX-License-Identifier:	GPL-2.0+
>>  
>>  obj-y += soc.o
>> +obj-y += sysmap-owl.o
>> diff --git a/arch/arm/mach-owl/sysmap-owl.c b/arch/arm/mach-owl/sysmap-owl.c
>> new file mode 100644
>> index 0000000..9dc4a05
>> --- /dev/null
>> +++ b/arch/arm/mach-owl/sysmap-owl.c
>> @@ -0,0 +1,32 @@
>> +// SPDX-License-Identifier: GPL-2.0+
>> +/*
>> + * Actions Semi S900/S700 Memory map
>> + *
>> + * Copyright (C) 2015 Actions Semi Co., Ltd.
>> + * Copyright (C) 2018 Manivannan Sadhasivam <manivannan.sadhasivam at linaro.org>
>> + */
>> +
>> +#include <common.h>
> 
> You might want to wrap the below contents with CONFIG_ARM64 since S500
> has different memory map and it is an ARMv7 SoC.

If I am not mistaken, we need that struct mm_region only for v8 parts.
So that would be better handled in the Makefile instead?

obj-$(CONFIG_ARM64) += sysmap-owl.o

Cheers,
Andre.
> 
>> +#include <asm/armv8/mmu.h>
>> +
>> +static struct mm_region owl_mem_map[] = {
>> +	{
>> +		.virt = 0x0UL, /* DDR */
>> +		.phys = 0x0UL, /* DDR */
>> +		.size = 0x80000000UL,
>> +		.attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) |
>> +			 PTE_BLOCK_INNER_SHARE
>> +	}, {
>> +		.virt = 0xE0000000UL, /* Peripheral block */
>> +		.phys = 0xE0000000UL, /* Peripheral block */
>> +		.size = 0x08000000UL,
>> +		.attrs = PTE_BLOCK_MEMTYPE(MT_DEVICE_NGNRNE) |
>> +			 PTE_BLOCK_NON_SHARE |
>> +			 PTE_BLOCK_PXN | PTE_BLOCK_UXN
>> +	}, {
>> +		/* List terminator */
>> +		0,
>> +	}
>> +};
>> +
>> +struct mm_region *mem_map = owl_mem_map;
>> diff --git a/arch/arm/mach-owl/sysmap-s900.c b/arch/arm/mach-owl/sysmap-s900.c
>> deleted file mode 100644
>> index f78b639..0000000
>> --- a/arch/arm/mach-owl/sysmap-s900.c
>> +++ /dev/null
>> @@ -1,32 +0,0 @@
>> -// SPDX-License-Identifier: GPL-2.0+
>> -/*
>> - * Actions Semi S900 Memory map
>> - *
>> - * Copyright (C) 2015 Actions Semi Co., Ltd.
>> - * Copyright (C) 2018 Manivannan Sadhasivam <manivannan.sadhasivam at linaro.org>
>> - */
>> -
>> -#include <common.h>
>> -#include <asm/armv8/mmu.h>
>> -
>> -static struct mm_region s900_mem_map[] = {
>> -	{
>> -		.virt = 0x0UL, /* DDR */
>> -		.phys = 0x0UL, /* DDR */
>> -		.size = 0x80000000UL,
>> -		.attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) |
>> -			 PTE_BLOCK_INNER_SHARE
>> -	}, {
>> -		.virt = 0xE0000000UL, /* Peripheral block */
>> -		.phys = 0xE0000000UL, /* Peripheral block */
>> -		.size = 0x08000000UL,
>> -		.attrs = PTE_BLOCK_MEMTYPE(MT_DEVICE_NGNRNE) |
>> -			 PTE_BLOCK_NON_SHARE |
>> -			 PTE_BLOCK_PXN | PTE_BLOCK_UXN
>> -	}, {
>> -		/* List terminator */
>> -		0,
>> -	}
>> -};
>> -
>> -struct mm_region *mem_map = s900_mem_map;
>> -- 
>> 2.7.4
>>



More information about the U-Boot mailing list