arc: introduce U-Boot port for ARCv2 ISA
authorAlexey Brodkin <abrodkin@synopsys.com>
Tue, 13 Jan 2015 15:35:46 +0000 (18:35 +0300)
committerAlexey Brodkin <abrodkin@synopsys.com>
Fri, 13 Feb 2015 06:17:51 +0000 (09:17 +0300)
commitf13606b77d32344d35f6430eb45cffd47302e244
tree51f37e30744315357efdec447a3ccb2d11ef56f0
parentbd2a4888b123713adec271d6c8040ca9f609aa2f
arc: introduce U-Boot port for ARCv2 ISA

ARC HS and ARC EM are new cores based on ARCv2 ISA which is binary
incompatible with ISAv1 (AKA ARCompact).

Significant difference between ISAv2 and v1 is implementation of
interrupt vector table.

In v1 it is implemented in the same way as on many other architectures -
as a special location where user may put whether code executed in place
(if machine word of space is enough) or jump to a full-scale interrupt
handler.

In v2 interrupt table is just an array of adresses of real interrupt
handlers. That requires a separate section for IVT that is not encoded
as code by assembler.

This change adds support for following cores:
 * ARC EM6 (simple 32-bit microcontroller without MMU)
 * ARC HS36 (advanced 32-bit microcontroller without MMU)
 * ARC HS38 (advanced 32-bit microcontroller with MMU)

As a part of ARC HS38 new version of MMU (v4) was introduced.

Also this change adds AXS131 board which is the same DW ARC SDP base board but
with ARC HS38 CPU tile.

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
arch/arc/Kconfig
arch/arc/config.mk
arch/arc/cpu/arcv2/Makefile [new file with mode: 0644]
arch/arc/cpu/arcv2/start.S [new file with mode: 0644]
arch/arc/include/asm/cache.h
configs/axs103_defconfig [new file with mode: 0644]