SlideShare una empresa de Scribd logo
1 de 62
Descargar para leer sin conexión
1.3-10292013-142500
VAB-600 Linux BSP v1.0.3
Development Guide
v1.4
Copyright
Copyright © 2013 VIA Technologies Incorporated. All rights reserved.
No part of this document may be reproduced, transmitted, transcribed, stored in a retrieval system, or translated into any
language, in any form or by any means, electronic, mechanical, magnetic, optical, chemical, manual or otherwise without the
prior written permission of VIA Technologies, Incorporated.
Trademarks
All brands, product names, company names, trademarks and service marks are the property of their respective holders.
Disclaimer
VIA Technologies makes no warranties, implied or otherwise, in regard to this document and to the products described in this
document. The information provided in this document is believed to be accurate and reliable as of the publication date of this
document. However, VIA Technologies assumes no responsibility for the use or misuse of the information in this document
and for any patent infringements that may arise from the use of this document. The information and product specifications
within this document are subject to change at any time, without notice and without obligation to notify any person of such
change.
VIA Technologies, Inc. reserves the right the make changes to the products described in this manual at any time without prior
notice.
VAB-600 Linux BSP v1.0.3 Development Guide
iii
Revision History
Version Date Remarks
1.0 05/08/2013 Initial external release
1.1 05/21/2013 Added TTL panel and modified the part of LVDS panel
1.1 05/23/2013 Added the description of the patches
1.2 08/06/2013
Revised TTL panel and single channel LVDS panel
Added dual channel LVDS panel
Added the description of networking patch
Added PWM frequency control limitation
1.3 10/03/2013
Added the description of GPIO control
Added the description of external RTC control
Added the description of watch dog control
1.4 10/28/2013
Adjust some version errors
Modify external RTC registers descriptions
Add GPIO test example
VAB-600 Linux BSP v1.0.3 Development Guide
iv
Table of Contents
1. Introduction........................................................................................ 1
1.1. Overview......................................................................................1
1.2. Package content..........................................................................1
2. Setup Environment ............................................................................ 3
2.1. System requirement ....................................................................3
2.2. Setup cross-compiling environment ............................................3
3. Building BSP ..................................................................................... 6
3.1. Building kernel.............................................................................6
3.1.1. Setup the kernel source ..........................................................6
3.1.2. Build 3.0.8 kernel source ........................................................6
4. Making System Booting Media........................................................... 8
4.1. Set booting media .......................................................................8
4.1.1. Prepare Debian 7 file system..................................................8
4.1.2. Boot from eMMC.....................................................................9
4.1.3. Boot from SD card.................................................................10
4.1.3.1. Update uboot parameters.............................................10
4.1.3.2. Format the SD card ......................................................11
4.1.3.3. Install kernel and root filesystem to SD card................11
4.1.3.4. Download the fully Debian7 file system .......................12
4.2. Install graphics and multimedia package ..................................15
4.2.1. Prerequisites .........................................................................15
4.2.2. Install graphics driver package .............................................15
4.2.3. Install Multimedia package....................................................17
VAB-600 Linux BSP v1.0.3 Development Guide
v
5. Functionality .................................................................................... 19
5.1. Light LVDS panel (TP070C01)..................................................19
5.2. Light TTL panel (LW700AT9901)..............................................21
5.3. Light Dual Channel LVDS panel (AUO G220SVN01.0)............23
5.4. Light HDMI monitor ...................................................................26
5.5. Switch HDMI mode by xrandr tool.............................................28
5.6. Change Color Depth/bpp...........................................................29
5.7. Multimedia local playback .........................................................30
5.8. Audio adjustment.......................................................................30
5.9. GPIO control..............................................................................33
5.9.1. GPIO hardware design .........................................................33
5.9.2. devmem2 utility .....................................................................34
5.9.2.1. devmem2 utility read and write.....................................35
5.9.3. Test GPIO input and output ..................................................37
5.9.3.1. Test GPIO connection ..................................................37
5.9.3.2. Set GPIO 20-23 to change GPIO 24-27.......................37
5.9.3.3. Set GPIO 24-27 to change GPIO 20-23.......................39
5.10. External RTC control .................................................................41
5.10.1. External RTC hardware design ........................................41
5.10.2. Display external RTC timekeeper registers......................42
5.10.3. Set date and time to external RTC ...................................42
5.10.4. Test auto power-on control of external RTC.....................42
5.10.5. Disable alarm2 and clear alarm2 status of external RTC.44
5.11. Watch dog control .....................................................................45
5.11.1. Enable the watch dog .......................................................45
5.11.2. Set the watch dog timer....................................................46
5.11.3. Get the watch dog timer....................................................47
VAB-600 Linux BSP v1.0.3 Development Guide
vi
5.11.4. Disable the watch dog ......................................................48
6. Debug Message .............................................................................. 49
6.1. Enter U-Boot environment.........................................................49
6.2. Default u-boot parameters.........................................................50
Appendix A. Q&A.................................................................................... 51
Appendix B. Limitation ............................................................................ 52
Appendix C. GPIO registers.................................................................... 53
GPIO Input Data Registers..................................................................53
GPIO Enable Registers .......................................................................53
GPIO Output Enable Registers ...........................................................54
GPIO Output Data Registers...............................................................54
GPIO Pull-up/Pull-down Enable Registers..........................................54
GPIO Pull-up/Pull-down Control Registers..........................................55
GPIO Interrupt Request Status Registers ...........................................55
VAB-600 Linux BSP v1.0.3 Development Guide
1
1. Introduction
1.1. Overview
This document describes how to run Debian 7.0 OS on VIA VAB-600
platform, and evaluates thin client functions.
1.2. Package content
The evaluation package includes:
1. Kernel source:
“/BSP/Kernel_Source_Codes/
VAB-600_Linux_BSP_Kernel_Source_0.03.tar.gz”,
“/BSP/Frame_Buffer_Driver/ANDROID_3.0.8_VE“
2. Toolchain: “/BSP/arm_201103_gcc4.5.2.tgz“
3. Kernel image: “/EVK/Kernel_Image/uzImage.bin”
4. Graphics driver package: locates in “/EVK/BSP/Graphics_Driver”folder
5. Multimedia package: locates in“/EVK/BSP/Multimedia”folder
6. Other file system patches:
locates in“/EVK/BSP/Others”folder
7. Uboot update package:“/EVK/Update_Package”
VAB-600 Linux BSP v1.0.3 Development Guide
3
2. Setup Environment
2.1. System requirement
Host PC:
SD Card reader: SDHC compliant
Operation System: Ubuntu 10.04 x64 version
Target board:
VAB-600 platform (with 4G EMMC)
SD Card: 4GB SDHC (at least). VAB-600 now supports up to class 6
SDHC.
2.2. Setup cross-compiling environment
Get root permission
If you are not login as a root, use “su” command to get the root permission.
Setup the Tool Chain
Please reference 4.2.1 to connect to network. Then perform the packages
update.
apt-get update
VAB-600 Linux BSP v1.0.3 Development Guide
4
Install the build essential packages.
apt-get install git-core gnupg flex bison gperf build-essential 
zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs 
x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev 
libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown 
libxml2-utils xsltproc
Install the uboot mkimage tool.
apt-get install uboot-mkimage
Confirm if the GNU C library version is 2.11 or newer.
# ldd -version
ldd (Ubuntu EGLIBC 2.1.11-0ubuntu7.11) 2.11.1
Copyright (C) 2009 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.
Written by Roland McGrath and Ulrich Drepper.
Unzip the Tool Chain to “/usr/local/arm/” (If your system doesn’t exist this
folder previously, you must create manually with “# mkdir /usr/local/arm”)
# tar -zxvf arm_201103_gcc4.5.2.tgz -C /usr/local/arm/
As Figure 1 shows, the cross compiler is located at
“/usr/local/arm/arm_201103_gcc4.5.2/”
VAB-600 Linux BSP v1.0.3 Development Guide
5
Figure 1. The Toolchain for VAB-600
Export the Tool Chain to system PATH.
# export PATH=/usr/local/arm/arm_201103_gcc4.5.2/mybin/:$PATH
Next, alias the Tool Chain for best floats calculation.
# alias arm_1103_le-as='arm_1103_le-as -mcpu=cortex-a9 -mfpu=neon -mfloat-
abi=softfp'
# alias arm_1103_le-c++='arm_1103_le-c++ -mcpu=cortex-a9 -mfpu=neon -mfloat-
abi=softfp'
# alias arm_1103_le-cpp='arm_1103_le-cpp -mcpu=cortex-a9 -mfpu=neon -mfloat-
abi=softfp'
# alias arm_1103_le-g++='arm_1103_le-g++ -mcpu=cortex-a9 -mfpu=neon -mfloat-
abi=softfp'
# alias arm_1103_le-gcc='arm_1103_le-gcc -mcpu=cortex-a9 -mfpu=neon -mfloat-
abi=softfp'
# alias arm_1103_le-gcc-4.5.2='arm_1103_le-gcc-4.5.2 -mcpu=cortex-a9 -
mfpu=neon -mfloat-abi=softfp'
VAB-600 Linux BSP v1.0.3 Development Guide
6
3. Building BSP
3.1. Building kernel
This section will tell you how to build kernel image from source code.
To use BSP package without spending too much time on building source
code, there is a pre-build kernel image located under “EVKKernel_Image”.
3.1.1.Setup the kernel source
Unzip the Kernel source
# tar -zxvf Linux_BSP_Kernel_Source_0.03.tar.gz
Then the kernel source will be located at
“Linux_BSP_Kernel_Source_0.02.tar.gz”. The“ANDROID_3.0.8” is the
source code.
Copy all the files under the sub-folder
“BSPFrame_Buffer_DriverANDROID_3.0.8_VE” to your corresponding
kernel tree folder and start to build the Linux kernel.
3.1.2.Build 3.0.8 kernel source
How to build 3.0.8 kernel source
To use the default configurations, type the following command.
VAB-600 Linux BSP v1.0.3 Development Guide
7
# make VAB-600_Linux_defconfig
If there is no “VAB-600_Linux_defconfig, “ copy it from
/BSP/Kernel_Source_Codes/ to ${Kernel_Source}/arch/arm/configs/
To modify the unique configurations, input this to enter the menu with the
graphic user interface.
# make menuconfig
After selecting particular options, now it is time to build the kernel image.
# make ubin CROSS_COMPILE=arm_1103_le- -jX
X = The threads to build the kernel image, depend on the efficiency of your
host PC. For example, a platform with three cores CPU and 8GB RAM
should sustain “-j8” parameter.
As shown in Figure 2, it takes a few minutes to get the kernel image,
uzImage.bin.
Figure 2 Building kernel
VAB-600 Linux BSP v1.0.3 Development Guide
8
The uzImage.bin is located at “ANDROID_3.0.8”.
How to make clean the kernel source
Clean the kernel source and it will clean all the built binaries
in“ANDROID_3.0.8”.
# make clean
4. Making System Booting
Media
4.1. Set booting media
4.1.1.Prepare Debian 7 file system
Debian File System:
Prepare the Debian7 root file system, armel-rootfs-20131003_v0.01.tar.tgz.
We need to use the armel-rootfs-20131003_v0.01.tar.tgz to install Debian
with full functions. It locates under
“/EVK/Update_Package/bspinst/packages”folder.
You can also download it from http://rcn-ee.net/deb/minfs/wheezy/
Patches:
VAB-600 Linux BSP v1.0.3 Development Guide
9
Moreover, there are some other patches in
“/EVK/Update_Package/bspinst/packages” which must be manually
copied to SD card when booting from SD card. In this version, the patches
in /EVK/BSP/Others” folder has been previously added to Debian file
system.
If you use the Debian file system obtaining from the website, it certainly
doesn’t contain the patches described below. Therefore, you still must
manually copy the patches to your downloaded Debian file system.
4.1.2.Boot from eMMC
1. Insert SD card to host PC.
2. Find the inserted SD card. Create all the volume to FAT partition, and
name it “update”.
3. Copy the “bspinst” folder and scriptcmd file under
“Update_Package”folder to “update” partition.
4. Once the copy is finished, please un-mount Volume and remove the SD
card.
5. Insert the SD card to VAB-600 and boot.
VAB-600 Linux BSP v1.0.3 Development Guide
10
6. After the installation is finished, please remove SD card. The system will
shut down in 3 seconds.
7. Power on VAB-600, and it will boot from on-board eMMC.
Username: debian
Password: temppwd
4.1.3.Boot from SD card
4.1.3.1. Update uboot parameters
Connect VAB-600 and host PC through COM port. Update uboot
parameters as below.
setenv boot-method boot-emmc
setenv ethaddr 00:40:63:11:23:29 ( If there is no default value )
setenv memtotal 850M
setenv mbsize 62M
setenv wmt.display.dual 0
setenv wmt.display.param 4:6:1:1920:1080:60
setenv wmt.ge.param 1:-1:100:-1
setenv wmt.audio.i2s vt1603:f2:f2:f1:f1:100
setenv boot-emmc "mmcinit 0; fatload mmc 0:1 0x01000000 uzimage.bin; if iminfo
0x01000000; then run set-rfs-emmc; bootm 0x01000000; fi"
setenv set-rfs-emmc "setenv bootargs mem=${memtotal} root=/dev/mmcblk0p2 rw
rootfstype=ext3 noinitrd mbtotal=${mbsize} ${bootargs-common} ${bootargs-extra}"
setenv wmt.plla.param 1:792:1:2:1:1:1
VAB-600 Linux BSP v1.0.3 Development Guide
11
setenv wmt.plla2.param 1:792:1:2:1:1:1
saveenv
reset
Default display setting “setenv wmt.display.param 4:6:1:1920:1080:60”
lights HDMI.
If you want to light LVDS panel, please refer to Section 4.1.
If you want to light TTL panel, please refer to Section 4.2.
4.1.3.2. Format the SD card
Insert the SD card into host PC. Open the Disk Utility (System-
>Administrator->Disk Utility)
If the SD card is already formatted, we need to umount volume first. Then
Delete the Partition to get a clear SD card. Click “Create Partition” to
continue.
Click the SD card reader. Create a FAT partition with 200MB and name it
kernel.
Create an EXT3 partition with remaining space (about 3.7GB) and name it
fs. Then you will get a SD card with FAT and ext3 partition.
4.1.3.3. Install kernel and root filesystem to SD card
Copy the kernel Image uzImage.bin to kernel partition.
Use the following command to unzip the root file system to the ext3
partition on SD card.
VAB-600 Linux BSP v1.0.3 Development Guide
12
# tar -zxvf armel-rootfs-20131003_v0.01.tar.tgz -C /media/fs
Once the unzip procedure is complete. You can see the root file system is
installed in the ext3 partition on SD card.
4.1.3.4. Download the fully Debian7 file system
Connect VAB-600 and host PC through COM port. On the host PC, you will
see the kernel message and login prompt through serial console. The
default username and password is debian/temppwd
Use the following command to get the root permission for the following
steps.
VAB-600 Linux BSP v1.0.3 Development Guide
13
# sudo -i
Get correct ethX by using the command, (X is variable, depending on your
environment.)
# ifconfig -a
Then type the following command in the command prompt to get a DHCP
IP.
# /usr/lib/klibc/bin/ipconfig ethX
Please confirm that the DNS information in /etc/resolv.conf is correct. For
example the DNS for VIA in /etc/resolv.conf is
domain via.com.tw
search via.com.tw
VAB-600 Linux BSP v1.0.3 Development Guide
14
nameserver 10.5.254.150
nameserver 10.5.254.149
Now we are ready to download the fully Debian7 file system.
Type the following command to update the source list.
# apt-get update
Type the following command to install the xorg. Press “Y” to install the xorg.
# apt-get install xorg
Type the following command to install the lxde. Press “Y” to install the lxde.
Please choose the default setting during installation.
# apt-get install lxde
Once you finish the above steps, please reboot the VAB-600 after the
installation is complete. It is required to install the graphic driver in order to
make the user interface work.
VAB-600 Linux BSP v1.0.3 Development Guide
15
4.2. Install graphics and multimedia package
4.2.1.Prerequisites
Enable network
Get correct ethX by using the command, (X is variable, depending on your
environment.)
# ifconfig -a
Enable network
# dhclient ethX
4.2.2.Install graphics driver package
Graphics driver package contains Display(xorg), 2D(EXA), 3D(openGL ES),
video decoder and Mali memory management drivers. Those drivers may
be user space libraries or kernel space kernel modules.
1. 1. Get graphics driver package VAB-600-Debian7.0-Graphics-
v1.0.4.tgz from the folder “/EVK/BSP/Graphics_driver/”.
2. Uncompress the graphics driver.
# tar xzf VAB-600-Debian7.0-Graphics-v1.0.4.tgz
VAB-600 Linux BSP v1.0.3 Development Guide
16
3. Install Graphics driver by script, and reboot the system.
# cd VAB-600-Debian7.0-Graphics-v1.0.4
# sudo sh install.sh
# sudo reboot
4. Check installation result
a. Mali driver(mali_drv.so)
# grep 'mali' /var/log/Xorg.0.log
Success
[ 42.820] (II) LoadModule: "mali"
[ 42.833] (II) Loading /usr/lib/xorg/modules/drivers/mali_drv.so
[ 42.913] (II) Module mali: vendor="X.Org Foundation"
[ 42.913] (II) MALI: driver for Mali Framebuffer: mali
[ 42.913] (WW) Falling back to old probe method for mali
[ 42.917] (EE) MALI(0): mali_drm_open_master DRM OPEN (fd:
0x7)
[ 43.277] (II) MALI(0): maliSetupExa: ENTER
[ 43.280] (II) MALI(0): maliSetupExa: EXIT
Failure -
b. EXA
# grep 'EXA' /var/log/Xorg.0.log
Success
[ 41.073] (II) MALI(0): Mali EXA driver will use GE!
[ 41.073] (II) MALI(0): Mali EXA driver is loaded successfully
[ 41.073] (WW) MALI(0): Initializing EXA Driver!
[ 41.073] (II) EXA(0): Driver allocated offscreen pixmaps
[ 41.077] (II) EXA(0): Driver registered support for the following
operations:
Failure [ 41.073] (WW) MALI(0): Failed allocating EXA Driver!
VAB-600 Linux BSP v1.0.3 Development Guide
17
If results show success, continue the following steps. Otherwise, solve
the problem before taking further action.
4.2.3.Install Multimedia package
Multimedia package contains Gstreamer 0.10.35 environment and ffmpeg
plugin.
1. Set locale. Make sure the network of your Debian system is connected.
Then run:
# apt-get update
# apt-get install locales
# dpkg-reconfigure locales
And choose en_US.UTF-8 UTF-8
2. Get multimedia package VAB-600-Debian7.0-Multimedia-v1.0.1.tgz from
the folder “/EVK/BSP/Multimedia”.
# tar –xvf VAB-600-Debian7.0-Multimedia-v1.0.1.tgz
# cd VAB-600-Debian7.0-Multimedia-v1.0.1
# ./install_quick.sh
3. Check gst plugins version
Run gst-inspect command to check version number of installed gst plugins’.
It should be 1.5.1.
# gst-inspect-0.10 ffdec_wmt_*
VAB-600 Linux BSP v1.0.3 Development Guide
18
Note: Replace "*" by h264, mpeg2video or mpeg4
# gst-inspect-0.10 wmtimagesink
# gst-inspect-0.10 playbin
VAB-600 Linux BSP v1.0.3 Development Guide
19
5. Functionality
5.1. Light LVDS panel (TP070C01)
Connection:
Connect the LVDS panel to VAB-600 via VAB-600-D card.
U-Boot:
Connect VAB-600 and host PC through COM port. Update uboot
parameters as below
setenv wmt.display.param 2:0:24:800:480:60
setenv bootargs-common console=ttyS0,115200n8 console=tty0 init=/init
saveenv
reset
800:480 is LVDS panel resolution. Please replace it with the LVDS panel
resolution that you use.
Xorg:
Edit /etc/X11/xorg.conf in Debian to support LVDS panel display. Delete
“ # ”to select the annotated timing for LVDS panel.
VAB-600 Linux BSP v1.0.3 Development Guide
20
# Modeline "1440x900" 106.50 1440 1528 1672 1904 900 903 909 934 -
hsync +vsync
# Modeline "1920x1080" 173.00 1920 2048 2248 2576 1080 1083 1088
1120 -hsync +vsync
Modeline "800x480" 33.5 800 964 974 1063 480 490 500 523
So does the display resolution for LVDS panel.
Section "Screen"
Identifier "Mali Screen"
Device "Mali FBDEV"
Monitor "Mali Monitor"
DefaultDepth 16
SubSection "Display"
Depth 16
# Modes "1024x768" "800x600"
Modes "800x480"
EndSubSection
EndSection
VAB-600 Linux BSP v1.0.3 Development Guide
21
※ Notice that to light LVDS panel, you have to modify both U-Boot and
Xorg, lack of any step of them may probably cause the failure to display the
LVDS panel.
5.2. Light TTL panel (LW700AT9901)
Connection:
Connect the TTL panel to VAB-600 via VAB-600-C card.
U-Boot:
Connect VAB-600 and host PC through COM port. Update uboot
parameters as below
setenv wmt.display.param 2:1:24:800:480:60
setenv bootargs-common console=ttyS0,115200n8 console=tty0 init=/init
saveenv
reset
800:480 is TTL panel resolution. Please replace it with the TTL panel
resolution that you use.
VAB-600 Linux BSP v1.0.3 Development Guide
22
Xorg:
Edit /etc/X11/xorg.conf in Debian to support TTL panel display. Delete
“ # ”to select the annotated timing for TTL panel.
# Modeline "1440x900" 106.50 1440 1528 1672 1904 900 903 909 934 -
hsync +vsync
# Modeline "1920x1080" 173.00 1920 2048 2248 2576 1080 1083 1088
1120 -hsync +vsync
Modeline "800x480" 33.5 800 964 974 1063 480 490 500 523
So does the display resolution for TTL panel.
Section "Screen"
Identifier "Mali Screen"
Device "Mali FBDEV"
Monitor "Mali Monitor"
DefaultDepth 16
SubSection "Display"
Depth 16
# Modes "1024x768" "800x600"
Modes "800x480"
VAB-600 Linux BSP v1.0.3 Development Guide
23
EndSubSection
EndSection
※ Notice that to light TTL panel, you have to modify both U-Boot and Xorg,
lack of any step of them may probably cause failure to display the TTL
panel.
5.3. Light Dual Channel LVDS panel (AUO
G220SVN01.0)
Connection:
Connect the dual channel LVDS panel to VAB-600 via VAB-600-D card.
U-Boot:
VAB-600 Linux BSP v1.0.3 Development Guide
24
Connect VAB-600 and host PC through COM port. Update uboot
parameters as below
setenv wmt.display.param 2:0:24:1680:1050:60
setenv bootargs-common console=ttyS0,115200n8 console=tty0 init=/init
saveenv
reset
1680:1050 is dual channel LVDS panel resolution. Please replace it with
the dual channel LVDS panel resolution that you use.
Xorg:
Edit /etc/X11/xorg.conf in Debian to support dual channel LVDS panel
display. Delete“ # ”to select the annotated timing for dual channel LVDS
panel.
# Modeline "1920x1080_75" 220.75 1920 2064 2264 2608 1080 1083
1088 1130 -hsync +vsync
Modeline "1680x1050" 146.25 1680 1784 1960 2240 1050 1053 1059
1089 -hsync +vsync
# Modeline "640x480" 23.75 640 664 720 800 480 483 487 500 -hsync
+vsync
So does the display resolution for dual channel LVDS panel.
VAB-600 Linux BSP v1.0.3 Development Guide
25
Section "Screen"
Identifier "Mali Screen"
Device "Mali FBDEV"
Monitor "Mali Monitor"
DefaultDepth 16
SubSection "Display"
Depth 16
# Modes "1024x768" "800x600"
Modes "1680x1050"
EndSubSection
EndSection
※ Notice that to light dual channel LVDS panel, you have to modify both U-
Boot and Xorg, lack of any step of them may probably cause failure to
display the TTL panel.
VAB-600 Linux BSP v1.0.3 Development Guide
26
5.4. Light HDMI monitor
U-Boot:
Connect VAB-600 and host PC through COM port. Update uboot
parameters as below
setenv wmt.display.param 4:6:1:1920:1080:60
setenv bootargs-common console=ttyS0,115200n8 console=tty0 init=/init
saveenv
reset
1920:1080 is HDMI monitor resolution. Actually it will detect EDID
information automatically and choose the maximum resolution, therefore
the setting influences U-Boot logo resolution only.
Xorg:
Edit /etc/X11/xorg.conf in Debian to support HDMI monitor display. Add
“ # ”to annotate the timing for LDS panel.
# Modeline "1440x900" 106.50 1440 1528 1672 1904 900 903 909 934 -
hsync +vsync
# Modeline "1920x1080" 173.00 1920 2048 2248 2576 1080 1083 1088
1120 -hsync +vsync
# Modeline "800x480" 33.5 800 964 974 1063 480 490 500 523
VAB-600 Linux BSP v1.0.3 Development Guide
27
So does the display resolution for LVDS.
Section "Screen"
Identifier "Mali Screen"
Device "Mali FBDEV"
Monitor "Mali Monitor"
DefaultDepth 16
SubSection "Display"
Depth 16
# Modes "1024x768" "800x600"
# Modes "800x480"
EndSubSection
EndSection
※ Notice that to light HDMI monitor normally, you have to modify both U-
Boot and Xorg, lack of any step of them may probably cause the failure to
display the HDMI monitor.
VAB-600 Linux BSP v1.0.3 Development Guide
28
5.5. Switch HDMI mode by xrandr tool
In order to switch Mode, we use xrandr command to switch the resolution
and refresh rate of the monitor.
For example, to list all the supporting modes, we usually run "xrandr -q" or
“xrandr --verbose”.
To switch resolution and refresh rate, such as "800x600@75", we usually
run " xrandr --output DVI-I --mode 800x600 --rate 75", --output DVI-I must
be added and does not need to be changed for every resolution change
xrandr command.
Currently, we only support the display modes that are listed in the following
table. “xrandr -q” command shows the combination/subset of the mode
your display device support (from EDID) and the mode in the following
table. Please do not set “--mode” outside of the result of “xrandr -q”, the “--
rate” can only be followed by 60 or 75. If you can see refresh rate 59.9, just
set it 60.
VAB-600 Linux BSP v1.0.3 Development Guide
29
Resolutions Color Depth Refresh (VIA)
60 75
640 x 480 16/32bit  
800x480 16/32bit 
800 x 600 16/32bit  
1024 x 768 16/32bit  
1280x720 16/32bit 
1280x768 16/32bit 
1280 x 1024 16/32bit  
1360x768 16/32bit 
1400x1050 16/32bit 
1440x900 16/32bit  
1680x1050 16bit 
1920x1080 16bit 
5.6. Change Color Depth/bpp.
Please open /etc/X11/xorg.conf and change DefaultDepth to 16 or 24 to
change the Color Depth. You must restart the x-window, so the change can
take effect.
VAB-600 Linux BSP v1.0.3 Development Guide
30
5.7. Multimedia local playback
Currently we support MPEG1, MPEG2, MPEG4 (except MSMPEGv1/v2),
WMV9/VC1, H264 HW acceleration. Play local multimedia files by the
following command:
# gst-launch-0.10 playbin uri=file:/<path-and-file-name>
Or
# totem <path-and-file-name>
5.8. Audio adjustment
To modify the settings of audio, open a terminal and modulate alsamixer.
# alsamixer
The following figure shows a fine-tuned result of alsamixer.
VAB-600 Linux BSP v1.0.3 Development Guide
31
Click“←”or“→”to choose the item to be modified. Press“M”to turn
on or turn off an option, and click“↓”or“↑”to subtract or add the
value.
To enable PCM audio volume control, “asound.conf”must be reloaded.
To achieve this goal, install the necessary packages first.
# apt-get install alsa-utils
Then operate the playing action to initialize the configurations in
“asound.conf.”
# speaker-test –Dsoftvolume –c2 -twav
VAB-600 Linux BSP v1.0.3 Development Guide
32
After it outputs the test music for several seconds, use CTRL+C to stop the
examination. Next step is to open alsamixer again, check whether PCM
audio volume control appears or not.
The name of PCM audio volume control is “PCM.” Change its value to
observe if the volume alters.
VAB-600 Linux BSP v1.0.3 Development Guide
33
5.9. GPIO control
This section describes how to operate GPIO function. Please use
devmem2 utility to access GPIO, which was pre-installed in the file system
image. If you need to change kernel configurations, please refer to “VAB-
600_Linux_defconfig” in /BSP/Kernel_Source_Codes/ to ensure the GPIO
function.
5.9.1. GPIO hardware design
The GPIO function was provided by CN9 “GPIO / SMBus Interface Pin
Header”. They are mapped to GPIO20 ~ GPIO27. The corresponding pins
in VAB-600 are listed in the following figures.
VAB-600 Linux BSP v1.0.3 Development Guide
34
You can connect your own device to the pins and operate it via the relative
GPIO settings. To manage the particular GPIO, the homologous register
values have to be changed.
5.9.2. devmem2 utility
This utility can also be installed in Linux official distribution.
Use devmem2 utility to read/write GPIO registers.
devmem2 [address] [type] [data]
VAB-600 Linux BSP v1.0.3 Development Guide
35
address : physical address of the register
type : data type to be read/written, [b]yte, [h]alfword or [w]ord
data : data to be written to the register
5.9.2.1. devmem2 utility read and write
For example, if you want to read the register 0xd8110030 in byte format,
you must type the command below.
# devmem2 0xd8110030 b
Same for the writing operation, write 0xff value to the register 0xd81100b0
in byte format with the coming order.
# devmem2 0xd81100b0 b 0xff
VAB-600 Linux BSP v1.0.3 Development Guide
36
For detailed descriptions of GPIO register values, please refer to Appendix
C.
VAB-600 Linux BSP v1.0.3 Development Guide
37
5.9.3. Test GPIO input and output
5.9.3.1. Test GPIO connection
In this test, GPIO 20-23 are connected to GPIO 24-27. Once the state of
GPIO 20–23 are changed, GPIO 24–27 also turn to be the same situation,
and vice versa. In other words, this phenomenon means that the influence
you do to one part may change another side.
Besides, before everything starts, you had batter clean the relative
registers.
# devmem2 0xd81100b0 b 0x0
# devmem2 0xd81100b1 b 0x0
# devmem2 0xd81100f0 b 0x0
# devmem2 0xd81100f1 b 0x0
5.9.3.2. Set GPIO 20-23 to change GPIO 24-27
a. The first step is to examine the value of GPIO 24-27 input data register
value.
# devmem2 0xd8110031 b
/* Read GPIO 24-27 input Registers*/
VAB-600 Linux BSP v1.0.3 Development Guide
38
Obviously, the value should be 0x0.
b. To begin the experiment, set the value of GPIO 20-23 output enable
registers to be high state.
# devmem2 0xd81100b0 b 0xf0
/* Write GPIO 20-23 Output Enable Registers*/
c. Then set the value of GPIO 20-23 output data registers also to be high
state.
# devmem2 0xd81100f0 b 0xf0
/* Write GPIO 20-23 Output Data Registers*/
Now GPIO 20-23 should output the high state, which changes the low state
of GPIO 24-27 to be high state.
d. Examine the value of GPIO 24-27 input data register value.
VAB-600 Linux BSP v1.0.3 Development Guide
39
# devmem2 0xd8110031 b
/* Read GPIO 24-27 input Registers*/
The value should be 0xF because of the influence of GPIO 20-23.
5.9.3.3. Set GPIO 24-27 to change GPIO 20-23
a. The first step is to examine the value of GPIO 20-23 input data register
value.
# devmem2 0xd8110030 b
/* Read GPIO 20-23 input Registers*/
Obviously, the value should be 0x0.
b. To begin the experiment, set the value of GPIO 24-27 output enable
registers to be high state.
# devmem2 0xd81100b1 b 0x0f
/* Write GPIO 24-27 Output Enable Registers*/
VAB-600 Linux BSP v1.0.3 Development Guide
40
c. Then set the value of GPIO 24-27 output data registers also to be high
state.
# devmem2 0xd81100f1 b 0x0f
/* Write GPIO 24-27 Output Data Registers*/
Now GPIO 24-27 should output the high state, which changes the low state
of GPIO 20-23 to be high state.
d. Examine the value of GPIO 20-23 input data register value.
# devmem2 0xd811003b b
/* Read GPIO 20-23 input Registers*/
The value should be 0xF because of the influence of GPIO 24-27.
VAB-600 Linux BSP v1.0.3 Development Guide
41
5.10.External RTC control
This section describes how to operate external RTC function. Please use
i2c-tools utility to access external RTC, which was pre-installed in the file
system image. If you need to change kernel configurations, please refer to
“VAB-600_Linux_defconfig” in /BSP/Kernel_Source_Codes/ to ensure the
external RTC function.
5.10.1.External RTC hardware design
The external RTC IDT1337G was controlled by VAB-600 via I2C0 bus. The
slave address of IDT1337G is 0x68 and it supports 16 timekeeper registers.
The IDT1337G supports auto power-on control by using alarm2 and INTB
pin.
VAB-600 Linux BSP v1.0.3 Development Guide
42
5.10.2. Display external RTC timekeeper registers
# i2cdump -f -y -r 0-15 0 0x68 b
5.10.3. Set date and time to external RTC
# i2cset -f -y 0 0x68 0x0 0x$(date +"%S") // seconds
# i2cset -f -y 0 0x68 0x1 0x$(date +"%M") // minutes
# i2cset -f -y 0 0x68 0x2 0x$(date +"%-k") // hours
# i2cset -f -y 0 0x68 0x3 0x$(date +"%u") // day of week
# i2cset -f -y 0 0x68 0x4 0x$(date +"%d") // date of month
# i2cset -f -y 0 0x68 0x5 0x$(date +"%m") // month
# i2cset -f -y 0 0x68 0x6 0x$(date +"%g") // year
# i2cset -f -y 0 0x68 0xb 0x0 // alarm2 minutes
# i2cset -f -y 0 0x68 0xc 0x0 // alarm2 hours
# i2cset -f -y 0 0x68 0xd 0x0 // alarm2 day or date
# i2cset -f -y 0 0x68 0xe 0x4 // disable alarm
# i2cset -f -y 0 0x68 0xf 0x0 // clear alarm status
5.10.4.Test auto power-on control of external RTC
VAB-600 Linux BSP v1.0.3 Development Guide
43
Configure alarm2 registers to enable auto power-on control.
For example: set alarm each hour.
# I2cset -f -y 0 0x68 0xb 0x0 // alarm2 minutes
# i2cset -f -y 0 0x68 0xc 0x80 // alarm2 hours
# i2cset -f -y 0 0x68 0xd 0x80 // alarm2 day or date
# i2cset -f -y 0 0x68 0xf 0x0 // clear alarm status
# i2cset -f -y 0 0x68 0xe 0x6 // enable alarm2
The register values “0x80” indicate “don’t care.” Only when minutes match
(register value(0x1) == value(0xb)), alarm2 will set, A2F flag is at logic 1
and the INTB pin goes low.
After configuration, you will see the register values like below:
If system time is 10:30 a.m., then the system will auto boot on 11:00 a.m.,
12:00 p.m., 1:00 p.m. and so on.
After auto power-on, you will see the register values like below:
VAB-600 Linux BSP v1.0.3 Development Guide
44
5.10.5.Disable alarm2 and clear alarm2 status of
external RTC
Please remember to disable alarm2 and clear alarm2 status after booting
the system every time. If you don’t disable alarm2 and alarm2 status isn’t
clear, the system will boot right away after shutdown. If alarm2 status is
clear but you don't disable alarm2, the system will still boot on schedule
even the system is running.
Disable alarm and clear alarm status:
# i2cset -f -y 0 0x68 0xe 0x4 // disable alarm
# i2cset -f -y 0 0x68 0xf 0x0 // clear alarm status
In order to boot on schedule, please remember to clear alarm2 status and
enable alarm2 before shutdown.
Clear alarm status and enable alarm2:
# i2cset -f -y 0 0x68 0xf 0x0 // clear alarm status
# i2cset -f -y 0 0x68 0xe 0x6 // enable alarm2
When alarm2 status is not clear, if you enable alarm2 first without clearing
alarm2 status then the system will auto boot after 5 seconds. In order to
avoid this situation, you need to clear alarm2 status first, then enable
alarm2.
VAB-600 Linux BSP v1.0.3 Development Guide
45
5.11.Watch dog control
This section describes how to operate watch dog function. Please use
watch dog utility (wdt_app) to access watch dog, which was pre-installed in
the file system image. If you need to change kernel configurations, please
refer to “VAB-600_Linux_defconfig” in /BSP/Kernel_Source_Codes/ to
ensure the watch dog function.
5.11.1.Enable the watch dog
First of all, the watch dog must be enabled to carry out its tasks.
# wdt_app -et
Without enabling watch dog, the operations that are relative to watch dog
will not take any effect.
VAB-600 Linux BSP v1.0.3 Development Guide
46
5.11.2.Set the watch dog timer
Fill the value of the watch dog timer in this step, decide when the watch
dog can perform its function to restart the system.
# wdt_app –t${second}
${second} means the period counting in seconds to reboot your machine,
which should be within 0 to 256.
For example, you want the system to restart automatically in 180 seconds,
the command format should look like the following texts.
# wdt_app –t180
After 180 seconds, the machine will reboot by itself.
VAB-600 Linux BSP v1.0.3 Development Guide
47
5.11.3.Get the watch dog timer
Once you set the watch dog timer, you may observe the value of the watch
dog timer by this order.
# wdt_app -tg
Its return value will show the number counting down in your watch dog,
which indicates the remaining time before the system restarts.
For instance, in the last step you just set the watch dog timer to 180
seconds, you will see the value of the watch dog timer decreases.
Moreover, to print the return value, add ”echo $?” to the input command.
VAB-600 Linux BSP v1.0.3 Development Guide
48
This figure means that there are still 150 seconds left before the machine
reboots.
5.11.4.Disable the watch dog
To stop the function of watch dog, you can disable watch dog through this
command.
# wdt_app -dt
Therefore, watch dog won’t be active unless you enable watch dog again.
Since the watch dog is closed, nothing will happen even though the timer
counts down to zero.
VAB-600 Linux BSP v1.0.3 Development Guide
49
6. Debug Message
VAB-600 Linux BSP supports debugging with RS232 port.
The RS232 client software (such as putty) should configure the parameters
as follows:
COM speed:115200
COM parity: NONE
COM data: 8
COM stop-bit:1
Use picocom in the HOST PC to open the console.
# picocom -b 115200 /dev/ttyS0
If the picocom is not installed, use ap-get to install it.
# apt-get install picocom
After successfully connecting to VAB-600 through RS232 line, you can
enter the u-boot console and try modifying the u-boot parameters for
various configurations, such as changing display resolution and so on.
6.1. Enter U-Boot environment
VAB-600 Linux platform can stop booting to enter u-boot environment. The
u-boot will initiate hardware at an earlier stage by those parameters.
The u-boot will wait 3 seconds to stop booting after power on by pressing
any key. When booting comes to a halt, the sign “WMT #” will pop up on
terminal screen.
VAB-600 Linux BSP v1.0.3 Development Guide
50
U-Boot is similar to a tiny operation system that has its own commands.
Some important commands and parameters are described here.
 Print online help
WMT # help
 Change display U-boot logo resolution
WMT # setenv wmt.display.param 4:6:1:1280:1024:60
 Save changed parameters
WMT # saveenv
6.2. Default u-boot parameters
The default u-boot parameters are configured in the following file
/update_package/bspinst/bspinst.cfg
The bspinst.cfg file structure has four segments.
 Scenario: board model and boot method
 Common: general setting
 Target (board models): specific setting for each target
 Routine: parameters of boot method
Its content will be parsed and stored into the on-board storage device
during installation procedure described in section 4.1.2
VAB-600 Linux BSP v1.0.3 Development Guide
51
Appendix A. Q&A
Q: When trying to setup static IP address in “Network Connections”, the IP
setup does not take effect.
A: After setting “Network Connections”, user should open a console to shut
down the Ethernet adapter and then turn on by following the command
below, target Ethernet adapter is eth1.
ifconfig eth1 down
ifconfig eth1 up
VAB-600 Linux BSP v1.0.3 Development Guide
52
Appendix B. Limitation
1) On some special monitors, some modes may cause screen garbage
and other display issue. This is probably due to the timing passed by Xorg
that cannot work well with the monitor. In this case, please delete the "#"
before the corresponding Modeline in section "Monitor" of file "xorg.conf".
For example, for mode "1680x1050", we can enable its modeline:
Modeline "1680x1050" 146.25 1680 1784 1960 2240 1050 1053 1059
1089 -hsync +vsync
then switch to this mode.
2) Support smooth video playback of 720P on 1280x1024 display mode.
3) If making action to the playing video or moving mouse over the video,
this video will not sound and be blocked.
4) XVID video will sometimes show garbage.
5). Some VC1 video files may become static when seek or having audio
playback abnormal issue, it can be reproduced on x86 platform with SW
decoder (Totem). It is demuxer issue.
6). If I frame is too long, some video files may pause for a few seconds
after seek and resume, since demuxer could not locate I frame.
7). It is slow when switching between window mode and fullscreen mode.
8). There is no PWM frequency control. In other words, the backlight
brightness can’t be modified.
VAB-600 Linux BSP v1.0.3 Development Guide
53
Appendix C. GPIO registers
GPIO Input Data Registers
Address 0xd8110030 – 0xd8110031
GPIO[27:20] Input Data Register
BIT Attribute Default Description
15:12 RO 4'h0 Reserved
11 RO GPIO27 Signal GPIO Input Data
10 RO GPIO26 Signal GPIO Input Data
9 RO GPIO25 Signal GPIO Input Data
8 RO GPIO24 Signal GPIO Input Data
7 RO GPIO23 Signal GPIO Input Data
6 RO GPIO22 Signal GPIO Input Data
5 RO GPIO21 Signal GPIO Input Data
4 RO GPIO20 Signal GPIO Input Data
3:0 RO Reserved
GPIO Enable Registers
Address 0xd8110070
GPIO[23:20] Enable Register
BIT Attribute Default Description
7:0 RW FFh GPIO[23:20] Enable Register
Address 0xd8110071
GPIO[27:24] Enable Register
BIT Attribute Default Description
7:0 RW 0Fh GPIO[27:24] Enable Register
VAB-600 Linux BSP v1.0.3 Development Guide
54
GPIO Output Enable Registers
Address 0xd81100B0
GPIO[23:20] Output Enable Register
BIT Attribute Default Description
7:0 RW 00h GPIO[23:20] Output Enable Register
Address 0xd81100B1
GPIO[27:24] Output Enable Register
BIT Attribute Default Description
7:0 RW 00h GPIO[27:24] Output Enable Register
GPIO Output Data Registers
Address 0xd81100F0
GPIO[23:20] Output Data Register
BIT Attribute Default Description
7:0 RW 00h GPIO[23:20] Output Data Register
Address 0xd81100F1
GPIO[27:24] Output Data Register
BIT Attribute Default Description
7:0 RW 00h GPIO[27:24] Output Data Register
GPIO Pull-up/Pull-down Enable Registers
VAB-600 Linux BSP v1.0.3 Development Guide
55
Address 0xd81104B0
GPIO[23:20] Pull-up/Pull-down Enable Register
BIT Attribute Default Description
7:0 RW F0h GPIO[23:20] Pull-up/Pull-down Enable
Register
Address 0xd81104B1
GPIO[27:24] Pull-up/Pull-down Enable Register
BIT Attribute Default Description
7:0 RW 0Fh GPIO[27:24] Pull-up/Pull-down Enable
Register
GPIO Pull-up/Pull-down Control Registers
Address 0xd81104F0
GPIO[23:20] Pull-up/Pull-down Control Register
BIT Attribute Default Description
7:0 RW 00h GPIO[23:20] Pull-up/Pull-down
Control Register
Address 0xd81104F1
GPIO[27:24] Pull-up/Pull-down Control Register
BIT Attribute Default Description
7:0 RW 00h GPIO[27:24] Pull-up/Pull-down
Control Register
GPIO Interrupt Request Status Registers
Address 0xd8110362
GPIO Interrupt Request Status Register (GPIO[23:20])
VAB-600 Linux BSP v1.0.3 Development Guide
56
BIT Attribute Default Description
7 RW1C 0 GPIO23 Interrupt Status
When this bit is inactive (a zero), it
indicates that no interrupt
has been configured and detected on
the associated signal.
When this bit is active (an one), it
indicates that an interrupt
request has been configured and
detected on the associated
signal. Once this bit is active (an one),
software must write an
one to this bit to clear it inactive (a
zero), otherwise this bit and
the associated GPIO Interrupt Request
will remain active (an
one).
6 RW1C 0 GPIO22 Interrupt Status
5 RW1C 0 GPIO21 Interrupt Status
4 RW1C 0 GPIO20 Interrupt Status
Address 0xd8110363
GPIO Interrupt Request Status Register (GPIO[27:24])
BIT Attribute Default Description
3 RW1C 0 GPIO27 Interrupt Status
2 RW1C 0 GPIO26 Interrupt Status
1 RW1C 0 GPIO25 Interrupt Status
0 RW1C 0 GPIO24 Interrupt Status

