.
common/board\_f.c
1 static int reserve_mmu(void)
2 {
3 /* reserve TLB table */
4 gd->arch.tlb_size = PGTABLE_SIZE;
5 gd->relocaddr -= gd->arch.tlb_size;
6
7 /* round down to next 64 kB limit */
8 gd->relocaddr &= ~(0x10000 - 1);
9
10 gd->arch.tlb_addr = gd->relocaddr;
11 debug("TLB table from %08lx to %08lx\n", gd->arch.tlb_addr,
12 gd->arch.tlb_addr + gd->arch.tlb_size);
13
14 #ifdef CONFIG_SYS_MEM_RESERVE_SECURE
15 /*
16 * Record allocated tlb_addr in case gd->tlb_addr to be overwritten
17 * with location within secure ram.
18 */
19 gd->arch.tlb_allocated = gd->arch.tlb_addr;
20 #endif
21
22 return 0;
23 }
- 4번 줄의
PGTABLE_SIZE
은arch/arm/include/asm/system.h
에4096 * 5
로 정의되어 있습니다. - 14번 줄의
CONFIG_SYS_MEM_RESERVE_SECURE
은 정의되어 있지 않아 if문은 수행되지 않습니다.