ti-dmai_2.10.00.xx: add recipe to build released dmai versions
authorBrijesh Singh <bksingh@ti.com>
Sat, 8 May 2010 15:22:19 +0000 (10:22 -0500)
committerKoen Kooi <koen@openembedded.org>
Sat, 12 Jun 2010 09:03:49 +0000 (11:03 +0200)
* run dmai release steps in do_install_prepend()
* apply dmai DM365 resizer patch needed for gstreamer TIVidResizer element.
* update dm365 loadmodule.sh

Signed-off-by: Brijesh Singh <bksingh@ti.com>
Signed-off-by: Koen Kooi <k-kooi@ti.com>
recipes/ti/ti-dmai/0001-Correct-DMAI-s-Resize-module-for-DM365.patch [new file with mode: 0644]
recipes/ti/ti-dmai/arago-tdox [new file with mode: 0644]
recipes/ti/ti-dmai/doxygen_templates.tar.gz [new file with mode: 0644]
recipes/ti/ti-dmai/loadmodules-ti-dmai-dm365_al.sh
recipes/ti/ti-dmai_2.10.00.09.bb [new file with mode: 0644]
recipes/ti/ti-dmai_2.10.00.10.bb [new file with mode: 0644]

diff --git a/recipes/ti/ti-dmai/0001-Correct-DMAI-s-Resize-module-for-DM365.patch b/recipes/ti/ti-dmai/0001-Correct-DMAI-s-Resize-module-for-DM365.patch
new file mode 100644 (file)
index 0000000..21e71de
--- /dev/null
@@ -0,0 +1,34 @@
+From 9d9326c26ea990fa49842e0c57d520a5acb4d887 Mon Sep 17 00:00:00 2001
+From: Don Darling <ddarling@ti.com>
+Date: Fri, 16 Apr 2010 17:40:40 -0500
+Subject: [PATCH] Correct DMAI's Resize module for DM365.
+
+The PSP requires virtual addresses to be given for the resize buffers.  This
+differs from previous releases, which required physical addresses.  This
+change updates the Resize module to use virtual addresses.
+---
+ .../packages/ti/sdo/dmai/linux/dm365/Resize.c      |    4 ++--
+ 1 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/dmai/packages/ti/sdo/dmai/linux/dm365/Resize.c b/dmai/packages/ti/sdo/dmai/linux/dm365/Resize.c
+index c1716c4..3e71e46 100644
+--- a/dmai/packages/ti/sdo/dmai/linux/dm365/Resize.c
++++ b/dmai/packages/ti/sdo/dmai/linux/dm365/Resize.c
+@@ -313,12 +313,12 @@ Int Resize_execute(Resize_Handle hResize,
+     rsz.in_buff.index     = -1;
+     rsz.in_buff.buf_type  = IMP_BUF_IN;
+-    rsz.in_buff.offset    = Buffer_getPhysicalPtr(hSrcBuf) + srcOffset;
++    rsz.in_buff.offset    = ((Int32)Buffer_getUserPtr(hSrcBuf)) + srcOffset;
+     rsz.in_buff.size      = Buffer_getSize(hSrcBuf);
+     rsz.out_buff1.index    = -1;
+     rsz.out_buff1.buf_type = IMP_BUF_OUT1;
+-    rsz.out_buff1.offset   = Buffer_getPhysicalPtr(hDstBuf) + dstOffset;
++    rsz.out_buff1.offset   = ((Int32)Buffer_getUserPtr(hDstBuf)) + dstOffset;
+     rsz.out_buff1.size     = Buffer_getSize(hDstBuf);
+     
+     /* 
+-- 
+1.6.3.3
+
diff --git a/recipes/ti/ti-dmai/arago-tdox b/recipes/ti/ti-dmai/arago-tdox
new file mode 100644 (file)
index 0000000..81538cf
--- /dev/null
@@ -0,0 +1,210 @@
+#!/bin/bash
+#
+#
+# This script sets a series of environment variable that are referenced
+# in a doxygen configuration file.  The values passed in here are simply
+# plugged into the file locations and doxygen proceeds normaly.
+#
+# template location is ${VENDORS}/opensource/doxygen/templates/<version>
+#
+#
+
+# Revision history
+#! 02 Jul 2009 cring: Added cmd line args for doxygendir (-x) and template (-t)
+#! 13 Jul 2006 ada: New template smaller pdf generation
+#! 16 May 2006 ada: Added -p file to pdf for space in project names
+#! 08 May 2006 ada: Added pdf generation to tdox (Solaris/Linux only).
+#! 23 Jan 2006 ada: Overide file to change default doxyfile behaivior
+#! 19 Jan 2006 ada: 1093, ENUM_VALUES_PER_LINE set to 1, ref doxyfile via vers
+#! 05 Oct 2005 ada: 933,  doxyfile in tools, removed win and unix vendors path
+#! 24 Aug 2005 ada: Added 897 changes, optional css c or jave optimization
+#! 18 Aug 2005 ada: inital version from AR 887
+
+# Set these defaults here as the usage statement uses them
+TDOX_TEMPLATEDIR=${TOOLS}/default/doxygen_templates
+DOXYGEN_EXECUTABLE=doxygen
+
+function usage
+{
+  OPTIONS="`basename $0` code_location out_doc_location [-x doxygen_exe ] [-t tdox_templatedir] [-n project_name] [-v version] [-f FILE_PATTERNS ] [-s strip_dir] [-c css location] [-e exclude dirs] [-b enabled sections] [-m generate chm] [-p pdf_file] [-o override doxyfile] [-j]"
+  echo "`basename $1` $OPTIONS"
+  echo "Where: "
+  echo "\tcode_location: Top of tree(s) to search for code (required as 1st param)"
+  echo "\tout_doc_location: Output location for generated files (required as 2nd param)"
+  echo "\t[-n project_name]: title of generated documentation (defaults to Project)"
+  echo "\t[-x doxygen_exe]: location of doxygen executable (defaults to $DOXYGEN_EXECUTABLE)"
+  echo "\t[-t tdox_templatedir]: location of tdox templates (defaults to $TDOX_TEMPLATEDIR)"
+  echo "\t[-v version]: version number or string (defaults to 1.0)"
+  echo "\t[-f FILE_PATTERNS]: Optional list of files to document (defaults to all)"
+  echo "\t[-s strip_dirs]: Remove directory prefix from generated files (defaults to not remove)"
+  echo "\t[-c path_to_css]: Path to a user suplied CSS style sheet"
+  echo "\t[-e exclude dirs]: List of directories to exclude"
+  echo "\t[-b enabled sections]: List of sections to enable"
+  echo "\t[-m generate chm]: chm file name (required)"
+  echo "\t[-p generate pdf <file>]: create <file>.pdf in html/pdf (Linux only)"
+  echo "\t[-o override doxyfile]: file (advanced) Overide any doxyfile default"
+  echo "\t[-j]: Optimize for Java (Generate class files) defaults to C"
+  echo "\t[-r]: Call rshd to windows for chm generation (defaults to wine)"
+  echo
+  exit
+}
+
+function optimizeForJava
+{
+  DOX_OPTIMIZE_OUTPUT_JAVA="YES"
+  DOX_OPTIMIZE_OUTPUT_FOR_C="NO"
+}
+
+if [ "$#" -lt 2 ]; then
+   echo "Invalid number of parameters"
+   usage $0
+fi
+
+# get the required parameters then shift for the getopts parameters
+export DOX_INPUT="$1"
+shift
+export DOX_OUTPUT_DIRECTORY="$1"
+shift
+
+#set the global defaults
+DOX_QUIET="YES"
+DOX_OPTIMIZE_OUTPUT_JAVA="NO"
+DOX_OPTIMIZE_OUTPUT_FOR_C="YES"
+DOX_CHM_FILE=
+DOX_GENERATE_HTMLHELP="NO"
+OVERRIDE_FILE=""
+PDF=""
+
+# Process the rest of the arguments as getopts
+# parameters
+while getopts b:c:e:f:m:n:o:p:s:t:v:x:dhjr arg
+do
+  case $arg in
+    b)  DOX_ENABLED_SECTIONS=${OPTARG};;
+    c)  DOX_HTML_STYLESHEET=${OPTARG};;
+    d)  DEBUG=1;;
+    e)  DOX_EXCLUDE=${OPTARG};;
+    f)  DOX_FILE_PATTERNS=${OPTARG};;
+    h)  usage;exit 0;;
+    j)  optimizeForJava;;
+    r)  USERSHD=1;;
+    m)  DOX_CHM_FILE=${OPTARG};DOX_GENERATE_HTMLHELP="YES";;
+    n)  DOX_PROJECT_NAME=${OPTARG};;
+    s)  DOX_STRIP_FROM_PATH=${OPTARG};;
+    t)  TDOX_TEMPLATEDIR=${OPTARG};;
+    v)  DOX_PROJECT_NUMBER=${OPTARG};;
+    x)  DOXYGEN_EXECUTABLE=${OPTARG};;
+    o)  OVERRIDE_FILE=${OPTARG};;
+    p)  PDF=${OPTARG};;
+    \?) usage
+        exit 2;;
+  esac
+done
+
+if [ "$DEBUG" = "1" ]; then
+   DOX_QUIET="NO"
+   set -x
+fi
+
+if [ "$DOX_PROJECT_NAME" = "" ]; then
+   DOX_PROJECT_NAME="Project"
+fi
+
+if [ "$DOX_PROJECT_NUMBER" = "" ]; then
+   DOX_PROJECT_NUMBER="1.0"
+fi
+
+if [ "$DOX_FILE_PATTERNS" = "" ]; then
+   DOX_FILE_PATTERNS="*.c \
+                  *.cc \
+                  *.cxx \
+                  *.cpp \
+                  *.c++ \
+                  *.d \
+                  *.java \
+                  *.ii \
+                  *.ixx \
+                  *.ipp \
+                  *.i++ \
+                  *.inl \
+                  *.h \
+                  *.hh \
+                  *.hxx \
+                  *.hpp \
+                  *.h++ \
+                  *.idl \
+                  *.odl \
+                  *.cs \
+                  *.php \
+                  *.php3 \
+                  *.inc \
+                  *.m \
+                  *.mm \
+                  *.dox"
+fi
+
+export DOX_INPUT
+export DOX_OUTPUT_DIRECTORY
+export DOX_PROJECT_NAME
+export DOX_PROJECT_NUMBER
+export DOX_FILE_PATTERNS
+export DOX_STRIP_FROM_PATH
+export DOX_QUIET
+export DOX_HTML_STYLESHEET
+export DOX_OPTIMIZE_OUTPUT_FOR_C
+export DOX_OPTIMIZE_OUTPUT_JAVA
+export DOX_EXCLUDE
+export DOX_ENABLED_SECTIONS
+export DOX_CHM_FILE
+export DOX_GENERATE_HTMLHELP
+export TDOX_TEMPLATEDIR
+
+
+# Make sure the dir exists
+mkdir -p $DOX_OUTPUT_DIRECTORY
+
+# Create temp file copy of doxyfile and append overrides to the end of the file
+cp ${TDOX_TEMPLATEDIR}/doxyfile /tmp/doxyfile$$
+
+chmod +w /tmp/doxyfile$$
+if [ "$OVERRIDE_FILE" != "" ]; then
+   cat $OVERRIDE_FILE >> /tmp/doxyfile$$
+fi
+
+# Run doxygen and clean up temp file
+${DOXYGEN_EXECUTABLE} /tmp/doxyfile$$
+rm -f /tmp/doxyfile$$
+
+# Copy the TI banner gifs to the html directory.
+cp -p ${TDOX_TEMPLATEDIR}/*gif $DOX_OUTPUT_DIRECTORY/html
+
+# Generate PDF files
+if [ "$PDF" != "" ]; then
+  if [ "$BUILD_HOST_OS" = "Linux" ]; then
+    rm -rf $DOX_OUTPUT_DIRECTORY/html/pdf
+    mkdir -p $DOX_OUTPUT_DIRECTORY/html/pdf
+    cwd=`pwd`
+    cd  $DOX_OUTPUT_DIRECTORY/latex
+    latex refman.tex
+    makeindex refman.idx
+    latex refman.tex
+    latex_count=5
+    while egrep -s 'Rerun (LaTeX|to get cross-references right)' refman.log && [ $$latex_count -gt 0 ]
+    do
+        latex refman.tex
+        latex_count=`expr $$latex_count - 1`
+    done
+    dvips -o refman.ps refman.dvi
+    ps2pdf refman.ps refman.pdf
+    cd $cwd
+    mv $DOX_OUTPUT_DIRECTORY/latex/refman.pdf $DOX_OUTPUT_DIRECTORY/html/pdf/${PDF}.pdf
+  else
+    echo "Sorry... pdf generation supported under Linux only"
+  fi
+fi
+
+# Generate Windows compressed help
+if [ "$DOX_GENERATE_HTMLHELP" = "YES" ]; then
+     echo "chm generation is not supported"
+fi
diff --git a/recipes/ti/ti-dmai/doxygen_templates.tar.gz b/recipes/ti/ti-dmai/doxygen_templates.tar.gz
new file mode 100644 (file)
index 0000000..6d613bf
Binary files /dev/null and b/recipes/ti/ti-dmai/doxygen_templates.tar.gz differ
index f5a7f6a..36dc78e 100644 (file)
@@ -1,14 +1,25 @@
 #!/bin/sh
+
+# This loadmodules script is provided to support 1920x1080 resolution file based encode/decode DMAI unit test applications
+
+# Sample bootargs is given below
+# mem=60M console=ttyS0,115200n8 root=/dev/nfs rw nfsroot=<nfsroot> ip=dhcp video=davincifb:vid0=OFF:vid1=OFF:osd0=720x576x16,2025K dm365_imp.oper_mode=0
+
+depmod -a
 rmmod cmemk 2>/dev/null
 rmmod irqk 2>/dev/null
 rmmod edmak 2>/dev/null
 rmmod dm365mmap 2>/dev/null
 
 # Pools configuration
-modprobe cmemk phys_start=0x85000000 phys_end=0x88000000 pools=6x4096,2x8192,1x11908,2x13184,1x2697152,6x4096,1x30720,3x81920,1x3185664,64x56,1x320,1x640,1x81920,1x6650880,2x608,1x296,1x28,2x24,23x1548288,1x154288 allowOverlap=1 phys_start_1=0x00001000 phys_end_1=0x00008000 pools_1=1x28672
+modprobe cmemk phys_start=0x83C00000 phys_end=0x88000000 pools=1x384,2x5984,2x3133440,1x16384,1x48952,1x20480,1x60288,1x74,1x28,1x2048,1x6785280,1x146,1x896,1x65536,1x98,1x296,29x56,2x24,1x624,4x62,1x1456,1x18321120,1x65792,5x3523584,1x4194304,1x8355840
+
+#VC1 decode pool configuration
+# insmod cmemk.ko phys_start=0x83C00000 phys_end=0x88000000 pools=1x384,1x112665,3x7680,1x319264,2x1024,5x7208960,1x80,1x116,1x29184,1x2688,1x30720,1x551680,2x128,1x74,1x28,1x10240,1x47232,1x448,2x1152,1x8192,2x272896,18x56,2x24,1x86,4x62,2x7808,1x2097152
 
 modprobe irqk
 modprobe edmak
 modprobe dm365mmap
+
 rm -f /dev/dm365mmap
 mknod /dev/dm365mmap c `awk "\\$2==\"dm365mmap\" {print \\$1}" /proc/devices` 0
diff --git a/recipes/ti/ti-dmai_2.10.00.09.bb b/recipes/ti/ti-dmai_2.10.00.09.bb
new file mode 100644 (file)
index 0000000..a531a55
--- /dev/null
@@ -0,0 +1,21 @@
+require ti-dmai.inc
+
+PV = "2_10_00_09"
+PR = "r3"
+COMPATIBLE_MACHINE = "(dm365-evm|dm355-evm|dm6467-evm)"
+
+SRC_URI_append = "file://doxygen_templates.tar.gz \
+                  file://arago-tdox"
+
+SRCREV         = "443"
+DMAIBRANCH     = "branches/GITPSP_INT_101009"
+
+do_install_prepend () {
+    find ${S} -name .svn -type d | xargs rm -rf
+    cp -pPrf ${WORKDIR}/doxygen_templates ${S}
+    cp -pPrf ${WORKDIR}/arago-tdox ${S}/tdox
+    chmod a+x ${S}/release.sh
+    chmod a+x ${S}/tdox
+    ${S}/release.sh ${PV}
+}
diff --git a/recipes/ti/ti-dmai_2.10.00.10.bb b/recipes/ti/ti-dmai_2.10.00.10.bb
new file mode 100644 (file)
index 0000000..66cc424
--- /dev/null
@@ -0,0 +1,22 @@
+require ti-dmai.inc
+
+PV = "2_10_00_10"
+PR = "r2"
+COMPATIBLE_MACHINE = "(dm365-evm|dm355-evm|dm6467-evm)"
+
+SRC_URI_append = "file://0001-Correct-DMAI-s-Resize-module-for-DM365.patch;patch=3 \
+       file://doxygen_templates.tar.gz \
+        file://arago-tdox"
+
+SRCREV         = "452"
+DMAIBRANCH     = "branches/GITPSP_INT_101009"
+
+do_install_prepend () {
+    find ${S} -name .svn -type d | xargs rm -rf
+    cp -pPrf ${WORKDIR}/doxygen_templates ${S}
+    cp -pPrf ${WORKDIR}/arago-tdox ${S}/tdox
+    chmod a+x ${S}/release.sh
+    chmod a+x ${S}/tdox
+    ${S}/release.sh ${PV}
+}