Más contenido relacionado

La actualidad más candente

Vyatta Installation And Upgrade Vc5 V01
Vyatta Installation And Upgrade Vc5 V01Vyatta Installation And Upgrade Vc5 V01
Vyatta Installation And Upgrade Vc5 V01Kittanun Nuaon
 
E1125 Terminator P4 533 No Pw
E1125 Terminator P4 533 No PwE1125 Terminator P4 533 No Pw
E1125 Terminator P4 533 No Pwguestfa23fdd9
 
X5 user manual v1.0a
X5 user manual v1.0aX5 user manual v1.0a
X5 user manual v1.0aNeder Burgos
 
IBM Power 710 and 730 Technical Overview and Introduction
IBM Power 710 and 730 Technical Overview and IntroductionIBM Power 710 and 730 Technical Overview and Introduction
IBM Power 710 and 730 Technical Overview and IntroductionIBM India Smarter Computing
 
Device net guide
Device net guideDevice net guide
Device net guideares111
 
E1911 a8n e
E1911 a8n eE1911 a8n e
E1911 a8n epratmen
 
KDU Zebra - Manual do Dispositivo
KDU Zebra - Manual do DispositivoKDU Zebra - Manual do Dispositivo
KDU Zebra - Manual do DispositivoUseZ
 
