lkml.org 
[lkml]   [2016]   [Sep]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
Subjectdrivers/iio/pressure/bmp280-core.c:985: undefined reference to `devm_gpiod_get'
Hi Linus,

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: 08895a8b6b06ed2323cd97a36ee40a116b3db8ed
commit: 2527ecc9195e9c66252af24c4689e8a67cd4ccb9 gpio: Fix OF build problem on UM
date: 5 weeks ago
config: um-allyesconfig (attached as .config)
compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901
reproduce:
git checkout 2527ecc9195e9c66252af24c4689e8a67cd4ccb9
# save the attached .config to linux build tree
make ARCH=um

All errors (new ones prefixed by >>):

arch/um/drivers/built-in.o: In function `vde_open_real':
(.text+0xc7d1): warning: Using 'getgrnam' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
arch/um/drivers/built-in.o: In function `vde_open_real':
(.text+0xc61c): warning: Using 'getpwuid' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
arch/um/drivers/built-in.o: In function `vde_open_real':
(.text+0xc935): warning: Using 'getaddrinfo' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
arch/um/drivers/built-in.o: In function `pcap_nametoaddr':
(.text+0x1d3c5): warning: Using 'gethostbyname' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
arch/um/drivers/built-in.o: In function `pcap_nametonetaddr':
(.text+0x1d465): warning: Using 'getnetbyname' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
arch/um/drivers/built-in.o: In function `pcap_nametoproto':
(.text+0x1d685): warning: Using 'getprotobyname' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
arch/um/drivers/built-in.o: In function `pcap_nametoport':
(.text+0x1d4b7): warning: Using 'getservbyname' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
drivers/built-in.o: In function `fwnode_get_named_gpiod':
drivers/gpio/gpiolib.c:3215: undefined reference to `of_get_named_gpiod_flags'
drivers/built-in.o: In function `gpiod_get_index':
drivers/gpio/gpiolib.c:3140: undefined reference to `of_get_named_gpiod_flags'
drivers/built-in.o: In function `bgpio_map':
drivers/gpio/gpio-mmio.c:571: undefined reference to `devm_ioremap_resource'
drivers/built-in.o: In function `dwapb_gpio_probe':
drivers/gpio/gpio-dwapb.c:554: undefined reference to `devm_ioremap_resource'
drivers/built-in.o: In function `zx_gpio_probe':
drivers/gpio/gpio-zx.c:229: undefined reference to `devm_ioremap_resource'
drivers/built-in.o: In function `lp872x_probe':
drivers/regulator/lp872x.c:773: undefined reference to `devm_gpio_request_one'
drivers/regulator/lp872x.c:746: undefined reference to `devm_gpio_request_one'
drivers/built-in.o: In function `max8952_pmic_probe':
drivers/regulator/max8952.c:249: undefined reference to `devm_gpio_request_one'
drivers/built-in.o: In function `max8973_probe':
drivers/regulator/max8973-regulator.c:715: undefined reference to `devm_gpio_request_one'
drivers/regulator/max8973-regulator.c:770: undefined reference to `devm_gpio_request_one'
drivers/built-in.o: In function `pwm_regulator_probe':
drivers/regulator/pwm-regulator.c:387: undefined reference to `devm_gpiod_get_optional'
drivers/built-in.o: In function `tps62360_probe':
drivers/regulator/tps62360-regulator.c:433: undefined reference to `devm_gpio_request_one'
drivers/regulator/tps62360-regulator.c:444: undefined reference to `devm_gpio_request_one'
drivers/built-in.o: In function `fdp_nci_i2c_probe':
drivers/nfc/fdp/i2c.c:326: undefined reference to `devm_gpiod_get'
drivers/built-in.o: In function `nfcmrvl_nci_unregister_dev':
drivers/nfc/nfcmrvl/main.c:198: undefined reference to `devm_gpio_free'
drivers/built-in.o: In function `nfcmrvl_nci_register_dev':
drivers/nfc/nfcmrvl/main.c:127: undefined reference to `devm_gpio_request_one'
drivers/built-in.o: In function `st21nfca_hci_i2c_probe':
drivers/nfc/st21nfca/i2c.c:597: undefined reference to `devm_gpio_request_one'
drivers/built-in.o: In function `st_nci_i2c_probe':
drivers/nfc/st-nci/i2c.c:300: undefined reference to `devm_gpio_request_one'
drivers/built-in.o: In function `nxp_nci_i2c_probe':
drivers/nfc/nxp-nci/i2c.c:361: undefined reference to `devm_gpio_request_one'
drivers/built-in.o: In function `mdio_gpio_probe':
drivers/net/phy/mdio-gpio.c:177: undefined reference to `devm_gpio_request'
drivers/built-in.o: In function `at803x_probe':
drivers/net/phy/at803x.c:283: undefined reference to `devm_gpiod_get_optional'
drivers/built-in.o: In function `xgene_mdio_probe':
drivers/net/phy/mdio-xgene.c:347: undefined reference to `devm_ioremap_resource'
drivers/built-in.o: In function `mv88e6xxx_probe':
drivers/net/dsa/mv88e6xxx/chip.c:4022: undefined reference to `devm_gpiod_get_optional'
drivers/built-in.o: In function `pps_gpio_probe':
drivers/pps/clients/pps-gpio.c:125: undefined reference to `devm_gpio_request'
drivers/built-in.o: In function `max8903_probe':
drivers/power/max8903_charger.c:248: undefined reference to `devm_gpio_request'
drivers/power/max8903_charger.c:280: undefined reference to `devm_gpio_request'
drivers/power/max8903_charger.c:243: undefined reference to `devm_gpio_request'
drivers/built-in.o: In function `bq24257_probe':
drivers/power/bq24257_charger.c:876: undefined reference to `devm_gpiod_get_optional'
drivers/built-in.o: In function `bq24735_charger_probe':
drivers/power/bq24735-charger.c:396: undefined reference to `devm_gpio_request'
drivers/built-in.o: In function `bq25890_probe':
drivers/power/bq25890_charger.c:726: undefined reference to `devm_gpiod_get_index'
drivers/built-in.o: In function `intel_probe':
drivers/bluetooth/hci_intel.c:1199: undefined reference to `devm_gpiod_get'
drivers/built-in.o: In function `create_gpio_led':
drivers/leds/leds-gpio.c:101: undefined reference to `devm_gpio_request_one'
drivers/built-in.o: In function `gpio_led_probe':
drivers/leds/leds-gpio.c:172: undefined reference to `devm_get_gpiod_from_child'
drivers/built-in.o: In function `lp55xx_init_device':
drivers/leds/leds-lp55xx-common.c:402: undefined reference to `devm_gpio_request_one'
drivers/built-in.o: In function `lp8860_probe':
drivers/leds/leds-lp8860.c:383: undefined reference to `devm_gpiod_get_optional'
drivers/built-in.o: In function `lt3593_led_probe':
drivers/leds/leds-lt3593.c:98: undefined reference to `devm_gpio_request_one'
drivers/built-in.o: In function `ktd2692_probe':
drivers/leds/leds-ktd2692.c:272: undefined reference to `devm_gpiod_get'
drivers/built-in.o: In function `gpio_extcon_probe':
drivers/extcon/extcon-gpio.c:69: undefined reference to `devm_gpio_request_one'
drivers/built-in.o: In function `max3355_probe':
drivers/extcon/extcon-max3355.c:68: undefined reference to `devm_gpiod_get'
drivers/built-in.o: In function `usb_extcon_probe':
drivers/extcon/extcon-usb-gpio.c:104: undefined reference to `devm_gpiod_get'
drivers/built-in.o: In function `mma9551_probe':
drivers/iio/accel/mma9551.c:421: undefined reference to `devm_gpiod_get_index'
drivers/built-in.o: In function `ad5592r_probe':
drivers/iio/dac/ad5592r-base.c:163: undefined reference to `devm_gpiod_get_optional'
drivers/built-in.o: In function `ak8975_probe':
drivers/iio/magnetometer/ak8975.c:886: undefined reference to `devm_gpio_request_one'
drivers/built-in.o: In function `bmp280_common_probe':
>> drivers/iio/pressure/bmp280-core.c:985: undefined reference to `devm_gpiod_get'
drivers/built-in.o: In function `hp03_probe':
drivers/iio/pressure/hp03.c:238: undefined reference to `devm_gpiod_get_index'
drivers/built-in.o: In function `sx9500_probe':
drivers/iio/proximity/sx9500.c:877: undefined reference to `devm_gpiod_get_index'
net/built-in.o: In function `rfkill_gpio_probe':
net/rfkill/rfkill-gpio.c:115: undefined reference to `devm_gpiod_get_optional'
`.text.exit' referenced in section `.fini_array' of /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/libc.a(sdlerror.o): defined in discarded section `.text.exit' of /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/libc.a(sdlerror.o)
collect2: error: ld returned 1 exit status

vim +985 drivers/iio/pressure/bmp280-core.c

bd525e6c drivers/iio/pressure/bmp280.c Linus Walleij 2016-06-30 969 }
14e8015f drivers/iio/pressure/bmp280-core.c Linus Walleij 2016-06-30 970 data->vdda = devm_regulator_get(dev, "vdda");
bd525e6c drivers/iio/pressure/bmp280.c Linus Walleij 2016-06-30 971 if (IS_ERR(data->vdda)) {
14e8015f drivers/iio/pressure/bmp280-core.c Linus Walleij 2016-06-30 972 dev_err(dev, "failed to get VDDA regulator\n");
bd525e6c drivers/iio/pressure/bmp280.c Linus Walleij 2016-06-30 973 ret = PTR_ERR(data->vddd);
bd525e6c drivers/iio/pressure/bmp280.c Linus Walleij 2016-06-30 974 goto out_disable_vddd;
bd525e6c drivers/iio/pressure/bmp280.c Linus Walleij 2016-06-30 975 }
bd525e6c drivers/iio/pressure/bmp280.c Linus Walleij 2016-06-30 976 ret = regulator_enable(data->vdda);
bd525e6c drivers/iio/pressure/bmp280.c Linus Walleij 2016-06-30 977 if (ret) {
14e8015f drivers/iio/pressure/bmp280-core.c Linus Walleij 2016-06-30 978 dev_err(dev, "failed to enable VDDA regulator\n");
bd525e6c drivers/iio/pressure/bmp280.c Linus Walleij 2016-06-30 979 goto out_disable_vddd;
bd525e6c drivers/iio/pressure/bmp280.c Linus Walleij 2016-06-30 980 }
bd525e6c drivers/iio/pressure/bmp280.c Linus Walleij 2016-06-30 981 /* Wait to make sure we started up properly */
bd525e6c drivers/iio/pressure/bmp280.c Linus Walleij 2016-06-30 982 mdelay(data->start_up_time);
bd525e6c drivers/iio/pressure/bmp280.c Linus Walleij 2016-06-30 983
c5842b47 drivers/iio/pressure/bmp280.c Linus Walleij 2016-06-30 984 /* Bring chip out of reset if there is an assigned GPIO line */
14e8015f drivers/iio/pressure/bmp280-core.c Linus Walleij 2016-06-30 @985 gpiod = devm_gpiod_get(dev, "reset", GPIOD_OUT_HIGH);
c5842b47 drivers/iio/pressure/bmp280.c Linus Walleij 2016-06-30 986 /* Deassert the signal */
c5842b47 drivers/iio/pressure/bmp280.c Linus Walleij 2016-06-30 987 if (!IS_ERR(gpiod)) {
14e8015f drivers/iio/pressure/bmp280-core.c Linus Walleij 2016-06-30 988 dev_info(dev, "release reset\n");
c5842b47 drivers/iio/pressure/bmp280.c Linus Walleij 2016-06-30 989 gpiod_set_value(gpiod, 0);
c5842b47 drivers/iio/pressure/bmp280.c Linus Walleij 2016-06-30 990 }
c5842b47 drivers/iio/pressure/bmp280.c Linus Walleij 2016-06-30 991
14e8015f drivers/iio/pressure/bmp280-core.c Linus Walleij 2016-06-30 992 data->regmap = regmap;
14e8015f drivers/iio/pressure/bmp280-core.c Linus Walleij 2016-06-30 993 ret = regmap_read(regmap, BMP280_REG_ID, &chip_id);

:::::: The code at line 985 was first introduced by commit
:::::: 14e8015f8569d9634479a4a461e7c138d60d99ca iio: pressure: bmp280: split driver in logical parts

:::::: TO: Linus Walleij <linus.walleij@linaro.org>
:::::: CC: Jonathan Cameron <jic23@kernel.org>

---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
[unhandled content-type:application/gzip]
\
 
 \ /
  Last update: 2016-09-26 07:35    [W:0.049 / U:0.164 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site