NOTICE: The Processors Wiki will End-of-Life on January 15, 2021. It is recommended to download any files or other content you may need that are hosted on processors.wiki.ti.com. The site is now set to read only.

Arago build recipe for OMAPL1

From Texas Instruments Wiki
Jump to: navigation, search

Important Note:

The software discussed on this site is available for download, but is no longer being actively developed. This wiki is in maintenance mode and the software is supported on OMAPL1x Processor E2E forum


This recipe can be used to create kernel and RFS for OMAPL1 platforms using arago-project.org based build system.

NOTE
This recipe always builds most recent version.

Pre-requisite[edit]

  • Install Code Sourcery 2009 q1 tool chain for cross compiling. You can download CS2009q1 from link
  • As this point of time, we recommend Ubuntu 8.04 distribution but nothing in Arago is distribution specific and other distribution will most likely work as long as the appropriate packages are installed.

Ubuntu 8.04[edit]

Install the following packages:

sudo apt-get install build-essential subversion  ccache sed wget cvs git-core coreutils unzip texinfo docbook-utils gawk help2man diffstat file g++ python-psyco texi2html  bison flex chrpath
sudo dpkg-reconfigure dash
select No when it asks you to install dash as /bin/sh

Recipe[edit]

  • Setup various proxies as applicable.
  • Add path to bin folder of Code Sourcery tool chain (typically ~/arm-2009q1/bin) to PATH variable.
  • Create a working folder and change to it:
mkdir ~/oe
chdir ~/oe
cd ~/oe
mkdir downloads
chdir downloads
# TODO: Place ti_cgt_c6000_6.1.9_setup_linux_x86.bin in this folder
md5sum ti_cgt_c6000_6.1.9_setup_linux_x86.bin > ti_cgt_c6000_6.1.9_setup_linux_x86.bin.md5
cd ..
  • Clone arago repositories:
cd ~/oe
git clone http://arago-project.org/git/arago.git
git clone http://arago-project.org/git/arago-bitbake.git
git clone http://arago-project.org/git/arago-oe-dev.git
  • Prepare environment for build:
cd ~/oe
cp arago/setenv.sample arago/setenv
cp arago/conf/local.conf.sample arago/conf/local.conf
source arago/setenv
  • Build
cd ~/oe
MACHINE=da850-omapl138-evm bitbake u-boot arago-gst-image
  • Generated files can be found at:
u-boot: ~/oe/arago-tmp/deploy/images/da850-omapl138-evm/u-boot-da850-omapl138-evm.bin
Kernel: ~/oe/arago-tmp/deploy/images/da850-omapl138-evm/uImage-da850-omapl138-evm.bin
RFS   : ~/oe/arago-tmp/deploy/images/da850-omapl138-evm/arago-gst-image-da850-omapl138-evm.tar.gz

Development Kernel[edit]

This is a development branch with patches which haven't yet been pushed and/or accepted upstream yet. This kernel can be used with the root filesystem built above via arago. Currently one must build this kernel version outside of Arago though it is possible to locally modify the bitbake recipe to point at this kernel if so desired.

LCDC Driver[edit]

The branch contains support support for DVI output, requires a custom adapter board, via the LCDC peripheral. It also includes support for double buffering of the LCDC framebuffer. Here is a recipe to build for DA850. Nevermind that the name of the git tree indicates DA830 as it supports both.

$ git clone git://arago-project.org/git/people/martin/linux-da830.git
$ git checkout -b test origin/fbdev_sekhar
$ cd linux-da830
$ make ARCH=arm da850_omapl138_defconfig
$ make ARCH=arm menuconfig
# From menuconfig select: System Type --> TI DaVinci Implementations -->
                                               TI DA850/OMAP-L138/AM18xx Reference Platform -->
                                                    Select UI board type (DVI Adapter board) 
$ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- uImage

VPIF Driver[edit]

VPIF capture and display are present in the kernel and exposed via the Linux V4L2 interface. To build:

