From: kbuild test robot <lkp@intel.com>
To: Hans de Goede <hdegoede@redhat.com>
Cc: kbuild-all@01.org,
Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
Lee Jones <lee.jones@linaro.org>,
Hans de Goede <hdegoede@redhat.com>,
linux-kernel@vger.kernel.org, Bin Gao <bin.gao@intel.com>,
Felipe Balbi <felipe.balbi@linux.intel.com>
Subject: Re: [PATCH v6] mfd: Add Cherry Trail Whiskey Cove PMIC driver
Date: Tue, 28 Mar 2017 02:05:31 +0800 [thread overview]
Message-ID: <201703280258.ToMOiMwO%fengguang.wu@intel.com> (raw)
In-Reply-To: <20170327132744.9017-1-hdegoede@redhat.com>
[-- Attachment #1: Type: text/plain, Size: 28108 bytes --]
Hi Hans,
[auto build test ERROR on ljones-mfd/for-mfd-next]
[also build test ERROR on v4.11-rc4 next-20170327]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
url: https://github.com/0day-ci/linux/commits/Hans-de-Goede/mfd-Add-Cherry-Trail-Whiskey-Cove-PMIC-driver/20170327-235905
base: https://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd.git for-mfd-next
config: ia64-allmodconfig (attached as .config)
compiler: ia64-linux-gcc (GCC) 6.2.0
reproduce:
wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# save the attached .config to linux build tree
make.cross ARCH=ia64
All error/warnings (new ones prefixed by >>):
>> drivers//clocksource/timer-sun5i.c:52:21: error: field 'clksrc' has incomplete type
struct clocksource clksrc;
^~~~~~
>> drivers//clocksource/timer-sun5i.c:60:28: error: field 'clkevt' has incomplete type
struct clock_event_device clkevt;
^~~~~~
In file included from include/linux/clk.h:16:0,
from drivers//clocksource/timer-sun5i.c:13:
drivers//clocksource/timer-sun5i.c: In function 'sun5i_clkevt_shutdown':
>> include/linux/kernel.h:852:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
>> drivers//clocksource/timer-sun5i.c:64:2: note: in expansion of macro 'container_of'
container_of(x, struct sun5i_timer_clkevt, clkevt)
^~~~~~~~~~~~
>> drivers//clocksource/timer-sun5i.c:108:34: note: in expansion of macro 'to_sun5i_timer_clkevt'
struct sun5i_timer_clkevt *ce = to_sun5i_timer_clkevt(clkevt);
^~~~~~~~~~~~~~~~~~~~~
include/linux/kernel.h:852:48: note: (near initialization for 'ce')
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
>> drivers//clocksource/timer-sun5i.c:64:2: note: in expansion of macro 'container_of'
container_of(x, struct sun5i_timer_clkevt, clkevt)
^~~~~~~~~~~~
>> drivers//clocksource/timer-sun5i.c:108:34: note: in expansion of macro 'to_sun5i_timer_clkevt'
struct sun5i_timer_clkevt *ce = to_sun5i_timer_clkevt(clkevt);
^~~~~~~~~~~~~~~~~~~~~
drivers//clocksource/timer-sun5i.c: In function 'sun5i_clkevt_set_oneshot':
>> include/linux/kernel.h:852:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
>> drivers//clocksource/timer-sun5i.c:64:2: note: in expansion of macro 'container_of'
container_of(x, struct sun5i_timer_clkevt, clkevt)
^~~~~~~~~~~~
drivers//clocksource/timer-sun5i.c:116:34: note: in expansion of macro 'to_sun5i_timer_clkevt'
struct sun5i_timer_clkevt *ce = to_sun5i_timer_clkevt(clkevt);
^~~~~~~~~~~~~~~~~~~~~
include/linux/kernel.h:852:48: note: (near initialization for 'ce')
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
>> drivers//clocksource/timer-sun5i.c:64:2: note: in expansion of macro 'container_of'
container_of(x, struct sun5i_timer_clkevt, clkevt)
^~~~~~~~~~~~
drivers//clocksource/timer-sun5i.c:116:34: note: in expansion of macro 'to_sun5i_timer_clkevt'
struct sun5i_timer_clkevt *ce = to_sun5i_timer_clkevt(clkevt);
^~~~~~~~~~~~~~~~~~~~~
drivers//clocksource/timer-sun5i.c: In function 'sun5i_clkevt_set_periodic':
>> include/linux/kernel.h:852:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
>> drivers//clocksource/timer-sun5i.c:64:2: note: in expansion of macro 'container_of'
container_of(x, struct sun5i_timer_clkevt, clkevt)
^~~~~~~~~~~~
drivers//clocksource/timer-sun5i.c:125:34: note: in expansion of macro 'to_sun5i_timer_clkevt'
struct sun5i_timer_clkevt *ce = to_sun5i_timer_clkevt(clkevt);
^~~~~~~~~~~~~~~~~~~~~
include/linux/kernel.h:852:48: note: (near initialization for 'ce')
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
>> drivers//clocksource/timer-sun5i.c:64:2: note: in expansion of macro 'container_of'
container_of(x, struct sun5i_timer_clkevt, clkevt)
^~~~~~~~~~~~
drivers//clocksource/timer-sun5i.c:125:34: note: in expansion of macro 'to_sun5i_timer_clkevt'
struct sun5i_timer_clkevt *ce = to_sun5i_timer_clkevt(clkevt);
^~~~~~~~~~~~~~~~~~~~~
drivers//clocksource/timer-sun5i.c: In function 'sun5i_clkevt_next_event':
>> include/linux/kernel.h:852:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
>> drivers//clocksource/timer-sun5i.c:64:2: note: in expansion of macro 'container_of'
container_of(x, struct sun5i_timer_clkevt, clkevt)
^~~~~~~~~~~~
drivers//clocksource/timer-sun5i.c:136:34: note: in expansion of macro 'to_sun5i_timer_clkevt'
struct sun5i_timer_clkevt *ce = to_sun5i_timer_clkevt(clkevt);
^~~~~~~~~~~~~~~~~~~~~
include/linux/kernel.h:852:48: note: (near initialization for 'ce')
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
>> drivers//clocksource/timer-sun5i.c:64:2: note: in expansion of macro 'container_of'
container_of(x, struct sun5i_timer_clkevt, clkevt)
^~~~~~~~~~~~
drivers//clocksource/timer-sun5i.c:136:34: note: in expansion of macro 'to_sun5i_timer_clkevt'
struct sun5i_timer_clkevt *ce = to_sun5i_timer_clkevt(clkevt);
^~~~~~~~~~~~~~~~~~~~~
drivers//clocksource/timer-sun5i.c: In function 'sun5i_clksrc_read':
>> include/linux/kernel.h:852:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
drivers//clocksource/timer-sun5i.c:56:2: note: in expansion of macro 'container_of'
container_of(x, struct sun5i_timer_clksrc, clksrc)
^~~~~~~~~~~~
>> drivers//clocksource/timer-sun5i.c:157:34: note: in expansion of macro 'to_sun5i_timer_clksrc'
struct sun5i_timer_clksrc *cs = to_sun5i_timer_clksrc(clksrc);
^~~~~~~~~~~~~~~~~~~~~
include/linux/kernel.h:852:48: note: (near initialization for 'cs')
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
drivers//clocksource/timer-sun5i.c:56:2: note: in expansion of macro 'container_of'
container_of(x, struct sun5i_timer_clksrc, clksrc)
^~~~~~~~~~~~
>> drivers//clocksource/timer-sun5i.c:157:34: note: in expansion of macro 'to_sun5i_timer_clksrc'
struct sun5i_timer_clksrc *cs = to_sun5i_timer_clksrc(clksrc);
^~~~~~~~~~~~~~~~~~~~~
drivers//clocksource/timer-sun5i.c: In function 'sun5i_rate_cb_clksrc':
>> drivers//clocksource/timer-sun5i.c:171:3: error: implicit declaration of function 'clocksource_unregister' [-Werror=implicit-function-declaration]
clocksource_unregister(&cs->clksrc);
^~~~~~~~~~~~~~~~~~~~~~
--
>> drivers//clocksource/cadence_ttc_timer.c:92:21: error: field 'cs' has incomplete type
struct clocksource cs;
^~
>> drivers//clocksource/cadence_ttc_timer.c:100:28: error: field 'ce' has incomplete type
struct clock_event_device ce;
^~
In file included from include/linux/clk.h:16:0,
from drivers//clocksource/cadence_ttc_timer.c:18:
drivers//clocksource/cadence_ttc_timer.c: In function '__ttc_clocksource_read':
>> include/linux/kernel.h:852:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
>> drivers//clocksource/cadence_ttc_timer.c:96:3: note: in expansion of macro 'container_of'
container_of(x, struct ttc_timer_clocksource, cs)
^~~~~~~~~~~~
>> drivers//clocksource/cadence_ttc_timer.c:163:29: note: in expansion of macro 'to_ttc_timer_clksrc'
struct ttc_timer *timer = &to_ttc_timer_clksrc(cs)->ttc;
^~~~~~~~~~~~~~~~~~~
include/linux/kernel.h:852:48: note: (near initialization for 'timer')
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
>> drivers//clocksource/cadence_ttc_timer.c:96:3: note: in expansion of macro 'container_of'
container_of(x, struct ttc_timer_clocksource, cs)
^~~~~~~~~~~~
>> drivers//clocksource/cadence_ttc_timer.c:163:29: note: in expansion of macro 'to_ttc_timer_clksrc'
struct ttc_timer *timer = &to_ttc_timer_clksrc(cs)->ttc;
^~~~~~~~~~~~~~~~~~~
drivers//clocksource/cadence_ttc_timer.c: In function 'ttc_set_next_event':
>> include/linux/kernel.h:852:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
drivers//clocksource/cadence_ttc_timer.c:104:3: note: in expansion of macro 'container_of'
container_of(x, struct ttc_timer_clockevent, ce)
^~~~~~~~~~~~
>> drivers//clocksource/cadence_ttc_timer.c:185:38: note: in expansion of macro 'to_ttc_timer_clkevent'
struct ttc_timer_clockevent *ttce = to_ttc_timer_clkevent(evt);
^~~~~~~~~~~~~~~~~~~~~
include/linux/kernel.h:852:48: note: (near initialization for 'ttce')
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
drivers//clocksource/cadence_ttc_timer.c:104:3: note: in expansion of macro 'container_of'
container_of(x, struct ttc_timer_clockevent, ce)
^~~~~~~~~~~~
>> drivers//clocksource/cadence_ttc_timer.c:185:38: note: in expansion of macro 'to_ttc_timer_clkevent'
struct ttc_timer_clockevent *ttce = to_ttc_timer_clkevent(evt);
^~~~~~~~~~~~~~~~~~~~~
drivers//clocksource/cadence_ttc_timer.c: In function 'ttc_shutdown':
>> include/linux/kernel.h:852:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
drivers//clocksource/cadence_ttc_timer.c:104:3: note: in expansion of macro 'container_of'
container_of(x, struct ttc_timer_clockevent, ce)
^~~~~~~~~~~~
drivers//clocksource/cadence_ttc_timer.c:199:38: note: in expansion of macro 'to_ttc_timer_clkevent'
struct ttc_timer_clockevent *ttce = to_ttc_timer_clkevent(evt);
^~~~~~~~~~~~~~~~~~~~~
include/linux/kernel.h:852:48: note: (near initialization for 'ttce')
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
drivers//clocksource/cadence_ttc_timer.c:104:3: note: in expansion of macro 'container_of'
container_of(x, struct ttc_timer_clockevent, ce)
^~~~~~~~~~~~
drivers//clocksource/cadence_ttc_timer.c:199:38: note: in expansion of macro 'to_ttc_timer_clkevent'
struct ttc_timer_clockevent *ttce = to_ttc_timer_clkevent(evt);
^~~~~~~~~~~~~~~~~~~~~
drivers//clocksource/cadence_ttc_timer.c: In function 'ttc_set_periodic':
>> include/linux/kernel.h:852:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
drivers//clocksource/cadence_ttc_timer.c:104:3: note: in expansion of macro 'container_of'
container_of(x, struct ttc_timer_clockevent, ce)
^~~~~~~~~~~~
drivers//clocksource/cadence_ttc_timer.c:211:38: note: in expansion of macro 'to_ttc_timer_clkevent'
struct ttc_timer_clockevent *ttce = to_ttc_timer_clkevent(evt);
^~~~~~~~~~~~~~~~~~~~~
include/linux/kernel.h:852:48: note: (near initialization for 'ttce')
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
drivers//clocksource/cadence_ttc_timer.c:104:3: note: in expansion of macro 'container_of'
container_of(x, struct ttc_timer_clockevent, ce)
^~~~~~~~~~~~
drivers//clocksource/cadence_ttc_timer.c:211:38: note: in expansion of macro 'to_ttc_timer_clkevent'
struct ttc_timer_clockevent *ttce = to_ttc_timer_clkevent(evt);
^~~~~~~~~~~~~~~~~~~~~
drivers//clocksource/cadence_ttc_timer.c: In function 'ttc_resume':
>> include/linux/kernel.h:852:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
drivers//clocksource/cadence_ttc_timer.c:104:3: note: in expansion of macro 'container_of'
container_of(x, struct ttc_timer_clockevent, ce)
^~~~~~~~~~~~
drivers//clocksource/cadence_ttc_timer.c:221:38: note: in expansion of macro 'to_ttc_timer_clkevent'
struct ttc_timer_clockevent *ttce = to_ttc_timer_clkevent(evt);
^~~~~~~~~~~~~~~~~~~~~
include/linux/kernel.h:852:48: note: (near initialization for 'ttce')
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
drivers//clocksource/cadence_ttc_timer.c:104:3: note: in expansion of macro 'container_of'
container_of(x, struct ttc_timer_clockevent, ce)
^~~~~~~~~~~~
drivers//clocksource/cadence_ttc_timer.c:221:38: note: in expansion of macro 'to_ttc_timer_clkevent'
struct ttc_timer_clockevent *ttce = to_ttc_timer_clkevent(evt);
^~~~~~~~~~~~~~~~~~~~~
drivers//clocksource/cadence_ttc_timer.c: In function 'ttc_setup_clocksource':
>> drivers//clocksource/cadence_ttc_timer.c:358:19: error: implicit declaration of function 'CLOCKSOURCE_MASK' [-Werror=implicit-function-declaration]
ttccs->cs.mask = CLOCKSOURCE_MASK(timer_width);
^~~~~~~~~~~~~~~~
>> drivers//clocksource/cadence_ttc_timer.c:359:20: error: 'CLOCK_SOURCE_IS_CONTINUOUS' undeclared (first use in this function)
ttccs->cs.flags = CLOCK_SOURCE_IS_CONTINUOUS;
^~~~~~~~~~~~~~~~~~~~~~~~~~
drivers//clocksource/cadence_ttc_timer.c:359:20: note: each undeclared identifier is reported only once for each function it appears in
>> drivers//clocksource/cadence_ttc_timer.c:372:8: error: implicit declaration of function 'clocksource_register_hz' [-Werror=implicit-function-declaration]
err = clocksource_register_hz(&ttccs->cs, ttccs->ttc.freq / PRESCALE);
^~~~~~~~~~~~~~~~~~~~~~~
drivers//clocksource/cadence_ttc_timer.c: In function 'ttc_rate_change_clockevent_cb':
>> drivers//clocksource/cadence_ttc_timer.c:398:3: error: implicit declaration of function 'clockevents_update_freq' [-Werror=implicit-function-declaration]
clockevents_update_freq(&ttcce->ce, ndata->new_rate / PRESCALE);
^~~~~~~~~~~~~~~~~~~~~~~
drivers//clocksource/cadence_ttc_timer.c: In function 'ttc_setup_clockevent':
>> drivers//clocksource/cadence_ttc_timer.c:441:23: error: 'CLOCK_EVT_FEAT_PERIODIC' undeclared (first use in this function)
ttcce->ce.features = CLOCK_EVT_FEAT_PERIODIC | CLOCK_EVT_FEAT_ONESHOT;
^~~~~~~~~~~~~~~~~~~~~~~
>> drivers//clocksource/cadence_ttc_timer.c:441:49: error: 'CLOCK_EVT_FEAT_ONESHOT' undeclared (first use in this function)
ttcce->ce.features = CLOCK_EVT_FEAT_PERIODIC | CLOCK_EVT_FEAT_ONESHOT;
^~~~~~~~~~~~~~~~~~~~~~
>> drivers//clocksource/cadence_ttc_timer.c:468:2: error: implicit declaration of function 'clockevents_config_and_register' [-Werror=implicit-function-declaration]
clockevents_config_and_register(&ttcce->ce,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers//clocksource/cadence_ttc_timer.c: At top level:
--
drivers/clocksource/timer-sun5i.c:52:21: error: field 'clksrc' has incomplete type
struct clocksource clksrc;
^~~~~~
drivers/clocksource/timer-sun5i.c:60:28: error: field 'clkevt' has incomplete type
struct clock_event_device clkevt;
^~~~~~
In file included from include/linux/clk.h:16:0,
from drivers/clocksource/timer-sun5i.c:13:
drivers/clocksource/timer-sun5i.c: In function 'sun5i_clkevt_shutdown':
>> include/linux/kernel.h:852:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
drivers/clocksource/timer-sun5i.c:64:2: note: in expansion of macro 'container_of'
container_of(x, struct sun5i_timer_clkevt, clkevt)
^~~~~~~~~~~~
drivers/clocksource/timer-sun5i.c:108:34: note: in expansion of macro 'to_sun5i_timer_clkevt'
struct sun5i_timer_clkevt *ce = to_sun5i_timer_clkevt(clkevt);
^~~~~~~~~~~~~~~~~~~~~
include/linux/kernel.h:852:48: note: (near initialization for 'ce')
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
drivers/clocksource/timer-sun5i.c:64:2: note: in expansion of macro 'container_of'
container_of(x, struct sun5i_timer_clkevt, clkevt)
^~~~~~~~~~~~
drivers/clocksource/timer-sun5i.c:108:34: note: in expansion of macro 'to_sun5i_timer_clkevt'
struct sun5i_timer_clkevt *ce = to_sun5i_timer_clkevt(clkevt);
^~~~~~~~~~~~~~~~~~~~~
drivers/clocksource/timer-sun5i.c: In function 'sun5i_clkevt_set_oneshot':
>> include/linux/kernel.h:852:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
drivers/clocksource/timer-sun5i.c:64:2: note: in expansion of macro 'container_of'
container_of(x, struct sun5i_timer_clkevt, clkevt)
^~~~~~~~~~~~
drivers/clocksource/timer-sun5i.c:116:34: note: in expansion of macro 'to_sun5i_timer_clkevt'
struct sun5i_timer_clkevt *ce = to_sun5i_timer_clkevt(clkevt);
^~~~~~~~~~~~~~~~~~~~~
include/linux/kernel.h:852:48: note: (near initialization for 'ce')
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
drivers/clocksource/timer-sun5i.c:64:2: note: in expansion of macro 'container_of'
container_of(x, struct sun5i_timer_clkevt, clkevt)
^~~~~~~~~~~~
drivers/clocksource/timer-sun5i.c:116:34: note: in expansion of macro 'to_sun5i_timer_clkevt'
struct sun5i_timer_clkevt *ce = to_sun5i_timer_clkevt(clkevt);
^~~~~~~~~~~~~~~~~~~~~
drivers/clocksource/timer-sun5i.c: In function 'sun5i_clkevt_set_periodic':
>> include/linux/kernel.h:852:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
drivers/clocksource/timer-sun5i.c:64:2: note: in expansion of macro 'container_of'
container_of(x, struct sun5i_timer_clkevt, clkevt)
^~~~~~~~~~~~
drivers/clocksource/timer-sun5i.c:125:34: note: in expansion of macro 'to_sun5i_timer_clkevt'
struct sun5i_timer_clkevt *ce = to_sun5i_timer_clkevt(clkevt);
^~~~~~~~~~~~~~~~~~~~~
include/linux/kernel.h:852:48: note: (near initialization for 'ce')
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
drivers/clocksource/timer-sun5i.c:64:2: note: in expansion of macro 'container_of'
container_of(x, struct sun5i_timer_clkevt, clkevt)
^~~~~~~~~~~~
drivers/clocksource/timer-sun5i.c:125:34: note: in expansion of macro 'to_sun5i_timer_clkevt'
struct sun5i_timer_clkevt *ce = to_sun5i_timer_clkevt(clkevt);
^~~~~~~~~~~~~~~~~~~~~
drivers/clocksource/timer-sun5i.c: In function 'sun5i_clkevt_next_event':
>> include/linux/kernel.h:852:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
drivers/clocksource/timer-sun5i.c:64:2: note: in expansion of macro 'container_of'
container_of(x, struct sun5i_timer_clkevt, clkevt)
^~~~~~~~~~~~
drivers/clocksource/timer-sun5i.c:136:34: note: in expansion of macro 'to_sun5i_timer_clkevt'
struct sun5i_timer_clkevt *ce = to_sun5i_timer_clkevt(clkevt);
^~~~~~~~~~~~~~~~~~~~~
include/linux/kernel.h:852:48: note: (near initialization for 'ce')
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
drivers/clocksource/timer-sun5i.c:64:2: note: in expansion of macro 'container_of'
container_of(x, struct sun5i_timer_clkevt, clkevt)
^~~~~~~~~~~~
drivers/clocksource/timer-sun5i.c:136:34: note: in expansion of macro 'to_sun5i_timer_clkevt'
struct sun5i_timer_clkevt *ce = to_sun5i_timer_clkevt(clkevt);
^~~~~~~~~~~~~~~~~~~~~
drivers/clocksource/timer-sun5i.c: In function 'sun5i_clksrc_read':
>> include/linux/kernel.h:852:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
drivers/clocksource/timer-sun5i.c:56:2: note: in expansion of macro 'container_of'
container_of(x, struct sun5i_timer_clksrc, clksrc)
^~~~~~~~~~~~
drivers/clocksource/timer-sun5i.c:157:34: note: in expansion of macro 'to_sun5i_timer_clksrc'
struct sun5i_timer_clksrc *cs = to_sun5i_timer_clksrc(clksrc);
^~~~~~~~~~~~~~~~~~~~~
include/linux/kernel.h:852:48: note: (near initialization for 'cs')
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
drivers/clocksource/timer-sun5i.c:56:2: note: in expansion of macro 'container_of'
container_of(x, struct sun5i_timer_clksrc, clksrc)
^~~~~~~~~~~~
drivers/clocksource/timer-sun5i.c:157:34: note: in expansion of macro 'to_sun5i_timer_clksrc'
struct sun5i_timer_clksrc *cs = to_sun5i_timer_clksrc(clksrc);
^~~~~~~~~~~~~~~~~~~~~
drivers/clocksource/timer-sun5i.c: In function 'sun5i_rate_cb_clksrc':
drivers/clocksource/timer-sun5i.c:171:3: error: implicit declaration of function 'clocksource_unregister' [-Werror=implicit-function-declaration]
clocksource_unregister(&cs->clksrc);
^~~~~~~~~~~~~~~~~~~~~~
drivers/clocksource/timer-sun5i.c:175:3: error: implicit declaration of function 'clocksource_register_hz' [-Werror=implicit-function-declaration]
clocksource_register_hz(&cs->clksrc, ndata->new_rate);
^~~~~~~~~~~~~~~~~~~~~~~
drivers/clocksource/timer-sun5i.c: In function 'sun5i_setup_clocksource':
drivers/clocksource/timer-sun5i.c:223:20: error: implicit declaration of function 'CLOCKSOURCE_MASK' [-Werror=implicit-function-declaration]
cs->clksrc.mask = CLOCKSOURCE_MASK(32);
^~~~~~~~~~~~~~~~
drivers/clocksource/timer-sun5i.c:224:21: error: 'CLOCK_SOURCE_IS_CONTINUOUS' undeclared (first use in this function)
cs->clksrc.flags = CLOCK_SOURCE_IS_CONTINUOUS;
^~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/clocksource/timer-sun5i.c:224:21: note: each undeclared identifier is reported only once for each function it appears in
drivers/clocksource/timer-sun5i.c: In function 'sun5i_rate_cb_clkevt':
drivers/clocksource/timer-sun5i.c:251:3: error: implicit declaration of function 'clockevents_update_freq' [-Werror=implicit-function-declaration]
clockevents_update_freq(&ce->clkevt, ndata->new_rate);
^~~~~~~~~~~~~~~~~~~~~~~
drivers/clocksource/timer-sun5i.c: In function 'sun5i_setup_clockevent':
drivers/clocksource/timer-sun5i.c:291:24: error: 'CLOCK_EVT_FEAT_PERIODIC' undeclared (first use in this function)
ce->clkevt.features = CLOCK_EVT_FEAT_PERIODIC | CLOCK_EVT_FEAT_ONESHOT;
^~~~~~~~~~~~~~~~~~~~~~~
drivers/clocksource/timer-sun5i.c:291:50: error: 'CLOCK_EVT_FEAT_ONESHOT' undeclared (first use in this function)
ce->clkevt.features = CLOCK_EVT_FEAT_PERIODIC | CLOCK_EVT_FEAT_ONESHOT;
^~~~~~~~~~~~~~~~~~~~~~
drivers/clocksource/timer-sun5i.c:305:2: error: implicit declaration of function 'clockevents_config_and_register' [-Werror=implicit-function-declaration]
clockevents_config_and_register(&ce->clkevt, rate,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/clocksource/timer-sun5i.c: At top level:
drivers/clocksource/timer-sun5i.c:361:35: error: expected ')' before string constant
CLOCKSOURCE_OF_DECLARE(sun5i_a13, "allwinner,sun5i-a13-hstimer",
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/clocksource/timer-sun5i.c:363:35: error: expected ')' before string constant
CLOCKSOURCE_OF_DECLARE(sun7i_a20, "allwinner,sun7i-a20-hstimer",
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/clocksource/timer-sun5i.c:326:19: warning: 'sun5i_timer_init' defined but not used [-Wunused-function]
static int __init sun5i_timer_init(struct device_node *node)
^~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
..
vim +852 include/linux/kernel.h
^1da177e Linus Torvalds 2005-04-16 846 * @ptr: the pointer to the member.
^1da177e Linus Torvalds 2005-04-16 847 * @type: the type of the container struct this is embedded in.
^1da177e Linus Torvalds 2005-04-16 848 * @member: the name of the member within the struct.
^1da177e Linus Torvalds 2005-04-16 849 *
^1da177e Linus Torvalds 2005-04-16 850 */
^1da177e Linus Torvalds 2005-04-16 851 #define container_of(ptr, type, member) ({ \
^1da177e Linus Torvalds 2005-04-16 @852 const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^1da177e Linus Torvalds 2005-04-16 853 (type *)( (char *)__mptr - offsetof(type,member) );})
^1da177e Linus Torvalds 2005-04-16 854
b9d4f426 Arnaud Lacombe 2011-07-25 855 /* Rebuild everything on CONFIG_FTRACE_MCOUNT_RECORD */
:::::: The code at line 852 was first introduced by commit
:::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2
:::::: TO: Linus Torvalds <torvalds@ppc970.osdl.org>
:::::: CC: Linus Torvalds <torvalds@ppc970.osdl.org>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 48295 bytes --]
next prev parent reply other threads:[~2017-03-27 18:06 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-03-27 13:27 [PATCH v6] mfd: Add Cherry Trail Whiskey Cove PMIC driver Hans de Goede
2017-03-27 18:05 ` kbuild test robot [this message]
2017-04-19 12:56 [PATCH resend v6 0/1] " Hans de Goede
2017-04-19 12:56 ` [PATCH v6] " Hans de Goede
2017-04-24 11:55 ` Lee Jones
2017-05-15 18:17 Hans de Goede
2017-05-15 18:20 ` Hans de Goede
2017-05-20 19:21 ` Paul Gortmaker
2017-05-20 19:26 ` Paul Gortmaker
2017-05-21 9:51 ` Hans de Goede
2017-05-21 19:05 ` Paul Gortmaker
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=201703280258.ToMOiMwO%fengguang.wu@intel.com \
--to=lkp@intel.com \
--cc=andriy.shevchenko@linux.intel.com \
--cc=bin.gao@intel.com \
--cc=felipe.balbi@linux.intel.com \
--cc=hdegoede@redhat.com \
--cc=kbuild-all@01.org \
--cc=lee.jones@linaro.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.