2
votes

I'm using Yocto to build a custom linux image for a zedboard. I need to run openVPN on the Zedboard, which requires access to the TUN/TAP virtual network interface. I successfully incorporated openVPN and all its dependencies into my image using the meta-networking layer, but it appears that the necessary TUN/TAP kernel drivers are not present in the image.

How can I ensure that the TUN/TAP kernel drivers are included in my image?

I have the following two lines in my conf/local.conf file: IMAGE_INSTALL_append = " kernel-modules" CORE_IMAGE_EXTRA_INSTALL += "openssl openvpn docker tunctl

I don't know how I could include them in my (otherwise plain) linux-xlnx kernel. I tried adding kernel-module-tun to my IMAGE_INSTALL_append as mentioned here, but it does not appear this is a valid package provided by any of my layers.

I also tried using bitbake -c menuconfig virtual/kernel to manual include the modules in the image, however after doing this and rerunning bitbake core-image-minimal I still did not see tun.ko appear in either of the two locations below that I would expect them to be installed to...

${BUILDDIR}/tmp/work/zedboard_zynq7-poky-linux-gnueabi/core-image-minimal/1.0-r0/rootfs/lib/modules/4.6.0-xilinx-v2016.3/kernel/net/

or

${BUILDDIR}/tmp/work/zedboard_zynq7-poky-linux-gnueabi/linux-xlnx/4.6-xilinx-v2016.3+gitAUTOINC+0e4e407149-r0/image/lib/modules/4.6.0-xilinx-v2016.3/kernel/net

Any help appreciated, thanks!

1

1 Answers

3
votes

Are you really building the tun module? If so, addingIMAGE_INSTALL_append = "kernel-module-tun"` should have worked for you.

Try running:

bitbake virtual/kernel -c menuconfig

and verify that you're building the tun module.