Eva9000 9150 um_27_mar09
Eva9000 9150 um_27_mar09Eva9000 9150 um_27_mar09
Eva9000 9150 um_27_mar09Billy81
 
Introduction to the EMC VNX Series VNX5100, VNX5300, VNX5500, VNX5700, and VN...
Introduction to the EMC VNX Series VNX5100, VNX5300, VNX5500, VNX5700, and VN...Introduction to the EMC VNX Series VNX5100, VNX5300, VNX5500, VNX5700, and VN...
Introduction to the EMC VNX Series VNX5100, VNX5300, VNX5500, VNX5700, and VN...EMC
 

La actualidad más candente (16)

H61 m vs
H61 m vsH61 m vs
H61 m vs
 
Vyatta Installation And Upgrade Vc5 V01
Vyatta Installation And Upgrade Vc5 V01Vyatta Installation And Upgrade Vc5 V01
Vyatta Installation And Upgrade Vc5 V01
 
E1125 Terminator P4 533 No Pw
E1125 Terminator P4 533 No PwE1125 Terminator P4 533 No Pw
E1125 Terminator P4 533 No Pw
 
X5 user manual v1.0a
X5 user manual v1.0aX5 user manual v1.0a
X5 user manual v1.0a
 
Cbjdhc
CbjdhcCbjdhc
Cbjdhc
 
