LINUX.ORG.RU

Ошибки сборки модулей ядра


0

1
$ make CONFIG_DEBUG_SECTION_MISMATCH=y zImage modules

...

WARNING: vmlinux.o(.data+0x1f858): Section mismatch in reference from the variable udc_driver to the function .init.text:fsl_udc_probe()
The variable udc_driver references
the function __init fsl_udc_probe()
If the reference is valid then annotate the
variable with __init* or __refdata (see linux/init.h) or name the variable:
*_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console, 

  GEN     .version
  CHK     include/generated/compile.h
  UPD     include/generated/compile.h
  CC      init/version.o
  LD      init/built-in.o
  LD      .tmp_vmlinux1
  KSYM    .tmp_kallsyms1.S
  AS      .tmp_kallsyms1.o
  LD      .tmp_vmlinux2
  KSYM    .tmp_kallsyms2.S
  AS      .tmp_kallsyms2.o
  LD      vmlinux
  SYSMAP  System.map
  SYSMAP  .tmp_System.map
  OBJCOPY arch/arm/boot/Image
  Kernel: arch/arm/boot/Image is ready
  GZIP    arch/arm/boot/compressed/piggy.gzip
  AS      arch/arm/boot/compressed/piggy.gzip.o
  CC      arch/arm/boot/compressed/misc.o
  CC      arch/arm/boot/compressed/decompress.o
  SHIPPED arch/arm/boot/compressed/lib1funcs.S
  AS      arch/arm/boot/compressed/lib1funcs.o
  LD      arch/arm/boot/compressed/vmlinux
  OBJCOPY arch/arm/boot/zImage
  Kernel: arch/arm/boot/zImage is ready
  Building modules, stage 2.
  MODPOST 55 modules

...

WARNING: drivers/usb/gadget/g_serial.o(.data+0x240): Section mismatch in reference from the variable gserial_driver to the function .init.text:gs_bind()
The variable gserial_driver references
the function __init gs_bind()
If the reference is valid then annotate the
variable with __init* or __refdata (see linux/init.h) or name the variable:
*_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console, 

ERROR: "soc_codec_dev_mxs" [sound/soc/mxs/snd-soc-mxs-evk-adc.ko] undefined!
ERROR: "mxs_codec_dai" [sound/soc/mxs/snd-soc-mxs-evk-adc.ko] undefined!
ERROR: "mxs_init_lcdif" [drivers/video/mxs/mxsfb.ko] undefined!
ERROR: "mxs_reset_block" [drivers/mmc/host/mxs-mmc.ko] undefined!
ERROR: "mxsfb_get_info" [drivers/media/video/mxs_pxp.ko] undefined!
ERROR: "mxsfb_cfg_pxp" [drivers/media/video/mxs_pxp.ko] undefined!
ERROR: "input_register_polled_device" [drivers/hwmon/mxc_mma7450.ko] undefined!
ERROR: "input_allocate_polled_device" [drivers/hwmon/mxc_mma7450.ko] undefined!
ERROR: "input_free_polled_device" [drivers/hwmon/mxc_mma7450.ko] undefined!
ERROR: "input_unregister_polled_device" [drivers/hwmon/mxc_mma7450.ko] undefined!
make[1]: *** [__modpost] Error 1
make: *** [modules] Error 2

Ядро патченое, из git freescale. Однако, подобные проблемы (undefined!) наблюдаются и при сборке linux-2.6.34-gentoo-r12.

★★

В чём вопрос?

1) Это не «ошибки», а предупреждения.

2) Не нравится - исправь. Там чётко написано, что и как исправлять

Led ★★★☆☆ ()
Ответ на: комментарий от Led

Не ошибка? тогда где собранный модуль?

ERROR: "soc_codec_dev_mxs" [sound/soc/mxs/snd-soc-mxs-evk-adc.ko] undefined!

Этот символ есть в файле sound/soc/codecs/mxs-adc-codec.c и соответствующая строка в конфиге CONFIG_SND_SOC_MXS_ADC_CODEC=m.

struct snd_soc_codec_device soc_codec_dev_mxs = {
	.probe = mxs_codec_probe,
	.remove = mxs_codec_remove,
	.suspend = mxs_codec_suspend,
	.resume = mxs_codec_resume,
};
EXPORT_SYMBOL_GPL(soc_codec_dev_mxs);

Проблема только если собирать модуль. Вопрос в причине.

amaora ★★ ()
Ответ на: комментарий от amaora

Виноват, до «ERROR:» не дочитал:)

Смотри тогда включен ли mxs-adc-codec.c в соотв. Makefile, собрался ли mxs-adc-codec.o и не за-ifdef'лен ли приведённый кусок кода в mxs-adc-codec.c

Led ★★★☆☆ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.