ST7105

From Qt Wiki
Revision as of 15:40, 4 March 2015 by AutoSpider (talk | contribs) (Convert ExpressionEngine links)
Jump to navigation Jump to search
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.
Architecture SH4
CPU SH430
RAM ???MB
Hardware acceleration DirectFB
Qt 4.8 (DirectFB/QWS) Supported, no OpenGL

Device Information

The ST7105 is made by STMicroelectronics.

  • "The STi7105 is targeted at the latest Operator and CE manufacturer requirements for STBs which utilize advanced HD decoding (H264/VC- 1/MPEG2), and which conform to DVB, ISMA, ATIS-IIF, SCTE, DirecTV, ATSC, ARIB, CEA, ITU, OpenCable and MSTV specifications."
  • [1] STi7105 Low cost advanced HD decoding IC for STB and iDTV

Software

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

Qt 4.8.0 DirectFB/QWS

Assumptions

  1. STM reference software SDK 3.6A is built on Host PC as conveyed in STM's documentation given by STM's Field Application Engineer.
  2. Can run STM's "Test-Tool" on reference board to test DirectFB and media playback.

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-ST7105-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-ST7105-g"
    1. https://gitorious.org/qt-platform-mkspecs/qt-platform-mkspecs/blobs/master/4.8/qws/linux-sh4-ST7105-g/qmake.conf
    2. https://gitorious.org/qt-platform-mkspecs/qt-platform-mkspecs/blobs/master/4.8/qws/linux-sh4-ST7105-g/qplatformdefs.h

h3. Compiling Qt 4.8.0

Set the development environment variables using following commands

 cd /path/to/STM_SDK_3.6A/bin/
 source /path/to/STM_SDK_3.6A/bin/setenv.sh IPTV7105_7105_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-ST7105-g++ -embedded sh4 -little-endian -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/