summaryrefslogtreecommitdiff
path: root/release-notes/Colibri_iMX6_LinuxReleaseNotesV2.x.txt
blob: f68c438d61f171ae5134b2860c02ce911919404d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
*************************************************
Release Notes:  Linux Image V2.x for Colibri iMX6
*************************************************

Contents:
- U-Boot 2014.04 boot loader
- Linux 3.10.17 kernel, based on Freescale's BSP release imx_3.10.17_1.0.1_ga
    and patches from Boundary Devices
- Angstrom/OpenEmbedded/Yocto 2014.06/daisy/1.6 based root file system, using
    LXDE desktop environment

==> Flashing instructions can be found at the very bottom of this release notes

Licensing:
- proprietary multimedia codecs included for evaluation purpose only
- customer required to obtain proper re-distribution license

********************************************************************************
Linux Image V2.3 Beta 5 (December 19, 2014)
- U-Boot:
  - default to VGA on parallel RGB display (from full HD on DVI)
  - add additional version related environment variables to ease scripting
- Linux kernel:
  - remove some drivers unusable on Colibri iMX6
  - rename power-key to its correct function wake-up-key
- Linux user-space:
  - add eglinfo application
  - update X server to 1.14.7
  - /etc/machine-id: ensure it is saved non-volatile
- Update script
  - reduce rootfs partition size in the MBR to the available eMMC size
      to have a valid MBR

- sources git.toradex.com tag Colibri_iMX6_LinuxImageV2.3Beta5_20141219
  - repository linux-toradex branch toradex_imx_3.10.17_1.0.0_ga
  - repository u-boot-toradex branch 2014.04-toradex

Known Issues:
- connecting an analogue mic to the on module codec resets the codec, so that
    neither headphone out nor mic in works anymore. Workaround: Have mic
    connected before boot or change the output source between DAC/LineIn
- on first boot the resizing process adversely affects system performance for
    the first few minutes until completed
- Display resolution can be set for some output configurations, set the U-Boot
    environment variable vidargs accordingly. Some vidargs_xx variables
    provided for reference.
- X uses only the fb0 device
- flash_eth.img requires manual splitting of the root.ext3 file.
    see the colibri-imx6_bin/flash_eth.scr script
- a serial getty is started on ttymxc1 in addition to ttymxc0
    to disable this permanently execute the following command on the module:
    systemctl disable serial-getty@ttymxc1.service

********************************************************************************
Linux Image V2.3 Beta 4 (November 13, 2014)
- U-Boot:
  - initial release
- Linux kernel:
  - initial release
- rootfs / oe-core:
  - initial release
  - uses ARMv7 hard-float Thumb2 builds (armv7at2hf-vfp-neon)
- sources git.toradex.com tag Colibri_iMX6_LinuxImageV2.3Beta4_20141113
  - repository linux-toradex branch toradex_imx_3.10.17_1.0.0_ga
  - repository u-boot-toradex branch 2014.04-toradex

Known Issues:
- connecting an analogue mic to the on module codec resets the codec, so that
    neither headphone out nor mic in works anymore. Workaround: Have mic
    connected before boot or change the output source between DAC/LineIn
- on first boot the resizing process adversely affects system performance for
    the first few minutes until completed
- Display resolution can be set for some output configurations, set the U-Boot
    environment variable vidargs accordingly. Some vidargs_xx variables
    provided for reference.
- X uses only the fb0 device
- flash_eth.img requires manual splitting of the root.ext3 file.
    see the colibri-imx6_bin/flash_eth.scr script

********************************************************************************
Notes:
- 115200 baud serial debug console on UARTA aka FFUART (lower X25 on
    EvalBoards resp. X27 on V3.1a depending on JP17/19, X13 on Iris)
- user account: root with empty password
- eMMC: partition 1: vfat with kernel, partition 2 ext3 root file system
- opkg package manager
- HDMI aka DVI-D: not all pixel clock frequencies allow for HDMI audio
- Linux host used for update preparation requires proper 32-bit execution
    environment (e.g. install ia32-libs on 64-bit Ubuntu) and awk (e.g. install
    gawk on Ubuntu)

Working on latest image:
- U-Boot boot loader
  - environment storage in eMMC
  - Ethernet
  - MMC/SD cards
  - eMMC flash
  - RAM size auto detection
  - serial console debug UARTA
  - Toradex Colibri configuration block handling
  - module type auto detection
  - USB storage as host on USB host port
