View Single Post
Posts: 58 | Thanked: 8 times | Joined on Aug 2010
#1
Hi, in Linux kernel 2.6.28, which is used by N900, I am trying to understand 'head.S' and have a question now. In 'head.S', there is a macro 'PHYS_OFFSET', and I can find its definition in file below.
arch/arm/plat-omap/include/mach/memory.h
Code:
#if defined(CONFIG_ARCH_OMAP1)
#define PHYS_OFFSET		UL(0x10000000)
#elif defined(CONFIG_ARCH_OMAP2) || defined(CONFIG_ARCH_OMAP3)
#define PHYS_OFFSET		UL(0x80000000)
#endif
And I found below in file '.config', that means PHYS_OFFSET = UL(0x80000000) = 2G, but why? Does this mean that in N900's hardware design, the address pins are also connected as this way so that the physical address starts from 2G? From ARM's website, I found some hint that it seems that it is predefined that OMAP processor(ARM core inside) starts its adress from 2G. Who can further clarify it? Thanks!
Code:
# CONFIG_ARCH_OMAP1 is not set
# CONFIG_ARCH_OMAP2 is not set
CONFIG_ARCH_OMAP3=y