This is an old thread, but for education on your system I tried to install your latest 4.2 Kernel for BPI-M2 using the 16.04.2 Ubuntu mate image you posted.
I am not happy with Kernel 3.3, too old, also no sound Analog or HDMI, also very slow.
I managed to compile the kernel, I had to add the following resources:
sudo apt-get install libusb-1.0-0 libusb-1.0-0-dev git wget fakeroot kernel-package zlib1g-dev libncurses5-dev u-boot-tools
after running make in ~/BPI-Mainline-bsp folder
it produced all the needed files like zImage, uImage also said it the modules.
I have the following folders in /lib/modules:
I then did as you asked in /boot:
sudo mkimage -C none -A arm -T script -d boot.cmd boot.scr
sudo dd if=u-boot-sunxi-with-spl.bin of=/dev/sdb1 bs=1024 seek=8
leads to rubbish maybe chinese files & folders of boot partition.
I do not need to copy the root partition, it is already available, only make the kernel of
/lib/modules/4.4.15-v7+ set up.
In Arch Linux & Ubuntu I know how to do this with grub or efi.
In u-boot I am not used to it.
Can you explain how to make the kernel 4.x selected instead of 3.3
Also what is wrong with u-boot-sunxi-with-spl.bin ?