i.MX6 OTT TVBox HW/SW Reference Design Release (ICS4.0.4_1.0.0-alpha)

Document created by Qiang Li Employee on Apr 11, 2013Last modified by grantw on Dec 13, 2013
Version 8Show Document
  • View in full screen mode

 

OTT TV BOX Software Release:

 

1. Description

    This is the add-on patch for Freescale Android R13.4.1 BSP to support the
    OTT TVBox reference board.


2. Supported Features

    1) NAND flash boot.
    2) CVBS, supports PAL and NTSC.
    3) HDMI.
    4) Storage: eMMC, SD, USB, SATA.
    5) WiFi, WiFi softAP.
    6) BlueTooth.
    7) Ethernet.


3. File List

-- OTT_TVBOX_ICS4.0.4_1.0.0-alpha.tar.gz
   The add-on code and patches: after unzip, there are two files, only need select one to use.
   1) myandroid_r13.4.1_tvbox.tar.gz: this the updated source code files,
      you can copy them to r13.4.1 BSP, then the BSP is ready for OTT TVBox.
   2) myandroid_r13.4.1_tvbox_patch.tar.gz: this is the patched based on r13.4.1 BSP. You can
      apply them to the related git folder one by one. For those note git managed tar.gz files,
      just unzip them to the target folder.

-- Mfgtools-OTT_MX6Q_ICS4.0.4_1.0.0-alpha.zip
   The MFGTool for iMX6Q OTT TVBox board. Please put the built out image files "android_root.img,
   boot.img, recovery.img, u-boot.bin" to folder
   "Mfgtools-OTT_MX6Q_ICS4.0.4_1.0.0-alpha\Profiles\MX6Q Linux Update\OS Firmware\mx6q-ott".

-- Mfgtools-OTT_MX6DL_ICS4.0.4_1.0.0-alpha.zip
   The MFGTool for iMX6DL OTT TVBox board. Please put the built out image files "android_root.img,
   boot.img, recovery.img, u-boot.bin" to folder
   "Mfgtools-OTT_MX6DL_ICS4.0.4_1.0.0-alpha\Profiles\MX6DL Linux Update\OS Firmware\mx6dl-ott".

-- readme.txt
   this file, please refer to it before use packages.


4. Requirement

- iMX6Q/DL OTT TVbox board.
- Android R13.4.1 BSP.


5. How to use

