New issue
Advanced search Search tips

Issue 838349 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: May 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 3
Type: Bug

Blocking:
issue 788213



Sign in to add a comment

mosys: enable -Werror

Project Member Reported by briannorris@chromium.org, Apr 30 2018

Issue description

Many small errors and at least one real bug are hiding behind ignored compiler warnings in mosys.

I'll fix the warnings (and bugs), and then I'd like to enable -Werror.
 
SGTM! Thanks.
Blocking: 788213
I'd not like to add individual reviewers for all of these. Most of these are trivial. A few have some subjective choices. Let me know if you'd like me to do anything differently.

The last 3 are probably worth some real review. Particularly, the 'oak' patch drops a small buggy feature. I'll probably get somebody familiar with Oak/Elm to look at that too.

remote:   https://chromium-review.googlesource.com/#/c/chromiumos/platform/mosys/+/1036234 string: fix warnings        
remote:   https://chromium-review.googlesource.com/#/c/chromiumos/platform/mosys/+/1036235 eeprom: fix warnings        
remote:   https://chromium-review.googlesource.com/#/c/chromiumos/platform/mosys/+/1036236 tegra/gpio: fix warnings        
remote:   https://chromium-review.googlesource.com/#/c/chromiumos/platform/mosys/+/1036237 samsung/gpio: fix warnings        
remote:   https://chromium-review.googlesource.com/#/c/chromiumos/platform/mosys/+/1036238 cbfs_core: fix warnings        
remote:   https://chromium-review.googlesource.com/#/c/chromiumos/platform/mosys/+/1036239 file: fix warnings        
remote:   https://chromium-review.googlesource.com/#/c/chromiumos/platform/mosys/+/1036240 smbios: fix warnings        
remote:   https://chromium-review.googlesource.com/#/c/chromiumos/platform/mosys/+/1036241 nonspd: fix warnings        
remote:   https://chromium-review.googlesource.com/#/c/chromiumos/platform/mosys/+/1036342 mmio: fix warnings        
remote:   https://chromium-review.googlesource.com/#/c/chromiumos/platform/mosys/+/1036343 elog: fix warnings        
remote:   https://chromium-review.googlesource.com/#/c/chromiumos/platform/mosys/+/1036344 {alex,lumpy}/mec1308: fix warnings        
remote:   https://chromium-review.googlesource.com/#/c/chromiumos/platform/mosys/+/1036345 vpd/binary_blob: fix warnings        
remote:   https://chromium-review.googlesource.com/#/c/chromiumos/platform/mosys/+/1036346 vbnv_flash: fix warning        
remote:   https://chromium-review.googlesource.com/#/c/chromiumos/platform/mosys/+/1036347 flashrom: fix warnings        
remote:   https://chromium-review.googlesource.com/#/c/chromiumos/platform/mosys/+/1036348 alex/memory: fix warning        
remote:   https://chromium-review.googlesource.com/#/c/chromiumos/platform/mosys/+/1036349 butterfly: fix warnings        
remote:   https://chromium-review.googlesource.com/#/c/chromiumos/platform/mosys/+/1036350 vpd: fix warnings      
remote:   https://chromium-review.googlesource.com/#/c/chromiumos/platform/mosys/+/1036351 daisy/sys: fix warning        
remote:   https://chromium-review.googlesource.com/#/c/chromiumos/platform/mosys/+/1036352 peach/sys: fix warning        
remote:   https://chromium-review.googlesource.com/#/c/chromiumos/platform/mosys/+/1036353 skate: fix warning        
remote:   https://chromium-review.googlesource.com/#/c/chromiumos/platform/mosys/+/1036354 mario: fix warnings        
remote:   https://chromium-review.googlesource.com/#/c/chromiumos/platform/mosys/+/1036355 spring: fix warning        
remote:   https://chromium-review.googlesource.com/#/c/chromiumos/platform/mosys/+/1036356 stout: fix warning        
remote:   https://chromium-review.googlesource.com/#/c/chromiumos/platform/mosys/+/1036357 zgb: fix warnings        
remote:   https://chromium-review.googlesource.com/#/c/chromiumos/platform/mosys/+/1036358 i2c: fix warnings        
remote:   https://chromium-review.googlesource.com/#/c/chromiumos/platform/mosys/+/1036359 exynos/gpio: fix warning        
remote:   https://chromium-review.googlesource.com/#/c/chromiumos/platform/mosys/+/1036360 oak: drop 'id_list' support        
remote:   https://chromium-review.googlesource.com/#/c/chromiumos/platform/mosys/+/1036361 build: disable '-Waddress-of-packed-member'        
remote:   https://chromium-review.googlesource.com/#/c/chromiumos/platform/mosys/+/1036362 build: enable -Werror  
I wouldn't worry too much about the id_list. I just looked at this for a differe change https://chromium-review.googlesource.com/c/chromiumos/platform/mosys/+/1034389 and concluded that it's effectively worthless. I think it's a holdover from the days when Mosys was used in the Platforms team.
Project Member

Comment 5 by bugdroid1@chromium.org, May 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/62448e91e08e479ecd9d24e244576b110007c8ba

commit 62448e91e08e479ecd9d24e244576b110007c8ba
Author: Brian Norris <briannorris@chromium.org>
Date: Tue May 01 20:06:26 2018

string: fix warnings

../mosys-9999/lib/string/string.c:264:18: warning: passing 'unsigned char [2]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                digit = strtol(c, &endptr, base);
                               ^
