Messages in this thread | | | From | Chunfeng Yun (云春峰) <> | Subject | Re: [PATCH v6 1/3] phy: mediatek: fix build warning caused by clang | Date | Mon, 16 Jan 2023 07:24:48 +0000 |
| |
On Fri, 2023-01-13 at 23:42 +0530, Vinod Koul wrote: > On 04-01-23, 21:26, Chunfeng Yun wrote: > > Remove the temporary @mask_, this may cause build warning when use > > clang > > compiler for powerpc, but can't reproduce it when compile for > > arm64. > > the build warning is -Wtautological-constant-out-of-range-compare, > > and > > caused by > > "BUILD_BUG_ON_MSG(__bf_cast_unsigned(_mask, _mask)" > > > > After removing @mask_, there is a "CHECK:MACRO_ARG_REUSE" when run > > checkpatch.pl, due to @mask is constant, no reuse problem will > > happen. > > > > Fixes: 84513eccd678 ("phy: mediatek: fix build warning of > > FIELD_PREP()") > > Reported-by: kernel test robot <lkp@intel.com> > > Signed-off-by: Chunfeng Yun <chunfeng.yun@mediatek.com> > > --- > > v6: modify the title > > Title still does not tell what this patch is.. It tells me effect of > the > patch but not the changes, pls revise... > > "remove temp mask" can be better title Got it, will modify it in next version, thanks
> > > v5: no changes > > v4 new patch, I'm not sure it can fix build warning, due to I don't > > cross compile > > it for powerpc using clang in office. > > --- > > drivers/phy/mediatek/phy-mtk-io.h | 4 ++-- > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/drivers/phy/mediatek/phy-mtk-io.h > > b/drivers/phy/mediatek/phy-mtk-io.h > > index d20ad5e5be81..58f06db822cb 100644 > > --- a/drivers/phy/mediatek/phy-mtk-io.h > > +++ b/drivers/phy/mediatek/phy-mtk-io.h > > @@ -39,8 +39,8 @@ static inline void mtk_phy_update_bits(void > > __iomem *reg, u32 mask, u32 val) > > /* field @mask shall be constant and continuous */ > > #define mtk_phy_update_field(reg, mask, val) \ > > ({ \ > > - typeof(mask) mask_ = (mask); \ > > - mtk_phy_update_bits(reg, mask_, FIELD_PREP(mask_, val)); \ > > + BUILD_BUG_ON_MSG(!__builtin_constant_p(mask), "mask is not > > constant"); \ > > + mtk_phy_update_bits(reg, mask, FIELD_PREP(mask, val)); \ > > }) > > > > #endif > > -- > > 2.18.0 > >
| |