1*4882a593Smuzhiyun /* 2*4882a593Smuzhiyun * Copyright (C) 2016 Masahiro Yamada <yamada.masahiro@socionext.com> 3*4882a593Smuzhiyun * 4*4882a593Smuzhiyun * SPDX-License-Identifier: GPL-2.0+ 5*4882a593Smuzhiyun */ 6*4882a593Smuzhiyun 7*4882a593Smuzhiyun #include <common.h> 8*4882a593Smuzhiyun #include <linux/types.h> 9*4882a593Smuzhiyun #include <asm/armv8/mmu.h> 10*4882a593Smuzhiyun 11*4882a593Smuzhiyun static struct mm_region uniphier_mem_map[] = { 12*4882a593Smuzhiyun { 13*4882a593Smuzhiyun .virt = 0x00000000, 14*4882a593Smuzhiyun .phys = 0x00000000, 15*4882a593Smuzhiyun .size = 0x80000000, 16*4882a593Smuzhiyun .attrs = PTE_BLOCK_MEMTYPE(MT_DEVICE_NGNRNE) | 17*4882a593Smuzhiyun PTE_BLOCK_NON_SHARE | 18*4882a593Smuzhiyun PTE_BLOCK_PXN | PTE_BLOCK_UXN 19*4882a593Smuzhiyun }, 20*4882a593Smuzhiyun { 21*4882a593Smuzhiyun .virt = 0x80000000, 22*4882a593Smuzhiyun .phys = 0x80000000, 23*4882a593Smuzhiyun .size = 0xc0000000, 24*4882a593Smuzhiyun .attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) | 25*4882a593Smuzhiyun PTE_BLOCK_INNER_SHARE 26*4882a593Smuzhiyun }, 27*4882a593Smuzhiyun { /* sentinel */ } 28*4882a593Smuzhiyun }; 29*4882a593Smuzhiyun 30*4882a593Smuzhiyun struct mm_region *mem_map = uniphier_mem_map; 31