Bananapi w2 drivers compilation on Ubuntu

Hello I managed with BSP to configure my kernel pretty much ready, I’m with ubuntu 18.04, I would like to transform my bpi w2 into a multimedia server, the USB drivers ok, tvheadend ok but for the TBS drivers impossible. If you have any tips, thank you for the press releases. I am not an expert in Bananapi I find out, thank you. Another question, are the M2 ports activated by default with the sinivoip img because on the BSP compilation options I do not see them or interpret them incorrectly. Thanks in advance, any help is welcome. Cordially.

Log terminal and errors:

Applying patches for kernel 4.9.119-BPI-W2-Kernel
4 9 119
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/pci/ivtv/ivtvfb.c.rej
23 out of 23 hunks FAILED -- saving rejects to file drivers/media/v4l2-core/v4l2-compat-ioctl32.c.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/common/videobuf2/videobuf2-dma-contig.c.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/common/videobuf2/videobuf2-dma-sg.c.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/common/videobuf2/videobuf2-vmalloc.c.rej
1 out of 1 hunk FAILED -- saving rejects to file include/linux/dma-buf.h.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/v4l2-core/v4l2-fwnode.c.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/usb/cx231xx/cx231xx-i2c.c.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/usb/em28xx/em28xx-i2c.c.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/usb/tm6000/tm6000-i2c.c.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/pci/saa7164/saa7164-core.c.rej
2 out of 2 hunks FAILED -- saving rejects to file drivers/staging/media/zoran/videocodec.c.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/i2c/tda1997x.c.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/common/saa7146/saa7146_vbi.c.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/pci/tw686x/tw686x-core.c.rej
2 out of 2 hunks FAILED -- saving rejects to file drivers/media/usb/uvc/uvc_driver.c.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/dvb-core/dvb_ca_en50221.c.rej
3 out of 3 hunks FAILED -- saving rejects to file drivers/media/pci/solo6x10/solo6x10-g723.c.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/v4l2-core/videobuf-dma-sg.c.rej
6 out of 6 hunks FAILED -- saving rejects to file drivers/media/common/videobuf2/videobuf2-dma-contig.c.rej
6 out of 6 hunks FAILED -- saving rejects to file drivers/media/common/videobuf2/videobuf2-dma-sg.c.rej
2 out of 2 hunks FAILED -- saving rejects to file drivers/media/common/videobuf2/videobuf2-memops.c.rej
6 out of 6 hunks FAILED -- saving rejects to file drivers/media/common/videobuf2/videobuf2-vmalloc.c.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/media-request.c.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/pci/cx88/cx88-cards.c.rej
2 out of 2 hunks FAILED -- saving rejects to file drivers/media/pci/cx88/cx88-core.c.rej
2 out of 2 hunks FAILED -- saving rejects to file drivers/media/pci/cx88/cx88.h.rej
1 out of 1 hunk FAILED -- saving rejects to file include/media/media-request.h.rej
2 out of 2 hunks FAILED -- saving rejects to file include/media/videobuf2-memops.h.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/cec/cec-pin-error-inj.c.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/cec/cec-pin.c.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/dvb-core/dvb_ca_en50221.c.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/dvb-core/dvb_demux.c.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/dvb-core/dvb_frontend.c.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/pci/cx18/cx18-driver.h.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/pci/ivtv/ivtv-driver.c.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/pci/ivtv/ivtv-driver.h.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/pci/pt1/pt1.c.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/pci/pt3/pt3.c.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/pci/solo6x10/solo6x10-i2c.c.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/platform/vivid/vivid-radio-rx.c.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/platform/vivid/vivid-radio-tx.c.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/usb/cpia2/cpia2_core.c.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/usb/gspca/cpia1.c.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/v4l2-core/videobuf-dma-sg.c.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/staging/media/zoran/zoran_device.c.rej
1 out of 1 hunk FAILED -- saving rejects to file include/media/v4l2-ioctl.h.rej
2 out of 2 hunks FAILED -- saving rejects to file drivers/media/dvb-core/dvb_net.c.rej
1 out of 1 hunk FAILED -- saving rejects to file drivers/media/v4l2-core/videobuf-dma-sg.c.rej
dvb-demod-avl6882.fw
dvb-demod-drxk-pctv.fw
dvb-demod-gx1503B.fw
dvb-demod-mn88472-02.fw
dvb-demod-mn88473-01.fw
dvb-demod-si2168-01.fw
dvb-demod-si2168-02.fw
dvb-demod-si2168-a20-01.fw
dvb-demod-si2168-a30-01.fw
dvb-demod-si2168-b40-01.fw
dvb-demod-si2183-b60-01.fw
dvb-fe-bcm3510-01.fw
dvb-fe-cx24116.fw
dvb-fe-cx24117.fw
dvb-fe-drxj-mc-1.0.8.fw
dvb-fe-drxj-mc-vsb-1.0.8.fw
dvb-fe-drxj-mc-vsb-qam-1.0.8.fw
dvb-fe-ds3000.fw
dvb-fe-ds300x.fw
dvb-fe-ds3103.fw
dvb-fe-mxl5xx.fw
dvb-fe-or51132-qam.fw
dvb-fe-or51132-vsb.fw
dvb-fe-or51211.fw
dvb-fe-rs6000.fw
dvb-fe-tda10045.fw
dvb-fe-tda10046.fw
dvb-fe-tda10048-1.0.fw
dvb-fe-tda10071.fw
dvb-fe-xc4000-1.4.1.fw
dvb-fe-xc5000-1.6.114.fw
dvb-fe-xc5000c-4.1.30.7.fw
dvb-tuner-si2158-a20-01.fw
dvb-usb-avertv-a800-02.fw
dvb-usb-bluebird-01.fw
dvb-usb-dib0700-1.20.fw
dvb-usb-dibusb-5.0.0.11.fw
dvb-usb-dibusb-6.0.0.8.fw
dvb-usb-dtt200u-01.fw
dvb-usb-dw2101.fw
dvb-usb-dw2102.fw
dvb-usb-dw2104.fw
dvb-usb-dw3101.fw
dvb-usb-id5301.fw
dvb-usb-id5520se.fw
dvb-usb-id5580.fw
dvb-usb-id5590.fw
dvb-usb-it9135-01.fw
dvb-usb-it9135-02.fw
dvb-usb-p1100.fw
dvb-usb-p1100-old.fw
dvb-usb-p7500.fw
dvb-usb-pctv-400e-01.fw
dvb-usb-pctv-450e-01.fw
dvb-usb-pctv-452e-01.fw
dvb-usb-s620.fw
dvb-usb-s630.fw
dvb-usb-s660.fw
dvb-usb-sb340.fw
dvb-usb-SkyStar_USB_HD_FW_v17_63.HEX.fw
dvb-usb-tbs5520-01.fw
dvb-usb-tbsqbox-dvbc.fw
dvb-usb-tbsqbox-id2601.fw
dvb-usb-tbsqbox-id5220.fw
dvb-usb-tbsqbox-id5520.fw
dvb-usb-tbsqbox-id5680.fw
dvb-usb-tbsqbox-id5880.fw
dvb-usb-tbsqbox-id5881.fw
dvb-usb-tbsqbox-id5910.fw
dvb-usb-tbsqbox-id5920.fw
dvb-usb-tbsqbox-id5921.fw
dvb-usb-tbsqbox-id5922.fw
dvb-usb-tbsqbox-id5923.fw
dvb-usb-tbsqbox-id5925.fw
dvb-usb-tbsqbox-id5927.fw
dvb-usb-tbsqbox-id5928.fw
dvb-usb-tbsqbox-id5980.fw
dvb-usb-terratec-h5-drxk.fw
dvb-usb-terratec-h7-az6007.fw
dvb-usb-terratec-h7-drxk.fw
dvb-usb-tt-s2400-01.fw
dvb-usb-umt-010-02.fw
dvb-usb-vp702x-01.fw
dvb-usb-vp7045-01.fw
dvb-usb-wt220u-01.fw
dvb-usb-wt220u-02.fw
sms1xxx-hcw-55xxx-dvbt-02.fw
sms1xxx-hcw-55xxx-isdbt-02.fw
sms1xxx-nova-a-dvbt-01.fw
sms1xxx-nova-b-dvbt-01.fw
sms1xxx-stellar-dvbt-01.fw
v4l-cx231xx-avcore-01.fw
v4l-cx23418-apu.fw
v4l-cx23418-cpu.fw
v4l-cx23418-dig.fw
v4l-cx23885-avcore-01.fw
v4l-cx23885-enc-broken.fw
v4l-cx23885-enc.fw
v4l-cx25840.fw
make -C /home/pi/media_build/v4l distclean
make[1]: Entering directory '/home/pi/media_build/v4l'
rm -f *~ *.o *.ko .*.o.cmd .*.ko.cmd *.mod.c av7110_firm.h fdump \
        config-compat.h Module.symvers Module.markers modules.order \
        *.unsigned .*.ko.unsigned.cmd
