Posts by fs-support_PG

    Hello Michele,


    to use the backlight via sysfs you will have to export it first.


    Go to the directory of the PWM you want to use
    cd /sys/class/pwm/pwmchip0/

    and export it

    echo 0 > export

    Please note that this will only work if this PWM is not claimed by another device like backlight.


    Now you should see a new subdirectory pwm0

    ls pwm0/


    There you shloud be able to set the period in nanosecond,

    echo 5000000 > pwm0/period

    the duty cycle in nanoseconds,

    echo 2500000 > pwm0/duty_cycle
    the polarity (this is only possible if the device is disabled),

    echo "inversed" > pwm0/polarity

    echo "normal" > pwm0/polarity

    and enable/disable the device.

    echo 1 > pwm0/enable

    echo 0 > pwm0/enable


    If you need an example on how to control pwm via a C-programm please see the pwm-example in your build directory of your release, e.g:

    fsimx6-B2020.04/build/examples-fus-B2020.04/pwm/pwm.c


    Best Regards


    Your F&S Support Team

    This is because of UBIFS overhaed.

    UBIFS needs 17 LEBs for metadata.

    So for your 124 KiB LEB size this means 2.108 KiB which adds up to your 5MB partition size.


    Your F&S support team

    Hello Carles and welcome to the forum,


    for creating an UBIpartition in Uboot you can refer to chapter 5.5 UBI Concepts of the Linux OnFS Boards documentation.

    https://www.fs-net.de/assets/d…n/LinuxOnFSBoards_eng.pdf


    This seems fine so far. Please keep in mind that erasing a valid UBI partition in an update-script with nand erase.part TargetFS also erases the list of erase count and might not be a good idea. For more information please see chapter 5.5 UBI Concepts of the Linux OnFS Boards documentation. If you have already installed a rootfs run ubi remove rootfs instaed.



    No, this is only necessary to tell the Uboot to load the rootfile system from the NAND flash.


    Quote

    Also, when the system with this udate.scr is created I notice that the 5MB for the logs partition is reserved and in the location /dev there is a device called ubi0_1 and ubi0_0 (don’t really know if one of them is the logs partitions).

    I’m pretty new with partitions so I’m a little bit lost, I know from your pdfs that as I have it now I already have the partition created but what it’s missing is putting a filesystem inside. I don’t really know neither how to create this filesystem nor what type, because for the logs I would need an empty filesystem (?).


    ubi0_0 should be your logs partition as you created it first.

    If you mount an empty UBI partition an ubifs will automatically get created. Just run


    mount -t ubifs /dev/ubi0_0 /mnt/


    And you should be able to read/write to it like to your rootfs.


    I hope this helps.


    Best regards and have a great day


    Your F&S Support Team

    Hello guser,


    I investigated your problem and indeed, it seems that your old board version and the current release do not fit.

    Also, on i.MX8 the Uboot gets loaded by the SPL (Secondary Boot Loader), which does not get replaced if you replace only the Uboot.nb0.

    Replacing the SPL is quite complicated at the moment, especially on an old board revision like yours, but can be done if you really need to.

    Your new PicCoreMX8MM is on its way to you, so I would recommend working with the new revision, but if you are on a tight schedule I can assist you in replacing the SPL.


    Your F&S Support Team

    F&S PicoCoreMX6UL Buildroot Release (14.08.2020)


    Please see the file


    doc/FSiMX6UL_FirstSteps_eng.pdf


    for a description of how everything is installed and used.


    This release extends the fsimx6ul-B2019.11 release by the support for

    eMMC as boot device for the PicoCoreMX6UL.

    It also provides a new version of the Nboot.

    The rest of the release is equal to fsimx6ul-B2019.11.


    !!! Attention !!

    This release has just been tested with the PicoCoreMX6UL and supports only

    the PicoCoreMX6UL!

    !!! Attention !!


    These are the highlights of the picocoremx6ul-B2019.11 release:


    - The PicoCoreMX6UL now supports eMMC as boot device

    - New partition layout for eMMC Boot- and User-partitions

    (See Linux on F&S Boards Appendix)


    - The Uboot is now located in the system partition of the user area of the eMMC.

    It can be exchanged like kernel and devicetree.


    - UMS (USB Mass Storage) support in Nboot and Uboot. The system partition of the

    board can be mounted via UBS-Device port like a USB stick and Uboot, Linux Kernel

    and Devicetree can be exchanged via drag and drop.


    - Special Nboot and Uboot for eMMC support.

    To build the right Uboot run "make fsimx6ul_mmc_defconfig" first.

    Make sure to install the right Nboot and Uboot binaries. They are marked with

    an "_mmc_" in their name.


    These are the highlights of the fsimx6ul-B2019.11 release:


    This is the next regular major release for fsimx6ul. fsimx6ul is the

    software for all boards from F&S that are based on the i.MX6-UltraLite

    and i.MX6ULL CPUs from NXP (or i.MX6UL and i.MX6ULL for short).

    Currently these are the modules efusA7UL, PicoCOM1.2 and

    PicoCoreMX6UL. Further boards may be added to this family in the

    future. All these boards can work with software that is created from

    this release package.


    This 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 "B2019.11" of this release indicates a

    Buildroot based release from November 2019.



    2. Support for new board PicoCoreMX6UL


    This is the first regular release that supports PicoCoreMX6UL. The

    PicoCore is only 40mm x 35mm but is a very powerful System-on-Module

    with many I/Os.



    3. New U-Boot 2018.03


    We have a considerably newer U-Boot now. One of the main new features

    is display support, so basically U-Boot can now be used to show a

    splash screen.


    U-Boot will also show more information about the CPU type now, for

    example temperature range, possible speed, etc. The command "clocks"

    will show much more information about internal clock rates. And USB

    storage devices are detected faster and more reliably than before.


    U-Boot has experienced quite a lot of internal restructuring. For

    example it now also supports configuration via a Kconfig menu, similar

    to Linux kernel and Buildroot. After configuration with


    Code
    1. make fsimx6ul_defconfig


    simply call


    Code
    1. make menuconfig


    to show the menu. There you can select and de-select entries or move

    to sub-menus.


    Moving all configuration options from the previous header file to this

    menu is a long-term and still on-going process. So not all features are

    available in the menu, yet.


    U-Boot is now compiled and running in THUMB mode. This saves space

    that is needed for all the display code.



    4. New Linux kernel 4.9.88


    The Linux kernel is now based on 4.9.88. By default, we are using the

    zImage format of the kernel now, not the uImage format as before. Here

    are some of the new features since the previous kernel 4.1.15.


    - Improvements and optimizations in memory management, for example

    better heap and page management (tmpfs, shmem), better protection

    against attacks by implementing stack, heap and memory

    randomization.

    - Performance optimizations for the network stack, like faster TCP

    connections, quick killing of hanging network links, more features

    for the packet filter (firewall), smaller latencies on WLAN.

    - Optimizations in block layer, for example better Device Mapper for

    LVM, improved parallel access to directories, more efficient access

    to SSDs, parallel access for NFS, kernel support for file copy,

    server-side copy for CIFS, NFS, XFS, support for hard discs with

    host-managed SMR (Shingled Magnetic Recording).

    - Optimizations on file systems (NTRFS, EXT4, F2FS, NFS, XFS,

    Overlayfs, Ceph), new cluster filesystem Orangefs

    - Many improvements in graphics stack, like DRM (Direct Rendering

    Manager), new open source graphics driver etnaviv for Vivante

    graphics on i.MX CPUs (etnaviv = vivante backwards)

    - Better load balancing of processes to CPU cores, new cgroups v2,

    improved power and frequency handling, new cpufreq governor

    schedutil.

    - New GPIO infrastructure not using sysfs, supposed to be faster.

    - Support for USB SuperSpeedPlus (USB 3.1).

    - Many many new and improved drivers for WLAN chips, touch

    controllers, audio codecs, cameras, MMC/SD cards, etc.


    Of course there are also many changes for other CPU types (like x86)

    and other graphics cores (like AMD, Nvidia, Intel) but these are not

    of interest here.



    5. Buildroot 2019.05.1


    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.1, which is a newer version that already has some

    more fixes.



    6. New toolchain fs-toolchain-8.3-armv7ahf


    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 ARMv7 code for 32 bit ARM CPUs like

    Cortex-A7 or Cortex-A9, as in i.MX6UL or i.MX6SX.


    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.



    7. Default LVDS display replaced


    The ChiMei LVDS display that F&S used to ship with some Starter Kits

    is not available anymore. We will ship a different display from now

    on. Therefore we also changed the default settings for LVDS in the

    Linux device trees so that upcoming customers will have a working

    display.


    If you still need the previous settings, simply remove the two comment

    slashes at the beginning of the following line in the device tree and

    re-build the device tree. Then the old settings will be active again.


    //#define DISPLAY_LVDS_CHIMEI



    8. New driver for Silex WLAN


    In the past, the Silex WLAN driver was only available as a binary

    package. Now, for Linux 4.9.88, the driver is an open-source version

    that is built as part of Buildroot. This means you are more flexible

    with changes of the networking stack or specific configurations of the

    driver. A second package provides the firmware files. Please use

    exactly these, they contain modifications that are specifically

    adapted to our boards.


    Unfortunately we did not get patches for a newer bluez version in

    time. So Bluetooth is still based on bluez-5.39. Maybe we can improve

    this with a patch later.



    9. 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 and we have added a chapter to

    FSiMX6UL_FirstSteps_eng.pdf 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 is completely reworked. The

    FSiMX6UL_FirstSteps_eng.pdf document now really only shows a basic

    introduction to the work with boards of the fsimx6ul 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 regular i.MX6UL release (not counting the

    intermedieate release for PicoCoremX6UL). Please note that the source

    code is also used for other platforms. This is why you will also find

    references to other CPU types and F&S boards here in the changelog.



    nbootimx6ul_39.bin (VN39) (14.11.2019)

    --------------------------------------

    Supported Boards: efusA7UL, PicoCOM1.2, PicoCoreMX6UL, GAR1, GAR2, Cube2.0


    NBoot for i.MX6UL shares the source code with other i.MX6 CPU variants

    like i.MX6 and i.MX6SX, therefore versions are counted consecutively.


    [VN36]

    - 0003367: efus VLCD_ON and VCFL_ON could be high after power on

    - 0003369: On i.MX6UL/ULL, add support for speed limitation to 528 MHz

    - 0003370: On i.MX6UL/ULL, DVS is on NAND_DQS which is configured as output

    high by Boot ROM

    - 0003376: Mask HAB HDR to support different ROM code versions

    - 0003377: Use different DDR settings for new efusA7UL board rev. and UL/ULL

    - 0003378: Adjust DDR settings for GAR1

    - 0003380: Correct speed table for ULL

    - 0003381: Add processor specific fuse settings for HAB

    - 0003384: Use different IOMUX for ULL tamper pins

    - 0003385: Version should be VSxx for secure loader

    - 0003333: Wrong pins for config jumpers used


    [VN37]

    - 0003549: Secure Boot support new CPU revisions

    - 0003561: board GAR1 RAM Test failure

    - 0003807: Add new boards

    - 0003808: add customer specific variant

    - 0003809: add bootoption for SD card for armStoneA9

    - 0003810: add WLAN2 option in boardfeatures

    - 0003811: skip M4 when using serial download

    - 0003812: fix clock settings in Init_Clocks

    - 0003813: add missings init code for PicoCOMA7

    - 0003814: debug uart does not work for Solo/DualLight CPU on QBlissA9r2

    - 0003815: USB connection makes nboot unresponsive

    - 0003398: efusA7UL: board revision > 1.20 outputs string ">=1.20 detected"


    [VN38]

    - 0003890: Add SD boot fuse settings

    - 0003979: Add pin for GAR1 boardrevision


    [VN39]

    - 0004117: Reset sendsize after USB upload

    - 0004116: Disable warning in emfast driver

    - 0004115: Add info output over USB

    - 0004114: Change checksum calculation to use neon processor

    - 0004113: Add new board GAR2


    [VN40]

    - 0004195: Verify image if 'x' is pressed when security enabled

    - 0004196: change spread spectrum settings for better EMC

    - 0004197: set VCFL_ON to input, pin is used in ROM loader as output driving high


    [VN41]

    - 0004210: add super secure version with disabled menu

    - 0004211: move SDP disable fuse settings to separate function


    [VN42]

    - 0004288: add support for eMMC

    - 0004289: add support for customer specific board VAND3


    [VN43]

    - 0004399: add eMMC MBR and FAT support

    - 0004400: improve dosfs and fix known bugs

    - 0004401: add support for boardconfig in eMMC boot partition

    - 0004402: add eMMC access from USB MSD

    - 0004398: add eMMC booting from fat in user partition

    - 0004403: warn user if wrong nboot for boot device is downloaded


    u-boot-2018.03-picocoremx6ul-B2019.11 (14.08.2020)

    ---------------------------------------------

    Supported boards: PicoCoreMX6UL

    Not tested: armStoneA9, armStoneA9r2, efusA9, PicoMODA9, NetDCUA9,

    QBlissA9, QBlissA9r2, efusA9X, PicoCOMA9X, PicoCoreMX6SX

    CONT1, CUBEA5, armStoneA5, NetDCUA5, PicoCOMA5, AGATEWAY,

    HGATEWAY, efusA7UL, PicoCOM1.2, GAR1, GAR2,

    CubeA7UL, Cube2.0, PicoCOMA7


    - Fix problem with slow USB sticks

    - Toggle WLAN_EN and BT_EN on efusA9X

    - Add support for I2C GPIO expander, toggle WLAN_EN/BT_EN on efusA7UL

    - Improve PLL decoding and clocks command output on i.MX6

    - Add BGR666 pixel format to ipu_disp.c, required for display on efusA9

    - Add IPU clocks for i.MX6

    - Enhance IPU graphics support for i.MX6

    - Fix video and nulldev stdio devices

    - Add I2C_PADS and I2C_PADS_INFO to mxc_i2c.h

    - Add F&S company boot logo

    - Add LCD and LVDS display support for fsimx6

    - Use THUMB code on fsimx6/sx/ul

    - In ipuv3_fb_shutdown, check if at least one display was active

    - Add support for PicoCOMA7

    - Remove unnecessary debug message in fsimx6.c

    - Add I2C_PADS and I2C_PADS_INFO also for other i.MX6 variants

    - Add support for i.MX6UL and i.MX6SX to mxsfb display driver

    - Add display support to fsimx6sx/ul

    - Add PicoCoreMX6UL

    - Add PicoCoreMX6SX

    - Add SD card support to PicoCOREMX6UL

    - Replace GPL comments in F&S files with SPDX-License-Identifier

    - Fix TAGS file creation

    - Add missing checks for MXC_CPU_MX6SOLO in clock.c

    - Switch off backlight and display voltages when booting Linux

    - Add fix for eMMC with activated Enhanced Mode

    - Drop support for fss5pv210 (armStoneA8, NetDCU14, PicoMOD7A)

    - Drop support for fsam335x (never released)

    - Reduce differences to mainline U-Boot

    - F&S boards: Update loadaddr, add fdtaddr, use zImage by default

    - Switch F&S boards to CONFIG_SYS_GENERIC_BOARD

    - Add get_reset_cause() for Vybrid

    - Move F&S specific FDT code to board/F+S/common/fs_fdt_common.[ch]

    - Move F&S common board code to board/F+S/common/fs_board_common.[ch]

    - Move NBoot args from bootm to F&S specific code

    - Move F&S specific mmc code to board/F+S/common/fs_mmc_common.[ch]

    - Move F&S specific ETH code to board/F+S/common/fs_eth_common.[ch]

    - Show new device if usb dev <n> switches storage devices

    - Update F&S specific USB code and move to board/F+S/common/

    - Remove earlyusbinit feature

    - Improve F&S display code and move to board/F+S/common/fs_disp_common

    - Combine and improve display clock code for i.MX6QDL/SX/UL/ULL

    - Move display specific i.MX6 clock code to clock-ipuv3.c/clock-mxsfb.c

    - Rebase to u-boot-2014.10

    - Add defconfigs for fsimx6/sx/ul/fsvybrid

    - Rebase to u-boot-2015.01

    - Change fat.c and wildcard.c to reflect interface changes

    - Allow swapping color channels on mxsfb

    - Rebase to u-boot-2015.04

    - Rebase to u-boot-2015.07

    - On F&S boards, move some command definitions from .h to defconfig

    - Change meaning of loadaddr, always set fileaddr

    - Change RPMsg ring buffer initialization on fsimx6sx

    - Rebase to u-boot-2015.10

    - Move F&S boards from arch/arm/Kconfig to arch/arm/cpu/armv7/mx6/Kconfig

    - Rebase to u-boot-2016.01

    - Fix reset issues for ETH PHYs on F&S boards

    - Rebase to u-boot-2016.03

    - Rebase to u-boot-2016.05

    - On F&S boards, move more CMD settings from .h to defconfig

    - Move set_working_fdt_addr() from cmd/fdt.c to common/image-fdt.c

    - USB hub handling needs some delay before resetting ports

    - Fix fsl_esdhc_cfg handling when using GPIOs for Card Detect (CD)

    - Rebase to u-boot-2016.07

    - Have option to keep CONFIG_BOOTDELAY unset

    - Change nand chip allocation in fsl_nfc_fus.c and mxs_nand_fus.c

    - Rebase to u-boot-2016.09

    - Remove unnecessary flush_cache() from cmd/net.c

    - Move CONFIG_USB_STORAGE from .h to defconfig on F&S boards

    - Remove ram_base from global data

    - Enable mtest command (CONFIG_CMD_MEMTEST) on F&S boards

    - Rebase to u-boot-2016.11

    - Remove patch_sercon() from boot code

    - Move console, UBI and NAND settings from .h to defconfig on F&S boards

    - Handle non-standard CONFIG settings on F&S boards

    - Rebase to u-boot-2017.01

    - Remove CONFIG_USE_ARCH_MEM* from fsvybrid/fsimx6/sx/ul.h

    - Add F&S specific versions of memmove() and memset32() to Kconfig

    - Rebase to u-boot-2017.03

    - Fix status LED infrastructure

    - On F&S boards, move LED, BOARD and some CMD settings to defconfig

    - Rebase to u-boot-2017.05

    - Bring back rudimentary IRQ support for F&S boards

    - Rebase to u-boot-2017.07

    - Reduce diff to mainline u-boot-2017.07

    - Fix const const problems revealed by gcc-7

    - Rebase to u-boot-2017.09

    - Move more F&S configs from *.h to *_defconfig (environment, cmds)

    - Move loadaddr stuff from cmd/nvedit.c to common/image.c

    - Add F&S specific configs to Kconfig

    - Rebase to u-boot-2017.11

    - Add F&S FAT driver again, available as option

    - memcpy.S for ARM must not modify r9

    - Rebase to u-boot-2018.01

    - Rebase to u-boot-2018.03

    - Enable commands env callbacks and env flags on F&S boards

    - Add F&S NAND refresh feature to drivers/mtd/nand/Kconfig

    - Add a missing conversion from r9 to r10 in memcpy()

    - Clean up error message if env can not be loaded

    - Skip extra check for ethaddr if set with setenv

    - Avoid assert messages in ubifs

    - Reset WLAN chip on armStoneA9r2

    - Fix F&S platform/device tree name on ULL platforms

    - Add support for gar1 revision 1.40

    - Add new F&S default LVDS display (24bpp), add backlight power switching

    - Handle USB storage devices more reliable

    - Fix fatsize command

    - Remove debug output for display settings on F&S boards

    - Add support for RGB adapter on fsimx6ul

    - Add basic support for ethernet switch MV88E6071

    - Add register offset 0x00 or 0x10 to mv88e61xx.c driver

    - Add support for GAR2

    - Fix parsing of mii devices in mii command

    - Better argument parsing and error handling in mdio.c

    - On GAR2 do not switch off external PHY on Ethernet switch

    - include: update log2 header from the Linux kernel

    - Handle self-clearing Port Reset bit in ehci-hcd

    - Fix function to find nearest High Speed parent in usb.c

    - Improve USB device detection, add variable usb_connect_time

    - Port drivers/crypto/fsl from NXP UBoot 2018.03

    - Add support for FS_SECURE_BOOT

    - Add defconfigs for FS_SECURE_BOOT

    - Add FS_SECURE_BOOT authenticate images

    - Improve display support for PicoCoreMX6UL

    - Add USB support for GAR2

    - Fix PicoCOM7 VLCD_ON

    - Fix PicoCOMA7 USB_PWR

    - Enable MMC as bootdevice

    - Add fix for MMC as bootdevice

    - Improve linux device tree editing

    - Add eMMC bootmedium support for PicoCoreMX6UL

    - Add UMS support to fsimx6ul_mmc_config

    - Add support for fat_write for fsimx6ul_mmc


    linux-4.9.88-picocoremx6ul-B2019.11 (14.08.2020)

    --------------------------------------------

    Supported boards: PicoCoreMX6UL

    Not tested: armStoneA9, armStoneA9r2, efusA9, PicoMODA9, NetDCUA9,

    QBlissA9, QBlissA9r2, efusA9X, PicoCOMA9X, PicoCoreMX6SX

    CONT1, CUBEA5, armStoneA5, NetDCUA5, PicoCOMA5, AGATEWAY,

    HGATEWAY, efusA7UL, PicoCOM1.2, GAR1, GAR2,

    CubeA7UL, Cube2.0, PicoCOMA7


    - Add property fsl,rx_fifo_trig to i.MX6 UART driver

    - On i.MX6, add support for BT656 and BT1120 output on IPU

    - Add support for ADV7391 video encoder

    - Add analog video output to fsimx6, using BT656+ADV7391

    - Improve adv739x driver to allow setting chip type

    - On i.MX6, add support for 4-channel camera input ISL79985/79987

    - Add support for ISL7998X 4x camera MIPI decoder on fsimx6

    - Add PAL/NTSC support for isl7998x_mipi.c, improve driver

    - Add more network features to fsimx6/ul/sx defconfigs

    - Add bluetooth support to fsimx6sx/ul

    - Update to rel_imx_4.9.11_1.0.0_ga

    - Improve semtech sx8654 driver support reverse coordinates

    - Fix compiler errors after merge of several files

    - Add Support for PicoCOMA7

    - Use new F&S Tux logo when booting

    - Use spinlock in isl7998x_mipi driver

    - Update to rel_imx_4.9.88_2.0.0_ga

    - Add picocoremx6ull.dts

    - Improve armstonea5 device tree

    - PicoCOMA9X: correct reference to EMMC card detect

    - Improve CPU specific function calls in busfreq-imx.c

    - Add support for PicoCoreMX7ULP

    - Fix auxiliary_core driver memory leak

    - Add DMA mode to IMX6SX_CLK_ECSPI5

    - imx6sx: deactivate usbphy_nop1 per default

    - Add device tree: picocorea9x

    - Improve picocoremx6ull.dts - audio and UL/ULL variant

    - Fix nand flash error - enable edo mode

    - Correct distinction between UL and ULL

    - Adapt fs_rpmsg example to new rpmsg API

    - Fix efusa9x/picocoma9x rpmsg-vring entries

    - Improve RTC support on qblissa9r2

    - Renamed picocorea9x.dts to picocoremx6sx.dts

    - Add picocoremx6sx M4-support

    - Fix two bugs in M4 support regarding the kernel update to 4.9.88

    - Add support for Toshiba TC358762 DSI to RGB converter

    - Improve mxsfb driver support i.MX6 & i.MX7

    - Support new F&S Tux logo on fsimx7ulp_defconfig

    - Improve mipi_dsi_northwest driver - get DT disp params

    - Improve TC358762 driver - support reset gpio pin

    - Support LCD display on picocoremx7ulp

    - Improve fsimx7ulp_defconfig

    - Improve picocoremx7ulp.dts

    - Add Power_Reset to fsimx7ulp_defconfig

    - Improve fsimx7ulp_defconfig WLAN module

    - Support for USB-Device in PicoCoreMX7ULP

    - Improve picocoremx7ulp

    - Add support for RTC PCF85063 to fsimx6ul_defconfig

    - Improve PicoCoreMX7ULP device tree

    - Add SD1_VSEL to picocoremx6ull.dts to support UHS SD cards

    - Improve picocoremx6sx device-tree - rework

    - Improve picocoremx6ul device-tree usb otg1 support

    - New merge for rel_imx_4.9.11_1.0.0_ga

    - Handle flexcan names in a common way in device trees

    - New merge for rel_imx_4.9.88_2.0.0_ga

    - Have new minimal defconfigs for fsimx6/sx/ul

    - Improve mipi_dsi_northwest driver flag interpretation

    - Improve picocoremx7ulp device-tree - add mipi-dsi display support

    - Add i.MX6 PCIe driver to defconfig

    - Add PCIe support for all F&S i.MX6 boards

    - Add Marvell WIFI PCIe driver to fsimx6_defconfig

    - Improve PCI_IMX6 driver activation for fsimx6sx_defconfig

    - Add property lrclk-strength to SGTL5000 device tree node

    - fsimx6: Fix audio clock rates, set lrclk-strength for SGTL5000

    - fsimx6: HDMI: Use DVI mode, do not overwrite pixel format

    - Add support for 3rd and 4th camera for ISL7998x on fsimx6

    - Add CMSPAR option to IMX UART

    - Improve focaltech ft5x06 driver - support reverse coordinates

    - Support Azurewave-CM276NF for fsimx7ulp_defconfig

    - Add support for picocoremx7ulp rev. 1.20 and remove old revisions

    - Fix Ethernet clock in mach-imx6sx.c

    - Add 12.5pF setting for RTC PCF85063TP, fix two bugs

    - Handle USB over-current polarity

    - Split picocoremx6ull.dts into UL and ULL version

    - Re-factor driver for PCA963X (leds-pca963x.c)

    - Change F&S device trees to use new leds-pca963x driver

    - Update to newest Atmel MXT touch driver

    - Add cube2.0ull.dts

    - Clarify F&S device tree settings (LVDS, Ilitek, audio clock)

    - Fix default touches for PicoCoreMX6UL/SX

    - Replace deprecated fsl,uart-has-rtscts in F&S device trees

    - Add new default LVDS display FS-J070WVTC0211 to F&S devicetrees

    - Improve PicoModA9 device-tree settings for LCD supply regulator

    - Revert RTC PCF8563 driver to previous version

    - Speed up firmware download in btmrvl_sdio.c

    - Add UART_C for board revision 1.40 of GAR1

    - Add config file for atmel mxt224e version 2 touch

    - Add disable-over-current flag to picocoremx7ulp device-tree

    - Add support for crypto unit in picocoremx7ulp

    - Turn off -Wattribute-alias to support GCC 8

    - Backport minimal compiler_attributes.h to support GCC 9

    - Disable user space firmware loader helper from F&S defconfigs

    - Remove support for BT-AMP on Marvell SD8787 Bluetooth

    - Add support for mipi display YTC310KLAA

    - Add YTC310KLAA mipi display to fsimx7ulp

    - imx6ull: VDD_SOC_CAP -> changed voltage from 1.175V to 1.25V

    - Add PWM_A to PicoCoreMX6SX device-tree

    - Improve picocoremx6ul.dts - add defines for HW units

    - Improve picocoremx6sx.dts - increment board revision

    - Improve F&S i.MX6SX/UL device-trees - Update Copyright

    - fec_main: Do not init MII bus in case of fixed link

    - Add DP83848 Ethernet PHY to fsimx6ul_defconfig

    - Add devicetree for GAR2

    - Improve fsimx7ulp VLLS state by turning of LPDDR-IOs correctly

    - Add audio support for imx7ULP via rpmsg-audio

    - Fix DT for efusA9, QBlissA9 and QBlissA9r2 for ft5x06_ts.c

    - Add mainline patches to remove compiler warnings with gcc-8

    - Remove compiler warnings with gcc-8 in F&S specific files

    - Fix clock enabling in pxp_dma_v3.c, add to fsimx6ul

    - Add full device-tree support for PicoCOMA7

    - Add imx6ul-touchscreen controller support

    - Add generic touchscreen functions to mx6ul-tsc driver

    - Add support for eMMC as bootdevice for PicoCoreMX6UL


    buildroot-2019.05.1-picocoremx6ul-B2019.11 (14.08.2020)

    ---------------------------------------------------

    Supported boards: PicoCoreMX6UL

    Not tested: armStoneA9, armStoneA9r2, efusA9, PicoMODA9, NetDCUA9,

    QBlissA9, QBlissA9r2, efusA9X, PicoCOMA9X,PicoCoreMX6SX

    CONT1, CUBEA5, armStoneA5, NetDCUA5, PicoCOMA5, AGATEWAY,

    HGATEWAY, efusA7UL, PicoCOM1.2, GAR1, GAR2,

    CubeA7UL, Cube2.0, PicoCOM


    - Rebase to buildroot-2016.08.1

    - Rebase to buildroot-2016.11.3

    - Rebase to buildroot-2017.02.5

    - Rebase to buildroot-2017.05.2

    - Remove unnecessary InputSetScreen.patch from xserver

    - Set rootfs.ext2 size manually to every config

    - Rebase to buildroot-2017.08

    - Remove recursive dependency at imx-gst1-plugin

    - Remove legacy packages in fsimx6_qt5_defconfig

    - Add linux-custom strategy to fsimx6_qt5_defconfig

    - Activate freescale and EGL packages in qt5_defconfig

    - Add patches for Silex QCA9377 to bluez5_utils

    - Use bluez5_utils instead of bluez4_utils on F&S boards

    - Update silex-wlan-fs package to v4.1_01272017-1

    - Use bluez5_utils v5.39

    - Add missing dependency in xdriver_xf86-video-imx-viv

    - Remove legacy configuration in defconfigs

    - Switch to new local_kernel_custom strategy

    - Rebase to buildroot-2017.11.2

    - Remove qt5 patch 0010-EGL-fb-lib-inclusion.patch

    - Rebase to buildroot-2018.02.2

    - Remove bluez5_utils patch 0002

    - Update imx-gpu-viv to 6.2.2.p0-aarch32

    - Fix qt5base build issue without x11/xcb

    - Rebase to buildroot-2018.05

    - imx-gpu-viv: fix install step and be compatible

    - Rebase to buildroot-2018.08-rc2

    - Remove legacy options

    - Increase size for ext2 and ubifs filesystem

    - Update defconfigs to use linux 4.9.11

    - Add imx firmware to fsimx6_std_defconfig

    - Rebase to buildroot-2018.08

    - Correct version of imx packages (firmware, g2d, gpu)

    - Add XDRIVER_XF86_VIDEO_IMX_VIV to fsimx6_std_defconfig

    - Shrink qt5 rootfs to a usable size (soloX)

    - fsimx6ul: Remove xf86-input-tslib, set xserver to 1.17.4

    - Remove tslib from all imx6, imx6sx, imx6ul defconfigs

    - Update version of imx packages for kernel 4.9.88

    - Add package sterling-wlan-fs for F&S boards

    - Add fsimx7ulp_std_defconfig

    - Fix xserver startup issue in /etc/init.d/

    - Set kernel version to 4.9.88 in fsimx6* defconfigs

    - Build device tree: added picocorea9x

    - Add erpc python package for AMP-example

    - fsimx6ul_std_defconfig: correct imx-platform

    - Rebase to buildroot-2018.11

    - fsimx6ul_qt5_defconfig: set linuxfb as default platform

    - fsimx6ul_qt5_defconfig: correct imx-platform

    - Add fsimx7ulp_qt5_defconfig

    - Rename device tree from picocorea9x to picocoremx6sx

    - Change kernel load address for i.MX6 CPUs

    - Fix python-erpc package

    - Update silex-wlan-fs package to v4.1_01272017-2

    - fsimx7ulp: Remove xf86-input-tslib, set xserver to 1.17.4

    - Add fsimx7ulp_min_defconfig

    - Fix invalid pointer in passwd

    - Drop support for PicoCOM4

    - Drop support for fss5pv210 (armStoneA8, NetDCU14, PicoMOD7A)

    - Switch to fs-toolchain-7.4-armv7ahf for F&S boards

    - Switch F&S boards to zImage

    - Update xdriver_xf86-video-fbdev to version 0.5.0

    - Rebase to buildroot-2019.02

    - Correct picocoremx6ull dts name in qt5_defconfig

    - Fix qt5webengine compilation

    - Add firmware Marvell 88W8997

    - fsimx7ulp_std_defconfig set xserver to current version

    - Fix dependencies and macro names in gstreamer1

    - Add package imx-gstreamer1 for NXP based gstreamer1 version

    - Use NXP version of libdrm

    - Make IMX codecs and parsers work with imx-gstreamer1

    - Use imx-gstreamer1 on fsimx6x/fsimx6sx/fsimx6ul

    - Add support for MWIFIEX_SDSD8997 WLAN/BT

    - Add Azurewave-CM276NF support for fsimx7ulp

    - Do not use GL and GLES at the same time in fsimx6_std_defconfig

    - Rebase to buildroot-2019.05

    - Always use (host-)gettext-gnu on F&S configurations

    - Rebase to buildroot-2019.05.1

    - Update weston package for F&S boards to rel_imx_4.9.88_2.0.0_ga

    - Activate similar set of Qt5 modules in all F&S defconfigs

    - Update F&S busybox defconfig to 1.30.1

    - Add cube2.0ull device tree to cube defconfig and finalscript-cube

    - Optimize ALSA configuration file (asound.state)

    - Add Mesa3D and Weston demos to F&S wayland_defconfig

    - Add support for libglfw on Wayland

    - Fix Qt5 webengine build

    - Switch to fs-toolchain-8.3-armv7ahf for F&S boards

    - Add GAR2 devicetree to fsimx6ul defconfigs

    - Add rpmsg-audio alsamixer config

    - Add fsimx6sx/fsimx6ul wayland defconfig

    - Add startup script for weston

    - Replace package silex-wlan-fs with newer version

    - Keep bluez5_utils-headers on same version as bluez5_utils

    - Do not install S50telnet by default, only if requested

    - Add spi-tools to F&S defconfigs

    - Add PicoCOMA7 support



    Examples

    --------


    (no changes)




    Toolchain

    ---------


    fs-toolchain-8.3-armv7ahf.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




    Documentation

    -------------


    - Update to version 2.0 of FSiMX6UL_FirstSteps_eng.pdf

    - Add new version 0.2 of LinuxOnFSBoards_eng.pdf


    Please download the hardware documentation and GPIO Reference Cards

    directly from our website. Then you always have the newest version.

    PicoCOMA7 Buildroot Release (30.07.2020)



    Please see the file


    doc/FSiMX6UL_FirstSteps_eng.pdf


    for a description of how everything is installed and used.



    This is a minor release for the PicoCOMA7 based on the fsimx6ul-B2019.11 release.



    !!! Attention !!!


    Please notice that it is only tested with the PicoCOMA7 and only supports the PicoCOMA7 .


    !!! Attention !!!


    This release adds support for the PicoCOMA7 to the fsimx6ul-B2019.11 release.

    Here are some highlights of the fsimx6ul-B2019.11 release.



    . 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 "B2019.11" of this release indicates a

    Buildroot based release from November 2019.



    2. Support for new board PicoCoreMX6UL


    This is the first regular release that supports PicoCoreMX6UL. The

    PicoCore is only 40mm x 35mm but is a very powerful System-on-Module

    with many I/Os.



    3. New U-Boot 2018.03


    We have a considerably newer U-Boot now. One of the main new features

    is display support, so basically U-Boot can now be used to show a

    splash screen.


    U-Boot will also show more information about the CPU type now, for

    example temperature range, possible speed, etc. The command "clocks"

    will show much more information about internal clock rates. And USB

    storage devices are detected faster and more reliably than before.


    U-Boot has experienced quite a lot of internal restructuring. For

    example it now also supports configuration via a Kconfig menu, similar

    to Linux kernel and Buildroot. After configuration with


    make fsimx6ul_defconfig


    simply call


    make menuconfig


    to show the menu. There you can select and de-select entries or move

    to sub-menus.


    Moving all configuration options from the previous header file to this

    menu is a long-term and still on-going process. So not all features are

    available in the menu, yet.


    U-Boot is now compiled and running in THUMB mode. This saves space

    that is needed for all the display code.



    4. New Linux kernel 4.9.88


    The Linux kernel is now based on 4.9.88. By default, we are using the

    zImage format of the kernel now, not the uImage format as before. Here

    are some of the new features since the previous kernel 4.1.15.


    - Improvements and optimizations in memory management, for example

    better heap and page management (tmpfs, shmem), better protection

    against attacks by implementing stack, heap and memory

    randomization.

    - Performance optimizations for the network stack, like faster TCP

    connections, quick killing of hanging network links, more features

    for the packet filter (firewall), smaller latencies on WLAN.

    - Optimizations in block layer, for example better Device Mapper for

    LVM, improved parallel access to directories, more efficient access

    to SSDs, parallel access for NFS, kernel support for file copy,

    server-side copy for CIFS, NFS, XFS, support for hard discs with

    host-managed SMR (Shingled Magnetic Recording).

    - Optimizations on file systems (NTRFS, EXT4, F2FS, NFS, XFS,

    Overlayfs, Ceph), new cluster filesystem Orangefs

    - Many improvements in graphics stack, like DRM (Direct Rendering

    Manager), new open source graphics driver etnaviv for Vivante

    graphics on i.MX CPUs (etnaviv = vivante backwards)

    - Better load balancing of processes to CPU cores, new cgroups v2,

    improved power and frequency handling, new cpufreq governor

    schedutil.

    - New GPIO infrastructure not using sysfs, supposed to be faster.

    - Support for USB SuperSpeedPlus (USB 3.1).

    - Many many new and improved drivers for WLAN chips, touch

    controllers, audio codecs, cameras, MMC/SD cards, etc.


    Of course there are also many changes for other CPU types (like x86)

    and other graphics cores (like AMD, Nvidia, Intel) but these are not

    of interest here.



    5. Buildroot 2019.05.1


    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.1, which is a newer version that already has some

    more fixes.



    6. New toolchain fs-toolchain-8.3-armv7ahf


    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 ARMv7 code for 32 bit ARM CPUs like

    Cortex-A7 or Cortex-A9, as in i.MX6UL or i.MX6SX.


    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.



    7. Default LVDS display replaced


    The ChiMei LVDS display that F&S used to ship with some Starter Kits

    is not available anymore. We will ship a different display from now

    on. Therefore we also changed the default settings for LVDS in the

    Linux device trees so that upcoming customers will have a working

    display.


    If you still need the previous settings, simply remove the two comment

    slashes at the beginning of the following line in the device tree and

    re-build the device tree. Then the old settings will be active again.


    //#define DISPLAY_LVDS_CHIMEI



    8. New driver for Silex WLAN


    In the past, the Silex WLAN driver was only available as a binary

    package. Now, for Linux 4.9.88, the driver is an open-source version

    that is built as part of Buildroot. This means you are more flexible

    with changes of the networking stack or specific configurations of the

    driver. A second package provides the firmware files. Please use

    exactly these, they contain modifications that are specifically

    adapted to our boards.


    Unfortunately we did not get patches for a newer bluez version in

    time. So Bluetooth is still based on bluez-5.39. Maybe we can improve

    this with a patch later.



    9. 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 and we have added a chapter to

    FSiMX6UL_FirstSteps_eng.pdf 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 is completely reworked. The

    FSiMX6UL_FirstSteps_eng.pdf document now really only shows a basic

    introduction to the work with boards of the fsimx6ul 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 regular i.MX6UL release (not counting the

    intermedieate release for PicoCoremX6UL). Please note that the source

    code is also used for other platforms. This is why you will also find

    references to other CPU types and F&S boards here in the changelog.



    nbootimx6ul_39.bin (VN39) (14.11.2019)

    --------------------------------------

    Supported Boards: efusA7UL, PicoCOM1.2, PicoCoreMX6UL, GAR1, GAR2, Cube2.0


    NBoot for i.MX6UL shares the source code with other i.MX6 CPU variants

    like i.MX6 and i.MX6SX, therefore versions are counted consecutively.


    [VN36]

    - 0003367: efus VLCD_ON and VCFL_ON could be high after power on

    - 0003369: On i.MX6UL/ULL, add support for speed limitation to 528 MHz

    - 0003370: On i.MX6UL/ULL, DVS is on NAND_DQS which is configured as output

    high by Boot ROM

    - 0003376: Mask HAB HDR to support different ROM code versions

    - 0003377: Use different DDR settings for new efusA7UL board rev. and UL/ULL

    - 0003378: Adjust DDR settings for GAR1

    - 0003380: Correct speed table for ULL

    - 0003381: Add processor specific fuse settings for HAB

    - 0003384: Use different IOMUX for ULL tamper pins

    - 0003385: Version should be VSxx for secure loader

    - 0003333: Wrong pins for config jumpers used


    [VN37]

    - 0003549: Secure Boot support new CPU revisions

    - 0003561: board GAR1 RAM Test failure

    - 0003807: Add new boards

    - 0003808: add customer specific variant

    - 0003809: add bootoption for SD card for armStoneA9

    - 0003810: add WLAN2 option in boardfeatures

    - 0003811: skip M4 when using serial download

    - 0003812: fix clock settings in Init_Clocks

    - 0003813: add missings init code for PicoCOMA7

    - 0003814: debug uart does not work for Solo/DualLight CPU on QBlissA9r2

    - 0003815: USB connection makes nboot unresponsive

    - 0003398: efusA7UL: board revision > 1.20 outputs string ">=1.20 detected"


    [VN38]

    - 0003890: Add SD boot fuse settings

    - 0003979: Add pin for GAR1 boardrevision


    [VN39]

    - 0004117: Reset sendsize after USB upload

    - 0004116: Disable warning in emfast driver

    - 0004115: Add info output over USB

    - 0004114: Change checksum calculation to use neon processor

    - 0004113: Add new board GAR2




    u-boot-2018.03-picocoma7-B2019.11 (21.07.2020)

    ---------------------------------------------

    Supported boards: PicoCOMA7

    Not tested: armStoneA9, armStoneA9r2, efusA9, PicoMODA9, NetDCUA9,

    QBlissA9, QBlissA9r2, efusA9X, PicoCOMA9X, PicoCoreMX6SX,

    CONT1, CUBEA5, armStoneA5, NetDCUA5, PicoCOMA5, AGATEWAY,

    HGATEWAY, efusA7UL, PicoCOM1.2, PicoCoreMX6UL, GAR1, GAR2,

    CubeA7UL, Cube2.0


    - Fix problem with slow USB sticks

    - Toggle WLAN_EN and BT_EN on efusA9X

    - Add support for I2C GPIO expander, toggle WLAN_EN/BT_EN on efusA7UL

    - Improve PLL decoding and clocks command output on i.MX6

    - Add BGR666 pixel format to ipu_disp.c, required for display on efusA9

    - Add IPU clocks for i.MX6

    - Enhance IPU graphics support for i.MX6

    - Fix video and nulldev stdio devices

    - Add I2C_PADS and I2C_PADS_INFO to mxc_i2c.h

    - Add F&S company boot logo

    - Add LCD and LVDS display support for fsimx6

    - Use THUMB code on fsimx6/sx/ul

    - In ipuv3_fb_shutdown, check if at least one display was active

    - Add support for PicoCOMA7

    - Remove unnecessary debug message in fsimx6.c

    - Add I2C_PADS and I2C_PADS_INFO also for other i.MX6 variants

    - Add support for i.MX6UL and i.MX6SX to mxsfb display driver

    - Add display support to fsimx6sx/ul

    - Add PicoCoreMX6UL

    - Add PicoCoreMX6SX

    - Add SD card support to PicoCOREMX6UL

    - Replace GPL comments in F&S files with SPDX-License-Identifier

    - Fix TAGS file creation

    - Add missing checks for MXC_CPU_MX6SOLO in clock.c

    - Switch off backlight and display voltages when booting Linux

    - Add fix for eMMC with activated Enhanced Mode

    - Drop support for fss5pv210 (armStoneA8, NetDCU14, PicoMOD7A)

    - Drop support for fsam335x (never released)

    - Reduce differences to mainline U-Boot

    - F&S boards: Update loadaddr, add fdtaddr, use zImage by default

    - Switch F&S boards to CONFIG_SYS_GENERIC_BOARD

    - Add get_reset_cause() for Vybrid

    - Move F&S specific FDT code to board/F+S/common/fs_fdt_common.[ch]

    - Move F&S common board code to board/F+S/common/fs_board_common.[ch]

    - Move NBoot args from bootm to F&S specific code

    - Move F&S specific mmc code to board/F+S/common/fs_mmc_common.[ch]

    - Move F&S specific ETH code to board/F+S/common/fs_eth_common.[ch]

    - Show new device if usb dev <n> switches storage devices

    - Update F&S specific USB code and move to board/F+S/common/

    - Remove earlyusbinit feature

    - Improve F&S display code and move to board/F+S/common/fs_disp_common

    - Combine and improve display clock code for i.MX6QDL/SX/UL/ULL

    - Move display specific i.MX6 clock code to clock-ipuv3.c/clock-mxsfb.c

    - Rebase to u-boot-2014.10

    - Add defconfigs for fsimx6/sx/ul/fsvybrid

    - Rebase to u-boot-2015.01

    - Change fat.c and wildcard.c to reflect interface changes

    - Allow swapping color channels on mxsfb

    - Rebase to u-boot-2015.04

    - Rebase to u-boot-2015.07

    - On F&S boards, move some command definitions from .h to defconfig

    - Change meaning of loadaddr, always set fileaddr

    - Change RPMsg ring buffer initialization on fsimx6sx

    - Rebase to u-boot-2015.10

    - Move F&S boards from arch/arm/Kconfig to arch/arm/cpu/armv7/mx6/Kconfig

    - Rebase to u-boot-2016.01

    - Fix reset issues for ETH PHYs on F&S boards

    - Rebase to u-boot-2016.03

    - Rebase to u-boot-2016.05

    - On F&S boards, move more CMD settings from .h to defconfig

    - Move set_working_fdt_addr() from cmd/fdt.c to common/image-fdt.c

    - USB hub handling needs some delay before resetting ports

    - Fix fsl_esdhc_cfg handling when using GPIOs for Card Detect (CD)

    - Rebase to u-boot-2016.07

    - Have option to keep CONFIG_BOOTDELAY unset

    - Change nand chip allocation in fsl_nfc_fus.c and mxs_nand_fus.c

    - Rebase to u-boot-2016.09

    - Remove unnecessary flush_cache() from cmd/net.c

    - Move CONFIG_USB_STORAGE from .h to defconfig on F&S boards

    - Remove ram_base from global data

    - Enable mtest command (CONFIG_CMD_MEMTEST) on F&S boards

    - Rebase to u-boot-2016.11

    - Remove patch_sercon() from boot code

    - Move console, UBI and NAND settings from .h to defconfig on F&S boards

    - Handle non-standard CONFIG settings on F&S boards

    - Rebase to u-boot-2017.01

    - Remove CONFIG_USE_ARCH_MEM* from fsvybrid/fsimx6/sx/ul.h

    - Add F&S specific versions of memmove() and memset32() to Kconfig

    - Rebase to u-boot-2017.03

    - Fix status LED infrastructure

    - On F&S boards, move LED, BOARD and some CMD settings to defconfig

    - Rebase to u-boot-2017.05

    - Bring back rudimentary IRQ support for F&S boards

    - Rebase to u-boot-2017.07

    - Reduce diff to mainline u-boot-2017.07

    - Fix const const problems revealed by gcc-7

    - Rebase to u-boot-2017.09

    - Move more F&S configs from *.h to *_defconfig (environment, cmds)

    - Move loadaddr stuff from cmd/nvedit.c to common/image.c

    - Add F&S specific configs to Kconfig

    - Rebase to u-boot-2017.11

    - Add F&S FAT driver again, available as option

    - memcpy.S for ARM must not modify r9

    - Rebase to u-boot-2018.01

    - Rebase to u-boot-2018.03

    - Enable commands env callbacks and env flags on F&S boards

    - Add F&S NAND refresh feature to drivers/mtd/nand/Kconfig

    - Add a missing conversion from r9 to r10 in memcpy()

    - Clean up error message if env can not be loaded

    - Skip extra check for ethaddr if set with setenv

    - Avoid assert messages in ubifs

    - Reset WLAN chip on armStoneA9r2

    - Fix F&S platform/device tree name on ULL platforms

    - Add support for gar1 revision 1.40

    - Add new F&S default LVDS display (24bpp), add backlight power switching

    - Handle USB storage devices more reliable

    - Fix fatsize command

    - Remove debug output for display settings on F&S boards

    - Add support for RGB adapter on fsimx6ul

    - Add basic support for ethernet switch MV88E6071

    - Add register offset 0x00 or 0x10 to mv88e61xx.c driver

    - Add support for GAR2

    - Fix parsing of mii devices in mii command

    - Better argument parsing and error handling in mdio.c

    - On GAR2 do not switch off external PHY on Ethernet switch

    - include: update log2 header from the Linux kernel

    - Handle self-clearing Port Reset bit in ehci-hcd

    - Fix function to find nearest High Speed parent in usb.c

    - Improve USB device detection, add variable usb_connect_time

    - Port drivers/crypto/fsl from NXP UBoot 2018.03

    - Add support for FS_SECURE_BOOT

    - Add defconfigs for FS_SECURE_BOOT

    - Add FS_SECURE_BOOT authenticate images

    - Improve display support for PicoCoreMX6UL

    - Add USB support for GAR2

    - Fix PicoCOM7 VLCD_ON

    - Fix PicoCOMA7 USB_PWR



    linux-4.9.88-picocoma7-B2019.11 (21.07.2020)

    --------------------------------------------

    Supported boards: PicoCOMA7

    Not tested: armStoneA9, armStoneA9r2, efusA9, PicoMODA9, NetDCUA9,

    QBlissA9, QBlissA9r2, efusA9X, PicoCOMA9X, PicoCoreMX6SX,

    CONT1, CUBEA5, armStoneA5, NetDCUA5, PicoCOMA5, AGATEWAY,

    HGATEWAY, efusA7UL, PicoCOM1.2, PicoCoreMX6UL, GAR1, GAR2,

    CubeA7UL, Cube2.0


    - Add property fsl,rx_fifo_trig to i.MX6 UART driver

    - On i.MX6, add support for BT656 and BT1120 output on IPU

    - Add support for ADV7391 video encoder

    - Add analog video output to fsimx6, using BT656+ADV7391

    - Improve adv739x driver to allow setting chip type

    - On i.MX6, add support for 4-channel camera input ISL79985/79987

    - Add support for ISL7998X 4x camera MIPI decoder on fsimx6

    - Add PAL/NTSC support for isl7998x_mipi.c, improve driver

    - Add more network features to fsimx6/ul/sx defconfigs

    - Add bluetooth support to fsimx6sx/ul

    - Update to rel_imx_4.9.11_1.0.0_ga

    - Improve semtech sx8654 driver support reverse coordinates

    - Fix compiler errors after merge of several files

    - Add Support for PicoCOMA7

    - Use new F&S Tux logo when booting

    - Use spinlock in isl7998x_mipi driver

    - Update to rel_imx_4.9.88_2.0.0_ga

    - Add picocoremx6ull.dts

    - Improve armstonea5 device tree

    - PicoCOMA9X: correct reference to EMMC card detect

    - Improve CPU specific function calls in busfreq-imx.c

    - Add support for PicoCoreMX7ULP

    - Fix auxiliary_core driver memory leak

    - Add DMA mode to IMX6SX_CLK_ECSPI5

    - imx6sx: deactivate usbphy_nop1 per default

    - Add device tree: picocorea9x

    - Improve picocoremx6ull.dts - audio and UL/ULL variant

    - Fix nand flash error - enable edo mode

    - Correct distinction between UL and ULL

    - Adapt fs_rpmsg example to new rpmsg API

    - Fix efusa9x/picocoma9x rpmsg-vring entries

    - Improve RTC support on qblissa9r2

    - Renamed picocorea9x.dts to picocoremx6sx.dts

    - Add picocoremx6sx M4-support

    - Fix two bugs in M4 support regarding the kernel update to 4.9.88

    - Add support for Toshiba TC358762 DSI to RGB converter

    - Improve mxsfb driver support i.MX6 & i.MX7

    - Support new F&S Tux logo on fsimx7ulp_defconfig

    - Improve mipi_dsi_northwest driver - get DT disp params

    - Improve TC358762 driver - support reset gpio pin

    - Support LCD display on picocoremx7ulp

    - Improve fsimx7ulp_defconfig

    - Improve picocoremx7ulp.dts

    - Add Power_Reset to fsimx7ulp_defconfig

    - Improve fsimx7ulp_defconfig WLAN module

    - Support for USB-Device in PicoCoreMX7ULP

    - Improve picocoremx7ulp

    - Add support for RTC PCF85063 to fsimx6ul_defconfig

    - Improve PicoCoreMX7ULP device tree

    - Add SD1_VSEL to picocoremx6ull.dts to support UHS SD cards

    - Improve picocoremx6sx device-tree - rework

    - Improve picocoremx6ul device-tree usb otg1 support

    - New merge for rel_imx_4.9.11_1.0.0_ga

    - Handle flexcan names in a common way in device trees

    - New merge for rel_imx_4.9.88_2.0.0_ga

    - Have new minimal defconfigs for fsimx6/sx/ul

    - Improve mipi_dsi_northwest driver flag interpretation

    - Improve picocoremx7ulp device-tree - add mipi-dsi display support

    - Add i.MX6 PCIe driver to defconfig

    - Add PCIe support for all F&S i.MX6 boards

    - Add Marvell WIFI PCIe driver to fsimx6_defconfig

    - Improve PCI_IMX6 driver activation for fsimx6sx_defconfig

    - Add property lrclk-strength to SGTL5000 device tree node

    - fsimx6: Fix audio clock rates, set lrclk-strength for SGTL5000

    - fsimx6: HDMI: Use DVI mode, do not overwrite pixel format

    - Add support for 3rd and 4th camera for ISL7998x on fsimx6

    - Add CMSPAR option to IMX UART

    - Improve focaltech ft5x06 driver - support reverse coordinates

    - Support Azurewave-CM276NF for fsimx7ulp_defconfig

    - Add support for picocoremx7ulp rev. 1.20 and remove old revisions

    - Fix Ethernet clock in mach-imx6sx.c

    - Add 12.5pF setting for RTC PCF85063TP, fix two bugs

    - Handle USB over-current polarity

    - Split picocoremx6ull.dts into UL and ULL version

    - Re-factor driver for PCA963X (leds-pca963x.c)

    - Change F&S device trees to use new leds-pca963x driver

    - Update to newest Atmel MXT touch driver

    - Add cube2.0ull.dts

    - Clarify F&S device tree settings (LVDS, Ilitek, audio clock)

    - Fix default touches for PicoCoreMX6UL/SX

    - Replace deprecated fsl,uart-has-rtscts in F&S device trees

    - Add new default LVDS display FS-J070WVTC0211 to F&S devicetrees

    - Improve PicoModA9 device-tree settings for LCD supply regulator

    - Revert RTC PCF8563 driver to previous version

    - Speed up firmware download in btmrvl_sdio.c

    - Add UART_C for board revision 1.40 of GAR1

    - Add config file for atmel mxt224e version 2 touch

    - Add disable-over-current flag to picocoremx7ulp device-tree

    - Add support for crypto unit in picocoremx7ulp

    - Turn off -Wattribute-alias to support GCC 8

    - Backport minimal compiler_attributes.h to support GCC 9

    - Disable user space firmware loader helper from F&S defconfigs

    - Remove support for BT-AMP on Marvell SD8787 Bluetooth

    - Add support for mipi display YTC310KLAA

    - Add YTC310KLAA mipi display to fsimx7ulp

    - imx6ull: VDD_SOC_CAP -> changed voltage from 1.175V to 1.25V

    - Add PWM_A to PicoCoreMX6SX device-tree

    - Improve picocoremx6ul.dts - add defines for HW units

    - Improve picocoremx6sx.dts - increment board revision

    - Improve F&S i.MX6SX/UL device-trees - Update Copyright

    - fec_main: Do not init MII bus in case of fixed link

    - Add DP83848 Ethernet PHY to fsimx6ul_defconfig

    - Add devicetree for GAR2

    - Improve fsimx7ulp VLLS state by turning of LPDDR-IOs correctly

    - Add audio support for imx7ULP via rpmsg-audio

    - Fix DT for efusA9, QBlissA9 and QBlissA9r2 for ft5x06_ts.c

    - Add mainline patches to remove compiler warnings with gcc-8

    - Remove compiler warnings with gcc-8 in F&S specific files

    - Fix clock enabling in pxp_dma_v3.c, add to fsimx6ul

    - Add full device-tree support for PicoCOMA7

    - Add imx6ul-touchscreen controller support

    - Add generic touchscreen functions to mx6ul-tsc driver



    buildroot-2019.05.1-picocoma7-B2019.11 (21.07.2020)

    ---------------------------------------------------

    Supported boards: PicoCOMA7

    Not tested: armStoneA9, armStoneA9r2, efusA9, PicoMODA9, NetDCUA9,

    QBlissA9, QBlissA9r2, efusA9X, PicoCOMA9X, PicoCoreMX6SX,

    CONT1, CUBEA5, armStoneA5, NetDCUA5, PicoCOMA5, AGATEWAY,

    HGATEWAY, efusA7UL, PicoCOM1.2, PicoCoreMX6UL, GAR1, GAR2,

    CubeA7UL, Cube2.0


    - Rebase to buildroot-2016.08.1

    - Rebase to buildroot-2016.11.3

    - Rebase to buildroot-2017.02.5

    - Rebase to buildroot-2017.05.2

    - Remove unnecessary InputSetScreen.patch from xserver

    - Set rootfs.ext2 size manually to every config

    - Rebase to buildroot-2017.08

    - Remove recursive dependency at imx-gst1-plugin

    - Remove legacy packages in fsimx6_qt5_defconfig

    - Add linux-custom strategy to fsimx6_qt5_defconfig

    - Activate freescale and EGL packages in qt5_defconfig

    - Add patches for Silex QCA9377 to bluez5_utils

    - Use bluez5_utils instead of bluez4_utils on F&S boards

    - Update silex-wlan-fs package to v4.1_01272017-1

    - Use bluez5_utils v5.39

    - Add missing dependency in xdriver_xf86-video-imx-viv

    - Remove legacy configuration in defconfigs

    - Switch to new local_kernel_custom strategy

    - Rebase to buildroot-2017.11.2

    - Remove qt5 patch 0010-EGL-fb-lib-inclusion.patch

    - Rebase to buildroot-2018.02.2

    - Remove bluez5_utils patch 0002

    - Update imx-gpu-viv to 6.2.2.p0-aarch32

    - Fix qt5base build issue without x11/xcb

    - Rebase to buildroot-2018.05

    - imx-gpu-viv: fix install step and be compatible

    - Rebase to buildroot-2018.08-rc2

    - Remove legacy options

    - Increase size for ext2 and ubifs filesystem

    - Update defconfigs to use linux 4.9.11

    - Add imx firmware to fsimx6_std_defconfig

    - Rebase to buildroot-2018.08

    - Correct version of imx packages (firmware, g2d, gpu)

    - Add XDRIVER_XF86_VIDEO_IMX_VIV to fsimx6_std_defconfig

    - Shrink qt5 rootfs to a usable size (soloX)

    - fsimx6ul: Remove xf86-input-tslib, set xserver to 1.17.4

    - Remove tslib from all imx6, imx6sx, imx6ul defconfigs

    - Update version of imx packages for kernel 4.9.88

    - Add package sterling-wlan-fs for F&S boards

    - Add fsimx7ulp_std_defconfig

    - Fix xserver startup issue in /etc/init.d/

    - Set kernel version to 4.9.88 in fsimx6* defconfigs

    - Build device tree: added picocorea9x

    - Add erpc python package for AMP-example

    - fsimx6ul_std_defconfig: correct imx-platform

    - Rebase to buildroot-2018.11

    - fsimx6ul_qt5_defconfig: set linuxfb as default platform

    - fsimx6ul_qt5_defconfig: correct imx-platform

    - Add fsimx7ulp_qt5_defconfig

    - Rename device tree from picocorea9x to picocoremx6sx

    - Change kernel load address for i.MX6 CPUs

    - Fix python-erpc package

    - Update silex-wlan-fs package to v4.1_01272017-2

    - fsimx7ulp: Remove xf86-input-tslib, set xserver to 1.17.4

    - Add fsimx7ulp_min_defconfig

    - Fix invalid pointer in passwd

    - Drop support for PicoCOM4

    - Drop support for fss5pv210 (armStoneA8, NetDCU14, PicoMOD7A)

    - Switch to fs-toolchain-7.4-armv7ahf for F&S boards

    - Switch F&S boards to zImage

    - Update xdriver_xf86-video-fbdev to version 0.5.0

    - Rebase to buildroot-2019.02

    - Correct picocoremx6ull dts name in qt5_defconfig

    - Fix qt5webengine compilation

    - Add firmware Marvell 88W8997

    - fsimx7ulp_std_defconfig set xserver to current version

    - Fix dependencies and macro names in gstreamer1

    - Add package imx-gstreamer1 for NXP based gstreamer1 version

    - Use NXP version of libdrm

    - Make IMX codecs and parsers work with imx-gstreamer1

    - Use imx-gstreamer1 on fsimx6x/fsimx6sx/fsimx6ul

    - Add support for MWIFIEX_SDSD8997 WLAN/BT

    - Add Azurewave-CM276NF support for fsimx7ulp

    - Do not use GL and GLES at the same time in fsimx6_std_defconfig

    - Rebase to buildroot-2019.05

    - Always use (host-)gettext-gnu on F&S configurations

    - Rebase to buildroot-2019.05.1

    - Update weston package for F&S boards to rel_imx_4.9.88_2.0.0_ga

    - Activate similar set of Qt5 modules in all F&S defconfigs

    - Update F&S busybox defconfig to 1.30.1

    - Add cube2.0ull device tree to cube defconfig and finalscript-cube

    - Optimize ALSA configuration file (asound.state)

    - Add Mesa3D and Weston demos to F&S wayland_defconfig

    - Add support for libglfw on Wayland

    - Fix Qt5 webengine build

    - Switch to fs-toolchain-8.3-armv7ahf for F&S boards

    - Add GAR2 devicetree to fsimx6ul defconfigs

    - Add rpmsg-audio alsamixer config

    - Add fsimx6sx/fsimx6ul wayland defconfig

    - Add startup script for weston

    - Replace package silex-wlan-fs with newer version

    - Keep bluez5_utils-headers on same version as bluez5_utils

    - Do not install S50telnet by default, only if requested

    - Add spi-tools to F&S defconfigs

    - Add PicoCOMA7 support



    Examples

    --------


    (no changes)




    Toolchain

    ---------


    fs-toolchain-8.3-armv7ahf.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




    Documentation

    -------------


    - Update to version 2.2 of FSiMX6UL_FirstSteps_eng.pdf

    - Add new version 0.2 of 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

    Many .NET Framework applications can also be executed on Linux systems by using the cross-platform framework Mono.


    Mono is an open-source implementation of the .Net framework, sponsored by Microsoft. It currently supports most of the .NET libraries up to version 4.7 except WPF, WWF, and with limited WCF and limited ASP.NET async stack.


    For GUI applications Mono offers its own implementation of System.Windows.Forms. It is based on X11, so the possible graphical backends of the F&S-Images are limited to X11 and Xwayland.


    Mono does not offer any native libraries to access Linux hardware peripheries like I2C or SPI. If you need to access these in your application, please contact F&S for support to create these libraries.


    You can test if your .NET application is portable to Linux by adding Mono to the latest F&S Buildroot and Yocto releases and run your application.


    A tutorial of how to add Mono to your board image and how to run your .NET application can now be found at the Document tab of your board on the F&S Website under


    Linux -> Mono on F&S Boards.pdf

    Hello,


    there seems to be an issue with the imx-gpu-viv package and the Xservers 2D driver glamor.


    As NXP disables glamor in their Yocto reference release, we should do the same.


    I attached a patch to do so.


    Please put it into your buildroot directory buildroot-2019.05.3-fsimx6-B2020.04 and run

    Code
    1. patch -p1 < Xserver_disable_glamor.patch


    Your F&S support team

    Hello,


    if you think that the threshold is set correctly by default you can try to remove the threshold parameter from the device-tree.

    This should prevent the parameter from being set by the driver.


    Your F&S Support Team

    Hello,


    you are right, downgrading the imx-gpu-viv driver seems to be a bigger issue.


    A quick hotfix for your problem would be, to add a small scaling to your rotation.


    Code
    1. xrandr --output "mxs-lcdif0" --rotate left --scale 1.00005x1

    It seems to use a different hardware acceleration, which is not affected by the driver bug.


    In general, adding a displayrotation is a performance expensive operation. Could you add your rotation to a higher level like the QT5 application?


    Your F&S Support Team

    Hello,


    we are currently using the 6.2.4 imx-gpu-viv driver in our releases.

    You can try to downgrade your imx-gpu-viv driver to version 5.0.11 like suggested in the NXP-post.


    Replace the files at:

    package/freescale-imx/imx-gpu-viv

    with the files attached to this post and rebuild your rootfs.


    Alternatively you could try to switch to Wayland as graphical backend. It should work there.


    Your F&S Support Team

    Files

    Hello Daniel,


    for a new LCD-Display you will have to add an entry to the struct lcdif_modedb at


    drivers/video/fbdev/mxc_lcdif.c


    with the following parameters:

    Additionally, you need to adjust your device tree file efusa9*.dts


    #define CONFIG_EFUSA9_LCD_BPP <bits-per-pixel>

    #define CONFIG_EFUSA9_LCD_PIX_FMT "<Pixel format>

    #define CONFIG_EFUSA9_LCD_MODE_STR "<'name'-from-lcdif_modedb-entry"


    You will have to rebuild and replace kernel and device tree.


    Your F&S Support Team

    Fix: No login tty on non-fus images

    Unfortunately, there is an issue with the login for all non-fus images.


    If you are trying to run an image that does not come from the fus layer, e.g the core-image-minimal, you will not get a login-tty on your debug console.

    This is because with this release you can set the login in uboot, by setting the "login" environment variable using the fus-bdinfo structure.


    The non-fus images are missing the necessary scripts to get the login-tty from bdinfo, so the spawning of the login console fails.

    Because of this, we had to remove the core-image-minimal binaries from this release.

    You can build a working non-fus image by adding the recipe "fs-startscript" to your build.


    Run the following command in your build directory (e.g. build-fsimx6-fus-imx-wayland):

    Code
    1. echo "CORE_IMAGE_EXTRA_INSTALL += \"fs-startscript \"" >> conf/local.conf


    Alternatively, you can apply the patch, appended to this post, so the fus-startscript will get added to any new build you configure.


    Copy the patch to your yocto-fus root directory (where the fus-setup-release script is located) and run the following command there:

    Code
    1. patch -p1 < 001-Add-fs-startscript.patch 


    Please excuse the inconvenience


    Your F&S support team

    Fix: No login tty on non-fus images

    Unfortunately, there is an issue with the login for all non-fus images.


    If you are trying to run an image that does not come from the fus layer, e.g the core-image-minimal, you will not get a login-tty on your debug console.

    This is because with this release you can set the login in uboot, by setting the "login" environment variable using the fus-bdinfo structure.


    The non-fus images are missing the necessary scripts to get the login-tty from bdinfo, so the spawning of the login console fails.

    Because of this, we had to remove the core-image-minimal binaries from this release.

    You can build a working non-fus image by adding the recipe "fs-startscript" to your build.


    Run the following command in your build directory (e.g. build-fsimx6-fus-imx-wayland):

    Code
    1. echo "CORE_IMAGE_EXTRA_INSTALL += \"fs-startscript \"" >> conf/local.conf


    Alternatively, you can apply the patch, appended to this post, so the fus-startscript will get added to any new build you configure.


    Copy the patch to your yocto-fus root directory (where the fus-setup-release script is located) and run the following command there:

    Code
    1. patch -p1 < 001-Add-fs-startscript.patch 


    Please excuse the inconvenience


    Your F&S support team