-- Apply the patches.
    $ cd ~/myandroid/bootable/bootloader/uboot-imx/

    $ git apply ~/myandroid_r13.4.1_tvbox_patch/bootable_bootloader_uboot-imx/0001-ENGR00233366-5-Anatop-PFUZE-move-LDO-bypass-code-to-.patch

    $ git apply ~/myandroid_r13.4.1_tvbox_patch/bootable_bootloader_uboot-imx/0002-ENGR00238300-enhance-the-download-speed-for-fastboot.patch

    $ git apply ~/myandroid_r13.4.1_tvbox_patch/bootable_bootloader_uboot-imx/0003-ENGR00236902-mx6solo_sabresd-update-the-DDR-script-f.patch

    $ git apply ~/myandroid_r13.4.1_tvbox_patch/bootable_bootloader_uboot-imx/0004-ENGR00238371-mx6solo-sabresd-make-system-prompt-indi.patch

    $ git apply ~/myandroid_r13.4.1_tvbox_patch/bootable_bootloader_uboot-imx/0005-ENGR00235821-mx6-correct-work-flow-of-PFDs.patch

    $ git apply ~/myandroid_r13.4.1_tvbox_patch/bootable_bootloader_uboot-imx/0006-ENGR00243038-make-get_mmc_env_devno-to-be-a-generic-.patch

    $ git apply ~/myandroid_r13.4.1_tvbox_patch/bootable_bootloader_uboot-imx/0007-Uboot-support-iMX6Q-DL-OTT-TVBox-board.patch

 

    $ cd ~/myandroid/build/
    $ git apply ~/myandroid_r13.4.1_tvbox_patch/build/0001-Support-OTT-TVBox-building.patch

    $ cd ~/myandroid/device/fsl/
    $ git apply ~/myandroid_r13.4.1_tvbox_patch/device_fsl/0001-Add-OTT-TVBox-support.patch

    $ cd ~/myandroid/device/fsl-proprietary/
    $ git apply ~/myandroid_r13.4.1_tvbox_patch/device_fsl-proprietary/0001-OTT-TVbox-rtk8723-Bluetooth-and-WiFi-support.patch

    $ cd ~/myandroid/external/
    $ tar -zxvf ~/myandroid_r13.4.1_tvbox_patch/external/mtd-utils.tar.gz
    $ tar -zxvf ~/myandroid_r13.4.1_tvbox_patch/external/ntfs-3g.tar.gz
    $ tar -zxvf ~/myandroid_r13.4.1_tvbox_patch/external/wireless_tools.30.rtl.tar.gz
    $ tar -zxvf ~/myandroid_r13.4.1_tvbox_patch/external/wpa_supplicant_8_rtl.tar.gz

    $ cd ~/myandroid/external/bluetooth/bluez/
    $ git apply ~/myandroid_r13.4.1_tvbox_patch/external_bluetooth_bluez/0001-OTT-TVBox-bluetooth-support.patch

    $ cd ~/myandroid/external/tinyalsa/
    $ git apply ~/myandroid_r13.4.1_tvbox_patch/external_tinyalsa/0001-OTT-TVBox-CVBS-and-HDMI-audio-support.patch

    $ cd ~/myandroid/frameworks/base/
    $ git apply ~/myandroid_r13.4.1_tvbox_patch/frameworks_base/0001-ENGR00215174-fix-single-HDMI-suspend-resume-problem.patch
    $ git apply ~/myandroid_r13.4.1_tvbox_patch/frameworks_base/0002-OTT-TVBox-ethernet-support.patch

    $ cd ~/myandroid/hardware/
    $ tar -zxvf ~/myandroid_r13.4.1_tvbox_patch/hardware/realtek.tar.gz

    $ cd ~/myandroid/hardware/imx/
    $ git apply ~/myandroid_r13.4.1_tvbox_patch/hardware_imx/0001-OTT-TVBox-CVBS-audio-support.patch

    $ cd ~/myandroid/hardware/libhardware_legacy/
    $ git apply ~/myandroid_r13.4.1_tvbox_patch/hardware_libhardware_legacy/0001-OTT-TVBox-dual-audio-and-WiFi-support.patch

    $ cd ~/myandroid/kernel_imx/
    $ git apply ~/myandroid_r13.4.1_tvbox_patch/kernel_imx/0001-ENGR00241003-1-mx6-need-to-add-delay-in-LDO-voltage-.patch
    $ git apply ~/myandroid_r13.4.1_tvbox_patch/kernel_imx/0002-ENGR00241003-2-pfuze-using-_sel-interface-to-add-del.patch
    $ git apply ~/myandroid_r13.4.1_tvbox_patch/kernel_imx/0003-Fix-compile-error-for-pfuse-driver.patch
    $ git apply ~/myandroid_r13.4.1_tvbox_patch/kernel_imx/0004-Kernel-support-iMX6Q-DL-OTT-TVBox-board.patch
    $ git apply ~/myandroid_r13.4.1_tvbox_patch/kernel_imx/0005-Update-kernel-config-file-for-OTT-TVBox-MFGTool-enab.patch
    $ git apply ~/myandroid_r13.4.1_tvbox_patch/kernel_imx/0006-Update-code-for-iMX6-OTT-TVBox-board.patch

    $ cd ~/myandroid/packages/apps/Settings/
    $ git apply ~/myandroid_r13.4.1_tvbox_patch/packages_apps_Settings/0001-OTT-TVBox-updated-for-ethernet-and-CVBS.patch

    $ cd ~/myandroid/packages/providers/DownloadProvider/
    $ git apply ~/myandroid_r13.4.1_tvbox_patch/packages_providers_DownloadProvider/0001-OTT-TVbox-update-for-ethernet.patch

    $ cd ~/myandroid/system/bluetooth/
    $ git apply ~/myandroid_r13.4.1_tvbox_patch/system_bluetooth/0001-OTT-TVBox-bluetooth-support.patch

    $ cd ~/myandroid/system/netd/
    $ git apply ~/myandroid_r13.4.1_tvbox_patch/system_netd/0001-OTT-TVBox-update-for-ethernet.patch

    $ cd ~/myandroid/system/vold/
    $ git apply ~/myandroid_r13.4.1_tvbox_patch/system_vold/0001-OTT-TVBox-update-for-NTFS.patch