IBM Power 710 and 730 Technical Overview and Introduction
IBM Power 710 and 730 Technical Overview and IntroductionIBM Power 710 and 730 Technical Overview and Introduction
IBM Power 710 and 730 Technical Overview and Introduction
 
E4937 M4 A785 M
E4937 M4 A785 ME4937 M4 A785 M
E4937 M4 A785 M
 
Device net guide
Device net guideDevice net guide
Device net guide
 
Configuration guide legacy
Configuration guide legacyConfiguration guide legacy
Configuration guide legacy
 
E1911 a8n e
E1911 a8n eE1911 a8n e
E1911 a8n e
 
KDU Zebra - Manual do Dispositivo
KDU Zebra - Manual do DispositivoKDU Zebra - Manual do Dispositivo
KDU Zebra - Manual do Dispositivo
 
Mhdd advanced-diag
Mhdd advanced-diagMhdd advanced-diag
Mhdd advanced-diag
 
Eva9000 9150 um_27_mar09
Eva9000 9150 um_27_mar09Eva9000 9150 um_27_mar09
Eva9000 9150 um_27_mar09
 
e1171_p4se-u2
e1171_p4se-u2e1171_p4se-u2
e1171_p4se-u2
 
ASUS K8V-X SE
ASUS K8V-X SEASUS K8V-X SE
ASUS K8V-X SE
 
Introduction to the EMC VNX Series VNX5100, VNX5300, VNX5500, VNX5700, and VN...
Introduction to the EMC VNX Series VNX5100, VNX5300, VNX5500, VNX5700, and VN...Introduction to the EMC VNX Series VNX5100, VNX5300, VNX5500, VNX5700, and VN...
Introduction to the EMC VNX Series VNX5100, VNX5300, VNX5500, VNX5700, and VN...
 

Destacado

A punto, presentado por Julian Garcia, www.apuntonorte.com
A punto, presentado por Julian Garcia, www.apuntonorte.comA punto, presentado por Julian Garcia, www.apuntonorte.com
A punto, presentado por Julian Garcia, www.apuntonorte.comGestor Desafío Oviedo
 
Requisitos de créditos jovenes (2)
Requisitos de créditos jovenes (2)Requisitos de créditos jovenes (2)
Requisitos de créditos jovenes (2)Camila Gálvez
 
Revista Virtual "Lambayeque Exporta Ya",Edic. N°02, Junio 2012
Revista Virtual "Lambayeque Exporta Ya",Edic. N°02, Junio 2012Revista Virtual "Lambayeque Exporta Ya",Edic. N°02, Junio 2012
Revista Virtual "Lambayeque Exporta Ya",Edic. N°02, Junio 2012AREX Lambayeque
 
Pousada na Praia do Santinho
Pousada na Praia do SantinhoPousada na Praia do Santinho
Pousada na Praia do Santinhocostaodailha
 
Emeequis el cartel de la dea
Emeequis el cartel de la deaEmeequis el cartel de la dea
Emeequis el cartel de la deaMartin Triana
 
Spicologia observacion
Spicologia observacionSpicologia observacion
Spicologia observacionjennifer234
 
7 días para desintoxicarte de la tecnología
7 días para desintoxicarte de la tecnología7 días para desintoxicarte de la tecnología
7 días para desintoxicarte de la tecnologíaMOAConsulting
 
7 Myths About Email Marketing Timing [a WGM Infographic]
7 Myths About Email Marketing Timing [a WGM Infographic]7 Myths About Email Marketing Timing [a WGM Infographic]
7 Myths About Email Marketing Timing [a WGM Infographic]Wine Glass Marketing
 
Colectivo Ornitológico Cigüeña Negra Actividades 2013
Colectivo Ornitológico Cigüeña Negra Actividades 2013 Colectivo Ornitológico Cigüeña Negra Actividades 2013
Colectivo Ornitológico Cigüeña Negra Actividades 2013 Voluntariado Ambiental Foro
 
Ets y embarazo
Ets  y embarazo Ets  y embarazo
Ets y embarazo Jessy
 
manual_influenza_v_final_5dic12
manual_influenza_v_final_5dic12manual_influenza_v_final_5dic12
manual_influenza_v_final_5dic12A Javier Santana
 
PureApp Presentation
PureApp PresentationPureApp Presentation
PureApp PresentationProlifics
 
Product Innovation & Management
Product Innovation & ManagementProduct Innovation & Management
Product Innovation & ManagementKevin Chetty
 
Viewability - the next metric in Online Advertising
Viewability - the next metric in Online AdvertisingViewability - the next metric in Online Advertising
Viewability - the next metric in Online AdvertisingIABRomania
 

Destacado (20)

A punto, presentado por Julian Garcia, www.apuntonorte.com
A punto, presentado por Julian Garcia, www.apuntonorte.comA punto, presentado por Julian Garcia, www.apuntonorte.com
A punto, presentado por Julian Garcia, www.apuntonorte.com
 
Seda news october12-final
Seda news october12-finalSeda news october12-final
Seda news october12-final
 
Requisitos de créditos jovenes (2)
Requisitos de créditos jovenes (2)Requisitos de créditos jovenes (2)
Requisitos de créditos jovenes (2)
 
El manual de clase, un mundo por descubrir
El manual de clase, un mundo por descubrirEl manual de clase, un mundo por descubrir
El manual de clase, un mundo por descubrir
 
Revista Virtual "Lambayeque Exporta Ya",Edic. N°02, Junio 2012
Revista Virtual "Lambayeque Exporta Ya",Edic. N°02, Junio 2012Revista Virtual "Lambayeque Exporta Ya",Edic. N°02, Junio 2012
Revista Virtual "Lambayeque Exporta Ya",Edic. N°02, Junio 2012
 
Pousada na Praia do Santinho
Pousada na Praia do SantinhoPousada na Praia do Santinho
Pousada na Praia do Santinho
 
Emeequis el cartel de la dea
Emeequis el cartel de la deaEmeequis el cartel de la dea
Emeequis el cartel de la dea
 
Hoja de vida
Hoja de vidaHoja de vida
Hoja de vida
 
Spicologia observacion
Spicologia observacionSpicologia observacion
Spicologia observacion
 
7 días para desintoxicarte de la tecnología
7 días para desintoxicarte de la tecnología7 días para desintoxicarte de la tecnología
7 días para desintoxicarte de la tecnología
 
Sustainability Report - 2005 - 2006
Sustainability Report - 2005 - 2006Sustainability Report - 2005 - 2006
Sustainability Report - 2005 - 2006
 
7 Myths About Email Marketing Timing [a WGM Infographic]
7 Myths About Email Marketing Timing [a WGM Infographic]7 Myths About Email Marketing Timing [a WGM Infographic]
7 Myths About Email Marketing Timing [a WGM Infographic]
 
Colectivo Ornitológico Cigüeña Negra Actividades 2013
Colectivo Ornitológico Cigüeña Negra Actividades 2013 Colectivo Ornitológico Cigüeña Negra Actividades 2013
Colectivo Ornitológico Cigüeña Negra Actividades 2013
 
Ets y embarazo
Ets  y embarazo Ets  y embarazo
Ets y embarazo
 
manual_influenza_v_final_5dic12
manual_influenza_v_final_5dic12manual_influenza_v_final_5dic12
manual_influenza_v_final_5dic12
 
PureApp Presentation
PureApp PresentationPureApp Presentation
PureApp Presentation
 
Uae watergy 09_15
Uae watergy 09_15Uae watergy 09_15
Uae watergy 09_15
 
