u-boot/arch/arc/lib
Eugeniy Paltsev 3cf239394a ARC: cache: explicitly initialize "*_exists" variables
dcache_exists, icache_exists, slc_exists and ioc_exists global
variables in "arch/arc/lib/cache.c" remain uninitialized if
SoC doesn't have corresponding HW.

This happens because we use the next constructions for their
definition and initialization:
-------------------------->>---------------------
int ioc_exists __section(".data");

if (/* condition */)
		ioc_exists = 1;
-------------------------->>---------------------

That's quite a non-trivial issue as one may think of it.
The point is we intentionally put those variables in ".data" section
so they might survive relocation (remember we initilaize them very early
before relocation and continue to use after reloaction). While being
non-initialized and not explicitly put in .data section they would end-up
in ".bss" section which by definition is filled with zeroes.
But since we place those variables in .data section we need to care
about their proper initialization ourselves.

Also while at it we change their type to "bool" as more appropriate.

Signed-off-by: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
2017-12-11 11:36:22 +03:00
..
_millicodethunk.S arc: build libgcc in U-Boot 2015-02-09 16:41:20 +03:00
bootm.c arc: bootm: Move slave cores kick-starting under !fake 2017-11-24 19:38:07 +03:00
cache.c ARC: cache: explicitly initialize "*_exists" variables 2017-12-11 11:36:22 +03:00
cpu.c board_f: Rename initdram() to dram_init() 2017-04-13 09:40:57 -04:00
init_helpers.c arc: significant cache rework 2015-07-01 17:17:27 +03:00
interrupts.c arc: Update exception & interrupt handling for ARCv2 2016-08-05 12:50:25 +03:00
ints_low.S arc: Update exception & interrupt handling for ARCv2 2016-08-05 12:50:25 +03:00
libgcc2.c arc: build libgcc in U-Boot 2015-02-09 16:41:20 +03:00
libgcc2.h arc: build libgcc in U-Boot 2015-02-09 16:41:20 +03:00
Makefile arc: use timer driver for ARC boards 2017-03-24 14:47:52 +03:00
memcmp.S arc: memcmp - fix zero-delay loop utilization 2015-02-09 16:41:20 +03:00
memcpy-700.S arc: add library functions 2014-02-07 08:14:32 -05:00
memset.S arc: add library functions 2014-02-07 08:14:32 -05:00
relocate.c arc: No need in sections defined in sources with newer tools 2016-08-05 12:50:25 +03:00
reset.c arc: move common sources in library 2015-01-15 22:40:49 +03:00
start.S arc: arcv1: Disable master/slave check 2017-06-29 19:34:10 +03:00
strchr-700.S arc: add library functions 2014-02-07 08:14:32 -05:00
strcmp.S arc: add library functions 2014-02-07 08:14:32 -05:00
strcpy-700.S arc: add library functions 2014-02-07 08:14:32 -05:00
strlen.S arc: add library functions 2014-02-07 08:14:32 -05:00