--- a/drivers/mtd/devices/ubi32-m25p80.c +++ b/drivers/mtd/devices/ubi32-m25p80.c @@ -630,8 +630,8 @@ static int ubicom32_flash_driver_erase(s /* sanity checks */ if (instr->addr + instr->len > flash->mtd.size) return -EINVAL; - if ((instr->addr % mtd->erasesize) != 0 - || (instr->len % mtd->erasesize) != 0) { + if (((u32) instr->addr % mtd->erasesize) != 0 + || ((u32) instr->len % mtd->erasesize) != 0) { return -EINVAL; }