-- Build Android Image:
    $ cd ~/myandroid
    $ source build/envsetup.sh
    $ lunch ott_6dq-user
    $ make

-- Build Uboot Images:
    $ cd ~/myandroid/bootable/bootloader/uboot-imx
    $ export ARCH=arm
    $ export CROSS_COMPILE=~/myandroid/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
    $ make distclean

For iMX6Q OTT:
    $ make mx6q_ott_android_config
For iMX6DL OTT:
    $ make mx6dl_ott_android_config

    $ make

-- Build Kernel Image:
    $ export PATH=~/myandroid/bootable/bootloader/uboot-imx/tools:$PATH
    $ cd ~/myandroid/kernel_imx
    $ export ARCH=arm
    $ export CROSS_COMPILE=~/myandroid/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
    $ make imx6_ott_android_defconfig
    $ make uImage

-- Build MfgTool Kernel Image:
    $ export PATH=~/myandroid/bootable/bootloader/uboot-imx/tools:$PATH
    $ cd ~/myandroid/kernel_imx
    $ export ARCH=arm
    $ export CROSS_COMPILE=~/myandroid/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
    $ make imx6_ott_mfg_defconfig
    $ make uImage


6. Known issues
    1) CVBS issue: For iMX6DL, the HDMI and CVBS will run on same IPU, sometimes enable/disable the CVBS
       will cause sync display error, then there will be no display output. It only happens on iMX6DL
       board, no such issue for iMX6Q board (run HDMI and CVBS on two IPUs).

    2) CVBS issue: When HDMI is 1920x1080 resolution, the CVBS output UI is un-clearly.

    3) BlueTooth issue: Turn on bluetooth, then enable and disable airplane mode, bluetooth cannot work
       again, must re-boot android system.

    4) WiFi issue: WiFi direct not work.

 

 

OTT TV BOX Hardware Design Release:

 

OTT-TV BOX hardware design files have been upload on the attachment. The detail info has been list as below:

 

Android 4.x OTT SPECIFICATION
Core Configure
Operating SystemAndroid 4.x Operating System Based on Micro-PC Platform
CPU ProcessorFreescale i.MX6x Dual/Quad Core 1.2GHz Core Frequency
DRAM StorageDDR3 1GigaByte Size, Data rate 1066MT/s
Flash Storage4GigaByte NAND flash rom
Power System
Power SupplyDC JACK / Micro USB : 12V/2A or 5V/3A
LED StatusGREEN: Power ON; RED: System Run
Socket/Connector
MicroSD SocketSDXC Support, Up to 32GB size
USB HOST 2.0x2 USB 2.0 HOST
SATAPower eSATA Support
Ethernetx2 100Mbps Ethernet RJ45 PORTs
Display/Audio
HDMI OutputHDMI TypeA Plug connector, 1080p@60Hz output
CVBSSupport CVBS output with Left/Right Line out
SPDIFSupport SPDIF fiber output
Wireless
WiFiIEEE 802.11b/g/n,Up to 150Mbps,AP/P2P/Sta Mode Support
BTBT 4.0 Support
Others
KeyRecovery key support
RevB2

IMG1496.jpg

HDMI DONGLE LINK:

https://community.freescale.com/docs/DOC-93821

Outcomes