Message ID | 1424876342-12200-1-git-send-email-abrodkin@synopsys.com |
---|---|
State | Accepted |
Delegated to: | Tom Rini |
Headers | show |
On 25 February 2015 at 07:59, Alexey Brodkin <Alexey.Brodkin@synopsys.com> wrote: > In case of global data structure defined as "register volatile" compiler > throws an warning about incorrect type used: > --->8--- > common/board_f.c: In function "board_init_f_r": > common/board_f.c:1073:2: warning: passing argument 1 of "&board_init_r > +(sizetype)gd->reloc_off" discards "volatile" qualifier from pointer > target type [enabled by default] > (board_init_r + gd->reloc_off)(gd, gd->relocaddr); > ^ > common/board_f.c:1073:2: note: expected "struct gd_t *" but argument is > of type "volatile struct gd_t *" > --->8--- > > An obvious fix is manual casting to "gd_t *". > > Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com> > Cc: Simon Glass <sjg@chromium.org> > Cc: Tom Rini <trini@ti.com> > --- > common/board_f.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > Acked-by: Simon Glass <sjg@chromium.org>
On Wed, Feb 25, 2015 at 05:59:02PM +0300, Alexey Brodkin wrote: > In case of global data structure defined as "register volatile" compiler > throws an warning about incorrect type used: > --->8--- > common/board_f.c: In function "board_init_f_r": > common/board_f.c:1073:2: warning: passing argument 1 of "&board_init_r > +(sizetype)gd->reloc_off" discards "volatile" qualifier from pointer > target type [enabled by default] > (board_init_r + gd->reloc_off)(gd, gd->relocaddr); > ^ > common/board_f.c:1073:2: note: expected "struct gd_t *" but argument is > of type "volatile struct gd_t *" > --->8--- > > An obvious fix is manual casting to "gd_t *". > > Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com> > Cc: Simon Glass <sjg@chromium.org> > Cc: Tom Rini <trini@ti.com> > Acked-by: Simon Glass <sjg@chromium.org> Applied to u-boot/master, thanks!
diff --git a/common/board_f.c b/common/board_f.c index a1dcc5f..96a23ae 100644 --- a/common/board_f.c +++ b/common/board_f.c @@ -1070,7 +1070,7 @@ void board_init_f_r(void) * Transfer execution from Flash to RAM by calculating the address * of the in-RAM copy of board_init_r() and calling it */ - (board_init_r + gd->reloc_off)(gd, gd->relocaddr); + (board_init_r + gd->reloc_off)((gd_t *)gd, gd->relocaddr); /* NOTREACHED - board_init_r() does not return */ hang();
In case of global data structure defined as "register volatile" compiler throws an warning about incorrect type used: --->8--- common/board_f.c: In function "board_init_f_r": common/board_f.c:1073:2: warning: passing argument 1 of "&board_init_r +(sizetype)gd->reloc_off" discards "volatile" qualifier from pointer target type [enabled by default] (board_init_r + gd->reloc_off)(gd, gd->relocaddr); ^ common/board_f.c:1073:2: note: expected "struct gd_t *" but argument is of type "volatile struct gd_t *" --->8--- An obvious fix is manual casting to "gd_t *". Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com> Cc: Simon Glass <sjg@chromium.org> Cc: Tom Rini <trini@ti.com> --- common/board_f.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)