blob: 292dab72c43c78eafceebcc641b3a7bef60e7359 [file] [log] [blame]
Fabio Estevam6d26c182017-01-29 18:10:17 -02001*******************************
Fabio Estevamd5935bf2017-09-25 08:59:43 -03002Freescale i.MX6 Sabre SD boards
Fabio Estevam6d26c182017-01-29 18:10:17 -02003*******************************
4
Fabio Estevamd5935bf2017-09-25 08:59:43 -03005This file documents the Buildroot support for the Freescale i.MX6 Sabre SD
6boards based on i.MX6Q, i.MX6DL and iMX6QP.
7
8Thanks to the SPL support in U-Boot it is possible to run a single
9sdcard.img in all i.MX6 Sabre SD board variants.
Fabio Estevam6d26c182017-01-29 18:10:17 -020010
11This configuration uses U-Boot mainline and kernel mainline.
12
13Build
14=====
15
Fabio Estevamd5935bf2017-09-25 08:59:43 -030016First, configure Buildroot for the i.MX6 Sabre SD board:
Fabio Estevam6d26c182017-01-29 18:10:17 -020017
Fabio Estevamd5935bf2017-09-25 08:59:43 -030018 make imx6-sabresd_defconfig
Fabio Estevam6d26c182017-01-29 18:10:17 -020019
20Build all components:
21
22 make
23
24You will find the following files in output/images/ :
25 - imx6q-sabresd.dtb
Fabio Estevamd5935bf2017-09-25 08:59:43 -030026 - imx6dl-sabresd.dtb
27 - imx6qp-sabresd.dtb
Fabio Estevam6d26c182017-01-29 18:10:17 -020028 - rootfs.ext4
29 - rootfs.tar
30 - sdcard.img
31 - u-boot.imx
32 - zImage
33
34Create a bootable SD card
35=========================
36
37To determine the device associated to the SD card have a look in the
38/proc/partitions file:
39
40 cat /proc/partitions
41
42Buildroot prepares a bootable "sdcard.img" image in the output/images/
43directory, ready to be dumped on a SD card. Launch the following
44command as root:
45
46 dd if=output/images/sdcard.img of=/dev/<your-sd-device>
47
48*** WARNING! This will destroy all the card content. Use with care! ***
49
50For details about the medium image layout, see the definition in
51board/freescale/common/imx/genimage.cfg.template.
52
Fabio Estevamd5935bf2017-09-25 08:59:43 -030053Boot the i.MX6 Sabre SD board
54=============================
Fabio Estevam6d26c182017-01-29 18:10:17 -020055
56To boot your newly created system:
57- insert the SD card in the SD3 slot of the board (close to the HDMI connector);
58- put a micro USB cable into the Debug USB Port and connect using a terminal
59 emulator at 115200 bps, 8n1;
60- power on the board.
61
Fabio Estevamd5935bf2017-09-25 08:59:43 -030062Testing graphics on the i.MX6 Sabre SD board
63============================================
Fabio Estevama8480e32017-06-21 17:49:47 -030064
Fabio Estevamb15dd572017-09-25 08:59:46 -030065The imx6-sabresd_qt5_defconfig allows to quickly test the graphics
Fabio Estevama8480e32017-06-21 17:49:47 -030066capabilities of i.MX6 using the opensource Etnaviv graphics stack
67and kernel mainline.
68
69In order to build it:
70
Fabio Estevamb15dd572017-09-25 08:59:46 -030071make imx6-sabresd_qt5_defconfig
Fabio Estevama8480e32017-06-21 17:49:47 -030072make
73
74Then flash the SD card as explained above.
75
76Running kmscube application:
77
Fabio Estevame2945552017-09-25 08:59:47 -030078# kmscube
Fabio Estevama8480e32017-06-21 17:49:47 -030079
80Running Qt5 Cinematic Demo:
81
82# export QT_QPA_EGLFS_KMS_CONFIG=/root/sabresd.json
Fabio Estevamd9ccd8f2019-10-09 14:00:03 -030083# export QT_QPA_EGLFS_ALWAYS_SET_MODE=1
Fabio Estevama8480e32017-06-21 17:49:47 -030084# /usr/share/Qt5/CinematicExperience/Qt5_CinematicExperience
85
Fabio Estevamfceb8172017-09-25 08:59:48 -030086Running gl2mark benchmark:
87
88# glmark2-es2-drm
89
Fabio Estevam444afad2017-10-09 17:43:41 -030090Testing video playback on the i.MX6 Sabre SD board
91==================================================
92
93As the mx6sabresd has two display outputs (LVDS and HDMI), it is necessary to
94know what is the connector that corresponds to the HDMI output.
95
96This information can be found by running:
97
98# modetest
99
100And search for the HDMI connector number. In our case it shows up as 37.
101
102In the mx6sabresd prompt run the following Gstreamer pipeline:
103
104# gst-launch-1.0 filesrc location=/root/trailer_1080p_h264_mp3.avi ! avidemux ! \
105h264parse ! v4l2video1dec capture-io-mode=dmabuf ! kmssink connector-id=37 \
106name=imx-drm sync=0
107
108(The video used on this example was retrieved from:
109http://linode.boundarydevices.com/videos/trailer_1080p_h264_mp3.avi)
110
Fabio Estevam6d26c182017-01-29 18:10:17 -0200111Enjoy!