Re: git: 5522519731b7 - main - modules: enable allwinner kmods on riscv
Date: Wed, 22 Oct 2025 05:15:52 UTC
Hi Mitchell,
The riscv LINT kernel build fails with this change,
```
$ make buildkernel TARGET_ARCH=riscv64 KERNCONF=LINT
===> allwinner/aw_sid (all)
cc -target riscv64-unknown-freebsd16.0 --sysroot=/usr/obj/home/zlei/freebsd-src/riscv.riscv64/tmp -B/usr/obj/home/zlei/freebsd-src/riscv.riscv64/tmp/usr/bin -O2 -pipe -fno-common -march=rv64imafdc -mabi=lp64d -fno-strict-aliasing -Werror -D_KERNEL -DKLD_MODULE -DKLD_TIED -nostdinc -DHAVE_KERNEL_OPTION_HEADERS -include /usr/obj/home/zlei/freebsd-src/riscv.riscv64/sys/LINT/opt_global.h -I. -I/home/zlei/freebsd-src/sys -I/home/zlei/freebsd-src/sys/contrib/ck/include -fno-common -g -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fPIC -fdebug-prefix-map=./machine=/home/zlei/freebsd-src/sys/riscv/include -I/usr/obj/home/zlei/freebsd-src/riscv.riscv64/sys/LINT -fno-builtin -MD -MF.depend.aw_sid.o -MTaw_sid.o -march=rv64imafdch -mabi=lp64 -mno-relax -ffreestanding -fwrapv -fstack-protector -gdwarf-4 -Wall -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wcast-qual -Wundef -Wno-pointer-sign -D__printf__=__freebsd_kprintf__ -Wmissing-include-dirs -fdiagnostics-show-option -Wno-unknown-pragmas -Wswitch -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 -Wno-address-of-packed-member -Wno-format-zero-length -mcmodel=medium -std=gnu17 -c /home/zlei/freebsd-src/sys/arm/allwinner/aw_sid.c -o aw_sid.o
/home/zlei/freebsd-src/sys/arm/allwinner/aw_sid.c:48:10: fatal error: 'nvmem_if.h' file not found
48 | #include "nvmem_if.h"
| ^~~~~~~~~~~~
1 error generated.
*** Error code 1
```
Best regards,
Zhenlei
> On Oct 21, 2025, at 7:42 AM, Mitchell Horne <mhorne@freebsd.org> wrote:
>
> The branch main has been updated by mhorne:
>
> URL: https://cgit.FreeBSD.org/src/commit/?id=5522519731b74e7b56c710ec5ea4d34065f3ed32
>
> commit 5522519731b74e7b56c710ec5ea4d34065f3ed32
> Author: Mitchell Horne <mhorne@FreeBSD.org>
> AuthorDate: 2024-09-18 17:19:16 +0000
> Commit: Mitchell Horne <mhorne@FreeBSD.org>
> CommitDate: 2025-10-20 23:37:13 +0000
>
> modules: enable allwinner kmods on riscv
>
> While here, standardize the place they are enabled in the Makefile. For
> armv7 the module subdirectory was added explicitly in the config file,
> but this is not idiomatic.
>
> MFC after: 3 days
> Sponsored by: The FreeBSD Foundation
> ---
> sys/arm/conf/GENERIC | 1 -
> sys/arm/conf/NOTES | 1 -
> sys/modules/Makefile | 2 +-
> 3 files changed, 1 insertion(+), 3 deletions(-)
>
> diff --git a/sys/arm/conf/GENERIC b/sys/arm/conf/GENERIC
> index 7394f3842d43..9607b16756ea 100644
> --- a/sys/arm/conf/GENERIC
> +++ b/sys/arm/conf/GENERIC
> @@ -272,5 +272,4 @@ makeoptions MODULES_EXTRA+="dtb/rpi"
> makeoptions MODULES_EXTRA+="dtb/zynq"
>
> # SOC-specific modules
> -makeoptions MODULES_EXTRA+="allwinner"
> makeoptions MODULES_EXTRA+="imx"
> diff --git a/sys/arm/conf/NOTES b/sys/arm/conf/NOTES
> index 920d721dc3ba..0a5d34c3849a 100644
> --- a/sys/arm/conf/NOTES
> +++ b/sys/arm/conf/NOTES
> @@ -94,7 +94,6 @@ nodevice bnxt
>
> # Build SOC-specific modules...
>
> -makeoptions MODULES_EXTRA+="allwinner"
> makeoptions MODULES_EXTRA+="imx"
>
> # Build dtb files...
> diff --git a/sys/modules/Makefile b/sys/modules/Makefile
> index 63a0b3260e6d..9ec7c33465f3 100644
> --- a/sys/modules/Makefile
> +++ b/sys/modules/Makefile
> @@ -680,6 +680,7 @@ _irdma= irdma
> .if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "arm" || \
> ${MACHINE_CPUARCH} == "riscv"
> .if !empty(OPT_FDT)
> +_allwinner= allwinner
> _if_cgem= if_cgem
> .endif
> .endif
> @@ -713,7 +714,6 @@ _hyperv= hyperv
> _vf_i2c= vf_i2c
>
> .if !empty(OPT_FDT)
> -_allwinner= allwinner
> _dwwdt= dwwdt
> _enetc= enetc
> _felix= felix