background image

PHYTEC

Page 19

The module includes file 

 which contains all devices which are mounted on the module, such as PMIC and RAM. Devices that come from the i.

Modul .dtsi

MX 8M Plus SoC but are just routed down to the carrier board are not part of the 

. These devices are included in the 

. The 

Module .dtsi

Carrierboard .dtsi

Bo

 includes the carrier board and module nodes. It also adds partition tables and enables all hardware configurable nodes of the carrier board or the 

ard .dts
module (i.e. the 

 shows the special characteristics of the board configuration). For example, there are phyCORE-i.MX 8M Plus SOMs which may 

Board .dts

or may not have a SPI NOR flash mounted. The converter is enabled (if available) in the 

 and not in the 

.

Board .dts

Module .dtsi

Accessing Peripherals

To find out which boards and modules are supported by the release of PHYTEC’s i.MX8 BSP described herein, visit our web page at 

http://www.phytec.de

/produkte/software/yocto/phytec-unified-yocto-bsp-releases/

 and click the corresponding BSP release. here you can find all hardware supported in the 

columns "Hardware Article Number" and the correct machine name in the corresponding cell under "Machine Name". (

)

BSP-Yocto_Machines

For information about all our supported i.MX8 variants, visit our web page at 

.

http://www.phytec.de/produkte/nxp/imx-8/

To achieve maximum software re-use, the 

 kernel offers a sophisticated infrastructure that layers software components into board-specific parts. The 

Linux

BSP tries to modularize the kit features as far as possible. This means that when a customized baseboard or even a customer-specific module is 
developed, most of the software support can be re-used without error-prone copy-and-paste. The kernel code corresponding to the boards can be found in 
device trees (DT) under 

.