- Linux kernel
  - GPIOlib /sys/class/gpio
  - PWM LEDs /sys/class/leds/
  - temperature sensor CPU /sys/devices/virtual/thermal/thermal_zone0/temp
      board: /sys/devices/soc0/soc.1/2100000.aips-bus/21a4000.i2c/i2c-1/1-0041/stmpe-adc/iio:device0/in_temp8_raw
  - Ethernet
  - eMMC ext3
  - serial console debug UARTA
  - UARTB, UARTC
  - optional RS485
  - I2C via /dev/i2c-X
  - 4-bit SD card mmc1
  - framebuffer console
  - HDMI audio
  - analogue audio playback and capture, resistive touch
  - optional S/PDIF, disabled in device tree
  - SPI via /dev/spidev32766.0
  - custom Ethernet MAC address
  - USB host port
  - USB audio driver
  - USB webcam
  - USB raw HID device /dev/hidrawX
  - USB device Ethernet RNDIS, disabled
  - analog input via IIO framework
  - DVFS power management
  - watchdog
- Linux user-space
  - Firefox browser
  - Gstreamer playback
  - OpenGL
  - LXDE
  - resize rootfs partition to full eMMC capacity
- Display:
  - only first output used by X11
  - backlight PWM
  - dual output on HDMI and parallel RGB, HDMI 1920x1080, RGB 800x480
  - single output on EDT 7" Display
  - single output to analog RGB, aka VGA output
  - resolution setting through modedb string in kernel command line (working
      resolutions to be tested)

Not working or not tested:
- U-Boot boot loader
  - framebuffer support
  - USB device/host switching
- Linux kernel
  - automatic USB device/host detection aka OTG support
  - CAN via can0 and can1, disabled in device tree
  - CAN via MCP2515
  - IrDA
  - optional parallel camera interface
  - RS-422
  - serial number and board revision
  - suspend LP1 (issue with X/framebuffer setup after wakeup)
  - RTC
- Linux user-space
  - Gstreamer encoding (not tested)
  - GPIO config tool not available
- Display:
  - on some monitors HDMI EDID does not negotiate correct timings,
      adding/removing mxc_hdmi.only_cea=1 to the kernel command line may help
  - more than one framebuffer used as a X screen

**************************************************************************
eMMC Boot: Colibri iMX6S 256MB V1.0a (Sample), iMX6DL 512MB V1.0a (Sample)
**************************************************************************

Initial Preparation:
- download and extract Colibri_iMX6_LinuxImageVx.yz.tar.bz2 package with root
    permissions
- use any VFAT formatted SD resp. micro D card with at least 1000 MB of free
    space
- run update.sh script with optional -o argument pointing to mount point of
    above mentioned card

Flash eMMC:
- EvalBoard V3.1a
  - connect serial debug console to UARTA aka FFUART (lower X25) resp. X27
      using null modem RS-232 or regular USB cable
  - insert above prepared SD card into SD/MMC socket (X15)
- Iris V1.1a
  - connect serial debug console to UARTA aka FFUART X13 using null modem RS-232 cable and a
      10 pin IDC to 9 pin D-sub male connector. (DTK or Intel standard)
  - insert above prepared micro SD card into micro SD card socket (X10)
- Boot to U-Boot prompt and start the update:
  - apply power or reset
  - hit any key to stop auto booting
  - use 'run setupdate' U-Boot command and then
  - use 'run update' U-Boot command
- Update a single component
  - U-Boot
    use 'run setupdate' and then 'run update_uboot'
    use 'patch_ddr_size' to set the memory configuration depending on module
      type. (i.e the Colibri iMX6 DL will use only half of the available RAM)
  - Kernel or Linux Device Tree
    use 'run setupdate' and then 'run update_kernel' or 'run update_fdt' respectively

Boot from eMMC:
- above given update command should automatically perform a soft re-boot upon successful completion
- optionally power cycle
- upon first boot post-install scripts are run which takes around 2 minutes,
    please be patient

If the boot loader on the module got corrupted this recovers it by loading U-Boot
  over USB into the module's RAM and executing it there:
- EvalBoard V3.1a
  - connect USB B (X29) or USB micro A/B (X30) to development workstation using
      regular or micro USB cable
  - the jumper JP2 must be open
  - connect serial debug console as stated above
- Iris V1.1a
  - connect USB micro A/B (X12) to development workstation using regular micro USB
      cable
  - connect serial debug console as stated above
(see Colibri iMX6 Datasheet for recovery mode)
- make sure that the carrier board supports USB high speed
  - Iris & EvalBoard V3.1a OK, for other carrier boards see
      http://developer.toradex.com/knowledge-base/usb-2.0-high-speed-%28480mbps%29
- have the module in recovery mode and load U-Boot over USB to the module's RAM:
  - lsusb should show a 15a2:0054 Freescale Semiconductor, Inc. device if
      the module is in recovery mode
  - run ./update.sh -d
  - stop at the U-Boot prompt and begin the update as stated above

Toradex, February 06, 2015