Skip to content
  • Marek Vasut's avatar
    ARM: imx: bootaux: Fix LTO -Wlto-type-mismatch · 3f7afddc
    Marek Vasut authored and Stefano Babic's avatar Stefano Babic committed
    Commit 56c2dbda ("imx: bootaux: cleanup code") introduces the
    following LTO related warning:
    
    "
    arch/arm/mach-imx/imx_bootaux.c:24:31: warning: type of ‘hostmap’ does not match original declaration [-Wlto-type-mismatch]
       24 | const __weak struct rproc_att hostmap[] = { };
          |                               ^
    arch/arm/mach-imx/imx8m/soc.c:1590:24: note: array types have different bounds
     1590 | const struct rproc_att hostmap[] = {
          |                        ^
    arch/arm/mach-imx/imx8m/soc.c:1590:24: note: ‘hostmap’ was previously declared here
    ../aarch64-linux-gnu/bin/ld: warning: u-boot has a LOAD segment with RWX permissions
    "
    
    This is because the weak empty array of structures "hostmap" is eventually
    replaced by non-empty array of structures with different number of elements.
    Fix this by avoiding weak variable size array, instead use a weak function
    which returns single pointer to the array.
    
    Fixes: 56c2dbda
    
     ("imx: bootaux: cleanup code")
    Signed-off-by: default avatarMarek Vasut <marex@denx.de>
    Reviewed-by: Peng Fan's avatarPeng Fan <peng.fan@nxp.com>
    3f7afddc