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
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
|
******************************************************
Release Notes: Linux Image V2.x for Colibri VF50/VF61
******************************************************
Contents:
- U-Boot 2011.12 boot loader
- Linux 3.0.15 kernel, based on Freescale TWR-VF65GS10 Timesys LinuxLink 2014-01-27
- OpenEmbedded oe-core 2013.06 based root file system, using LXDE desktop environment
********************************************************************************
Linux Image V2.1 Beta 3 (March 18, 2014)
- U-Boot
- Add default VESA VGA vidargs for our now modedb enabled kernel. This allows
easy specifying an alternate parallel RGB resolution.
- Linux kernel:
- Allow to configure video resolution through modedb (video=dcufb:..).
- Add kernel parameters to change RGB clock polarity.
- Included reworked Fusion multi-touch touchscreen driver.
- Merged Timesys tag 3.0-vybrid-ts2.13.
- Support suspend/resume for Micrel PHY.
- Enable FIFO for UART even when serial console is enabled.
- Enabled wake-up pins SODIMM 43/45.
- Fix and enabled SPI support (DSPI1).
- Platform data for CAN transceiver MCP251x on Evaluation Board.
- Build AC97 driver as module (supports resistive touch only for now).
- Add PWM platform data, export PWM channels as PWM LEDs.
- Linux user-space
- GPIO config tool.
- Add Cortex M4 utility mqxboot and communication library libmcc.
- sources git.toradex.com linux/u-boot branches colibri_vf tag Colibri_VF_LinuxImageV2.1Beta3_20140318
Known Issues:
- If the module does not boot remove all displays connected to HSYNC, VSYNC and reset.
(This has been observed on an Evaluation Board V2.1)
- Analogue audio is not working on the Colibri VF61
********************************************************************************
Linux Image V2.1 Beta 2 (November 29, 2013)
- U-Boot:
- Add initial Colibri VF61 support.
- Implement memory size auto detection.
- Implement module type (e.g. VF50 vs. VF61) auto detection based on L2 cache availability.
- Set specific ARM core clock (e.g. 400 vs. 500 MHz) as well as Linux machine id number.
- Rename configuration to colibri_vf to be universally used for Colibri VF50 as well as VF61.
- Linux kernel:
- Various ADC resp. VF50 touch improvements/fixes.
- Implement internal temperature sensor exposed via /sys/class/hwmon/hwmon0/device/temp1_input.
- Fix VESA VGA display timing.
- Use 16 bpp framebuffer by default to avoid buffer underruns.
- Add the following additional display timings for manual activation:
- 800x480@60 (e.g. EDT ET070080DH6)
- 800x600@60
- 1024x600@60 (e.g. TouchRevolution Fusion 10)
- 1024x768@60
- Allow for 396 as well as 500 MHz A5 core frequency.
- Add the Colibri VF61 machine id and its corresponding machine definition.
- Rename configuration to colibri_vf to be universally used for Colibri VF50 as well as VF61.
- Enable watchdog configuration.
- Fix Freescale's magic daisy chain aka select input IOMUX stuff.
- Fix pixel clock polarity.
- rootfs / oe-core:
- Use branch 'LinuxImageV2.1' in toradex-bsp-platform.git
- Fix recipe to follow the changed khronos headers checksum
- Rename machine to colibri-vf to be universally used for Colibri VF50 as well as VF61
- Unify files for use with VF50/VF61 or add VF61 specific ones
- Don't statically populate /dev. The VFxx console fails on this.
- Improve the console and qt4e image recipe
- sources git.toradex.com linux/u-boot branches colibri_vf tag Colibri_VF_LinuxImageV2.1Beta2_20131129
Known Issues:
- If the module does not boot remove all displays connected to HSYNC, VSYNC and reset.
(This has been observed on an Evaluation Board V2.1)
- LVDS aka TFTLCD resolution hard-coded in kernel to VESA VGA resolution.
- Resistive touch and analogue audio are not working on a Colibri VF61
********************************************************************************
Linux Image V2.1 Beta 1 (October 22, 2013)
- U-Boot:
- Fix long standing boot hang issue introduced by Freescale's Vybrid 1.1 silicon.
- Fix possible uninitialised array member issue in serial number to
hexadecimal coded decimal conversion routine (e.g. as used for
/proc/cpuinfo in Linux).
- Migrate default NAND vs. SD card boot configuration (in-line with Colibri T20)
- Integrate config block handling
- Increase the available space for the U-Boot binary to half a megabyte by booting from gfxRAM rather than sysRAM0.
- Initial support based off Timesys' implementation for Freescale's Vybrid Tower System TWR-VF65GS10:
- New machine ID.
- Default UART_A on SCI0.
- ESDHC2 only.
- 8-bit NAND.
- No quad SPI.
- FEC1 only.
- Enabled command line editing.
- PLL5 based RMII clocking (e.g. no external crystal).
- UART_A, UART_B and UART_C I/O muxing.
- Linux kernel:
- Hackish USBH_PEN implementation.
- Setup memory if mem= is not passed to kernel.
- Enable RTS/CTS on UART_A aka UART0 and UART_B aka UART2.
- Integrate backlight using both BL_ON GPIO and PWM<A>.
- Re-worked IOMUX pin muxing.
- Disable magic SysRq key configuration as this is not only a potential
security thread but can cause serious trouble if for some reason UART pins
are left floating and therefore cause unexpected break conditions.
- Decrease DMA zone size configuration.
- Enable tmpfs POSIX ACL configuration.
- Re-enable L2 cache kernel configuration as it is now only enabled if actually present on chip.
- Implement resistive touch screen driver using ADCs and GPIOs.
- Add Eon Silicon Solutions manufacturer ID and integrate mxc_nand platform data handling.
- Disable NAND controller software ECC in order to use hardware ECC.
- Enable ADC driver as well as debugfs file system.
- Fix DCU clock rounding, set DCU clock to 150.7 MHz, increase display pin drive strength and
configure DCU for VESA VGA with a 30 MHz pixel clock
- Enable CPU idle, NEON, ASRC and printk time.
- Initial support based off Timesys' implementation for Freescale's Vybrid Tower System TWR-VF65GS10:
- New machine ID.
- FEC1 only.
- ESDHC2 only with card detect interrupt.
- PLL5 based RMII clocking (e.g. no external crystal).
- VESA VGA display timing (tested with 5.7" EDT ET057090DHU).
- Default UART_A on SCI0.
- UART_A and UART_C I/O muxing.
- I2C real time clock on carrier board.
- Early boot console support.
- 8-bit NAND.
- rootfs / oe-core:
- OpenEmbedded: layers from dylan
xserver version 1.14
gtk+ 2.24.15
midori 0.5.0
- NEON and hard float enabled build
- feed-config: use the new feed armv7ahf-vfp-neon
- evdev: backport V2.8.1 from dora to get a fix for multitouch events
- browser: use midori
- burnflash: script for configblock generation
- systemd-journald: limit journal size
- sources git.toradex.com linux/u-boot branches colibri_vf tag Colibri_VF50_LinuxImageV2.1Beta1_20131022
Known Issues:
- LVDS aka TFTLCD resolution hard-coded in kernel to VESA VGA resolution.
********************************************************************************
Notes:
- 115200 baud serial debug console on UART0 aka FFUART (lower X25 on EvalBoards resp. X27 on V3.1a depending on JP17/19, X13 on Iris) without any handshake
- user account: root with empty password
- UBIFS flash root file system
- opkg package manager
- 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:
- U-Boot boot loader
- environment storage in NAND flash or on MMC/SD card
- Ethernet
- MMC/SD cards
- RAM size auto detection
- serial console debug UART0
- Toradex Colibri configuration block handling
- module type auto detection
- Linux kernel
- GPIOlib /sys/class/gpio
- temperature sensor /sys/class/hwmon/hwmon0/device/temp1_input
- RTC (Vybrid internal without wakeup support and board level I2C RTC)
- Ethernet eth0
- NAND flash MTD UBIFS
- serial console debug UART0
- Serial UART_A/UART_B and UART_C up to 921600, including RTS/CTS
- I2C via /dev/i2c-X
- MMC/SD card ESDHC2
- PWM LEDs /sys/class/leds/
- Colibri VF61: AC97 resistive touch (early version, load module kernel-module-snd-soc-wm9712/kernel-module-mvf-sai-ac97)
- SPI via /dev/spidev1.0
- framebuffer console
- custom Ethernet MAC Address
- serial number and board revision
- watchdog
- USB host port
- USB raw HID device /dev/hidrawX
- analogue inputs /dev/mvf-adc.{0|1} (see http://developer.toradex.com/knowledge-base/adc-(linux)#Colibri_VFxx)
- power management (standby is LPRun, suspend-to-mem is Stop mode)
- Linux user-space
- graphics (DCU aka parallel RGB)
- Midori browser
- GPIO config tool
- LXDE
- Cortex M4 utility mqxboot
- Communication library libmcc
Not working or not tested:
- U-Boot boot loader
- USB keyboard
- USB storage as host
- framebuffer support
- Linux kernel
- CAN (Vybrid internal)
- USB audio driver
- USB webcam
- USB device Ethernet RNDIS
- automatic USB device/host detection aka OTG support
- optional parallel camera interface
- IrDA
- RS-422/485
- Colibri VF61: Aanalogue audio
*************************************************************
NAND Boot: Colibri VF50 V1.0a and Colibri VF61 V1.0b (Sample)
*************************************************************
If the boot loader in NAND got corrupted SD card boot as described further down can be used as a means of recovery.
Initial Preparation:
- download and extract Colibri_VF_LinuxImageVx.yz.tar.bz2 package with root permissions
- use any VFAT formatted SD resp. uSD card with at least 100 MB of free space
- optionally format the SD resp. uSD card using the format_sd.sh script (warning everything will be erased)
- run update.sh script with optional -o argument pointing to mount point of above mentioned card
Flash NAND:
- EvalBoard V3.1a
- 115200 baud serial debug console on UART0 aka FFUART (lower X25 resp. X27 depending on JP17/19) without any handshake
- insert above prepared SD card into SD card/MMC SDIO-socket (X15)
- Iris V1.1a
- 115200 baud serial debug console on UART0 aka FFUART (X13) without any handshake
- insert above prepared uSD card into uSD card holder (X10)
- apply power or reset
- hit any key to stop auto booting
- use 'mmc part 0 ; fatload mmc 0:1 $loadaddr flash_mmc.img ;source' commands
- use 'run update' command
Boot from NAND:
- EvalBoard V3.1a or Iris V1.1a
- 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
****************************************************************
SD Card Boot: Colibri VF50 V1.0a and Colibri VF61 V1.0b (Sample)
****************************************************************
If the boot loader in NAND got corrupted this can also be used as a means of recovery.
Initial Preparation:
- EvalBoard V3.1a
- select SD boot bootstrap option
- pull the following X8 pins down aka to ground with 1 k ohm resistors: 23 and 33
- pull the following X8 pins up aka to 3.3 volt with 1 k ohm resistors: 21, 27, 34 and 44
- download and extract Colibri_VF_LinuxImageVx.yz.tar.bz2 package with root permissions
Flash SD Card:
- use any SD resp. uSD card of at least 100 MB capacity
- format and flash SD resp. uSD card using format_sd.sh script giving -d argument pointing to
device file of SD card and -f argument (warning everything will be erased)
Boot from SD Card:
- EvalBoard V3.1a
- insert SD card into SD card/MMC SDIO-socket (X15)
- apply power or reset
- upon first boot post-install scripts are run which takes around 2 minutes, please be patient
Toradex, March 18, 2014
|