0
我正在学习有关尝试为ADC实现SPI声音驱动程序的Linux内核驱动程序。 代码可能不起作用,但它会编译。发生在链路 第一个问题,即报告以下错误:无法链接linux内核模块:警告:“snd_device_new”undefined
WARNING: "snd_pcm_lib_ioctl" [/home/pi/rpi/gpio/module/spi-mcp3002.ko] undefined!
WARNING: "snd_device_new" [/home/pi/rpi/gpio/module/spi-mcp3002.ko] undefined!
WARNING: "snd_pcm_lib_preallocate_pages_for_all" [/home/pi/rpi/gpio/module/spi-mcp3002.ko] undefined!
WARNING: "snd_pcm_set_ops" [/home/pi/rpi/gpio/module/spi-mcp3002.ko] undefined!
WARNING: "snd_pcm_new" [/home/pi/rpi/gpio/module/spi-mcp3002.ko] undefined!
WARNING: "snd_card_register" [/home/pi/rpi/gpio/module/spi-mcp3002.ko] undefined!
WARNING: "snd_card_create" [/home/pi/rpi/gpio/module/spi-mcp3002.ko] undefined!
WARNING: "snd_pcm_hw_constraint_integer" [/home/pi/rpi/gpio/module/spi-mcp3002.ko] undefined!
WARNING: "snd_pcm_lib_malloc_pages" [/home/pi/rpi/gpio/module/spi-mcp3002.ko] undefined!
WARNING: "snd_pcm_lib_free_pages" [/home/pi/rpi/gpio/module/spi-mcp3002.ko] undefined!
WARNING: "snd_card_free" [/home/pi/rpi/gpio/module/spi-mcp3002.ko] undefined!
的源代码是https://github.com/mpromonet/rpi/blob/master/gpio/module/spi-mcp3002.c并且生成文件是https://github.com/mpromonet/rpi/blob/master/gpio/module/Makefile。
我想一些内核选项是没有设置,但哪一个?
我尝试使用来查看禁用的选项zcat /proc/config.gz | grep SND | grep的“^#”
# CONFIG_SND_DYNAMIC_MINORS is not set
# CONFIG_SND_VERBOSE_PRINTK is not set
# CONFIG_SND_DEBUG is not set
# CONFIG_SND_OPL3_LIB_SEQ is not set
# CONFIG_SND_OPL4_LIB_SEQ is not set
# CONFIG_SND_SBAWE_SEQ is not set
# CONFIG_SND_EMU10K1_SEQ is not set
# CONFIG_SND_AC97_POWER_SAVE is not set
# CONFIG_SND_ARMAACI is not set
# CONFIG_SND_ATMEL_SOC is not set
# CONFIG_SND_DESIGNWARE_I2S is not set
# CONFIG_SND_SOC_ALL_CODECS is not set
# CONFIG_SND_SIMPLE_CARD is not set
我会看内核源代码什么的做这些符号被定义......但如果有人知道我也许可以节省一些内核构建:)