make -C firmware clean
make[2]: Entering directory '/home/pi/media_build/v4l/firmware'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/pi/media_build/v4l/firmware'
rm -f .version .*.o.flags .*.o.d *.mod.gcno Makefile.media \
        Kconfig Kconfig.kern .config .config.cmd .myconfig \
        .kconfig.dep config-mycompat.h
rm -rf .tmp_versions .tmp*.ver .tmp*.o .*.gcno .cache.mk
rm -f scripts/lxdialog scripts/kconfig
make -C firmware distclean
make[2]: Entering directory '/home/pi/media_build/v4l/firmware'
make[2]: Nothing to be done for 'distclean'.
make[2]: Leaving directory '/home/pi/media_build/v4l/firmware'
make[1]: Leaving directory '/home/pi/media_build/v4l'
make -C /home/pi/media_build/v4l stagingconfig
make[1]: Entering directory '/home/pi/media_build/v4l'
No version yet, using 4.9.119-BPI-W2-Kernel
make[2]: Entering directory '/home/pi/media_build/linux'
Syncing with dir ../../media
Can't find ../../media/Makefile at ./use_dir.pl line 287.
Makefile:132: recipe for target 'apply_patches' failed
make[2]: *** [apply_patches] Error 2
make[2]: Leaving directory '/home/pi/media_build/linux'
Makefile:391: recipe for target 'stagingconfig' failed
make[1]: *** [stagingconfig] Error 2
make[1]: Leaving directory '/home/pi/media_build/v4l'
Makefile:26: recipe for target 'stagingconfig' failed
make: *** [stagingconfig] Error 2
V4L drivers building...
make -C /home/pi/media_build/v4l
make[1]: Entering directory '/home/pi/media_build/v4l'
scripts/make_makefile.pl
Updating/Creating .config
make[2]: Entering directory '/home/pi/media_build/linux'
make[2]: Entering directory '/home/pi/media_build/linux'
Syncing with dir ../../media
Can't find ../../media/Makefile at ./use_dir.pl line 287.
Syncing with dir ../../media
Can't find ../../media/Makefile at ./use_dir.pl line 287.
Makefile:132: recipe for target 'apply_patches' failed
make[2]: *** [apply_patches] Error 2
make[2]: Leaving directory '/home/pi/media_build/linux'
Makefile:132: recipe for target 'apply_patches' failed
make[2]: *** [apply_patches] Error 2
make[2]: Leaving directory '/home/pi/media_build/linux'
Preparing to compile for kernel version 4.9.119

