Hello ,
I have built WIFI backports driver modules for Jetson Nano B01 platform. Below are the packages and versions used for the build:
Linux Driver Package -32.7.3
JetPack - 4.6.3
Kernel version - 4.9.299 tegra
Infineon wifi backport package- v5.15.58-backports
The 4 .ko files -compat.ko,brcmutil.ko,brcmfmac.ko and cfg80211.ko are generated after building Wifi backports for Nvidia latest kernel 4.9.
Dts file for wifi-fmac is copied to the below path in the nano kernel-source and also in the Makefile. Also I have copied the dts file to the overlays path also.
The screenshots for the Makefile and the path are shown below :
/home/eng/Documents/NvidiaNano/Linux_for_Tegra/source/public/hardware/nvidia/platform/t210/porg/kernel-dts
/home/eng/Documents/NvidiaNano/Linux_for_Tegra/source/public/hardware/nvidia/platform/tegra/common/kernel-dts/overlays
tegra210-p3448-0000-p3449-0000-b00-cypress-btwifi-fmac.dts (323.5 KB)
I wanted to know whether the dts file attached for btwifi fmac is fine (it will work) or any changes need to be done for Jetson Nano B01 board.
Then ,I did the steps for kernel compilation and generation of boot Images as mentioned below :
- The paths for the toolchain and kernel output directory are set for Jetson Nano Linux kernel as mentioned below :
- export TEGRA_KERNEL_OUT=/home/eng/Documents/NvidiaNano/L4T_Kernel_Blt
- export CROSS_COMPILE=/home/eng/Documents/NvidiaNano/Env_Setup/l4t-gcc/gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-
- export ARCH=arm64
- export LOCALVERSION=“-tegra”
2.Cleaning the kernel for a clean build and Jetson nano configuration is made as the default configuration in kernel, which is tegra_defconfig as shown in the below commands :
- make distclean
- make ARCH=arm64 O=$TEGRA_KERNEL_OUT LOCALVERSION=“-tegra” CROSS_COMPILE=“${CROSS_COMPILE}” tegra_defconfig
- The kernel is configured with respect to WIFI by setting the flags as mentioned below in the menuconfig.
- make ARCH=arm64 O=$TEGRA_KERNEL_OUT LOCALVERSION=“-tegra” menuconfig
Setting the below configuration in .config file.
CONFIG_CFG80211=m
CONFIG_BCMDHD=n
CONFIG_ASYMMETRIC_KEY_TYPE=y
CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y
CONFIG_X509_CERTIFICATE_PARSER=y
CONFIG_PKCS7_MESSAGE_PARSER=y
CONFIG_ARCH_LAYERSCAPE=y
CONFIG_CRYPTO_DEV_FSL_CAAM_PKC_API=y
CONFIG_CRYPTO_DEV_FSL_CAAM=y
CONFIG_CRYPTO_DEV_FSL_CAAM_JR=y
CONFIG_MODULE_SIG=y
CONFIG_OID_REGISTRY=y
CONFIG_ASN1=y
CONFIG_SYSTEM_DATA_VERIFICATION=y
CONFIG_SYSTEM_TRUSTED_KEYRING=y
CONFIG_KEYS=y
CONFIG_CRYPTO=y
CONFIG_CRYPTO_RSA=y
- After configuring the kernel with respect to WIFI, kernel configuration is saved through the below command :
- make ARCH=arm64 O=$TEGRA_KERNEL_OUT LOCALVERSION=“-tegra” CROSS_COMPILE=“${CROSS_COMPILE}” savedefconfig
- Compilation of the kernel and image file generation in the output kernel directory,that is ,L4T_Kernel_Blt .
- make ARCH=arm64 O=$TEGRA_KERNEL_OUT LOCALVERSION=“-tegra” -j8
I am also facing issues in this compilation step.I tried to solve but its not going ahead. I am not sure whether it is related to dts file changes. Please guide for the same.
PFA the screenshots for the errors.
e