../../../../../../usr/include/stdlib.h:183:48: note: passing argument to parameter '__nptr' here
extern long int strtol (const char *__restrict __nptr,
                                               ^
../mosys-9999/lib/string/string.c:267:17: warning: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
                        if (!strpbrk(&c[0], delim)) {
                                     ^~~~~
../../../../../../usr/include/string.h:310:35: note: passing argument to parameter '__s' here
extern char *strpbrk (const char *__s, const char *__accept)
                                  ^
BUG= chromium:838349 
TEST=build

Change-Id: Id3d64b0cce3c65bc68e94d83b69ed3d047290cd1
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1036234
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/62448e91e08e479ecd9d24e244576b110007c8ba/lib/string/string.c

Project Member

Comment 6 by bugdroid1@chromium.org, May 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/12dafeb2acec3218242c907a0bf2fb644d44546e

commit 12dafeb2acec3218242c907a0bf2fb644d44546e
Author: Brian Norris <briannorris@chromium.org>
Date: Tue May 01 20:06:26 2018

eeprom: fix warnings

../mosys-9999/core/command/eeprom.c:575:29: warning: format specifies type 'unsigned long' but the argument has type '__off64_t' (aka 'long long') [-Wformat]
                                 "(%u bytes)n", st.st_size, eeprom->name,
                                                 ^~~~~~~~~~
../mosys-9999/core/command/eeprom.c:601:7: warning: format specifies type 'unsigned long' but the argument has type '__off64_t' (aka 'long long') [-Wformat]
                                  st.st_size, eeprom->name);
                                  ^~~~~~~~~~
BUG= chromium:838349 
TEST=build

Change-Id: I6ef55bceb41deee86e701b8519d85f44f12bf051
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1036235
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/12dafeb2acec3218242c907a0bf2fb644d44546e/core/command/eeprom.c

Project Member

Comment 7 by bugdroid1@chromium.org, May 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/93a6416a3b947c1ff4d41f03f6a9f043d53e62a7

commit 93a6416a3b947c1ff4d41f03f6a9f043d53e62a7
Author: Brian Norris <briannorris@chromium.org>
Date: Tue May 01 20:06:27 2018

tegra/gpio: fix warnings

../mosys-9999/include/drivers/nvidia/tegra124/gpio.h:43:18: warning: redefinition of typedef 'gpio_t' is a C11 feature [-Wtypedef-redefinition]
typedef uint32_t gpio_t;
                 ^
../mosys-9999/include/drivers/nvidia/tegra124/gpio.h:42:18: note: previous definition is here
typedef uint32_t gpio_t;
                 ^
1 warning generated.

BUG= chromium:838349 
TEST=build

Change-Id: Idd0fda7549401959ebbfd43d650422b760c8cc20
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1036236
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/93a6416a3b947c1ff4d41f03f6a9f043d53e62a7/include/drivers/nvidia/tegra124/gpio.h

Project Member

Comment 8 by bugdroid1@chromium.org, May 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/9cfa765e580c17593774b1c41e7f40572ff2d4ef

commit 9cfa765e580c17593774b1c41e7f40572ff2d4ef
Author: Brian Norris <briannorris@chromium.org>
Date: Tue May 01 20:06:27 2018

samsung/gpio: fix warnings

../mosys-9999/drivers/samsung/gpio.c:131:24: warning: more '%' conversions than data arguments [-Wformat]
                lprintf(LOG_DEBUG, "%s: detected unvalid logic staten");
                                    ~^

BUG= chromium:838349 
TEST=build

Change-Id: Ica5891dc1297e0da16d47a1b2be086fcd4f139d2
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1036237
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/9cfa765e580c17593774b1c41e7f40572ff2d4ef/drivers/samsung/gpio.c

Project Member

Comment 9 by bugdroid1@chromium.org, May 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/479eab80e098ad5ab5072a1cab6a33094c8808b1

commit 479eab80e098ad5ab5072a1cab6a33094c8808b1
Author: Brian Norris <briannorris@chromium.org>
Date: Tue May 01 20:06:28 2018

cbfs_core: fix warnings

../mosys-9999/lib/cbfs/cbfs_core.c:115:49: error: format specifies type 'unsigned long' but the argument has type 'off_t' (aka 'long long') [-Werror,-Wformat]
                                   __func__, CBFS_NAME(file), offset);
                                                              ^~~~~~

BUG= chromium:838349 
TEST=build

Change-Id: Ia763ac2d4caa8c332e5cd12ededf7ae72eb7955b
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1036238
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/479eab80e098ad5ab5072a1cab6a33094c8808b1/lib/cbfs/cbfs_core.c

Project Member

Comment 10 by bugdroid1@chromium.org, May 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/c30a09a7f8e6b3ddcb65a4400540a1d7e47eef1f

commit c30a09a7f8e6b3ddcb65a4400540a1d7e47eef1f
Author: Brian Norris <briannorris@chromium.org>
Date: Tue May 01 20:06:28 2018

file: fix warnings

../mosys-9999/lib/file/file.c:127:10: error: format specifies type 'unsigned long' but the argument has type '__ino64_t' (aka 'unsigned long long') [-Werror,-Wformat]
                        file, st1.st_ino, st2.st_ino);
                              ^~~~~~~~~~
../mosys-9999/lib/file/file.c:127:22: error: format specifies type 'unsigned long' but the argument has type '__ino64_t' (aka 'unsigned long long') [-Werror,-Wformat]
                        file, st1.st_ino, st2.st_ino);
                                          ^~~~~~~~~~
../mosys-9999/lib/file/file.c:143:10: error: format specifies type 'unsigned long' but the argument has type '__nlink_t' (aka 'unsigned int') [-Werror,-Wformat]
                        file, st2.st_nlink);
                              ^~~~~~~~~~~~

BUG= chromium:838349 
TEST=build

Change-Id: Ic22c88015570d6cc1662c7634e53a837736731a9
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1036239
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/c30a09a7f8e6b3ddcb65a4400540a1d7e47eef1f/lib/file/file.c

Project Member

Comment 11 by bugdroid1@chromium.org, May 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/c77f42e3777a35169a7ce4f293cab5497ca1ed13

commit c77f42e3777a35169a7ce4f293cab5497ca1ed13
Author: Brian Norris <briannorris@chromium.org>
Date: Tue May 01 20:06:29 2018

smbios: fix warnings

../mosys-9999/lib/smbios/smbios.c:246:17: error: format specifies type 'unsigned long' but the argument has type 'size_t' (aka 'unsigned int') [-Werror,-Wformat]
                                                   klog_offset, baseaddr);
                                                   ^~~~~~~~~~~

BUG= chromium:838349 
TEST=build

