Tegra: enable 'signed-comparison' compilation warning/errors
This patch enables the 'sign-compare' flag, to enable warning/errors
for comparisons between signed/unsigned variables. The warning has
been enabled for all the Tegra platforms, to start with.
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
diff --git a/lib/xlat_tables_v2/xlat_tables_internal.c b/lib/xlat_tables_v2/xlat_tables_internal.c
index 2d556e6..e1a252b 100644
--- a/lib/xlat_tables_v2/xlat_tables_internal.c
+++ b/lib/xlat_tables_v2/xlat_tables_internal.c
@@ -37,7 +37,7 @@
*/
static int xlat_table_get_index(xlat_ctx_t *ctx, const uint64_t *table)
{
- for (int i = 0; i < ctx->tables_num; i++)
+ for (unsigned int i = 0; i < ctx->tables_num; i++)
if (ctx->tables[i] == table)
return i;
@@ -53,7 +53,7 @@
/* Returns a pointer to an empty translation table. */
static uint64_t *xlat_table_get_empty(xlat_ctx_t *ctx)
{
- for (int i = 0; i < ctx->tables_num; i++)
+ for (unsigned int i = 0; i < ctx->tables_num; i++)
if (ctx->tables_mapped_regions[i] == 0)
return ctx->tables[i];
@@ -203,7 +203,7 @@
const uintptr_t table_base_va,
uint64_t *const table_base,
const int table_entries,
- const int level)
+ const unsigned int level)
{
assert(level >= ctx->base_level && level <= XLAT_TABLE_LEVEL_MAX);
@@ -468,7 +468,7 @@
const uintptr_t table_base_va,
uint64_t *const table_base,
const int table_entries,
- const int level)
+ const unsigned int level)
{
assert(level >= ctx->base_level && level <= XLAT_TABLE_LEVEL_MAX);
@@ -1053,14 +1053,14 @@
/* All tables must be zeroed before mapping any region. */
- for (int i = 0; i < ctx->base_table_entries; i++)
+ for (unsigned int i = 0; i < ctx->base_table_entries; i++)
ctx->base_table[i] = INVALID_DESC;
- for (int j = 0; j < ctx->tables_num; j++) {
+ for (unsigned int j = 0; j < ctx->tables_num; j++) {
#if PLAT_XLAT_TABLES_DYNAMIC
ctx->tables_mapped_regions[j] = 0;
#endif
- for (int i = 0; i < XLAT_TABLE_ENTRIES; i++)
+ for (unsigned int i = 0; i < XLAT_TABLE_ENTRIES; i++)
ctx->tables[j][i] = INVALID_DESC;
}
diff --git a/lib/xlat_tables_v2/xlat_tables_private.h b/lib/xlat_tables_v2/xlat_tables_private.h
index 7b3e555..83e0b6e 100644
--- a/lib/xlat_tables_v2/xlat_tables_private.h
+++ b/lib/xlat_tables_v2/xlat_tables_private.h
@@ -52,7 +52,7 @@
* null entry.
*/
mmap_region_t *mmap;
- int mmap_num;
+ unsigned int mmap_num;
/*
* Array of finer-grain translation tables.
@@ -60,7 +60,7 @@
* contain both level-2 and level-3 entries.
*/
uint64_t (*tables)[XLAT_TABLE_ENTRIES];
- int tables_num;
+ unsigned int tables_num;
/*
* Keep track of how many regions are mapped in each table. The base
* table can't be unmapped so it isn't needed to keep track of it.
@@ -69,14 +69,14 @@
int *tables_mapped_regions;
#endif /* PLAT_XLAT_TABLES_DYNAMIC */
- int next_table;
+ unsigned int next_table;
/*
* Base translation table. It doesn't need to have the same amount of
* entries as the ones used for other levels.
*/
uint64_t *base_table;
- int base_table_entries;
+ unsigned int base_table_entries;
/*
* Max Physical and Virtual addresses currently in use by the
@@ -87,10 +87,10 @@
uintptr_t max_va;
/* Level of the base translation table. */
- int base_level;
+ unsigned int base_level;
/* Set to 1 when the translation tables are initialized. */
- int initialized;
+ unsigned int initialized;
/*
* Bit mask that has to be ORed to the rest of a translation table