***WARNING:*** You do not have the full kernel sources installed.
This does not prevent you from building the v4l-dvb tree if you have the
kernel headers, but the full kernel source may be required in order to use
make menuconfig / xconfig / qconfig.

If you are experiencing problems building the v4l-dvb tree, please try
building against a vanilla kernel before reporting a bug.

Vanilla kernels are available at http://kernel.org.
On most distros, this will compile a newly downloaded kernel:

cp /boot/config-`uname -r` <your kernel dir>/.config
cd <your kernel dir>
make all modules_install install

Please see your distro's web site for instructions to build a new kernel.

WARNING: This is the V4L/DVB backport tree, with experimental drivers
         backported to run on legacy kernels from the development tree at:
                http://git.linuxtv.org/media-tree.git.
         It is generally safe to use it for testing a new driver or
         feature, but its usage on production environments is risky.
         Don't use it in production. You've been warned.
VIDEO_MUX: Requires at least kernel 4.13.0
VIDEO_CROS_EC_CEC: Requires at least kernel 4.19.0
RADIO_WL128X: Requires at least kernel 4.13.0
VIDEO_TDA1997X: Requires at least kernel 4.15.0
VIDEO_AK7375: Requires at least kernel 4.10.0
VIDEO_DW9714: Requires at least kernel 9.255.255
VIDEO_DW9807_VCM: Requires at least kernel 4.10.0
VIDEO_IMX214: Requires at least kernel 4.10.0
VIDEO_IMX258: Requires at least kernel 4.10.0
VIDEO_IMX319: Requires at least kernel 4.10.0
VIDEO_IMX355: Requires at least kernel 4.10.0
VIDEO_OV2680: Requires at least kernel 4.10.0
VIDEO_OV5670: Requires at least kernel 4.10.0
VIDEO_OV7251: Requires at least kernel 4.10.0
VIDEO_OV772X: Requires at least kernel 4.18.0
VIDEO_OV8856: Requires at least kernel 4.10.0
VIDEO_MT9V111: Requires at least kernel 4.10.0
VIDEO_I2C: Requires at least kernel 4.17.0
I2C_BCM2048: Requires at least kernel 4.10.0
VIDEO_IPU3_IMGU: Requires at least kernel 9.255.255
Created default (all yes) .config file
./scripts/make_myconfig.pl
[ ! -f "./config-mycompat.h" ] && echo "/* empty config-mycompat.h */" > "./config-mycompat.h" || true
make -C firmware prep
creating symbolic links...
perl scripts/make_config_compat.pl /lib/modules/4.9.119-BPI-W2-Kernel/source ./.myconfig ./config-compat.h
make[2]: Entering directory '/home/pi/media_build/v4l/firmware'
make[2]: Nothing to be done for 'prep'.
make[2]: Leaving directory '/home/pi/media_build/v4l/firmware'
make -C firmware
make[2]: Entering directory '/home/pi/media_build/v4l/firmware'
make[2]: Nothing to be done for 'default'.
make[2]: Leaving directory '/home/pi/media_build/v4l/firmware'
Kernel build directory is /lib/modules/4.9.119-BPI-W2-Kernel/build
make -C /lib/modules/4.9.119-BPI-W2-Kernel/build SUBDIRS=/home/pi/media_build/v4l  modules
make[2]: Entering directory '/usr/src/linux-headers-4.9.119-BPI-W2-Kernel'
arch/arm64/Makefile:27: ld does not support --fix-cortex-a53-843419; kernel may be susceptible to erratum
./scripts/gcc-version.sh: line 25: aarch64-linux-gcc: command not found
./scripts/gcc-version.sh: line 26: aarch64-linux-gcc: command not found
make[2]: aarch64-linux-gcc: Command not found
make[2]: aarch64-linux-gcc: Command not found
make[2]: aarch64-linux-gcc: Command not found
make[2]: aarch64-linux-gcc: Command not found
make[2]: aarch64-linux-gcc: Command not found
  CC [M]  /home/pi/media_build/v4l/msp3400-driver.o