Change-Id: I5cf16abaddd4994d293dc3d3406d19f0e0e830e3
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1036240
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/c77f42e3777a35169a7ce4f293cab5497ca1ed13/lib/smbios/smbios.c

Project Member

Comment 12 by bugdroid1@chromium.org, May 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/d7384fbe9cc7aa11992aba80cb8c12bb05a08179

commit d7384fbe9cc7aa11992aba80cb8c12bb05a08179
Author: Brian Norris <briannorris@chromium.org>
Date: Tue May 01 20:06:29 2018

nonspd: fix warnings

../mosys-9999/lib/spd/nonspd_modules.c:721:4: error: passing 'uint8_t const[23]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
                        nospdmemory[index]->part_num,
                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../../../usr/include/string.h:143:51: note: passing argument to parameter '__s2' here
extern int strncmp (const char *__s1, const char *__s2, size_t __n)
                                                  ^

BUG= chromium:838349 
TEST=build

Change-Id: I0e6606c53ce0d6d6081dc4c5c1ccfe2dc173dcfc
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1036241
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/d7384fbe9cc7aa11992aba80cb8c12bb05a08179/lib/spd/nonspd_modules.c

Project Member

Comment 13 by bugdroid1@chromium.org, May 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/8a95f97f0db8c013393ffbc7fde271f4c20e2a03

commit 8a95f97f0db8c013393ffbc7fde271f4c20e2a03
Author: Brian Norris <briannorris@chromium.org>
Date: Tue May 01 20:06:30 2018

mmio: fix warnings

uint64_t might alias to 'unsigned long' or 'unsigned long long',
depending on the architecture. Just force it to 'uintmax_t' for the
printf formatter's sake. The 'j' modifier is C99 standard.

./mosys-9999/intf/mmio.c:112:50: error: format specifies type 'unsigned long' but the argument has type 'uint64_t' (aka 'unsigned long long') [-Werror,-Wformat]
        lprintf(LOG_DEBUG, "mmio_mmap(0x%016lx, %d)n", address, length);
                                        ~~~~~~          ^~~~~~~
                                        %016llx
../mosys-9999/intf/mmio.c:163:11: error: format specifies type 'unsigned long' but the argument has type 'uint64_t' (aka 'unsigned long long') [-Werror,-Wformat]
                        address, address + length);
                        ^~~~~~~
../mosys-9999/intf/mmio.c:163:20: error: format specifies type 'unsigned long' but the argument has type 'unsigned long long' [-Werror,-Wformat]
                        address, address + length);
                                 ^~~~~~~~~~~~~~~~
../mosys-9999/intf/mmio.c:209:11: error: format specifies type 'unsigned long' but the argument has type 'uint64_t' (aka 'unsigned long long') [-Werror,-Wformat]
                        address, address + length);
                        ^~~~~~~
../mosys-9999/intf/mmio.c:209:20: error: format specifies type 'unsigned long' but the argument has type 'unsigned long long' [-Werror,-Wformat]
                        address, address + length);
                                 ^~~~~~~~~~~~~~~~

BUG= chromium:838349 
TEST=build

Change-Id: I44272761fb4f5bb32d0e1ff21755121d1baeb2d7
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1036342
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/8a95f97f0db8c013393ffbc7fde271f4c20e2a03/intf/mmio.c

Project Member

Comment 14 by bugdroid1@chromium.org, May 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/b9cdabfe5cd122e4d97f208379609d7459f8ef94

commit b9cdabfe5cd122e4d97f208379609d7459f8ef94
Author: Brian Norris <briannorris@chromium.org>
Date: Tue May 01 20:06:30 2018

elog: fix warnings

../mosys-9999/lib/eventlog/elog.c:1024:5: error: format specifies type 'unsigned long' but the argument has type 'size_t' (aka 'unsigned int') [-Werror,-Wformat]
                                event_data_size);
                                ^~~~~~~~~~~~~~~
../mosys-9999/lib/eventlog/elog.c:1044:4: error: format specifies type 'unsigned long' but the argument has type 'size_t' (aka 'unsigned int') [-Werror,-Wformat]
                        event_size);
                        ^~~~~~~~~~

BUG= chromium:838349 
TEST=build

Change-Id: I19c1bd74634d3a8060da9f00cd21275d4d60beb4
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1036343
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/b9cdabfe5cd122e4d97f208379609d7459f8ef94/lib/eventlog/elog.c

Project Member

Comment 15 by bugdroid1@chromium.org, May 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/dfd098659fb4b2aaecf9b8cb329d43146182ffce

commit dfd098659fb4b2aaecf9b8cb329d43146182ffce
Author: Brian Norris <briannorris@chromium.org>
Date: Tue May 01 20:06:31 2018

{alex,lumpy}/mec1308: fix warnings

mec1308_mbx_fw_version() is only writing out 'char's, and these
platforms want to return 'char' arrays, so just convert the whole thing
to 'char *'.

../mosys-9999/platform/alex/ec.c:86:9: error: returning 'uint8_t [13]' from a function with result type 'const char *' converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
        return version;
               ^~~~~~~

../mosys-9999/platform/lumpy/ec.c:62:9: warning: returning 'uint8_t [13]' from a function with result type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        return version;
               ^~~~~~~

BUG= chromium:838349 
TEST=build

Change-Id: I51c8b0509b66250d588bb55dde546530d864c760
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1036344
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/dfd098659fb4b2aaecf9b8cb329d43146182ffce/platform/alex/ec.c
[modify] https://crrev.com/dfd098659fb4b2aaecf9b8cb329d43146182ffce/platform/lumpy/ec.c
[modify] https://crrev.com/dfd098659fb4b2aaecf9b8cb329d43146182ffce/include/drivers/smsc/mec1308.h
[modify] https://crrev.com/dfd098659fb4b2aaecf9b8cb329d43146182ffce/drivers/smsc/mec1308_mbx.c

Project Member

Comment 16 by bugdroid1@chromium.org, May 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/40484f76e222b9c6d5e6f6fe776254fedc736ad9