$ git clone git://arago-project.org/git/people/martin/linux-da830.git
$ git checkout -b test origin/fbdev_sekhar
$ cd linux-da830
$ make ARCH=arm da850_omapl138_defconfig
$ make ARCH=arm menuconfig

In menuconfig make these changes

System Type --->
    TI DaVinci Implementations --->
        [*] TI DA850/OMAP-L138/AM18xx Reference Platform
               Select UI board type (UI Expander board)  --->
                 (X) UI Expander board
              Select peripherals connected to UI expander board (Video Port Interface)  ---> 
                 (X) Video Port Interface  

Device Drivers  --->
    <*> Multimedia support  --->
        <*> Video For Linux
         [*]   Video capture adapters  --->
                  Encoders/decoders and other helper chips  --->
                    <*> Texas Instruments TVP514x video decoder  
                     -*- THS7303 Video Amplifier 
                     -*- ADV7343 video encoder 
                <*> DaVinci Video VPIF Display
                <*> DaVinci Video VPIF Capture
                -*- DaVinci VPIF Driver
$ make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- uImage

Example[edit]

This example (Vpif_mmap_loopback.zip) requires the UI board from LogicPD which is shipped with the OMAP-L138 Developer's kit.

Include these boot args to configure the VPIF buffers.

vpif_capture.ch0_bufsize=831488 vpif_display.ch2_bufsize=831488

Attach a composite video source to the input at J6 on the UI card and a composite video sink to J4. The code might work for S-Video using different channels but I haven't tried that. Build the example code (attached) and run like so.

$ # Here m 1 --> PAL
$ #           0 --> NTSC
$ #          p 0 --> disable printing
$ ./vpif_mmap_loopback -m 1 -p 0  

This copies the input to the output for 20 seconds then stops. NB: the chroma component is not copied due to performance limitations (not sure root cause atm) so the resultant video sink is more gray than you might expect. Also if there is no video present on the input when the program is started then this error is printed and the program exists. i.e. make sure you have video input present before running the app.

VIDIOC_S_INPUT
: Invalid argument
Error in opening capture device for channel 0
E2e.jpg {{
  1. switchcategory:MultiCore=
  • For technical support on MultiCore devices, please post your questions in the C6000 MultiCore Forum
  • For questions related to the BIOS MultiCore SDK (MCSDK), please use the BIOS Forum

Please post only comments related to the article Arago build recipe for OMAPL1 here.

Keystone=
  • For technical support on MultiCore devices, please post your questions in the C6000 MultiCore Forum
  • For questions related to the BIOS MultiCore SDK (MCSDK), please use the BIOS Forum

Please post only comments related to the article Arago build recipe for OMAPL1 here.

C2000=For technical support on the C2000 please post your questions on The C2000 Forum. Please post only comments about the article Arago build recipe for OMAPL1 here. DaVinci=For technical support on DaVincoplease post your questions on The DaVinci Forum. Please post only comments about the article Arago build recipe for OMAPL1 here. MSP430=For technical support on MSP430 please post your questions on The MSP430 Forum. Please post only comments about the article Arago build recipe for OMAPL1 here. OMAP35x=For technical support on OMAP please post your questions on The OMAP Forum. Please post only comments about the article Arago build recipe for OMAPL1 here. OMAPL1=For technical support on OMAP please post your questions on The OMAP Forum. Please post only comments about the article Arago build recipe for OMAPL1 here. MAVRK=For technical support on MAVRK please post your questions on The MAVRK Toolbox Forum. Please post only comments about the article Arago build recipe for OMAPL1 here. For technical support please post your questions at http://e2e.ti.com. Please post only comments about the article Arago build recipe for OMAPL1 here.

}}

Hyperlink blue.png Links

Amplifiers & Linear
Audio
Broadband RF/IF & Digital Radio
Clocks & Timers
Data Converters

DLP & MEMS
High-Reliability
Interface
Logic
Power Management

Processors

Switches & Multiplexers
Temperature Sensors & Control ICs
Wireless Connectivity