Once you can ping the SBC from your host, you can transfer a file to the SBC, for
example a benchmark program. If your host machine is running Windows, we rec-
ommend using WinSCP to transfer files between host and target.
4.2.2 Ethernet Performance
The NXP Layerscape processors contain an Ethernet controller known as DPAA
(Datapath Acceleration Architecture). The LS1043A and LS1046A contain a DPAA
and the LS1088A and LX2160A contain the second generation DPAA2. Further
documentation on the DPAA and DPAA2 can be found in NXP's Reference
Manuals for the corresponding processor and the separate DPAA Reference
Manual.
One of the hardware blocks within the DPAA is the Frame Manager (FMan) –a
functional unit that combines the Ethernet network interfaces with packet
distribution logic to provide intelligent distribution and queuing decisions for
incoming traffic at line rate.
The Frame Manager Configuration Tool (FMC) is a command line tool used to
configure the FMan to perform the desired parse-classify-distribute function for a
given application. The FMC needs to be invoked to improve receive performance
on the Ethernet interfaces.
root@mpxls10xx:~# cd /etc/fmc/config/private/mpxls1046
root@mpxls10xx:~# fmc -c mpxls1046_config.xml -p policy_ipv4.xml -a
4.2.3 Compiling Programs On The Target
If you booted from the SD card, then the default root filesystem already contains a
gcc toolchain (GCC 10.2.0) allowing you to compile natively on the target.
root@mpxls10xx:~# cc helloWorld.c -o hello
This creates an executable with the name hello. To run it:
root@mpxls10xx:~# ./hello
4.2.4 Cross-compilation On The Linux Host
To cross-compile for an ARMv8 target you first need to build the cross-toolchain on
your Linux host. Please refer to section 6.4 Build Toolchain for Cross-compilation.
After you have soured the environment file you can verify the setup and build your
application
$ echo $CC
aarch64-fsl-linux-gcc --sysroot=/home/user/yocto-
sdk/build_mpxls1046/tmp/work/aarch64-fsl-linux/meta-ide-sup-
port/1.0-r3/recipe-sysroot
$ $CC helloWorld.c -o hello
Now you can transfer the executable file hello over to your target and run it there.