]> git.baikalelectronics.ru Git - kernel.git/commit
tile: parameterize VA and PA space more cleanly
authorChris Metcalf <cmetcalf@tilera.com>
Tue, 3 Sep 2013 18:41:36 +0000 (14:41 -0400)
committerChris Metcalf <cmetcalf@tilera.com>
Tue, 3 Sep 2013 18:47:34 +0000 (14:47 -0400)
commit60b28be62b8d59676a01545cc43857fac11e7b7f
tree735ae530754f49ecfb006765463defdeea1167cd
parent877a11ca4560a34ebeb90b18e697d3b5b69bb1d6
tile: parameterize VA and PA space more cleanly

The existing code relied on the hardware definition (<arch/chip.h>)
to specify how much VA and PA space was available.  It's convenient
to allow customizing this for some configurations, so provide symbols
MAX_PA_WIDTH and MAX_VA_WIDTH in <asm/page.h> that can be modified
if desired.

Additionally, move away from the MEM_XX_INTRPT nomenclature to
define the start of various regions within the VA space.  In fact
the cleaner symbol is, for example, MEM_SV_START, to indicate the
start of the area used for supervisor code; the actual address of the
interrupt vectors is not as important, and can be changed if desired.
As part of this change, convert from "intrpt1" nomenclature (which
built in the old privilege-level 1 model) to a simple "intrpt".

Also strip out some tilepro-specific code supporting modifying the
PL the kernel could run at, since we don't actually support using
different PLs in tilepro, only tilegx.

Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
12 files changed:
arch/tile/include/asm/page.h
arch/tile/include/asm/pgtable_32.h
arch/tile/include/asm/pgtable_64.h
arch/tile/include/asm/processor.h
arch/tile/kernel/head_32.S
arch/tile/kernel/head_64.S
arch/tile/kernel/intvec_32.S
arch/tile/kernel/intvec_64.S
arch/tile/kernel/setup.c
arch/tile/kernel/traps.c
arch/tile/kernel/vmlinux.lds.S
arch/tile/mm/init.c