Re: linux-next: Tree for Apr 17 (mmc/host/sdhci-of-at91.c)

From: Masahiro Yamada
Date: Mon Apr 20 2020 - 08:28:57 EST


On Mon, Apr 20, 2020 at 7:28 PM Adrian Hunter <adrian.hunter@xxxxxxxxx> wrote:
>
> On 20/04/20 12:12 pm, Ulf Hansson wrote:
> > + Masahiro Yamada, Adrian Hunter
> >
> > On Fri, 17 Apr 2020 at 16:48, Randy Dunlap <rdunlap@xxxxxxxxxxxxx> wrote:
> >>
> >> On 4/16/20 9:50 PM, Stephen Rothwell wrote:
> >>> Hi all,
> >>>
> >>> Changes since 20200416:
> >>>
> >>
> >> on i386:
> >>
> >> CC drivers/mmc/host/sdhci-of-at91.o
> >> In file included from ../include/linux/build_bug.h:5:0,
> >> from ../include/linux/bitfield.h:10,
> >> from ../drivers/mmc/host/sdhci-of-at91.c:9:
> >> ../drivers/mmc/host/sdhci-of-at91.c: In function âsdhci_at91_set_clks_presetsâ:
> >> ../include/linux/compiler.h:394:38: error: call to â__compiletime_assert_63â declared with attribute error: FIELD_PREP: value too large for the field
> >> _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
> >> ^
> >> ../include/linux/compiler.h:375:4: note: in definition of macro â__compiletime_assertâ
> >> prefix ## suffix(); \
> >> ^~~~~~
> >> ../include/linux/compiler.h:394:2: note: in expansion of macro â_compiletime_assertâ
> >> _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
> >> ^~~~~~~~~~~~~~~~~~~
> >> ../include/linux/build_bug.h:39:37: note: in expansion of macro âcompiletime_assertâ
> >> #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
> >> ^~~~~~~~~~~~~~~~~~
> >> ../include/linux/bitfield.h:49:3: note: in expansion of macro âBUILD_BUG_ON_MSGâ
> >> BUILD_BUG_ON_MSG(__builtin_constant_p(_val) ? \
> >> ^~~~~~~~~~~~~~~~
> >> ../include/linux/bitfield.h:94:3: note: in expansion of macro â__BF_FIELD_CHECKâ
> >> __BF_FIELD_CHECK(_mask, 0ULL, _val, "FIELD_PREP: "); \
> >> ^~~~~~~~~~~~~~~~
> >> ../drivers/mmc/host/sdhci-of-at91.c:185:11: note: in expansion of macro âFIELD_PREPâ
> >> caps1 |= FIELD_PREP(SDHCI_CLOCK_MUL_MASK, clk_mul);
>
> My guess is the compiler has decided clk_mul is constant (probably (unsigned
> int)-1) because there is no CONFIG_COMMON_CLK i.e. clk_get_rate() is 0
>
> So maybe add to config MMC_SDHCI_OF_AT91
>
> depends on COMMON_CLK
>
> >> ^~~~~~~~~~



I checked include/linux/clk.h


clk_get_rate() is guarded by CONFIG_HAVE_CLK.

I think

depends on HAVE_CLK


--
Best Regards
Masahiro Yamada