This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM335 u-boot 中的MMU,gd->arch.tlb_addr是在哪里初始化的?



在board_init_f 函数中,只有定义了CONFIG_SYS_DCACHE_OFF,才会对 tlb_addr 初始化,问题是配置文件没有该宏定义,那tlb_addr到底在哪里初始化的?

#if !(defined(CONFIG_SYS_ICACHE_OFF) && defined(CONFIG_SYS_DCACHE_OFF))
	/* reserve TLB table */
	gd->arch.tlb_size = PGTABLE_SIZE;
	addr -= gd->arch.tlb_size;

	/* round down to next 64 kB limit */
	addr &= ~(0x10000 - 1);

	gd->arch.tlb_addr = addr;
	debug("TLB table from %08lx to %08lx\n", addr, addr + gd->arch.tlb_size);
#endif