/bin/sh: 1: aarch64-linux-gcc: not found
scripts/Makefile.build:334: recipe for target '/home/pi/media_build/v4l/msp3400-driver.o' failed
make[3]: *** [/home/pi/media_build/v4l/msp3400-driver.o] Error 127
Makefile:1614: recipe for target '_module_/home/pi/media_build/v4l' failed
make[2]: *** [_module_/home/pi/media_build/v4l] Error 2
make[2]: Leaving directory '/usr/src/linux-headers-4.9.119-BPI-W2-Kernel'
Makefile:51: recipe for target 'default' failed
make[1]: *** [default] Error 2
make[1]: Leaving directory '/home/pi/media_build/v4l'
Makefile:26: recipe for target 'all' failed
make: *** [all] Error 2
V4L drivers installing...
make -C /home/pi/media_build/v4l install
make[1]: Entering directory '/home/pi/media_build/v4l'
Installing kernel modules under /lib/modules/4.9.119-BPI-W2-Kernel/kernel/drivers/media/:
/sbin/depmod -a 4.9.119-BPI-W2-Kernel
make -C firmware install
make[2]: Entering directory '/home/pi/media_build/v4l/firmware'
Installing firmwares at /lib/firmware:
make[2]: Leaving directory '/home/pi/media_build/v4l/firmware'
make[1]: Leaving directory '/home/pi/media_build/v4l'
V4L drivers installation done
You need to reboot...

Hello In fact we can only compile the modules and drivers present on BSP. Please update BSP with a little more detail to make BPI work properly. A lot of drivers are missing! Quite a few projects can be implemented with BPI. Cordially.