11.0-RELEASE tree. i386 arch, cross-compiling as nanoBSD on amd64. Man gpio states: NAME gpioiic – GPIO I2C bit-banging device driver SYNOPSIS To compile this driver into the kernel, place the following lines in your kernel configuration file: device gpio device gpioiic device iic device iicbb device iicbus [...] Kernel config: [...] device gpio device gpioiic device iic device iicbb device iicbus [...] Kernel build log: -------------------------------------------------------------- >>> stage 1: configuring the kernel -------------------------------------------------------------- cd /usr/src/sys/i386/conf; PATH=/usr/obj/nanobsd.alix/i386.i386/usr/src/tmp/legacy/usr/sbin:/usr/obj/nanobsd.alix/i386. i386/usr/src/tmp/legacy/usr/bin:/usr/obj/nanobsd.alix/i386.i386/usr/src/tmp/legacy/bin:/usr/obj/nanobsd.alix/i386.i386/u sr/src/tmp/usr/sbin:/usr/obj/nanobsd.alix/i386.i386/usr/src/tmp/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin config -d /usr/o bj/nanobsd.alix/i386.i386/usr/src/sys/ALIX -I '/usr/src/sys/i386/conf' '/usr/src/sys/i386/conf/ALIX' config: Error: device "gpioc" is unknown config: 1 errors *** [buildkernel] Error code 1 make[1]: stopped in /usr/src 1 error make[1]: stopped in /usr/src *** [buildkernel] Error code 2 make: stopped in /usr/src 1 error make: stopped in /usr/src Okay, now I remove "device gpioc" from the kernel config: [...] --- gpio_if.o --- awk -f /usr/src/sys/tools/makeobjops.awk /usr/src/sys/dev/gpio/gpio_if.m -c ; cc -c -O -pipe -g -nostdinc -I. -I/usr /src/sys -I/usr/src/sys/contrib/libfdt -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -MD -MF.depend.gpi o_if.o -MTgpio_if.o -mno-mmx -mno-sse -msoft-float -ffreestanding -fwrapv -fstack-protector -gdwarf-2 -Wall -Wredundant- decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-poin ter-sign -D__printf__=__freebsd_kprintf__ -Wmissing-include-dirs -fdiagnostics-show-option -Wno-unknown-pragmas -Wno- error-tautological-compare -Wno-error-empty-body -Wno-error-parentheses-equality -Wno-error-unused-function -Wno-error -pointer-sign -Wno-error-shift-negative-value -mno-aes -mno-avx -std=iso9899:1999 -Werror gpio_if.c --- gpioiic.o --- /usr/src/sys/dev/gpio/gpioiic.c:50:10: fatal error: 'iicbb_if.h' file not found #include "iicbb_if.h" ^ 1 error generated. *** [gpioiic.o] Error code 1 make[2]: stopped in /usr/obj/nanobsd.alix/i386.i386/usr/src/sys/ALIX --- gpioled.o --- ctfconvert -L VERSION -g gpioled.o --- gpio_if.o --- ctfconvert -L VERSION -g gpio_if.o 1 error make[2]: stopped in /usr/obj/nanobsd.alix/i386.i386/usr/src/sys/ALIX *** [buildkernel] Error code 2 make[1]: stopped in /usr/src 1 error make[1]: stopped in /usr/src *** [buildkernel] Error code 2 make: stopped in /usr/src 1 error make: stopped in /usr/src Still doesn't build. So, either the man shoudl be fixed, or these errors need to be corrected.
Thanks for reporting. There is no reference of to "gpioc" device in the gpioiic(4) man page, so I believe it was a mistake when adding the config snippet. I copy-pasted man page to tools/tools/nanobsd/pcengines/ALIX_DSK and used it as a kernel config, the build went fine on HEAD and stable/11. Closing as "Unable to Reproduce"