ST7108: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
No edit summary
(Marked as outdated)
 
(4 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Outdated|reason=Obsolete hardware and software}}
{{Cleanup | reason=Auto-imported from ExpressionEngine.}}
[[Category:Devices]]
[[Category:Devices]]


Line 28: Line 31:
== Device Information ==
== Device Information ==


The ST7108 is made by "STMicroelectronics":http://www.st.com/internet/imag_video/product/248829.jsp.
The ST7108 is made by [http://www.st.com/internet/imag_video/product/248829.jsp STMicroelectronics].


* "The STi7108 provides a solution for operators to specify a range of high-performance, MPEG2 / H.264 / VC-1 STBs."
* "The STi7108 provides a solution for operators to specify a range of high-performance, MPEG2 / H.264 / VC-1 STBs."
* "1":http://www.st.com/internet/imag_video/product/248829.jsp] STi7108 Advanced HD AVC decoder with 3D graphics acceleration
* [http://www.st.com/internet/imag_video/product/248829.jsp 1]] STi7108 Advanced HD AVC decoder with 3D graphics acceleration


=== Software ===
=== Software ===


# STM SDK 3.5
# STM SDK 3.5
# "STLinux-2.4":http://www.stlinux.com/install
# [http://www.stlinux.com/install STLinux-2.4]
# sh4-linux crosstools from STM
# sh4-linux crosstools from STM


Line 42: Line 45:


# STM reference software SDK 3.5 is built on Host PC as conveyed in STM's documentation given by STM's Field Application Engineer.
# STM reference software SDK 3.5 is built on Host PC as conveyed in STM's documentation given by STM's Field Application Engineer.
# STM reference software SDK 3.5 is configured for "HDK7108_7108_LINUX"
# STM reference software SDK 3.5 is configured for "HDK7108_7108_LINUX"
# Can run STM's "Test-Tool" on reference board to test OenGL ES 2.0 and media playback.
# Can run STM's "Test-Tool" on reference board to test OenGL ES 2.0 and media playback.
# The "sysroot" is located at "<STLinux-2.4 installation path>/STLinux-2.4/devkit/sh4/target"
# The "sysroot" is located at "<STLinux-2.4 installation path>/STLinux-2.4/devkit/sh4/target"


== Qt 4.8.0 EGLNullWS/QWS ==
== Qt 4.8.0 EGLNullWS/QWS ==
Line 66: Line 69:
## qt-embedded-4.8.0-st231_disable_fno-stack-protector.patch
## qt-embedded-4.8.0-st231_disable_fno-stack-protector.patch
## qt-embedded-4.8.0-Accelerate_QtWebKit_animated_images.patch
## qt-embedded-4.8.0-Accelerate_QtWebKit_animated_images.patch
# Create folder named &quot;linux-sh4-ST7108-g+''&quot; in &quot;qt-everywhere-opensource-src-4.8.0/mkspecs/qws&amp;quot;<br /># Get following files in &quot;qt-everywhere-opensource-src-4.8.0/mkspecs/qws/linux-sh4-ST7108-g&quot;<br />## https://gitorious.org/qt-platform-mkspecs/qt-platform-mkspecs/blobs/master/4.8/qws/linux-sh4-ST7108-g/qmake.conf<br />## https://gitorious.org/qt-platform-mkspecs/qt-platform-mkspecs/blobs/master/4.8/qws/linux-sh4-ST7108-g/qplatformdefs.h
# Create folder named "linux-sh4-ST7108-g+''" in "qt-everywhere-opensource-src-4.8.0/mkspecs/qws"
<br />h3. Compiling Qt 4.8.0
# Get following files in "qt-everywhere-opensource-src-4.8.0/mkspecs/qws/linux-sh4-ST7108-g"
<br />Set the development environment variables using following commands<br /> <code><br /> cd /path/to/STM_SDK_3.5/<br /> source /path/to/STM_SDK_3.5/mysetenv.sh HDK7108_7108_LINUX<br /> </code><br />Configure, build and install Qt 4.8.0 as<br /> <code><br /> $ /path/to/qt-everywhere-opensource-src-4.8.0/configure -opensource -confirm-license  -verbose -release -shared -no-rpath -system-zlib -system-libjpeg -system-libpng  -qt3support -qt-sql-sqlite -xmlpatterns -exceptions -declarative -script -scripttools  -webkit -no-javascript-jit -qt-gfx-linuxfb -qt-gfx-transformed -qt-gfx-vnc -qt-gfx-multiscreen  -qt-kbd-linuxinput -qt-mouse-linuxinput -make libs -make tools -make examples -make demos  -make docs -make translations -platform qws/linux-x86-g''+  —prefix=/path/to/installation/directory/qt-everywhere-opensource-src-4.8.0-qws/  -xplatform qws/linux-sh4-ST7108-g++ -embedded sh4 -little-endian -opengl es2  -plugin-gfx-eglnullws -qt-gfx-directfb <s>no-dbus<br /> $ make<br /> $ make install<br /> </code><br />After the build succeeds set following environment variables before building any Qt Apps,<br /># QTDIR=/path/to/installation/directory/qt-everywhere-opensource-src-4.8.0-qws/<br /># PATH=/path/to/installation/directory/qt-everywhere-opensource-src-4.8.0-qws/bin/
## https://gitorious.org/qt-platform-mkspecs/qt-platform-mkspecs/blobs/master/4.8/qws/linux-sh4-ST7108-g/qmake.conf
<br />h2. Qt 5.0 EGLFS/QPA  
## https://gitorious.org/qt-platform-mkspecs/qt-platform-mkspecs/blobs/master/4.8/qws/linux-sh4-ST7108-g/qplatformdefs.h
<br />Only QtBase module is tested.
 
<br />h3. Compiling Qt 5.0  
=== Compiling Qt 4.8.0 ===
<br />One need to pass following &quot;device-option&amp;quot;s<br /># CROSS_COMPILE=&lt;STLinux-2.4 installation path&amp;gt;/STLinux-2.4/devkit/sh4/bin/sh4-linux</s>
Set the development environment variables using following commands
<code>
cd /path/to/STM_SDK_3.5/
source /path/to/STM_SDK_3.5/mysetenv.sh HDK7108_7108_LINUX
</code>
Configure, build and install Qt 4.8.0 as
<code>
$ /path/to/qt-everywhere-opensource-src-4.8.0/configure -opensource -confirm-license  -verbose -release -shared -no-rpath -system-zlib -system-libjpeg -system-libpng  -qt3support -qt-sql-sqlite -xmlpatterns -exceptions -declarative -script -scripttools  -webkit -no-javascript-jit -qt-gfx-linuxfb -qt-gfx-transformed -qt-gfx-vnc -qt-gfx-multiscreen  -qt-kbd-linuxinput -qt-mouse-linuxinput -make libs -make tools -make examples -make demos  -make docs -make translations -platform qws/linux-x86-g''+  —prefix=/path/to/installation/directory/qt-everywhere-opensource-src-4.8.0-qws/  -xplatform qws/linux-sh4-ST7108-g++ -embedded sh4 -little-endian -opengl es2  -plugin-gfx-eglnullws -qt-gfx-directfb -no-dbus
$ make
$ make install
</code>
After the build succeeds set following environment variables before building any Qt Apps,
# QTDIR=/path/to/installation/directory/qt-everywhere-opensource-src-4.8.0-qws/
# PATH=/path/to/installation/directory/qt-everywhere-opensource-src-4.8.0-qws/bin/
 
== Qt 5.0 EGLFS/QPA ==
Only QtBase module is tested.
 
=== Compiling Qt 5.0 ===
One need to pass following "device-option"s
# CROSS_COMPILE=<STLinux-2.4 installation path>/STLinux-2.4/devkit/sh4/bin/sh4-linux-


Configure, build and install Qt 5.0 as<br /> <code><br /> $ configure —prefix=/path/to/installation/directory/qt-gitorious-opensource-src-5.0 -release -opensource -confirm-license -shared -verbose  -device linux-sh4-stmicro-ST7108-g++  -sysroot &lt;STLinux-2.4 installation path&amp;gt;/STLinux-2.4/devkit/sh4/target  <s>device-option CROSS_COMPILE=&lt;STLinux-2.4 installation path&amp;gt;/STLinux-2.4/devkit/sh4/bin/sh4-linux</s><br /> $ make module-qtbase<br /> $ make module-qtbase-install_subtargets<br /> </code><br />After the build succeeds set following environment variables before building any Qt Apps,<br /># QTDIR=/path/to/installation/directory/qt-gitorious-opensource-src-5.0/<br /># PATH=/path/to/installation/directory/qt-gitorious-opensource-src-5.0/bin/
Configure, build and install Qt 5.0 as
<code>
$ configure —prefix=/path/to/installation/directory/qt-gitorious-opensource-src-5.0 -release -opensource -confirm-license -shared -verbose  -device linux-sh4-stmicro-ST7108-g++  -sysroot <STLinux-2.4 installation path>/STLinux-2.4/devkit/sh4/target  -device-option CROSS_COMPILE=<STLinux-2.4 installation path>/STLinux-2.4/devkit/sh4/bin/sh4-linux-
$ make module-qtbase
$ make module-qtbase-install_subtargets
</code>
After the build succeeds set following environment variables before building any Qt Apps,
# QTDIR=/path/to/installation/directory/qt-gitorious-opensource-src-5.0/
# PATH=/path/to/installation/directory/qt-gitorious-opensource-src-5.0/bin/


Before executing any Qt applications on target copy &quot;/path/to/installation/directory/qt-gitorious-opensource-src-5.0&amp;quot; from host on target at &quot;/path/to/installation/directory/qt-gitorious-opensource-src-5.0&amp;quot; on target file system
Before executing any Qt applications on target copy "/path/to/installation/directory/qt-gitorious-opensource-src-5.0" from host on target at "/path/to/installation/directory/qt-gitorious-opensource-src-5.0" on target file system

Latest revision as of 15:10, 24 March 2016

IMPORTANT: The content of this page is outdated. Reason: Obsolete hardware and software
If you have checked or updated this page and found the content to be suitable, please remove this notice.
This article may require cleanup to meet the Qt Wiki's quality standards. Reason: Auto-imported from ExpressionEngine.
Please improve this article if you can. Remove the {{cleanup}} tag and add this page to Updated pages list after it's clean.

ST7108

Architecture SH4
CPU SH430
RAM 512 MB
GPU Mali 400
Hardware acceleration OpenGL ES 2.0
Qt 4.8 (eglnullws/QWS) Supported, with OpenGL
Qt 5.0 (eglfs/QPA) Supported, with OpenGL

Device Information

The ST7108 is made by STMicroelectronics.

  • "The STi7108 provides a solution for operators to specify a range of high-performance, MPEG2 / H.264 / VC-1 STBs."
  • 1] STi7108 Advanced HD AVC decoder with 3D graphics acceleration

Software

  1. STM SDK 3.5
  2. STLinux-2.4
  3. sh4-linux crosstools from STM

Assumptions

  1. STM reference software SDK 3.5 is built on Host PC as conveyed in STM's documentation given by STM's Field Application Engineer.
  2. STM reference software SDK 3.5 is configured for "HDK7108_7108_LINUX"
  3. Can run STM's "Test-Tool" on reference board to test OenGL ES 2.0 and media playback.
  4. The "sysroot" is located at "<STLinux-2.4 installation path>/STLinux-2.4/devkit/sh4/target"

Qt 4.8.0 EGLNullWS/QWS

Getting Qt 4.8.0 with STM patches and mkspecs

  1. Download ftp://ftp.stlinux.com/pub/stlinux/2.4/updates/SRPMS/stlinux24-target-qt-embedded-4.8.0-5.src.rpm
  2. Extract stlinux24-target-qt-embedded-4.8.0-5.src.rpm
  3. Extract qt-everywhere-opensource-src-4.8.0.tar.gz
  4. Apply following patches on extracted qt-everywhere-opensource-src-4.8.0 in given order
    1. qt-embedded-4.8.0-st200.patch
    2. qt-embedded-4.8.0-sh4.patch
    3. qt-embedded-4.8.0-armvX.patch
    4. qt-embedded-4.8.0-mmap.patch
    5. qt-embedded-4.8.0-add_SRC_OVER_rule.patch
    6. qt-embedded-4.8.0-add_window_console_message_from_javaScript.patch
    7. qt-embedded-4.8.0-reset_CacheLoadControlAttribute_to_default.patch
    8. qt-embedded-4.8.0-adds_for_webkit_jit.patch
    9. qt-embedded-4.8.0-directfb-enable-QT_NO_DIRECTFB_PREALLOCATED-QT_DIREC.patch
    10. qt-embedded-4.8.0-imagedecoderqt-Use-DirectFB-to-load-single-frame-ima.patch
    11. qt-embedded-4.8.0-st231_disable_fno-stack-protector.patch
    12. qt-embedded-4.8.0-Accelerate_QtWebKit_animated_images.patch
  5. Create folder named "linux-sh4-ST7108-g+" in "qt-everywhere-opensource-src-4.8.0/mkspecs/qws"
  6. Get following files in "qt-everywhere-opensource-src-4.8.0/mkspecs/qws/linux-sh4-ST7108-g"
    1. https://gitorious.org/qt-platform-mkspecs/qt-platform-mkspecs/blobs/master/4.8/qws/linux-sh4-ST7108-g/qmake.conf
    2. https://gitorious.org/qt-platform-mkspecs/qt-platform-mkspecs/blobs/master/4.8/qws/linux-sh4-ST7108-g/qplatformdefs.h

Compiling Qt 4.8.0

Set the development environment variables using following commands

 cd /path/to/STM_SDK_3.5/
 source /path/to/STM_SDK_3.5/mysetenv.sh HDK7108_7108_LINUX

Configure, build and install Qt 4.8.0 as

 $ /path/to/qt-everywhere-opensource-src-4.8.0/configure -opensource -confirm-license  -verbose -release -shared -no-rpath -system-zlib -system-libjpeg -system-libpng  -qt3support -qt-sql-sqlite -xmlpatterns -exceptions -declarative -script -scripttools  -webkit -no-javascript-jit -qt-gfx-linuxfb -qt-gfx-transformed -qt-gfx-vnc -qt-gfx-multiscreen  -qt-kbd-linuxinput -qt-mouse-linuxinput -make libs -make tools -make examples -make demos  -make docs -make translations -platform qws/linux-x86-g''+  prefix=/path/to/installation/directory/qt-everywhere-opensource-src-4.8.0-qws/  -xplatform qws/linux-sh4-ST7108-g++ -embedded sh4 -little-endian -opengl es2  -plugin-gfx-eglnullws -qt-gfx-directfb -no-dbus
 $ make
 $ make install

After the build succeeds set following environment variables before building any Qt Apps,

  1. QTDIR=/path/to/installation/directory/qt-everywhere-opensource-src-4.8.0-qws/
  2. PATH=/path/to/installation/directory/qt-everywhere-opensource-src-4.8.0-qws/bin/

Qt 5.0 EGLFS/QPA

Only QtBase module is tested.

Compiling Qt 5.0

One need to pass following "device-option"s

  1. CROSS_COMPILE=<STLinux-2.4 installation path>/STLinux-2.4/devkit/sh4/bin/sh4-linux-

Configure, build and install Qt 5.0 as

 $ configure prefix=/path/to/installation/directory/qt-gitorious-opensource-src-5.0 -release -opensource -confirm-license -shared -verbose  -device linux-sh4-stmicro-ST7108-g++  -sysroot <STLinux-2.4 installation path>/STLinux-2.4/devkit/sh4/target  -device-option CROSS_COMPILE=<STLinux-2.4 installation path>/STLinux-2.4/devkit/sh4/bin/sh4-linux-
 $ make module-qtbase
 $ make module-qtbase-install_subtargets

After the build succeeds set following environment variables before building any Qt Apps,

  1. QTDIR=/path/to/installation/directory/qt-gitorious-opensource-src-5.0/
  2. PATH=/path/to/installation/directory/qt-gitorious-opensource-src-5.0/bin/

Before executing any Qt applications on target copy "/path/to/installation/directory/qt-gitorious-opensource-src-5.0" from host on target at "/path/to/installation/directory/qt-gitorious-opensource-src-5.0" on target file system