commit 40484f76e222b9c6d5e6f6fe776254fedc736ad9
Author: Brian Norris <briannorris@chromium.org>
Date: Tue May 01 20:06:31 2018

vpd/binary_blob: fix warnings

../mosys-9999/lib/vpd/binary_blob.c:61:35: error: format specifies type 'unsigned long' but the argument has type 'unsigned int' [-Werror,-Wformat]
                                   "got: %xn", sizeof(*agz_blob), size);
                                                ^~~~~~~~~~~~~~~~~
../mosys-9999/lib/vpd/binary_blob.c:113:35: error: format specifies type 'unsigned long' but the argument has type 'unsigned int' [-Werror,-Wformat]
                                   "got: %xn", sizeof(*agz_blob), size);
                                                ^~~~~~~~~~~~~~~~~
../mosys-9999/lib/vpd/binary_blob.c:163:35: error: format specifies type 'unsigned long' but the argument has type 'unsigned int' [-Werror,-Wformat]
                                   "got: %xn", sizeof(*google_blob), size);
                                                ^~~~~~~~~~~~~~~~~~~~

BUG= chromium:838349 
TEST=build

Change-Id: Ic1b0acddd830fae69ca7bceb5c265bf36523f093
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1036345
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/40484f76e222b9c6d5e6f6fe776254fedc736ad9/lib/vpd/binary_blob.c

Project Member

Comment 17 by bugdroid1@chromium.org, May 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/74b70de8b4360b53a82b53c78e12dfadb7b96793

commit 74b70de8b4360b53a82b53c78e12dfadb7b96793
Author: Brian Norris <briannorris@chromium.org>
Date: Tue May 01 20:06:32 2018

vbnv_flash: fix warning

../mosys-9999/lib/vbnv/vbnv_flash.c:104:5: error: format specifies type 'unsigned long' but the argument has type 'size_t' (aka 'unsigned int') [-Werror,-Wformat]
                                region->len, VBNV_BLOCK_SIZE);
                                ^~~~~~~~~~~

BUG= chromium:838349 
TEST=build

Change-Id: I0237cd4d5fd165ffe574d8c31328b4e7406a5a64
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1036346
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/74b70de8b4360b53a82b53c78e12dfadb7b96793/lib/vbnv/vbnv_flash.c

Project Member

Comment 18 by bugdroid1@chromium.org, May 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/a3abb56a56613576543ac6765dca9808bdc3a8b9

commit a3abb56a56613576543ac6765dca9808bdc3a8b9
Author: Brian Norris <briannorris@chromium.org>
Date: Tue May 01 20:06:32 2018

flashrom: fix warnings

../mosys-9999/lib/flashrom/flashrom.c:366:32: error: format specifies type 'unsigned long' but the argument has type '__off64_t' (aka 'long long') [-Werror,-Wformat]
                                   __func__, s.st_size, size);
                                             ^~~~~~~~~
../mosys-9999/lib/flashrom/flashrom.c:366:43: error: format specifies type 'unsigned long' but the argument has type 'size_t' (aka 'unsigned int') [-Werror,-Wformat]
                                   __func__, s.st_size, size);
                                                        ^~~~

BUG= chromium:838349 
TEST=build

Change-Id: I67a36e2f02606616b3664e05f1687e184bda4ba2
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1036347
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/a3abb56a56613576543ac6765dca9808bdc3a8b9/lib/flashrom/flashrom.c

Project Member

Comment 19 by bugdroid1@chromium.org, May 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/50fe07418f6f581332ba7e287d1d63d25f9dcbbf

commit 50fe07418f6f581332ba7e287d1d63d25f9dcbbf
Author: Brian Norris <briannorris@chromium.org>
Date: Tue May 01 20:06:33 2018

alex/memory: fix warning

../mosys-9999/platform/alex/memory.c:176:36: error: format specifies type 'unsigned long' but the argument has type 'long long' [-Werror,-Wformat]
                           __func__, len, spd + reg);
                                          ^~~~~~~~~

BUG= chromium:838349 
TEST=build

Change-Id: I68b272c95623a9ba7172cc9e94d120f1f4e7a4dc
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1036348
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/50fe07418f6f581332ba7e287d1d63d25f9dcbbf/platform/alex/memory.c

Project Member

Comment 20 by bugdroid1@chromium.org, May 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/83d83d8c1029c3a581f72ceee1511f9e23ded854

commit 83d83d8c1029c3a581f72ceee1511f9e23ded854
Author: Brian Norris <briannorris@chromium.org>
Date: Tue May 01 20:06:33 2018

butterfly: fix warnings

../mosys-9999/platform/butterfly/ec.c:108:52: error: passing 'char *' to parameter of type 'uint8_t *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
                read_ecram(intf, BUTTERFLY_ECRAM_FW_VERSION + i, &version[i]);
                                                                 ^~~~~~~~~~~
../mosys-9999/platform/butterfly/ec.c:61:29: note: passing argument to parameter 'data' here
                        uint8_t offset, uint8_t *data)
                                                 ^

BUG= chromium:838349 
TEST=build

Change-Id: Ib2497ae8efad06eab22a23d0c19a030cab9c0f83
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1036349
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/83d83d8c1029c3a581f72ceee1511f9e23ded854/platform/butterfly/ec.c

Project Member

Comment 21 by bugdroid1@chromium.org, May 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/a1f5d51c2b6d7baf516afe73ee91ef4e8ea3d052

commit a1f5d51c2b6d7baf516afe73ee91ef4e8ea3d052
Author: Brian Norris <briannorris@chromium.org>
Date: Tue May 01 20:06:34 2018

vpd: fix warnings

