1 // SPDX-License-Identifier: GPL-2.0+
2 /*
3  * Renesas RCar Gen3 memory map tables
4  *
5  * Copyright (C) 2017 Marek Vasut <marek.vasut@gmail.com>
6  */
7 
8 #include <common.h>
9 #include <asm/armv8/mmu.h>
10 
11 static struct mm_region gen3_mem_map[] = {
12 	{
13 		.virt = 0x0UL,
14 		.phys = 0x0UL,
15 		.size = 0x40000000UL,
16 		.attrs = PTE_BLOCK_MEMTYPE(MT_DEVICE_NGNRNE) |
17 			 PTE_BLOCK_NON_SHARE |
18 			 PTE_BLOCK_PXN | PTE_BLOCK_UXN
19 	}, {
20 		.virt = 0x40000000UL,
21 		.phys = 0x40000000UL,
22 		.size = 0x80000000UL,
23 		.attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) |
24 			 PTE_BLOCK_INNER_SHARE
25 	}, {
26 		.virt = 0xc0000000UL,
27 		.phys = 0xc0000000UL,
28 		.size = 0x40000000UL,
29 		.attrs = PTE_BLOCK_MEMTYPE(MT_DEVICE_NGNRNE) |
30 			 PTE_BLOCK_NON_SHARE |
31 			 PTE_BLOCK_PXN | PTE_BLOCK_UXN
32 	}, {
33 		.virt = 0x100000000UL,
34 		.phys = 0x100000000UL,
35 		.size = 0xf00000000UL,
36 		.attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) |
37 			 PTE_BLOCK_INNER_SHARE
38 	}, {
39 		/* List terminator */
40 		0,
41 	}
42 };
43 
44 struct mm_region *mem_map = gen3_mem_map;
45