blob: fb554cc68d7d5a9fc67ff4f48beb3d9f5289627a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
|
Dove Graphics Driver for Generic Linux
Ver0.8.0.1123
1. Introduction
This package contains Dove unified graphics driver for
generic linux and some documents.
This document is used to describe the package contents, how to build
kernel mode driver and how to install the driver binaries to device.
2. Revision History
Ver0.8.0.1123
1. Add texture generation support
2. Workaround the YUV texture quality issue.
3. Merge 2009.9 vivante driver.
3. Package Contents
--/ -- Package root directory
galcroe_ko_src -- GC source code needed to build kernel mode driver
libgfx
bin/ -- GC driver binaries
include/ -- GC sdk header files
samples/ -- GC sample codes
4. Build and Installation
4.1 System Requirement
Host PC :
Operating system -- Ubuntu 8.04 or newer
Toolchain -- arm-marvell-linux-gnueabi
Target Device:
Platform -- PXA950 processor EVB platform
PXA968 processor EVB platform
ARMADA 610 processor EVB platform
Operation system -- Linux kernel 2.6.29 or newer
4.2 Build Kernel Mode Driver
Enter ~/galcore_ko_src, modify the "Makefile" according to your system:
1) Modify "CROSS_COMPILE" to your toolchain directory with prefix
(path_to_your_marvelltoolchain_dir/bin/arm-marvell-linux-gnueabi-);
2) Modify "KERNEL_DIR" to point to your linux kernel tree.
Build kernel mode driver by commands:
#make clean
#make
If no error, the build result galcore.ko will be placed on current directory.
4.3 Build Samples
1) Enter the ~/libgfx/samples, modify the Makefile according to your system;
2) Modify "CC" point to your toolchain gcc compiler;
3) Build samples by commands:
#make clean
#make
4.4 Installation
Copy galcore.ko to device /lib/modules directory:
#cp ~/galcore.ko /lib/modules/
Copy *.so to device /usr/lib directory:
#cp ~/bin/libGAL.so /usr/lib/
#cp ~/bin/libEGL.so /usr/lib/
#cp ~/bin/libGLES_CM.so /usr/lib/
#cp ~/bin/libOpenVG.so /usr/lib/
#cp ~/bin/libGLESv2x.so /usr/lib/
#cp ~/bin/libGLESv2SC.so /usr/lib/
#cp ~/bin/libVDK.so /usr/lib/
Make sure the system startup script already contains the command to load kernel mode driver,
For example, you can add a init script in /ect/init.d/galcore.sh like:
#!/bin/sh
insmod /lib/modules/galcore.ko registerMemBase=0xf1840000 irqLine=48 contiguousBase=0x8000000 contiguousSize=0x2000000
mknod /dev/galcore c 199 0
chmod 777 /dev/galcore
5. FAQ
1. "We can't find the arm-marvell-linux-gnueabi toolchain".
Contact your Marvell representative to get arm-marvell-linux-gnueabi toolchain.
6. Known Issues
Problem : The OpenVG implementation does not enable anti-alias by default.
Workaround: Choose the EGL configuration with EGL_SAMPLES = 4.
|