Advertisement

Quick Links

L-1017e.A3 i.MX 8M Plus BSP Manual
 
 
 
 
 
 
 
 
 
A Product of PHYTEC Technology Holding Company

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the L-1017e.A3 i.MX 8M Plus and is the answer not in the manual?

Questions and answers

Subscribe to Our Youtube Channel

Summary of Contents for Phytec L-1017e.A3 i.MX 8M Plus

  • Page 1 L-1017e.A3 i.MX 8M Plus BSP Manual                   A Product of PHYTEC Technology Holding Company...
  • Page 2 L-1017e.A3 i.MX 8M Plus BSP Manual L-1017e.A3 i.MX 8M Plus BSP Manual  Document Title L-1017e.A3 i.MX 8M Plus BSP Manual Document Type BSP Manual Article Number L-1017e.A3 Yocto Manual L-813e.A12 Yocto Reference Manual (hardknott) Release Date 09.12.2022 Is Branch of L-1017e.Ax i.MX 8M Plus BSP Manual Head...
  • Page 3 L-1017e.A3 i.MX 8M Plus BSP Manual PHYTEC Documentation PHYTEC provides a variety of hardware and software documentation for all of our products. This includes any or all of the following: • QS Guide: A short guide on how to set up and boot a phyCORE board along with brief information on building a BSP, the device tree, and accessing peripherals.
  • Page 4: Supported Hardware

    L-1017e.A3 i.MX 8M Plus BSP Manual Supported Hardware The phyBOARD-Pollux with 2GB RAM  is supported.  On our web page, you can see all supported Machines with the available Article Numbers for this release: BSP- Yocto-NXP-i.MX8MP-PD22.1.0 download. If you choose a specific Machine Name in the section Supported Machines, you can see which Article Numbers are available under this machine and also a short description of the hardware information. In case you...
  • Page 5: Getting Started

    L-1017e.A3 i.MX 8M Plus BSP Manual Getting Started The phyBOARD-Pollux Kits are shipped with a pre-flashed SD-Card.  It contains the phytec-qt5demo-image and can be used directly as a boot source. The eMMC is programmed with only a U-boot as default. You can get all the...
  • Page 6: First Start-Up

    SD card and are not still in memory. The parameter status=progress will print out information on how much data is and still has to be copied until it is finished.  Note The created file phytec-qt5demo-image-phyboard-pollux-imx8mp-3.sdcard is only a link to a file like phytec- qt5demo-image-phyboard-pollux-imx8mp-3-<BUILD-TIME>.rootfs.sdcard. <BUILD-TIME> has the format: YYYYMMDDHHMMSS example: Date = 14.01.2022...
  • Page 7: Basic Setup

    For more information about our meta-layer or Yocto in general visit: L-813e.A12 Yocto Reference Manual (hardknott). Basic Set-Up If you have never created a Phytec BSP with Yocto on your computer, you should take a closer look at the chapter BSP Workspace Installation in the L-813e.A12 Yocto Reference Manual (hardknott).
  • Page 8  Note We suggest starting with our smaller non-graphical image phytec-headless-image to see if everything is working correctly. The first compile process takes about 40 minutes on a modern Intel Core i7. All subsequent builds will use the filled caches and should take about 3 minutes.
  • Page 9 L-1017e.A3 i.MX 8M Plus BSP Manual • u-boot.bin: Binary compiled U-boot bootloader (U-Boot). Not the final Bootloader image! • oftree: Default kernel device tree • u-boot-spl.bin: Secondary program loader (SPL) • imx-boot-tools/bl31-imx8mp.bin: ARM Trusted Firmware binary • lpddr4_pmu_train_2d_dmem_202006.bin, lpddr4_pmu_train_2d_imem_202006.bin: DDR PHY firmware images •...
  • Page 10: Installing The Os

    L-1017e.A3 i.MX 8M Plus BSP Manual Installing the OS Bootmode Switch (S3)  Hardware revision baseboard: 1552.2 The phyBOARD‑Pollux features a boot switch with four individually switchable ports to select the phyCORE-i.MX 8M Plus default bootsource. 1 Boot Configuration Options (S3)
  • Page 11 L-1017e.A3 i.MX 8M Plus BSP Manual SD Card Test Mode Flash eMMC To boot from eMMC, make sure that the BSP image is flashed correctly to the eMMC and the bootmode switch (S3) set to Default SOM boot.  Flash eMMC from Network i.MX 8M Plus boards have an Ethernet connector and can be updated over a network.
  • Page 12 L-1017e.A3 i.MX 8M Plus BSP Manual switch to partitions #0, OK mmc2(part 0) is current device u-boot=> setexpr nblk ${filesize} / 0x200 u-boot=> mmc write ${loadaddr} ${nblk}   MMC write: dev # 2, block # 0, count 1780942 1780942 blocks written: OK Flash eMMC via Network in Linux on Target You can update the eMMC from your target.
  • Page 13 Flash eMMC from USB in Linux These steps will show how to flash the eMMC on Linux with a USB stick. You only need a complete image saved on the USB stick and a bootable sdcard. (e.g. phytec-qt5demo-image-phyboard-pollux-imx8mp-3.sdcard). Set the bootmode switch to boot from SD Card.
  • Page 14 L-1017e.A3 i.MX 8M Plus BSP Manual 61.528509] sd 0:0:0:0: [sda] No Caching mode page found 61.533889] sd 0:0:0:0: [sda] Assuming drive cache: write through 61.665969] sda: sda1 61.672284] sd 0:0:0:0: [sda] Attached SCSI removable disk target$ mount /dev/sda1 /mnt •...
  • Page 15 Flash eMMC from SD card in Linux on Target You can also flash the eMMC on Linux. You only need a complete image saved on the SD card (e.g. phytec-qt5demo- image-phyboard-pollux-imx8mp-3.sdcard). • Show your saved image files on the SD card: target$ ls phytec-qt5demo-image-phyboard-pollux-imx8mp-3.sdcard...
  • Page 16 L-1017e.A3 i.MX 8M Plus BSP Manual target$ ls /dev | grep mmc mmcblk1 mmcblk1p1 mmcblk1p2 mmcblk2 mmcblk2boot0 mmcblk2boot1 mmcblk2p1 mmcblk2p2 mmcblk2rpmb • The eMMC device can be recognized by the fact that it contains two boot partitions: (mmcblk2boot0; mmcblk2boot1) •...
  • Page 17 L-1017e.A3 i.MX 8M Plus BSP Manual Flash SPI NOR from Network in u-boot on Target Similar to updating the eMMC over a network, be sure to set up the development host correctly. The IP needs to be set to 192.168.3.10, the netmask to 255.255.255.0, and a TFTP server needs to be available. Before reading and writing is possible, the SPI-NOR flash needs to be probed: u-boot=>...
  • Page 18 L-1017e.A3 i.MX 8M Plus BSP Manual Minimum input/output unit size: byte Sub-page size: byte Character device major/minor: 90:0 Bad blocks are allowed: false Device is writable: true • Erase the u-boot partition and flash it: target$ flash_erase /dev/mtd0 0x0 60 target$ flashcp imx-boot-phyboard-pollux-imx8mp-3-fspi.bin-flash_evk_flexspi /dev/...
  • Page 19 The RAUC (Robust Auto-Update Controller) mechanism support has been added to meta-ampliphy. It controls the procedure of updating a device with new firmware. This includes updating the Linux kernel, Device Tree, and root filesystem. PHYTEC has written an online manual on how we have intergraded RAUC into our BSPs: L-1006e.A3 RAUC Update &...
  • Page 20: Tftp Server Setup

    Then copy your BSP image files to this directory. You also need to configure a static IP address for the appropriate interface. The default IP address of the PHYTEC evaluation boards is 192.168.3.11. Setting a host address 192.168.3.10 with netmask 255.255.255.0 is a good choice.
  • Page 21 L-1017e.A3 i.MX 8M Plus BSP Manual # /etc/default/tftpd-hpa   TFTP_USERNAME="tftp" TFTP_DIRECTORY="/tftpboot" TFTP_ADDRESS=":69" TFTP_OPTIONS="-s -c" • Set TFTP_DIRECTORY to your TFTP server root directory • Set TFTP_ADDRESS to the host address the server is listening to (set to 0.0.0.0:69 to listen to all local IPs) •...
  • Page 22 L-1017e.A3 i.MX 8M Plus BSP Manual Place Images on Host for Netboot • Copy the kernel image to your tftpboot directory: cp Image /tftpboot • Copy the devicetree  to your tftpboot directory: cp oftree /tftpboot • Extract the rootfs to your nfsroot: sudo tar -xvzf phytec-qt5demo-image-phyboard-pollux-imx8mp-3.tar.gz -C...
  • Page 23 L-1017e.A3 i.MX 8M Plus BSP Manual Host preparations for UUU-Tool Usage host$ sudo apt-get install libusb-1.0-0-dev libzstd-dev libzip-dev libbz2-dev pkg- config cmake host$ git clone https://github.com/NXPmicro/mfgtools.git host$ cd mfgtools host$ cmake . host$ make Get _flash.bin Download imx-boot from our server or get it from your Yocto build directory at ../build/deploy/images/phyboard-...
  • Page 24 L-1017e.A3 i.MX 8M Plus BSP Manual Download phytec-qt5demo-image-phyboard-pollux-imx8mp-3.sdcard and imx-boot image from our server or get them from your Yocto build directory at ../build/deploy/images/phyboard-pollux-imx8mp-3/ and copy them to the UUU directory: host$ cd mfgtools host$ cp -v phytec-qt5demo-image-phyboard-pollux-imx8mp-3.sdcard uuu/_rootfs.sdcard Make sure that the U-Boot image is also available! •...
  • Page 25: Using The Sdk

    L-1017e.A3 i.MX 8M Plus BSP Manual • Move to the Yocto build directory: host$ source sources/poky/oe-init-build-env host$ bitbake -c populate_sdk phytec-qt5demo-image # or another image Install the SDK • Set correct permissions and install the SDK: host$ chmod +x phytec-ampliphy-vendor-xwayland-glibc-x86_64-phytec-qt5demo-image- cortexa53-crypto-toolchain-BSP-Yocto-NXP-i.MX8MP-PD22.1.0.sh...
  • Page 26 L-1017e.A3 i.MX 8M Plus BSP Manual If you already build our BSP with Yocto, you can get the bl31-imx8mp.bin and lpddr4_pmu_train*.bin from the directory mentioned here: BSP images Or you can download the files here: https://download.phytec.de/Software/.../imx-boot-tools   Warning Make sure you rename the files you need so that they are compatible with the mkimage tool.
  • Page 27 L-1017e.A3 i.MX 8M Plus BSP Manual The flash.bin can be found at u-boot-imx/ directory and now can be flashed. A chip-specific offset is needed. E.g. flash SD card: Plus: host$ sudo dd if=flash.bin of=/dev/sd[x] bs=1024 seek=32 conv=sync Build Kernel •...
  • Page 28: Format Sd Card

    L-1017e.A3 i.MX 8M Plus BSP Manual host$ ./phyLinux init -p imx8mp -r hardknott This will initialize a BSP that will track the latest development state. From now on repo sync in this folder will pull all the latest changes from our Git repositories.:...
  • Page 29 L-1017e.A3 i.MX 8M Plus BSP Manual Expand rootfs • Choose your SD Card device at the drop-down menu on the top right • Choose the ext4 root partition and click on resize:...
  • Page 30 L-1017e.A3 i.MX 8M Plus BSP Manual • Drag the slider as far as you like or enter the size manually.
  • Page 31 • To apply your changes, press the green tick.  • Now you can mount the root partition and copy e.g. the phytec-qt5demo-image-phyboard-pollux- imx8mp-3.sdcard image to it. Then unmount it again: host$ sudo cp phytec-qt5demo-image-phyboard-pollux-imx8mp-3.sdcard /mnt/ ; sync host$ umount /mnt...
  • Page 32 L-1017e.A3 i.MX 8M Plus BSP Manual Create a Third Partition • Choose your SD Card device at the drop-down menu on the top right • Choose the bigger unallocated  area and press "New": • Click "Add"...
  • Page 33 L-1017e.A3 i.MX 8M Plus BSP Manual • Confirm your changes by pressing the green tick.
  • Page 34 L-1017e.A3 i.MX 8M Plus BSP Manual • Now you can mount the new partition and copy e.g. phytec-qt5demo-image-phyboard-pollux- imx8mp-3.sdcard image to it. Then unmount it again: host$ sudo mount /dev/sde3 /mnt host$ sudo cp phytec-qt5demo-image-phyboard-pollux-imx8mp-3.sdcard /mnt/ ; sync host$ umount /mnt...
  • Page 35: Device Tree Structure

    PHYTEC i.MX 8M Plus BSP Device Tree Concept The following sections explain some rules PHYTEC has defined on how to set up device trees for our i.MX 8M Plus SoC-based boards.
  • Page 36 L-1017e.A3 i.MX 8M Plus BSP Manual • Board.dts - include the carrier board and module dtsi files. There may also be some hardware configuration nodes enabled on the carrier board or the module (i.e. the Board .dts shows the special characteristics of the board configuration).
  • Page 37 L-1017e.A3 i.MX 8M Plus BSP Manual Set ${overlays} variable The ${overlays} U-Boot environment variable contains a space-separated list of overlays that will be applied during boot. Depending on the boot source the overlays have to either be placed in the boot partition of eMMC/SD-Card or are loaded over tftp.
  • Page 38 L-1017e.A3 i.MX 8M Plus BSP Manual Manufacturer: PHYTEC Version: Devicetree overlay: imx8mp-phycore-no-spiflash.dtbo Other information: SPI flash not populated on SoM If the EEPROM data is not available, no device tree overlays are applied and the default status "okay" is preserved. To prevent running the extension command during boot the ${no_extensions} variable can be set to 1 in the bootloader environment.
  • Page 39 L-1017e.A3 i.MX 8M Plus BSP Manual Accessing Peripherals To find out which boards and modules are supported by the release of PHYTEC’s phyCORE-i.MX 8M Plus BSP described herein, visit our web page https://www.phytec.de/produkte/system-on-modules/phycore-imx-8m-plus/ and click the corresponding BSP release in the download section. Here you can find all hardware supported in the columns "Hardware Article Number"...
  • Page 40 L-1017e.A3 i.MX 8M Plus BSP Manual RS232/RS485 The phyCORE-i.MX 8M Plus supports up to 4 UART units. On the phyBOARD-Pollux, TTL level signals of UART1 (the standard console) and UART4 are routed to Silicon Labs CP2105 UART to USB converter expansion. This USB is brought out at Micro-USB connector X1.
  • Page 41 L-1017e.A3 i.MX 8M Plus BSP Manual target$ linux-serial-test -p /dev/ttymxc1 -b 115200 --rs485 More information about the linux-serial-test tool and its parameters can be found here: linux-serial-test Documentation for calling the IOCTL within c-code is described in the Linux kernel documentation: https:// www.kernel.org/doc/Documentation/serial/serial-rs485.txt...
  • Page 42 L-1017e.A3 i.MX 8M Plus BSP Manual netboot=echo Booting from net ...; test ${ip_dyn} = yes; then setenv nfsip dhcp; setenv get_cmd dhcp; else setenv nfsip ${ipaddr}:${serverip}::${netmask}::eth0:on; setenv get_cmd tftp; fi; run net_load_bootenv; then env import -t ${bootenv_addr} ${filesize};fi; run netargs; ${get_cmd} ${loadaddr} ${image};...
  • Page 43 L-1017e.A3 i.MX 8M Plus BSP Manual UP BROADCAST MULTICAST MTU:1500 Metric:1 packets:0 errors:0 dropped:0 overruns:0 frame:0 packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 bytes:0 (0.0 bytes:0 (0.0 • Temporary adaption of the eth0 configuration: target$ ifconfig eth0 192.168.3.11 netmask 255.255.255.0 WLAN and Bluetooth WLAN and Bluetooth on the phyBOARD-Pollux are provided by the PEB-WLBT-05 expansion card.
  • Page 44 L-1017e.A3 i.MX 8M Plus BSP Manual eMMC Devices PHYTEC modules like phyCORE-i.MX 8M Plus are populated with an eMMC memory chip as the main storage. eMMC devices contain raw MLC memory cells combined with a memory controller that handles ECC and wear leveling.
  • Page 45 L-1017e.A3 i.MX 8M Plus BSP Manual The mechanism to issue background operations has been implemented in the Linux kernel since v3.7. You only have to enable BKOPS_EN on the eMMC device (see below for details). The JEDEC standard v5.1 introduces a new automatic BKOPS feature. It frees the host to trigger the background operations regularly because the device starts BKOPS itself when it is idle (see the description of bit AUTO_EN in...
  • Page 46 L-1017e.A3 i.MX 8M Plus BSP Manual target$ mmc extcsd read /dev/mmcblk2 | grep -A WR_REL_SET Write reliability setting register [WR_REL_SET]: 0x1f user area: the device protects existing data a power failure occurs during a write o peration partition 1: the device protects existing data...
  • Page 47 L-1017e.A3 i.MX 8M Plus BSP Manual Disk /dev/mmcblk2: 7617MB Sect[ 1799.850385] mmcblk2: p1 p2 or size (logical/physical): 512B/512B Partition Table: msdos Disk Flags:   Number Start Size Type File system Flags 4194kB 72.4MB 68.2MB primary fat16 boot, lba 72.4MB 537MB...
  • Page 48 L-1017e.A3 i.MX 8M Plus BSP Manual attribute. This is left to the chipmaker. For the Micron chips, the enhanced attribute increases the reliability but also halves the capacity.  Warning When enabling the enhanced attribute on the device, all data will be lost. The following sequence shows how to enable the enhanced attribute.
  • Page 49 L-1017e.A3 i.MX 8M Plus BSP Manual • To ensure that the new setting has taken over, shut down the system: target$ poweroff and perform a power cycle. It is recommended that you verify the settings now. • First, check the value of ENH_SIZE_MULT which must be 3719168 KiB:...
  • Page 50 Do not confuse eMMC partitions with partitions of a DOS, MBR, or GPT partition table. The current PHYTEC BSP does not use the extra partitioning feature of eMMC devices. The u-boot is flashed at the beginning of the user partition. The u-boot environment is placed at a fixed location after the u-boot. An MBR partition table is used to create two partitions, a FAT32 boot, and ext4 rootfs partition.
  • Page 51 L-1017e.A3 i.MX 8M Plus BSP Manual Offset User Area Offset Boot Partition eMMC Device Bootloader Filename i.MX 8M Plus 32 kiB 0 kiB imx-boot /dev/ mmcblk2 After that set the boot partition from user space using the mmc tool: (for 'boot0') target$ mmc bootpart enable...
  • Page 52 L-1017e.A3 i.MX 8M Plus BSP Manual /dev/mmcblk2p2 1023,3,32 1023,3,32 141312 2192013 2050702 1001M Linux • Use fdisk to delete and create a partition with a max size of the device: target$ fdisk /dev/mmcblk2   The number of cylinders for this disk is set to 116224.
  • Page 53: Spi Master

    L-1017e.A3 i.MX 8M Plus BSP Manual Units: sectors of bytes   Device Boot StartCHS EndCHS StartLBA EndLBA Sectors Size Id Type /dev/mmcblk2p1 * 128,0,1 1023,3,32 16384 140779 124396 60.7M c Win95 FAT32 (LBA) /dev/mmcblk2p2 1023,3,32 1023,3,32 141456 14876671 14735216 7194M Linux  ...
  • Page 54 L-1017e.A3 i.MX 8M Plus BSP Manual   mtd0 Name: u-boot Type: Eraseblock size: 65536 bytes, 64.0 Amount of eraseblocks: 60 (3932160 bytes, MiB) Minimum input/output unit size: byte Sub-page size: byte Character device major/minor: 90:0 Bad blocks are allowed: false...
  • Page 55 L-1017e.A3 i.MX 8M Plus BSP Manual GPIOs The phyBOARD-Pollux has a set of pins especially dedicated to user I/Os. Those pins are connected directly to i.MX 8M Plus pins and are muxed as GPIOs. They are directly usable in Linux userspace. The processor has organized its GPIOs into five banks of 32 GPIOs each (GPIO1 –...
  • Page 56 L-1017e.A3 i.MX 8M Plus BSP Manual   Options: -h, --help: display this message and exit -v, --version: display the version and exit -l, --active-low: set the line active state to low -m, --mode=[exit|wait|time|signal] (defaults to 'exit'): tell the program what to...
  • Page 57 C Bus The i.MX 8M Plus contains three Multimaster fast-mode I²C modules called I2C1, I2C2, I2C3, and I2C4. PHYTEC boards provide plenty of different I²C devices connected to the I²C modules of the i.MX 8M Plus. This section describes the basic device usage and its DT representation of some I²C devices integrated on our phyBOARD-Pollux.
  • Page 58 L-1017e.A3 i.MX 8M Plus BSP Manual target$ dd if=/dev/zero of=/sys/class/i2c-dev/i2c-0/device/0-0051/eeprom bs=4096 count=1 DT representation, e.g. in phyCORE-i.MX 8M Plus file imx8mp-phycore-som.dtsi can be found in our PHYTEC git:  https://git.phytec.de/linux-imx/tree/arch/arm64/boot/dts/freescale/imx8mp-phycore-som.dtsi?h=v5.10.72_2.2.0- phy9#n188  Warning The first 256 bytes are reserved for future purposes!
  • Page 59  Note If you deleted both EEPROM spaces, please contact our support! RTCs can be accessed via /dev/rtc*. Because PHYTEC boards have often more than one RTC, there might be more than one RTC device file. • To find the name of the RTC device, you can read its sysfs entry with: target$ cat /sys/class/rtc/rtc*/name •...
  • Page 60: Usb Host Controller

    L-1017e.A3 i.MX 8M Plus BSP Manual target$ hwclock -w target$ reboot target$ date Wed Mar 2 10:34:06 2022 To set the time and date from the RTC use: target$ date Thu Jan 1 01:00:02 1970 target$ hwclock -s target$ date...
  • Page 61 L-1017e.A3 i.MX 8M Plus BSP Manual CAN FD The phyBOARD-Pollux two flexCAN interfaces supporting CAN FD. They are supported by the Linux standard CAN framework which builds upon then the Linux network layer. Using this framework, the CAN interfaces behave like an ordinary Linux network device, with some additional features special to CAN.
  • Page 62 L-1017e.A3 i.MX 8M Plus BSP Manual Field Description Maximum Transfer Unit RX packets Number of Received Packets TX packets Number of Transmitted Packets RX bytes Number of Received Bytes TX bytes Number of Transmitted Bytes errors... Bus Error Statistics The CAN configuration is done in the systemd configuration file /lib/systemd/system/can0.service. For a persistent change of (as an example, the default bitrates), change the configuration in the BSP under ./meta-yogurt/recipes-...
  • Page 63 L-1017e.A3 i.MX 8M Plus BSP Manual target$ candump can0 To generate random CAN traffic for testing purposes, use cangen: target$ cangen cansend --help and candump --help provide help messages for further information on options and usage.  Warning The mcp2518fd SPI to CANfd supports only baudrates starting from 125kB/s. Slower rates can be selected but may not work correctly.
  • Page 64 L-1017e.A3 i.MX 8M Plus BSP Manual Capabilities: [e0] Express Endpoint, MSI Capabilities: [100] Advanced Error Reporting Capabilities: [140] Device Serial Number 00-24-d6-ff-ff-84-0d-1e Kernel modules: iwlwifi In this example, the PCIe device is the Intel Corporation WiFi Link 5100. For PCIe devices, you have to enable the correct driver in the kernel configuration. This WLAN card, for example, is manufactured by IntelKconfig.
  • Page 65 L-1017e.A3 i.MX 8M Plus BSP Manual Audio Playback devices supported for phyBOARD-Pollux are HDMI and the TI TLV320AIC3007 audio codec on the PEB- AV-10 connector. On the AV-Connector there is a 3.5mm headset jack with OMTP-standard and an 8-pin header.  The 8-pin header contains a mono speaker, headphones, and line in signals.
  • Page 66 L-1017e.A3 i.MX 8M Plus BSP Manual [...]   pcm.asymed { type asym playback.pcm "pebav10" capture.pcm "dsnoop"   [...] Pulseaudio Configuration For applications using Pulseaudio, check for available sinks: target$ pactl list short cards alsa_card.platform-snd_dummy.0 module-alsa-card.c alsa_card.platform-sound-hdmi module-alsa-card.c alsa_card.platform-sound-peb-av-10 module-alsa-card.c To select PEB-AV-10, type:...
  • Page 67 L-1017e.A3 i.MX 8M Plus BSP Manual target$ amixer -c1 sset 'Left PGA Mixer Mic3R' target$ amixer -c1 sset 'Right PGA Mixer Mic3R' target$ arecord -t wav -c 44100 -f S16_LE test.wav  Information Since playback and capture share hardware interfaces, it is not possible to use different sampling rates and formats for simultaneous playback and capture operations.
  • Page 68 L-1017e.A3 i.MX 8M Plus BSP Manual Connectors: encoder status name size (mm) modes encoders connected LVDS-1 216x135 modes: index name refresh (Hz) hdisp hss hse htot vdisp vss vse vtot 1280x800 59.07 1280 1380 1399 1440 800 804 808 823 70000 flags: phsync, pvsync;...
  • Page 69: Single Display

    L-1017e.A3 i.MX 8M Plus BSP Manual  Notes • HDMI will not work if LVDS1 is enabled. • LVDS0 and LVDS1 can not be used at the same time. HDMI is always enabled in the devicetree. The other interfaces can be enabled with Device Tree Overlay.
  • Page 70   [output] name=LVDS-2 mode=current phytec-qtdemo With the phytec-qt5demo-image, Weston with the phytec-qt5demo starts during boot. The phytec-qt5demo can be stopped with: target$ systemctl stop phytec-qtdemo • To start the demo again, run: target$ systemctl start phytec-qtdemo • To disable autostart of the demo run: target$ systemctl disable phytec-qtdemo •...
  • Page 71: Backlight Control

    Backlight Control If a display is connected to the PHYTEC board, you can control its backlight with the Linux kernel sysfs interface. All available backlight devices in the system can be found in the folder /sys/class/backlight. Reading the appropriate files and writing to them allows you to control the backlight.
  • Page 72: Power Management

    L-1017e.A3 i.MX 8M Plus BSP Manual Power Management CPU Core Frequency Scaling The CPU in the i.MX 8 SoC is able to scale the clock frequency and the voltage. This is used to save power when the full performance of the CPU is not needed. Scaling the frequency and the voltage is referred to as 'Dynamic Voltage and Frequency Scaling' (DVFS).
  • Page 73 L-1017e.A3 i.MX 8M Plus BSP Manual • userspace allows the user or userspace program running as root to set a specific frequency (e.g. to 1600000). Type: • In order to ask for the current governor, type: target$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor You will normally get: ondemand •...
  • Page 74: Suspend To Ram

    L-1017e.A3 i.MX 8M Plus BSP Manual 110.502295] CPU3: shutdown 110.505012] psci: CPU3 killed. Now the core is powered down and no more processes are scheduled on this core. • You can use top to see a graphical overview of the cores and processes: target$ htop •...
  • Page 75 L-1017e.A3 i.MX 8M Plus BSP Manual Kernel The Linux kernel has integrated thermal management that is capable of monitoring SoC temperatures, reducing the CPU frequency, driving fans, advising other drivers to reduce the power consumption of devices, and – worst-case – shutting down the system gracefully (https://www.kernel.org/doc/Documentation/thermal/sysfs-api.txt).
  • Page 76 Watchdog The PHYTEC i.MX8MP modules include a hardware watchdog that is able to reset the board when the system hangs. The watchdog is started on default in U-Boot with a timeout of 60s. So even during early kernel start, the watchdog is already up and running.
  • Page 77 L-1017e.A3 i.MX 8M Plus BSP Manual The i.MX 8M Plus SoC contains a Neural Processing Unit up to 2.3 TOPS as an accelerator for artificial intelligence operations. Refer to our latest phyCORE-i.MX 8M Plus AI Kit Guide on the phyCORE-i.MX 8M Plus download section to get information about the NPU:  L-1015e.A0 phyCORE-i.MX 8M Plus AI Kit Guide...
  • Page 78 L-1017e.A3 i.MX 8M Plus BSP Manual Reference Manual). The following list is an abstract from the i.MX 8M Plus Reference Manual and includes some useful registers in the OCOTP_CTRL (at base address 0x30350000): Name Word Memory Description offset to 0x303500...
  • Page 79 The older SDK version 2.9.0 is also available, replace 2.11.1 with 2.9.0 to use it. phytec-mcux-boards contains all examples ported and tested for phyBOARD-Pollux with the current version 2.11.1. of the NXP SDK. To build the firmware, a compiler toolchain and make/cmake are required. The GNU Arm Embedded Toolchain might be available in your distribution's repositories, e.g.
  • Page 80 L-1017e.A3 i.MX 8M Plus BSP Manual Building the Firmware The scripts to build the firmware are located in<sdk-directory>/phytec-mcux-boards/phyboard-pollux/ <example_category>/<example>/armgcc. There are scripts for each location the firmware is supposed to run, e.g.  $ ./build_release.sh to build the firmware for the M7's TCM. The output will be placed under release/ in the armgcc directory. .bin files and can be run in U-Boot and .elf files within Linux.
  • Page 81 L-1017e.A3 i.MX 8M Plus BSP Manual Together with the J-Link, GDB Server can be used for running and debugging the software.  On the phyBOARD- Pollux, the JTAG-Pins are accessible via the X6 Expansion Connector. The simplest way is to use a PEB-EVAL-01 board that has the JTAG-Pins reachable with a pin header on the top.
  • Page 82 L-1017e.A3 i.MX 8M Plus BSP Manual BSP Extensions Chromium Our BSP for the phyBOARD-Polis-i.MX8M Mini supports Chromium. You can include it in the phytec-qt5demo-image with only a few steps. Adding Chromium to Your local.conf To include Chromium you have to add the following line into your local.conf.

Table of Contents