New Buildroot Pre-Release fsimx8mm-B2020.08-pre

  • i.MX8MM Linux Pre-Release B2020.08 (Buildroot)

    This is the pre release for fsimx8mm. fsimx8mm is the software for all boards from F&S that are based on the i.MX8MM series application processors with familie 8MM from NXP. Currently this consists of the board PicoCoreMX8MM. More boards may be added to this family in the future. All these boards can work with software that is created from this pre-release package.

    The pre-release consists of file:

    This is the pre-release itself containing all sources, the binary images, the documentation, examples and the toolchain.

    These tar archives are compressed with bzip2. So to see the files, you first have to unpack the archives

    1. tar xvf fsimx8mm-B2020.08-pre.tar.bz2

    This will create a directory fsimx8mm-B2020.08-pre that contains all the files of the release.

    Please read the file FSiMX8MM_FirstSteps_eng.pdf. It describes the first steps when working with the board and gives references to further reading.

    Release Notes for fsimx8mm-B2020.08-pre

    This pre-release brings new versions to all parts of the software stack. Here are some highlights of this release.

    1. New version numbering

    We have changed the way how we name versions. In the past we had a version number made up of a major part m and a minor part n. Then we used Vm.n for Buildroot releases and Ym.n for Yocto releases. Release versions were counted individually for each CPU architecture. But then a "new" CPU type unfortunately had a smaller version number than an "old" CPU, even if the code was coming from the same sources or was even newer. This caused some irritations and misunderstandings of what release is actually the newest.

    So from now on we will use the year and month of the release instead, preceeded by a 'B' for Buildroot releases and a 'Y' for Yocto releases. For example the "B2020.01" of this release indicates a Buildroot based release from January 2020.

    2. Support for board PicoCoreMX8MM

    This is the third pre release that supports PicoCoreMX8MM Rev. 1.00 and Rev. 1.10.

    3. Buildroot 2019.05.3

    Buildroot 2019.05 has many many updated packages, for example Qt-5.12, busybox-1.30.1, xserver-1.20.5 and gstreamer-1.16.0. We actually use buildroot-2019.05.3, which is a newer version that already has some more fixes.

    4. New toolchain fs-toolchain-8.3-armv8ahf

    Our new toolchain is now based on gcc-8.3 that fully supports C++14 and has basic support for C++17 and even some experimental support for C++2a.

    This toolchain is now a 64-bit toolchain, i.e. it will not run on PCs (or VMs) with a 32-bit Linux anymore. The default output of the toolchain is of course still ARMv8 code for 64 bit ARM CPUs like Cortex-A53, as in i.MX8MM.

    This toolchain also fixes a bug in the calling convention for ARM CPUs that was introduced in gcc-5.x and prevented some code optimizations. Many software packages now depend on a compiler that has this bug fixed. For example our new u-boot-2018.03 will produce bad code if compiled with a toolchain before gcc-6.0. Qt5-webengine will not compile with a toolchain before gcc-8.0. So please use this new toolchain together with the code of this release.

    5. Documentation

    In the past, the documentation that was included in the release package itself was often superseded by newer versions on our website. But people continued to use the outdated version of the release, causing unnecessary complications.

    To avoid this, from now on only the software related documentation is directly included in the release package that contains direct links to the appropriate resources on our website. There you can download the newest versions of hardware documentations, schematics, layout files, certificates, accessories, add-ons, adapters and similar things.

    The software documentation has only basic introdution to the work with boards of fsimx8m(m) architecture. And there is a new document LinuxOnFSBoards_eng.pdf that shows a more in-depth view of a Linux system in general and of the F&S versions of NBoot, U-Boot, Linux and Buildroot in particular. This is still work in progress, some chapters are not fully done yet and will be revised in the future. Check our website from time to time to see if there is a newer version of this document.


    The following list shows the most noticable changes in this release in more detail since our last i.MX8MM release. Please note that the source code may used for other platforms. This is why you will also find references to other CPU types and F&S boards here in the changelog.

    u-boot-2018.03-fsimx8mm-B2020.08 (11.08.2020)

    Supported boards only: PicoCoreMX8MM

    • Update history file to u-boot-2018.03-fsimx8mm-B2020.08
    • Improve USB support for fsimx8mm
    • Improve display support for fsimx8mm
    • Fix fsimx6ul PicoCOMA7 USB and Display
    • Add basic device tree support for serial drivers on F&S platforms
    • Remove IOMUX_PAD macros for i.MX6UL and ANADIG_PLL_AUDIO_TEST macros
    • Remove stdio_dev from F&S serial devices and netconsole
    • Revert to F&S timer implementation on i.MX
    • void 2compiler warning in ubi.c on ARM64

    u-boot-2018.03-fsimx8m(m,n)-Y2020.06 (18.06.2020)

    Supported boards: PicoCoreMX8MN, PicoCoreMX8MM, armStoneMX8M

    • Improve eMMC support for fsimx8m(m,n)
    • Improve nand environment support for iMX8MN

    u-boot-2018.03-fsimx8mm-Y2020.06 (16.06.2020)

    Supported boards: PicoCoreMX8MN, PicoCoreMX8MM, armStoneMX8M

    • Add support for fsimx8mn to boot from emmc
    • Add support for fsimx8mm to boot from emmc

    u-boot-2018.03-fsimx8m-Y2020.06 (09.06.2020)

    Supported boards: PicoCoreMX8MN, PicoCoreMX8MM, armStoneMX8M

    • Move PMIC initialization to late init (fsimx8mm only)
    • Correct PMIC settings for PicoCoreMX8MM
    • Add basic support for PicoCoreMX8MN
    • Use F&S optimized FAT driver
    • Revert back to F&S version of FAT configuration
    • Improve imx8mm mipi clock settings

    u-boot-2018.03-fsimx8m-Y2020.05 (02.06.2020)

    Supported boards: PicoCoreMX8MM, armStoneMX8M

    • Improve max frequency for HS200 or HS400 modes

    u-boot-2018.03-fsimx8mm-Y2020.05 (26.05.2020)

    Supported boards: PicoCoreMX8MM

    Not tested: PicoCoreMX8MN

    • Improve support for j070wvtc0211 panel
    • Correct initialization of usb device
    • Revert back to F&S version of fsl_esdhc.c
    • config_whitelist.txt should be sorted
    • Merge remote-tracking branch 'origin/master'
    • Add support to activate UART4 for M4 core
    • Switch debug output of the PCoreMX8MM to UART_A
    • Merge remote-tracking branch 'origin/master'
    • Keep .kernel_ubifs and .fdt_ubifs for Cubes
    • Always use two MAC addresses on AGATEWAY
    • AGATEWAY must set MAC_WLAN in bdinfo
    • Enable MMC as bootdevice (fsimx8x)
    • Update history file to u-boot-2018.03-fsimx6sx-Y2020.03
    • Add basic support for armStoneMX8M
    • Use NXP version for FAT configuration
    • Use F&S usb driver
    • Add support for MIPIDSI display g050tan01
    • Update history file to u-boot-2018.03-fsimx6-Y2020.03
    • Use F&S bootaux driver
    • Use F&S serial device driver
    • Use clock function from F&S branch
    • Use SOC functionality from F&S branch
    • Merge branch imx_v2018.03_4.14.98_2.3.0
    • Add NXP U-Boot branch imx_v2018.03_4.14.98_2.3.0

    linux-4.14.98-fsimx8mm-B2020.08 (11.08.2020)

    Supported boards:PicoCoreMX8MM

    • Improve pmic regulator voltages for PicoCoreMX8MM
    • Improve fsimx8mm support
    • Update copyright messages in device trees
    • Improve support for g070y2-l01 panel (armStoneMX8M only)
    • Add support for j070wvtc0211 panel (armStoneMX8M only)
    • Improve clock calculation for NWL MIPI-DSI core
    • Add support for panel sitronix ST7703
    • Add support for PicoCoreMX8MX PCB
    • Improve rtc-pcf85263 driver - support generating output clock
    • Add support for MCP25XXFD
    • Add panel g185han01 support for armStoneMX8M
    • NXP version rel_imx_4.14.98_2.3.2_patch
    • Merge branch 'fsimx8mx-B2019.11-pre'

    linux-4.14.98-fsimx8mn-Y2020.06 (18.06.2020)

    Supported boards: PicoCoreMX8MN, PicoCoreMX8MM, armStoneMX8MM, efusMX8X

    • Correct device tree support for PicoCoreMX8MM
    • Update history file to linux-4.14.98-fsimx8mm-Y2020.06
    • Update history file to fsimx8m(m,n)-Y2020.5(6)

    linux-4.14.98-fsimx8mn-Y2020.06 (16.06.2020)

    Supported boards: PicoCoreMX8MN, PicoCoreMX8MM, armStoneMX8MM, efusMX8X

    linux-4.14.98-fsimx8mn-Y2020.06 (09.06.2020)

    Supported boards: PicoCoreMX8MN, PicoCoreMX8MM, armStoneMX8MM, efusMX8X

    • Add support for PicoCoreMX8MN
    • Add HDMI support for armStoneMX8M

    linux-4.14.98-fsimx8mm-Y2020.05 (26.05.2020)

    Supported boards: PicoCoreMX8MM

    Not tested: PicoCoreMX8MN

    • Improve support for panel j070wvtc0211
    • Add support for MIPI-DSI panel rf3500d-ayw-mng1
    • Add support for F&S adp-mipi2lvds1 board with j070wvtc0211 panel
    • Merge commit rel_imx_4.14.98_2.3.1_patch into fsimx8mx-B2019.11-pre
    • Merge commit rel_imx_4.14.98_2.3.0 into fsimx8mx-B2019.11-pre
    • Improve device tree for PicoCoreMX8MM UART pin names because of merge
    • Merge commit imx_4.14.98_2.2.0 into fsimx8mx-B2019.11-pr
    • Add driver support to fsimx8m_defconfig SGTL5000, MCP251X SPI CAN driver
    • Improve device tree support for armStoneMX8M
    • Improve audio support for armStoneMX8M
    • Improve device tree support for picocoremx8mm
    • Merge branch rel_imx_4.14.98_2.1.0 into fsimx8mx-B2019.11-pre
    • Merge to rel_imx_4.14.98_2.0.0_ga
    • Improve imx-sgtl5000
    • Improve compiler warnings
    • Add support for inversion of x,y coordinates focaltech touch driver
    • Add audio support for SGTL5000
    • Add spidev support
    • Remove old display timings
    • Add DT support for board rev. 1.10
    • Add support for g050tan01 panel
    • Add dynamic calculation of pll pms
    • Add device tree support for DSI2LVDS panels g070y2-l01, j070wvtc0211
    • Add basic support for TC358764
    • Add IOMUX configuration for UART
    • Add CLKO2 support
    • Corrects some compatible strings
    • Add support for PicoCoreMX8MM
    • Add 'best-match' attribute to set precise clock
    • Add sn65dsi84 to default configuration
    • Add support for sn65dsi84
    • Add support for display panels g070y2-l01, g070y2-l01
    • Add BDIInfo driver
    • Correct compatible string for USB3 nodes
    • Add support for armStoneMX8M
    • NXP Version rel_imx_4.14.78_1.0.0_ga

    buildroot-2019.05.3-fsimx8mm-B2020.08 (11.08.2020)

    Supported boards only: PicoCoreMX8MM

    • Update history file to buildroot-2019.05.3-fsimx8mm-B2020.08
    • Move entry to create install script for fsimx8mm
    • Enable 2D support for 64-bit architecture
    • Set PKG_CONFIG_SYSROOT_DIR to the build process
    • Enable FW images for iMX8MM plattform
    • Add config entries for iMX8MQ and iMX8MM
    • Bump imx-vpu-hantro to 1.14
    • Improve libdrm settings
    • Add install script for fsimx8mm
    • Bump mkimage to imx_4.14.98_2.3.0
    • Bump uuc for ramfs default configuration
    • Bump kobs-ng to support iMX8M(M,N)
    • Add udev rules to create touchscreen device
    • Add minimal configuration for fsim8mm with ramfs
    • Add configurations to build fsimx8mm with mmc support
    • Add minimal configuration for fsimx8mm
    • Improve fsimx8mm support
    • Add support for fsimx8mm
    • Update wayland/weston packages to work with kernel 4.14.98_2.3.1_patch
    • Support package touch_firmware in F&S defconfigs
    • Add package touch-firmware
    • Remove silex package build temporary from fsimx6sx/6ul defconfigs
    • Upgrade necessary packages to work with kernel version 4.14.98_2.3.1_patch
    • Improve XServer authority


    (no changes)


    fs-toolchain-8.3-armv8ahf.tar.bz2 for Linux

    • Based on gcc-8.3
    • Support for C and C++
    • Includes glibc-2.29 (compiled for ARM code)
    • With binutils-2.32
    • Hardware floating point
    • Native Posix Thread Library (NPTL)
    • Full support for C++14 and OpenMP 4.5
    • Basic support for C++17
    • Experimental support for C++2a


    - Add PicoCoreMX8MM-Linux-First-Steps_eng.html to download FSiMX8MM_FirstSteps_eng.pdf

    - Add PicoCoreMX8MM-Linux-on-FS-Boards_eng.html to download LinuxOnFSBoards_eng.pdf

    Please download the hardware documentation and GPIO Reference Cards directly from our website. Then you always have the newest version.

    Your F&S Support Team

    F&S Elektronik Systeme GmbH
    As this is an international forum, please try to post in English.
    Da dies ein internationales Forum ist, bitten wir darum, Beiträge möglichst in Englisch zu verfassen.

  • Fix: Reboot when trying to detect a USB device

    Unfortunately, there is an issue with usb device on our new base board PicoCoreBBDSI Rev.1.20. In some cases U-Boot will restarted when trying to detect a USB device.

    Please apply the patch, appended to this post, to fix the issue.

    Copy the patch to your u-boot-f+s root directory and run the following command there:

    1. patch -p1 < 001-Improve-OTG-support-for-fsimx8mm.patch

    Please excuse the inconvenience

    Your F&S support team


    F&S Elektronik Systeme GmbH
    As this is an international forum, please try to post in English.
    Da dies ein internationales Forum ist, bitten wir darum, Beiträge möglichst in Englisch zu verfassen.