linux/arch/arm64/boot/dts/freescale/*.dts*

In fact, software re-use is one of the most important features of the Linux kernel, especially of the ARM implementation which always has to fight with an 
insane number of possibilities of the System-on-Chip CPUs. The whole board-specific hardware is described in DTs and is not part of the kernel image 
itself. The hardware description is in its own separate binary, called the Device Tree Blob (DTB) (section 

). 

Device Tree (DT)

Please read section 

 to get an understanding of our i.MX8 BSP device tree model. 

PHYTEC i.MX 8M Plus BSP Device Tree Concept

The following sections provide an overview of the supported hardware components and their operating system drivers on the i.MX8 platform. Further 
changes can be ported upon customer request.

i.MX 8M Plus Pin Muxing

The i.MX 8M Plus SoC contains many peripheral interfaces. In order to reduce package size and lower overall system cost while maintaining maximum 
functionality, many of the i.MX 8M Plus terminals can multiplex up to eight signal functions. Although there are many combinations of pin multiplexing that 
are possible, only a certain number of sets called IO sets, are valid due to timing limitations. These valid IO sets were carefully chosen to provide many 
possible application scenarios for the user.

Please refer to the 

 for more information about the specific pins and muxing capabilities.

NXP i.MX 8M Plus Reference Manual

The IO set configuration, also called muxing, is done in the Device Tree. The driver 

 reads the DT's node 

, and does the appropriate 

pinctrl-single

fsl,pins

pin muxing.

Summary of Contents for L-1008e.A0 phyCORE-i.MX 8M Plus Alpha Kit

Page 1: ...D Card 5 Building the BSP 5 1 Get the BSP 5 2 Basic Set Up 5 3 Finding the Right Software Platform 5 4 Software Platform Selection 5 5 Build Process 5 6 BSP Images 6 System Booting 6 1 Booting from eM...

Page 2: ...nd starting the basic functionality of the phyCORE i MX 8M Plus This guide does not qualify as a Hardware manual for the phyCORE i MX 8M Plus The following manuals will be available in future releases...

Page 3: ...PHYTEC Page 3 phyBOARD Pollux Components Front phyBOARD Pollux Components Back Additional Equipment...

Page 4: ...t On the processor side UART2 is the default debug UART of the A53 Cores Setup your Terminal with the following parameters Speed 115200 baud Data bits 8 Stop bits 1 Parity None Flow control None Conne...

Page 5: ...to a suitable Ethernet source 10 100 1000 as the development host will need to communicate with the phyCORE i MX 8M Plus The ETH1 port X8 is not working in the Alpha Kit Connecting a phyCAM M camera m...

Page 6: ...mands in this guide will not work if you do not have access e g package installation Linux sudo formatting an SD card At least 40 GB to 50 GB of free space on the build partition of the host PC An SD...

Page 7: ...ytec de Used repository u boot git git phytec de u boot imx Our version is based on the and adds only a few patches which will be sent upstream in future releases u boot u boot imx Used Linux kernel r...

Page 8: ...s the PHYTEC machine TYPE Machine NAME phyboard pollux imx8mp 1 DESCRIPTION PHYTEC phyBOARD POLLUX i MX8M Plus Alpha ARTICLENUMBERS KPB 03123 Alpha A0 host yocto MACHINE phyboard pollux imx8mp 1 DISTR...

Page 9: ...files bin lpddr4_pmu_train_2d_imem_201904 bin Image Kernel Kernel device tree file oftree phytec qt5demo image phyboard pollux imx8mp 1 tar gz phytec qt5demo image phyboard pollux imx8mp 1 manifest R...

Page 10: ...et found Normal Boot Hit any key to stop autoboot 0 Booting from SD Card Booting from the SD card is useful in several situations e g if the board does not start anymore due to a damaged bootloader To...

Page 11: ...ut information on how much data is and still has to be copied until it is finished has the format BUILD TIME YYYYMMDDHHMMSS example Date 22 06 2018 Time 11 06 36 BUILD TIME 20180622110636 Four Individ...

Page 12: ...boot phyboard pollux imx8mp 1 sd bin flash_evk of dev sde bs 1k seek 32 conv fsync Mount the first partition and copy the and file to it vfat Image oftree host sudo mount dev sd X 1 mnt In case you w...

Page 13: ...BSP s build directory to the d tftpboot tftpboot irectory We also need a network connection between the embedded board and the TFTP server The server should be set to IP 192 168 3 10 and netmask 255 2...

Page 14: ...update the images in eMMC u boot Updating eMMC via Network i MX 8M Plus boards have an Ethernet connector and can be updated over a network Be sure to set up the development host correctly For the AL...

Page 15: ...arget Take an uncompressed or compressed image on the host and send it with through the network then uncompress it if necessary to the ssh eMMC of the target with a one line command target ip address...

Page 16: ...l before using the write command Command m for help p Disk dev sdb 29 8 GiB 31976325120 bytes 62453760 sectors Units sectors of 1 512 512 bytes Sector size logical physical 512 bytes 512 bytes I O siz...

Page 17: ...part 0 is current device u boot mmc write loadaddr 0x0 0x18F67E number of blocks to write In this case 837614592 bytes 512 0x18F67E MMC write dev 2 block 0 count 1635966 1635966 blocks written OK Rese...

Page 18: ...fically it is a description of hardware that is readable by an operating system so that the operating system doesn t need to hardcode details of the machine Structurally the DT is a tree or acyclic gr...

Page 19: ...pecific module is developed most of the software support can be re used without error prone copy and paste The kernel code corresponding to the boards can be found in device trees DT under linux arch...

Page 20: ...resistors are activated or not In this case the internal resistors are disabled Network phyCORE i MX8MP provides two ethernet interfaces In the ALPHA1 release only the EQOS IP core with the DP83867 p...

Page 21: ..._RD1 0x91 MX8MP_IOMUXC_ENET_RD2__ENET_QOS_RGMII_RD2 0x91 MX8MP_IOMUXC_ENET_RD3__ENET_QOS_RGMII_RD3 0x91 MX8MP_IOMUXC_ENET_RXC__CCM_ENET_QOS_CLOCK_GENERATE_RX_CLK 0x91 MX8MP_IOMUXC_ENET_RX_CTL__ENET_QO...

Page 22: ...th any kind of file system and also handled in a standard manner e g the and command work as expected mount umount DT configuration for the MMC SD card slot interface in arch arm64 boot dts freescale...

Page 23: ...2 0x1d0 MX8MP_IOMUXC_SD2_DATA3__USDHC2_DATA3 0x1d0 MX8MP_IOMUXC_GPIO1_IO04__USDHC2_VSELECT 0xc1 pinctrl_usdhc2_100mhz usdhc2grp 100mhz fsl pins MX8MP_IOMUXC_SD2_CLK__USDHC2_CLK 0x194 MX8MP_IOMUXC_SD2_...

Page 24: ...WE_B__USDHC3_CLK 0x194 MX8MP_IOMUXC_NAND_WP_B__USDHC3_CMD 0x1d4 MX8MP_IOMUXC_NAND_DATA04__USDHC3_DATA0 0x1d4 MX8MP_IOMUXC_NAND_DATA05__USDHC3_DATA1 0x1d4 MX8MP_IOMUXC_NAND_DATA06__USDHC3_DATA2 0x1d4 M...

Page 25: ...he wear leveling block management and ECC of the raw MLC cells This requires some maintenance tasks for example erasing unused blocks that are performed regularly These tasks are called Backg round Op...

Page 26: ...nation of this feature exceeds the scope of user General Purpose Area Partitions this document For further information see the JEDEC Standard chapter 7 2 Partition Management The current PHYTEC BSP do...

Page 27: ...g REQ_META file system with mount option should be safe against power cuts The file system check can recover the file system after a Conclusion ext4 data journal power failure but data that was writte...

Page 28: ...er 1 4 2 First sector 16 31080447 default 16 98304 Last sector or size K M G T 98304 31080447 default 31080447 Using default value 31080447 Command m for help p Disk dev mmcblk2 15 GB 15913189376 byte...

Page 29: ...tition to access To find the correct MTD device number for a partition run on the target mtdinfo all It lists all MTD devices and the corresponding partition names The node is defined inside of the SP...

Page 30: ...l available GPIOs in the system The formula to calculate the right number is Linux Linux GPIO number N X 1 32 Y Accessing GPIOs from userspace will be done using the It provides a library and tools fo...

Page 31: ...lues and wait for SIGINT or SIGTERM Note the state of a GPIO line controlled over the character device reverts to default when the last process referencing the file descriptor representing the device...

Page 32: ...cl gpios gpio5 14 GPIO_ACTIVE_HIGH GPIO_OPEN_DRAIN status okay iomuxc pinctrl_i2c1 i2c1grp fsl pins MX8MP_IOMUXC_I2C1_SCL__I2C1_SCL 0x400001c3 MX8MP_IOMUXC_I2C1_SDA__I2C1_SDA 0x400001c3 pinctrl_i2c1_g...

Page 33: ...C_I2C2_SCL__GPIO5_IO16 0x1e3 MX8MP_IOMUXC_I2C2_SDA__GPIO5_IO17 0x1e3 EEPROM phyCORE i MX8MP has a i2c EEPROM populated connected to the i2c1 bus It is possible to read and write directly to the device...

Page 34: ...e dev rtc To find the name of the RTC device you can read its entry with sysfs target cat sys class rtc rtc name You will get for example rtc rv3028 0 0052 snvs_rtc 30370000 snvs snvs rtc lp Date and...

Page 35: ...imeout when the system is rebooted For ShutdownWatchdogSec more detailed information about hardware watchdogs under can be found at systemd http 0pointer de blog projects watchdog html USB Host Contro...

Page 36: ...by modifying the configuration etc xdg weston weston ini target vi etc xdg weston weston ini Set the mode of the output of LVDS 1 to current and the mode of HDMI A 1 to off output name HDMI A 1 mode...

Page 37: ...6 pwms pwm3 0 50000 power supply reg_lvds1_reg_en enable gpios gpio2 20 GPIO_ACTIVE_HIGH brightness levels 0 4 8 16 32 64 128 255 status okay panel1 panel1 compatible edt etml1010g0dka backlight back...

Page 38: ...about the framebuffer s resolution can be obtained with fbset which will return something like mode 1280x800 0 D 0 000 MHz H 0 000 kHz V 0 000 Hz geometry 1280 800 1280 800 32 timings 0 0 0 0 0 0 0 a...

Page 39: ...g doc Documentation ABI stable sysfs class backlight Power Management CPU Core Management The i MX 8M Plus SoC can have multiple processor cores on the die The i MX 8M Plus Quad for example has 4 ARM...

Page 40: ...xt This section describes how the thermal management kernel API is used for the i MX 8M Plus SoC platform The i MX8 MP has two internal temperature sensors for the SoC The current temperature can be r...

Reviews: