On Mon, 22 Apr 2019 00:24:21 +0900, Randy Dunlap wrote: > > On 4/21/19 6:52 AM, Yoshinori Sato wrote: > > On Sun, 21 Apr 2019 04:34:36 +0900, > > Randy Dunlap wrote: > >> > >> On 4/20/19 12:40 AM, kbuild test robot wrote: > >>> Hi Randy, > >>> > >>> It's probably a bug fix that unveils the link errors. > >>> > >>> tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master > >>> head: 371dd432ab39f7bc55d6ec77d63b430285627e04 > >>> commit: acaf892ecbf5be7710ae05a61fd43c668f68ad95 sh: fix multiple function definition build errors > >>> date: 2 weeks ago > >>> config: sh-allmodconfig (attached as .config) > >>> compiler: sh4-linux-gnu-gcc (Debian 7.2.0-11) 7.2.0 > >>> reproduce: > >>> wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross > >>> chmod +x ~/bin/make.cross > >>> git checkout acaf892ecbf5be7710ae05a61fd43c668f68ad95 > >>> # save the attached .config to linux build tree > >>> GCC_VERSION=7.2.0 make.cross ARCH=sh > >> > >> Hi, > >> > >> Once again, the question is the validity of the SH2 .config file in this case > >> (that was attached). > >> > >> I don't believe that it is valid because CONFIG_SH_DEVICE_TREE=y, > >> which selects COMMON_CLK, and there is no followparent_recalc() in the > >> COMMON_CLK API. > >> > >> Also, while CONFIG_HAVE_CLK=y, drivers/sh/Makefile prevents that from > >> building clk/core.c, which could provide followparent_recalc(): > >> > >> ifneq ($(CONFIG_COMMON_CLK),y) > >> obj-$(CONFIG_HAVE_CLK) += clk/ > >> endif > >> > >> Hm, maybe that's where the problem is. I'll look into that more. > >> > > > > Yes. > > Selected target (CONFIG_SH_7619_SOLUTION_ENGINE) is non devicetree > > and used superh specific clk modules. > > So allyesconfig output is incorrect. > > > > I fixed Kconfig to output the correct config. > > Thanks for that. > The patch fixes this problem in my builds. OK. Thanks. > However, now I see these build errors: > > ERROR: "__ashiftrt_r4_28" [fs/udf/udf.ko] undefined! > ERROR: "__ashiftrt_r4_26" [drivers/rtc/rtc-x1205.ko] undefined! > ERROR: "__ashiftrt_r4_25" [drivers/rtc/rtc-pcf2123.ko] undefined! > ERROR: "__ashiftrt_r4_28" [drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu.ko] undefined! > ERROR: "__ashiftrt_r4_25" [drivers/input/tablet/gtco.ko] undefined! > ERROR: "__ashiftrt_r4_26" [drivers/input/mouse/psmouse.ko] undefined! > ERROR: "__ashiftrt_r4_28" [drivers/input/mouse/psmouse.ko] undefined! > ERROR: "__ashiftrt_r4_25" [drivers/iio/pressure/bmp280.ko] undefined! > ERROR: "__ashiftrt_r4_26" [drivers/iio/dac/ad5764.ko] undefined! > ERROR: "__ashiftrt_r4_26" [drivers/iio/accel/mma7660.ko] undefined! > ERROR: "__ashiftrt_r4_25" [drivers/iio/accel/dmard06.ko] undefined! > ERROR: "__ashiftrt_r4_26" [drivers/iio/accel/bma220_spi.ko] undefined! > ERROR: "__ashiftrt_r4_25" [drivers/crypto/hisilicon/sec/hisi_sec.ko] undefined! > > Is this just a toolchain problem? > > I am using the gcc 8.1.0 tools from > https://mirrors.edge.kernel.org/pub/tools/crosstool/ > It looks libgcc function. sh port using private build libgcc. It missing this function. We need added __ashiftrt_r4 variant. > > thanks. > -- > ~Randy -- Yosinori Sato