../mosys-9999/lib/vpd/vpd.c:504:12: error: initializing 'unsigned char *' with an expression of type 'char [37]' converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
        { .uuid = "b9468091-ccd2-4b8b-8300-8cd8336a14f6",
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../mosys-9999/lib/vpd/vpd.c:506:12: error: initializing 'unsigned char *' with an expression of type 'char [37]' converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
        { .uuid = "0eea3385-602a-4f6d-b593-6118dda238b2",
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../mosys-9999/lib/vpd/vpd.c:508:12: error: initializing 'unsigned char *' with an expression of type 'char [37]' converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
        { .uuid = "08f8a2b0-15fd-4cfd-968f-8378f2c508ce",
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../mosys-9999/lib/vpd/vpd.c:510:12: error: initializing 'unsigned char *' with an expression of type 'char [37]' converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
        { .uuid = "0a7c23d3-8a27-4252-99bf-7868a2e26b61",
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../mosys-9999/lib/vpd/vpd.c:548:15: error: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
                if (!strcmp(handler->uuid, s)) {
                            ^~~~~~~~~~~~~
../../../../../../usr/include/string.h:140:32: note: passing argument to parameter '__s1' here
extern int strcmp (const char *__s1, const char *__s2)
                               ^
../mosys-9999/lib/vpd/vpd.c:601:15: error: passing 'unsigned char *' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
                if (!strcmp(handler->uuid, s)) {
                            ^~~~~~~~~~~~~
../../../../../../usr/include/string.h:140:32: note: passing argument to parameter '__s1' here
extern int strcmp (const char *__s1, const char *__s2)
                               ^

BUG= chromium:838349 
TEST=build

Change-Id: I4af053270dea4bb4af85868392fdc27a37cb4a23
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1036350
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/a1f5d51c2b6d7baf516afe73ee91ef4e8ea3d052/include/lib/vpd_binary_blob.h

Project Member

Comment 22 by bugdroid1@chromium.org, May 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/1f7f45b4212aa3f059374253d4cdc618cc28a22d

commit 1f7f45b4212aa3f059374253d4cdc618cc28a22d
Author: Brian Norris <briannorris@chromium.org>
Date: Tue May 01 20:06:35 2018

daisy/sys: fix warning

../mosys-9999/platform/daisy/sys.c:52:9: error: returning 'const char *' from a function with result type 'char *' discards qualifiers [-Werror,-Wincompatible-pointer-types-discards-qualifiers]
        return (const char *)ret;
               ^~~~~~~~~~~~~~~~~

BUG= chromium:838349 
TEST=build

Change-Id: I3f2151a434fe9d0c773daff0af5db0c851064e94
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1036351
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/1f7f45b4212aa3f059374253d4cdc618cc28a22d/platform/daisy/sys.c

Project Member

Comment 23 by bugdroid1@chromium.org, May 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/6c6fd68ae7f75afe87410f53da4ef141da069660

commit 6c6fd68ae7f75afe87410f53da4ef141da069660
Author: Brian Norris <briannorris@chromium.org>
Date: Tue May 01 20:06:35 2018

peach/sys: fix warning

../mosys-9999/platform/peach/sys.c:50:9: error: returning 'const char *' from a function with result type 'char *' discards qualifiers [-Werror,-Wincompatible-pointer-types-discards-qualifiers]
        return (const char *)ret;
               ^~~~~~~~~~~~~~~~~

BUG= chromium:838349 
TEST=build

Change-Id: Iaa702a9ed5b25313631bc748bde97f9bc52b0c84
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1036352
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/6c6fd68ae7f75afe87410f53da4ef141da069660/platform/peach/sys.c

Project Member

Comment 24 by bugdroid1@chromium.org, May 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/c9813b6379596a290128d06de68ce668145e1013

commit c9813b6379596a290128d06de68ce668145e1013
Author: Brian Norris <briannorris@chromium.org>
Date: Tue May 01 20:06:36 2018

skate: fix warning

../mosys-9999/platform/skate/sys.c:50:9: error: returning 'const char *' from a function with result type 'char *' discards qualifiers [-Werror,-Wincompatible-pointer-types-discards-qualifiers]
        return (const char *)ret;
               ^~~~~~~~~~~~~~~~~

BUG= chromium:838349 
TEST=build

Change-Id: I875af95dd48fe1432ea0cf9dca0b866a5752d8b8
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1036353
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/c9813b6379596a290128d06de68ce668145e1013/platform/skate/sys.c

Project Member

Comment 25 by bugdroid1@chromium.org, May 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/9dc0a883a515eab4904a7b3eac42ce02acd678fb

commit 9dc0a883a515eab4904a7b3eac42ce02acd678fb
Author: Brian Norris <briannorris@chromium.org>
Date: Tue May 01 20:06:36 2018

mario: fix warnings

../mosys-9999/platform/mario/ec.c:184:31: error: passing 'char *' to parameter of type 'uint8_t *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
        io_read8(intf, mbx_base + 1, &version[0]);
                                     ^~~~~~~~~~~
../mosys-9999/include/intf/io.h:125:62: note: passing argument to parameter 'data' here
io_read8(struct platform_intf *intf,  uint16_t reg, uint8_t *data)
                                                             ^
../mosys-9999/platform/mario/ec.c:187:31: error: passing 'char *' to parameter of type 'uint8_t *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
        io_read8(intf, mbx_base + 1, &version[1]);
                                     ^~~~~~~~~~~
../mosys-9999/include/intf/io.h:125:62: note: passing argument to parameter 'data' here
io_read8(struct platform_intf *intf,  uint16_t reg, uint8_t *data)
                                                             ^
../mosys-9999/platform/mario/ec.c:190:31: error: passing 'char *' to parameter of type 'uint8_t *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
        io_read8(intf, mbx_base + 1, &version[2]);
                                     ^~~~~~~~~~~
../mosys-9999/include/intf/io.h:125:62: note: passing argument to parameter 'data' here
io_read8(struct platform_intf *intf,  uint16_t reg, uint8_t *data)
                                                             ^
../mosys-9999/platform/mario/ec.c:193:31: error: passing 'char *' to parameter of type 'uint8_t *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
        io_read8(intf, mbx_base + 1, &version[3]);
                                     ^~~~~~~~~~~
../mosys-9999/include/intf/io.h:125:62: note: passing argument to parameter 'data' here
io_read8(struct platform_intf *intf,  uint16_t reg, uint8_t *data)
                                                             ^

BUG= chromium:838349 
TEST=build

Change-Id: I35af36dd18546c89e086f21250b1887584289f93
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1036354
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/9dc0a883a515eab4904a7b3eac42ce02acd678fb/platform/mario/ec.c

Project Member

Comment 26 by bugdroid1@chromium.org, May 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/e8fdeea7cc68d4a790146c5e1a419f9834b7a7a5

commit e8fdeea7cc68d4a790146c5e1a419f9834b7a7a5
Author: Brian Norris <briannorris@chromium.org>
Date: Tue May 01 20:06:37 2018

spring: fix warning

../mosys-9999/platform/spring/sys.c:50:9: error: returning 'const char *' from a function with result type 'char *' discards qualifiers [-Werror,-Wincompatible-pointer-types-discards-qualifiers]
        return (const char *)ret;
               ^~~~~~~~~~~~~~~~~

BUG= chromium:838349 
TEST=build

Change-Id: I175c98a15b56d2b3f6adb5ee5f9105461bf9fd0e
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1036355
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/e8fdeea7cc68d4a790146c5e1a419f9834b7a7a5/platform/spring/sys.c

Project Member

Comment 27 by bugdroid1@chromium.org, May 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/b303347ca0ad9092188ec30cea0ddc76cde05d18

commit b303347ca0ad9092188ec30cea0ddc76cde05d18
Author: Brian Norris <briannorris@chromium.org>
Date: Tue May 01 20:06:37 2018

stout: fix warning

../mosys-9999/platform/stout/ec.c:125:31: error: passing 'int8_t *' (aka 'signed char *') to parameter of type 'uint8_t *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
        return ec_command(intf, cmd, (int8_t *)&address, 1,
                                     ^~~~~~~~~~~~~~~~~~
../mosys-9999/platform/stout/ec.c:86:13: note: passing argument to parameter 'input_data' here
                        uint8_t *input_data, uint8_t input_len,
                                 ^

BUG= chromium:838349 
TEST=build

Change-Id: I19d5c5967557cb55f4526ef4a9dfa2e8225e18e9
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1036356
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/b303347ca0ad9092188ec30cea0ddc76cde05d18/platform/stout/ec.c

Project Member

Comment 28 by bugdroid1@chromium.org, May 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/be075e31de875635db1f15f910d59bd1780b2931

commit be075e31de875635db1f15f910d59bd1780b2931
Author: Brian Norris <briannorris@chromium.org>
Date: Tue May 01 20:06:38 2018

zgb: fix warnings

../mosys-9999/platform/zgb/ec.c:156:27: error: passing 'char *' to parameter of type 'uint8_t *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
        io_read8(intf, mbx_data, &version[0]);
                                 ^~~~~~~~~~~
../mosys-9999/include/intf/io.h:125:62: note: passing argument to parameter 'data' here
io_read8(struct platform_intf *intf,  uint16_t reg, uint8_t *data)
                                                             ^
../mosys-9999/platform/zgb/ec.c:169:27: error: passing 'char *' to parameter of type 'uint8_t *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
        io_read8(intf, mbx_data, &version[2]);
                                 ^~~~~~~~~~~
../mosys-9999/include/intf/io.h:125:62: note: passing argument to parameter 'data' here
io_read8(struct platform_intf *intf,  uint16_t reg, uint8_t *data)
                                                             ^
../mosys-9999/platform/zgb/ec.c:180:27: error: passing 'char *' to parameter of type 'uint8_t *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
        io_read8(intf, mbx_data, &version[3]);
                                 ^~~~~~~~~~~
../mosys-9999/include/intf/io.h:125:62: note: passing argument to parameter 'data' here
io_read8(struct platform_intf *intf,  uint16_t reg, uint8_t *data)
                                                             ^

BUG= chromium:838349 
TEST=build

Change-Id: I51034e7f8a5ece56ff63f63b06ff8108a21023a5
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1036357
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/be075e31de875635db1f15f910d59bd1780b2931/platform/zgb/ec.c

Project Member

Comment 29 by bugdroid1@chromium.org, May 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/687f23297c7792700606bcc04329782c91384ba6

commit 687f23297c7792700606bcc04329782c91384ba6
Author: Brian Norris <briannorris@chromium.org>
Date: Tue May 01 20:06:38 2018

i2c: fix warnings

Some type conversion and 'const' issues. We mask the fact that "outdata"
should technically be 'const', except that the ioctl doesn't really
differentiate "in" and "out" data; for "indata", drop the 'const'.

../mosys-9999/intf/i2c.c:178:23: error: assigning to '__u8 *' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
                msg[data.nmsgs].buf = (char *)outdata;
                                    ^ ~~~~~~~~~~~~~~~
../mosys-9999/intf/i2c.c:187:23: error: assigning to '__u8 *' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Werror,-Wpointer-sign]
                msg[data.nmsgs].buf = (char *)indata;
                                    ^ ~~~~~~~~~~~~~~

BUG= chromium:838349 
TEST=build

Change-Id: Icb26253aa2aa2c91d9d33818d8788b3a0d7dfe3a
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1036358
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/687f23297c7792700606bcc04329782c91384ba6/include/intf/i2c.h
[modify] https://crrev.com/687f23297c7792700606bcc04329782c91384ba6/intf/i2c.c

Project Member

Comment 30 by bugdroid1@chromium.org, May 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/2dce4198d88907cc8d2d4007d872ab733f9fbb9e

commit 2dce4198d88907cc8d2d4007d872ab733f9fbb9e
Author: Brian Norris <briannorris@chromium.org>
Date: Tue May 01 20:06:39 2018

exynos/gpio: fix warning

These 'baseaddr' fields are storing I/O addresses, so it makes sense to
keep them wide enough to hold a proper pointer -- which also resolves
this warnings when we try to cast the I/O address to a struct:

../mosys-9999/drivers/samsung/gpio.c:84:9: error: cast to 'struct exynos_gpio_regs *' from smaller integer type 'uint32_t' (aka 'unsigned int') [-Werror,-Wint-to-pointer-cast]
        regs = (struct exynos_gpio_regs *)bank->baseaddr;
               ^

BUG= chromium:838349 
TEST=build

Change-Id: I54356ac1fad87588043b81aea7da57db14fec63f
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1036359
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/2dce4198d88907cc8d2d4007d872ab733f9fbb9e/include/drivers/samsung/exynos_generic.h

Project Member

Comment 31 by bugdroid1@chromium.org, May 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/d7e76a8580305cd815e44fac5f33834434d34440

commit d7e76a8580305cd815e44fac5f33834434d34440
Author: Brian Norris <briannorris@chromium.org>
Date: Tue May 01 20:06:39 2018

oak: drop 'id_list' support

The 'id_list' field is not really needed unless you want to support
skipping the autodetection. Many other platforms don't support this
properly it seems, so let's just skip it rather than leaving a buggy
version.

Noticed by:

../mosys-9999/platform/oak/oak.c:153:13: error: incompatible pointer types initializing 'const char **' with an expression of type 'struct oak_probe_id [4]' [-Werror,-Wincompatible-pointer-types]
        .id_list        = oak_id_list,
                          ^~~~~~~~~~~

BUG= chromium:838349 
TEST=build

Change-Id: Icfd7bab0fc0aa2f741acb80accae231f72bcc84f
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1036360
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/d7e76a8580305cd815e44fac5f33834434d34440/platform/oak/oak.c

Project Member

Comment 32 by bugdroid1@chromium.org, May 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/e11e08f4a8b1dc255f434a26bfd2ab936171d33f

commit e11e08f4a8b1dc255f434a26bfd2ab936171d33f
Author: Brian Norris <briannorris@chromium.org>
Date: Tue May 01 20:06:40 2018

build: disable '-Waddress-of-packed-member'

clang's 'address-of-packed-member' warning doesn't like this
'address-of' operation. It's perfectly safe, since these fields are all
32 bits.

../mosys-9999/drivers/samsung/gpio.c:191:43: warning: taking address of packed member 'con' of class or structure 'exynos_gpio_regs' may result in an unaligned pointer value [-Waddress-of-packed-member]
                if (mmio_read32(intf, baseaddr + 0x00, &regs.con) < 0)
                                                        ^~~~~~~~

Let's just disable the warning. (This is what the Linux kernel does this
for its clang builds.)

BUG= chromium:838349 
TEST=build

Change-Id: Ib74277eddf5554a4fe5401cdab2986af99f75cf1
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1036361
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/e11e08f4a8b1dc255f434a26bfd2ab936171d33f/meson.build

I thought I'd log it here, since it's relevant to $subject:

I've hit a few late failures that apparently I didn't catch already on this CL:

https://chromium-review.googlesource.com/c/chromiumos/platform/mosys/+/1036362

Because this didn't fail most of its paladins for the last few days (it only had to retry because of unrelated failures), and because I can't reproduce this on my tree that was synced from last week...I'm suspecting that some sort of toolchain updates (or default toolchain flags?) are exposing new warning types that are hitting us here.

I think we have to live with that sort of problem if we're going to use -Werror on a project. At least once I finally get that landed, it should mostly get caught by the actual toolchain changes, and not by random mosys CLs.
Project Member

Comment 34 by bugdroid1@chromium.org, May 8 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/fe3b826a9926625b5b471144579f8ead23e0b8b6

commit fe3b826a9926625b5b471144579f8ead23e0b8b6
Author: Brian Norris <briannorris@chromium.org>
Date: Tue May 08 00:23:57 2018

cros_config: fix 'const' warning

../mosys-9999/lib/cros_config/cros_config_struct.c:70:28: error: passing 'const char *const *' to parameter of type 'const char **' discards qualifiers [-Werror,-Wincompatible-pointer-types-discards-qualifiers]
                    probe_fdt_compatible(&config->device_tree_compatible_match,
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../mosys-9999/include/lib/probe.h:136:45: note: passing argument to parameter 'id_list' here
extern int probe_fdt_compatible(const char *id_list[],
                                            ^

BUG= chromium:838349 
TEST=build for rainier

Change-Id: I4ab818efce8c080f2f9ad724ff11014f58121a40
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1038818
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/fe3b826a9926625b5b471144579f8ead23e0b8b6/lib/misc/probe.c
[modify] https://crrev.com/fe3b826a9926625b5b471144579f8ead23e0b8b6/include/lib/probe.h

Project Member

Comment 36 by bugdroid1@chromium.org, May 9 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/402d832c9df144dd146d198bfc3cc29887764689

commit 402d832c9df144dd146d198bfc3cc29887764689
Author: Brian Norris <briannorris@chromium.org>
Date: Wed May 09 21:39:55 2018

build: enable -Werror

All warnings should be fixed. Let's not introduce more.

BUG= chromium:838349 
TEST=build

Change-Id: Ic86b358a5056a78e156793acd7818490766c754c
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1036362
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/402d832c9df144dd146d198bfc3cc29887764689/meson.build

Project Member

Comment 37 by bugdroid1@chromium.org, May 9 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/479ac437b80d84fcd78226a903b6ad3d34429241

commit 479ac437b80d84fcd78226a903b6ad3d34429241
Author: Brian Norris <briannorris@chromium.org>
Date: Wed May 09 21:39:54 2018

ddr2: fix potential snprintf() overflows

From builder:

 ../mosys-1.2.3/lib/spd/ddr2.c:345:54: error: call to snprintf may overflow the destination buffer [-Werror,-Wuser-defined-warnings]
                         snprintf(tmp, sizeof(speeds), " %s-%s", clock, cas);
                                                                           ^

 ../mosys-1.2.3/lib/spd/ddr2.c:355:54: error: call to snprintf may overflow the destination buffer [-Werror,-Wuser-defined-warnings]
                         snprintf(tmp, sizeof(speeds), " %s-%s", clock, cas);
                                                                           ^

Note that I can't reproduce these locally. Perhaps some toolchain
difference.

BUG= chromium:838349 
TEST=build

Change-Id: I19f3b9971f76b4d952c5db3d36c22d6b972deded
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1049046
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/479ac437b80d84fcd78226a903b6ad3d34429241/lib/spd/ddr2.c

Project Member

Comment 38 by bugdroid1@chromium.org, May 9 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/8325291cddbd84a9c071d9497187d298039d37ca

commit 8325291cddbd84a9c071d9497187d298039d37ca
Author: Brian Norris <briannorris@chromium.org>
Date: Wed May 09 21:39:54 2018

intf/i2c: fix fgets() error handling

../mosys-1.2.3/intf/i2c.c:627:4: error: ignoring return value of function declared with 'warn_unused_result' attribute [-Werror,-Wunused-result]
                        fgets(s, sizeof(s), fp);
                        ^~~~~ ~~~~~~~~~~~~~~~~

Note that I can't reproduce the exact builder failure above. Perhaps
some toolchain differences?

BUG= chromium:838349 
TEST=build

Change-Id: Id058da35c3ebbb363b72cf088740753f440e4386
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1049047
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/8325291cddbd84a9c071d9497187d298039d37ca/intf/i2c.c

Project Member

Comment 39 by bugdroid1@chromium.org, May 9 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/43716d0c770dc4d75b74819e2ad4b7172bb99c92

commit 43716d0c770dc4d75b74819e2ad4b7172bb99c92
Author: Brian Norris <briannorris@chromium.org>
Date: Wed May 09 21:39:55 2018

misc/probe: fix fgets() error handling

x86_64-cros-linux-gnu-clang -O2 -pipe -O2 -pipe -g -fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables -clang-syntax -Imosys@sta -I. -I../mosys-1.2.3 -I../mosys-1.2.3/include -I/build/lakitu/usr/include/uuid -Xclang -fcolor-diagnostics -pipe -D_FILE_OFFSET_BITS=64 -include config.h -std=gnu99 -Wno-address-of-packed-member -Werror -fPIC -MMD -MQ 'mosys@sta/lib_misc_probe.c.o' -MF 'mosys@sta/lib_misc_probe.c.o.d' -o 'mosys@sta/lib_misc_probe.c.o' -c ../mosys-1.2.3/lib/misc/probe.c
../mosys-1.2.3/lib/misc/probe.c:271:2: error: ignoring return value of function declared with 'warn_unused_result' attribute [-Werror,-Wunused-result]
        fgets(model_name, PATH_MAX, file);
        ^~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~

Note that I can't reproduce the exact builder failure above. Perhaps
some toolchain differences?

BUG= chromium:838349 
TEST=build

Change-Id: I3da1c4e34221a778a5ae62b6cae2def9023f854e
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1049048
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/43716d0c770dc4d75b74819e2ad4b7172bb99c92/lib/misc/probe.c

Status: Fixed (was: Started)
Project Member

Comment 41 by bugdroid1@chromium.org, May 14 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/7842154747adec2e4c33d4bf7a95af98685ecaf5

commit 7842154747adec2e4c33d4bf7a95af98685ecaf5
Author: Jason D. Clinton <jclinton@chromium.org>
Date: Mon May 14 22:32:37 2018

Fix unused variable warning on newer Clang

[46/195] Compiling C object 'mosys@sta/platform_gru_gru.c.o'.
../platform/gru/gru.c:57:24: warning: unused variable 'probed_board'
[-Wunused-variable]
static enum gru_boards probed_board = UNKNOWN;
                       ^

BUG= chromium:838349 
TEST=build and test with CROS_CONFIG enabled and disabled

Change-Id: I299608578a1a3f7c89ee2b1831e0e36443aaec0e
Reviewed-on: https://chromium-review.googlesource.com/1056258
Commit-Ready: Jason Clinton <jclinton@chromium.org>
Tested-by: Jason Clinton <jclinton@chromium.org>
Reviewed-by: Brian Norris <briannorris@chromium.org>

[modify] https://crrev.com/7842154747adec2e4c33d4bf7a95af98685ecaf5/platform/gru/gru.c

Project Member

Comment 42 by bugdroid1@chromium.org, May 14 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/83baf4394cb6d5d039d5af6e18d65d31533b1edb

commit 83baf4394cb6d5d039d5af6e18d65d31533b1edb
Author: Jason D. Clinton <jclinton@chromium.org>
Date: Mon May 14 22:32:37 2018

Remove unused variable found on newer Clang

[255/317] Compiling C object 'mosys@sta/platform_skate_memory.c.o'.
../platform/skate/memory.c:154:22: warning: unused variable
'nanya_ddr3_1600_spd' [-Wunused-const-variable]
static const uint8_t nanya_ddr3_1600_spd[SPD_MAX_LENGTH] = {
                     ^

BUG= chromium:838349 
TEST=build and compile

Change-Id: I8596b8201751d21ef711ed4193a1bd7d9d0dec0c
Reviewed-on: https://chromium-review.googlesource.com/1056259
Commit-Ready: Jason Clinton <jclinton@chromium.org>
Tested-by: Jason Clinton <jclinton@chromium.org>
Reviewed-by: Brian Norris <briannorris@chromium.org>

[modify] https://crrev.com/83baf4394cb6d5d039d5af6e18d65d31533b1edb/platform/skate/memory.c

Project Member

Comment 43 by bugdroid1@chromium.org, May 14 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/mosys/+/eccfa274d4f5c28060d0f34f6a07571a60e9cb6f

commit eccfa274d4f5c28060d0f34f6a07571a60e9cb6f
Author: Jason D. Clinton <jclinton@chromium.org>
Date: Mon May 14 22:32:38 2018

Update docs to explain that we only investigated Clang warnings

BUG= chromium:838349 
TEST=none

Change-Id: Icac660ece14445a2a11ba5b0eb6ef6884c578119
Reviewed-on: https://chromium-review.googlesource.com/1056260
Commit-Ready: Jason Clinton <jclinton@chromium.org>
Tested-by: Jason Clinton <jclinton@chromium.org>
Reviewed-by: Jason Clinton <jclinton@chromium.org>
Reviewed-by: Brian Norris <briannorris@chromium.org>

[modify] https://crrev.com/eccfa274d4f5c28060d0f34f6a07571a60e9cb6f/README

Sign in to add a comment