Re: linux-next: Tree for May 9 (i2c/busses/i2c-mlxbf.c)
From: Randy Dunlap
Date: Fri May 09 2025 - 20:19:05 EST
On 5/9/25 2:58 AM, Stephen Rothwell wrote:
> Hi all,
>
> Changes since 20250508:
>
on i386:
ld: drivers/i2c/busses/i2c-mlxbf.o: in function `mlxbf_i2c_set_timings':
i2c-mlxbf.c:(.text+0x67): undefined reference to `__udivdi3'
ld: i2c-mlxbf.c:(.text+0x8a): undefined reference to `__udivdi3'
ld: i2c-mlxbf.c:(.text+0xc7): undefined reference to `__udivdi3'
ld: i2c-mlxbf.c:(.text+0xeb): undefined reference to `__udivdi3'
ld: i2c-mlxbf.c:(.text+0x112): undefined reference to `__udivdi3'
ld: drivers/i2c/busses/i2c-mlxbf.o: in function `mlxbf_i2c_calculate_freq_from_tyu':
i2c-mlxbf.c:(.text+0x194): undefined reference to `__udivdi3'
ld: drivers/i2c/busses/i2c-mlxbf.o: in function `mlxbf_i2c_calculate_freq_from_yu':
i2c-mlxbf.c:(.text+0x1e0): undefined reference to `__udivdi3'
These come fromm using '/' instead of one of the kernel's DIV macros when using
u64 or ULL data types.
in mlxbf_i2c_get_ticks():
ticks = (nanoseconds * frequency) / MLXBF_I2C_FREQUENCY_1GHZ;
in mlxbf_i2c_calculate_freq_from_yu():
corepll_frequency = (MLXBF_I2C_PLL_IN_FREQ * core_f) / MLNXBF_I2C_COREPLL_CONST;
corepll_frequency /= (++core_r) * (++core_od);
in mlxbf_i2c_calculate_freq_from_tyu():
core_frequency /= (++core_r) * (++core_od);
commit 37f071ec327b0 ("i2c: mlxbf: Fix frequency calculation")
--
~Randy