Broschüre zur K2-Tagung Interne Kommunikation 2011
Broschüre zur K2-Tagung Interne Kommunikation 2011Broschüre zur K2-Tagung Interne Kommunikation 2011
Broschüre zur K2-Tagung Interne Kommunikation 2011
 
Product Innovation & Management
Product Innovation & ManagementProduct Innovation & Management
Product Innovation & Management
 
Viewability - the next metric in Online Advertising
Viewability - the next metric in Online AdvertisingViewability - the next metric in Online Advertising
Viewability - the next metric in Online Advertising
 

Similar a VIA VAB-600 Springboard Linux BSP Development Guide

Motorola solutions wing 4.4 ap51xx access point product reference guide (part...
Motorola solutions wing 4.4 ap51xx access point product reference guide (part...Motorola solutions wing 4.4 ap51xx access point product reference guide (part...
Motorola solutions wing 4.4 ap51xx access point product reference guide (part...Advantec Distribution
 
Asus K8V SE Deluxe Motherboard
Asus K8V SE Deluxe MotherboardAsus K8V SE Deluxe Motherboard
Asus K8V SE Deluxe Motherboardbettlebrox
 
Liztek USB 3.0 to HDMI Video Graphics Adapter Card
Liztek USB 3.0 to HDMI Video Graphics Adapter CardLiztek USB 3.0 to HDMI Video Graphics Adapter Card
Liztek USB 3.0 to HDMI Video Graphics Adapter CardGurin Products, LLC
 
Motorola solutions wing 4.4 ap7131 n access point product reference guide (pa...
Motorola solutions wing 4.4 ap7131 n access point product reference guide (pa...Motorola solutions wing 4.4 ap7131 n access point product reference guide (pa...
Motorola solutions wing 4.4 ap7131 n access point product reference guide (pa...Advantec Distribution
 
Motorola solutions wing 4.4 ap7131 n access point product reference guide (pa...
Motorola solutions wing 4.4 ap7131 n access point product reference guide (pa...Motorola solutions wing 4.4 ap7131 n access point product reference guide (pa...
Motorola solutions wing 4.4 ap7131 n access point product reference guide (pa...Advantec Distribution
 
Manual 770 extreme3
Manual 770 extreme3Manual 770 extreme3
Manual 770 extreme3liourte
 
IBM PowerVM Virtualization Introduction and Configuration
IBM PowerVM Virtualization Introduction and ConfigurationIBM PowerVM Virtualization Introduction and Configuration
IBM PowerVM Virtualization Introduction and ConfigurationIBM India Smarter Computing
 
Especificações N68C-S UCC.pdf
Especificações N68C-S UCC.pdfEspecificações N68C-S UCC.pdf
Especificações N68C-S UCC.pdfEdson712605
 
Panelviewplusmanual
PanelviewplusmanualPanelviewplusmanual
PanelviewplusmanualVane Gimenez
 
Ap 51xx access point product reference guide
Ap 51xx access point product reference guideAp 51xx access point product reference guide
Ap 51xx access point product reference guideAdvantec Distribution
 
Ap 51xx access point product reference guide
Ap 51xx access point product reference guideAp 51xx access point product reference guide
Ap 51xx access point product reference guideAdvantec Distribution
 
E2027 a8v e-se
E2027 a8v e-seE2027 a8v e-se
E2027 a8v e-seyyc73
 

Similar a VIA VAB-600 Springboard Linux BSP Development Guide (20)

Book
BookBook
Book
 
Ap51 xx reference_guide
Ap51 xx reference_guideAp51 xx reference_guide
Ap51 xx reference_guide
 
Ap51 xx reference_guide
Ap51 xx reference_guideAp51 xx reference_guide
Ap51 xx reference_guide
 
Motorola solutions wing 4.4 ap51xx access point product reference guide (part...
Motorola solutions wing 4.4 ap51xx access point product reference guide (part...Motorola solutions wing 4.4 ap51xx access point product reference guide (part...
Motorola solutions wing 4.4 ap51xx access point product reference guide (part...
 
Asus K8V SE Deluxe Motherboard
Asus K8V SE Deluxe MotherboardAsus K8V SE Deluxe Motherboard
Asus K8V SE Deluxe Motherboard
 
H61 m vs r2.0
H61 m vs r2.0H61 m vs r2.0
H61 m vs r2.0
 
Liztek USB 3.0 to HDMI Video Graphics Adapter Card
Liztek USB 3.0 to HDMI Video Graphics Adapter CardLiztek USB 3.0 to HDMI Video Graphics Adapter Card
Liztek USB 3.0 to HDMI Video Graphics Adapter Card
 
Motorola solutions wing 4.4 ap7131 n access point product reference guide (pa...
Motorola solutions wing 4.4 ap7131 n access point product reference guide (pa...Motorola solutions wing 4.4 ap7131 n access point product reference guide (pa...
Motorola solutions wing 4.4 ap7131 n access point product reference guide (pa...
 
Motorola solutions wing 4.4 ap7131 n access point product reference guide (pa...
Motorola solutions wing 4.4 ap7131 n access point product reference guide (pa...Motorola solutions wing 4.4 ap7131 n access point product reference guide (pa...
Motorola solutions wing 4.4 ap7131 n access point product reference guide (pa...
 
N68 c gs fx
N68 c gs fxN68 c gs fx
N68 c gs fx
 
Manual 770 extreme3
Manual 770 extreme3Manual 770 extreme3
Manual 770 extreme3
 
IBM PowerVM Virtualization Introduction and Configuration
IBM PowerVM Virtualization Introduction and ConfigurationIBM PowerVM Virtualization Introduction and Configuration
IBM PowerVM Virtualization Introduction and Configuration
 
Manual CLP Omron CP1H
Manual CLP Omron CP1HManual CLP Omron CP1H
Manual CLP Omron CP1H
 
Especificações N68C-S UCC.pdf
Especificações N68C-S UCC.pdfEspecificações N68C-S UCC.pdf
Especificações N68C-S UCC.pdf
 
Program Directory for IBM Ported Tools for z/OS
Program Directory for IBM Ported Tools for z/OSProgram Directory for IBM Ported Tools for z/OS
Program Directory for IBM Ported Tools for z/OS
 
Panelviewplusmanual
PanelviewplusmanualPanelviewplusmanual
Panelviewplusmanual
 
Ap 51xx access point product reference guide
Ap 51xx access point product reference guideAp 51xx access point product reference guide
Ap 51xx access point product reference guide
 
Ap 51xx access point product reference guide
Ap 51xx access point product reference guideAp 51xx access point product reference guide
Ap 51xx access point product reference guide
 
E2027 a8v e-se
E2027 a8v e-seE2027 a8v e-se
E2027 a8v e-se
 
IBM PowerVM Best Practices
IBM PowerVM Best PracticesIBM PowerVM Best Practices
IBM PowerVM Best Practices
 

Más de Gergely Imreh

Do you really want to be this cheap?
Do you really want to be this cheap?Do you really want to be this cheap?
Do you really want to be this cheap?Gergely Imreh
 
Introduction to Open Source Hardware
Introduction to Open Source HardwareIntroduction to Open Source Hardware
Introduction to Open Source HardwareGergely Imreh
 
Taiwan's Habeas Corpus Act, English translation
Taiwan's Habeas Corpus Act, English translationTaiwan's Habeas Corpus Act, English translation
Taiwan's Habeas Corpus Act, English translationGergely Imreh
 
Innovation through an open social platform: The case of the Taipei Hackerspace
Innovation through an open social platform: The case of the Taipei HackerspaceInnovation through an open social platform: The case of the Taipei Hackerspace
Innovation through an open social platform: The case of the Taipei HackerspaceGergely Imreh
 
PCIeDuino328 Schematic v1
PCIeDuino328 Schematic v1PCIeDuino328 Schematic v1
PCIeDuino328 Schematic v1Gergely Imreh
 
ICT-104 bill acceptor protocol
ICT-104 bill acceptor protocolICT-104 bill acceptor protocol
ICT-104 bill acceptor protocolGergely Imreh
 
Hackerspaces from around the world to Taiwan
Hackerspaces from around the world to TaiwanHackerspaces from around the world to Taiwan
Hackerspaces from around the world to TaiwanGergely Imreh
 
Python in a physics lab
Python in a physics labPython in a physics lab
Python in a physics labGergely Imreh
 
Gergely Imreh: Enlighten Us But Make It Quick
Gergely Imreh: Enlighten Us But Make It QuickGergely Imreh: Enlighten Us But Make It Quick
Gergely Imreh: Enlighten Us But Make It QuickGergely Imreh
 
Future Shorts Taipei intro
Future Shorts Taipei introFuture Shorts Taipei intro
Future Shorts Taipei introGergely Imreh
 

Más de Gergely Imreh (10)

Do you really want to be this cheap?
Do you really want to be this cheap?Do you really want to be this cheap?
Do you really want to be this cheap?
 
Introduction to Open Source Hardware
Introduction to Open Source HardwareIntroduction to Open Source Hardware
Introduction to Open Source Hardware
 
Taiwan's Habeas Corpus Act, English translation
Taiwan's Habeas Corpus Act, English translationTaiwan's Habeas Corpus Act, English translation
Taiwan's Habeas Corpus Act, English translation
 
Innovation through an open social platform: The case of the Taipei Hackerspace
Innovation through an open social platform: The case of the Taipei HackerspaceInnovation through an open social platform: The case of the Taipei Hackerspace
Innovation through an open social platform: The case of the Taipei Hackerspace
 
PCIeDuino328 Schematic v1
PCIeDuino328 Schematic v1PCIeDuino328 Schematic v1
PCIeDuino328 Schematic v1
 
ICT-104 bill acceptor protocol
ICT-104 bill acceptor protocolICT-104 bill acceptor protocol
ICT-104 bill acceptor protocol
 
Hackerspaces from around the world to Taiwan
Hackerspaces from around the world to TaiwanHackerspaces from around the world to Taiwan
Hackerspaces from around the world to Taiwan
 
Python in a physics lab
Python in a physics labPython in a physics lab
Python in a physics lab
 
Gergely Imreh: Enlighten Us But Make It Quick
Gergely Imreh: Enlighten Us But Make It QuickGergely Imreh: Enlighten Us But Make It Quick
Gergely Imreh: Enlighten Us But Make It Quick
 
Future Shorts Taipei intro
Future Shorts Taipei introFuture Shorts Taipei intro
Future Shorts Taipei intro
 

Último

英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanyChristoph Pohl
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfFerryKemperman
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
Best Web Development Agency- Idiosys USA.pdf
Best Web Development Agency- Idiosys USA.pdfBest Web Development Agency- Idiosys USA.pdf
Best Web Development Agency- Idiosys USA.pdfIdiosysTechnologies1
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Natan Silnitsky
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
How to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfHow to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfLivetecs LLC
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commercemanigoyal112
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfStefano Stabellini
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noidabntitsolutionsrishis
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...Technogeeks
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odishasmiwainfosol
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Mater
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 

Último (20)

英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdf
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
Best Web Development Agency- Idiosys USA.pdf
Best Web Development Agency- Idiosys USA.pdfBest Web Development Agency- Idiosys USA.pdf
Best Web Development Agency- Idiosys USA.pdf
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
How to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfHow to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdf
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commerce
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdf
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 

VIA VAB-600 Springboard Linux BSP Development Guide

  • 1. 1.3-10292013-142500 VAB-600 Linux BSP v1.0.3 Development Guide v1.4
  • 2. Copyright Copyright © 2013 VIA Technologies Incorporated. All rights reserved. No part of this document may be reproduced, transmitted, transcribed, stored in a retrieval system, or translated into any language, in any form or by any means, electronic, mechanical, magnetic, optical, chemical, manual or otherwise without the prior written permission of VIA Technologies, Incorporated. Trademarks All brands, product names, company names, trademarks and service marks are the property of their respective holders. Disclaimer VIA Technologies makes no warranties, implied or otherwise, in regard to this document and to the products described in this document. The information provided in this document is believed to be accurate and reliable as of the publication date of this document. However, VIA Technologies assumes no responsibility for the use or misuse of the information in this document and for any patent infringements that may arise from the use of this document. The information and product specifications within this document are subject to change at any time, without notice and without obligation to notify any person of such change. VIA Technologies, Inc. reserves the right the make changes to the products described in this manual at any time without prior notice.
  • 3. VAB-600 Linux BSP v1.0.3 Development Guide iii Revision History Version Date Remarks 1.0 05/08/2013 Initial external release 1.1 05/21/2013 Added TTL panel and modified the part of LVDS panel 1.1 05/23/2013 Added the description of the patches 1.2 08/06/2013 Revised TTL panel and single channel LVDS panel Added dual channel LVDS panel Added the description of networking patch Added PWM frequency control limitation 1.3 10/03/2013 Added the description of GPIO control Added the description of external RTC control Added the description of watch dog control 1.4 10/28/2013 Adjust some version errors Modify external RTC registers descriptions Add GPIO test example
  • 4. VAB-600 Linux BSP v1.0.3 Development Guide iv Table of Contents 1. Introduction........................................................................................ 1 1.1. Overview......................................................................................1 1.2. Package content..........................................................................1 2. Setup Environment ............................................................................ 3 2.1. System requirement ....................................................................3 2.2. Setup cross-compiling environment ............................................3 3. Building BSP ..................................................................................... 6 3.1. Building kernel.............................................................................6 3.1.1. Setup the kernel source ..........................................................6 3.1.2. Build 3.0.8 kernel source ........................................................6 4. Making System Booting Media........................................................... 8 4.1. Set booting media .......................................................................8 4.1.1. Prepare Debian 7 file system..................................................8 4.1.2. Boot from eMMC.....................................................................9 4.1.3. Boot from SD card.................................................................10 4.1.3.1. Update uboot parameters.............................................10 4.1.3.2. Format the SD card ......................................................11 4.1.3.3. Install kernel and root filesystem to SD card................11 4.1.3.4. Download the fully Debian7 file system .......................12 4.2. Install graphics and multimedia package ..................................15 4.2.1. Prerequisites .........................................................................15 4.2.2. Install graphics driver package .............................................15 4.2.3. Install Multimedia package....................................................17
  • 5. VAB-600 Linux BSP v1.0.3 Development Guide v 5. Functionality .................................................................................... 19 5.1. Light LVDS panel (TP070C01)..................................................19 5.2. Light TTL panel (LW700AT9901)..............................................21 5.3. Light Dual Channel LVDS panel (AUO G220SVN01.0)............23 5.4. Light HDMI monitor ...................................................................26 5.5. Switch HDMI mode by xrandr tool.............................................28 5.6. Change Color Depth/bpp...........................................................29 5.7. Multimedia local playback .........................................................30 5.8. Audio adjustment.......................................................................30 5.9. GPIO control..............................................................................33 5.9.1. GPIO hardware design .........................................................33 5.9.2. devmem2 utility .....................................................................34 5.9.2.1. devmem2 utility read and write.....................................35 5.9.3. Test GPIO input and output ..................................................37 5.9.3.1. Test GPIO connection ..................................................37 5.9.3.2. Set GPIO 20-23 to change GPIO 24-27.......................37 5.9.3.3. Set GPIO 24-27 to change GPIO 20-23.......................39 5.10. External RTC control .................................................................41 5.10.1. External RTC hardware design ........................................41 5.10.2. Display external RTC timekeeper registers......................42 5.10.3. Set date and time to external RTC ...................................42 5.10.4. Test auto power-on control of external RTC.....................42 5.10.5. Disable alarm2 and clear alarm2 status of external RTC.44 5.11. Watch dog control .....................................................................45 5.11.1. Enable the watch dog .......................................................45 5.11.2. Set the watch dog timer....................................................46 5.11.3. Get the watch dog timer....................................................47
  • 6. VAB-600 Linux BSP v1.0.3 Development Guide vi 5.11.4. Disable the watch dog ......................................................48 6. Debug Message .............................................................................. 49 6.1. Enter U-Boot environment.........................................................49 6.2. Default u-boot parameters.........................................................50 Appendix A. Q&A.................................................................................... 51 Appendix B. Limitation ............................................................................ 52 Appendix C. GPIO registers.................................................................... 53 GPIO Input Data Registers..................................................................53 GPIO Enable Registers .......................................................................53 GPIO Output Enable Registers ...........................................................54 GPIO Output Data Registers...............................................................54 GPIO Pull-up/Pull-down Enable Registers..........................................54 GPIO Pull-up/Pull-down Control Registers..........................................55 GPIO Interrupt Request Status Registers ...........................................55
  • 7. VAB-600 Linux BSP v1.0.3 Development Guide 1 1. Introduction 1.1. Overview This document describes how to run Debian 7.0 OS on VIA VAB-600 platform, and evaluates thin client functions. 1.2. Package content The evaluation package includes: 1. Kernel source: “/BSP/Kernel_Source_Codes/ VAB-600_Linux_BSP_Kernel_Source_0.03.tar.gz”, “/BSP/Frame_Buffer_Driver/ANDROID_3.0.8_VE“ 2. Toolchain: “/BSP/arm_201103_gcc4.5.2.tgz“ 3. Kernel image: “/EVK/Kernel_Image/uzImage.bin” 4. Graphics driver package: locates in “/EVK/BSP/Graphics_Driver”folder 5. Multimedia package: locates in“/EVK/BSP/Multimedia”folder 6. Other file system patches: locates in“/EVK/BSP/Others”folder 7. Uboot update package:“/EVK/Update_Package”
  • 8.
  • 9. VAB-600 Linux BSP v1.0.3 Development Guide 3 2. Setup Environment 2.1. System requirement Host PC: SD Card reader: SDHC compliant Operation System: Ubuntu 10.04 x64 version Target board: VAB-600 platform (with 4G EMMC) SD Card: 4GB SDHC (at least). VAB-600 now supports up to class 6 SDHC. 2.2. Setup cross-compiling environment Get root permission If you are not login as a root, use “su” command to get the root permission. Setup the Tool Chain Please reference 4.2.1 to connect to network. Then perform the packages update. apt-get update
  • 10. VAB-600 Linux BSP v1.0.3 Development Guide 4 Install the build essential packages. apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc Install the uboot mkimage tool. apt-get install uboot-mkimage Confirm if the GNU C library version is 2.11 or newer. # ldd -version ldd (Ubuntu EGLIBC 2.1.11-0ubuntu7.11) 2.11.1 Copyright (C) 2009 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Written by Roland McGrath and Ulrich Drepper. Unzip the Tool Chain to “/usr/local/arm/” (If your system doesn’t exist this folder previously, you must create manually with “# mkdir /usr/local/arm”) # tar -zxvf arm_201103_gcc4.5.2.tgz -C /usr/local/arm/ As Figure 1 shows, the cross compiler is located at “/usr/local/arm/arm_201103_gcc4.5.2/”
  • 11. VAB-600 Linux BSP v1.0.3 Development Guide 5 Figure 1. The Toolchain for VAB-600 Export the Tool Chain to system PATH. # export PATH=/usr/local/arm/arm_201103_gcc4.5.2/mybin/:$PATH Next, alias the Tool Chain for best floats calculation. # alias arm_1103_le-as='arm_1103_le-as -mcpu=cortex-a9 -mfpu=neon -mfloat- abi=softfp' # alias arm_1103_le-c++='arm_1103_le-c++ -mcpu=cortex-a9 -mfpu=neon -mfloat- abi=softfp' # alias arm_1103_le-cpp='arm_1103_le-cpp -mcpu=cortex-a9 -mfpu=neon -mfloat- abi=softfp' # alias arm_1103_le-g++='arm_1103_le-g++ -mcpu=cortex-a9 -mfpu=neon -mfloat- abi=softfp' # alias arm_1103_le-gcc='arm_1103_le-gcc -mcpu=cortex-a9 -mfpu=neon -mfloat- abi=softfp' # alias arm_1103_le-gcc-4.5.2='arm_1103_le-gcc-4.5.2 -mcpu=cortex-a9 - mfpu=neon -mfloat-abi=softfp'
  • 12. VAB-600 Linux BSP v1.0.3 Development Guide 6 3. Building BSP 3.1. Building kernel This section will tell you how to build kernel image from source code. To use BSP package without spending too much time on building source code, there is a pre-build kernel image located under “EVKKernel_Image”. 3.1.1.Setup the kernel source Unzip the Kernel source # tar -zxvf Linux_BSP_Kernel_Source_0.03.tar.gz Then the kernel source will be located at “Linux_BSP_Kernel_Source_0.02.tar.gz”. The“ANDROID_3.0.8” is the source code. Copy all the files under the sub-folder “BSPFrame_Buffer_DriverANDROID_3.0.8_VE” to your corresponding kernel tree folder and start to build the Linux kernel. 3.1.2.Build 3.0.8 kernel source How to build 3.0.8 kernel source To use the default configurations, type the following command.
  • 13. VAB-600 Linux BSP v1.0.3 Development Guide 7 # make VAB-600_Linux_defconfig If there is no “VAB-600_Linux_defconfig, “ copy it from /BSP/Kernel_Source_Codes/ to ${Kernel_Source}/arch/arm/configs/ To modify the unique configurations, input this to enter the menu with the graphic user interface. # make menuconfig After selecting particular options, now it is time to build the kernel image. # make ubin CROSS_COMPILE=arm_1103_le- -jX X = The threads to build the kernel image, depend on the efficiency of your host PC. For example, a platform with three cores CPU and 8GB RAM should sustain “-j8” parameter. As shown in Figure 2, it takes a few minutes to get the kernel image, uzImage.bin. Figure 2 Building kernel
  • 14. VAB-600 Linux BSP v1.0.3 Development Guide 8 The uzImage.bin is located at “ANDROID_3.0.8”. How to make clean the kernel source Clean the kernel source and it will clean all the built binaries in“ANDROID_3.0.8”. # make clean 4. Making System Booting Media 4.1. Set booting media 4.1.1.Prepare Debian 7 file system Debian File System: Prepare the Debian7 root file system, armel-rootfs-20131003_v0.01.tar.tgz. We need to use the armel-rootfs-20131003_v0.01.tar.tgz to install Debian with full functions. It locates under “/EVK/Update_Package/bspinst/packages”folder. You can also download it from http://rcn-ee.net/deb/minfs/wheezy/ Patches:
  • 15. VAB-600 Linux BSP v1.0.3 Development Guide 9 Moreover, there are some other patches in “/EVK/Update_Package/bspinst/packages” which must be manually copied to SD card when booting from SD card. In this version, the patches in /EVK/BSP/Others” folder has been previously added to Debian file system. If you use the Debian file system obtaining from the website, it certainly doesn’t contain the patches described below. Therefore, you still must manually copy the patches to your downloaded Debian file system. 4.1.2.Boot from eMMC 1. Insert SD card to host PC. 2. Find the inserted SD card. Create all the volume to FAT partition, and name it “update”. 3. Copy the “bspinst” folder and scriptcmd file under “Update_Package”folder to “update” partition. 4. Once the copy is finished, please un-mount Volume and remove the SD card. 5. Insert the SD card to VAB-600 and boot.
  • 16. VAB-600 Linux BSP v1.0.3 Development Guide 10 6. After the installation is finished, please remove SD card. The system will shut down in 3 seconds. 7. Power on VAB-600, and it will boot from on-board eMMC. Username: debian Password: temppwd 4.1.3.Boot from SD card 4.1.3.1. Update uboot parameters Connect VAB-600 and host PC through COM port. Update uboot parameters as below. setenv boot-method boot-emmc setenv ethaddr 00:40:63:11:23:29 ( If there is no default value ) setenv memtotal 850M setenv mbsize 62M setenv wmt.display.dual 0 setenv wmt.display.param 4:6:1:1920:1080:60 setenv wmt.ge.param 1:-1:100:-1 setenv wmt.audio.i2s vt1603:f2:f2:f1:f1:100 setenv boot-emmc "mmcinit 0; fatload mmc 0:1 0x01000000 uzimage.bin; if iminfo 0x01000000; then run set-rfs-emmc; bootm 0x01000000; fi" setenv set-rfs-emmc "setenv bootargs mem=${memtotal} root=/dev/mmcblk0p2 rw rootfstype=ext3 noinitrd mbtotal=${mbsize} ${bootargs-common} ${bootargs-extra}" setenv wmt.plla.param 1:792:1:2:1:1:1
  • 17. VAB-600 Linux BSP v1.0.3 Development Guide 11 setenv wmt.plla2.param 1:792:1:2:1:1:1 saveenv reset Default display setting “setenv wmt.display.param 4:6:1:1920:1080:60” lights HDMI. If you want to light LVDS panel, please refer to Section 4.1. If you want to light TTL panel, please refer to Section 4.2. 4.1.3.2. Format the SD card Insert the SD card into host PC. Open the Disk Utility (System- >Administrator->Disk Utility) If the SD card is already formatted, we need to umount volume first. Then Delete the Partition to get a clear SD card. Click “Create Partition” to continue. Click the SD card reader. Create a FAT partition with 200MB and name it kernel. Create an EXT3 partition with remaining space (about 3.7GB) and name it fs. Then you will get a SD card with FAT and ext3 partition. 4.1.3.3. Install kernel and root filesystem to SD card Copy the kernel Image uzImage.bin to kernel partition. Use the following command to unzip the root file system to the ext3 partition on SD card.
  • 18. VAB-600 Linux BSP v1.0.3 Development Guide 12 # tar -zxvf armel-rootfs-20131003_v0.01.tar.tgz -C /media/fs Once the unzip procedure is complete. You can see the root file system is installed in the ext3 partition on SD card. 4.1.3.4. Download the fully Debian7 file system Connect VAB-600 and host PC through COM port. On the host PC, you will see the kernel message and login prompt through serial console. The default username and password is debian/temppwd Use the following command to get the root permission for the following steps.
  • 19. VAB-600 Linux BSP v1.0.3 Development Guide 13 # sudo -i Get correct ethX by using the command, (X is variable, depending on your environment.) # ifconfig -a Then type the following command in the command prompt to get a DHCP IP. # /usr/lib/klibc/bin/ipconfig ethX Please confirm that the DNS information in /etc/resolv.conf is correct. For example the DNS for VIA in /etc/resolv.conf is domain via.com.tw search via.com.tw
  • 20. VAB-600 Linux BSP v1.0.3 Development Guide 14 nameserver 10.5.254.150 nameserver 10.5.254.149 Now we are ready to download the fully Debian7 file system. Type the following command to update the source list. # apt-get update Type the following command to install the xorg. Press “Y” to install the xorg. # apt-get install xorg Type the following command to install the lxde. Press “Y” to install the lxde. Please choose the default setting during installation. # apt-get install lxde Once you finish the above steps, please reboot the VAB-600 after the installation is complete. It is required to install the graphic driver in order to make the user interface work.
  • 21. VAB-600 Linux BSP v1.0.3 Development Guide 15 4.2. Install graphics and multimedia package 4.2.1.Prerequisites Enable network Get correct ethX by using the command, (X is variable, depending on your environment.) # ifconfig -a Enable network # dhclient ethX 4.2.2.Install graphics driver package Graphics driver package contains Display(xorg), 2D(EXA), 3D(openGL ES), video decoder and Mali memory management drivers. Those drivers may be user space libraries or kernel space kernel modules. 1. 1. Get graphics driver package VAB-600-Debian7.0-Graphics- v1.0.4.tgz from the folder “/EVK/BSP/Graphics_driver/”. 2. Uncompress the graphics driver. # tar xzf VAB-600-Debian7.0-Graphics-v1.0.4.tgz
  • 22. VAB-600 Linux BSP v1.0.3 Development Guide 16 3. Install Graphics driver by script, and reboot the system. # cd VAB-600-Debian7.0-Graphics-v1.0.4 # sudo sh install.sh # sudo reboot 4. Check installation result a. Mali driver(mali_drv.so) # grep 'mali' /var/log/Xorg.0.log Success [ 42.820] (II) LoadModule: "mali" [ 42.833] (II) Loading /usr/lib/xorg/modules/drivers/mali_drv.so [ 42.913] (II) Module mali: vendor="X.Org Foundation" [ 42.913] (II) MALI: driver for Mali Framebuffer: mali [ 42.913] (WW) Falling back to old probe method for mali [ 42.917] (EE) MALI(0): mali_drm_open_master DRM OPEN (fd: 0x7) [ 43.277] (II) MALI(0): maliSetupExa: ENTER [ 43.280] (II) MALI(0): maliSetupExa: EXIT Failure - b. EXA # grep 'EXA' /var/log/Xorg.0.log Success [ 41.073] (II) MALI(0): Mali EXA driver will use GE! [ 41.073] (II) MALI(0): Mali EXA driver is loaded successfully [ 41.073] (WW) MALI(0): Initializing EXA Driver! [ 41.073] (II) EXA(0): Driver allocated offscreen pixmaps [ 41.077] (II) EXA(0): Driver registered support for the following operations: Failure [ 41.073] (WW) MALI(0): Failed allocating EXA Driver!
  • 23. VAB-600 Linux BSP v1.0.3 Development Guide 17 If results show success, continue the following steps. Otherwise, solve the problem before taking further action. 4.2.3.Install Multimedia package Multimedia package contains Gstreamer 0.10.35 environment and ffmpeg plugin. 1. Set locale. Make sure the network of your Debian system is connected. Then run: # apt-get update # apt-get install locales # dpkg-reconfigure locales And choose en_US.UTF-8 UTF-8 2. Get multimedia package VAB-600-Debian7.0-Multimedia-v1.0.1.tgz from the folder “/EVK/BSP/Multimedia”. # tar –xvf VAB-600-Debian7.0-Multimedia-v1.0.1.tgz # cd VAB-600-Debian7.0-Multimedia-v1.0.1 # ./install_quick.sh 3. Check gst plugins version Run gst-inspect command to check version number of installed gst plugins’. It should be 1.5.1. # gst-inspect-0.10 ffdec_wmt_*
  • 24. VAB-600 Linux BSP v1.0.3 Development Guide 18 Note: Replace "*" by h264, mpeg2video or mpeg4 # gst-inspect-0.10 wmtimagesink # gst-inspect-0.10 playbin
  • 25. VAB-600 Linux BSP v1.0.3 Development Guide 19 5. Functionality 5.1. Light LVDS panel (TP070C01) Connection: Connect the LVDS panel to VAB-600 via VAB-600-D card. U-Boot: Connect VAB-600 and host PC through COM port. Update uboot parameters as below setenv wmt.display.param 2:0:24:800:480:60 setenv bootargs-common console=ttyS0,115200n8 console=tty0 init=/init saveenv reset 800:480 is LVDS panel resolution. Please replace it with the LVDS panel resolution that you use. Xorg: Edit /etc/X11/xorg.conf in Debian to support LVDS panel display. Delete “ # ”to select the annotated timing for LVDS panel.
  • 26. VAB-600 Linux BSP v1.0.3 Development Guide 20 # Modeline "1440x900" 106.50 1440 1528 1672 1904 900 903 909 934 - hsync +vsync # Modeline "1920x1080" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync Modeline "800x480" 33.5 800 964 974 1063 480 490 500 523 So does the display resolution for LVDS panel. Section "Screen" Identifier "Mali Screen" Device "Mali FBDEV" Monitor "Mali Monitor" DefaultDepth 16 SubSection "Display" Depth 16 # Modes "1024x768" "800x600" Modes "800x480" EndSubSection EndSection
  • 27. VAB-600 Linux BSP v1.0.3 Development Guide 21 ※ Notice that to light LVDS panel, you have to modify both U-Boot and Xorg, lack of any step of them may probably cause the failure to display the LVDS panel. 5.2. Light TTL panel (LW700AT9901) Connection: Connect the TTL panel to VAB-600 via VAB-600-C card. U-Boot: Connect VAB-600 and host PC through COM port. Update uboot parameters as below setenv wmt.display.param 2:1:24:800:480:60 setenv bootargs-common console=ttyS0,115200n8 console=tty0 init=/init saveenv reset 800:480 is TTL panel resolution. Please replace it with the TTL panel resolution that you use.
  • 28. VAB-600 Linux BSP v1.0.3 Development Guide 22 Xorg: Edit /etc/X11/xorg.conf in Debian to support TTL panel display. Delete “ # ”to select the annotated timing for TTL panel. # Modeline "1440x900" 106.50 1440 1528 1672 1904 900 903 909 934 - hsync +vsync # Modeline "1920x1080" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync Modeline "800x480" 33.5 800 964 974 1063 480 490 500 523 So does the display resolution for TTL panel. Section "Screen" Identifier "Mali Screen" Device "Mali FBDEV" Monitor "Mali Monitor" DefaultDepth 16 SubSection "Display" Depth 16 # Modes "1024x768" "800x600" Modes "800x480"
  • 29. VAB-600 Linux BSP v1.0.3 Development Guide 23 EndSubSection EndSection ※ Notice that to light TTL panel, you have to modify both U-Boot and Xorg, lack of any step of them may probably cause failure to display the TTL panel. 5.3. Light Dual Channel LVDS panel (AUO G220SVN01.0) Connection: Connect the dual channel LVDS panel to VAB-600 via VAB-600-D card. U-Boot:
  • 30. VAB-600 Linux BSP v1.0.3 Development Guide 24 Connect VAB-600 and host PC through COM port. Update uboot parameters as below setenv wmt.display.param 2:0:24:1680:1050:60 setenv bootargs-common console=ttyS0,115200n8 console=tty0 init=/init saveenv reset 1680:1050 is dual channel LVDS panel resolution. Please replace it with the dual channel LVDS panel resolution that you use. Xorg: Edit /etc/X11/xorg.conf in Debian to support dual channel LVDS panel display. Delete“ # ”to select the annotated timing for dual channel LVDS panel. # Modeline "1920x1080_75" 220.75 1920 2064 2264 2608 1080 1083 1088 1130 -hsync +vsync Modeline "1680x1050" 146.25 1680 1784 1960 2240 1050 1053 1059 1089 -hsync +vsync # Modeline "640x480" 23.75 640 664 720 800 480 483 487 500 -hsync +vsync So does the display resolution for dual channel LVDS panel.
  • 31. VAB-600 Linux BSP v1.0.3 Development Guide 25 Section "Screen" Identifier "Mali Screen" Device "Mali FBDEV" Monitor "Mali Monitor" DefaultDepth 16 SubSection "Display" Depth 16 # Modes "1024x768" "800x600" Modes "1680x1050" EndSubSection EndSection ※ Notice that to light dual channel LVDS panel, you have to modify both U- Boot and Xorg, lack of any step of them may probably cause failure to display the TTL panel.
  • 32. VAB-600 Linux BSP v1.0.3 Development Guide 26 5.4. Light HDMI monitor U-Boot: Connect VAB-600 and host PC through COM port. Update uboot parameters as below setenv wmt.display.param 4:6:1:1920:1080:60 setenv bootargs-common console=ttyS0,115200n8 console=tty0 init=/init saveenv reset 1920:1080 is HDMI monitor resolution. Actually it will detect EDID information automatically and choose the maximum resolution, therefore the setting influences U-Boot logo resolution only. Xorg: Edit /etc/X11/xorg.conf in Debian to support HDMI monitor display. Add “ # ”to annotate the timing for LDS panel. # Modeline "1440x900" 106.50 1440 1528 1672 1904 900 903 909 934 - hsync +vsync # Modeline "1920x1080" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync # Modeline "800x480" 33.5 800 964 974 1063 480 490 500 523
  • 33. VAB-600 Linux BSP v1.0.3 Development Guide 27 So does the display resolution for LVDS. Section "Screen" Identifier "Mali Screen" Device "Mali FBDEV" Monitor "Mali Monitor" DefaultDepth 16 SubSection "Display" Depth 16 # Modes "1024x768" "800x600" # Modes "800x480" EndSubSection EndSection ※ Notice that to light HDMI monitor normally, you have to modify both U- Boot and Xorg, lack of any step of them may probably cause the failure to display the HDMI monitor.
  • 34. VAB-600 Linux BSP v1.0.3 Development Guide 28 5.5. Switch HDMI mode by xrandr tool In order to switch Mode, we use xrandr command to switch the resolution and refresh rate of the monitor. For example, to list all the supporting modes, we usually run "xrandr -q" or “xrandr --verbose”. To switch resolution and refresh rate, such as "800x600@75", we usually run " xrandr --output DVI-I --mode 800x600 --rate 75", --output DVI-I must be added and does not need to be changed for every resolution change xrandr command. Currently, we only support the display modes that are listed in the following table. “xrandr -q” command shows the combination/subset of the mode your display device support (from EDID) and the mode in the following table. Please do not set “--mode” outside of the result of “xrandr -q”, the “-- rate” can only be followed by 60 or 75. If you can see refresh rate 59.9, just set it 60.
  • 35. VAB-600 Linux BSP v1.0.3 Development Guide 29 Resolutions Color Depth Refresh (VIA) 60 75 640 x 480 16/32bit   800x480 16/32bit  800 x 600 16/32bit   1024 x 768 16/32bit   1280x720 16/32bit  1280x768 16/32bit  1280 x 1024 16/32bit   1360x768 16/32bit  1400x1050 16/32bit  1440x900 16/32bit   1680x1050 16bit  1920x1080 16bit  5.6. Change Color Depth/bpp. Please open /etc/X11/xorg.conf and change DefaultDepth to 16 or 24 to change the Color Depth. You must restart the x-window, so the change can take effect.
  • 36. VAB-600 Linux BSP v1.0.3 Development Guide 30 5.7. Multimedia local playback Currently we support MPEG1, MPEG2, MPEG4 (except MSMPEGv1/v2), WMV9/VC1, H264 HW acceleration. Play local multimedia files by the following command: # gst-launch-0.10 playbin uri=file:/<path-and-file-name> Or # totem <path-and-file-name> 5.8. Audio adjustment To modify the settings of audio, open a terminal and modulate alsamixer. # alsamixer The following figure shows a fine-tuned result of alsamixer.
  • 37. VAB-600 Linux BSP v1.0.3 Development Guide 31 Click“←”or“→”to choose the item to be modified. Press“M”to turn on or turn off an option, and click“↓”or“↑”to subtract or add the value. To enable PCM audio volume control, “asound.conf”must be reloaded. To achieve this goal, install the necessary packages first. # apt-get install alsa-utils Then operate the playing action to initialize the configurations in “asound.conf.” # speaker-test –Dsoftvolume –c2 -twav
  • 38. VAB-600 Linux BSP v1.0.3 Development Guide 32 After it outputs the test music for several seconds, use CTRL+C to stop the examination. Next step is to open alsamixer again, check whether PCM audio volume control appears or not. The name of PCM audio volume control is “PCM.” Change its value to observe if the volume alters.
  • 39. VAB-600 Linux BSP v1.0.3 Development Guide 33 5.9. GPIO control This section describes how to operate GPIO function. Please use devmem2 utility to access GPIO, which was pre-installed in the file system image. If you need to change kernel configurations, please refer to “VAB- 600_Linux_defconfig” in /BSP/Kernel_Source_Codes/ to ensure the GPIO function. 5.9.1. GPIO hardware design The GPIO function was provided by CN9 “GPIO / SMBus Interface Pin Header”. They are mapped to GPIO20 ~ GPIO27. The corresponding pins in VAB-600 are listed in the following figures.
  • 40. VAB-600 Linux BSP v1.0.3 Development Guide 34 You can connect your own device to the pins and operate it via the relative GPIO settings. To manage the particular GPIO, the homologous register values have to be changed. 5.9.2. devmem2 utility This utility can also be installed in Linux official distribution. Use devmem2 utility to read/write GPIO registers. devmem2 [address] [type] [data]
  • 41. VAB-600 Linux BSP v1.0.3 Development Guide 35 address : physical address of the register type : data type to be read/written, [b]yte, [h]alfword or [w]ord data : data to be written to the register 5.9.2.1. devmem2 utility read and write For example, if you want to read the register 0xd8110030 in byte format, you must type the command below. # devmem2 0xd8110030 b Same for the writing operation, write 0xff value to the register 0xd81100b0 in byte format with the coming order. # devmem2 0xd81100b0 b 0xff
  • 42. VAB-600 Linux BSP v1.0.3 Development Guide 36 For detailed descriptions of GPIO register values, please refer to Appendix C.
  • 43. VAB-600 Linux BSP v1.0.3 Development Guide 37 5.9.3. Test GPIO input and output 5.9.3.1. Test GPIO connection In this test, GPIO 20-23 are connected to GPIO 24-27. Once the state of GPIO 20–23 are changed, GPIO 24–27 also turn to be the same situation, and vice versa. In other words, this phenomenon means that the influence you do to one part may change another side. Besides, before everything starts, you had batter clean the relative registers. # devmem2 0xd81100b0 b 0x0 # devmem2 0xd81100b1 b 0x0 # devmem2 0xd81100f0 b 0x0 # devmem2 0xd81100f1 b 0x0 5.9.3.2. Set GPIO 20-23 to change GPIO 24-27 a. The first step is to examine the value of GPIO 24-27 input data register value. # devmem2 0xd8110031 b /* Read GPIO 24-27 input Registers*/
  • 44. VAB-600 Linux BSP v1.0.3 Development Guide 38 Obviously, the value should be 0x0. b. To begin the experiment, set the value of GPIO 20-23 output enable registers to be high state. # devmem2 0xd81100b0 b 0xf0 /* Write GPIO 20-23 Output Enable Registers*/ c. Then set the value of GPIO 20-23 output data registers also to be high state. # devmem2 0xd81100f0 b 0xf0 /* Write GPIO 20-23 Output Data Registers*/ Now GPIO 20-23 should output the high state, which changes the low state of GPIO 24-27 to be high state. d. Examine the value of GPIO 24-27 input data register value.
  • 45. VAB-600 Linux BSP v1.0.3 Development Guide 39 # devmem2 0xd8110031 b /* Read GPIO 24-27 input Registers*/ The value should be 0xF because of the influence of GPIO 20-23. 5.9.3.3. Set GPIO 24-27 to change GPIO 20-23 a. The first step is to examine the value of GPIO 20-23 input data register value. # devmem2 0xd8110030 b /* Read GPIO 20-23 input Registers*/ Obviously, the value should be 0x0. b. To begin the experiment, set the value of GPIO 24-27 output enable registers to be high state. # devmem2 0xd81100b1 b 0x0f /* Write GPIO 24-27 Output Enable Registers*/
  • 46. VAB-600 Linux BSP v1.0.3 Development Guide 40 c. Then set the value of GPIO 24-27 output data registers also to be high state. # devmem2 0xd81100f1 b 0x0f /* Write GPIO 24-27 Output Data Registers*/ Now GPIO 24-27 should output the high state, which changes the low state of GPIO 20-23 to be high state. d. Examine the value of GPIO 20-23 input data register value. # devmem2 0xd811003b b /* Read GPIO 20-23 input Registers*/ The value should be 0xF because of the influence of GPIO 24-27.
  • 47. VAB-600 Linux BSP v1.0.3 Development Guide 41 5.10.External RTC control This section describes how to operate external RTC function. Please use i2c-tools utility to access external RTC, which was pre-installed in the file system image. If you need to change kernel configurations, please refer to “VAB-600_Linux_defconfig” in /BSP/Kernel_Source_Codes/ to ensure the external RTC function. 5.10.1.External RTC hardware design The external RTC IDT1337G was controlled by VAB-600 via I2C0 bus. The slave address of IDT1337G is 0x68 and it supports 16 timekeeper registers. The IDT1337G supports auto power-on control by using alarm2 and INTB pin.
  • 48. VAB-600 Linux BSP v1.0.3 Development Guide 42 5.10.2. Display external RTC timekeeper registers # i2cdump -f -y -r 0-15 0 0x68 b 5.10.3. Set date and time to external RTC # i2cset -f -y 0 0x68 0x0 0x$(date +"%S") // seconds # i2cset -f -y 0 0x68 0x1 0x$(date +"%M") // minutes # i2cset -f -y 0 0x68 0x2 0x$(date +"%-k") // hours # i2cset -f -y 0 0x68 0x3 0x$(date +"%u") // day of week # i2cset -f -y 0 0x68 0x4 0x$(date +"%d") // date of month # i2cset -f -y 0 0x68 0x5 0x$(date +"%m") // month # i2cset -f -y 0 0x68 0x6 0x$(date +"%g") // year # i2cset -f -y 0 0x68 0xb 0x0 // alarm2 minutes # i2cset -f -y 0 0x68 0xc 0x0 // alarm2 hours # i2cset -f -y 0 0x68 0xd 0x0 // alarm2 day or date # i2cset -f -y 0 0x68 0xe 0x4 // disable alarm # i2cset -f -y 0 0x68 0xf 0x0 // clear alarm status 5.10.4.Test auto power-on control of external RTC
  • 49. VAB-600 Linux BSP v1.0.3 Development Guide 43 Configure alarm2 registers to enable auto power-on control. For example: set alarm each hour. # I2cset -f -y 0 0x68 0xb 0x0 // alarm2 minutes # i2cset -f -y 0 0x68 0xc 0x80 // alarm2 hours # i2cset -f -y 0 0x68 0xd 0x80 // alarm2 day or date # i2cset -f -y 0 0x68 0xf 0x0 // clear alarm status # i2cset -f -y 0 0x68 0xe 0x6 // enable alarm2 The register values “0x80” indicate “don’t care.” Only when minutes match (register value(0x1) == value(0xb)), alarm2 will set, A2F flag is at logic 1 and the INTB pin goes low. After configuration, you will see the register values like below: If system time is 10:30 a.m., then the system will auto boot on 11:00 a.m., 12:00 p.m., 1:00 p.m. and so on. After auto power-on, you will see the register values like below:
  • 50. VAB-600 Linux BSP v1.0.3 Development Guide 44 5.10.5.Disable alarm2 and clear alarm2 status of external RTC Please remember to disable alarm2 and clear alarm2 status after booting the system every time. If you don’t disable alarm2 and alarm2 status isn’t clear, the system will boot right away after shutdown. If alarm2 status is clear but you don't disable alarm2, the system will still boot on schedule even the system is running. Disable alarm and clear alarm status: # i2cset -f -y 0 0x68 0xe 0x4 // disable alarm # i2cset -f -y 0 0x68 0xf 0x0 // clear alarm status In order to boot on schedule, please remember to clear alarm2 status and enable alarm2 before shutdown. Clear alarm status and enable alarm2: # i2cset -f -y 0 0x68 0xf 0x0 // clear alarm status # i2cset -f -y 0 0x68 0xe 0x6 // enable alarm2 When alarm2 status is not clear, if you enable alarm2 first without clearing alarm2 status then the system will auto boot after 5 seconds. In order to avoid this situation, you need to clear alarm2 status first, then enable alarm2.
  • 51. VAB-600 Linux BSP v1.0.3 Development Guide 45 5.11.Watch dog control This section describes how to operate watch dog function. Please use watch dog utility (wdt_app) to access watch dog, which was pre-installed in the file system image. If you need to change kernel configurations, please refer to “VAB-600_Linux_defconfig” in /BSP/Kernel_Source_Codes/ to ensure the watch dog function. 5.11.1.Enable the watch dog First of all, the watch dog must be enabled to carry out its tasks. # wdt_app -et Without enabling watch dog, the operations that are relative to watch dog will not take any effect.
  • 52. VAB-600 Linux BSP v1.0.3 Development Guide 46 5.11.2.Set the watch dog timer Fill the value of the watch dog timer in this step, decide when the watch dog can perform its function to restart the system. # wdt_app –t${second} ${second} means the period counting in seconds to reboot your machine, which should be within 0 to 256. For example, you want the system to restart automatically in 180 seconds, the command format should look like the following texts. # wdt_app –t180 After 180 seconds, the machine will reboot by itself.
  • 53. VAB-600 Linux BSP v1.0.3 Development Guide 47 5.11.3.Get the watch dog timer Once you set the watch dog timer, you may observe the value of the watch dog timer by this order. # wdt_app -tg Its return value will show the number counting down in your watch dog, which indicates the remaining time before the system restarts. For instance, in the last step you just set the watch dog timer to 180 seconds, you will see the value of the watch dog timer decreases. Moreover, to print the return value, add ”echo $?” to the input command.
  • 54. VAB-600 Linux BSP v1.0.3 Development Guide 48 This figure means that there are still 150 seconds left before the machine reboots. 5.11.4.Disable the watch dog To stop the function of watch dog, you can disable watch dog through this command. # wdt_app -dt Therefore, watch dog won’t be active unless you enable watch dog again. Since the watch dog is closed, nothing will happen even though the timer counts down to zero.
  • 55. VAB-600 Linux BSP v1.0.3 Development Guide 49 6. Debug Message VAB-600 Linux BSP supports debugging with RS232 port. The RS232 client software (such as putty) should configure the parameters as follows: COM speed:115200 COM parity: NONE COM data: 8 COM stop-bit:1 Use picocom in the HOST PC to open the console. # picocom -b 115200 /dev/ttyS0 If the picocom is not installed, use ap-get to install it. # apt-get install picocom After successfully connecting to VAB-600 through RS232 line, you can enter the u-boot console and try modifying the u-boot parameters for various configurations, such as changing display resolution and so on. 6.1. Enter U-Boot environment VAB-600 Linux platform can stop booting to enter u-boot environment. The u-boot will initiate hardware at an earlier stage by those parameters. The u-boot will wait 3 seconds to stop booting after power on by pressing any key. When booting comes to a halt, the sign “WMT #” will pop up on terminal screen.
  • 56. VAB-600 Linux BSP v1.0.3 Development Guide 50 U-Boot is similar to a tiny operation system that has its own commands. Some important commands and parameters are described here.  Print online help WMT # help  Change display U-boot logo resolution WMT # setenv wmt.display.param 4:6:1:1280:1024:60  Save changed parameters WMT # saveenv 6.2. Default u-boot parameters The default u-boot parameters are configured in the following file /update_package/bspinst/bspinst.cfg The bspinst.cfg file structure has four segments.  Scenario: board model and boot method  Common: general setting  Target (board models): specific setting for each target  Routine: parameters of boot method Its content will be parsed and stored into the on-board storage device during installation procedure described in section 4.1.2
  • 57. VAB-600 Linux BSP v1.0.3 Development Guide 51 Appendix A. Q&A Q: When trying to setup static IP address in “Network Connections”, the IP setup does not take effect. A: After setting “Network Connections”, user should open a console to shut down the Ethernet adapter and then turn on by following the command below, target Ethernet adapter is eth1. ifconfig eth1 down ifconfig eth1 up
  • 58. VAB-600 Linux BSP v1.0.3 Development Guide 52 Appendix B. Limitation 1) On some special monitors, some modes may cause screen garbage and other display issue. This is probably due to the timing passed by Xorg that cannot work well with the monitor. In this case, please delete the "#" before the corresponding Modeline in section "Monitor" of file "xorg.conf". For example, for mode "1680x1050", we can enable its modeline: Modeline "1680x1050" 146.25 1680 1784 1960 2240 1050 1053 1059 1089 -hsync +vsync then switch to this mode. 2) Support smooth video playback of 720P on 1280x1024 display mode. 3) If making action to the playing video or moving mouse over the video, this video will not sound and be blocked. 4) XVID video will sometimes show garbage. 5). Some VC1 video files may become static when seek or having audio playback abnormal issue, it can be reproduced on x86 platform with SW decoder (Totem). It is demuxer issue. 6). If I frame is too long, some video files may pause for a few seconds after seek and resume, since demuxer could not locate I frame. 7). It is slow when switching between window mode and fullscreen mode. 8). There is no PWM frequency control. In other words, the backlight brightness can’t be modified.
  • 59. VAB-600 Linux BSP v1.0.3 Development Guide 53 Appendix C. GPIO registers GPIO Input Data Registers Address 0xd8110030 – 0xd8110031 GPIO[27:20] Input Data Register BIT Attribute Default Description 15:12 RO 4'h0 Reserved 11 RO GPIO27 Signal GPIO Input Data 10 RO GPIO26 Signal GPIO Input Data 9 RO GPIO25 Signal GPIO Input Data 8 RO GPIO24 Signal GPIO Input Data 7 RO GPIO23 Signal GPIO Input Data 6 RO GPIO22 Signal GPIO Input Data 5 RO GPIO21 Signal GPIO Input Data 4 RO GPIO20 Signal GPIO Input Data 3:0 RO Reserved GPIO Enable Registers Address 0xd8110070 GPIO[23:20] Enable Register BIT Attribute Default Description 7:0 RW FFh GPIO[23:20] Enable Register Address 0xd8110071 GPIO[27:24] Enable Register BIT Attribute Default Description 7:0 RW 0Fh GPIO[27:24] Enable Register
  • 60. VAB-600 Linux BSP v1.0.3 Development Guide 54 GPIO Output Enable Registers Address 0xd81100B0 GPIO[23:20] Output Enable Register BIT Attribute Default Description 7:0 RW 00h GPIO[23:20] Output Enable Register Address 0xd81100B1 GPIO[27:24] Output Enable Register BIT Attribute Default Description 7:0 RW 00h GPIO[27:24] Output Enable Register GPIO Output Data Registers Address 0xd81100F0 GPIO[23:20] Output Data Register BIT Attribute Default Description 7:0 RW 00h GPIO[23:20] Output Data Register Address 0xd81100F1 GPIO[27:24] Output Data Register BIT Attribute Default Description 7:0 RW 00h GPIO[27:24] Output Data Register GPIO Pull-up/Pull-down Enable Registers
  • 61. VAB-600 Linux BSP v1.0.3 Development Guide 55 Address 0xd81104B0 GPIO[23:20] Pull-up/Pull-down Enable Register BIT Attribute Default Description 7:0 RW F0h GPIO[23:20] Pull-up/Pull-down Enable Register Address 0xd81104B1 GPIO[27:24] Pull-up/Pull-down Enable Register BIT Attribute Default Description 7:0 RW 0Fh GPIO[27:24] Pull-up/Pull-down Enable Register GPIO Pull-up/Pull-down Control Registers Address 0xd81104F0 GPIO[23:20] Pull-up/Pull-down Control Register BIT Attribute Default Description 7:0 RW 00h GPIO[23:20] Pull-up/Pull-down Control Register Address 0xd81104F1 GPIO[27:24] Pull-up/Pull-down Control Register BIT Attribute Default Description 7:0 RW 00h GPIO[27:24] Pull-up/Pull-down Control Register GPIO Interrupt Request Status Registers Address 0xd8110362 GPIO Interrupt Request Status Register (GPIO[23:20])
  • 62. VAB-600 Linux BSP v1.0.3 Development Guide 56 BIT Attribute Default Description 7 RW1C 0 GPIO23 Interrupt Status When this bit is inactive (a zero), it indicates that no interrupt has been configured and detected on the associated signal. When this bit is active (an one), it indicates that an interrupt request has been configured and detected on the associated signal. Once this bit is active (an one), software must write an one to this bit to clear it inactive (a zero), otherwise this bit and the associated GPIO Interrupt Request will remain active (an one). 6 RW1C 0 GPIO22 Interrupt Status 5 RW1C 0 GPIO21 Interrupt Status 4 RW1C 0 GPIO20 Interrupt Status Address 0xd8110363 GPIO Interrupt Request Status Register (GPIO[27:24]) BIT Attribute Default Description 3 RW1C 0 GPIO27 Interrupt Status 2 RW1C 0 GPIO26 Interrupt Status 1 RW1C 0 GPIO25 Interrupt Status 0 RW1C 0 GPIO24 Interrupt Status