ST7540: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 28: Line 28:
== Device Information ==
== Device Information ==


The ST7540 is made by "STMicroelectronics":http://www.st.com/internet/imag_video/product/130228.jsp.
The ST7540 is made by "STMicroelectronics":http://www.st.com/internet/imag_video/product/130228.jsp.


* &quot;The ST7540 is a Half Duplex synchronous/asynchronous FSK Modem designed for power line communication network applications. It operates from a single supply voltage and integrates a line driver and two linear regulators for 5V and 3.3V. The device operation is controlled by means of an internal register, programmable through the synchronous serial interface. Additional functions as watchdog, clock output, output voltage and current control, preamble detection, time-out and band in use are included. Realized in Multipower BCD5 technology that allows to integrate DMOS, Bipolar and CMOS structures in the same chip.&quot;<br />[http://www.st.com/internet/imag_video/product/130228.jsp] ST7540 B-FSK - Stripped down Power Line Transceiver
* "The ST7540 is a Half Duplex synchronous/asynchronous FSK Modem designed for power line communication network applications. It operates from a single supply voltage and integrates a line driver and two linear regulators for 5V and 3.3V. The device operation is controlled by means of an internal register, programmable through the synchronous serial interface. Additional functions as watchdog, clock output, output voltage and current control, preamble detection, time-out and band in use are included. Realized in Multipower BCD5 technology that allows to integrate DMOS, Bipolar and CMOS structures in the same chip."
[http://www.st.com/internet/imag_video/product/130228.jsp] ST7540 B-FSK - Stripped down Power Line Transceiver


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


# STM SDK 3.5
# STM SDK 3.5
# &quot;STLinux-2.4&amp;quot;:http://www.stlinux.com/install  
# "STLinux-2.4":http://www.stlinux.com/install  
# sh4-linux crosstools from STM
# sh4-linux crosstools from STM


Line 41: Line 42:


# 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 &quot;FUDB_GPD201_7540_LINUX DCP_HOST DDR3&amp;quot;
# STM reference software SDK 3.5 is configured for "FUDB_GPD201_7540_LINUX DCP_HOST DDR3"
# Can run STM's &quot;Test-Tool&amp;quot; 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 &quot;sysroot&amp;quot; is located at &quot;&lt;STLinux-2.4 installation path&amp;gt;/STLinux-2.4/devkit/sh4/target&amp;quot;
# 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 65: Line 66:
## 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-ST7540-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-ST7540-g&quot;<br />## https://gitorious.org/qt-platform-mkspecs/qt-platform-mkspecs/blobs/master/4.8/qws/linux-sh4-ST7540-g/qmake.conf<br />## https://gitorious.org/qt-platform-mkspecs/qt-platform-mkspecs/blobs/master/4.8/qws/linux-sh4-ST7540-g/qplatformdefs.h
# Create folder named "linux-sh4-ST7540-g+''" in "qt-everywhere-opensource-src-4.8.0/mkspecs/qws"
<br />h3. Compiling Qt 4.8.0 development environment variables using following commands
# Get following files in "qt-everywhere-opensource-src-4.8.0/mkspecs/qws/linux-sh4-ST7540-g"
<br /> <code><br /> cd /path/to/STM/futk_2boxtv_src_c273/stbsp/stdebug/api_test/testapp<br /> source /path/to/STM/futk_2boxtv_src_c273/stbsp/stmake/bin/setenv.sh FUDB_GPD201_7540_LINUX DCP_HOST DDR3<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-ST7540-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-ST7540-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-ST7540-g/qplatformdefs.h
<br />Only QtBase module is tested.
<br />h3. Compiling Qt 5.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>


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-ST7540-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/
h3. Compiling Qt 4.8.0 development environment variables using following commands


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
<code>
cd /path/to/STM/futk_2boxtv_src_c273/stbsp/stdebug/api_test/testapp
source /path/to/STM/futk_2boxtv_src_c273/stbsp/stmake/bin/setenv.sh FUDB_GPD201_7540_LINUX DCP_HOST DDR3
</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-ST7540-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/
 
h2. Qt 5.0 EGLFS/QPA
 
Only QtBase module is tested.
 
h3. 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
<code>
$ configure —prefix=/path/to/installation/directory/qt-gitorious-opensource-src-5.0 -release -opensource -confirm-license -shared -verbose  -device linux-sh4-stmicro-ST7540-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 "/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

Revision as of 10:38, 25 February 2015


ST7540

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 ST7540 is made by "STMicroelectronics":http://www.st.com/internet/imag_video/product/130228.jsp.

  • "The ST7540 is a Half Duplex synchronous/asynchronous FSK Modem designed for power line communication network applications. It operates from a single supply voltage and integrates a line driver and two linear regulators for 5V and 3.3V. The device operation is controlled by means of an internal register, programmable through the synchronous serial interface. Additional functions as watchdog, clock output, output voltage and current control, preamble detection, time-out and band in use are included. Realized in Multipower BCD5 technology that allows to integrate DMOS, Bipolar and CMOS structures in the same chip."

[1] ST7540 B-FSK - Stripped down Power Line Transceiver

Software

  1. STM SDK 3.5
  2. "STLinux-2.4":http://www.stlinux.com/install
  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 "FUDB_GPD201_7540_LINUX DCP_HOST DDR3"
  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-ST7540-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-ST7540-g"
    1. https://gitorious.org/qt-platform-mkspecs/qt-platform-mkspecs/blobs/master/4.8/qws/linux-sh4-ST7540-g/qmake.conf
    2. https://gitorious.org/qt-platform-mkspecs/qt-platform-mkspecs/blobs/master/4.8/qws/linux-sh4-ST7540-g/qplatformdefs.h

h3. Compiling Qt 4.8.0 development environment variables using following commands

 cd /path/to/STM/futk_2boxtv_src_c273/stbsp/stdebug/api_test/testapp
 source /path/to/STM/futk_2boxtv_src_c273/stbsp/stmake/bin/setenv.sh FUDB_GPD201_7540_LINUX DCP_HOST DDR3

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-ST7540-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/

h2. Qt 5.0 EGLFS/QPA

Only QtBase module is tested.

h3. 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-ST7540-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