Build v4l drivers fail

The source code I obtained from this site


Is compiled properly under the x86 architecture. But under ar71xx this error is reported, no matter which driver is selected is the same error, it seems that the compiler has a problem, but I do not know how to debug. Anybody willing to download the source code to compile it?

    rm -f /home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/v4l-dvb-d59f3f81/.built
touch /home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/v4l-dvb-d59f3f81/.built_check
cat /dev/null > /home/lede/openwrt-ar71/staging_dir/target-mips_24kc_musl/pkginfo/v4l-dvb.symvers; for subdir in .; do cat /home/lede/openwrt-ar71/staging_dir/target-mips_24kc_musl/pkginfo/*.symvers 2>/dev/null > /home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/v4l-dvb-d59f3f81/$subdir/Module.symvers; done
CFLAGS="-Os -pipe -mno-branch-likely -mips32r2 -mtune=24kc -fno-caller-saves -fno-plt -fhonour-copts -Wno-error=unused-but-set-variable -Wno-error=unused-result -msoft-float -mips16 -minterlink-mips16 -iremap/home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/v4l-dvb-d59f3f81:v4l-dvb-d59f3f81 -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro  -I/home/lede/openwrt-ar71/staging_dir/target-mips_24kc_musl/usr/include -I/home/lede/openwrt-ar71/staging_dir/target-mips_24kc_musl/include -I/home/lede/openwrt-ar71/staging_dir/toolchain-mips_24kc_gcc-5.5.0_musl/usr/include -I/home/lede/openwrt-ar71/staging_dir/toolchain-mips_24kc_gcc-5.5.0_musl/include/fortify -I/home/lede/openwrt-ar71/staging_dir/toolchain-mips_24kc_gcc-5.5.0_musl/include " CXXFLAGS="-Os -pipe -mno-branch-likely -mips32r2 -mtune=24kc -fno-caller-saves -fno-plt -fhonour-copts -Wno-error=unused-but-set-variable -Wno-error=unused-result -msoft-float -mips16 -minterlink-mips16 -iremap/home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/v4l-dvb-d59f3f81:v4l-dvb-d59f3f81 -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro  -I/home/lede/openwrt-ar71/staging_dir/target-mips_24kc_musl/usr/include -I/home/lede/openwrt-ar71/staging_dir/target-mips_24kc_musl/include -I/home/lede/openwrt-ar71/staging_dir/toolchain-mips_24kc_gcc-5.5.0_musl/usr/include -I/home/lede/openwrt-ar71/staging_dir/toolchain-mips_24kc_gcc-5.5.0_musl/include/fortify -I/home/lede/openwrt-ar71/staging_dir/toolchain-mips_24kc_gcc-5.5.0_musl/include " LDFLAGS="-L/home/lede/openwrt-ar71/staging_dir/target-mips_24kc_musl/usr/lib -L/home/lede/openwrt-ar71/staging_dir/target-mips_24kc_musl/lib -L/home/lede/openwrt-ar71/staging_dir/toolchain-mips_24kc_gcc-5.5.0_musl/usr/lib -L/home/lede/openwrt-ar71/staging_dir/toolchain-mips_24kc_gcc-5.5.0_musl/lib -znow -zrelro " TOPDIR="" KDIR=/home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/linux-4.9.77 DIR=/home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/linux-4.9.77 SRCDIR=/home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/linux-4.9.77 make -j1 -C /home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/v4l-dvb-d59f3f81/. AR="mips-openwrt-linux-musl-gcc-ar" AS="mips-openwrt-linux-musl-gcc -c -Os -pipe -mno-branch-likely -mips32r2 -mtune=24kc -fno-caller-saves -fno-plt -fhonour-copts -Wno-error=unused-but-set-variable -Wno-error=unused-result -msoft-float -iremap/home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/v4l-dvb-d59f3f81:v4l-dvb-d59f3f81 -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro" LD=mips-openwrt-linux-musl-ld NM="mips-openwrt-linux-musl-gcc-nm" CC="mips-openwrt-linux-musl-gcc" GCC="mips-openwrt-linux-musl-gcc" CXX="mips-openwrt-linux-musl-g++" RANLIB="mips-openwrt-linux-musl-gcc-ranlib" STRIP=mips-openwrt-linux-musl-strip OBJCOPY=mips-openwrt-linux-musl-objcopy OBJDUMP=mips-openwrt-linux-musl-objdump SIZE=mips-openwrt-linux-musl-size CROSS="mips-openwrt-linux-musl-" ARCH="mips" ;
make[4]: Entering directory '/home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/v4l-dvb-d59f3f81'
make -C /home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/v4l-dvb-d59f3f81/v4l 
make[5]: Entering directory '/home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/v4l-dvb-d59f3f81/v4l'
creating symbolic links...
make -C firmware prep
make[6]: Entering directory '/home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/v4l-dvb-d59f3f81/v4l/firmware'
make[6]: Nothing to be done for 'prep'.
make[6]: Leaving directory '/home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/v4l-dvb-d59f3f81/v4l/firmware'
make -C firmware
make[6]: Entering directory '/home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/v4l-dvb-d59f3f81/v4l/firmware'
make[6]: Nothing to be done for 'default'.
make[6]: Leaving directory '/home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/v4l-dvb-d59f3f81/v4l/firmware'
Kernel build directory is /home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/linux-4.9.77
make -C ../linux apply_patches
make[6]: Entering directory '/home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/v4l-dvb-d59f3f81/linux'
Patches for 4.9.77 already applied.
make[6]: Leaving directory '/home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/v4l-dvb-d59f3f81/linux'
make -C /home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/linux-4.9.77 SUBDIRS=/home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/v4l-dvb-d59f3f81/v4l  modules
make[6]: Entering directory '/home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/linux-4.9.77'
  CC [M]  /home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/v4l-dvb-d59f3f81/v4l/msp3400-driver.o
In file included from ./include/linux/compiler.h:58:0,
                 from ./arch/mips/include/asm/bug.h:4,
                 from ./include/linux/bug.h:4,
                 from ./include/linux/mmdebug.h:4,
                 from /home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/v4l-dvb-d59f3f81/v4l/config-compat.h:12,
                 from /home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/v4l-dvb-d59f3f81/v4l/compat.h:10,
                 from <command-line>:0:
./arch/mips/include/asm/bug.h: In function 'BUG':
/home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/v4l-dvb-d59f3f81/v4l/../linux/include/linux/compiler-gcc.h:234:3: error: implicit declaration of function 'annotate_unreachable' [-Werror=implicit-function-declaration]
   annotate_unreachable();  \
   ^
./arch/mips/include/asm/bug.h:14:2: note: in expansion of macro 'unreachable'
  unreachable();
  ^
cc1: some warnings being treated as errors
scripts/Makefile.build:293: recipe for target '/home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/v4l-dvb-d59f3f81/v4l/msp3400-driver.o' failed
make[7]: *** [/home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/v4l-dvb-d59f3f81/v4l/msp3400-driver.o] Error 1
Makefile:1495: recipe for target '_module_/home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/v4l-dvb-d59f3f81/v4l' failed
make[6]: *** [_module_/home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/v4l-dvb-d59f3f81/v4l] Error 2
make[6]: Leaving directory '/home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/linux-4.9.77'
Makefile:51: recipe for target 'default' failed
make[5]: *** [default] Error 2
make[5]: Leaving directory '/home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/v4l-dvb-d59f3f81/v4l'
Makefile:26: recipe for target 'all' failed
make[4]: *** [all] Error 2
make[4]: Leaving directory '/home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/v4l-dvb-d59f3f81'
Makefile:72: recipe for target '/home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/v4l-dvb-d59f3f81/.built' failed
make[3]: *** [/home/lede/openwrt-ar71/build_dir/target-mips_24kc_musl/linux-ar71xx_generic/v4l-dvb-d59f3f81/.built] Error 2
make[3]: Leaving directory '/home/lede/openwrt-ar71/package/openwrt-dvb/v4l-dvb'
package/Makefile:106: recipe for target 'package/openwrt-dvb/v4l-dvb/compile' failed
make[2]: *** [package/openwrt-dvb/v4l-dvb/compile] Error 2
make[2]: Leaving directory '/home/lede/openwrt-ar71'
package/Makefile:102: recipe for target '/home/lede/openwrt-ar71/staging_dir/target-mips_24kc_musl/stamp/.package_compile' failed
make[1]: *** [/home/lede/openwrt-ar71/staging_dir/target-mips_24kc_musl/stamp/.package_compile] Error 2
make[1]: Leaving directory '/home/lede/openwrt-ar71'
/home/lede/openwrt-ar71/include/toplevel.mk:216: recipe for target 'world' failed
make: *** [world] Error 2