Multi Source Translation Content

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

Multi Source Translation Content

ディスカッション

ソート順:
[S32K3 tool part]:How to use IAR compiler or IAR project to compile S32K3 MCAL project [S32K3 tool part]:How to use IAR compiler or IAR project to compile MCAL project 1.    Abstract      Through regular observation, it has been found that there are still many customers using platforms such as MCAL+IAR, including those using IAR compilers and those directly using IAR IDEs. In fact, when I was working on industrial MCUs in the past, I also particularly liked IAR IDE for its fast compilation speed, high compilation efficiency, and small code generation. However, when I came to auto MCU, I found that its popularity was not very high, and I also noticed that some customers encountered various problems when importing MCAL into IAR. Therefore, I will directly write a tool article on how to use IAR compiler or IAR IDE project to compile NXP S32K MCAL in combination with EB tresos MCAL. This article uses S32K344 combined with RTD600 to illustrate the compilation of MCAL projects using IAR compiler and the direct import of MCAL into IAR IDE projects 2. IAR Complier with S32K3 RTD MCAL project 2.1 S32K3 HW and SW SW32K3_S32M27x_RTD_R21-11_6.0.0 S32K3X4-EVB Based on Dio_TS_T40D34M60I0R0 IAR:IAR EW for Arm 9.70.1 EB tresos29.0.0 2.2 Compile MCAL project steps using IAR compiler CMD method 2.2.1 Copy one RTD MCAL new project Open path C:\NXP\SW32K3_S32M27x_RTD_R21-11_6.0.0\eclipse\plugins Copy Dio_TS_T40D34M60I0R0 , rename it as Dio_TS_T40D34M60I0R0_IAR Fig 1 2.2.2 Complie EB tresos project Use EB tresos tool open the following EB tresos project : C:\NXP\SW32K3_S32M27x_RTD_R21-11_6.0.0\eclipse\plugins\Dio_TS_T40D34M60I0R0_IAR\examples\EBT\S32K3XX\Dio_Example_S32K344\TresosProject Generate code: Fig 2 2.2.3 Vscode open Dio_TS_T40D34M60I0R0_IAR project Use VS code open the following path folder: C:\NXP\SW32K3_S32M27x_RTD_R21-11_6.0.0\eclipse\plugins\Dio_TS_T40D34M60I0R0_IAR\examples\EBT\S32K3XX\Dio_Example_S32K344 Of course, you can also directly open this folder path using the command line, as long as you ensure that it is in the same layer path as the. mk and makefile scr Fig 3 2.2.4   Project_parameters.mk modification Mainly modify the following points: TOOLCHAIN = iar IAR_DIR = C:/IAR/ewarm-9.70.1 TRESOS_DIR = C:/EB/tresos_29_0_0 PLUGINS_DIR = C:/NXP/SW32K3_S32M27x_RTD_R21-11_6.0.0/eclipse/plugins The path of IAR must be consistent with the version of IAR software used to ensure that the corresponding IAR compiler can be found. Fig 4 2.2.5   Check_build_params.mk modification Add the following content to check_build_params.mk: else ifeq ($(TOOLCHAIN),iar) ifeq ("$(wildcard $(IAR_DIR)/arm/bin/iccarm.exe)","") $(error Invalid path set to the IAR compiler. \ The provided path: from project_parameters.mk IAR_DIR=$(IAR_DIR) is invalid!) Endif Fig 5 2.2.6        Makefile modification   Makefile need the following 5 points modification: (1)Compilier change ifeq (${TOOLCHAIN},iar) CC := $(IAR_DIR)/arm/bin/iccarm.exe LD := $(IAR_DIR)/arm/bin/ilinkarm.exe AS := $(IAR_DIR)/arm/bin/iasmarm.exe # Intel Hexadecimal Flash image tool GENHEX := $(IAR_DIR)/arm/bin/ielftool.exe HEX_OPTS := --ihex OUT_OPTS := -o endif Fig 6 (2) SRC_DIRS  add TOOLCHAIN SRC_DIRS += $(foreach mod,$(MCAL_MODULE_LIST),$(PLUGINS_DIR)/$(mod)_$(AR_PKG_NAME)/src) \ $(foreach mod,$(MCAL_MODULE_LIST_ADDON),$(PLUGINS_DIR_ADDON)/$(mod)_$(AR_PKG_NAME_ADDON)/src) \ $(PLUGINS_DIR)/Platform_$(AR_PKG_NAME)/startup/src \ $(PLUGINS_DIR)/Platform_$(AR_PKG_NAME)/startup/src/m7 \ $(PLUGINS_DIR)/Platform_$(AR_PKG_NAME)/startup/src/m7/$(TOOLCHAIN) Fig 7 (3) Linker file  modification ifeq ($(LOAD_TO),flash) ifeq (${TOOLCHAIN},iar) LINKER_DEF:= $(PLUGINS_DIR)/Platform_$(AR_PKG_NAME)/build_files/${TOOLCHAIN}/linker_flash_$(DERIVATIVE_LOWER).icf else LINKER_DEF:= $(PLUGINS_DIR)/Platform_$(AR_PKG_NAME)/build_files/$(TOOLCHAIN)/linker_flash_$(DERIVATIVE_LOWER).ld endif else ifeq (${TOOLCHAIN},iar) LINKER_DEF:= $(PLUGINS_DIR)/Platform_$(AR_PKG_NAME)/build_files/$(TOOLCHAIN)/linker_ram_$(DERIVATIVE_LOWER).icf else LINKER_DEF:= $(PLUGINS_DIR)/Platform_$(AR_PKG_NAME)/build_files/$(TOOLCHAIN)/linker_ram_$(DERIVATIVE_LOWER).ld endif endif Fig 8 (4) Complier options change ifeq (${TOOLCHAIN},iar) ################################################################################ # iar Compiler options ################################################################################     clib        := $(IAR_DIR)/arm/lib     CCOPT           +=  --cpu=Cortex-M7 \                         -DAUTOSAR_OS_NOT_USED \                         -DUSE_MCAL_DRIVERS \                         --fpu=FPv5-SP \                         --cpu_mode=thumb \                         --endian=little \                         -e \                         -Ohz \                         --debug \                         --no_clustering \                         --no_mem_idioms \                         --do_explicit_zero_opt_in_named_sections \                         --require_prototypes \                         --no_wrap_diagnostics \                         --diag_suppress=Pa050 \                         $(MISRA) \                         -D$(PLATFORM) \                         -D$(DERIVATIVE) \                         -DIAR \                         -DUSE_SW_VECTOR_MODE  \                         -DENABLE_FPU \                         -DD_CACHE_ENABLE \                         -DI_CACHE_ENABLE                             LDOPT           :=  --entry _start \                         --enable_stack_usage \                         --skip_dynamic_initialization \                         --no_wrap_diagnostics \                         --cpu=Cortex-M7 \                         --fpu=FPv5-SP                             ASOPT           :=  $(ASOPT) \                         --cpu Cortex-M7 \                         --cpu_mode thumb \                         -g \                         -r \                         -DMULTIPLE_CORE endif Fig 9 Fig  10 So how did these IAR compilation options come about? You can refer to the release note of RTD600, which contains corresponding descriptions Fig 11 (5) Elf related change ifeq (${TOOLCHAIN},iar) %.elf: %.o $(LINKER_DEF)               @echo "Linking $@"               @$(LD) $(ODIR)/*.o $(LDOPT) --config $(LINKER_DEF) --map $(ODIR)/ -o $(ODIR)/$@@               @$(GENHEX) $(HEX_OPTS) "$(ODIR)/$(ELFNAME).elf" "$(ODIR)/$(ELFNAME).hex" else %.elf: %.o $(LINKER_DEF)               @echo "Linking $@"               @$(LD) -Wl,-Map,"$(MAPFILE)" $(LDOPT) -T $(LINKER_DEF) $(ODIR)/*.o -o $(ODIR)/$@@               @$(GENHEX) $(HEX_OPTS) "$(ODIR)/$(ELFNAME).elf" $(OUT_OPTS) "$(ODIR)/$(ELFNAME).hex" endif Fig 12 2.2.7   Build to generate elf Commander: make clean make build to generate the elf files: Fig 13 After generation, the elf can be burned onto the S32K344 EVB board for testing. The test results show that the onboard red light is flashing, indicating that the IAR compiler can work in command-line mode. 3. Import RTD MCAL to IAR IDE project This chapter explains how to create an IAR IDE project and import MCAL drivers to implement S32K3 MCAL combined with EB tresos for running. 3.1 MCAL IAR IDE project 2 methods Difference between two methods and how to import MCAL drivers: (1) Directly copy the RTD MCAL driver to the IAR IDE project directory (2) Connect the IAR IDE project driver to the original RTD driver path Fig 14 3.2 MCAL IAR IDE project import steps 3.2.1 create the new RTD MCAL IAR project folder    Create a new folder, named as:S32K344_DIO_MCAL_RTD600_IAR 3.2.2 create the sub folder for IAR project       Generate:EB tresos project code       Include:app related include file       Mcal: mcal driver copy from RTD       src: project main file       Tresos_Project:EB tresos project Fig 15 3.2.3 create EB tresos project (1) Create the EB tresos project in the followign path:  S32K344_DIO_MCAL_RTD600_IAR\Tresos_Project\Mcal_Dio_S32K344_RTD600_IAR (2)Add modules: BaseNXP, Dem, Dio, EcuC, Mcu, Platform, Port, Resource (3)Copy RTD xdm files in the following path: C:\NXP\SW32K3_S32M27x_RTD_R21-11_6.0.0\eclipse\plugins\Dio_TS_T40D34M60I0R0\examples\EBT\S32K3XX\Dio_Example_S32K344\TresosProject\Dio_Example_S32K344\config to: S32K344_DIO_MCAL_RTD600_IAR\Tresos_Project\Mcal_Dio_S32K344_RTD600_IAR\config (4)EB tresos Generate project EB tresos code will be generated to folder: S32K344_DIO_MCAL_RTD600_IAR\Generate Fig 16 3.2.4 Copy RTD related drivers to IAR project folder (1) BaseNXP: header, include, src (2)Det:  include, src (3)Dio:  include, src (4)Mcu:  include, src (5)Platform: build_files, include, src, startup (6)Port: include, src (7)Rte: include, src Copy RTD folder to IAR project is one method, if don’t want to copy the file, also can use the linker to add the RTD install path drivers directly. Fig 17 3.2.5 IAR IDE create IAR project   (1) Project->Create new project   (2) In the IAR project, add group   The related folder in project can be structured like the fig 18, which contains:   Generate: Include and src->EB tresos project generate code   Mcal:  Base, Det, Dio, Mcu, Platform, Port, Rte->Mcal driver   Src: Main.c->project main code    (3) Add RTD mcal related drivers to IAR project The RTD MCAL related driver files can be directly downloaded from the RTD installation path or copied to a folder in the IAR project, and both methods yield the same result. Fig 18 (4)IAR project platform folder added result: Fig 19 (5)main code add Main.c can copy from path: C:\NXP\SW32K3_S32M27x_RTD_R21-11_6.0.0\eclipse\plugins\Dio_TS_T40D34M60I0R0\examples\EBT\S32K3XX\Dio_Example_S32K344\src to S32K344_DIO_MCAL_RTD600_IAR\src Comment:  //#include "check_example.h"  // Exit_Example(TRUE); 3.2.6 IAR project options configuration (1)General options->Target->Device->NXP S32K344 (2)C/C++ Complier->Preprocessor Addional include directories: Use IAR project folder drivers which copied from RTD install path, the directories are: $PROJ_DIR$\Generate\include $PROJ_DIR$\mcal\BaseNXP_TS_T40D34M60I0R0\header $PROJ_DIR$\mcal\BaseNXP_TS_T40D34M60I0R0\include $PROJ_DIR$\mcal\Mcu_TS_T40D34M60I0R0\include $PROJ_DIR$\mcal\Platform_TS_T40D34M60I0R0\include $PROJ_DIR$\mcal\Rte_TS_T40D34M60I0R0\include $PROJ_DIR$\mcal\Platform_TS_T40D34M60I0R0\startup\include $PROJ_DIR$\mcal\Det_TS_T40D34M60I0R0\include $PROJ_DIR$\mcal\Dio_TS_T40D34M60I0R0\include $PROJ_DIR$\mcal\Port_TS_T40D34M60I0R0\include $PROJ_DIR$\include If use the RTD install path drivers, use the following directories: $PROJ_DIR$\Generate\include C:\NXP\SW32K3_S32M27x_RTD_R21-11_6.0.0\eclipse\plugins\BaseNXP_TS_T40D34M60I0R0\header C:\NXP\SW32K3_S32M27x_RTD_R21-11_6.0.0\eclipse\plugins\BaseNXP_TS_T40D34M60I0R0\include C:\NXP\SW32K3_S32M27x_RTD_R21-11_6.0.0\eclipse\plugins\Mcu_TS_T40D34M60I0R0\include C:\NXP\SW32K3_S32M27x_RTD_R21-11_6.0.0\eclipse\plugins\Platform_TS_T40D34M60I0R0\include C:\NXP\SW32K3_S32M27x_RTD_R21-11_6.0.0\eclipse\plugins\Rte_TS_T40D34M60I0R0\include C:\NXP\SW32K3_S32M27x_RTD_R21-11_6.0.0\eclipse\plugins\Platform_TS_T40D34M60I0R0\startup\include C:\NXP\SW32K3_S32M27x_RTD_R21-11_6.0.0\eclipse\plugins\Dio_TS_T40D34M60I0R0\include C:\NXP\SW32K3_S32M27x_RTD_R21-11_6.0.0\eclipse\plugins\Port_TS_T40D34M60I0R0\include C:\NXP\SW32K3_S32M27x_RTD_R21-11_6.0.0\eclipse\plugins\Det_TS_T40D34M60I0R0\include $PROJ_DIR$\include Defined symbols: S32K3XX S32K344 IAR USE_SW_VECTOR_MODE D_CACHE_ENABLE I_CACHE_ENABLE ENABLE_FPU Extra options: --no_clustering --no_mem_idioms --do_explicit_zero_opt_in_named_sections --require_prototypes --no_wrap_diagnostics Languate 1:   Check Require prototypes Diagnostics Suppress these disgnostics: Pa050 Fig 20 (3)Linker: Two points need to be added: $PROJ_DIR$\mcal\Platform_TS_T40D34M60I0R0\build_files\iar\linker_flash_s32k344.icf Library->Entry symbols: _start Fig 21 (4)Debugger Setup: PE micro, run to main Extra Options: Use command line options: --drv_vector_table_base=__ENTRY_VTABLE Fig 22 3.2.7  Build IAR project Project->Rebuild All Fig 23 3.2.8  Test result Download and debug result: Fig 24 After downloading and running, the red led is blinking on the board, indicating that the IAR IDE MCAL import method project has been successfully run.
記事全体を表示
ワイヤレス充電でそのコードを切ることができます! <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> スマートフォン、テーブルPC、デジタルスマートウォッチのバッテリー切れのリスクがある場合、またはナイトスタンドやオフィスデスクの間違った充電コードに絡まってしまった場合は、ワイヤーレス充電器のシンプルさが夢の実現です。しかし、ワイヤレス充電器には多くの技術が必要であり、同じように作られているわけではありません。NXPのトランスミッタおよびレシーバコンポーネントのファミリは、Qi規格とRezence規格の両方に対応するソリューションを提供します。私たちは両方を見て、そのコードを切断するためのいくつかの実用的なハードウェアソリューションを提供します。 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> スマートフォン、テーブルPC、デジタルスマートウォッチのバッテリー切れのリスクがある場合、またはナイトスタンドやオフィスデスクの間違った充電コードに絡まってしまった場合は、ワイヤーレス充電器のシンプルさが夢の実現です。しかし、ワイヤレス充電器には多くの技術が必要であり、同じように作られているわけではありません。NXPのトランスミッタおよびレシーバコンポーネントのファミリは、Qi規格とRezence規格の両方に対応するソリューションを提供します。私たちは両方を見て、そのコードを切断するためのいくつかの実用的なハードウェアソリューションを提供します。
記事全体を表示
Installing Ubuntu Rootfs on NXP i.MX6 boards This post describes the setup detail for installing Ubuntu based distro in any i.Mx6x NXP Boards. Details are described on: 1. Select your board, Setting the host, Download and compile uboot , dtb and and the Kernel version on your board. 2. Installing the Ubuntu core, Lubuntu graphics desktop version and/or Build your own Ubuntu rootfs with debootstrap. 3. Modify rootfs and Installing needed packages 4. Setting with SD image. 5. Setting Ubuntu on target 6. Adding GPU acceleration 1: Select your board, Setting the host, Download and compile uboot , dtb and and the Kernel version on your board. Supported NXP HW boards: i.MX 6QuadPlus SABRE-SD Board and Platform i.MX 6Quad SABRE-SD Board and Platform i.MX 6DualLite SABRE-SD Board i.MX 6Quad SABRE-AI Board i.MX 6DualLite SABRE-AI Board i.MX 6SoloX SABRE-SD Board i.MX 6SoloX SABRE-AI Board Install host dependences (version tested 14.04): $ sudo apt-get install gparted git build-essential libncurses5 wget u-boot-tools zlib1g-dev ncurses-dev \ cmake libc-dev-armhf-cross pkg-config-arm-linux-gnueabihf build-essential checkinstall cmake \ pkg-config lzop libc6 libstdc++6 debootstrap qemu-user-static binfmt-support Download the compiler toolchain and extract it: $ cd ~/ $ wget -c https://releases.linaro.org/14.09/components/toolchain/binaries/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz $ tar xf gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz Create general variable environments: $ export target=mx6q (e.g. processor: mx6sx, mx6d, mx6dl,etc) $ export board=sabresd (e.g. sabresd, sabreauto) $ export ARCH=arm $ export CROSS_COMPILE=../gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf- $ unset LDFLAGS Download u-boot At the release of this document, latest uboot version was imx_3.14.52, it should work with other version as well, so please check the proper version for your board: $ cd ~/ $ wget –c http://git.freescale.com/git/cgit.cgi/imx/uboot-imx.git/snapshot/uboot-imx-rel_imx_3.14.52_1.1.0_ga.tar.gz $ tar -xf uboot-imx-rel_imx_3.14.52_1.1.0_ga.tar.gz $ cd uboot-imx-rel_imx_3.14.52_1.1.0_ga $ make $targetboard_config    # e.g. mx6qsabresd_config $ make Linux Kernel, Firmware, headers, modules and DTS files $ cd ~/ $ wget –c http://git.freescale.com/git/cgit.cgi/imx/linux-2.6-imx.git/snapshot/linux-2.6-imx-rel_imx_3.14.52_1.1.0_ga.tar.gz $ tar xf linux-2.6-imx-rel_imx_3.14.52_1.1.0_ga.tar.gz $ cd linux-2.6-imx-rel_imx_3.14.52_1.1.0_ga $ make imx_v7_defconfig $ make menuconfig $ make -j4 zImage modules dtbs $ cd ~/ move your image to binary folder: $ sudo cp –v uboot-imx-rel_imx_3.14.52_1.1.0_ga/u-boot.imx binary/ $ sudo cp –v linux-2.6-imx-rel_imx_3.14.52_1.1.0_ga/arch/arm/boot/zImage binary/ $ sudo cp –v linux-2.6-imx-rel_imx_3.14.52_1.1.0_ga/arch/arm/boot/dts/i$target-$board.dtb binary/ Now you have the bootloader, device tree and kernel image of your board ready, let’s create the rootfs. 2: Installing the Ubuntu core, Lubuntu graphics desktop version and/or Build your own Ubuntu rootfs with debootstrap. Installing ubuntu core: $ cd ~/ $ sudo mkdir –p core /media/rootfs /media/kernel $ wget –c http://cdimage.ubuntu.com/ubuntu-core/releases/14.04/release/ubuntu-core-14.04.4-core-armhf.tar.gz $ sudo tar –xf ubuntu-core-14.04.4-core-armhf.tar.gz –C core $ sudo cp -vr core/* /media/rootfs $ cd linux-2.6-imx-rel_imx_3.14.52_1.1.0_ga $ sudo make modules_install firmware_install INSTALL_MOD_PATH=/media/rootfs/ ARCH=arm CROSS_COMPILE=../../gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf- $ sudo make ARCH=arm CROSS_COMPILE=../../gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf- headers_install INSTALL_HDR_PATH=/media/rootfs/usr Now you should have your ubuntu rootfs on /media/rootfs folder. and you can pass to part 3 of this post. Installing ubuntu Linaro LXDE: $ cd ~/ $ sudo mkdir –p core /media/rootfs /media/kernel $ wget https://releases.linaro.org/14.10/ubuntu/trusty-images/alip/linaro-trusty-alip-20141024-684.tar.gz $ sudo tar -xf linaro-trusty-alip-20141024-684.tar.gz –C core $ sudo mv core/binary/* core/ $ sudo rm –rf core/binary $ sudo cp -vr core/* /media/rootfs $ cd linux-2.6-imx-rel_imx_3.14.52_1.1.0_ga $ sudo make modules_install firmware_install INSTALL_MOD_PATH=/media/rootfs/ ARCH=arm CROSS_COMPILE=../../gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf- $ sudo make ARCH=arm CROSS_COMPILE=../../gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf- headers_install INSTALL_HDR_PATH=/media/rootfs/usr Now you should have your ubuntu rootfs on /media/rootfs folder. and you can pass to part 3 of this post. Installing with debootstrap $ cd ~/ $ target=rootfs $ distro=trusty $ sudo debootstrap --arch=armhf --foreign --include=ubuntu-keyring,apt-transport-https,ca-certificates,openssl $distro "$target" http://ports.ubuntu.com $ sudo cp /usr/bin/qemu-arm-static $target/usr/bin $ sudo cp /etc/resolv.conf $target/etc Now have a minimal Ubuntu rootfs - chroot to it and perform the 2nd stage install: $ sudo chroot $target  //Now we are in chroot # distro=trusty # export LC_ALL=C LANGUAGE=C LANG=C # /debootstrap/debootstrap --second-stage Edit the sources.list repositories # cat < /etc/apt/sources.list deb http://ports.ubuntu.com/ubuntu-ports/ $distro main restricted universe multiverse deb http://ports.ubuntu.com/ubuntu-ports/ $distro-updates main restricted universe multiverse deb http://ports.ubuntu.com/ubuntu-ports/ $distro-security main restricted universe multiverse EOT # apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 40976EAF437D05B5 # apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 3B4FE6ACC0B21F32 # apt-get update # apt -y -f install # apt-get upgrade # apt-get install nano Now you should be able to login without password, then use passwd command to set one. If you like to add custom users: # passwd root # adduser # usermod -a -G tty myuser # usermod -a -G dialout, adm, sudo, dip, plugdev myuser # visudo Under the line that looks like: root ALL=(ALL:ALL) ALL add the following (change user with your actual username) ALL=(ALL) ALL your rootfs is ready, exit chroot # exit $ sudo rm $target/etc/resolv.conf $ sudo rm $target/usr/bin/qemu-arm-static $ sudo mv rootfs/* /media/rootfs $ cd linux-2.6-imx-rel_imx_3.14.52_1.1.0_ga $ sudo make modules_install firmware_install INSTALL_MOD_PATH=/media/rootfs/ ARCH=arm CROSS_COMPILE=../../gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf- $ sudo make ARCH=arm CROSS_COMPILE=../../gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf- headers_install INSTALL_HDR_PATH=/media/rootfs/usr Now you should have your ubuntu rootfs on /media/root. 3: Modify Rootfs and Install needed packages Edit and verify the sources.list repositories $ cd /media/rootfs $ sudo cat < etc/apt/sources.list deb http://ports.ubuntu.com/ubuntu-ports/ trusty main restricted universe multiverse deb http://ports.ubuntu.com/ubuntu-ports/ trusty-updates main restricted universe multiverse deb http://ports.ubuntu.com/ubuntu-ports/ trusty-security main restricted universe multiverse EOT Edit networks interfaces and append in the existing file: $ sudo nano etc/network/interfaces auto lo iface lo inet loopback auto eth0 iface eth0 inet dhcp If you require Serial Console, remove and include an additional line at the end of the file for  ttymxc0 output as below, $ sudo nano etc/init/tty1.conf exec /sbin/getty -8 38400 tty1 exec /sbin/getty -L 115200 ttymxc0 If you like to change the localhostname: $ sudo nano etc/hostname and change to “your name” e.g. imx6Q. Set the date and time clock and update $ sudo nano /etc/rc.local  Add this: if [ `date +"%Y"` -eq "1970" ]; then                     date --set="2016-04-01" fi exit 0 (optional for Linaro rootfs) Edit passwd and remove the x in root and linaro lines $ sudo nano etc/passwd root:x:0:0:root:/root:/bin/bash linaro:x:0:0.. and change like this:                                   root::0:0:root:/root:/bin/bash linaro:::0:.. Now you are ready to program your sd image. 4: Setup microSD/SD card For these instructions, we are assuming: DISK=/dev/sdg on your HOST, cat /proc/partitions is very useful for determining the device id. $ cd ~/ $ export DISK=/dev/sdg Erase microSD/SD card: $ sudo dd if=/dev/zero of=${DISK} bs=1M count=10 Install Bootloader $ cd binary/ $ sudo dd if=u-boot.imx of=${DISK} bs=512 seek=2 $ sync Create Partition layout: $ cd ~/ $ sudo fdisk ${DISK} steps:        d ///delete all partitions currently on sd n // create new partition p // Primary partition 1 // partition number 1 2048 //default +1G // n // created 2d parition p 2 default default 1 // firts B // to be fat32 W // write partiotions $ sudo mkfs.vfat ${DISK}1 $ sudo mkfs.ext3  ${DISK}2 Mount ext3 SD partition to /media/rootfs: $ sudo mount ${DISK1} /media/kernel_target $ sudo mount ${DISK}2 /media/rootfs_target Copy Files on the SD. $ cd ~/ $ sudo cp –v binary/ i$target-$board.dtb /media/kernel_target $ sudo cp –v binary/zImage /media/kernel_target $ sudo mv /media/rootfs/* /media/rootfs_target Remove SD: $ sync $ sudo umount /media/kernel_target $ sudo umount /media/rootfs_target Boot the target, in console you should be login as root. root@imx6QSabreSD:~# 5: Setting Ubuntu on target Note: If you have issues with sudo on user UID, need to logout and log as root: imx6Q login: root Welcome to Ubuntu 14.04.4 LTS (GNU/Linux 3.14.52 armv7l) root@imx6Q:~# chown root:root /usr/bin/sudo root@imx6Q:~# chmod 4755 /usr/bin/sudo root@imx6Q:~# exit Login with or root # # apt-get update # apt-get –f install # apt-get install locales dialog wget # dpkg-reconfigure locales # apt-get upgrade Optional – install some useful packages: # apt-get install openssh-server can-utils usbutils build-essential automake autoconf libtool Get and Install the BSP packages (EULA required) # cd /home/user # mkdir –p vpu_pack # cd vpu_pack # wget http://www.nxp.com/lgfiles/NMG/MAD/YOCTO//firmware-imx-5.3.bin # wget http://www.nxp.com/lgfiles/NMG/MAD/YOCTO//imx-vpu-5.4.32.bin # wget http://www.nxp.com/lgfiles/NMG/MAD/YOCTO//libfslcodec-4.0.8.bin # wget http://www.nxp.com/lgfiles/NMG/MAD/YOCTO//imx-lib-5.1.tar.gz # chmod +x * # ./firmware-imx-5.3.bin --auto-accept --force # mkdir –p /lib/firmware/vpu # cp -ravf firmware-imx-5.3/firmware/* /lib/firmware/ # ./imx-vpu-5.4.32.bin --auto-accept --force # cd imx-vpu-* # make PLATFORM=IMX6Q all # make install # tar -xf imx-lib-5.1.tar.gz # cd  imx-lib-5.1/ # make -j1 PLATFORM="IMX6Q" # make PLATFORM="IMX6Q" install # cd .. # ./libfslcodec-4.0.8 --auto-accept –force # cd libfslcodec-* # ./autogent.sh --prefix=/usr --enable-fhw --enable-vpu # make # make install # mv /usr/lib/imx-mm/video-codec/* /usr/lib # mv /usr/lib/imx-mm/audio-codec/* /usr/lib # rm –rf /usr/lib/imx-mm/ # cd .. # mkdir –p gpu_pack # cd gpu_pack # wget http://www.nxp.com/lgfiles/NMG/MAD/YOCTO//imx-gpu-viv-5.0.11.p7.4-hfp.bin # wget http://www.nxp.com/lgfiles/NMG/MAD/YOCTO//xserver-xorg-video-imx-viv-5.0.11.p7.4.tar.gz # chmod +x * # ./imx-gpu-viv-5.0.11.p7.4-hfp –-auto-accept -–force # cd imx-gpu* # cp g2d/usr/include/* /usr/include/ # cp -d g2d/usr/lib/* /usr/lib/ # cp -Pr gpu-core/usr/* /usr # optional: install demos # cp -r gpu-demos/opt / # optional: install gpu tools # cp -axr gpu-tools/gmem-info/usr/bin/* /usr/bin/ # cd .. Installing gstreamer-imx, IPU, VPU and GPU support: Install build deps, gstreamer1.x, this step could take some time (~350MB): # apt-get install python pkg-config git gstreamer1.0-x gstreamer1.0-tools gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-alsa libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-good1.0-dev g++-multilib # git clone git://github.com/Freescale/gstreamer-imx.git # cd gstreamer-imx # ln –s /usr/lib/arm-linux-gnueabihf/gstreamer-1.0/ /usr/lib/gstreamer-1.0 # ./waf configure --prefix=/usr --kernel-headers=/include # ./waf # ./waf install # cd ../../ (optional) Install libimxvpuapi library: This library provides a community based open-source API to the NXP imx-vpu library (the low-level IMX6 VPU interface). # git clone git://github.com/Freescale/libimxvpuapi.git # cd libimxvpu* # ./waf configure –-prefix=/usr # ./waf # ./waf install # cd .. note './waf install' installs artifacts to its prefix + /lib/gstreamer-1.0 but they need to be installed to /usr/lib/arm-linux-gnueabihf/gstreamer-1.0 which is why we created a symlink above before installing note g2d lib required to build G2D note that x11 library is required to build EGL sink with Vivante direct textures (only needed for X11 support) note that libfslaudiocodec is required to build audio plugins Now you are ready to test gstreamer 6: Add GPU HW Acceleration for X11 NOTE: The original version of these build instructions can be found in the Gateworks wiki . Many thanks to them for writing this! IMX6 IPU, VPU, and GPU support via GStreamer and Gstreamer-imx plugins. Many of the pieces needed (firmware and source-code) are from NXP and not freely redistributable thus must be downloaded from their mirror and extracted from a shell script that forces you to read and agree to their End User License Agreement (EULA). The following instructions can be used on top of the debootstrap and should work on other sources of Ubuntu or other Linux distributions root filesystems as well You can easily add X11 support to a base image created with the debootstrap instructions above by adding a few package groups. You will need the following: X11 server - ie Xorg Display Manager - this controls the login to the X session Window Manager - manages window position, re-sizing, decorations, etc for X clients If in any case you have installed the Linaro LXDE rootfs, it includes the Xorg X11 server, the lxdm Display Manager, the openbox Window Manager, and others useful user applications including the Chromium browser, if you do not install linaro lxde and want to install it please do: this step could take some time (~650MB)   # apt-get install xinit lxde lxterminal lxappearance lxrandr lxshortcut lxinput xinit  xserver-xorg-dev mesa-utils mesa-utils-extra Notes: you will need to add a non-root user with adduser for Chromium browser to work. You may choose to set up auto-login for that user by editing /etc/lxdm/default.conf and setting the autologin property in the base section at the beginning of the config file. /etc/xdg/lubuntu/lxdm/lxdm.conf This document takes as based kernel version 3.14.52v, vivante 5.0.11p7.4 correspond to the kernel version used. you should check the BSP release notes in order to know which xserver and Vivante GPU files need to be downloaded from the NXP repos. $ sudo nano /etc/lxdm/default.conf    [base]    autologin=user To add hardware GPU acceleration to X11 you need to add some libraries and drivers provided by Freescale from the imx-gpu-viv package. This requires signing Freescales End User License Agreement (EULA). This package provides the following: libg2d - a documented low-level API to the GPU (used by things like libimxvpuapi for gstreamer-imx and the gpu-core drivers) gpu-core - provides all the various OpenGL libs (libGL, libGLESv1_CM, libGLESv1_CL, libGLESv2, libGLSLC, libCLC, libEGL, libGAL, libOpenCL, ls libOpenVG) typically provided by the mesa project. Note that several versions of libEGL/libGAL/libGLESv2/libVIVANTE are provided for different backend rendering systems: dfb, fb, wl, x11. # cd gpu_pack #cd imx-gpu-* # cp gpu-core/usr/lib/dri/vivante_dri.so /usr/lib/xorg/modules/drivers/ # chmod 644 /usr/lib/xorg/modules/drivers/vivante_dri.so # rm /usr/lib/arm-linux-gnueabihf/mesa/libGL.so* # rm /usr/lib/arm-linux-gnueabihf/mesa-egl/libEGL.so* # rm /usr/lib/arm-linux-gnueabihf/mesa-egl/libGLESv2.so* # rm /usr/lib/arm-linux-gnueabihf/mesa-egl/libOpenVG.so* # cd ../../ # cd gpu-pack # wget http://www.nxp.com/lgfiles/NMG/MAD/YOCTO//xserver-xorg-video-imx-viv-5.0.11.p7.4.tar.gz # tar –xf xserver* # cd xserver-org-video-imx* #looks lik have to made #git init # ./fastbuild.sh  BUILD_HARD_VFP=1 XSERVER_GREATER_THAN_13=1 # cd.. # cd kernel-modu* # make Switch to gpu-core x11 backend: # backend=x11 # ln -sf libEGL-${backend}.so /usr/lib/libEGL.so # ln -sf libEGL-${backend}.so /usr/lib/libEGL.so.1 # ln -sf libEGL-${backend}.so /usr/lib/libEGL.so.1.0 # ln -sf libGAL-${backend}.so /usr/lib/libGAL.so # ln -sf libGLESv2-${backend}.so /usr/lib/libGLESv2.so # ln -sf libGLESv2-${backend}.so /usr/lib/libGLESv2.so.2 # ln -sf libGLESv2-${backend}.so /usr/lib/libGLESv2.so.2.0.0 # ln -sf libVIVANTE-${backend}.so /usr/lib/libVIVANTE.so # ln -sf libGAL_egl.dri.so /usr/lib/libGAL_egl.so # for i in egl glesv1_cm glesv2 vg; do         cp /usr/lib/pkgconfig/${i}_${backend}.pc/usr/lib/pkgconfig/${i}.pc     done #rm /usr/lib/*-dfb.so /usr/lib/*-fb.so /usr/lib/*-wl.so (Optional in case you deploy your kernel version with GPU as module) make vivante kernel module (GPU kernel driver) load on boot: # echo vivante >> /etc/modules # nano /etc/udev/rules.d/10-imx.rules KERNEL=="galcore",  MODE="0660", GROUP="video" KERNEL=="mxc_asrc",  MODE="0666" Create an xorg.conf configured for the Vivante fbdev driver: # nano /etc/X11/xorg.conf Section "Device"     Identifier "i.MX Accelerated Framebuffer Device"     Driver "vivante"     Option "fbdev" "/dev/fb0"     Option "vivante_fbdev" "/dev/fb0"     Option "HWcursor" "false" EndSection Section "ServerFlags"     Option "BlankTime"  "0"     Option "StandbyTime"  "0"     Option "SuspendTime"  "0"     Option "OffTime"  "0" EndSection # cd .. Make sure the files copied into the correct places. If all compiled and copied, you should now see a bunch of new libraries in /usr/lib! Congratulations! After you finish you can reboot your system and start playing. Testing Gstreamer examples: show gstreamer-imx plugins: # gst-inspect-1.0 | grep imx imxvpu:  imxvpuenc_mjpeg: Freescale VPU motion JPEG video encoder imxvpu:  imxvpuenc_mpeg4: Freescale VPU MPEG-4 video encoder imxvpu:  imxvpuenc_h264: Freescale VPU h.264 video encoder imxvpu:  imxvpuenc_h263: Freescale VPU h.263 video encoder imxvpu:  imxvpudec: Freescale VPU video decoder imxv4l2videosrc:  imxv4l2videosrc: V4L2 CSI Video Source imxg2d:  imxg2dcompositor: Freescale G2D video compositor imxg2d:  imxg2dvideotransform: Freescale G2D video transform imxg2d:  imxg2dvideosink: Freescale G2D video sink imxipu:  imxipucompositor: Freescale IPU video compositor imxipu:  imxipuvideosink: Freescale IPU video sink imxipu:  imxipuvideotransform: Freescale IPU video transform imxpxp:  imxpxpvideotransform: Freescale PxP video transform imxpxp:  imxpxpvideosink: Freescale PxP video sink imxipuvideosink: # gst-launch-1.0 videotestsrc ! imxipuvideosink imxg2dvideosink: # gst-launch-1.0 videotestsrc ! imxg2dvideosink The imxeglvivsink allows hardware accelerated display to a window on the X11 host # export DISPLAY=:0.0 # gst-launch-1.0 videotestsrc ! imxeglvivsink To test if you have graphics support you can run any glmark2 and/or mesa-utils or can run example of the next route: # cd /opt/viv_samples/vdk/ # ./tutorial1                                                                      //any example root@imx6Q:~# glxgears -info GL_RENDERER   = Vivante GC2000 GL_VERSION    = 2.1 2.0.1 GL_VENDOR     = Vivante Corporation GL_EXTENSIONS = WGL_ARB_extensions_string WGL_EXT_extensions_string WGL_EXT_swap_control GL_EXT_texture_env_add GL_ARB_multitexture GL_ARB_multisample GL_ARB_texture_env_add GL_ARB_texture_compression GL_ARB_texture_env_combine GL_ARB_depth_texture GL_ARB_window_pos …. 1606 frames in 5.0 seconds = 321.130 FPS 1650 frames in 5.0 seconds = 329.834 FPS L_RENDERER   = Vivante GC2000 GL_VERSION    = 2.1 2.0.1 GL_VENDOR     = Vivante Corporation1629 frames in 5.0 seconds = 325.644 FPS 1621 frames in 5.0 seconds = 324.072 FPS 1650 frames in 5.0 seconds = 329.806 FPS 1651 frames in 5.0 seconds = 330.079 FPS Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi Bio_TICFSL, Thank for your excellent doc. I'm working on imx6q sabreauto. successfully flashed uboot,zimage,*dtb and rootfs in sdcard and tried to bootup the board.but it stucks at one point my debug log is below. how can i fix it? U-Boot 2015.04-gb8837c4-dirty (Aug 13 2019 - 17:05:21) CPU: Freescale i.MX6Q rev1.2 at 792 MHz CPU: Temperature 41 C Reset cause: POR Board: MX6Q-Sabreauto revA I2C: ready DRAM: 2 GiB PMIC: PFUZE100 ID=0x10 NAND: 0 MiB MMC: FSL_SDHC: 0, FSL_SDHC: 1 No panel detected: default to HDMI Display: HDMI (640x480) In: serial Out: serial Err: serial switch to partitions #0, OK mmc1 is current device Net: FEC [PRIME] Error: FEC address not set. Normal Boot Hit any key to stop autoboot: 0 switch to partitions #0, OK mmc1 is current device reading boot.scr ** Unable to read file boot.scr ** reading zImage 6022032 bytes read in 293 ms (19.6 MiB/s) Booting from mmc ... reading imx6q-sabreauto.dtb 41594 bytes read in 19 ms (2.1 MiB/s) Kernel image @ 0x12000000 [ 0x000000 - 0x5be390 ] ## Flattened Device Tree blob at 18000000 Booting using the fdt blob at 0x18000000 Using Device Tree in place at 18000000, end 1800d279 Starting kernel ... Booting Linux on physical CPU 0x0 Linux version 3.14.52-g0e08af9-dirty (BspDeveloper2@BspDeveloper2) (gcc version 4.8.5 (Linaro GCC 4.8-2015.06) ) #9 SMP PREEMPT Tue Aug 13 16:58:40 IST 2019 CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7), cr=10c53c7d CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache Machine model: Freescale i.MX6 Quad SABRE Automotive Board cma: CMA: reserved 320 MiB at 6a000000 Memory policy: Data cache writealloc PERCPU: Embedded 8 pages/cpu @ee71e000 s8320 r8192 d16256 u32768 Built 1 zonelists in Zone order, mobility grouping on. Total pages: 520720 Kernel command line: console=ttymxc3,115200 root=/dev/mmcblk2p2 rootwait rw PID hash table entries: 4096 (order: 2, 16384 bytes) Dentry cache hash table entries: 262144 (order: 8, 1048576 bytes) Inode-cache hash table entries: 131072 (order: 7, 524288 bytes) Memory: 1739236K/2097152K available (7452K kernel code, 460K rwdata, 2596K rodata, 392K init, 433K bss, 357916K reserved, 270336K highmem) Virtual kernel memory layout: vector : 0xffff0000 - 0xffff1000 ( 4 kB) fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB) vmalloc : 0xf0000000 - 0xff000000 ( 240 MB) lowmem : 0x80000000 - 0xef800000 (1784 MB) pkmap : 0x7fe00000 - 0x80000000 ( 2 MB) modules : 0x7f000000 - 0x7fe00000 ( 14 MB) .text : 0x80008000 - 0x809d828c (10049 kB) .init : 0x809d9000 - 0x80a3b080 ( 393 kB) .data : 0x80a3c000 - 0x80aaf340 ( 461 kB) .bss : 0x80aaf34c - 0x80b1b99c ( 434 kB) SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1 Preemptible hierarchical RCU implementation. NR_IRQS:16 nr_irqs:16 16 L310 cache controller enabled l2x0: 16 ways, CACHE_ID 0x410000c7, AUX_CTRL 0x32070000, Cache size: 1024 kB Switching to timer-based delay loop sched_clock: 32 bits at 3000kHz, resolution 333ns, wraps every 1431655765682ns Console: colour dummy device 80x30 Calibrating delay loop (skipped), value calculated using timer frequency.. 6.00 BogoMIPS (lpj=30000) pid_max: default: 32768 minimum: 301 Mount-cache hash table entries: 4096 (order: 2, 16384 bytes) Mountpoint-cache hash table entries: 4096 (order: 2, 16384 bytes) CPU: Testing write buffer coherency: ok CPU0: thread -1, cpu 0, socket 0, mpidr 80000000 Setting up static identity map for 0x10717d60 - 0x10717db8 CPU1: Booted secondary processor CPU1: thread -1, cpu 1, socket 0, mpidr 80000001 CPU2: Booted secondary processor CPU2: thread -1, cpu 2, socket 0, mpidr 80000002 CPU3: Booted secondary processor CPU3: thread -1, cpu 3, socket 0, mpidr 80000003 Brought up 4 CPUs SMP: Total of 4 processors activated (24.00 BogoMIPS). CPU: All CPU(s) started in SVC mode. devtmpfs: initialized VFP support v0.3: implementor 41 architecture 3 part 30 variant 9 rev 4 pinctrl core: initialized pinctrl subsystem regulator-dummy: no parameters NET: Registered protocol family 16 DMA: preallocated 256 KiB pool for atomic coherent allocations cpuidle: using governor ladder cpuidle: using governor menu CPU identified as i.MX6Q, silicon rev 1.2 Use WDOG1 as reset source syscon 20c8000.anatop: regmap [mem 0x020c8000-0x020c8fff] registered vdd1p1: 800 <--> 1375 mV at 1100 mV vdd3p0: 2625 <--> 3400 mV at 3000 mV vdd2p5: 2000 <--> 2750 mV at 2400 mV vddarm: 725 <--> 1450 mV at 1150 mV vddpu: 725 <--> 1450 mV vddsoc: 725 <--> 1450 mV at 1175 mV syscon 20e0000.iomuxc-gpr: regmap [mem 0x020e0000-0x020e0037] registered syscon 21bc000.ocotp-ctrl: regmap [mem 0x021bc000-0x021bffff] registered hw-breakpoint: found 5 (+1 reserved) breakpoint and 1 watchpoint registers. hw-breakpoint: maximum watchpoint size is 4 bytes. imx6q-pinctrl 20e0000.iomuxc: initialized IMX pinctrl driver bio: create slab at 0 mxs-dma 110000.dma-apbh: initialized cs42888_supply: 3300 mV 3P3V: 3300 mV vio1: 3300 mV vio2: 3300 mV vd: 3300 mV va: 5000 mV platform usb_h1_vbus.29: Driver reg-fixed-voltage requests probe deferral platform usb_otg_vbus.30: Driver reg-fixed-voltage requests probe deferral i2c-core: driver [max17135] using legacy suspend method i2c-core: driver [max17135] using legacy resume method SCSI subsystem initialized usbcore: registered new interface driver usbfs usbcore: registered new interface driver hub usbcore: registered new device driver usb usbphy_nop1.12 supply vcc not found, using dummy regulator usbphy_nop2.13 supply vcc not found, using dummy regulator i2c i2c-1: IMX I2C adapter registered pca953x 2-0032: failed reading register pca953x: probe of 2-0032 failed with error -5 i2c i2c-2: IMX I2C adapter registered Linux video capture interface: v2.00 pps_core: LinuxPPS API ver. 1 registered pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <[email protected]> PTP clock support registered imx-ipuv3 2400000.ipu: IPU DMFC NORMAL mode: 1(0~1), 5B(4,5), 5F(6,7) imx-ipuv3 2800000.ipu: IPU DMFC NORMAL mode: 1(0~1), 5B(4,5), 5F(6,7) MIPI CSI2 driver module loaded Advanced Linux Sound Architecture Driver Initialized. Bluetooth: Core ver 2.18 NET: Registered protocol family 31 Bluetooth: HCI device and connection manager initialized Bluetooth: HCI socket layer initialized Bluetooth: L2CAP socket layer initialized Bluetooth: SCO socket layer initialized cfg80211: Calling CRDA to update world regulatory domain Switched to clocksource mxc_timer1 NET: Registered protocol family 2 TCP established hash table entries: 16384 (order: 4, 65536 bytes) TCP bind hash table entries: 16384 (order: 5, 131072 bytes) TCP: Hash tables configured (established 16384 bind 16384) TCP: reno registered UDP hash table entries: 1024 (order: 3, 32768 bytes) UDP-Lite hash table entries: 1024 (order: 3, 32768 bytes) NET: Registered protocol family 1 RPC: Registered named UNIX socket transport module. RPC: Registered udp transport module. RPC: Registered tcp transport module. RPC: Registered tcp NFSv4.1 backchannel transport module. hw perfevents: enabled with ARMv7 Cortex-A9 PMU driver, 7 counters available imx rpmsg driver is registered. imx_busfreq busfreq.16: DDR medium rate not supported. Bus freq driver module loaded futex hash table entries: 1024 (order: 4, 65536 bytes) bounce pool size: 64 pages VFS: Disk quotas dquot_6.5.2 Dquot-cache hash table entries: 1024 (order 0, 4096 bytes) NFS: Registering the id_resolver key type Key type id_resolver registered Key type id_legacy registered jffs2: version 2.2. (NAND) © 2001-2006 Red Hat, Inc. fuse init (API version 7.22) msgmni has been set to 3508 io scheduler noop registered io scheduler deadline registered io scheduler cfq registered (default) imx-weim 21b8000.weim: Driver registered. backlight.17 supply power not found, using dummy regulator MIPI DSI driver module loaded MIPI DSI driver module loaded mxc_sdc_fb fb.22: registered mxc display driver ldb imx-ipuv3 2800000.ipu: IPU DMFC DP HIGH RESOLUTION: 1(0,1), 5B(2~5), 5F(6,7) Console: switching to colour frame buffer device 128x48 mxc_hdmi 20e0000.hdmi_video: Detected HDMI controller 0x13:0xa:0xa0:0xc1 fbcvt: 1920x1080@60: CVT Name - 2.073M9 mxc_sdc_fb fb.23: registered mxc display driver hdmi mxc_sdc_fb fb.24: NO mxc display driver found! mxc_sdc_fb fb.25: registered mxc display driver ldb imx-sdma 20ec000.sdma: no iram assigned, using external mem imx-sdma 20ec000.sdma: no event needs to be remapped imx-sdma 20ec000.sdma: loaded firmware 3.2 imx-sdma 20ec000.sdma: initialized pfuze100-regulator 1-0008: Full layer: 2, Metal layer: 1 pfuze100-regulator 1-0008: FAB: 0, FIN: 0 pfuze100-regulator 1-0008: pfuze100 found. SW1AB: 300 <--> 1875 mV at 1375 mV SW1C: 300 <--> 1875 mV at 1375 mV SW2: 800 <--> 3300 mV at 3000 mV SW3A: 400 <--> 1975 mV at 1500 mV SW3B: 400 <--> 1975 mV at 1500 mV SW4: 800 <--> 1975 mV at 1800 mV SWBST: 5000 <--> 5150 mV at 5000 mV VSNVS: 1000 <--> 3000 mV at 3000 mV VREFDDR: 750 mV VGEN1: 800 <--> 1550 mV at 800 mV VGEN2: 800 <--> 1550 mV at 1500 mV VGEN3: 1800 <--> 3300 mV at 1800 mV VGEN4: 1800 <--> 3300 mV at 1800 mV VGEN5: 1800 <--> 3300 mV at 2500 mV VGEN6: 1800 <--> 3300 mV at 2800 mV Serial: IMX driver 21ec000.serial: ttymxc2 at MMIO 0x21ec000 (irq = 60, base_baud = 5000000) is a IMX 21f0000.serial: ttymxc3 at MMIO 0x21f0000 (irq = 61, base_baud = 5000000) is a IMX console [ttymxc3] enabled serial: Freescale lpuart driver imx sema4 driver is registered. [drm] Initialized drm 1.1.0 20060810 [drm] Initialized vivante 1.0.0 20120216 on minor 0 brd: module loaded loop: module loaded si476x-core 1-0063: Using default platform data. si476x-core 1-0063: No IRQ number specified, will use polling si476x-core 1-0063: Error while sending command 0x11 si476x-core 1-0063: The device in inconsistent power state ahci-imx 2200000.sata: fsl,transmit-level-mV not specified, using 00000024 ahci-imx 2200000.sata: fsl,transmit-boost-mdB not specified, using 00000480 ahci-imx 2200000.sata: fsl,transmit-atten-16ths not specified, using 00002000 ahci-imx 2200000.sata: fsl,receive-eq-mdB not specified, using 05000000 ahci-imx 2200000.sata: failed to reset phy: -110 ahci-imx: probe of 2200000.sata failed with error -110 CAN device driver interface 2094000.can supply xceiver not found, using dummy regulator flexcan 2094000.can: device registered (reg_base=f01f0000, irq=143) ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver ehci-mxc: Freescale On-Chip EHCI Host driver usbcore: registered new interface driver usb-storage usbcore: registered new interface driver usb_ehset_test 2184800.usbmisc supply vbus-wakeup not found, using dummy regulator imx_usb 2184000.usb: Can't register ci_hdrc platform device, err=-517 platform 2184000.usb: Driver imx_usb requests probe deferral imx_usb 2184200.usb: Can't register ci_hdrc platform device, err=-517 platform 2184200.usb: Driver imx_usb requests probe deferral mousedev: PS/2 mouse device common for all mice egalax_ts 1-0004: Failed to read firmware version egalax_ts: probe of 1-0004 failed with error -5 2-0044 supply vdd not found, using dummy regulator i2c-core: driver [isl29023] using legacy suspend method i2c-core: driver [isl29023] using legacy resume method snvs_rtc 20cc034.snvs-rtc-lp: can't get snvs-rtc clock snvs_rtc 20cc034.snvs-rtc-lp: rtc core: registered 20cc034.snvs-rtc-lp as rtc0 i2c /dev entries driver IR NEC protocol handler initialized IR RC5(x) protocol handler initialized IR RC6 protocol handler initialized IR JVC protocol handler initialized IR Sony protocol handler initialized IR RC5 (streamzap) protocol handler initialized IR SANYO protocol handler initialized IR MCE Keyboard/mouse protocol handler initialized mxc_v4l2_output v4l2_out.33: V4L2 device registered as video16 mxc_v4l2_output v4l2_out.33: V4L2 device registered as video17 mxc_v4l2_output v4l2_out.33: V4L2 device registered as video18 mxc_v4l2_output v4l2_out.33: V4L2 device registered as video19 mxc_v4l2_output v4l2_out.33: V4L2 device registered as video20 2-000e supply vdd not found, using dummy regulator 2-000e supply vddio not found, using dummy regulator mag3110 2-000e: check mag3110 chip ID mag3110 2-000e: read chip ID 0xfffffffb is not equal to 0xc4! mag3110: probe of 2-000e failed with error -22 i2c-core: driver [mag3110] using legacy suspend method i2c-core: driver [mag3110] using legacy resume method 2-001c supply vdd not found, using dummy regulator 2-001c supply vddio not found, using dummy regulator mma8451 2-001c: read chip ID 0x1 is not equal to 0x1a or 0x2a! mma8451: probe of 2-001c failed with error -22 imx2-wdt 20bc000.wdog: IMX2+ Watchdog Timer enabled. timeout=60s (nowayout=0) Bluetooth: HCI UART driver ver 2.2 Bluetooth: HCI H4 protocol initialized Bluetooth: HCI BCSP protocol initialized Bluetooth: HCIATH3K protocol initialized usbcore: registered new interface driver bcm203x usbcore: registered new interface driver btusb usbcore: registered new interface driver ath3k sdhci: Secure Digital Host Controller Interface driver sdhci: Copyright(c) Pierre Ossman sdhci-pltfm: SDHCI platform and OF driver helper mmc1: no vqmmc regulator found mmc1: no vmmc regulator found mmc1: SDHCI controller on 2194000.usdhc [2194000.usdhc] using ADMA mmc2: no vqmmc regulator found mmc2: no vmmc regulator found mmc2: SDHCI controller on 2198000.usdhc [2198000.usdhc] using ADMA Galcore version 5.0.11.33433 mmc1: new high speed DDR MMC card at address 0001 mmcblk1: mmc1:0001 VM010B 14.5 GiB mmcblk1boot0: mmc1:0001 VM010B partition 1 512 KiB mmcblk1boot1: mmc1:0001 VM010B partition 2 512 KiB mmcblk1rpmb: mmc1:0001 VM010B partition 3 512 KiB Alternate GPT is invalid, using primary GPT. mmcblk1: p1 p2 p3 p4 p5 p6 p7 mmcblk1boot1: unknown partition table mmcblk1boot0: unknown partition table mmc2: host does not support reading read-only switch. assuming write-enable. mmc2: new high speed SDHC card at address e624 mmcblk2: mmc2:e624 SS16G 14.8 GiB mmcblk2: p1 p2 mxc_vdoa 21e4000.vdoa: i.MX Video Data Order Adapter(VDOA) driver probed mxc_vpu 2040000.vpu: VPU initialized caam 2100000.caam: Instantiated RNG4 SH0 caam 2100000.caam: Instantiated RNG4 SH1 caam 2100000.caam: device ID = 0x0a160100 (Era 4) caam 2100000.caam: job rings = 2, qi = 0 caam algorithms registered in /proc/crypto caam_jr 2101000.jr0: registering rng-caam platform caam_sm: blkkey_ex: 4 keystore units available platform caam_sm: 64-bit clear key: platform caam_sm: [0000] 00 01 02 03 04 0f 06 07 platform caam_sm: 64-bit black key: platform caam_sm: [0000] 17 d4 14 e3 cd 14 99 3c platform caam_sm: [0008] 28 ac 13 da 4f 13 86 b9 platform caam_sm: 128-bit clear key: platform caam_sm: [0000] 00 01 02 03 04 0f 06 07 platform caam_sm: [0008] 08 09 0a 0b 0c 0d 0e 0f platform caam_sm: 128-bit black key: platform caam_sm: [0000] 47 20 d5 8a 08 2e c9 76 platform caam_sm: [0008] 21 a3 ab 86 72 eb e0 d7 platform caam_sm: 192-bit clear key: platform caam_sm: [0000] 00 01 02 03 04 0f 06 07 platform caam_sm: [0008] 08 09 0a 0b 0c 0d 0e 0f platform caam_sm: [0016] 10 11 12 13 14 15 16 17 platform caam_sm: 192-bit black key: platform caam_sm: [0000] a0 ab 18 b1 c0 86 52 c3 platform caam_sm: [0008] 26 02 62 70 a8 78 4c f2 platform caam_sm: [0016] 4e 6c e5 31 7e 6c d1 25 platform caam_sm: [0024] 48 62 78 86 93 70 62 ff platform caam_sm: 256-bit clear key: platform caam_sm: [0000] 00 01 02 03 04 0f 06 07 platform caam_sm: [0008] 08 09 0a 0b 0c 0d 0e 0f platform caam_sm: [0016] 10 11 12 13 14 15 16 17 platform caam_sm: [0024] 18 19 1a 1b 1c 1d 1e 1f platform caam_sm: 256-bit black key: platform caam_sm: [0000] 61 42 d7 cf 79 ad 81 5c platform caam_sm: [0008] cc 1b 9e 5c a0 20 0e 54 platform caam_sm: [0016] ed fa 74 03 08 e1 96 e2 platform caam_sm: [0024] 5c 85 e0 cc ab f4 9e 3b platform caam_sm: 64-bit unwritten blob: platform caam_sm: [0000] 00 00 00 00 00 00 00 00 platform caam_sm: [0008] 00 00 00 00 00 00 00 00 platform caam_sm: [0016] 00 00 00 00 00 00 00 00 platform caam_sm: [0024] 00 00 00 00 00 00 00 00 platform caam_sm: [0032] 00 00 00 00 00 00 00 00 platform caam_sm: [0040] 00 00 00 00 00 00 00 00 platform caam_sm: [0048] 00 00 00 00 00 00 00 00 platform caam_sm: [0056] 00 00 00 00 00 00 00 00 platform caam_sm: [0064] 00 00 00 00 00 00 00 00 platform caam_sm: [0072] 00 00 00 00 00 00 00 00 platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: 128-bit unwritten blob: platform caam_sm: [0000] 00 00 00 00 00 00 00 00 platform caam_sm: [0008] 00 00 00 00 00 00 00 00 platform caam_sm: [0016] 00 00 00 00 00 00 00 00 platform caam_sm: [0024] 00 00 00 00 00 00 00 00 platform caam_sm: [0032] 00 00 00 00 00 00 00 00 platform caam_sm: [0040] 00 00 00 00 00 00 00 00 platform caam_sm: [0048] 00 00 00 00 00 00 00 00 platform caam_sm: [0056] 00 00 00 00 00 00 00 00 platform caam_sm: [0064] 00 00 00 00 00 00 00 00 platform caam_sm: [0072] 00 00 00 00 00 00 00 00 platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: 196-bit unwritten blob: platform caam_sm: [0000] 00 00 00 00 00 00 00 00 platform caam_sm: [0008] 00 00 00 00 00 00 00 00 platform caam_sm: [0016] 00 00 00 00 00 00 00 00 platform caam_sm: [0024] 00 00 00 00 00 00 00 00 platform caam_sm: [0032] 00 00 00 00 00 00 00 00 platform caam_sm: [0040] 00 00 00 00 00 00 00 00 platform caam_sm: [0048] 00 00 00 00 00 00 00 00 platform caam_sm: [0056] 00 00 00 00 00 00 00 00 platform caam_sm: [0064] 00 00 00 00 00 00 00 00 platform caam_sm: [0072] 00 00 00 00 00 00 00 00 platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: 256-bit unwritten blob: platform caam_sm: [0000] 00 00 00 00 00 00 00 00 platform caam_sm: [0008] 00 00 00 00 00 00 00 00 platform caam_sm: [0016] 00 00 00 00 00 00 00 00 platform caam_sm: [0024] 00 00 00 00 00 00 00 00 platform caam_sm: [0032] 00 00 00 00 00 00 00 00 platform caam_sm: [0040] 00 00 00 00 00 00 00 00 platform caam_sm: [0048] 00 00 00 00 00 00 00 00 platform caam_sm: [0056] 00 00 00 00 00 00 00 00 platform caam_sm: [0064] 00 00 00 00 00 00 00 00 platform caam_sm: [0072] 00 00 00 00 00 00 00 00 platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: 64-bit black key in blob: platform caam_sm: [0000] fc e1 2d 2c 81 75 5e 99 platform caam_sm: [0008] 2d 93 9b b0 a6 5a 3d 49 platform caam_sm: [0016] 98 96 9d 0c 39 36 da 72 platform caam_sm: [0024] f9 1d 66 0c 78 24 20 9a platform caam_sm: [0032] 85 3c 92 1e a4 55 d2 4b platform caam_sm: [0040] e4 7a ed 19 af 70 2e f6 platform caam_sm: [0048] cf c9 07 0e 82 19 47 7f platform caam_sm: [0056] 00 00 00 00 00 00 00 00 platform caam_sm: [0064] 00 00 00 00 00 00 00 00 platform caam_sm: [0072] 00 00 00 00 00 00 00 00 platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: 128-bit black key in blob: platform caam_sm: [0000] c6 ae 04 56 f6 5e c2 1b platform caam_sm: [0008] d9 6c 07 89 9d 1e 20 0f platform caam_sm: [0016] 72 4c 63 e1 ed d2 fd 68 platform caam_sm: [0024] 99 81 17 32 33 39 2a 1c platform caam_sm: [0032] fb e4 bb db 0c 07 c0 f2 platform caam_sm: [0040] eb 23 cf 79 64 2a ca f3 platform caam_sm: [0048] d9 84 ac 22 0b 49 79 e9 platform caam_sm: [0056] 7d 8b 97 09 6a d4 72 0b platform caam_sm: [0064] 00 00 00 00 00 00 00 00 platform caam_sm: [0072] 00 00 00 00 00 00 00 00 platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: 192-bit black key in blob: platform caam_sm: [0000] 9c ec 58 09 50 20 80 1d platform caam_sm: [0008] 21 b6 e3 64 41 ed 14 12 platform caam_sm: [0016] 16 e1 c7 d3 fe 54 40 ed platform caam_sm: [0024] bc 92 e0 0c 6b 0a ec 02 platform caam_sm: [0032] 3b 60 6f 18 20 26 e4 04 platform caam_sm: [0040] c2 94 5e 2f 1e e4 99 b1 platform caam_sm: [0048] 9c 05 65 95 9b 8d db 72 platform caam_sm: [0056] a8 50 b0 50 9d f8 67 66 platform caam_sm: [0064] 33 ae 46 e9 42 6c fb ab platform caam_sm: [0072] 00 00 00 00 00 00 00 00 platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: 256-bit black key in blob: platform caam_sm: [0000] 9b 50 6d 78 93 a8 08 84 platform caam_sm: [0008] e5 3b 26 18 1d 6a 42 80 platform caam_sm: [0016] 3f c9 7f 4d dd 1a b6 a3 platform caam_sm: [0024] 02 6a 4d 64 a6 cc c3 61 platform caam_sm: [0032] 15 9e c8 1f 75 72 01 af platform caam_sm: [0040] f5 87 b3 78 b0 78 3f 34 platform caam_sm: [0048] bf 19 80 05 72 32 c2 82 platform caam_sm: [0056] d1 fd 4c f7 c6 c9 98 85 platform caam_sm: [0064] 9d 02 55 75 35 d5 ef ca platform caam_sm: [0072] 80 f5 21 87 ef 6c cd 96 platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: restored 64-bit black key: platform caam_sm: [0000] 47 9d fa 49 f0 cf c5 1c platform caam_sm: [0008] 90 4d 0a e3 a1 ee 72 5c platform caam_sm: restored 128-bit black key: platform caam_sm: [0000] 47 20 d5 8a 08 2e c9 76 platform caam_sm: [0008] 21 a3 ab 86 72 eb e0 d7 platform caam_sm: restored 192-bit black key: platform caam_sm: [0000] a0 ab 18 b1 c0 86 52 c3 platform caam_sm: [0008] 26 02 62 70 a8 78 4c f2 platform caam_sm: [0016] 8d 0d bc 2d 2c 90 67 0c platform caam_sm: [0024] 93 91 ea 59 81 df 52 df platform caam_sm: restored 256-bit black key: platform caam_sm: [0000] 61 42 d7 cf 79 ad 81 5c platform caam_sm: [0008] cc 1b 9e 5c a0 20 0e 54 platform caam_sm: [0016] ed fa 74 03 08 e1 96 e2 platform caam_sm: [0024] 5c 85 e0 cc ab f4 9e 3b snvs-secvio 20cc000.caam-snvs: can't get snvs clock snvs-secvio 20cc000.caam-snvs: violation handlers armed - non-secure state usbcore: registered new interface driver usbhid usbhid: USB HID core driver cs42xx8 1-0048: found device, revision 4 fsl-asrc 2034000.asrc: driver registered snd-soc-dummy snd-soc-dummy: ASoC: Failed to create platform debugfs directory imx-cs42888 sound-cs42888.26: cs42888 <-> 2024000.esai mapping ok imx-cs42888 sound-cs42888.26: snd-soc-dummy-dai <-> 2034000.asrc mapping ok imx-cs42888 sound-cs42888.26: cs42888 <-> 2024000.esai mapping ok imx-spdif sound-spdif.19: snd-soc-dummy-dai <-> 2004000.spdif mapping ok imx-audio-hdmi sound-hdmi.20: hdmi-hifi <-> hdmi_audio.3 mapping ok imx-tuner-si476x sound-fm.31: failed to find FM platform device imx-tuner-si476x: probe of sound-fm.31 failed with error -22 NET: Registered protocol family 26 TCP: cubic registered NET: Registered protocol family 10 sit: IPv6 over IPv4 tunneling driver NET: Registered protocol family 17 can: controller area network core (rev 20120528 abi 9) NET: Registered protocol family 29 can: raw protocol (rev 20120528) can: broadcast manager protocol (rev 20120528 t) can: netlink gateway (rev 20130117) max_hops=1 Bluetooth: RFCOMM TTY layer initialized Bluetooth: RFCOMM socket layer initialized Bluetooth: RFCOMM ver 1.11 Bluetooth: BNEP (Ethernet Emulation) ver 1.3 Bluetooth: BNEP filters: protocol multicast Bluetooth: BNEP socket layer initialized Bluetooth: HIDP (Human Interface Emulation) ver 1.2 Bluetooth: HIDP socket layer initialized 8021q: 802.1Q VLAN Support v1.8 Key type dns_resolver registered VGEN2: disabling SWBST: disabling SW4: disabling regulator-dummy: disabling imx mcc test is registered. platform usb_h1_vbus.29: Driver reg-fixed-voltage requests probe deferral usb_otg_vbus: 5000 mV imx_usb 2184200.usb: Can't register ci_hdrc platform device, err=-517 platform 2184200.usb: Driver imx_usb requests probe deferral platform usb_h1_vbus.29: Driver reg-fixed-voltage requests probe deferral snvs_rtc 20cc034.snvs-rtc-lp: setting system clock to 1970-01-01 00:00:02 UTC (2) imx_usb 2184200.usb: Can't register ci_hdrc platform device, err=-517 ALSA device list: #0: cs42888-audio #1: imx-spdif #2: imx-hdmi-soc p�� �platform usb_h1_vbus.29: Driver reg-fixed-voltage requests probe deferral kjournald starting. Commit interval 5 seconds EXT3-fs (mmcblk2p2): using internal journal EXT3-fs (mmcblk2p2): recovery complete EXT3-fs (mmcblk2p2): mounted filesystem with ordered data mode VFS: Mounted root (ext3 filesystem) on device 179:34. devtmpfs: error mounting -2 Freeing unused kernel memory: 392K (809d9000 - 80a3b000) Kernel panic - not syncing: No working init found. Try passing init= option to kernel. See Linux Documentation/init.txt for guidance. CPU2: stopping CPU: 2 PID: 0 Comm: swapper/2 Not tainted 3.14.52-g0e08af9-dirty #9 [<80014764>] (unwind_backtrace) from [<80011488>] (show_stack+0x10/0x14) [<80011488>] (show_stack) from [<807119b4>] (dump_stack+0x7c/0xbc) [<807119b4>] (dump_stack) from [<80013718>] (handle_IPI+0x144/0x158) [<80013718>] (handle_IPI) from [<800085b0>] (gic_handle_irq+0x58/0x5c) [<800085b0>] (gic_handle_irq) from [<80011f80>] (__irq_svc+0x40/0x70) Exception stack(0xd80adf50 to 0xd80adf98) df40: d80adf98 3b9aca00 e9b5de9d 00000000 df60: e882c038 00000000 ee72f0d0 80a4a814 00000001 ee72f0d4 d80ac000 d80ac000 df80: a6aaaaab d80adf98 00000009 804b64bc 60000113 ffffffff [<80011f80>] (__irq_svc) from [<804b64bc>] (cpuidle_enter_state+0x50/0xe0) [<804b64bc>] (cpuidle_enter_state) from [<804b6648>] (cpuidle_idle_call+0xfc/0x150) [<804b6648>] (cpuidle_idle_call) from [<8000edf0>] (arch_cpu_idle+0x8/0x44) [<8000edf0>] (arch_cpu_idle) from [<8006b140>] (cpu_startup_entry+0x104/0x150) [<8006b140>] (cpu_startup_entry) from [<10008644>] (0x10008644) CPU0: stopping CPU: 0 PID: 0 Comm: swapper/0 Not tainted 3.14.52-g0e08af9-dirty #9 [<80014764>] (unwind_backtrace) from [<80011488>] (show_stack+0x10/0x14) [<80011488>] (show_stack) from [<807119b4>] (dump_stack+0x7c/0xbc) [<807119b4>] (dump_stack) from [<80013718>] (handle_IPI+0x144/0x158) [<80013718>] (handle_IPI) from [<800085b0>] (gic_handle_irq+0x58/0x5c) [<800085b0>] (gic_handle_irq) from [<80011f80>] (__irq_svc+0x40/0x70) Exception stack(0x80a3df18 to 0x80a3df60) df00: 80a3df60 3b9aca00 df20: e9b5de9d 00000000 e883714d 00000000 ee71f0d0 80a4a814 00000001 ee71f0d4 df40: 80a3c000 80a3c000 a6aaaaab 80a3df60 00000009 804b64bc 60000113 ffffffff [<80011f80>] (__irq_svc) from [<804b64bc>] (cpuidle_enter_state+0x50/0xe0) [<804b64bc>] (cpuidle_enter_state) from [<804b6648>] (cpuidle_idle_call+0xfc/0x150) [<804b6648>] (cpuidle_idle_call) from [<8000edf0>] (arch_cpu_idle+0x8/0x44) [<8000edf0>] (arch_cpu_idle) from [<8006b140>] (cpu_startup_entry+0x104/0x150) [<8006b140>] (cpu_startup_entry) from [<809d9af0>] (start_kernel+0x350/0x35c) CPU3: stopping CPU: 3 PID: 0 Comm: swapper/3 Not tainted 3.14.52-g0e08af9-dirty #9 [<80014764>] (unwind_backtrace) from [<80011488>] (show_stack+0x10/0x14) [<80011488>] (show_stack) from [<807119b4>] (dump_stack+0x7c/0xbc) [<807119b4>] (dump_stack) from [<80013718>] (handle_IPI+0x144/0x158) [<80013718>] (handle_IPI) from [<800085b0>] (gic_handle_irq+0x58/0x5c) [<800085b0>] (gic_handle_irq) from [<80011f80>] (__irq_svc+0x40/0x70) Exception stack(0xd80aff50 to 0xd80aff98) ff40: d80aff98 3b9aca00 e9b5de9d 00000000 ff60: e882c2d3 00000000 ee7370d0 80a4a814 00000001 ee7370d4 d80ae000 d80ae000 ff80: a6aaaaab d80aff98 00000009 804b64bc 60000113 ffffffff [<80011f80>] (__irq_svc) from [<804b64bc>] (cpuidle_enter_state+0x50/0xe0) [<804b64bc>] (cpuidle_enter_state) from [<804b6648>] (cpuidle_idle_call+0xfc/0x150) [<804b6648>] (cpuidle_idle_call) from [<8000edf0>] (arch_cpu_idle+0x8/0x44) [<8000edf0>] (arch_cpu_idle) from [<8006b140>] (cpu_startup_entry+0x104/0x150) [<8006b140>] (cpu_startup_entry) from [<10008644>] (0x10008644) Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hello, Can same instrctions can be used with imx.8? Thanks Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi  in section "Download u-boot" I excuted the "make" instruction and seens like it doesnt work, show as below what's wrong with it?how can i fixed it? Thanks.. ../gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf-gcc: 1: ../gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf-gcc: Syntax error: "(" unexpected ../gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf-gcc: 1: ../gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf-gcc: Syntax error: "(" unexpected dirname: missing operand Try 'dirname --help' for more information. scripts/kconfig/conf --silentoldconfig Kconfig CHK include/config.h GEN include/autoconf.mk ../gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf-gcc: 1: ../gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf-gcc: Syntax error: "(" unexpected scripts/Makefile.autoconf:71: recipe for target 'include/autoconf.mk' failed make[1]: *** [include/autoconf.mk] Error 1 make: *** No rule to make target 'include/config/auto.conf', needed by 'include/config/uboot.release'. Stop. Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Basically, I found the solution. To generate a zImage instead of Image, you have to enter make menuconfig and select this option Gzip is not the defaut choice.  Now I have a ubuntu 14.04 running on my I.MX6Q SABRESD board. Thanks for this essential post ! Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hello, Thanks for this great post ! My goal is to run an Ubuntu 14.04 or higher on my IMX6Q SABRE SD board from the mmc card. I am following the post.  The following link is not valid any more: https://releases.linaro.org/14.09/components/toolchain/binaries/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz  I replace it by the following one:  https://releases.linaro.org/archive/14.09/components/toolchain/binaries/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz But it does not work, I get the following strange error: (same error described by wenming feng) /bin/sh: 1: /home/guillaume/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf-gcc: not found  If I select this toolchain, I can compile: gcc-linaro-4.8-2015.06-x86_64_arm-linux-xxxx But I am generating an Image file and NOT a zImage file. And u-boot does not take it (bad linux arm zimage magic error at u boot runtime). It seems that it exists uImage, Image and zImage. Image would correspond to a 64bit image if I understand correctly.   Question 1: Which toolchain or option I have to use/set to generate a zImage ? (and not an Image) Question 2: Would it be possible to update this post with up to date links ? Question 3: Is there somewhere an already builded .sdcard for SABRE SD with everything on it (u-boot, kernel, dtb, ubuntu 14.04 or higher ..) ? Best regards, Guillaume HUGUES Re: Installing Ubuntu Rootfs on NXP i.MX6 boards I am using imx6q-sabresd board. I am following steps from Installing Ubuntu Rootfs on NXP i.MX6 boards.  My kernel version is 3.14.52 and i am using ubuntu Rootfs 14.04. My Xorg xserver version is 1.15.1. I am observing that if i enable PCI bus support in the kernel, then i am not able to use x11 gpu hardware acceleration(glxgears and es2gears give segmentation faults). But if i disable PCI support , i could use x11 gpu hardware acceleration with above mentioned versions of xserver. What role is PCI drivers playing in x11 hardware acceleration? How to get x11 acceleration working with PCI bus support enabled. Has anyone faced similar issue? Is there any fix for this or patches for pci or drm drivers?? Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi Wenming, I ignore the cd kernel-modu* too. My board is i.mx6q sabre sd and I use a LVDS display. Have you try the toolchain gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz as the doc discribed? You can search "Kane Jiang" in the Skype for Business. All the Best Kane Jiang Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi Kane, I am used the linaro-trusty-alip-20141024-684.tar.gz , I can not start the desktop for my imx6dl customer board, I used an OSD-WVGA lcd to connect with ipu.di0/fb0. for the ubuntu core version I can not boot into console. about the kernel-modu* there is a link in the note:ventana/ubuntu – Gateworks  section 2, what I do just ignore the cd kernel-modu* make, I just cd /usr/lib to do the ln -sf . the fastbuild.sh only build the vivante_drv.so, the vivante_dri.so is copy from gpu_core. I can not find any folder name kernel-modu* maybe a mistake. BTW,  what is you video= line, Thanks! Wenming Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi @Bio_TICFSL, Thanks for your excellent doc!!  There's two questions I have get now. 1. I did not find the folder named kernel-modu* as the doc said, where is it? # ./fastbuild.sh  BUILD_HARD_VFP=1 XSERVER_GREATER_THAN_13=1   # cd..      # cd kernel-modu*   # make   Switch to gpu-core x11 backend:   # backend=x11     2. And when I use the rootfs named linaro-jessie-alip-20160428-22.tar.gz(debian based ubuntu 16.04), I can not successfully login to the console: [FAILED] Failed to start Login Service. See 'systemctl status systemd-logind.service' for details. [ OK ] Started Permit User Sessions. [FAILED] Failed to start LSB: Load kernel mo...eeded to enable cpufreq scaling. See 'systemctl status loadcpufreq.service' for details. [ OK ] Started /etc/rc.local Compatibility. [ OK ] Started LSB: network benchmark. [ OK ] Started LSB: Advanced IEEE 802.11 management daemon. [ OK ] Started Initialize hardware monitoring sensors. [ TIME ] Timed out waiting for device dev-ttymxc0.device. [DEPEND] Dependency failed for Serial Getty on ttymxc0. [FAILED] Failed to start Network Manager. See 'systemctl status NetworkManager.service' for details. So how to login to the console, any ideas? All the Best Kane Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi Wenming, You may try command: apt-get install libxtst-dev to overcome the fatal error: X11/extensions/Xext.h: No such file or directory. All the Best Kane Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi Wenming, Which rootfs did you choose? I think you may not choose the Linaro LXDE rootfs(E.g. linaro-trusty-alip-20141024-684.tar.gz) as mentioned in the doc above. The  vivid-preinstalled-core-armhf.tar.gz I mentioned didn't have a GUI desktop, it just have a console terminal. And it seems that did not support the commands like apt-get. But I also tried the rootfs linaro-trusty-alip-20141024-684.tar.gz as same as the doc. And I can succeed to bring up the desktop in i.MX6Q SABRE SD, but there's some issues about how to find the GPU Vivante and play tutorials. Besides, I did not find the folder named kernel-modu* as the doc said, have you? # ./fastbuild.sh  BUILD_HARD_VFP=1 XSERVER_GREATER_THAN_13=1   # cd..      # cd kernel-modu*   # make   Switch to gpu-core x11 backend:   # backend=x11   All the Best Kane Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi Kane, I export the BUILD_HARD_VFP=1 and XSERVER_GREATER_THAN_13=1 it will not make for the DRI_1.10.4/src/, but I still got  fatal: bad default revision 'HEAD' fatal: ambiguous argument 'HEAD': unknown revision or path not in the working tree. Use '--' to separate paths from revisions, like this: 'git [ ...] -- [ ...]' fsl_pixmap_ext.c:31:33: fatal error: X11/extensions/Xext.h: No such file or directory #include Does me missed some installed package? BTW, as your mentioned vivid-preinstalled-core-armhf.tar.gz  are you tried and success to bring up the desktop for your imx6 board? thanks! Wenming Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi, Prathamesh You can run the command: git init as the the doc said to have a try. You can open the ubuntu-core link in the Explorer and use another. E.g in the link: Index of /ubuntu-core/vivid/daily-preinstalled/current  You may select vivid-preinstalled-core-armhf.tar.gz . Kane Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi Pratham, I got the same issue with you. Do you get it worked? Thanks! Wenming Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi erikraynolds‌ , I have the same question as yours. There seems no folder named kernel-modu*. Have you solved the problem now? Thanks! Kane Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi feng, the issue "Waiting for root device /dev/mmcblk0p2.." , seems to be related to sd card initialization failure, once kernel comes up. Try to boot from eMMc and see if you still get same issue. I am using toolchain mentioned above in this post. Thanks, Prathamesh  Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi Pratham, Do you used any patches?  I can not boot into rootfs on my mx6dl customer board, I only can start uboot and kernel. Kenerl will stop at waiting "Waiting for root device /dev/mmcblk0p2... which version of toolchain are you used? Thanks! Wenming Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi, I am using above steps to get ubuntu rootfs running on imx6q-sabrsd board. I am not able to build xserver-xorg-video-imx-viv-5.0.11.p7.4. I am getting below error with linaro rootfs: gcc -DCOMMIT="`git log -n 1 --format=%H``git diff-index --quiet HEAD || echo '-dirty'`" -DFIX_NO_MI_BACKINGSTORE -fvisibility=hidden -fPIC -DPIc fatal: Not a git repository (or any of the parent directories): .git fatal: Not a git repository (or any of the parent directories): .git gcc -shared -fPIC -o vivante_drv.so vivante_gal/vivante_gal_blit.o vivante_gal/vivante_gal_gpu.o vivante_gal/vivante_gal_surface.o vivante_fbde make: Leaving directory `/root/gpu/xserver-xorg-video-imx-viv-5.0.11.p7.4/EXA/src' make: *** DRI_1.10.4/src/: No such file or directory. Stop. has anybody able to solve this issue?? Also has anybody tried brnigup with ubuntu-core rootfs? Link for ubuntu-core rootfs seems dead. Thanks, Prathamesh Re: Installing Ubuntu Rootfs on NXP i.MX6 boards It seems now no way to build by this thread. I changed the gcc toolchain, still not compilable. But I can build one month ago, there should be some commits blocked the build. Does someone else encounter the same issue as me currently? Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi, I installed ubuntu Linaro LXDE desktop but the touch panel doesn't work. I confirmed the touch panel driver is ok. It generates input events when I cat /dev/input/event0 and touch the panel. But the ubuntu desktop does not have response. Anyone has advice on it? Thanks! Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi, I encounter a uboot compiler issue, when I try to build the wandboard_dl_defconfig. Anybody else encounter this? share your fix. LD examples/standalone/hello_world OBJCOPY examples/standalone/hello_world.srec OBJCOPY examples/standalone/hello_world.bin LDS u-boot.lds LD u-boot arch/arm/imx-common/built-in.o: In function `print_cpuinfo': /home/lucid/imx6dl/uboot-imx-rel_imx_3.14.52_1.1.0_ga/arch/arm/imx-common/cpu.c:199: undefined reference to `uclass_get_device' /home/lucid/imx6dl/uboot-imx-rel_imx_3.14.52_1.1.0_ga/arch/arm/imx-common/cpu.c:201: undefined reference to `thermal_get_temp' arch/arm/imx-common/built-in.o: In function `arch_preboot_os': /home/lucid/imx6dl/uboot-imx-rel_imx_3.14.52_1.1.0_ga/arch/arm/imx-common/cpu.c:270: undefined reference to `ldo_mode_set' drivers/built-in.o: In function `read_cpu_temperature': /home/lucid/imx6dl/uboot-imx-rel_imx_3.14.52_1.1.0_ga/drivers/thermal/imx_thermal.c:43: undefined reference to `dev_get_platdata' /home/lucid/imx6dl/uboot-imx-rel_imx_3.14.52_1.1.0_ga/drivers/thermal/imx_thermal.c:45: undefined reference to `dev_get_priv' drivers/built-in.o: In function `imx_thermal_probe': /home/lucid/imx6dl/uboot-imx-rel_imx_3.14.52_1.1.0_ga/drivers/thermal/imx_thermal.c:226: undefined reference to `dev_get_platdata' /home/lucid/imx6dl/uboot-imx-rel_imx_3.14.52_1.1.0_ga/drivers/thermal/imx_thermal.c:227: undefined reference to `dev_get_priv' /home/lucid/toolchain/gcc-linaro-4.8-2015.06-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-ld.bfd: BFD (GNU Binutils) Linaro 2014.11-3-git 2.24.0.20141017 assertion fail /home/tcwg-buildslave/workspace/tcwg-make-release/label/tcwg-x86_64/target/arm-linux-gnueabihf/snapshots/binutils-gdb.git~linaro_binutils-2_24-branch@a93e252ee5250dba831e54f98336b40c7210dac7/bfd/elf32-arm.c:7710 /home/lucid/toolchain/gcc-linaro-4.8-2015.06-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-ld.bfd: BFD (GNU Binutils) Linaro 2014.11-3-git 2.24.0.20141017 assertion fail /home/tcwg-buildslave/workspace/tcwg-make-release/label/tcwg-x86_64/target/arm-linux-gnueabihf/snapshots/binutils-gdb.git~linaro_binutils-2_24-branch@a93e252ee5250dba831e54f98336b40c7210dac7/bfd/elf32-arm.c:7710 /home/lucid/toolchain/gcc-linaro-4.8-2015.06-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-ld.bfd: BFD (GNU Binutils) Linaro 2014.11-3-git 2.24.0.20141017 assertion fail /home/tcwg-buildslave/workspace/tcwg-make-release/label/tcwg-x86_64/target/arm-linux-gnueabihf/snapshots/binutils-gdb.git~linaro_binutils-2_24-branch@a93e252ee5250dba831e54f98336b40c7210dac7/bfd/elf32-arm.c:7710 /home/lucid/toolchain/gcc-linaro-4.8-2015.06-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-ld.bfd: BFD (GNU Binutils) Linaro 2014.11-3-git 2.24.0.20141017 assertion fail /home/tcwg-buildslave/workspace/tcwg-make-release/label/tcwg-x86_64/target/arm-linux-gnueabihf/snapshots/binutils-gdb.git~linaro_binutils-2_24-branch@a93e252ee5250dba831e54f98336b40c7210dac7/bfd/elf32-arm.c:7710 /home/lucid/toolchain/gcc-linaro-4.8-2015.06-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-ld.bfd: BFD (GNU Binutils) Linaro 2014.11-3-git 2.24.0.20141017 assertion fail /home/tcwg-buildslave/workspace/tcwg-make-release/label/tcwg-x86_64/target/arm-linux-gnueabihf/snapshots/binutils-gdb.git~linaro_binutils-2_24-branch@a93e252ee5250dba831e54f98336b40c7210dac7/bfd/elf32-arm.c:7710 /home/lucid/toolchain/gcc-linaro-4.8-2015.06-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-ld.bfd: error: required section '.rel.plt' not found in the linker script /home/lucid/toolchain/gcc-linaro-4.8-2015.06-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-ld.bfd: final link failed: Invalid operation make: *** [u-boot] Error 1 lucid@ubuntu:~/imx6dl/uboot-imx-rel_imx_3.14.52_1.1.0_ga$ Thanks! WF Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Dears, I'd like to continue with adding GPU HW Acceleration for X11 per instruction with that section and working within gpu_pack directory instructions say: # cd kernel-modu*   # make   Switch to gpu-core x11 backend:   # backend=x11   Where kernel-modu* is coming from? How kernel-modu* to create from? Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi, Is there anyway to rotate LCD from landscape mode to portrait mode with ubuntu Linaro LXDE rootfs? Thanks! Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi, I connected USB disk and USB mouse to the USB Host port, but the devices were not able to be detected. I can see following message during kernel booting up: usb_otg_vbus: disabling What could be the possible reasons? Thanks! Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi What error are you getting. I am still having the error messages I posted but my audio is working nonetheless so I stopped troubleshooting further on it until someone gives me an idea what should be done. Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Cool. I had changed it to 'linaro' user which also doesnt have a password but still showed me login page. Anyways will try 'root.' But I was getting launched into desktop directly already so dont know if I should bother. Anyways thank for the info.  Re: Installing Ubuntu Rootfs on NXP i.MX6 boards I can login as root with no login screen automatically. this works for me /etc/lxdm$ lxdm.conf [base] ## uncomment and set autologin username to enable autologin autologin=root ## uncomment and set timeout to enable timeout autologin, ## the value should >=5 # timeout=10 ## default session or desktop used when no systemwide config session=/usr/bin/startlxde ## uncomment and set to set numlock on your keyboard # numlock=0 ## set this if you don't want to put xauth file at ~/.Xauthority # xauth_path=/tmp ## greeter used to welcome the user greeter=/usr/lib/lxdm/lxdm-greeter-gtk [server] ## arg used to start xserver, not fully function # arg=/usr/bin/X -background vt1 [display] ## gtk theme used by greeter gtk_theme=Clearlooks ## background of the greeter bg=/usr/share/backgrounds/default.png ## if show bottom pane bottom_pane=1 ## if show language select control lang=1 ## if show keyboard layout select control keyboard=0 ## the theme of greeter theme=Industrial [input] [userlist] ## if disable the user list control at greeter disable=0 ## whitelist user white= ## blacklist user black= Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Nice. Do let me know if you figure out how to remove the login page completely from 'startlxde'. Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Have you fixed gstreamer-imx somehow? Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Finally I got login: After I got LXDE login screen which I needed to switch off the GUI and start in console mode via CTRL+ALT+F1 then I set passwd for root again and then switch back via CTRL+ALT+F7 and I did login as root. Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Erik, Maybe you have not installed xorg and xinit. Try that. Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Understand but on my side after install I can't run 'startx' command (command not found). I have my console on PC host side where I'm connected to the target via UART. On target itself I got Login screen which I can't go thru. I did changes as you suggested but no success. Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi Erik,    If you have also used Linaro LXDE then the default display manager is lxdm which is upstarted from /etc/init.d/. Lxdm uses /etc/lxdm/lxdm.conf for its configuration. I changed the default session to 'startx' to avoid the login page. Just a workaround for now. More info here : LXDM - ArchWiki  Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi Jaffin, I'm in  pretty much the same situation: have you chance to resolve it? Thank you. Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi Erik Any idea how to boot into desktop rather than to the login window I am getting. When I execute startx from serial console, it starts desktop environment on the screen. But by default, startlxde is getting executed and that takes me to the login page from where I cant login with any user. By default I want startx to load. (later I would like to just boot into just one gui application) Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi Erik, I am using iMX6 QP Sabre Board. Everything is working fine just that I am unable to login through the gui login manager. Also I am facing another issue today. I installed gstreamer-imx and its plugins but I am getting an error with the audio codec plugin which is not working. When I run 'gst-inspect-1.0 -b' I get. (gst-plugin-scanner:8983): GStreamer-WARNING **: Failed to load plugin '/usr/lib/arm-linux-gnueabihf/gstreamer-1.0/libgstimxaudio.so': lib_mp3_enc_arm12_elinux.so.2: cannot open shared object file: No such file or directory (gst-plugin-scanner:8983): GStreamer-WARNING **: Failed to load plugin '/usr/lib/arm-linux-gnueabihf/gstreamer-1.0/gstreamer-1.0/libgstimxaudio.so': lib_mp3_enc_arm12_elinux.so.2: cannot open shared object file: No such file or directory (gst-plugin-scanner:8983): GStreamer-WARNING **: Failed to load plugin '/usr/lib/arm-linux-gnueabihf/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/libgstimxaudio.so': lib_mp3_enc_arm12_elinux.so.2: cannot open shared object file: No such file or directory (gst-plugin-scanner:8983): GStreamer-WARNING **: Failed to load plugin '/usr/lib/arm-linux-gnueabihf/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/libgstimxaudio.so': lib_mp3_enc_arm12_elinux.so.2: cannot open shared object file: No such file or directory (gst-plugin-scanner:8983): GStreamer-WARNING **: Failed to load plugin '/usr/lib/arm-linux-gnueabihf/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/libgstimxaudio.so': lib_mp3_enc_arm12_elinux.so.2: cannot open shared object file: No such file or directory (gst-plugin-scanner:8983): GStreamer-WARNING **: Failed to load plugin '/usr/lib/arm-linux-gnueabihf/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/libgstimxaudio.so': lib_mp3_enc_arm12_elinux.so.2: cannot open shared object file: No such file or directory (gst-plugin-scanner:8983): GStreamer-WARNING **: Failed to load plugin '/usr/lib/arm-linux-gnueabihf/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/libgstimxaudio.so': lib_mp3_enc_arm12_elinux.so.2: cannot open shared object file: No such file or directory (gst-plugin-scanner:8983): GStreamer-WARNING **: Failed to load plugin '/usr/lib/arm-linux-gnueabihf/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/libgstimxaudio.so': lib_mp3_enc_arm12_elinux.so.2: cannot open shared object file: No such file or directory (gst-plugin-scanner:8983): GStreamer-WARNING **: Failed to load plugin '/usr/lib/arm-linux-gnueabihf/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/libgstimxaudio.so': lib_mp3_enc_arm12_elinux.so.2: cannot open shared object file: No such file or directory (gst-plugin-scanner:8983): GStreamer-WARNING **: Failed to load plugin '/usr/lib/arm-linux-gnueabihf/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/libgstimxaudio.so': lib_mp3_enc_arm12_elinux.so.2: cannot open shared object file: No such file or directory (gst-plugin-scanner:8983): GStreamer-WARNING **: Failed to load plugin '/usr/lib/arm-linux-gnueabihf/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/gstreamer-1.0/libgstimxaudio.so': lib_mp3_enc_arm12_elinux.so.2: cannot open shared object file: No such file or directory Blacklisted files: libgstimxaudio.so Total count: 1 blacklisted file I dont understand why only audio plugin got blacklisted when I installed both fsl video and audio codec together. I have followed the links from this post. Also the error that it shows that it cannot open shared file, I checked the directory and the file is inside it. Re: Installing Ubuntu Rootfs on NXP i.MX6 boards What imx board/chip do you use? Re: Installing Ubuntu Rootfs on NXP i.MX6 boards First of all, thanks for this amazing post. Helped a lot. I have used the Linaro LXDE rootfs(partly because the ubuntu core link didnt work). Now apart from few hiccups I faced here and there in the process, I am able to boot the hardware and login from the serial console to the shell. But on the HDMI display I am shown a login window. I tried typing username 'root' and 'linaro' without any password(since I had removed the password from the root and linaro user as per the process above) and I am still stuck on the same window. I am unable to move past the login window and enter the GUI. Did anyone else face this. Please advise if I have missed something. Or I could just remove this login window manager and install another. Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Now I got Linaro, 14.10 image booting.. but still get into HDMI display and it's Serial console from PC. How can I enable and run it form within HDMI monitor? Secondly I followed  section 3: Modify Rootfs and Install needed packages  even though network, sources.list, hostname are not configured accordingly.. I change it on host PC and those setting are not reflected...       U-Boot 2016.03 (Nov 04 2016 - 11:24:24 +0100) CPU: Freescale i.MX6QP rev1.0 996 MHz (running at 792 MHz) CPU: Automotive temperature grade (-40C to 125C) at 31C Reset cause: POR Board: MX6Q-Sabreauto revA I2C: ready DRAM: 2 GiB PMIC: PFUZE100 ID=0x10 NAND: 0 MiB MMC: FSL_SDHC: 0, FSL_SDHC: 1 No panel detected: default to Hannstar-XGA Display: Hannstar-XGA (1024x768) In: serial Out: serial Err: serial switch to partitions #0, OK mmc1 is current device Net: FEC [PRIME] Normal Boot Hit any key to stop autoboot: 0 switch to partitions #0, OK mmc1 is current device reading boot.scr ** Unable to read file boot.scr ** reading zImage 6637656 bytes read in 328 ms (19.3 MiB/s) Booting from mmc ... reading imx6qp-sabreauto.dtb 48853 bytes read in 20 ms (2.3 MiB/s) Kernel image @ 0x12000000 [ 0x000000 - 0x654858 ] ## Flattened Device Tree blob at 18000000 Booting using the fdt blob at 0x18000000 Using Device Tree in place at 18000000, end 1800eed4 Starting kernel ... Booting Linux on physical CPU 0x0 Linux version 4.1.15 (r59400@Latitude) (gcc version 4.8.5 (Linaro GCC 4.8-2015.06) ) #1 SMP PREEMPT Fri Nov 4 11:53:43 CET 2016 CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7), cr=10c53c7d CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache Machine model: Freescale i.MX6 Quad Plus SABRE Automotive Board Reserved memory: created CMA memory pool at 0x6a000000, size 320 MiB Reserved memory: initialized node linux,cma, compatible id shared-dma-pool Memory policy: Data cache writealloc PERCPU: Embedded 12 pages/cpu @ee6fe000 s16960 r8192 d24000 u49152 Built 1 zonelists in Zone order, mobility grouping on. Total pages: 520720 Kernel command line: console=ttymxc3,115200 root=/dev/mmcblk2p2 rootwait rw PID hash table entries: 4096 (order: 2, 16384 bytes) Dentry cache hash table entries: 262144 (order: 8, 1048576 bytes) Inode-cache hash table entries: 131072 (order: 7, 524288 bytes) Memory: 1737928K/2097152K available (8295K kernel code, 435K rwdata, 2892K rodata, 432K init, 450K bss, 31544K reserved, 327680K cma-reserved, 270336K highmem) Virtual kernel memory layout: vector : 0xffff0000 - 0xffff1000 ( 4 kB) fixmap : 0xffc00000 - 0xfff00000 (3072 kB) vmalloc : 0xf0000000 - 0xff000000 ( 240 MB) lowmem : 0x80000000 - 0xef800000 (1784 MB) pkmap : 0x7fe00000 - 0x80000000 ( 2 MB) modules : 0x7f000000 - 0x7fe00000 ( 14 MB) .text : 0x80008000 - 0x80af51c8 (11189 kB) .init : 0x80af6000 - 0x80b62000 ( 432 kB) .data : 0x80b62000 - 0x80bcec40 ( 436 kB) .bss : 0x80bd1000 - 0x80c41a5c ( 451 kB) SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1 Preemptible hierarchical RCU implementation. Additional per-CPU info printed with stalls. NR_IRQS:16 nr_irqs:16 16 L2C-310 erratum 769419 enabled L2C-310 enabling early BRESP for Cortex-A9 L2C-310 full line of zeros enabled for Cortex-A9 L2C-310 ID prefetch enabled, offset 16 lines L2C-310 dynamic clock gating enabled, standby mode enabled L2C-310 cache controller enabled, 16 ways, 1024 kB L2C-310: CACHE_ID 0x410000c8, AUX_CTRL 0x76470001 mxc_clocksource_init 3000000 Switching to timer-based delay loop, resolution 333ns sched_clock: 32 bits at 3000kHz, resolution 333ns, wraps every 715827882841ns clocksource mxc_timer1: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 637086815595 ns Console: colour dummy device 80x30 Calibrating delay loop (skipped), value calculated using timer frequency.. 6.00 BogoMIPS (lpj=30000) pid_max: default: 32768 minimum: 301 Mount-cache hash table entries: 4096 (order: 2, 16384 bytes) Mountpoint-cache hash table entries: 4096 (order: 2, 16384 bytes) CPU: Testing write buffer coherency: ok CPU0: thread -1, cpu 0, socket 0, mpidr 80000000 Setting up static identity map for 0x10008280 - 0x100082d8 CPU1: thread -1, cpu 1, socket 0, mpidr 80000001 CPU2: thread -1, cpu 2, socket 0, mpidr 80000002 CPU3: thread -1, cpu 3, socket 0, mpidr 80000003 Brought up 4 CPUs SMP: Total of 4 processors activated (24.00 BogoMIPS). CPU: All CPU(s) started in SVC mode. devtmpfs: initialized VFP support v0.3: implementor 41 architecture 3 part 30 variant 9 rev 4 clocksource jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns pinctrl core: initialized pinctrl subsystem NET: Registered protocol family 16 DMA: preallocated 256 KiB pool for atomic coherent allocations cpuidle: using governor ladder cpuidle: using governor menu CPU identified as i.MX6QP, silicon rev 1.0 hw-breakpoint: found 5 (+1 reserved) breakpoint and 1 watchpoint registers. hw-breakpoint: maximum watchpoint size is 4 bytes. imx6q-pinctrl 20e0000.iomuxc: no groups defined in /soc/aips-bus@02000000/iomuxc@020e0000/hdmicecgrp imx6q-pinctrl 20e0000.iomuxc: initialized IMX pinctrl driver imx-gpc 20dc000.gpc: no fsl,ldo-bypass found! mxs-dma 110000.dma-apbh: initialized SCSI subsystem initialized usbcore: registered new interface driver usbfs usbcore: registered new interface driver hub usbcore: registered new device driver usb 2000000.aips-bus:usbphy_nop1 supply vcc not found, using dummy regulator 2000000.aips-bus:usbphy_nop2 supply vcc not found, using dummy regulator i2c i2c-1: IMX I2C adapter registered i2c i2c-1: can't use DMA i2c i2c-2: IMX I2C adapter registered i2c i2c-2: can't use DMA Linux video capture interface: v2.00 pps_core: LinuxPPS API ver. 1 registered pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <[email protected]> PTP clock support registered imx-ipuv3 2400000.ipu: IPU DMFC NORMAL mode: 1(0~1), 5B(4,5), 5F(6,7) imx-ipuv3 2800000.ipu: IPU DMFC NORMAL mode: 1(0~1), 5B(4,5), 5F(6,7) imx-prg 21cc000.prg: driver probed imx-prg 21cd000.prg: driver probed imx-pre 21c8000.pre: driver probed imx-pre 21c9000.pre: driver probed imx-pre 21ca000.pre: driver probed imx-pre 21cb000.pre: driver probed MIPI CSI2 driver module loaded Advanced Linux Sound Architecture Driver Initialized. Bluetooth: Core ver 2.20 NET: Registered protocol family 31 Bluetooth: HCI device and connection manager initialized Bluetooth: HCI socket layer initialized Bluetooth: L2CAP socket layer initialized Bluetooth: SCO socket layer initialized Switched to clocksource mxc_timer1 NET: Registered protocol family 2 TCP established hash table entries: 16384 (order: 4, 65536 bytes) TCP bind hash table entries: 16384 (order: 5, 131072 bytes) TCP: Hash tables configured (established 16384 bind 16384) UDP hash table entries: 1024 (order: 3, 32768 bytes) UDP-Lite hash table entries: 1024 (order: 3, 32768 bytes) NET: Registered protocol family 1 RPC: Registered named UNIX socket transport module. RPC: Registered udp transport module. RPC: Registered tcp transport module. RPC: Registered tcp NFSv4.1 backchannel transport module. CPU PMU: Failed to parse /soc/pmu/interrupt-affinity[0] hw perfevents: enabled with armv7_cortex_a9 PMU driver, 7 counters available imx rpmsg driver is registered. Bus freq driver module loaded futex hash table entries: 1024 (order: 4, 65536 bytes) VFS: Disk quotas dquot_6.6.0 VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes) NFS: Registering the id_resolver key type Key type id_resolver registered Key type id_legacy registered jffs2: version 2.2. (NAND) © 2001-2006 Red Hat, Inc. fuse init (API version 7.23) bounce: pool size: 64 pages io scheduler noop registered io scheduler deadline registered io scheduler cfq registered (default) backlight supply power not found, using dummy regulator MIPI DSI driver module loaded MIPI DSI driver module loaded mxc_sdc_fb fb@0: registered mxc display driver ldb imx-ipuv3 2800000.ipu: IPU DMFC DP HIGH RESOLUTION: 1(0,1), 5B(2~5), 5F(6,7) Console: switching to colour frame buffer device 128x48 mxc_hdmi 20e0000.hdmi_video: Detected HDMI controller 0x13:0xa:0xa0:0xc1 fbcvt: 1920x1080@60: CVT Name - 2.073M9 mxc_sdc_fb fb@1: registered mxc display driver hdmi mxc_sdc_fb fb@2: NO mxc display driver found! mxc_sdc_fb fb@3: registered mxc display driver ldb mxc_hdmi 20e0000.hdmi_video: Read EDID again imx-sdma 20ec000.sdma: no iram assigned, using external mem imx-sdma 20ec000.sdma: no event needs to be remapped imx-sdma 20ec000.sdma: loaded firmware 3.3 imx-sdma 20ec000.sdma: initialized pfuze100-regulator 1-0008: Full layer: 2, Metal layer: 1 pfuze100-regulator 1-0008: FAB: 0, FIN: 0 pfuze100-regulator 1-0008: pfuze100 found. 21ec000.serial: ttymxc2 at MMIO 0x21ec000 (irq = 298, base_baud = 5000000) is a IMX 21f0000.serial: ttymxc3 at MMIO 0x21f0000 (irq = 299, base_baud = 5000000) is a IMX mxc_hdmi 20e0000.hdmi_video: create default modelist console [ttymxc3] enabled imx sema4 driver is registered. [drm] Initialized drm 1.1.0 20060810 [drm] Initialized vivante 1.0.0 20120216 on minor 0 brd: module loaded loop: module loaded si476x-core 1-0063: Using default platform data. si476x-core 1-0063: No IRQ number specified, will use polling si476x-core 1-0063: Error while sending command 0x11 si476x-core 1-0063: The device in inconsistent power state ahci-imx 2200000.sata: fsl,transmit-level-mV not specified, using 00000024 ahci-imx 2200000.sata: fsl,transmit-boost-mdB not specified, using 00000480 ahci-imx 2200000.sata: fsl,transmit-atten-16ths not specified, using 00002000 ahci-imx 2200000.sata: fsl,receive-eq-mdB not specified, using 05000000 ahci-imx 2200000.sata: SSS flag set, parallel bus scan disabled ahci-imx 2200000.sata: AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl platform mode ahci-imx 2200000.sata: flags: ncq sntf stag pm led clo only pmp pio slum part ccc apst scsi host0: ahci-imx ata1: SATA max UDMA/133 mmio [mem 0x02200000-0x02203fff] port 0x100 irq 313 CAN device driver interface 2188000.ethernet supply phy not found, using dummy regulator pps pps0: new PPS source ptp0 libphy: fec_enet_mii_bus: probed fec 2188000.ethernet eth0: registered PHC device 0 ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver ehci-mxc: Freescale On-Chip EHCI Host driver usbcore: registered new interface driver usb-storage usbcore: registered new interface driver usb_ehset_test 2184800.usbmisc supply vbus-wakeup not found, using dummy regulator imx_usb 2184000.usb: Can't register ci_hdrc platform device, err=-517 imx_usb 2184200.usb: Can't register ci_hdrc platform device, err=-517 mousedev: PS/2 mouse device common for all mice egalax_ts 1-0004: Failed to read firmware version egalax_ts: probe of 1-0004 failed with error -5 2-0044 supply vdd not found, using dummy regulator input: isl29023 light sensor as /devices/virtual/input/input1 isl29023 2-0044: driver version 1.0 enabled snvs_rtc 20cc000.snvs:snvs-rtc-lp: rtc core: registered 20cc000.snvs:snvs-r as rtc0 i2c /dev entries driver IR NEC protocol handler initialized IR RC5(x/sz) protocol handler initialized IR RC6 protocol handler initialized IR JVC protocol handler initialized IR Sony protocol handler initialized IR SANYO protocol handler initialized IR Sharp protocol handler initialized IR MCE Keyboard/mouse protocol handler initialized IR XMP protocol handler initialized mxc_v4l2_output v4l2_out: V4L2 device registered as video16 mxc_v4l2_output v4l2_out: V4L2 device registered as video17 mxc_v4l2_output v4l2_out: V4L2 device registered as video18 mxc_v4l2_output v4l2_out: V4L2 device registered as video19 mxc_v4l2_output v4l2_out: V4L2 device registered as video20 2-000e supply vdd not found, using dummy regulator 2-000e supply vddio not found, using dummy regulator mag3110 2-000e: check mag3110 chip ID input: mag3110 as /devices/virtual/input/input2 mag3110 2-000e: mag3110 is probed 2-001c supply vdd not found, using dummy regulator 2-001c supply vddio not found, using dummy regulator input: mma845x as /devices/virtual/input/input3 imx2-wdt 20bc000.wdog: timeout 60 sec (nowayout=0) Bluetooth: HCI UART driver ver 2.3 Bluetooth: HCI UART protocol H4 registered Bluetooth: HCI UART protocol BCSP registered Bluetooth: HCI UART protocol ATH3K registered ata1: SATA link down (SStatus 0 SControl 300) ahci-imx 2200000.sata: no device found, disabling link. usbcore: registered new interface driver bcm203x usbcore: registered new interface driver btusb usbcore: registered new interface driver ath3k ahci-imx 2200000.sata: pass ahci_imx..hotplug=1 to enable hotplug sdhci: Secure Digital Host Controller Interface driver sdhci: Copyright(c) Pierre Ossman sdhci-pltfm: SDHCI platform and OF driver helper /soc/aips-bus@02100000/usdhc@02190000: voltage-ranges unspecified sdhci-esdhc-imx 2190000.usdhc: Got CD GPIO sdhci-esdhc-imx 2190000.usdhc: No vmmc regulator found sdhci-esdhc-imx 2190000.usdhc: No vqmmc regulator found mmc0: SDHCI controller on 2190000.usdhc [2190000.usdhc] using ADMA /soc/aips-bus@02100000/usdhc@02198000: voltage-ranges unspecified sdhci-esdhc-imx 2198000.usdhc: Got CD GPIO sdhci-esdhc-imx 2198000.usdhc: Got WP GPIO sdhci-esdhc-imx 2198000.usdhc: No vqmmc regulator found mmc2: SDHCI controller on 2198000.usdhc [2198000.usdhc] using ADMA 218c000.mlb supply reg_nvcc not found, using dummy regulator mxc_mlb150 218c000.mlb: enalbe regulator mxc_vpu 2040000.vpu_fsl: VPU initialized mxc_vdoa 21e4000.vdoa: i.MX Video Data Order Adapter(VDOA) driver probed imx6q-pinctrl 20e0000.iomuxc: unable to find group for node hdmicecgrp imx6q-pinctrl 20e0000.iomuxc: unable to find group for node hdmicecgrp mxc_hdmi_cec soc:hdmi_cec@00120000: can't get/select CEC pinctrl Galcore version 5.0.11.41671 mmc2: new ultra high speed SDR104 SDHC card at address 0007 mmcblk2: mmc2:0007 SD32G 28.9 GiB mmcblk2: p1 p2 caam 2100000.caam: Entropy delay = 3200 caam 2100000.caam: Instantiated RNG4 SH0 caam 2100000.caam: Instantiated RNG4 SH1 caam 2100000.caam: device ID = 0x0a16010000000000 (Era -524) caam 2100000.caam: job rings = 2, qi = 0 caam algorithms registered in /proc/crypto caam_jr 2101000.jr0: registering rng-caam platform caam_sm: blkkey_ex: 4 keystore units available platform caam_sm: 64-bit clear key: platform caam_sm: [0000] 00 01 02 03 04 0f 06 07 platform caam_sm: 64-bit black key: platform caam_sm: [0000] b1 20 7c 0a 8a 86 61 07 platform caam_sm: [0008] f0 19 01 46 38 76 bd 49 platform caam_sm: 128-bit clear key: platform caam_sm: [0000] 00 01 02 03 04 0f 06 07 platform caam_sm: [0008] 08 09 0a 0b 0c 0d 0e 0f platform caam_sm: 128-bit black key: platform caam_sm: [0000] 2f 06 82 1f cc b0 35 1f platform caam_sm: [0008] 72 03 b1 f3 aa e0 3e b0 platform caam_sm: 192-bit clear key: platform caam_sm: [0000] 00 01 02 03 04 0f 06 07 platform caam_sm: [0008] 08 09 0a 0b 0c 0d 0e 0f platform caam_sm: [0016] 10 11 12 13 14 15 16 17 platform caam_sm: 192-bit black key: platform caam_sm: [0000] 1b b3 ad 95 d0 24 81 9a platform caam_sm: [0008] fd b9 b8 4c 55 17 92 c4 platform caam_sm: [0016] ae af b5 6a ea 59 01 4f platform caam_sm: [0024] 1b be de e8 dd 5c 8b 10 platform caam_sm: 256-bit clear key: platform caam_sm: [0000] 00 01 02 03 04 0f 06 07 platform caam_sm: [0008] 08 09 0a 0b 0c 0d 0e 0f platform caam_sm: [0016] 10 11 12 13 14 15 16 17 platform caam_sm: [0024] 18 19 1a 1b 1c 1d 1e 1f platform caam_sm: 256-bit black key: platform caam_sm: [0000] cf f7 16 54 2e 7b 19 e0 platform caam_sm: [0008] fe 96 8c 8b 3e 1b b3 f0 platform caam_sm: [0016] 38 35 bc 80 67 35 ed 58 platform caam_sm: [0024] e1 dd 73 11 85 8b 10 1f platform caam_sm: 64-bit unwritten blob: platform caam_sm: [0000] 00 00 00 00 00 00 00 00 platform caam_sm: [0008] 00 00 00 00 00 00 00 00 platform caam_sm: [0016] 00 00 00 00 00 00 00 00 platform caam_sm: [0024] 00 00 00 00 00 00 00 00 platform caam_sm: [0032] 00 00 00 00 00 00 00 00 platform caam_sm: [0040] 00 00 00 00 00 00 00 00 platform caam_sm: [0048] 00 00 00 00 00 00 00 00 platform caam_sm: [0056] 00 00 00 00 00 00 00 00 platform caam_sm: [0064] 00 00 00 00 00 00 00 00 platform caam_sm: [0072] 00 00 00 00 00 00 00 00 platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: 128-bit unwritten blob: platform caam_sm: [0000] 00 00 00 00 00 00 00 00 platform caam_sm: [0008] 00 00 00 00 00 00 00 00 platform caam_sm: [0016] 00 00 00 00 00 00 00 00 platform caam_sm: [0024] 00 00 00 00 00 00 00 00 platform caam_sm: [0032] 00 00 00 00 00 00 00 00 platform caam_sm: [0040] 00 00 00 00 00 00 00 00 platform caam_sm: [0048] 00 00 00 00 00 00 00 00 platform caam_sm: [0056] 00 00 00 00 00 00 00 00 platform caam_sm: [0064] 00 00 00 00 00 00 00 00 platform caam_sm: [0072] 00 00 00 00 00 00 00 00 platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: 196-bit unwritten blob: platform caam_sm: [0000] 00 00 00 00 00 00 00 00 platform caam_sm: [0008] 00 00 00 00 00 00 00 00 platform caam_sm: [0016] 00 00 00 00 00 00 00 00 platform caam_sm: [0024] 00 00 00 00 00 00 00 00 platform caam_sm: [0032] 00 00 00 00 00 00 00 00 platform caam_sm: [0040] 00 00 00 00 00 00 00 00 platform caam_sm: [0048] 00 00 00 00 00 00 00 00 platform caam_sm: [0056] 00 00 00 00 00 00 00 00 platform caam_sm: [0064] 00 00 00 00 00 00 00 00 platform caam_sm: [0072] 00 00 00 00 00 00 00 00 platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: 256-bit unwritten blob: platform caam_sm: [0000] 00 00 00 00 00 00 00 00 platform caam_sm: [0008] 00 00 00 00 00 00 00 00 platform caam_sm: [0016] 00 00 00 00 00 00 00 00 platform caam_sm: [0024] 00 00 00 00 00 00 00 00 platform caam_sm: [0032] 00 00 00 00 00 00 00 00 platform caam_sm: [0040] 00 00 00 00 00 00 00 00 platform caam_sm: [0048] 00 00 00 00 00 00 00 00 platform caam_sm: [0056] 00 00 00 00 00 00 00 00 platform caam_sm: [0064] 00 00 00 00 00 00 00 00 platform caam_sm: [0072] 00 00 00 00 00 00 00 00 platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: 64-bit black key in blob: platform caam_sm: [0000] 7c 66 1b 86 2d 1c b7 2d platform caam_sm: [0008] 20 1f bb eb b4 00 1c 56 platform caam_sm: [0016] 8f b7 46 a6 40 58 28 49 platform caam_sm: [0024] 55 a0 50 1c 58 1d 43 a9 platform caam_sm: [0032] 06 3c 86 13 da 7d c1 6a platform caam_sm: [0040] 3b 09 77 ee 3a ee 3f e6 platform caam_sm: [0048] 7e be 58 92 f4 b9 1d 4a platform caam_sm: [0056] 00 00 00 00 00 00 00 00 platform caam_sm: [0064] 00 00 00 00 00 00 00 00 platform caam_sm: [0072] 00 00 00 00 00 00 00 00 platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: 128-bit black key in blob: platform caam_sm: [0000] 61 a7 fd 69 ac 06 3c 35 platform caam_sm: [0008] 55 aa 49 66 c1 d2 ee 49 platform caam_sm: [0016] 04 af 80 4a fe 33 92 ab platform caam_sm: [0024] 9c a7 c3 82 25 53 80 63 platform caam_sm: [0032] 22 3e 89 9a e6 d8 a6 54 platform caam_sm: [0040] c6 e6 f7 34 b6 1f 2c 9e platform caam_sm: [0048] 5e 96 89 5e a6 fc 7f 87 platform caam_sm: [0056] 20 5f 7a 16 11 3b e7 ce platform caam_sm: [0064] 00 00 00 00 00 00 00 00 platform caam_sm: [0072] 00 00 00 00 00 00 00 00 platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: 192-bit black key in blob: platform caam_sm: [0000] 23 2c cb 1b 73 ab 7d 23 platform caam_sm: [0008] f4 b0 f7 92 b2 78 0d 4c platform caam_sm: [0016] b7 ba 1e 4d 05 6d 31 f5 platform caam_sm: [0024] ce c9 fd 0a ce 39 eb 94 platform caam_sm: [0032] cb b1 33 41 b7 f7 6b 26 platform caam_sm: [0040] 44 80 d7 26 36 25 ad 73 platform caam_sm: [0048] 87 a0 51 29 82 7f 9c d8 platform caam_sm: [0056] 2f 75 98 5f b7 50 f3 db platform caam_sm: [0064] b3 39 17 c7 c9 90 c8 26 platform caam_sm: [0072] 00 00 00 00 00 00 00 00 platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: 256-bit black key in blob: platform caam_sm: [0000] 49 ff 5a d8 79 44 e7 67 platform caam_sm: [0008] 96 87 75 f6 5c 8a 2e df platform caam_sm: [0016] ae cc a1 b6 4a 31 f6 e8 platform caam_sm: [0024] 8d fd ad 8b 07 f3 e8 b0 platform caam_sm: [0032] c0 58 18 9b ae 02 bb ce platform caam_sm: [0040] 38 fb 44 db 04 67 1b c7 platform caam_sm: [0048] 2c 15 75 41 8d c1 77 cf platform caam_sm: [0056] a1 68 de 68 2d cd 24 e7 platform caam_sm: [0064] d5 7e e3 22 eb 7a 21 9d platform caam_sm: [0072] 63 67 cf 3b 32 19 e0 03 platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: restored 64-bit black key: platform caam_sm: [0000] 95 c8 a2 bc ac 2e 8e d7 platform caam_sm: [0008] f7 cc fa 5b b6 a5 5b 4b platform caam_sm: restored 128-bit black key: platform caam_sm: [0000] 2f 06 82 1f cc b0 35 1f platform caam_sm: [0008] 72 03 b1 f3 aa e0 3e b0 platform caam_sm: restored 192-bit black key: platform caam_sm: [0000] 1b b3 ad 95 d0 24 81 9a platform caam_sm: [0008] fd b9 b8 4c 55 17 92 c4 platform caam_sm: [0016] 5f 82 48 34 d8 cb 15 a9 platform caam_sm: [0024] b0 6c fe c8 ee 8e cd 21 platform caam_sm: restored 256-bit black key: platform caam_sm: [0000] cf f7 16 54 2e 7b 19 e0 platform caam_sm: [0008] fe 96 8c 8b 3e 1b b3 f0 platform caam_sm: [0016] 38 35 bc 80 67 35 ed 58 platform caam_sm: [0024] e1 dd 73 11 85 8b 10 1f snvs-secvio 20cc000.caam-snvs: can't get snvs clock snvs-secvio 20cc000.caam-snvs: violation handlers armed - non-secure state usbcore: registered new interface driver usbhid usbhid: USB HID core driver cs42xx8 1-0048: found device, revision 4 fsl-asrc 2034000.asrc: driver registered imx-cs42888 sound-cs42888: cs42888 <-> 2024000.esai mapping ok imx-cs42888 sound-cs42888: snd-soc-dummy-dai <-> 2034000.asrc mapping ok imx-cs42888 sound-cs42888: cs42888 <-> 2024000.esai mapping ok imx-spdif sound-spdif: snd-soc-dummy-dai <-> 2004000.spdif mapping ok imx-tuner-si476x sound-fm: failed to find FM platform device imx-tuner-si476x: probe of sound-fm failed with error -22 imx-audio-hdmi sound-hdmi: hdmi-hifi <-> soc:hdmi_audio@00120000 mapping ok NET: Registered protocol family 26 NET: Registered protocol family 10 sit: IPv6 over IPv4 tunneling driver NET: Registered protocol family 17 can: controller area network core (rev 20120528 abi 9) NET: Registered protocol family 29 can: raw protocol (rev 20120528) can: broadcast manager protocol (rev 20120528 t) can: netlink gateway (rev 20130117) max_hops=1 Bluetooth: RFCOMM TTY layer initialized Bluetooth: RFCOMM socket layer initialized Bluetooth: RFCOMM ver 1.11 Bluetooth: BNEP (Ethernet Emulation) ver 1.3 Bluetooth: BNEP filters: protocol multicast Bluetooth: BNEP socket layer initialized Bluetooth: HIDP (Human Interface Emulation) ver 1.2 Bluetooth: HIDP socket layer initialized 8021q: 802.1Q VLAN Support v1.8 Key type dns_resolver registered can-stby: supplied by can-en flexcan 2094000.flexcan: device registered (reg_base=f0648000, irq=31) ci_hdrc ci_hdrc.0: EHCI Host Controller ci_hdrc ci_hdrc.0: new USB bus registered, assigned bus number 1 ci_hdrc ci_hdrc.0: USB 2.0 started, EHCI 1.00 hub 1-0:1.0: USB hub found hub 1-0:1.0: 1 port detected ci_hdrc ci_hdrc.1: EHCI Host Controller ci_hdrc ci_hdrc.1: new USB bus registered, assigned bus number 2 ci_hdrc ci_hdrc.1: USB 2.0 started, EHCI 1.00 hub 2-0:1.0: USB hub found hub 2-0:1.0: 1 port detected dhd_module_init in input: gpio-keys as /devices/soc0/gpio-keys/input/input4 snvs_rtc 20cc000.snvs:snvs-rtc-lp: setting system clock to 1970-01-01 00:00:02 UTC (2) can-stby: disabling can-en: disabling VGEN2: disabling SWBST: disabling SW4: disabling ALSA device list: #0: cs42888-audio #1: imx-spdif #2: imx-hdmi-soc usb 1-1: new high-speed USB device number 2 using ci_hdrc hub 1-1:1.0: USB hub found hub 1-1:1.0: 4 ports detected usb 1-1.2: new low-speed USB device number 3 using ci_hdrc input: DELL DELL USB Laser Mouse as /devices/soc0/soc/2100000.aips-bus/2184000.usb/ci_hdrc.0/usb1/1-1/1-1.2/1-1.2:1.0/0003:046D:C063.0001/input/input5 hid-generic 0003:046D:C063.0001: input: USB HID v1.10 Mouse [DELL DELL USB Laser Mouse] on usb-ci_hdrc.0-1.2/input0 usb 1-1.3: new low-speed USB device number 4 using ci_hdrc input: Dell Dell QuietKey Keyboard as /devices/soc0/soc/2100000.aips-bus/2184000.usb/ci_hdrc.0/usb1/1-1/1-1.3/1-1.3:1.0/0003:413C:2106.0002/input/input6 hid-generic 0003:413C:2106.0002: input: USB HID v1.10 Keyboard [Dell Dell QuietKey Keyboard] on usb-ci_hdrc.0-1.3/input0 kjournald starting. Commit interval 5 seconds EXT3-fs (mmcblk2p2): using internal journal EXT3-fs (mmcblk2p2): recovery complete EXT3-fs (mmcblk2p2): mounted filesystem with ordered data mode VFS: Mounted root (ext3 filesystem) on device 179:2. devtmpfs: mounted Freeing unused kernel memory: 432K (80af6000 - 80b62000) Mount failed for selinuxfs on /sys/fs/selinux: No such file or directory random: init urandom read with 34 bits of entropy available init: plymouth-upstart-bridge main process (175) terminated with status 1 init: plymouth-upstart-bridge main process ended, respawning init: plymouth-upstart-bridge main process (185) terminated with status 1 init: plymouth-upstart-bridge main process ended, respawning init: plymouth-upstart-bridge main process (189) terminated with status 1 init: plymouth-upstart-bridge main process ended, respawning init: ureadahead main process (178) terminated with status 5 init: mounted-proc main process (204) terminated with status 1 DBG sensor data is at 7f010188 * Stopping Send an event to indicate plymouth is up [ OK ] * Starting Mount filesystems on boot [ OK ] * Starting Signal sysvinit that the rootfs is mounted [ OK ] * Starting Populate /dev filesystem [ OK ] * Stopping Populate /dev filesystem [ OK ] * Starting Clean /tmp directory [ OK ] * Starting Populate and link to /run filesystem [ OK ] * Stopping Clean /tmp directory [ OK ] * Stopping Populate and link to /run filesystem [ OK ] * Stopping Track if upstart is running in a container [ OK ] * Starting Initialize or finalize resolvconf [ OK ] * Starting set console keymap [ OK ] * Starting Signal sysvinit that virtual filesystems are mounted [ OK ] * Starting Signal sysvinit that virtual filesystems are mounted [ OK ] * Starting Bridge udev events into upstart [ OK ] * Stopping set console keymap [ OK ] * Starting device node and kernel event manager [ OK ] * Starting Signal sysvinit that local filesystems are mounted [ OK ] * Starting Signal sysvinit that remote filesystems are mounted [ OK ] * Starting load modules from /etc/modules [ OK ] * Starting cold plug devices [ OK ] * Starting log initial device creation [ OK ] * Stopping load modules from /etc/modules [ OK ] * Starting flush early job output to logs [ OK ] * Stopping Mount filesystems on boot [ OK ] * Stopping flush early job output to logs [ OK ] * Starting D-Bus system message bus [ OK ] * Starting set console font [ OK ] * Starting SystemD login management service [ OK ] * Stopping set console font [ OK ] * Starting userspace bootsplash [ OK ] * Stopping userspace bootsplash [ OK ] * Starting Send an event to indicate plymouth is up [ OK ] * Starting bluetooth daemon [ OK ] * Stopping Send an event to indicate plymouth is up [ OK ] * Starting system logging daemon [ OK ] * Starting configure network device security [ OK ] * Starting mDNS/DNS-SD daemon [ OK ] * Starting Reload cups, upon starting avahi-daemon to make sure remote q[ OK ]are populated * Starting configure network device [ OK ] * Starting Reload cups, upon starting avahi-daemon to make sure remote q[fail]are populated * Starting configure network device security [ OK ] * Starting configure network device [ OK ] * Starting configure network device security [ OK ] * Starting configure network device security [ OK ] * Starting configure network device [ OK ] * Starting Mount network filesystems [ OK ] * Starting Failsafe Boot Delay [ OK ] * Stopping Mount network filesystems [ OK ] * Starting configure network device [ OK ] * Stopping Failsafe Boot Delay [ OK ] * Starting System V initialisation compatibility [ OK ] * Setting up X socket directories... [ OK ] * Stopping System V initialisation compatibility [ OK ] Last login: Thu Jan 1 00:00:23 UTC 1970 on tty1 Welcome to Linaro 14.04 (GNU/Linux 4.1.15 armv7l) * Documentation: https://wiki.linaro.org/ root@linaro-alip:~# Re: Installing Ubuntu Rootfs on NXP i.MX6 boards I did compile for 4.1.15 kernel but I need to set (configure) proper board instead of Board: MX6Q-Sabreauto revA I need to have: MX6QP-Sabreauto Where and how to configure it? How can I redirect display to HDMI? U-Boot 2016.03 (Nov 03 2016 - 11:28:37 +0100) CPU: Freescale i.MX6QP rev1.0 996 MHz (running at 792 MHz) CPU: Automotive temperature grade (-40C to 125C) at 28C Reset cause: POR Board: MX6Q-Sabreauto revA I2C: ready DRAM: 2 GiB PMIC: PFUZE100 ID=0x10 NAND: 0 MiB MMC: FSL_SDHC: 0, FSL_SDHC: 1 *** Warning - bad CRC, using default environment No panel detected: default to Hannstar-XGA Display: Hannstar-XGA (1024x768) In: serial Out: serial Err: serial switch to partitions #0, OK mmc1 is current device Net: FEC [PRIME] Normal Boot Hit any key to stop autoboot: 0 Re: Installing Ubuntu Rootfs on NXP i.MX6 boards How can I redirect output to HDMI monitor? I am trying to start the system but I got stuck at  * Stopping save kernel messages                                         [ OK ] U-Boot 2015.04 (Nov 02 2016 - 23:46:14) CPU: Freescale i.MX6QP rev1.0 at 792 MHz CPU: Temperature 33 C Reset cause: POR Board: MX6Q-Sabreauto revA I2C: ready DRAM: 2 GiB PMIC: PFUZE100 ID=0x10 NAND: 0 MiB MMC: FSL_SDHC: 0, FSL_SDHC: 1 *** Warning - bad CRC, using default environment No panel detected: default to Hannstar-XGA Display: Hannstar-XGA (1024x768) In: serial Out: serial Err: serial switch to partitions #0, OK mmc1 is current device Net: FEC [PRIME] Normal Boot Hit any key to stop autoboot: 0 switch to partitions #0, OK mmc1 is current device reading boot.scr ** Unable to read file boot.scr ** reading zImage 6022776 bytes read in 309 ms (18.6 MiB/s) Booting from mmc ... reading imx6qp-sabreauto.dtb 46893 bytes read in 20 ms (2.2 MiB/s) Kernel image @ 0x12000000 [ 0x000000 - 0x5be678 ] ## Flattened Device Tree blob at 18000000 Booting using the fdt blob at 0x18000000 Using Device Tree in place at 18000000, end 1800e72c Starting kernel ... Booting Linux on physical CPU 0x0 Linux version 3.14.52 (r59400@Latitude) (gcc version 4.8.5 (Linaro GCC 4.8-2015.06) ) #3 SMP PREEMPT Wed Nov 2 23:55:53 CET 2016 CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7), cr=10c53c7d CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache Machine model: Freescale i.MX6 Quad Plus SABRE Automotive Board cma: CMA: reserved 320 MiB at 6a000000 Memory policy: Data cache writealloc PERCPU: Embedded 8 pages/cpu @ee71d000 s8320 r8192 d16256 u32768 Built 1 zonelists in Zone order, mobility grouping on. Total pages: 520720 Kernel command line: console=ttymxc3,115200 root=/dev/mmcblk2p2 rootwait rw PID hash table entries: 4096 (order: 2, 16384 bytes) Dentry cache hash table entries: 262144 (order: 8, 1048576 bytes) Inode-cache hash table entries: 131072 (order: 7, 524288 bytes) Memory: 1739228K/2097152K available (7452K kernel code, 460K rwdata, 2596K rodata, 392K init, 433K bss, 357924K reserved, 270336K highmem) Virtual kernel memory layout: vector : 0xffff0000 - 0xffff1000 ( 4 kB) fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB) vmalloc : 0xf0000000 - 0xff000000 ( 240 MB) lowmem : 0x80000000 - 0xef800000 (1784 MB) pkmap : 0x7fe00000 - 0x80000000 ( 2 MB) modules : 0x7f000000 - 0x7fe00000 ( 14 MB) .text : 0x80008000 - 0x809d82d4 (10049 kB) .init : 0x809d9000 - 0x80a3b080 ( 393 kB) .data : 0x80a3c000 - 0x80aaf340 ( 461 kB) .bss : 0x80aaf34c - 0x80b1b99c ( 434 kB) SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1 Preemptible hierarchical RCU implementation. NR_IRQS:16 nr_irqs:16 16 L310 cache controller enabled l2x0: 16 ways, CACHE_ID 0x410000c8, AUX_CTRL 0x32070000, Cache size: 1024 kB Switching to timer-based delay loop sched_clock: 32 bits at 3000kHz, resolution 333ns, wraps every 1431655765682ns Console: colour dummy device 80x30 Calibrating delay loop (skipped), value calculated using timer frequency.. 6.00 BogoMIPS (lpj=30000) pid_max: default: 32768 minimum: 301 Mount-cache hash table entries: 4096 (order: 2, 16384 bytes) Mountpoint-cache hash table entries: 4096 (order: 2, 16384 bytes) CPU: Testing write buffer coherency: ok CPU0: thread -1, cpu 0, socket 0, mpidr 80000000 Setting up static identity map for 0x10718008 - 0x10718060 CPU1: Booted secondary processor CPU1: thread -1, cpu 1, socket 0, mpidr 80000001 CPU2: Booted secondary processor CPU2: thread -1, cpu 2, socket 0, mpidr 80000002 CPU3: Booted secondary processor CPU3: thread -1, cpu 3, socket 0, mpidr 80000003 Brought up 4 CPUs SMP: Total of 4 processors activated (24.00 BogoMIPS). CPU: All CPU(s) started in SVC mode. devtmpfs: initialized VFP support v0.3: implementor 41 architecture 3 part 30 variant 9 rev 4 pinctrl core: initialized pinctrl subsystem regulator-dummy: no parameters NET: Registered protocol family 16 DMA: preallocated 256 KiB pool for atomic coherent allocations cpuidle: using governor ladder cpuidle: using governor menu CPU identified as i.MX6QP, silicon rev 1.0 Use WDOG1 as reset source syscon 20c8000.anatop: regmap [mem 0x020c8000-0x020c8fff] registered vdd1p1: 800 <--> 1375 mV at 1100 mV vdd3p0: 2625 <--> 3400 mV at 3000 mV vdd2p5: 2000 <--> 2750 mV at 2400 mV vddarm: 725 <--> 1450 mV at 1150 mV vddpu: 725 <--> 1450 mV at 1150 mV vddsoc: 725 <--> 1450 mV at 1175 mV syscon 20e0000.iomuxc-gpr: regmap [mem 0x020e0000-0x020e0037] registered syscon 21bc000.ocotp-ctrl: regmap [mem 0x021bc000-0x021bffff] registered hw-breakpoint: found 5 (+1 reserved) breakpoint and 1 watchpoint registers. hw-breakpoint: maximum watchpoint size is 4 bytes. imx6q-pinctrl 20e0000.iomuxc: initialized IMX pinctrl driver bio: create slab at 0 mxs-dma 110000.dma-apbh: initialized cs42888_supply: 3300 mV 3P3V: 3300 mV vio1: 3300 mV vio2: 3300 mV vd: 3300 mV va: 5000 mV platform usb_h1_vbus.30: Driver reg-fixed-voltage requests probe deferral platform usb_otg_vbus.31: Driver reg-fixed-voltage requests probe deferral P3V3_SDa_SWITCHED: 3300 mV i2c-core: driver [max17135] using legacy suspend method i2c-core: driver [max17135] using legacy resume method SCSI subsystem initialized usbcore: registered new interface driver usbfs usbcore: registered new interface driver hub usbcore: registered new device driver usb usbphy_nop1.12 supply vcc not found, using dummy regulator usbphy_nop2.13 supply vcc not found, using dummy regulator i2c i2c-1: IMX I2C adapter registered i2c i2c-2: IMX I2C adapter registered Linux video capture interface: v2.00 pps_core: LinuxPPS API ver. 1 registered pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <[email protected]> PTP clock support registered imx-ipuv3 2400000.ipu: IPU DMFC NORMAL mode: 1(0~1), 5B(4,5), 5F(6,7) imx-ipuv3 2800000.ipu: IPU DMFC NORMAL mode: 1(0~1), 5B(4,5), 5F(6,7) imx-prg 21cc000.prg: driver probed imx-prg 21cd000.prg: driver probed imx-pre 21c8000.pre: driver probed imx-pre 21c9000.pre: driver probed imx-pre 21ca000.pre: driver probed imx-pre 21cb000.pre: driver probed MIPI CSI2 driver module loaded Advanced Linux Sound Architecture Driver Initialized. Bluetooth: Core ver 2.18 NET: Registered protocol family 31 Bluetooth: HCI device and connection manager initialized Bluetooth: HCI socket layer initialized Bluetooth: L2CAP socket layer initialized Bluetooth: SCO socket layer initialized cfg80211: Calling CRDA to update world regulatory domain Switched to clocksource mxc_timer1 NET: Registered protocol family 2 TCP established hash table entries: 16384 (order: 4, 65536 bytes) TCP bind hash table entries: 16384 (order: 5, 131072 bytes) TCP: Hash tables configured (established 16384 bind 16384) TCP: reno registered UDP hash table entries: 1024 (order: 3, 32768 bytes) UDP-Lite hash table entries: 1024 (order: 3, 32768 bytes) NET: Registered protocol family 1 RPC: Registered named UNIX socket transport module. RPC: Registered udp transport module. RPC: Registered tcp transport module. RPC: Registered tcp NFSv4.1 backchannel transport module. hw perfevents: enabled with ARMv7 Cortex-A9 PMU driver, 7 counters available imx rpmsg driver is registered. imx_busfreq busfreq.16: DDR medium rate not supported. Bus freq driver module loaded futex hash table entries: 1024 (order: 4, 65536 bytes) bounce pool size: 64 pages VFS: Disk quotas dquot_6.5.2 Dquot-cache hash table entries: 1024 (order 0, 4096 bytes) NFS: Registering the id_resolver key type Key type id_resolver registered Key type id_legacy registered jffs2: version 2.2. (NAND) © 2001-2006 Red Hat, Inc. fuse init (API version 7.22) msgmni has been set to 3508 io scheduler noop registered io scheduler deadline registered io scheduler cfq registered (default) backlight.17 supply power not found, using dummy regulator MIPI DSI driver module loaded MIPI DSI driver module loaded mxc_sdc_fb fb.23: registered mxc display driver ldb imx-ipuv3 2800000.ipu: IPU DMFC DP HIGH RESOLUTION: 1(0,1), 5B(2~5), 5F(6,7) Console: switching to colour frame buffer device 128x48 mxc_hdmi 20e0000.hdmi_video: Detected HDMI controller 0x13:0xa:0xa0:0xc1 fbcvt: 1920x1080@60: CVT Name - 2.073M9 mxc_sdc_fb fb.24: registered mxc display driver hdmi mxc_sdc_fb fb.25: NO mxc display driver found! mxc_sdc_fb fb.26: registered mxc display driver ldb imx-sdma 20ec000.sdma: no iram assigned, using external mem imx-sdma 20ec000.sdma: no event needs to be remapped imx-sdma 20ec000.sdma: loaded firmware 3.2 mxc_hdmi 20e0000.hdmi_video: Read EDID again imx-sdma 20ec000.sdma: initialized pfuze100-regulator 1-0008: Full layer: 2, Metal layer: 1 pfuze100-regulator 1-0008: FAB: 0, FIN: 0 pfuze100-regulator 1-0008: pfuze100 found. SW1AB: 300 <--> 1875 mV at 1375 mV SW1C: 300 <--> 1875 mV at 1375 mV SW2: 800 <--> 1975 mV at 1375 mV SW3A: 400 <--> 1975 mV at 1350 mV SW3B: 400 <--> 1975 mV at 1350 mV SW4: 800 <--> 1975 mV at 1825 mV SWBST: 5000 <--> 5150 mV at 5000 mV VSNVS: 1000 <--> 3000 mV at 3000 mV VREFDDR: 750 mV VGEN1: 800 <--> 1550 mV at 1200 mV VGEN2: 800 <--> 1550 mV at 1500 mV VGEN3: 1800 <--> 3300 mV at 1800 mV VGEN4: 1800 <--> 3300 mV at 3000 mV VGEN5: 1800 <--> 3300 mV at 2500 mV VGEN6: 1800 <--> 3300 mV at 2800 mV Serial: IMX driver 21ec000.serial: ttymxc2 at MMIO 0x21ec000 (irq = 60, base_baud = 5000000) is a IMX 21f0000.serial: ttymxc3 at MMIO 0x21f0000 (irq = 61, base_baud = 5000000) is a IMX mxc_hdmi 20e0000.hdmi_video: create default modelist console [ttymxc3] enabled serial: Freescale lpuart driver imx sema4 driver is registered. [drm] Initialized drm 1.1.0 20060810 [drm] Initialized vivante 1.0.0 20120216 on minor 0 brd: module loaded loop: module loaded si476x-core 1-0063: Using default platform data. si476x-core 1-0063: No IRQ number specified, will use polling si476x-core 1-0063: Error while sending command 0x11 si476x-core 1-0063: The device in inconsistent power state ahci-imx 2200000.sata: fsl,transmit-level-mV not specified, using 00000024 ahci-imx 2200000.sata: fsl,transmit-boost-mdB not specified, using 00000480 ahci-imx 2200000.sata: fsl,transmit-atten-16ths not specified, using 00002000 ahci-imx 2200000.sata: fsl,receive-eq-mdB not specified, using 05000000 ahci-imx 2200000.sata: SSS flag set, parallel bus scan disabled ahci-imx 2200000.sata: AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl platform mode ahci-imx 2200000.sata: flags: ncq sntf stag pm led clo only pmp pio slum part ccc apst scsi0 : ahci_platform ata1: SATA max UDMA/133 mmio [mem 0x02200000-0x02203fff] port 0x100 irq 71 CAN device driver interface 2094000.can supply xceiver not found, using dummy regulator flexcan 2094000.can: device registered (reg_base=f0238000, irq=143) 2188000.ethernet supply phy not found, using dummy regulator pps pps0: new PPS source ptp0 libphy: fec_enet_mii_bus: probed fec 2188000.ethernet eth0: registered PHC device 0 ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver ehci-mxc: Freescale On-Chip EHCI Host driver usbcore: registered new interface driver usb-storage usbcore: registered new interface driver usb_ehset_test 2184800.usbmisc supply vbus-wakeup not found, using dummy regulator imx_usb 2184000.usb: Can't register ci_hdrc platform device, err=-517 platform 2184000.usb: Driver imx_usb requests probe deferral imx_usb 2184200.usb: Can't register ci_hdrc platform device, err=-517 platform 2184200.usb: Driver imx_usb requests probe deferral mousedev: PS/2 mouse device common for all mice egalax_ts 1-0004: Failed to read firmware version egalax_ts: probe of 1-0004 failed with error -5 2-0044 supply vdd not found, using dummy regulator input: isl29023 light sensor as /devices/virtual/input/input1 isl29023 2-0044: driver version 1.0 enabled i2c-core: driver [isl29023] using legacy suspend method i2c-core: driver [isl29023] using legacy resume method snvs_rtc 20cc034.snvs-rtc-lp: can't get snvs-rtc clock snvs_rtc 20cc034.snvs-rtc-lp: rtc core: registered 20cc034.snvs-rtc-lp as rtc0 i2c /dev entries driver IR NEC protocol handler initialized IR RC5(x) protocol handler initialized IR RC6 protocol handler initialized IR JVC protocol handler initialized IR Sony protocol handler initialized IR RC5 (streamzap) protocol handler initialized IR SANYO protocol handler initialized IR MCE Keyboard/mouse protocol handler initialized mxc_v4l2_output v4l2_out.35: V4L2 device registered as video16 mxc_v4l2_output v4l2_out.35: V4L2 device registered as video17 mxc_v4l2_output v4l2_out.35: V4L2 device registered as video18 mxc_v4l2_output v4l2_out.35: V4L2 device registered as video19 mxc_v4l2_output v4l2_out.35: V4L2 device registered as video20 2-000e supply vdd not found, using dummy regulator 2-000e supply vddio not found, using dummy regulator mag3110 2-000e: check mag3110 chip ID input: mag3110 as /devices/virtual/input/input2 mag3110 2-000e: mag3110 is probed i2c-core: driver [mag3110] using legacy suspend method i2c-core: driver [mag3110] using legacy resume method 2-001c supply vdd not found, using dummy regulator 2-001c supply vddio not found, using dummy regulator ata1: SATA link down (SStatus 0 SControl 300) ahci-imx 2200000.sata: no device found, disabling link. ahci-imx 2200000.sata: pass ahci_imx..hotplug=1 to enable hotplug input: mma845x as /devices/virtual/input/input3 imx2-wdt 20bc000.wdog: IMX2+ Watchdog Timer enabled. timeout=60s (nowayout=0) Bluetooth: HCI UART driver ver 2.2 Bluetooth: HCI H4 protocol initialized Bluetooth: HCI BCSP protocol initialized Bluetooth: HCIATH3K protocol initialized usbcore: registered new interface driver bcm203x usbcore: registered new interface driver btusb usbcore: registered new interface driver ath3k sdhci: Secure Digital Host Controller Interface driver sdhci: Copyright(c) Pierre Ossman sdhci-pltfm: SDHCI platform and OF driver helper mmc0: no vqmmc regulator found mmc0: no vmmc regulator found mmc0: SDHCI controller on 2190000.usdhc [2190000.usdhc] using ADMA mmc2: no vqmmc regulator found mmc2: SDHCI controller on 2198000.usdhc [2198000.usdhc] using ADMA Warning: No contiguous memory is reserverd for gpu.! Warning: Will use default value(134217728) for the reserved memory! Galcore version 5.0.11.41671 mmc2: Problem setting current limit! mmc2: new ultra high speed DDR50 SDHC card at address aaaa mmcblk2: mmc2:aaaa SU08G 7.40 GiB mmcblk2: p1 p2 mxc_vdoa 21e4000.vdoa: i.MX Video Data Order Adapter(VDOA) driver probed mxc_vpu 2040000.vpu: VPU initialized caam 2100000.caam: Instantiated RNG4 SH0 caam 2100000.caam: Instantiated RNG4 SH1 caam 2100000.caam: device ID = 0x0a160100 (Era 4) caam 2100000.caam: job rings = 2, qi = 0 caam algorithms registered in /proc/crypto caam_jr 2101000.jr0: registering rng-caam platform caam_sm: blkkey_ex: 4 keystore units available platform caam_sm: 64-bit clear key: platform caam_sm: [0000] 00 01 02 03 04 0f 06 07 platform caam_sm: 64-bit black key: platform caam_sm: [0000] e5 67 1a 32 44 12 3e 71 platform caam_sm: [0008] 35 de 20 2e 43 ce ec 82 platform caam_sm: 128-bit clear key: platform caam_sm: [0000] 00 01 02 03 04 0f 06 07 platform caam_sm: [0008] 08 09 0a 0b 0c 0d 0e 0f platform caam_sm: 128-bit black key: platform caam_sm: [0000] d4 b2 d2 cd de 16 e3 b1 platform caam_sm: [0008] 13 7c 1e af 4c a4 40 14 platform caam_sm: 192-bit clear key: platform caam_sm: [0000] 00 01 02 03 04 0f 06 07 platform caam_sm: [0008] 08 09 0a 0b 0c 0d 0e 0f platform caam_sm: [0016] 10 11 12 13 14 15 16 17 platform caam_sm: 192-bit black key: platform caam_sm: [0000] 3d 4f 1d c9 83 84 b5 8a platform caam_sm: [0008] 50 8e de 15 8e 02 00 8d platform caam_sm: [0016] 67 cd 31 2d c6 9c 13 60 platform caam_sm: [0024] 35 2d b7 c2 10 76 36 e9 platform caam_sm: 256-bit clear key: platform caam_sm: [0000] 00 01 02 03 04 0f 06 07 platform caam_sm: [0008] 08 09 0a 0b 0c 0d 0e 0f platform caam_sm: [0016] 10 11 12 13 14 15 16 17 platform caam_sm: [0024] 18 19 1a 1b 1c 1d 1e 1f platform caam_sm: 256-bit black key: platform caam_sm: [0000] c4 4e d7 b6 3e 43 2f 66 platform caam_sm: [0008] 36 df f3 c9 1c b4 d5 28 platform caam_sm: [0016] 4b 48 f0 e6 04 2e 87 2c platform caam_sm: [0024] 30 f4 10 8d c6 91 bd 77 platform caam_sm: 64-bit unwritten blob: platform caam_sm: [0000] 00 00 00 00 00 00 00 00 platform caam_sm: [0008] 00 00 00 00 00 00 00 00 platform caam_sm: [0016] 00 00 00 00 00 00 00 00 platform caam_sm: [0024] 00 00 00 00 00 00 00 00 platform caam_sm: [0032] 00 00 00 00 00 00 00 00 platform caam_sm: [0040] 00 00 00 00 00 00 00 00 platform caam_sm: [0048] 00 00 00 00 00 00 00 00 platform caam_sm: [0056] 00 00 00 00 00 00 00 00 platform caam_sm: [0064] 00 00 00 00 00 00 00 00 platform caam_sm: [0072] 00 00 00 00 00 00 00 00 platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: 128-bit unwritten blob: platform caam_sm: [0000] 00 00 00 00 00 00 00 00 platform caam_sm: [0008] 00 00 00 00 00 00 00 00 platform caam_sm: [0016] 00 00 00 00 00 00 00 00 platform caam_sm: [0024] 00 00 00 00 00 00 00 00 platform caam_sm: [0032] 00 00 00 00 00 00 00 00 platform caam_sm: [0040] 00 00 00 00 00 00 00 00 platform caam_sm: [0048] 00 00 00 00 00 00 00 00 platform caam_sm: [0056] 00 00 00 00 00 00 00 00 platform caam_sm: [0064] 00 00 00 00 00 00 00 00 platform caam_sm: [0072] 00 00 00 00 00 00 00 00 platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: 196-bit unwritten blob: platform caam_sm: [0000] 00 00 00 00 00 00 00 00 platform caam_sm: [0008] 00 00 00 00 00 00 00 00 platform caam_sm: [0016] 00 00 00 00 00 00 00 00 platform caam_sm: [0024] 00 00 00 00 00 00 00 00 platform caam_sm: [0032] 00 00 00 00 00 00 00 00 platform caam_sm: [0040] 00 00 00 00 00 00 00 00 platform caam_sm: [0048] 00 00 00 00 00 00 00 00 platform caam_sm: [0056] 00 00 00 00 00 00 00 00 platform caam_sm: [0064] 00 00 00 00 00 00 00 00 platform caam_sm: [0072] 00 00 00 00 00 00 00 00 platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: 256-bit unwritten blob: platform caam_sm: [0000] 00 00 00 00 00 00 00 00 platform caam_sm: [0008] 00 00 00 00 00 00 00 00 platform caam_sm: [0016] 00 00 00 00 00 00 00 00 platform caam_sm: [0024] 00 00 00 00 00 00 00 00 platform caam_sm: [0032] 00 00 00 00 00 00 00 00 platform caam_sm: [0040] 00 00 00 00 00 00 00 00 platform caam_sm: [0048] 00 00 00 00 00 00 00 00 platform caam_sm: [0056] 00 00 00 00 00 00 00 00 platform caam_sm: [0064] 00 00 00 00 00 00 00 00 platform caam_sm: [0072] 00 00 00 00 00 00 00 00 platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: 64-bit black key in blob: platform caam_sm: [0000] 9c 5f c6 a9 06 33 a5 a5 platform caam_sm: [0008] de 27 35 d8 15 e5 a1 4f platform caam_sm: [0016] f7 e1 e8 d0 74 23 fd a8 platform caam_sm: [0024] 68 81 69 46 49 13 17 3e platform caam_sm: [0032] 9c fc 15 f5 39 0a c6 3d platform caam_sm: [0040] d7 00 d0 49 9a bb 3f c3 platform caam_sm: [0048] e4 ef 05 f9 e5 38 da f8 platform caam_sm: [0056] 00 00 00 00 00 00 00 00 platform caam_sm: [0064] 00 00 00 00 00 00 00 00 platform caam_sm: [0072] 00 00 00 00 00 00 00 00 platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: 128-bit black key in blob: platform caam_sm: [0000] 84 6e 68 1d 03 6b f8 3b platform caam_sm: [0008] 09 da 7c 60 70 f4 df 65 platform caam_sm: [0016] 95 b5 48 9d 70 e4 47 ca platform caam_sm: [0024] e9 1f 5a e5 f0 43 26 a7 platform caam_sm: [0032] a9 90 65 92 42 ab fd 46 platform caam_sm: [0040] fb 3d e9 13 5c 24 f1 e9 platform caam_sm: [0048] 8b ca b4 c1 10 23 9d 66 platform caam_sm: [0056] 85 68 14 30 47 ce 43 c0 platform caam_sm: [0064] 00 00 00 00 00 00 00 00 platform caam_sm: [0072] 00 00 00 00 00 00 00 00 platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: 192-bit black key in blob: platform caam_sm: [0000] 57 a6 97 3f 43 96 cf 87 platform caam_sm: [0008] 1f 72 89 a6 a0 ad 0e 48 platform caam_sm: [0016] 7a ad 5c e4 6e 37 04 3d platform caam_sm: [0024] e4 95 c9 09 aa c7 12 bb platform caam_sm: [0032] 56 3c d7 dc 03 6b 2f e1 platform caam_sm: [0040] 16 a8 c2 c3 78 7a 95 ce platform caam_sm: [0048] 05 75 fc d4 a6 84 be d3 platform caam_sm: [0056] c7 df 01 4f bc 17 fd 9d platform caam_sm: [0064] 98 25 68 26 f6 9b 5c 99 platform caam_sm: [0072] 00 00 00 00 00 00 00 00 platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: 256-bit black key in blob: platform caam_sm: [0000] fe a8 22 dd 34 d2 00 3e platform caam_sm: [0008] 7e e8 32 93 59 a4 96 72 platform caam_sm: [0016] 47 9a dd 3e fe 2a 83 27 platform caam_sm: [0024] 92 05 b2 c8 cc 3e fe 64 platform caam_sm: [0032] 9b 6b 2d 47 bc 58 ca 1c platform caam_sm: [0040] 8d c2 b4 94 81 b1 80 bf platform caam_sm: [0048] 0e 59 38 50 47 61 09 f4 platform caam_sm: [0056] 22 c2 fa 92 56 92 df 2e platform caam_sm: [0064] 62 84 43 56 69 3a 85 f1 platform caam_sm: [0072] c4 f4 f7 54 46 4c 0b ca platform caam_sm: [0080] 00 00 00 00 00 00 00 00 platform caam_sm: [0088] 00 00 00 00 00 00 00 00 platform caam_sm: restored 64-bit black key: platform caam_sm: [0000] c8 bd 51 12 0f 8c 3c 9b platform caam_sm: [0008] 94 ac 86 67 55 65 75 24 platform caam_sm: restored 128-bit black key: platform caam_sm: [0000] d4 b2 d2 cd de 16 e3 b1 platform caam_sm: [0008] 13 7c 1e af 4c a4 40 14 platform caam_sm: restored 192-bit black key: platform caam_sm: [0000] 3d 4f 1d c9 83 84 b5 8a platform caam_sm: [0008] 50 8e de 15 8e 02 00 8d platform caam_sm: [0016] 47 6b e3 e8 62 6f 89 8f platform caam_sm: [0024] 7c dc 6f eb cc 73 30 1c platform caam_sm: restored 256-bit black key: platform caam_sm: [0000] c4 4e d7 b6 3e 43 2f 66 platform caam_sm: [0008] 36 df f3 c9 1c b4 d5 28 platform caam_sm: [0016] 4b 48 f0 e6 04 2e 87 2c platform caam_sm: [0024] 30 f4 10 8d c6 91 bd 77 snvs-secvio 20cc000.caam-snvs: can't get snvs clock snvs-secvio 20cc000.caam-snvs: violation handlers armed - non-secure state usbcore: registered new interface driver usbhid usbhid: USB HID core driver cs42xx8 1-0048: found device, revision 4 fsl-asrc 2034000.asrc: driver registered snd-soc-dummy snd-soc-dummy: ASoC: Failed to create platform debugfs directory imx-cs42888 sound-cs42888.27: cs42888 <-> 2024000.esai mapping ok imx-cs42888 sound-cs42888.27: snd-soc-dummy-dai <-> 2034000.asrc mapping ok imx-cs42888 sound-cs42888.27: cs42888 <-> 2024000.esai mapping ok imx-spdif sound-spdif.20: snd-soc-dummy-dai <-> 2004000.spdif mapping ok imx-audio-hdmi sound-hdmi.21: hdmi-hifi <-> hdmi_audio.3 mapping ok imx-tuner-si476x sound-fm.33: failed to find FM platform device imx-tuner-si476x: probe of sound-fm.33 failed with error -22 NET: Registered protocol family 26 TCP: cubic registered NET: Registered protocol family 10 sit: IPv6 over IPv4 tunneling driver NET: Registered protocol family 17 can: controller area network core (rev 20120528 abi 9) NET: Registered protocol family 29 can: raw protocol (rev 20120528) can: broadcast manager protocol (rev 20120528 t) can: netlink gateway (rev 20130117) max_hops=1 Bluetooth: RFCOMM TTY layer initialized Bluetooth: RFCOMM socket layer initialized Bluetooth: RFCOMM ver 1.11 Bluetooth: BNEP (Ethernet Emulation) ver 1.3 Bluetooth: BNEP filters: protocol multicast Bluetooth: BNEP socket layer initialized Bluetooth: HIDP (Human Interface Emulation) ver 1.2 Bluetooth: HIDP socket layer initialized 8021q: 802.1Q VLAN Support v1.8 Key type dns_resolver registered VGEN2: disabling SWBST: disabling SW4: disabling regulator-dummy: disabling imx mcc test is registered. usb_h1_vbus: 5000 mV usb_otg_vbus: 5000 mV ci_hdrc ci_hdrc.0: EHCI Host Controller ci_hdrc ci_hdrc.0: new USB bus registered, assigned bus number 1 ci_hdrc ci_hdrc.0: USB 2.0 started, EHCI 1.00 hub 1-0:1.0: USB hub found hub 1-0:1.0: 1 port detected ci_hdrc ci_hdrc.1: doesn't support gadget ci_hdrc ci_hdrc.1: EHCI Host Controller ci_hdrc ci_hdrc.1: new USB bus registered, assigned bus number 2 ci_hdrc ci_hdrc.1: USB 2.0 started, EHCI 1.00 hub 2-0:1.0: USB hub found hub 2-0:1.0: 1 port detected input: gpio-keys.18 as /devices/soc0/gpio-keys.18/input/input4 snvs_rtc 20cc034.snvs-rtc-lp: setting system clock to 1970-01-01 00:00:02 UTC (2) ALSA device list: #0: cs42888-audio #1: imx-spdif #2: imx-hdmi-soc usb 1-1: new high-speed USB device number 2 using ci_hdrc hub 1-1:1.0: USB hub found hub 1-1:1.0: 4 ports detected kjournald starting. Commit interval 5 seconds EXT3-fs (mmcblk2p2): using internal journal EXT3-fs (mmcblk2p2): recovery complete EXT3-fs (mmcblk2p2): mounted filesystem with ordered data mode VFS: Mounted root (ext3 filesystem) on device 179:2. devtmpfs: mounted Freeing unused kernel memory: 392K (809d9000 - 80a3b000) usb 1-1.2: new low-speed USB device number 3 using ci_hdrc Mount failed for selinuxfs on /sys/fs/selinux: No such file or directory random: init urandom read with 68 bits of entropy available input: DELL DELL USB Laser Mouse as /devices/soc0/soc.0/2100000.aips-bus/2184000.usb/ci_hdrc.0/usb1/1-1/1-1.2/1-1.2:1.0/0003:046D:C063.0001/input/input5 hid-generic 0003:046D:C063.0001: input: USB HID v1.10 Mouse [DELL DELL USB Laser Mouse] on usb-ci_hdrc.0-1.2/input0 usb 1-1.3: new low-speed USB device number 4 using ci_hdrc init: plymouth-upstart-bridge main process (177) terminated with status 1 init: plymouth-upstart-bridge main process ended, respawning init: plymouth-upstart-bridge main process (187) terminated with status 1 init: plymouth-upstart-bridge main process ended, respawning init: plymouth-upstart-bridge main process (190) terminated with status 1 init: plymouth-upstart-bridge main process ended, respawning input: Dell Dell QuietKey Keyboard as /devices/soc0/soc.0/2100000.aips-bus/2184000.usb/ci_hdrc.0/usb1/1-1/1-1.3/1-1.3:1.0/0003:413C:2106.0002/input/input6 hid-generic 0003:413C:2106.0002: input: USB HID v1.10 Keyboard [Dell Dell QuietKey Keyboard] on usb-ci_hdrc.0-1.3/input0 init: ureadahead main process (180) terminated with status 5 init: mounted-proc main process (204) terminated with status 1 DBG sensor data is at 7f010190 * Starting Mount filesystems on boot [ OK ] * Stopping Send an event to indicate plymouth is up [ OK ] * Starting Signal sysvinit that the rootfs is mounted [ OK ] * Starting Clean /tmp directory [ OK ] * Starting Populate and link to /run filesystem [ OK ] * Stopping Populate and link to /run filesystem [ OK ] * Stopping Clean /tmp directory [ OK ] * Stopping Track if upstart is running in a container [ OK ] * Starting Initialize or finalize resolvconf [ OK ] * Starting Signal sysvinit that virtual filesystems are mounted [ OK ] * ERROR: v4l2 capture: slave not found! Starting Signal sysvinit that virtual filesystems are mounted [ OK ] * Starting Bridge udev events into upstart [ OK ] * Starting Signal sysvinit that local filesystems are mounted [ OK ] * Starting Signal sysvinit that remote filesystems are mounted [ OK ] * Stopping Mount filesystems on boot [ OK ] * Starting device node and kernel event manager [ OK ] * Starting flush early job output to logs [ OK ] * Starting load modules from /etc/modules [ OK ] * Starting cold plug devices [ OK ] * Starting log initial device creation [ OK ] * Stopping flush early job output to logs [ OK ] * Stopping load modules from /etc/modules [ OK ] * Starting set console font [ OK ] * Starting system logging daemon [ OK ] * Stopping set console font [ OK ] * Starting userspace bootsplash [ OK ] * Stopping userspace bootsplash [ OK ] * Starting Send an event to indicate plymouth is up [ OK ] * Stopping Send an event to indicate plymouth is up [ OK ] * Starting configure network device security [ OK ] * Starting configure network device [ OK ] * Starting configure network device security [ OK ] * Starting configure network device security [ OK ] * Starting configure network device security [ OK ] * Starting configure network device [ OK ] * Starting Mount network filesystems [ OK ] * Starting Failsafe Boot Delay [ OK ] * Stopping Mount network filesystems [ OK ] * Starting configure network device [ OK ] * Starting Bridge socket events into upstart [ OK ] * Starting Bridge file events into upstart [ OK ] * Starting Mount network filesystems [ OK ] * Starting configure network device [ OK ] * Stopping Failsafe Boot Delay [ OK ] * Starting System V initialisation compatibility [ OK ] * Stopping System V initialisation compatibility [ OK ] * Starting System V runlevel compatibility [ OK ] * Starting save kernel messages [ OK ] * Starting configure network device security [ OK ] * Starting regular background program processing daemon [ OK ] * Stopping System V runlevel compatibility [ OK ] * Stopping Mount network filesystems [ OK ] * Stopping save kernel messages [ OK ] Re: Installing Ubuntu Rootfs on NXP i.MX6 boards HI Erik, I do not have a i.mx 6 QuadPlus board to try. If you tried and share me the results. Thanks! Wenming Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Have you chance to test it for i.MX 6QuadPlus SABRE-AI Board? Can be used a newer BSP rel_imx_4.1.15_1.1.0_ga?  Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi , I build one following the guidance for my im53qsb reference board. But I got kernel panic at imx5_pm_init, I am using the imx_v7_defconfig, is anybody else has this issue or has fix for this issue or can I remove the pm configuration. U-Boot 2015.04 (Oct 04 2016 - 12:17:39) Board: MX53 LOCO I2C: ready DRAM: 1 GiB MMC: FSL_SDHC: 0, FSL_SDHC: 1 *** Warning - bad CRC, using default environment In: serial Out: serial Err: serial Net: FEC Hit any key to stop autoboot: 0 switch to partitions #0, OK mmc0 is current device reading boot.scr ** Unable to read file boot.scr ** reading zImage 5997120 bytes read in 346 ms (16.5 MiB/s) Booting from mmc ... reading imx53-qsrb.dtb 24491 bytes read in 19 ms (1.2 MiB/s) Kernel image @ 0x72000000 [ 0x000000 - 0x5b8240 ] ## Flattened Device Tree blob at 71000000 Booting using the fdt blob at 0x71000000 Loading Device Tree to 8f552000, end 8f55afaa ... OK Starting kernel ... Booting Linux on physical CPU 0x0 Linux version 3.14.38 (lucid@ubuntu) (gcc version 4.8.5 (Linaro GCC 4.8-2015.06) ) #1 SMP PREEMPT Wed Oct 5 06:56:31 PDT 2016 CPU: ARMv7 Processor [412fc085] revision 5 (ARMv7), cr=10c53c7d CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache Machine model: Freescale i.MX53 Quick Start Board cma: CMA: reserved 320 MiB at bc000000 Memory policy: Data cache writeback CPU: All CPU(s) started in SVC mode. PERCPU: Embedded 8 pages/cpu @cb33f000 s8320 r8192 d16256 u32768 Built 1 zonelists in Zone order, mobility grouping on. Total pages: 259072 Kernel command line: console=ttymxc0,115200 root=/dev/mmcblk0p2 rw rootwait PID hash table entries: 4096 (order: 2, 16384 bytes) Dentry cache hash table entries: 131072 (order: 7, 524288 bytes) Inode-cache hash table entries: 65536 (order: 6, 262144 bytes) Memory: 699820K/1048576K available (7423K kernel code, 456K rwdata, 2584K rodata, 384K init, 432K bss, 348756K reserved, 0K highmem) Virtual kernel memory layout: vector : 0xffff0000 - 0xffff1000 ( 4 kB) fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB) vmalloc : 0xe0800000 - 0xff000000 ( 488 MB) lowmem : 0x80000000 - 0xe0000000 (1536 MB) pkmap : 0x7fe00000 - 0x80000000 ( 2 MB) modules : 0x7f000000 - 0x7fe00000 ( 14 MB) .text : 0x80008000 - 0x809ce000 (10008 kB) .init : 0x809ce000 - 0x80a2e080 ( 385 kB) .data : 0x80a30000 - 0x80aa20c0 ( 457 kB) .bss : 0x80aa20cc - 0x80b0e25c ( 433 kB) SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1 Preemptible hierarchical RCU implementation. RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=1. RCU: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=1 NR_IRQS:16 nr_irqs:16 16 TrustZone Interrupt Controller (TZIC) initialized CPU identified as i.MX53, silicon rev 2.1 Switching to timer-based delay loop sched_clock: 32 bits at 33MHz, resolution 30ns, wraps every 128849019873ns clocksource_of_init: no matching clocksources found Console: colour dummy device 80x30 Calibrating delay loop (skipped), value calculated using timer frequency.. 66.66 BogoMIPS (lpj=333333) pid_max: default: 32768 minimum: 301 Mount-cache hash table entries: 2048 (order: 1, 8192 bytes) Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes) CPU: Testing write buffer coherency: ok CPU0: thread -1, cpu 0, socket -1, mpidr 0 Setting up static identity map for 0x70710420 - 0x70710478 Brought up 1 CPUs SMP: Total of 1 processors activated (66.66 BogoMIPS). CPU: All CPU(s) started in SVC mode. devtmpfs: initialized VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 2 pinctrl core: initialized pinctrl subsystem regulator-dummy: no parameters NET: Registered protocol family 16 DMA: preallocated 256 KiB pool for atomic coherent allocations cpuidle: using governor ladder cpuidle: using governor menu Use WDOG1 as reset source syscon 53fa8000.iomuxc-gpr: regmap [mem 0x53fa8000-0x53fa800b] registered hw-breakpoint: debug architecture 0x4 unsupported. imx53-pinctrl 53fa8000.iomuxc: initialized IMX pinctrl driver bio: create slab at 0 3P2V: 3200 mV usb_vbus: 5000 mV i2c-core: driver [max17135] using legacy suspend method i2c-core: driver [max17135] using legacy resume method SCSI subsystem initialized usbcore: registered new interface driver usbfs usbcore: registered new interface driver hub usbcore: registered new device driver usb usbphy.1 supply vcc not found, using dummy regulator usbphy.2 supply vcc not found, using dummy regulator i2c i2c-1: IMX I2C adapter registered da9052: probe of 0-0048 failed with error -5 i2c i2c-0: IMX I2C adapter registered Linux video capture interface: v2.00 pps_core: LinuxPPS API ver. 1 registered pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <[email protected]> PTP clock support registered imx-ipuv3: probe of 18000000.ipu failed with error -22 MIPI CSI2 driver module loaded Advanced Linux Sound Architecture Driver Initialized. Bluetooth: Core ver 2.18 NET: Registered protocol family 31 Bluetooth: HCI device and connection manager initialized Bluetooth: HCI socket layer initialized Bluetooth: L2CAP socket layer initialized Bluetooth: SCO socket layer initialized Switched to clocksource mxc_timer1 cfg80211: Calling CRDA to update world regulatory domain NET: Registered protocol family 2 TCP established hash table entries: 8192 (order: 3, 32768 bytes) TCP bind hash table entries: 8192 (order: 4, 65536 bytes) TCP: Hash tables configured (established 8192 bind 8192) TCP: reno registered UDP hash table entries: 512 (order: 2, 16384 bytes) UDP-Lite hash table entries: 512 (order: 2, 16384 bytes) NET: Registered protocol family 1 RPC: Registered named UNIX socket transport module. RPC: Registered udp transport module. RPC: Registered tcp transport module. RPC: Registered tcp NFSv4.1 backchannel transport module. imx rpmsg driver is registered. Bus freq driver module loaded futex hash table entries: 256 (order: 2, 16384 bytes) VFS: Disk quotas dquot_6.5.2 Dquot-cache hash table entries: 1024 (order 0, 4096 bytes) NFS: Registering the id_resolver key type Key type id_resolver registered Key type id_legacy registered jffs2: version 2.2. (NAND) © 2001-2006 Red Hat, Inc. fuse init (API version 7.22) msgmni has been set to 2006 io scheduler noop registered io scheduler deadline registered io scheduler cfq registered (default) MIPI DSI driver module loaded imx-sdma 63fb0000.sdma: no iram assigned, using external mem imx-sdma 63fb0000.sdma: no event needs to be remapped imx-sdma 63fb0000.sdma: Direct firmware load failed with error -2 imx-sdma 63fb0000.sdma: Falling back to user helper imx-sdma 63fb0000.sdma: initialized Serial: IMX driver 53fbc000.serial: ttymxc0 at MMIO 0x53fbc000 (irq = 47, base_baud = 4166666) is a IMX console [ttymxc0] enabled serial: Freescale lpuart driver imx sema4 driver is registered. [drm] Initialized drm 1.1.0 20060810 [drm] Initialized vivante 1.0.0 20120216 on minor 0 brd: module loaded loop: module loaded CAN device driver interface 63fec000.ethernet supply phy not found, using dummy regulator libphy: fec_enet_mii_bus: probed ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver ehci-mxc: Freescale On-Chip EHCI Host driver usbcore: registered new interface driver usb-storage usbcore: registered new interface driver usb_ehset_test 53f80800.usbmisc supply vbus-wakeup not found, using dummy regulator ci_hdrc ci_hdrc.1: doesn't support gadget ci_hdrc ci_hdrc.1: EHCI Host Controller ci_hdrc ci_hdrc.1: new USB bus registered, assigned bus number 1 ci_hdrc ci_hdrc.1: USB 2.0 started, EHCI 1.00 hub 1-0:1.0: USB hub found hub 1-0:1.0: 1 port detected mousedev: PS/2 mouse device common for all mice input: mma8450 as /devices/virtual/input/input0 i2c-core: driver [isl29023] using legacy suspend method i2c-core: driver [isl29023] using legacy resume method i2c /dev entries driver IR NEC protocol handler initialized IR RC5(x) protocol handler initialized IR RC6 protocol handler initialized IR JVC protocol handler initialized IR Sony protocol handler initialized IR RC5 (streamzap) protocol handler initialized IR SANYO protocol handler initialized IR MCE Keyboard/mouse protocol handler initialized coda 63ff4000.vpu: Direct firmware load failed with error -2 coda 63ff4000.vpu: Falling back to user helper i2c-core: driver [mag3110] using legacy suspend method i2c-core: driver [mag3110] using legacy resume method imx2-wdt 53f98000.wdog: IMX2+ Watchdog Timer enabled. timeout=60s (nowayout=0) Bluetooth: HCI UART driver ver 2.2 Bluetooth: HCI H4 protocol initialized Bluetooth: HCI BCSP protocol initialized Bluetooth: HCIATH3K protocol initialized usbcore: registered new interface driver bcm203x usbcore: registered new interface driver btusb usbcore: registered new interface driver ath3k sdhci: Secure Digital Host Controller Interface driver sdhci: Copyright(c) Pierre Ossman sdhci-pltfm: SDHCI platform and OF driver helper mmc0: no vqmmc regulator found mmc0: no vmmc regulator found mmc0: SDHCI controller on 50004000.esdhc [50004000.esdhc] using ADMA mmc1: no vqmmc regulator found mmc1: no vmmc regulator found mmc0: host does not support reading read-only switch. assuming write-enable. mmc1: SDHCI controller on 50020000.esdhc [50020000.esdhc] using ADMA mmc0: new high speed SDHC card at address 0007 Job Ring Device allocation for transform failed mmcblk0: mmc0:0007 SD16G 14.5 GiB usbcore: registered new interface driver usbhid usbhid: USB HID core driver mmcblk0: p1 p2 sgtl5000 1-000a: sgtl5000 revision 0x11 imx-sgtl5000 sound.8: phandle missing or invalid imx-sgtl5000: probe of sound.8 failed with error -22 NET: Registered protocol family 26 TCP: cubic registered NET: Registered protocol family 10 sit: IPv6 over IPv4 tunneling driver NET: Registered protocol family 17 can: controller area network core (rev 20120528 abi 9) NET: Registered protocol family 29 can: raw protocol (rev 20120528) can: broadcast manager protocol (rev 20120528 t) can: netlink gateway (rev 20130117) max_hops=1 Bluetooth: RFCOMM TTY layer initialized Bluetooth: RFCOMM socket layer initialized Bluetooth: RFCOMM ver 1.11 Bluetooth: BNEP (Ethernet Emulation) ver 1.3 Bluetooth: BNEP filters: protocol multicast Bluetooth: BNEP socket layer initialized Bluetooth: HIDP (Human Interface Emulation) ver 1.2 Bluetooth: HIDP socket layer initialized 8021q: 802.1Q VLAN Support v1.8 Key type dns_resolver registered Unable to handle kernel paging request at virtual address f51a000c pgd = 80004000 [f51a000c] *pgd=00000000 Internal error: Oops: 5 [#1] PREEMPT SMP ARM Modules linked in: CPU: 0 PID: 1 Comm: swapper/0 Not tainted 3.14.38 #1 task: c8068000 ti: c806c000 task.ti: c806c000 PC is at mx5_cpu_lp_set+0x10/0xfc LR is at imx5_pm_init+0x64/0x80 pc : [<8001d804>] lr : [<809da58c>] psr: 60000113 sp : c806dedc ip : 00000072 fp : 00000000 r10: c806c038 r9 : 80a1ee7c r8 : 809d1190 r7 : 80aa2100 r6 : 80aa2100 r5 : 00000007 r4 : c801b600 r3 : f51a0000 r2 : 8001d8f0 r1 : 00000002 r0 : 00000002 Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment kernel Control: 10c5387d Table: 70004019 DAC: 00000015 Process swapper/0 (pid: 1, stack limit = 0xc806c238) Stack: (0xc806dedc to 0xc806e000) dec0: c801b600 dee0: 00000007 809da58c 80a2b80c 809d11b0 00000000 800088bc c800ccc0 808c7d28 df00: c8096200 80714144 00000000 00000000 00000000 8012a57c 00000000 80a446b0 df20: 60000113 00000001 cbfffc2e 8073b938 0000010b 800498e0 80996644 00000007 df40: cbfffc36 00000007 80a446a0 80a2b80c 00000007 80aa2100 80aa2100 809ce50c df60: 80a1ee7c 0000010b 80a1ee74 809cec38 00000007 00000007 809ce50c 8070fbd8 df80: 00000000 00002100 80706164 00000000 00000000 00000000 00000000 00000000 dfa0: 00000000 80706170 00000000 8000e278 00000000 00000000 00000000 00000000 dfc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 dfe0: 00000000 00000000 00000000 00000000 00000013 00000000 80000220 08040010 [<8001d804>] (mx5_cpu_lp_set) from [<809da58c>] (imx5_pm_init+0x64/0x80) [<809da58c>] (imx5_pm_init) from [<809d11b0>] (init_machine_late+0x20/0x28) [<809d11b0>] (init_machine_late) from [<800088bc>] (do_one_initcall+0xf8/0x144) [<800088bc>] (do_one_initcall) from [<809cec38>] (kernel_init_freeable+0x13c/0x1dc) [<809cec38>] (kernel_init_freeable) from [<80706170>] (kernel_init+0xc/0xe8) [<80706170>] (kernel_init) from [<8000e278>] (ret_from_fork+0x14/0x3c) Code: e3a03000 e92d4030 e1a01000 e34f351a (e593c00c) ---[ end trace 65acb852349b9d5b ]--- Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b T Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi, Please use the flashing procedure from our Ubuntu release blog post. Regards, Gary Re: Installing Ubuntu Rootfs on NXP i.MX6 boards My uboot print (couldn't find the document attachment option) baudrate=115200 board=sabrelite bootargs=console=ttymxc0,115200 root=/dev/mmcblk2p1 rootwait rw video=mxcfb1:dev=ldb,LDB-XGA,if=RGB666 video=mxcfb0:dev=hdmi,1920x1080M@60,if=RGB24 bootargs_base=setenv bootargs console=ttymxc0,115200 bootargs_mmc=setenv bootargs ${bootargs} root=/dev/mmcblk2p1 rootwait rw bootcmd=run bootcmd_mmc bootcmd_mmc=run bootargs_base bootargs_mmc;mmc dev 1;mmc read ${loadaddr} 0x800 0x4000;mmc read ${fdt_addr} 0x5000 0x800;bootm ${loadaddr} - ${fdt_addr} bootdelay=3 bootdevs=sata mmc usb clearenv=if sf probe || sf probe || sf probe 1 ; then sf erase 0xc0000 0x2000 && echo restored environment to factory default ; fi cmd_hdmi=fdt set fb_hdmi status okay;fdt set fb_hdmi mode_str 1280x720M@60; cmd_lcd=fdt set fb_lcd status disabled cmd_lvds=fdt set fb_lvds status disabled console=ttymxc1 cpu=6Q dfu_alt_info=u-boot raw 0x0 0xc0000 ethact=FEC ethaddr=00:19:b8:02:79:6c ethprime=FEC fdt_addr=0x18000000 fdt_high=0xffffffff filesize=70c00 initrd_high=0xffffffff kernel=uImage loadaddr=0x80800000 loadsplash=if sf probe ; then sf read ${splashimage} c2000 ${splashsize} ; fi reset_cause=1 rundfu=dfu 0 sf 0:0:25000000:0 stdout=serial,vga uboot_defconfig=nitrogen6q umsdevs=sata mmc upgradeu=for dtype in ${bootdevs}; do for disk in 0 1 ; do ${dtype} dev ${disk};load ${dtype} ${disk}:1 10008000 /6x_upgrade && source 10008000 ; done ; done usbnet_devaddr=00:19:b8:00:00:02 usbnet_hostaddr=00:19:b8:00:00:01 usbrecover=setenv ethact usb_ether; setenv ipaddr 10.0.0.2; setenv netmask 255.255.255.0; setenv serverip 10.0.0.1; setenv bootargs console=ttymxc1,115200; tftp boot 10800000 10.0.0.1:uImage-${board}-recovery&& tftpboot 12800000 10.0.0.1:uramdisk-${board}-recovery.img && bootm 10800000 12800000 Environment size: 1701/8188 bytes => boot switch to partitions #0, OK mmc1 is current device MMC read: dev # 1, block # 2048, count 16384 ... 16384 blocks read: OK MMC read: dev # 1, block # 20480, count 2048 ... 2048 blocks read: OK Wrong Image Format for bootm command ERROR: can't get kernel image! Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi Gary, thanks for your reply. Now the situation is like this : I want to interface an analog TV encoder (adv7343) to the RGB port of the imx6 (in BDSL). According to what I have researched, I need adding few modifications to the mxc_lcd.if of the linux kernel (3.14.52_1.1.0_ga) to use lcd driver in V_SYNC | H_SYNC mode to support this encoder. So I have no option (or do I?) rather than building a new kernel (as these drivers are builtin modules), and that's why I thought of building a bootable SD card myself.  I think the steps I followed in preparing SD should be okay, but to note what I've done in brief : ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ export DISK=/dev/sdg sudo dd if=/dev/zero of=${DISK} bs=1M count=10 cd binary/ sudo dd if=u-boot.imx of=${DISK} bs=512 seek=2 sync //------------create partition table sudo fdisk ${DISK} d       //delete all partitions currently on sd n       // create new partition p       // Primary partition 1       // partition number 1 2048 //default +1G    // n       // created 2d parition p 2 default default w sudo mkfs.vfat ${DISK}1 sudo mkfs.ext3 ${DISK}2 Mount ext3 SD partition to /media/rootfs: sudo mount ${DISK1} /media/kernel_target sudo mount ${DISK}2 /media/rootfs_target sudo cp –v binary/ i$target-$board.dtb /media/kernel_target    //dtb file sudo cp –v binary/uImage /media/kernel_target                        //uImage  sudo mv /media/rootfs/* /media/rootfs_target                             //root file sys ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- As you said the NAND flashed uboot already has required environment variables, and the uboot 'print' is attached to this comment. Now after the uboot prompt, I get the following message in console terminal : switch to partitions #0, OK mmc1 is current device MMC read: dev # 1, block # 2048, count 16384 ... 16384 blocks read: OK MMC read: dev # 1, block # 20480, count 2048 ... 2048 blocks read: OK Wrong Image Format for bootm command ERROR: can't get kernel image! So from this point, how should I proceed ? do these environment variables cause the issue or is SD card preparation wrong?  Thanks in advance ! Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi Anuradha, Actually for SabreLite you don't need to follow the above instructions, we already provide an Ubuntu image ready to go: https://boundarydevices.com/ubuntu-xenial-mx67-boards-august-2016-kernel-4-1-15/  Or if you'd rather use Debian: https://boundarydevices.com/debian-8-3-jessie-for-i-mx6-boards-february-2016-kernel-3-14-28/  Note that in our case all the NXP components like the graphics library, VPU support, Chrome hw acceleration are packaged. That means that when a new graphics library version is out, you just need to do "apt update && apt upgrade" and you are up-to-date. Hope this helps. Regards, Gary Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi Anuradha, please refer to https://community.nxp.com/message/836641?commentID=836641&et=watches.email.thread#comment-836641  this doc, about old uboot with new kernel. Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi, thanks for this excellent doc, and I have a question on rootfs system. I am using imx6 sabrelite board and have exactly followed the guidelines in this doc. I cross compiled all the files on an Ubuntu platform, and after the unmount and inserted the SD card to my board. The kernel boot process requests 6x_bootscript file and it seems like the older uBoot is operating fron Nand Flash. How should I solve this issue by setting my own uBoot to prompt and load rootfs and zImage ? Thanks Re: Installing Ubuntu Rootfs on NXP i.MX6 boards Hi all, I find the gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz compiler not working on ubuntu14.04, I tried with gcc-linaro-4.8-2015.06-x86_64_arm-linux-xxxx works. Regards! Wenming Re: Installing Ubuntu Rootfs on NXP i.MX6 boards HI, Does somebody encounter /bin/sh 1: arm-linux-gnueabihf-gcc not found issue? this is a symlink to arm-linux-gnueabihf-gcc-4.9.4. any fix to it is highly appreciated. Thanks aheard. wenming Re: Installing Ubuntu Rootfs on NXP i.MX6 boards How to connect it to HDMI Display? Is there any additional changes or If I connect to HDMI it will show desktop??
記事全体を表示
HOWTO: offline install S32K1 RTD 2.0.0 in S32DS v3.5 The release notes of S32K RTD usually mention which dependent software packages need to be installed. Taking SW32K1_S32M24x_RTD_R21-11_2.0.0_P04_D2404_ReleaseNotes.pdf as an example, we can see that the following software packages need to be installed: You must be logged into your account on NXP.com to gain access to the download link. 1. Download and install S32Design Studio 3.5: Click S32 Design Studio 3.5 – Windows/Linux -> 3.5 S32 Design Studio for S32 Platform v.3.5 -> S32DS.3.5_b220726_win32.x86_64.exe Note: For Windows OS, the user account designated for installing S32 Design Studio for the S32 Platform must be a member of the local Administrators security group. 2. Download and Install S32 Design Studio 3.5 Update 4 D2307: SW32_S32DS_3.5.4_D2307.zip (com.nxp.s32ds.update_3.5.4.20230707034206.zip) Since the SW32K1_S32DS_3.5.4_D2307.zip downloaded in step3 already contains the files of the SW32_S32DS_3.5.4_D2307.zip in the step2, we will skip this step here. 3. Download and Install S32 Design Studio 3.5 development packages for offline use, support for S32K1 (3.5.4_D2307): SW32K1_S32DS_3.5.4_D2307.zip  (com.nxp.s32ds.s32k1.dev.repository_1.0.0.202307062245.zip) Unchecking Contact all update sites during install to find required software can complete offline installation faster. 4. Click Real-Time Drivers for S32K1 -> Automotive SW - EB tresos Studio / AUTOSAR Configuration Tool Select and install one of the following updatesite.zip for S32K1 RTD 2.0.0: The latest S32K1 RTD version is usually recommended. However, if you need to use Reference Software or Premium Software (such as FreeRTOS, LIN Stack, TCP/IP Stack Structural , Core Self-Test (SCST), Automotive Math and Motor Control Library (AMMCLib), S32K ISELED), it is recommended to install the specific version of S32K1 RTD according to their release notes. 4.a) Download and install S32K1_S32M24X Real Time Drivers AUTOSAR 4.4 & R21-11 Version 2.0.0: SW32K1_S32M24x_RTD_4.4_R21-11_2.0.0_D2308_DS_Updatesite.zip 4.b) Download and install S32K1_S32M24X Real Time Drivers AUTOSAR 4.4 Version 2.0.0 P01: SW32K1_S32M24x_RTD_4.4_R21-11_2.0.0_P01_D2308_DS_Updatesite.zip 4.c) Download and install S32K1_S32M24X Real Time Drivers AUTOSAR R21-11 Version 2.0.0 P04: SW32K1_S32M24x_RTD_R21-11_2.0.0_P04_D2404_DS_updatesite.zip Activation | Installation | Licensing | Installer Download SDKs
記事全体を表示
i.MX 93 Memory Compatibility Guide The purpose of this document is to provide extended guidance for the selection of compatible LPDDR4/4X memory devices that are supported by the i.MX 93 series of processors. In all cases, it is strongly recommended to follow the DRAM layout guidelines outlined in the NXP Hardware Developer's Guides for the specific SoCs. The i.MX 93 series of processors supports different packages, and each have their own maximum supported LPDDR4/4x data rates. Please refer to the respective datasheets. Memory devices with binary densities (e.g., 1 GB, 2 GB, 4 GB) are preferred because they simplify memory management by aligning with system addressing schemes and reducing software complexity. NOTE: Some of the LPDDR4/4X devices may not support operation at low speeds and in addition, DQ ODT may not be active, which can impact signal integrity at these speeds. If low-speed operation is planned in the use case, please consult with the memory vendor about the configuration aspects and possible customization of the memory device so correct functionality is ensured. LPDDR4/4X - Maximum Supported Densities SoC Max Data bus width Maximum density Assumed memory organization Notes i.MX 93 (i.MX 93xx) 16-bit 16 Gb / (2 GB) single rank, single channel device with 17-row addresses (R0 - R16) 1, 2, 3   LPDDR4/4X - List of Validated Memories The validation process is an ongoing effort - regular updates of the table are expected. SoC Density Memory Vendor Validated Memory Part# Notes i.MX 93 16 Gb/ (2 GB) Micron LPDDR4/4x: MT53E1G16D1FW-046 AAT:A  (Z32N) MT53E1G16D1ZW-046 AAT:C (Z42N) 7 4, 8 8 Gb/ (1 GB) Micron LPDDR4/4x: MT53D512M16D1DS-046 AAT (Z11M) 4, 10 16 Gb/ (2 GB) Micron LPDDR4/4x: MT53E1G32D2FW-046 AUT:B (Z42M) 4, 5, 10 8 Gb/ (1 GB) Nanya LPDDR4: NT6AN512M16AV-J1I LPDDR4x: NT6AP512M16BV-J1I 4, 8 4 Gb/ (512 MB) Nanya LPDDR4x: NT6AP256M16AV  4, 8 16 Gb/ (2 GB) Kingston LPDDR4: D1611PM3BDGUI-U 4, 8 16 Gb/ (2 GB) Kingston LPDDR4: C1612PC2WDGTKR-U  7, 9 4 Gb/ (512 MB) ISSI LPDDR4: IS43LQ16256B-062BLI 4, 8 2 Gb / (256 MB) ISSI LPDDR4: IS43LQ16128A-062BSLI 4, 6, 8   8 Gb/ (1 GB) CXMT LPDDR4/4x: CXDB4CBAM-EA-M 4, 9 16 Gb/ (2 GB) JSC LPDDR4x: JSL4BAG167ZAMF  4, 8 8 Gb/ (1 GB) JSC LPDDR4x: JSL4B8G168ZAMF-05x  4, 8 4 Gb/ (512 MB) JSC LPDDR4x: JSL4A4G168ZAMF-05 4, 8 2 Gb / (256 MB) Winbond  LPDDR4x: W66BQ6NBHAGJ 4, 6, 8 8 Gb / (1 GB) IM (Intelligent Memory) LPDDR4x: IM8G16L4JCB-046I 4, 11 16 Gb / (2 GB) IM (Intelligent Memory) LPDDR4/4x: IMAG16L4KBBG 4, 8 4 Gb / (512 MB) Samsung LPDDR4: K4F4E164HD-THCL 4, 8 8Gb / (1 GB) AM (Alliance Memory) LPDDR4X: AS4C512M16MD4V-053BIN 4, 8 4 Gb / (512 MB) ISSI LPDDR4/4X: IS43LQ16256B-053BLI 4, 8 8 Gb / (1 GB) ISSI LPDDR4/4X: IS46LQ16512B-046BLA2 4, 8 32Gb / (4GB) 16 Gb / (2Gb) usable by i.MX 93 ISSI LPDDR4/4X: IS46LQ32K01B-046BLI 4, 8   Note 1: The numbers are based purely on the IP documentation for the DDR Controller and the DDR PHY, on the settings of the implementation parameters chosen for their integration into the SoC, SoC reference manual and on the JEDEC standards JESD209-4B/JESD209-4-1 (LPDDR4/4X). Therefore, they are not backed by validation, unless said otherwise and there is no guarantee that an SoC with the specific density and/or desired internal organization is offered by the memory vendors. Should the customers choose to use the maximum density and assume it in the intended use case, they do it at their own risk. Note 2: Byte-mode LPDDR4/4X devices (x16 channel internally split between two dies, x8 each) of any density are not supported therefore, the numbers are applicable only to devices with x16 internal organization (referred to as "standard" in the JEDEC specification). Note 3: The SoC also supports dual rank single channel devices therefore, 16Gb/2GB density can be also achieved by using a dual rank single channel device with 16-row addresses (R0 - R15). Note 4: The memory part number did not undergo full JEDEC verification however, it passed all functional testing items. Note 5: This is a dual channel x32 device. Since i.MX93 only supports 16-bit LPDDR4/X data bus, it can only interface with one of the channels and therefore, utilize only half of the device's density. As indicated in the table - the device has 32Gb/4GB density however, only 16Gb/2GB can be used. There is no functional problem with using only one channel of a dual channel device as the channels are independent in LPDDR4/4X.  Note 6: This is a new JEDEC 100 ball package, half the size of the standard 200 ball package. This 100 ball package has the same performance and functionality as the 200 ball package, and has the added advantage of being smaller and cheaper than the standard package. Note 7: This device has been EoLed by the manufacturer and has been updated by a new memory part number  Note 8: Part is active. Reviewed Q3 2026 Note 9: Part is obsolete. Note 10: This device will be EoLed in Q2 24 by the manufacturer and will not be updated by a new memory part number Note 11: DQ eye marginalities were identified during TSA analysis. vTSA and stability testing did not identify any issues.
記事全体を表示
PN7462AU FreeRTOS:无法从 heap_3 切换到 heap_4,系统卡死 + 堆内存使用情况可见性 大家好,我正在使用搭载 FreeRTOS 的 PN7462AU 平台,SDK 示例已配置为使用 heap_3.c。我目前遇到了内存溢出问题,想更深入地了解堆的配置。 由于 heap_3 使用标准库中的 malloc()/free(),因此无法使用 xPortGetFreeHeapSize() 等函数以及堆统计信息。为了了解堆的使用情况,并可能增加可用堆空间,我尝试通过禁用 heap_3.c 来切换到 heap_4.c并启用 heap_4.c。然而,进行此项更改后,应用程序在启动时会卡住。 我有以下几个问题: 在 PN7462AU 上将 heap_3 切换为 heap_4 是否安全且值得推荐? 如何确定 heap_3 当前可用的内存量? 由于 heap_3 不支持 xportgetFreeHeapSize (),因此推荐使用哪些方法来监测堆使用情况和检测内存耗尽? 从 heap_3 迁移到 heap_4 时,还需要进行哪些额外的配置更改(例如 configTOTAL_HEAP_SIZE、链接器脚本更改、内存区域等)? 如果能提供关于 PN7462AU 和 FreeRTOS 的具体指导或示例,将不胜感激。 谢谢 核心与内存 Re: PN7462AU FreeRTOS: Unable to switch from heap_3 to heap_4, system stuck + heap usage visibility 你好@uday_gowda , NFC读取器库提供了示例,展示了如何使用 PN7462 实现 FreeRTOS,这可能会有所帮助。另外,我建议参阅AN11784 ,它提供了有关将 RTOS 与 PN7462 集成的指导,您可以参考该文档。 MCUXpresso IDE 还包含多个用于 FreeRTOS 应用程序的调试功能。特别是,“堆使用情况视图”可以帮到你。更多详情请参阅MCUXpresso IDE 25.06 FreeRTOS 调试指南第 3.6 章。 最后,请注意PN7462只有12k的SRAM。 BR 哈比卜
記事全体を表示
什么是工业以太网协议?EtherCAT、PROFINET 和 EtherNet/IP 详解(日语博客) 目录 介绍 什么是工业以太网? 工业网络的基本结构 1. EtherCAT(超高速、低延迟方向) 2. Profinet(灵活性/互操作性) 3. 以太网/IP(IT 亲和性/标准化) 总结 介绍   工业设备通信正迅速从传统的现场总线转向基于以太网的系统。而这一转变的核心正是工业以太网协议。   本文重点介绍三种广泛使用的协议,并清楚地解释它们在技术结构和设计理念上的差异。 以太网 PROFINET 以太网/IP (※评估和实施方法将在另一篇文章中详细说明。) 什么是工业以太网?   简而言之,工业以太网是一种通信技术,与通用以太网相比,它增强了“实时性能”、“鲁棒性”和“诊断能力” 。 标准以太网在工业应用中面临以下挑战:   这是一种尽力而为的通信方式,延迟会根据负载和切换过程而变化。 可能会出现丢帧(丢包)现象。 TCP/UDP/IP 并非为实时控制而设计。 为了应对这些挑战,工业以太网协议采用独特的方法来满足以下要求:   实时通信 同步控制 冗余配置 诊断功能   ■ 理解工业以太网的关键点:OSI 模型   理解工业以太网的关键之一在于理解“实时性能是在哪一层实现的”,而OSI参考模型有助于理解这一点。OSI模型将通信功能划分为七层,每一层都扮演着不同的角色,从物理信号的传输到应用处理。 工业以太网以 OSI 的每一层为基础,并针对每种协议扩展和优化特定层,从而实现实时性能和可靠性。 工业以太网中的 OSI 参考模型: 等级制度 姓名 工业以太网的作用 7 应用 通信数据内容(设备控制、状态、设置) 6 推介会 数据编码、压缩和加密 5 会议 建立、维护和终止通信 4 运输 通信质量控制(TCP/UDP),数据传输保证。 3 网络 通过 IP 地址路由(确定数据包目的地) 2 数据链路 通过 MAC 地址进行数据传输,创建以太网帧 1 物理 电缆(Cat5e/6 等)、连接器和物理信号传输。 工业以太网协议所使用的层: 以太网协议各特性: 协议 等级制度 特点 以太网 2 无需使用IP即可实现高速传输 PROFINET RT/IRT 是L2 NRT L3/4 RT 和 IRT 的区分使用。 以太网/IP 3/4 基于标准以太网 这些特征差异直接导致以下结果: 速度(实时性能) 实施成本 适用范围   工业网络的基本结构   工业以太网通常具有共同的基本结构,而本文讨论的三种协议(EtherCAT、PROFINET 和 EtherNet/IP)也不例外。 ■ 系统和设备结构   工业网络大致可以分为“控制器侧”和“设备侧”。   主设备(控制器): 它在控制整个网络中起着核心作用。 启动通信并设置连接参数 发送输出数据和接收输入数据 沟通管理和终止流程 典型例子:PLC、工业PC 子设备(设备): 响应连接请求并发送和接收必要数据。 接收输出数据并发送输入数据 网络自通知 根据需要发送警报 典型例子:传感器、伺服电机、执行器 ■ 沟通方式:周期性沟通与非周期性沟通 连接建立后,主设备和子设备之间会以极短的时间间隔持续交换I/O数据。根据应用场景的不同,这种通信可分为“周期性通信”和“非周期性通信”。 周期性沟通(周期性沟通) 应用:用于实时控制 - 对于需要实时性能的应用,例如电机控制和I/O控制,至关重要。 非循环通信 用途:配置、诊断和事件管理 - 用于读取和写入配置数据、诊断信息和意外事件通知。 ■支持实时性能的关键概念:同步(时钟) 在工业系统中,“所有设备都按照同一时间标准运行”这一点至关重要。 例如,如下图所示,如果多个设备在不同的时间 Δt₁、Δt₂ 和 Δt₃ 获取数据,则控制器 (PLC) 接收到的信息将不是来自同一时间的数据,而是时间上交错的“单独的快照”。 结果: 位置错位的发生 错误的控制判断 特别是运动控制中的关键同步误差 这可能会导致诸如此类的问题。 因此,在工业以太网中,设备间时钟同步机制是一个至关重要的要素。 三种协议的技术比较总结   以太网 PROFINET 以太网/IP 运营组织 贝乔夫 / ETG(EtherCAT 技术集团) 西门子 / PNO(PROFIBUS & PROFINET International) 洛克威尔 / OVDA(开放设备网络供应商协会) 沟通方式 摘要帧(子设备在帧中读取和写入数据) 基于第 2 层的实时通信 (RT/IRT) CIP:显式(TCP)/隐式(UDP)通信模型 主要用途 运动控制,超高速控制 通用型FA、过程控制以及广泛的工业应用 工厂自动化、PLC网络、机器人 周期 约 31.25μs 级(取决于具体实现,速度非常快) RT:几毫秒 IRT:31.25μs(取决于具体实现方式,TSN/IRT) 通常情况下,延迟级别为 10 毫秒(基于 UDP)。 同步方法 分布式时钟(DC) IRT:精确同步(PTCP) CIP 同步(IEEE1588) 设备型号 PDO/SDO(基于 EtherCAT 的 CANopen) 插槽/子插槽(GSDML) 类/实例/属性对象模型 拓扑 线型、树型、环型(低延迟) 线、星、环(MRP/MRPD) 线、星、环(DLR) 优势 简而言之,就是高速低延迟/硬件处理。 多种类别和诊断功能,高度互操作性 广泛应用于标准以太网基础设施,易于理解。 接下来,我们将解释每项技术特点。 1. EtherCAT (超高速、低延迟导向型) ■ EtherCAT 概述 由 Beckhoff Automation 开发,ETG 管理。 它运行于第 2 层,没有 IP/TCP/UDP 开销。 周期时间:约31.25微秒(取决于具体实现方式) 同步精度:±1μs 或更小 ■ 网络配置 主设备(主控设备)和  多个子设备(从设备) 该子设备配备了ESC ( EtherCAT 从控制器),并使用专用硬件进行高速处理。 虽然线路配置是基本设置,但它也支持使用环形结构的冗余配置。 图: EtherCAT网络配置图 EtherCAT 最显著的特点是“即时处理”。单个帧在经过所有设备的过程中都会被处理,每个设备都会在传输过程中读取和写入数据。由于处理工作由专用硬件(ESC)完成,无需 CPU 参与,因此延迟极低。   图: EtherCAT网络传输图像 ■ 相关协议转换:EtherCAT(IEC 61784-2-12) • CoE (CAN over EtherCAT):通过EtherCAT帧隧道化,使CANopen通信得以使用。 • FoE (File over EtherCAT):一种通过 EtherCAT 传输文件的协议。 EoE (以太网 over EtherCAT):一种封装和传输常规以太网帧(例如TCP/IP )的机制。 图:主设备(MDevice)的EoE协议转换 2. PROFINET (灵活性/互操作性) ■ PROFINET 概述 由西门子开发,PNO 管理。 基于标准以太网 根据应用场景选择RT/IRT/NRT。 生产者/消费者模式 ■ 网络配置 灵活支持各种拓扑结构,例如线型、星型和混合型拓扑结构。 它还支持通过MRP (媒体冗余协议) / MRPD(IRT)实现环冗余。 PROFINET的通信性能按“一致性等级( CC )”进行分类。 CC-A :基本实时,所有IT服务(例如TCP/IP )均可无限制使用。 CC-B :为通用FA的RT添加网络诊断和其他功能。 CC-C ( IRT ): 31.25 μs级运动应用 ■ 沟通类型 NRT(非实时):记录读/写:非周期性地发送和接收参数和设置。报警:通知设备异常情况。 RT:周期性I/O通信,通常为1 毫秒 IRT(等时性):时间同步的高速周期性通信,通常为 31.25 微秒。 → 实现了高度灵活性、详细的诊断和高度互操作性。 3. 以太网/IP ( IT兼容性/标准化) ■以太网/IP概述 EtherNet/IP 由 ODVA(开放设备网络供应商协会)管理。 它采用 CIP(通用工业协议),该协议运行在 TCP/UDP/IP(L3/L4)之上的一层。 面向对象模型 ■ 网络配置 支持线型、星型和环形拓扑结构。 支持使用DLR (设备级环)的高速冗余。 主设备 →扫描器:作为控制器运行,通常发起请求。 子设备 →适配器:响应该请求的设备。 ■ EtherNet/IP 的关键特性:“面向对象模型” 每个设备都被定义为由“类”、“实例”、“属性”和“服务”组成的对象的集合。 类:函数类型(例如,恒等函数、汇编函数) 实例:该类的特定实例。 属性:每个实例所具有的特定值。 服务:操作细节,例如读写。 这使得设备的功能结构非常清晰,从而实现了与不同制造商之间的高度兼容性。 ■ 沟通类型 显式消息连接 使用TCP ,读取和写入配置值,执行自我诊断,并记录日志。 分别发出一次“读”和一次“写”之类的指令。 隐式消息传递 - I/O 连接 它使用UDP 协议,可以实现实时通信,例如循环I/O ,扫描器会定期发送和接收I/O数据。   EtherNet/IP的关键特性是它能够使用隐式( UDP )协议实现高速I/O通信。 总结 工业以太网不仅仅是通信;它是一种能够实现实时控制的系统技术。本文介绍的三种协议分别通过不同的方法来实现这一目标。 协议 设计理念 主要用途 以太网 高速、低延迟 运动控制 PROFINET 灵活性和集成性 通用工厂自动化(FA) 以太网/IP IT集成 PLC网络   作为未来的发展趋势,产业网络将朝着以下方向发展。 TSN (时间敏感网络) 安全(包括符合《社区再投资法案》) 与OPC UA集成 换句话说,关键在于“实时性× IT集成×安全性”的融合。 下次, 为什么i.MX RT1180适用于工业以太网协议? 实际实施和评估程序 我们将详细解释这一点。 ============================= 我们目前无法 回复 此帖子“ 评论”部分留下的评论。 对于由此造成的不便,我们深表歉意,但 在进行咨询时, 请 参考“ NXP 技术问题 - 如何联系我们 ( 日语博客 ) ” 。 (如果您已经是 恩智浦的 分销商或 与 恩智浦 有合作关系 ,您可以直接咨询您的代表。 ) 工业设备通信正迅速从传统的现场总线转向基于以太网的系统。而这一转变的核心正是工业以太网协议。 本文重点介绍三种广泛使用的协议,并清楚地解释它们在技术结构和设计理念上的差异。 以太网 PROFINET 以太网/IP (※评估和实施方法将在另一篇文章中详细说明。)   本文将介绍主导工业以太网的三大协议:EtherCAT、PROFINET 和 EtherNet/IP,并清晰地解释它们在技术结构和设计理念上的差异。   (阅读时间:15分钟) i.MX RT 处理器 介绍 日本博客
記事全体を表示
由于 高效密码学标准\\(SEC\\)/CAAM 未初始化,BL2 中的安全启动失败 安全启动在 BL2 中失败看起来是因为 高效密码学标准(SEC)/CAAM 未初始化。在仔细研究代码时,似乎没有直接调用 sec_init,但看起来配置函数是在它之前被调用的,因此全局变量无法获得 高效密码学标准(SEC) 区块地址的定义常量。即 NXP_CAAM_ADDR 值。当我对这个值进行硬编码时,我可以让它稍微进一点,但随后我出现了无法刷新/重置任务铃声的错误。 QorIQ LS1设备 Re: Secure boot fails in BL2 because SEC/CAAM not initialized 你好 BL2中的这种安全启动失败是TF-A(可信固件-A)初始化流程中典型的 " chicken and egg " 问题,专门针对恩智浦Layerscape或i.MX平台。 当你对 NXP_CAAM_ADDR 进行硬编码并克服地址错误但遇到 Job Ring 刷新/RESET 错误时,这通常意味着 CAAM 硬件块要么没有时钟,要么处于过渡状态,要么被安全违规阻止。   1.初始化序列 sec_init 没有在配置函数之前被调用的原因,很可能是 bl2_main.c 中的顺序造成的。或特定平台的 plat_bl2_el3_setup.c 。 修复:确保在 bl2_el3_early_platform_setup 内调用 plat_ls_sec_init() (或与 SoC 类似的函数)。 全局变量问题:如果 NXP_CAAM_ADDR 没有弹出,请检查平台的 plat_get_caam_address() 函数是否返回 0,或者 BL2 转换表中的数据段是否没有正确映射。   2.为什么工作环冲洗失败 如果代码试图刷新作业环却失败了,请考虑以下三个罪魁祸首: 安全违规(最有可能):如果 SoC 处于 " Closed " 模式(已熔丝),CAAM 可能在从 bootROM 过渡到 BL2 的过程中触发了安全违规。网络安全违规会使 CAAM 处于 " Halted " 状态,在该状态下,在违规行为被清除之前,无法重置或使用工作戒指。 缺少时钟/功率:如果在 BL2 期间未在 DCFG(设备配置)或 PCC(外设时钟控制)中明确启用 高效密码学标准(SEC) 模块时钟门,则寄存器将可访问(如果幸运的话),但内部逻辑(如 Job Ring 控制器)不会响应重置命令。 主 ID (MID) 不匹配:作业环需要特定的主 ID 配置,以便 BL2(在 EL3 中运行)能够"自己的" 。如果 BootROM 将振铃分配到不同的 MID 但没有释放它们,BL2 在尝试 RESET 它们时会超时。   3.调试步骤 检查 SEC_VID(版本 ID)和 SEC_STA(状态)寄存器:在 Job Ring 重置呼叫之前阅读这些寄存器。如果状态寄存器显示网络安全违规,则需要找出触发该违规的原因(通常是前一阶段的身份验证失败)。 验证重置位:确保在切换重置位后等待足够长的时间。在某些芯片版本中,CAAM 重置所需的时间比 SDK 中提供的标准延迟环路长。 检查 TrustZone 设置:确保您正在访问的任务环在中央安全单元 (CSU) 或资源域控制器 (RDC) 中标记为 " Secure "。 此致 Re: Secure boot fails in BL2 because SEC/CAAM not initialized 开机后,但在加载 SRKH 镜像寄存器并释放 CPU 之前,如果我检查 DCFG_CCSR_DEVDISR1 寄存器,我会发现位 22 (高效密码学标准(SEC)) 设置为 1。根据有关重置的文档,该寄存器应全部为 0。在启动过程的这么早期,这个值可能在哪里设置?我需要对 pbl 命令做些什么吗?RCW 是否有误?我确实看到在低功耗安全寄存器中检测到电源故障,但我也看到配置寄存器显示应忽略/不应对低功率篡改采取行动。 Re: Secure boot fails in BL2 because SEC/CAAM not initialized 好吧,谁能帮我确认一下? 在 TF-A 驱动程序/nxp/dcfg/dcfg.c 中我找到了一个用于检查是否启用 高效密码学标准(SEC) 的计算方法。它在 SVR_SEC_MASK 和寄存器 0x1ee00a4 的值之间进行比特& ,寄存器 0x1ee00a4 是一个只读寄存器。如果我正确读取了字段,那么 16-23 位的状态是否为 ls1043 或 ls1023,是否 高效密码学标准\(SEC\) 硬件是否启用。我看到该位的值为 0x00000001。哪个会是这个芯片上禁用的高效密码学标准(SEC)封锁,对吗?我参考了完整零件号的示意图并得到了 LS1043ASN7MNLB,当我查看恩智浦的网站显示高效密码学标准(SEC)已禁用时。这是否导致了我的安全启动问题?高效密码学标准(SEC)能否启用这款芯片,还是在它离开恩智浦后就一成不变了?我们需要考虑其他芯片吗,还是可以在没有高效密码学标准(SEC)的情况下进行安全启动? Re: Secure boot fails in BL2 because SEC/CAAM not initialized 支持人工智能复制粘贴?如果我们要走这条路,就需要进一步调整代理。如果 SoC 知道自己的代码库,那么它就应该知道 NXP_CAAM_ADDR 是在头文件中静态定义的,而不是先填充的。
記事全体を表示
Physical connections for INT2 on MPL3115A2 and nRST on MPL115A2 Hi, I'd like to use interchangeably either a MPL115A2 or a MPL3115A2 in my circuit and I'm wondering if I can get away with not using a DNF/resistor on pin 5 and just connecting it to VDD. This is the RST line (active low) on the 115A2 but is INT2 on the 3115A2. What would the effect be if the INT2 line was internally pulling low and the pin is connected to VDD? Is the internal resistance enough that it wouldn't overheat/blow up? Would it be power hungry? Is this a CMOS type output? etc. etc. I'd be running them both from 3.3V on VDD/VDDIO. Any information appreciated - The only information I can find in the datasheets on this is VOH/VOL for INT1 and INT2 with a test condition I_o of 500uA. Pressure Sensors Re: Physical connections for INT2 on MPL3115A2 and nRST on MPL115A2 Thanks Tomas, your reply is very helpful. Re: Physical connections for INT2 on MPL3115A2 and nRST on MPL115A2 Timothy, By default all interrupts are disabled (CTRL_REG4 = 0x00), so the INT2 pin will be high all the time. If you want to use any of the internal interrupts (Data Ready, FIFO etc.), just set a corresponding bit in the CTRL_REG4 register and then route the interrupt to the INT1 pin by setting a corresponding bit in the CTRL_REG5 register. In both cases the INT2 pin can be connected directly to VDD without any problems. I hope it helps. Regards, Tomas
記事全体を表示
首次成功设计 KW47(汽车级)或 MCX W72(物联网 / 工业级)PCB 的最佳方法 /*** 2025 年 4 月最新免责声明: - KW47、MCX W72 是 KW45 和 MCX W71 的直接衍生产品 —— 请将本页面加入书签以获取未来更新 - 本文基于 KW45、K32W148、MCX W71 进行早期启用说明,有待 2025 年 KW47 和 MCX W72 更广泛发布时更新 -- 大部分设计文档(包括数据手册、参考手册和硬件制造文件)可应要求提供--  ***/ 请参考以下重要链接,了解如何使用 KW47 或 MCX W72 设计 PCB,以及有关射频性能、低功耗和射频认证 (CE/FCC/IC) 的所有信息。 KW47 产品 NXP 官网页面:https://www.nxp.com/products/KW47 MCXW72 产品 NXP 官网页面:https://www.nxp.com/products/processors-and-microcontrollers/arm-microcontrollers/general-purpose-mcus/mcx-arm-cortex-m/mcx-w-series-microcontrollers/mcx-w72x-secure-and-ultra-low-power-mcus-for-matter-thread-zigbee-and-bluetooth-le:MCX-W72X KW-MCXW-EVK 入门指南 NXP 官网页面(待 KW47/MCXW72 发布) KW47-LOC 入门指南 NXP 官网页面(待 KW47/MCXW72 发布) MCXW72-LOC 入门指南 NXP 官网页面(待 KW47/MCXW72 发布) 硬件  KW47 和 MCX W72 EVK 开发板:初步附件  KW47 LOC 信道探测板 - 原理图:初步附件  KW47-MCXW72-EVK 硬件指南:可应要求提供    HVQFN48 封装规格:SOT619-17 (D)(待 SOT619-17 (DD) 发布)    KW47-MCXW72-EVK 用户手册(待 KW47/MCXW72 发布)    最小物料清单(附件)>> KW45 - MCX W71 - KW47 - MCX W72 Minimum BoM Presentation Customers July25.pdf   DC-DC 管理指南 (AN13831):KW45/K32W148 - 电源管理硬件 (nxp.com)(KW45 的内容适用于 KW47,待 KW47/MCXW72 版本发布)   Design-In 检查清单:请参阅本文底部附件   射频匹配:S 参数(附件)(待 KW47/MCXW72 发布)   PCB 上纽扣电池应用处理方法:AN14664_Coincell_Hardware_recommendation_Rev1.0.pdf 说明:“由于射频性能取决于 PCB 布局和制造工艺,基于 NXP 建议制作的 PCB 原型必须进行微调,以确保最终产品平台达到预期的射频合格标准。” 在 EVK 上,为连接 M10 模块进行射频测试,建议使用 μFL 转 SMA 电缆: CSH-SGFB-200-UFFR TE Connectivity / Linx Technologies | Mouser France 在 KW47-LOC 或 MCXW72-LOC 上,需安装特定的 SMA 连接器以实现连接:TE Connectivity Ltd CONSMA021.062-G 从 KW45 到 KW47 的硬件移植: KW47 与 KW45 引脚到引脚兼容。然而,从硬件的角度来看,某些组件的值需要进行调整,例如 RF 匹配组件的值。 根据当前的硅验证,预计KW4x周围的其他组件不会发生变化。 另请注意,为实现 KW47 的新功能,部分引脚采用了新的复用配置。例如,KW47 提供了第二个 Flex CAN。详见附件。 射频   射频报告:KW45 和 K32W148 的蓝牙低功耗射频系统评估报告,以及 K32W148 的 802.15.4 应用评估报告……(待 KW47/MCXW72 发布,可应要求提供)   射频共存:Kinetis 无线系列产品的蓝牙低功耗与 Wi-Fi 共存应用(nxp.com)(待 KW47/MCXW72 发布)   距离性能:参考附件(待 KW47/MCXW72 发布)   天线: 用于NXP EVK板的2.4 GHz通信设计和应用的紧凑型平面天线 用于信道探测应用的天线   BLE 连接性测试二进制文件:可按需在 SDK 中获取   回波损耗 (S11) 测量:如何测量射频匹配的回波损耗 (S11)(射频报告 AN13728 的一部分)   负载牵引:待 KW47/MCXW72 发布 用于 RF 试验的 SW 工具:   IoT 工具箱(移动应用)   连接性产品的连接测试工具(IoT 工具箱的一部分)   DTM:如何在 Kinetis 系列产品上使用 HCI_bb……- NXP 社区 https://community.nxp.com/t5/Wireless-Connectivity-Knowledge/BLE-HCI-Application-to-set-transmitter-... 晶体  文章:KW45/K32W1 的 32MHz 和 32kHz 振荡裕量 - NXP 社区(待 KW47/MCXW72 发布) 推荐的水晶已附上 低功耗 蓝牙 LE 功耗配置文件估算工具 KW45_WK47_BLE_power_profile_calculator_v1.32.xlsm   低功耗              AN14554 Kinetis KW47 & MCX W72 Bluetooth LE Power profile analysis release.pdf 802.15.4 Matter & Zigbee 功率配置文件估算工具               MCX W7x 802.15.4 Matter ICD SIT LIT & ZED Power profile v0.2.xlsx                 AN MCX W72 802.15.4 Matter and Zigbee Power profile analysis - proposal.pdf CCC 信道探测 BLE 功率配置文件估算工具               KW47 Digital Key CCC CS Power Estimator tool v0.8.xlsx               AN14628_AN14628_KW47_CCC_CS_Power_Profile_estimator tool_release.pdf Bluetooth ® 信道探测技术概述  认证 RF 预认证已完成 - 完整认证待 KW47/MCXW72发布 KW47 和 MCXW72 已通过蓝牙 6.0 信道探测认证!
記事全体を表示
关于使用 FS32K144HAT0MMHT EVK 的热电阻驱动器可用性的说明 大家好, 我想购买FS32K144HAT0MMHTMCU 和相关评估套件 (EVK)。我想知道 EVK 是否包含热电阻驱动器,无需额外费用? 如果不是,是否需要单独购买 RTD 驱动器? 预先感谢您的帮助! Re: Clarification on RTD Driver Availability with FS32K144HAT0MMHT EVK 你好@NagulMeera 实时驱动程序 (RTD) 和 S32 设计工作室 (S32DS) 是免费的。 EB tresos Studio 提供免费评估许可证,但必须向 Elektrobit 订购生产许可证。 我们还提供高级软件,例如: - S32 功能安全软件框架 (SAF) 和功能安全外设驱动器 (SPD) - 结构核心自检 (SCST) 如需高级软件,请联系您的恩智浦代表。 BR、VaneB
記事全体を表示
S32K5 SAF 版本时间表 嗨,团队、 客户 PATAC 正在评估我们的 S32K5 SAF。他们知道,目前的 S32K5 SAF 只能提供非常有限的功能,无法满足他们的实际使用要求。因此,他们要求我们提供 S32K5 SAF 的详细时间表。 大概的版本发布时间。 下一个版本将支持哪些功能和模块? 谢谢& ,致以最崇高的敬意、 理查德 优先级:中等 SAFETY_SW 资料来源直接客户 Re: S32K5 SAF release schedule 你好@RaduBraga、 是否有任何更新? BR 理查德 Re: S32K5 SAF release schedule 嗨 @RichardLi,计划 在 2026 年 7 月版本 K5 PRC,我们的目标是涵盖所有 SAF 模块的全部功能。 亲切的问候, Radoslav Re: S32K5 SAF release schedule 嗨 @RichardLi, 我们今年 1 月没有任何 EAR 版本。 EAR 0.8.0 已于 2025 年 12 月发布,功能非常有限,直到 7 月 26 日 PRC 才有其他计划。 亲切的问候, Radoslav Re: S32K5 SAF release schedule 你好@RadoslavB、 感谢您的反馈。计划于今年1月底发布的SAF EAR版本有任何范围吗?它能涵盖大部分功能吗? BR 理查德
記事全体を表示
嵌入式系统开发的最佳 DevOps 实践 大家好 我想讨论在嵌入式系统开发中实施 DevOps 的最佳实践。我们都知道,嵌入式系统面临着独特的挑战,但结合 DevOps 原则并利用正确的 DevOps 解决方案可以大大改善我们的工作流程。 以下是我发现的一些有用的做法: 自动版本构建和 CI/CD 设置自动构建管道对于嵌入式系统至关重要。借助 CI/CD,我们可以自动测试、刷新和部署到真实设备,从而确保尽早发现错误。 固件和硬件的版本控制 将固件视为软件 — 使用 Git 或类似工具进行版本控制,以及硬件抽象层 (HAL),有助于同步管理软件和硬件依赖关系。 硬件在环 (HIL) 的持续集成 将 HIL 测试内置到您的 CI 管道中可确保您针对真实场景进行验证,而不仅仅是模拟环境。这有助于发现只有在实际硬件中才会出现的问题。 嵌入式软件的容器化 使用 容器 或类似工具进行软件环境复制可确保开发、测试和部署阶段的一致性,即使在使用嵌入式平台时也是如此。 我很想听听您的想法和其他有效的做法。您如何将 DevOps 内置到嵌入式开发工作流程中? DSC Re: Best DevOps Practices for Embedded Systems Development 我们正在努力做你所建议的事情。您有什么具体的建议吗?
記事全体を表示
S32K 输入捕获 嗨,团队、 我们使用的是 S32K146 微控制器,我们需要任何一个输入引脚作为输入捕获引脚,你能建议我应该使用哪个模块配置吗? 如果我使用 FTM 作为信号测量,我能否实现输入捕获功能?或者我应该使用 ic_pal 功能? 请支持 谢谢 Shruthi C Re: S32K Input Capture 你好,彼得、 我无法使用 INT_SYS_InstallHandler(FTM0_Ch0_Ch1_IRQn,PWM_InputCapture_IRQHandler,NULL);函数,因为它使用默认处理程序,而不使用FTM0_Ch0_Ch1_IRQn处理程序。 我的配置是 /* flexTimer_ic_1 InitConfig 的全局配置 */ ftm_user_config_t flexTimer_ic_1_InitConfig = {     { true,/* 软件触发信号状态 */ false,/* 硬件触发信号 1 状态 */ false,/* 硬件触发信号 2 状态 */ false,/* 硬件触发信号 3 状态 */ 虚假,/* 最大加载点状态 */ 虚假,/* 最小装载点状态 */ ftm_system_clock、/* INVCTRL 寄存器的更新模式 */ ftm_system_clock、/* SWOCTRL 寄存器的更新模式 */ ftm_system_clock、/* OUTMASK 寄存器的更新模式 */ ftm_system_clock、/* CNTIN 寄存器的更新模式 */ false,/* 自动清除触发信号 */ ftm_update_now、/* 同步点 */ }, ftm_mode_input_capture、/* FTM 的运行模式 */ ftm_clock_divid_by_1、/* FTM 时钟预分频器 */ ftm_clock_source_systemclk、 /* FTM 时钟源 */ ftm_bdm_mode_11、/* FTM 调试模式 */ 虚假, /* 中断状态 */ false /* 初始化触发信号 */ }; /* FlexTimer_IC_1 的输入捕获配置 */ ftm_input_param_t flexTimer_ic_1_InputCaptureConfig = { 1U,/* 通道配置数量 */ 65535U,/* 最大计数值 */ flexTimer_ic_1_InputCaptureChannelConfig/* 通道配置*/ }; /* FlexTimer_IC_1 输入捕获的信道配置结构 */ ftm_input_ch_param_t flexTimer_ic_1_InputCaptureChannelConfig[1] = {     { 0U,/* 通道 ID */ FTM_SIGNAL_MEASUREMENT,/* 输入捕获操作模式 */ ftm_rising_edge、/* 边缘对齐模式 */ ftm_falling_edge_period_measurement、/* 信号测量操作类型 */ 0U,/* 过滤器值 */ 虚假,/* 过滤器状态(启用/禁用) */ true,/* 连续测量状态 */ NULL,/* 通道事件的回调参数向量 */ NULL/* 通道事件的回调向量 */    } }; Re: S32K Input Capture 您好, 是的,这些功能应该足够了。SDK 驱动程序启用了 FTM 通道中断,我认为正确的处理程序应从启动时分配。如果不是正确的处理程序,则为 FTM0_Ch0_Ch1_IRQHandler。 调用 ftm_drv_getInputCaptureMeasuremeasum 以获取捕获的值。 BR, Petr Re: S32K Input Capture 你好,彼得、   感谢您的明确说明。   我可以使用这些函数将 FTM 引脚初始化为输入捕获 `ftm_drv_init () ``ftm_drv_init_initCapture () `ftm_drv_initInputCapture ()`   并安装一个 IRQ 处理器来捕获脉冲发生情况 `INT_SYS_InstallHandler(FTM0_Ch0_Ch1_IRQn, PWM_InputCapture_IRQHandler, NULL)`     请支持   谢谢 Shruthi C Re: S32K Input Capture 您好, 最常见和最有效的方法是在输入捕获模式下配置 FTM 并使用具有 FTM 功能的引脚。每个 FTM 通道均可配置为输入捕获模式,在该模式下,它捕获输入信号边缘(上升、下降或两者兼有)上的计时器值。这通常用于测量:信号周期、脉冲宽度、频率。 IC PAL 驱动器允许检测输入信号并测量通道输入信号的脉冲宽度或周期。其设计目的是使其可移植到支持 FTM、eMIOS、FLEXPWM 和 ETIMER 的所有平台和 IP 上。 因此,如果您想获得全面的控制和性能,请直接使用 FTM。如果您希望代码更简单、更便于携带,请使用 IC PAL。 BR, Petr Re: S32K Input Capture 您好, 您可以直接参考 SDK 示例 (ftm_signal_measurement)。 或共享显示该问题的简化项目。 BR, Petr Re: S32K Input Capture 您好, 在 SDK 示例中,我直接提到(ftm_signal_measurement)。 在这个例子中,他们没有使用中断方法,他们使用了轮询方法,然后他们调用了 ftm_drv_g etInputCap t ureMeasuremeasum 我正在寻找带中断功能的 FTM 信号测量,一旦输入捕获识别出信号,我需要中断才能触发并调用 ISR 中的 ftm_dr v_getInputCaptureMeasuremeasurem ensum 函数 请提供相关代码 谢谢 Shruthi C Re: S32K Input Capture 您好, 如果您需要再次安装处理程序,您应该有 extern void FTM0_Ch0_Ch1_IRQHandler(void); INT_SYS_InstallHandler(FTM0_Ch0_Ch1_IRQn, FTM0_Ch0_Ch1_IRQHandler, NULL); BR, Petr Re: S32K Input Capture 你好, 是的,我确实定义了该函数,但函数调用后会进入无限循环,并继续运行 整个系统将无法运行, 谢谢 Shruthi C Re: S32K Input Capture 你好、 感谢您的支持和代码片段,我将进行检查 T&R、 Shruthi C Re: S32K Input Capture 你好,我 能否获得任何支持中断的 FTM 引脚的输入作为输入捕获 谢谢! Shruthi C Re: S32K Input Capture 您好, 驱动程序使用中断来捕获事件,只是没有直接显示在示例中。 我修改了 FTM IC 设置,使其使用单发模式,并添加了从驱动程序中断调用的回调。 ftm_signal_measurement_s32k146 演示修改后的 main.c 参见附件。 BR, Petr
記事全体を表示
SPSDK v3.1 release We are excited to annouce the release of Secure Provisioning SDK (SPSDK) 3.1 Please note this release is a new generation of SPSDK and it is NOT backward compatible to 2.x versions.  A migration guide is provided below: ⭐What's NEW: https://spsdk.readthedocs.io/en/latest/release_notes.html ⚠️Migration Guide: https://spsdk.readthedocs.io/en/latest/migration_guide.html 📦Supported Devices: https://spsdk.readthedocs.io/en/latest/devices_list.html 👇More details: Github PyPi Documentation SPSDK Plugins 3.1: Github (Plugins) PyPi (Plugins) Restricted Data Package for SPSDK 3.1: Please note that the package uses an LA_OPT license. Package will be located in the Download section. announcement
記事全体を表示
Zephyr SDKバージョンのインストール Zephyr SDKは、Zephyrアプリケーションをビルドするためのビルド・ツールセットです。GCCやCMakeが含まれており、各Zephyrリリースは特定の Zephyr SDKバージョンに紐づいています。このバージョンは、Zephyrリポジトリ内のSDK_VERSIONファイルに記載されています。推奨されているZephyr SDKバージョンを使用することが重要です。バージョンが一致しないと、ビルド・エラーが発生する可能性があります。 たとえば、Zephyr v4.1はZephyr SDK v0.17.0を指定します。Zephyr SDK v0.17.2(Zephyr v4.2 用)を Zephyr v4.1 で使用すると、ビルドエラーが発生します。Zephyr v4.1 用のアプリをビルドする必要がある場合は、Zephyr SDK v0.17.0をインストールしてください。 複数のZephyr SDKバージョンをインストールしておき、ビルド時に切り替えることが可能です(下記の手順を参照)。 フルインストールと最小インストールの比較 フルインストール(Full Install): すべてのサポートされているSoCアーキテクチャ向けの全ツールチェーンが含まれます。初心者に推奨されますが、より多くのディスク容量とダウンロード時間が必要です。 最小インストール(Minimal Install): 必要なツールチェーンのみを選択できます。スペースと時間を節約できます。 最小インストールの場合は、setup.cmdスクリプトを実行して、インストールするツールを選択します。NXPボードでは、次を選択します。 Zephyr SDK CMakeパッケージを登録する Install host tools aarch64-zephyr-elf (64ビットARM) arm-zephyr-eabi (32ビットARM、NXP MCUを含む) オプション xtensa-nxp… (Cadence Tensilica DSPコア) Zephyr SDKをインストールします これらの手順では、MCUXpresso Installer、CLI(West)、または手動ダウンロードを使用してZephyr SDKをインストールする方法を説明しています。 MCUXpresso Installerを使用したインストール MCUXpresso InstallerはZephyr v4.2からZephyr用パックをサポートし始めました。各パックは対応するZephyr SDKバージョンをインストールします(例:v4.2パックはSDK v0.17.2をインストール)。このオプションはNXP開発用の最小限のツールセットをインストールします。 MCUXpressoインストーラーは、古いZephyr SDKバージョンをサポートしていません。v0.17.1以前の場合は、Westまたは手動インストールを使用してください。 West CLIを使用したインストール Zephyr ProjectはWestにZephyr SDKのインストール機能を追加しました。 CLIの場合は、Python仮想環境をアクティブ化してから、次を実行します。 west sdk install --version 0.17.0   --version が省略された場合、WestはZephyrリポジトリのSDK_VERSIONファイルにあるバージョンを使用します。 デフォルトでは、Fullパッケージがインストールされます。最小のインストールを行う場合は、 -i を追加します。 手動ダウンロードによるインストール https://github.com/zephyrproject-rtos/sdk-ng/releasesから、Zephyr SDKをダウンロードします。 使用するホストOS向けに、FullまたはMinimalを選択します。 WestとMCUXpressoの場合のデフォルトの場所として、ユーザーフォルダーに展開します。 Windows: C:\Users\ \zephyr-sdk-0.17.0 Ubuntu: /home/ /zephyr-sdk-0.17.0 Zephyr SDKのバージョンの選択 複数のZephyr SDKバージョンを共存させることができます。Westはデフォルトで最新バージョンを使用しますが、次の方法で上書きできます。 VS Code: 例をインポートする際は、ウィザードでZephyr SDKバージョンを選択してください。 CLI:環境変数 ZEPHYR_SDK_INSTALL_DIR を、ビルド前に設定します。このコマンドはUbuntuでその変数を設定します。 export ZEPHYR_SDK_INSTALL_DIR="/home/ /zephyr-sdk-0.17.0" またはWindowsの場合: set ZEPHYR_SDK_INSTALL_DIR= C:\Users\ \ zephyr-sdk-0.17.0   Zephyr Knowledge Hubに戻る    
記事全体を表示
Linux 嵌入式挑战项目 - 2014 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 1. 带行人聚光灯功能的自适应动态大灯 - eVision 团队成员: Balaban Valeriu - 高级微电子学、电子学、UPB 硕士 Voicu Tudor Alexandru - 学士,应用电子,电子,UPB Stanescu Sebastian - 学士,电信网络和软件,UPB 简短描述: 由于夜间事故死亡率高,因此开展了大量研究以开发技术 增加夜间驾驶员的视野范围,并在无法避免的情况下减少事故损失。这 自适应大灯功能有助于在光线不足的情况下,尤其是在弯道中看得更远:转向灯 按照行驶方向旋转前照灯,旋转角度由 CPU 计算,以照亮尽可能多的道路 面积尽可能 一个有趣的解决方案是聚光灯照明功能,它是一种专门照亮潜在危险的 LED 光束。 如果近红外摄像头检测到路边的鹿或道路上的行人,它们就会被短暂地照亮 在远光灯正常覆盖范围之外,用聚光灯提醒驾驶员注意可能存在的危险。 推介会: 请查阅eVisionPresentation.pdf 。 文档: 请查阅eVisionDoc.pdf 。 代码源 https://github.com/izzi/app-evision https://github.com/izzi/meta-evision 2. 人车交互语音控制界面 - She# 团队成员: Iulia Neagoe - 军事技术学院计算机科学与军事信息系统专业 Mihaela-Anca Sorostinean - 军事技术学院计算机科学与军事信息系统 简短描述: 在汽车和通信领域技术不断进步的背景下,驱动因素 责任已经从仅仅控制汽车转变为与汽车提供的众多小工具进行交互 制造商。该项目的目的是设计一个界面,为驾驶员提供控制 通过语音命令来控制汽车的一些非重要功能,以便驾驶员集中注意力 在路上行驶的同时还能与汽车进行舒适的通讯。 我们开发了一个语音识别系统,可以识别收音机、窗户、气候或电话等一些基本功能 我们在 Wandboard 上实现了它。我们还为用户提供了一个公认的图形界面 命令以增强他与车辆的互动。 推介会: 请查阅ShePresentation.pdf 。 文档: 请查阅SheDoc.pdf 。 代码源 请参阅She#_Project_Source.zip。 3. 驾驶控制软件 - FreeSoftwares 团队成员: Petrosanu Adrian-Sabin - 计算机科学,UPB Birsan Nicoleta Cosmina - 计算机科学,UPB Radoi Ioana Gabriela - 计算机科学,UPB 简短描述: 《驾驶控制软件》是一款控制自动变速箱的软件。该项目包括模拟行为 自动变速箱在 Wandboard 上的应用。自动变速箱是一种机动车辆变速箱,可以 随着车辆移动自动改变齿轮比。 推介会: 请查阅FreeSoftwaresPresentation.pdf 。 文档: 请查阅FreeSoftwaresDoc.pdf 。 代码源 请参阅Freesoftwares_Project_Source.zip。 4. 自动泊车 - 通过 ATM 团队成员: Mihai Coca - 军事技术学院计算机科学与军事信息系统专业 格鲁吉亚安德烈 - 军事技术学院计算机科学与军事信息系统 Hiji Iulian -军事技术学院计算机科学与军事信息系统 简短描述: 许多公司正在开发自动驾驶汽车技术,通过将其在该领域的工作应用于 一个特定的用例:停车。该项目的目的是设计一款概念车,它可以停放在 主人把车停在路边,让它自己进入停车位。这个过程甚至可以逆转 当车主准备离开时,汽车会自行停放离开现场,并在路边与钥匙持有者再次会合。 文档: 请查阅ATM Doc.pdf 代码源 请参阅ATM_Project_Source.zip。 5. 碰撞检测 - Beer2.0 团队成员: Nitu Adrian - 计算机科学,UPB 简短描述: 我们项目的目的是让汽车感知前方道路,并使其能够采取预防措施 碰撞;我们希望通过这种方式减少道路上的事故。它将收集来自不同硬件的信号和信息 并会向驾驶员发出警报或立即控制车辆,以便采取关键操作来保护驾驶员 免受任何危及生命的事件的影响。 飞思卡尔杯赛车将配备一个Wandboard和两个USB摄像头,以便我们能够追踪环境。初始之后 对象跟踪我们将通过远程控制融入人机交互。对于这个项目,我们相信一个简单的警告系统 和/或打破就足以作为概念的证明。 推介会: 请参阅Beer20Presentation.pdf 文档: 请查阅Beer20Doc.pdf 代码源 https://bitbucket.org/adriannitu92/freechallenge 6. 使用子带归一化滤波 X LMS 算法实现前馈自适应噪声消除 - Brainiacs 团队成员: Cristian Monea - 电信和信息技术、电子、UPB Madalin Zaharia - 电信和信息技术、电子、UPB 简短说明 本项目提出了一种基于子带归一化滤波X LMS(NFXLMS)的前馈自适应噪声消除(ANC)算法。 使用自适应算法比固定 FIR 或 IIR 滤波器等简单滤波算法具有优势。此外, 汽车环境可以被认为是静止的,因为它保留了一些属性,比如光谱分布、均值、方差,这些属性 允许在汽车噪音消除应用中使用自适应滤波器。 前馈系统应该比反馈系统更有效。在这种情况下,在它之前感测到相干参考噪声输入 传播通过取消扬声器。 因此,该算法将模拟两个传感器(麦克风):参考传感器,用于测量需要消除的主要噪声, 和错误传感器。 推介会: 请参阅BrainiacsPresentation.pdf 文档: 请查阅BrainiacsDoc.pdf 2014年Linux嵌入式挑战赛
記事全体を表示
开放工业Linux ® (OpenIL)——安全、稳健、实时的工业和自动化应用_Connects China <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> OpenIL 是专为工业市场设计的 Linux ®发行版。OpenIL 是 PLC、HMI、工业控制和自动化系统的理想部署。OpenIL 是一个基于 buildroot 的开源项目,旨在为工业用途提供紧凑的文件系统,支持 LTS Linux 内核 4.1 和 4.9、Xenomai 钴核、工业 IEEE ® 1588、时间敏感网络等诸多功能。实时裸机框架支持继电器控制和机器人应用。了解 OpenIL、架构、设计目标和路线图。了解如何为 OpenIL 做出贡献并推动社区项目的发展方向。 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> OpenIL 是专为工业市场设计的 Linux ®发行版。OpenIL 是 PLC、HMI、工业控制和自动化系统的理想部署。OpenIL 是一个基于 buildroot 的开源项目,旨在为工业用途提供紧凑的文件系统,支持 LTS Linux 内核 4.1 和 4.9、Xenomai 钴核、工业 IEEE ® 1588、时间敏感网络等诸多功能。实时裸机框架支持继电器控制和机器人应用。了解 OpenIL、架构、设计目标和路线图。了解如何为 OpenIL 做出贡献并推动社区项目的发展方向。
記事全体を表示
FTF-ACC-F1259 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 同時マルチスレッド (SMT) は、独立した実行スレッドがスーパースカラー CPU パイプライン編成をより効果的に利用できるようにする高度なプロセッサ マイクロアーキテクチャ機能です。2ウェイ・スーパースカラー・パイプラインでのSMT実装は、動的消費電力の増加が比較的少ないデュアル・スレッドの同時実行性を最大化します。このセッションでは、次世代のPower Architecture e200z9プロセッサ・コアに含まれるSMT機能と、このマイクロアーキテクチャによって達成可能なパフォーマンス/パワー・メトリックの向上に焦点を当てます。 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 同時マルチスレッド (SMT) は、独立した実行スレッドがスーパースカラー CPU パイプライン編成をより効果的に利用できるようにする高度なプロセッサ マイクロアーキテクチャ機能です。2ウェイ・スーパースカラー・パイプラインでのSMT実装は、動的消費電力の増加が比較的少ないデュアル・スレッドの同時実行性を最大化します。このセッションでは、次世代のPower Architecture e200z9プロセッサ・コアに含まれるSMT機能と、このマイクロアーキテクチャによって達成可能なパフォーマンス/パワー・メトリックの向上に焦点を当てます。 日時:FTF-ACC-F1259 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 新しいe200z9はいつ発売されますか?
記事全体を表示
How to enable DDR mode As we know, the RT series MCUs support the XIP (Execute in place) mode and benefit from saving the number of pins, serial NOR Flash is most commonly used, as the FlexSPI module can high efficient fetch the code and data from the Serial NOR flash for Cortex-M7 to execute. The fetch way is implementing via utilizing the Quad IO Fast Read command, meanwhile, the serail NOR flash works in the SDR (Single Data transfer Rate) mode, it receives data on SCLK rise edge and transmits data on SCLK fall edge. Comparing to the SDR mode, the DDR (Dual Data transfer Rate) mode has a higher throughput capacity, whether it can provide better performance of XIP mode, and how to do that if we want the Serial NOR Flash to work in DDR (Dual Data transfer Rate) mode? SDR & DDR mode SDR mode: In SDR (Single Data transfer Rate) mode, data is only clocked on one edge of the clock (either the rising or falling edge). This means that for SDR to have data being transmitted at X Mbps, the clock bit rate needs to be 2X Mbps. DDR mode: For DDR (Dual Data transfer Rate) mode, also known as DTR (Dual Transfer Rate) mode, data is transferred on both the rising and falling edge of the clock. This means data is transmitted at X Mbps only requires the clock bit rate to be X Mbps, hence doubling the bandwidth (as Fig 1 shows).   Fig 1 Enable DDR mode The below steps illustrate how to make the i.MX RT1060 boot from the QSPI with working in DDR mode. Note: The board is MIMXRT1060, IDE is MCUXpresso IDE Open a hello_world as the template Modify the FDCB(Flash Device Configuration Block) a)Set the controllerMiscOption parameter to supports DDR read command. b) Set Serial Flash frequency to 60 MHz. c)Parase the DDR read command into command sequence. The following table shows a template command sequence of DDR Quad IO FAST READ instruction and it's almost matching with the FRQDTR (Fast Read Quad IO DTR) Sequence of IS25WP064 (as Fig 2 shows).   Fig2 FRQDTR Sequence d)Adjust the dummy cycles. The dummy cycles should match with the specific serial clock frequency and the default dummy cycles of the FRQDTR sequence command is 6 (as the below table shows).   However, when the serial clock frequency is 60MHz, the dummy cycle should change to 4 (as the below table shows).   So it needs to configure [P6:P3] bits of the Read Register (as the below table shows) via adding the SET READ PARAMETERS command sequence(as Fig 3 shows) in FDCB manually. Fig 3 SET READ PARAMETERS command sequence In further, in DDR mode, the SCLK cycle is double the serial root clock cycle. The operand value should be set as 2N, 2N-1 or 2*N+1 depending on how the dummy cycles defined in the device datasheet. In the end, we can get an adjusted FCDB like below. // Set Dummy Cycles #define FLASH_DUMMY_CYCLES 8 // Set Read register command sequence's Index in LUT table #define CMD_LUT_SEQ_IDX_SET_READ_PARAM 7 // Read,Read Status,Write Enable command sequences' Index in LUT table #define CMD_LUT_SEQ_IDX_READ 0 #define CMD_LUT_SEQ_IDX_READSTATUS 1 #define CMD_LUT_SEQ_IDX_WRITEENABLE 3 const flexspi_nor_config_t qspiflash_config = { .memConfig = { .tag = FLEXSPI_CFG_BLK_TAG, .version = FLEXSPI_CFG_BLK_VERSION, .readSampleClksrc=kFlexSPIReadSampleClk_LoopbackFromDqsPad, .csHoldTime = 3u, .csSetupTime = 3u, // Enable DDR mode .controllerMiscOption = kFlexSpiMiscOffset_DdrModeEnable | kFlexSpiMiscOffset_SafeConfigFreqEnable, .sflashPadType = kSerialFlash_4Pads, //.serialClkFreq = kFlexSpiSerialClk_100MHz, .serialClkFreq = kFlexSpiSerialClk_60MHz, .sflashA1Size = 8u * 1024u * 1024u, // Enable Flash register configuration .configCmdEnable = 1u, .configModeType[0] = kDeviceConfigCmdType_Generic, .configCmdSeqs[0] = { .seqNum = 1, .seqId = CMD_LUT_SEQ_IDX_SET_READ_PARAM, .reserved = 0, }, .lookupTable = { // Read LUTs [4*CMD_LUT_SEQ_IDX_READ] = FLEXSPI_LUT_SEQ(CMD_SDR, FLEXSPI_1PAD, 0xED, RADDR_DDR, FLEXSPI_4PAD, 0x18), // The MODE8_DDR subsequence costs 2 cycles that is part of the whole dummy cycles [4*CMD_LUT_SEQ_IDX_READ + 1] = FLEXSPI_LUT_SEQ(MODE8_DDR, FLEXSPI_4PAD, 0x00, DUMMY_DDR, FLEXSPI_4PAD, FLASH_DUMMY_CYCLES-2), [4*CMD_LUT_SEQ_IDX_READ + 2] = FLEXSPI_LUT_SEQ(READ_DDR, FLEXSPI_4PAD, 0x04, STOP, FLEXSPI_1PAD, 0x00), // READ STATUS REGISTER [4*CMD_LUT_SEQ_IDX_READSTATUS] = FLEXSPI_LUT_SEQ(CMD_SDR, FLEXSPI_1PAD, 0x05, READ_SDR, FLEXSPI_1PAD, 0x01), [4*CMD_LUT_SEQ_IDX_READSTATUS + 1] = FLEXSPI_LUT_SEQ(STOP, FLEXSPI_1PAD, 0x00, 0, 0, 0), // WRTIE ENABLE [4*CMD_LUT_SEQ_IDX_WRITEENABLE] = FLEXSPI_LUT_SEQ(CMD_SDR,FLEXSPI_1PAD, 0x06, STOP, FLEXSPI_1PAD, 0x00), // Set Read register [4*CMD_LUT_SEQ_IDX_SET_READ_PARAM] = FLEXSPI_LUT_SEQ(CMD_SDR,FLEXSPI_1PAD, 0x63, WRITE_SDR, FLEXSPI_1PAD, 0x01), [4*CMD_LUT_SEQ_IDX_SET_READ_PARAM + 1] = FLEXSPI_LUT_SEQ(STOP,FLEXSPI_1PAD, 0x00, 0, 0, 0), }, }, .pageSize = 256u, .sectorSize = 4u * 1024u, .blockSize = 64u * 1024u, .isUniformBlockSize = false, }; Is DDR mode real better? According to the RT1060's datasheet, the below table illustrates the maximum frequency of FlexSPI operation, as the MIMXRT1060's onboard QSPI flash is IS25WP064AJBLE, it doesn't contain the MQS pin, it means set MCR0.RXCLKsrc=1 (Internal dummy read strobe and loopbacked from DQS) is the most optimized option. operation mode RXCLKsrc=0 RXCLKsrc=1 RXCLKsrc=3 SDR 60 MHz 133 MHz 166 MHz DDR 30 MHz 66 MHz 166 MHz In another word, QSPI can run up to 133 MHz in SDR mode versus 66 MHz in DDR mode. From the perspective of throughput capacity, they're almost the same. It seems like DDR mode is not a better option for IS25WP064AJBLE and the following experiment will validate the assumption. Experiment mbedtls_benchmark I use the mbedtls_benchmark as the first testing demo and I run the demo under the below conditions: 100MH, SDR mode; 133MHz, SDR mode; 66MHz, DDR mode; According to the corresponding printout information (as below shows), I make a table for comparison and I mark the worst performance of implementation items among the above three conditions, just as Fig 4 shows. SDR Mode run at 100 MHz. FlexSPI clock source is 3, FlexSPI Div is 6, PllPfd2Clk is 720000000 mbedTLS version 2.16.6 fsys=600000000 Using following implementations: SHA: DCP HW accelerated AES: DCP HW accelerated AES GCM: Software implementation DES: Software implementation Asymmetric cryptography: Software implementation MD5 : 18139.63 KB/s, 27.10 cycles/byte SHA-1 : 44495.64 KB/s, 12.52 cycles/byte SHA-256 : 47766.54 KB/s, 11.61 cycles/byte SHA-512 : 2190.11 KB/s, 267.88 cycles/byte 3DES : 1263.01 KB/s, 462.49 cycles/byte DES : 2962.18 KB/s, 196.33 cycles/byte AES-CBC-128 : 52883.94 KB/s, 10.45 cycles/byte AES-GCM-128 : 1755.38 KB/s, 329.33 cycles/byte AES-CCM-128 : 2081.99 KB/s, 279.72 cycles/byte CTR_DRBG (NOPR) : 5897.16 KB/s, 98.15 cycles/byte CTR_DRBG (PR) : 4489.58 KB/s, 129.72 cycles/byte HMAC_DRBG SHA-1 (NOPR) : 1297.53 KB/s, 448.03 cycles/byte HMAC_DRBG SHA-1 (PR) : 1205.51 KB/s, 486.04 cycles/byte HMAC_DRBG SHA-256 (NOPR) : 1786.18 KB/s, 327.70 cycles/byte HMAC_DRBG SHA-256 (PR) : 1779.52 KB/s, 328.93 cycles/byte RSA-1024 : 202.33 public/s RSA-1024 : 7.00 private/s DHE-2048 : 0.40 handshake/s DH-2048 : 0.40 handshake/s ECDSA-secp256r1 : 9.00 sign/s ECDSA-secp256r1 : 4.67 verify/s ECDHE-secp256r1 : 5.00 handshake/s ECDH-secp256r1 : 9.33 handshake/s DDR Mode run at 66 MHz. FlexSPI clock source is 2, FlexSPI Div is 5, PllPfd2Clk is 396000000 mbedTLS version 2.16.6 fsys=600000000 Using following implementations: SHA: DCP HW accelerated AES: DCP HW accelerated AES GCM: Software implementation DES: Software implementation Asymmetric cryptography: Software implementation MD5 : 16047.13 KB/s, 27.12 cycles/byte SHA-1 : 44504.08 KB/s, 12.54 cycles/byte SHA-256 : 47742.88 KB/s, 11.62 cycles/byte SHA-512 : 2187.57 KB/s, 267.18 cycles/byte 3DES : 1262.66 KB/s, 462.59 cycles/byte DES : 2786.81 KB/s, 196.44 cycles/byte AES-CBC-128 : 52807.92 KB/s, 10.47 cycles/byte AES-GCM-128 : 1311.15 KB/s, 446.53 cycles/byte AES-CCM-128 : 2088.84 KB/s, 281.08 cycles/byte CTR_DRBG (NOPR) : 5966.92 KB/s, 97.55 cycles/byte CTR_DRBG (PR) : 4413.15 KB/s, 130.42 cycles/byte HMAC_DRBG SHA-1 (NOPR) : 1291.64 KB/s, 449.47 cycles/byte HMAC_DRBG SHA-1 (PR) : 1202.41 KB/s, 487.05 cycles/byte HMAC_DRBG SHA-256 (NOPR) : 1748.38 KB/s, 328.16 cycles/byte HMAC_DRBG SHA-256 (PR) : 1691.74 KB/s, 329.78 cycles/byte RSA-1024 : 201.67 public/s RSA-1024 : 7.00 private/s DHE-2048 : 0.40 handshake/s DH-2048 : 0.40 handshake/s ECDSA-secp256r1 : 8.67 sign/s ECDSA-secp256r1 : 4.67 verify/s ECDHE-secp256r1 : 4.67 handshake/s ECDH-secp256r1 : 9.00 handshake/s Fig 4 Performance comparison We can find that most of the implementation items are achieve the worst performance when QSPI works in DDR mode with 66 MHz. Coremark demo The second demo is running the Coremark demo under the above three conditions and the result is illustrated below. SDR Mode run at 100 MHz. FlexSPI clock source is 3, FlexSPI Div is 6, PLL3 PFD0 is 720000000 2K performance run parameters for coremark. CoreMark Size : 666 Total ticks : 391889200 Total time (secs): 16.328717 Iterations/Sec : 2449.671999 Iterations : 40000 Compiler version : MCUXpresso IDE v11.3.1 Compiler flags : Optimization most (-O3) Memory location : STACK seedcrc : 0xe9f5 [0]crclist : 0xe714 [0]crcmatrix : 0x1fd7 [0]crcstate : 0x8e3a [0]crcfinal : 0x25b5 Correct operation validated. See readme.txt for run and reporting rules. CoreMark 1.0 : 2449.671999 / MCUXpresso IDE v11.3.1 Optimization most (-O3) / STACK SDR Mode run at 133 MHz. FlexSPI clock source is 3, FlexSPI Div is 4, PLL3 PFD0 is 664615368 2K performance run parameters for coremark. CoreMark Size : 666 Total ticks : 391888682 Total time (secs): 16.328695 Iterations/Sec : 2449.675237 Iterations : 40000 Compiler version : MCUXpresso IDE v11.3.1 Compiler flags : Optimization most (-O3) Memory location : STACK seedcrc : 0xe9f5 [0]crclist : 0xe714 [0]crcmatrix : 0x1fd7 [0]crcstate : 0x8e3a [0]crcfinal : 0x25b5 Correct operation validated. See readme.txt for run and reporting rules. CoreMark 1.0 : 2449.675237 / MCUXpresso IDE v11.3.1 Optimization most (-O3) / STACK DDR Mode run at 66 MHz. FlexSPI clock source is 2, FlexSPI Div is 5, PLL3 PFD0 is 396000000 2K performance run parameters for coremark. CoreMark Size : 666 Total ticks : 391890772 Total time (secs): 16.328782 Iterations/Sec : 2449.662173 Iterations : 40000 Compiler version : MCUXpresso IDE v11.3.1 Compiler flags : Optimization most (-O3) Memory location : STACK seedcrc : 0xe9f5 [0]crclist : 0xe714 [0]crcmatrix : 0x1fd7 [0]crcstate : 0x8e3a [0]crcfinal : 0x25b5 Correct operation validated. See readme.txt for run and reporting rules. CoreMark 1.0 : 2449.662173 / MCUXpresso IDE v11.3.1 Optimization most (-O3) / STACK After comparing the CoreMark scores, it gets the lowest CoreMark score when QSPI works in DDR mode with 66 MHz. However, they're actually pretty close. Through the above two testings, we can get the DDR mode maybe not a better option, at least for the i.MX RT10xx series MCU. i.MXRT 102x i.MXRT 105x i.MXRT 106x
記事全体を表示