Hello Ahmad, On Thu, Aug 15, 2024 at 08:56:46AM +0200, Ahmad Fatoum wrote: > 64-bit division on 32-bit platforms is normally handled by libgcc, > which, like the kernel, we don't link against in barebox. > > Instead we have a number of division helpers that should be used for > 64-bit division, which either expand to a normal division if possible or > to an out-of-line division. Make use of this to fix compilation for > 32-bit. Thanks for hint. > > Cc: Tomas Marek <tomas.marek@xxxxxxxxx> > Signed-off-by: Ahmad Fatoum <a.fatoum@xxxxxxxxxxxxxx> > --- > This replaces "i2c: efi: avoid 64-bit division" > --- > drivers/i2c/busses/i2c-efi.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/i2c/busses/i2c-efi.c b/drivers/i2c/busses/i2c-efi.c > index 5f6cc0eed28e..4c58279e0398 100644 > --- a/drivers/i2c/busses/i2c-efi.c > +++ b/drivers/i2c/busses/i2c-efi.c > @@ -114,7 +114,7 @@ static unsigned int efi_i2c_msg_op_cnt(const struct efi_i2c_priv *i2c_priv, > > max_len = efi_i2c_max_len(i2c_priv, msg); > > - return ((u64)msg->len + max_len - 1) / max_len; > + return DIV_ROUND_UP_ULL(msg->len, max_len); It looks good to me. Best regards Tomas > } > > static unsigned int efi_i2c_req_op_cnt( > -- > 2.39.2 >