| 3fb80163 | 24-Feb-2015 |
Alexey Brodkin <abrodkin@synopsys.com> |
arc: clean-up init procedure
Intention behind this work was elimination of as much assembly-written code as it is possible.
In case of ARC we already have relocation fix-up implemented in C so why
arc: clean-up init procedure
Intention behind this work was elimination of as much assembly-written code as it is possible.
In case of ARC we already have relocation fix-up implemented in C so why don't we use C for U-Boot copying, .bss zeroing etc.
It turned out x86 uses pretty similar approach so we re-used parts of code in "board_f.c" initially implemented for x86.
Now assembly usage during init is limited to stack- and frame-pointer setup before and after relocation.
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com> Cc: Simon Glass <sjg@chromium.org>
show more ...
|
| 8ee28251 | 24-Feb-2015 |
Alexey Brodkin <abrodkin@synopsys.com> |
arc: move low-level interrupt and exception handlers in a separate file
This separation makes maintenance of code easier because those low-level interrupt- or exception handling routines are pretty
arc: move low-level interrupt and exception handlers in a separate file
This separation makes maintenance of code easier because those low-level interrupt- or exception handling routines are pretty static and usually require not much care while start-up code is a subject of modifications and enhancements.
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
show more ...
|
| 660d5f0d | 27-Dec-2014 |
Alexey Brodkin <abrodkin@synopsys.com> |
arc: move common sources in library
"reset.c" and "cpu.c" have no architecture-specific code at all. Others are applicable to either ARC CPU.
This change is a preparation to submission of ARCv2 arc
arc: move common sources in library
"reset.c" and "cpu.c" have no architecture-specific code at all. Others are applicable to either ARC CPU.
This change is a preparation to submission of ARCv2 architecture port.
Even though ARCv1 and ARCv2 ISAs are not binary compatible most of built-in modules still have the same programming model - AUX registers are mapped in the same addresses and hold the same data (new featues extend existing ones).
So only low-level assembly code (start-up, interrupt handlers) is left as CPU(actually ISA)-specific. This significantyl simplifies maintenance of multiple CPUs/ISAs.
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com> Signed-off-by: Igor Guryanov <guryanov@synopsys.com>
show more ...
|
| 1c91a3d9 | 26-Dec-2014 |
Alexey Brodkin <abrodkin@synopsys.com> |
arc: relocate - minor refactoring and clean-up
* use better symbols for relocatable region boundaries ("__image_copy_start" instead of "CONFIG_SYS_TEXT_BASE") * remove useless debug messages becau
arc: relocate - minor refactoring and clean-up
* use better symbols for relocatable region boundaries ("__image_copy_start" instead of "CONFIG_SYS_TEXT_BASE") * remove useless debug messages because they will only show up in case of both problem (when normal "if" branch won't be taken) and DEBUG take place which is pretty rare situation.
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
show more ...
|