Re: [PATCH net-next v7 5/6] stmmac: dwmac-mediatek: add support for mt8195

Jakub Kicinski
2021-12-09T01:53:29Z

On Thu, 9 Dec 2021 09:48:25 +0800 Biao Huang wrote:
> Sorry for some typo in previous reply, fix it here.
>
> All these warning lines share a similar semantics:
> delay_val |= FIELD_PREP(xxx, !!val);
>
> and, should come from the expansion of FIELD_PREP in
> include/linux/bitfiled.h:
>
> FIELD _PREP --> __BF_FILED_CHECK --> "~((_mask) >> __bf_shf(_mask)) &
> (_val) : 0,"
>
> ===============================================================
> __BF_FILED_CHECK {
> ...
> BUILD_BUG_ON_MSG(__builtin_constant_p(_val) ? \
> ~((_mask) >> __bf_shf(_mask)) & (_val) : 0, \
> _pfx "value too large for the field"); \ ...
> ===============================================================
>
> Should I fix it by converting
> delay_val |= FIELD_PREP(ETH_DLY_TXC_ENABLE, !!mac_delay->tx_delay);
> to
> en_val = !!mac_delay->tx_delay;
> delay_val |= FIELD_PREP(ETH_DLY_TXC_ENABLE, en_val);
>
> or other suggestions for these warnings?

I see, thanks for explaining. The code is fine, we can simply ignore
this warning IMHO.