Installing Ubuntu Rootfs on NXP i.MX6 boards

cancel
Showing results for 
Search instead for 
Did you mean: 

Installing Ubuntu Rootfs on NXP i.MX6 boards

No ratings

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-2...

$ 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 -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...

$ 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 <<EOT > /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 <myuser>

# 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)

<myuser> 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 <<EOT > 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 <user $> 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

Comments

hi Jaffin,

                I met the same login problem. Following this post, only use 'root' autologin can pass the login GUI while booting.

Use my normal user account cannot use autologin or pass login GUI..any idea for non-root user login?

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.

Hello,

Can same instrctions can be used with imx.8?

Thanks

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 <bio-0> 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 <giometti@linux.it>
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)

Version history
Revision #:
2 of 2
Last update:
‎09-10-2020 02:07 AM
Updated by: