I'm using Thundercomm's sdkmanager to flash image onto the RB5 board. For the image I flash, it has very limited kernel modules included. It doesn't even have nfs included. I wonder what's the recommended way (no so complicated) to generate bootable image for RB5, that has a more kernel modules supported?
NFS support for RB5 kernel?
Posted: Sun, 2021-06-20 08:15
Currently the sdkmanger can flash prebiuilt kenel image to device .If you want to configure and build kernel image, you should have source code, and reconfigure kenrel and build it. I wonder if you have source code paackage?
I downloaded code from chipcode and code aurora forum and following
QRB5165.LE.1.0 LEPDK QUICK START GUIDE
Apr 15, 2021
to build a Linux image.
Is this the right process, am I following the right documentation? Also, I'm using version
QRB5165.LE.1.0 AMSS OEM
to build the image. I also see other versions as well on the website. Is this the right version to use?
Hi da.teng
I think you should follow up releasenote and get software package from Thundercomm, then configure your Kenrel and build kernel to support NFS. Please check Thundercomm server support ( [email protected]) for your permission to download software package.
Thanks
Kevin
I was able to get source code for LE image and build successfully. The image was able to flash and boot. I tried to enable nfs on the board by setting
DISTRO_FEATURES_append = " nfs"
EXTRA_IMAGE_FEATURES += "nfs-client"
After that, I was able to boot the image and find mount.nfs was on the filesystem. However, when I actually mount something from other device on the network it complains:
mount.nfs: No such device
And when I do modprobe nfs it says
modprobe: FATAL: Module nfs not found in directory /lib/modules/4.19.157-perf
And here is the message I got from dmesg | grep nfs
Any idea how to actually enable NFS on the image?
Just got NFS to work on the device. I guess the key here is to enable Kernel support by adding the necessary config items. I did it through changing recipe-kernel under meta-qti-bsp. I added the following two config items:
CONFIG_NFS_FS=y
CONFIG_NFSD=y
Then you still have to add the necessary package (nfs-utils) through yocto.
After that, the kernel has build error with with NFS enabled. You need the following changes in the kernel source code to pass the compilation:
fs/nfs/read.c
--- readpage_async_filler(filler_t * data, struct page *page)
+++ readpage_async_filler(void *data, struct page *page)
Then flashing the images on the board should enable NFS on the board.
Great! You got it