The MESON_AO_RPROC_SRAM_USABLE_BITS macro is used like this: if (priv->sram_pa & ~MESON_AO_RPROC_SRAM_USABLE_BITS) { dev_err(dev, "SRAM address contains unusable bits\n"); The problem is that "->sram_pa" is type phys_addr_t which is potentially 64 bits. That means the MESON_AO_RPROC_SRAM_USABLE_BITS macro needs to be a 64 bit type as well to ensure that high 32 bits are cleared. Fixes: 6cb58ea897dd ("remoteproc: meson-mx-ao-arc: Add a driver for the AO ARC remote procesor") Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx> --- drivers/remoteproc/meson_mx_ao_arc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/remoteproc/meson_mx_ao_arc.c b/drivers/remoteproc/meson_mx_ao_arc.c index 3d8f927ae448..462cddab6518 100644 --- a/drivers/remoteproc/meson_mx_ao_arc.c +++ b/drivers/remoteproc/meson_mx_ao_arc.c @@ -39,7 +39,7 @@ #define AO_SECURE_REG0_AHB_SRAM_BITS_19_12 GENMASK(15, 8) /* Only bits [31:20] and [17:14] are usable, all other bits must be zero */ -#define MESON_AO_RPROC_SRAM_USABLE_BITS 0xfff3c000 +#define MESON_AO_RPROC_SRAM_USABLE_BITS 0xfff3c000ULL #define MESON_AO_RPROC_MEMORY_OFFSET 0x10000000 -- 2.20.1