summaryrefslogtreecommitdiff
path: root/recipes/ti
diff options
context:
space:
mode:
authorRoger Monk <r-monk@ti.com>2010-03-05 19:37:26 +0000
committerKoen Kooi <koen@openembedded.org>2010-04-12 19:43:22 +0200
commit31a5fea2a404d396e8a77144ab063d5d587c9722 (patch)
treea62b263537270f64e04f72762e90a924f9eb3a83 /recipes/ti
parentfd6b5d915d09b774a12c3f567ea08302bd34f919 (diff)
ti-dsplink: Add support for DM6446 build (~ from Niclas)
* patches for DM6446 dsplink build Signed-off-by: Roger Monk <r-monk@ti.com> Signed-off-by: Koen Kooi <k-kooi@ti.com>
Diffstat (limited to 'recipes/ti')
-rw-r--r--recipes/ti/ti-dsplink.inc2
-rw-r--r--recipes/ti/ti-dsplink/dsplink_1_64_add_dm6446_build_support.patch337
-rw-r--r--recipes/ti/ti-dsplink_1.64.bb3
3 files changed, 340 insertions, 2 deletions
diff --git a/recipes/ti/ti-dsplink.inc b/recipes/ti/ti-dsplink.inc
index 9fc1375f5e..721d3a224d 100644
--- a/recipes/ti/ti-dsplink.inc
+++ b/recipes/ti/ti-dsplink.inc
@@ -43,7 +43,7 @@ DSPLINKDSPCFG_omapl138 = "OMAPL138GEMSHMEM"
DSPLINKDSPCFG_omap3 = "OMAP3530SHMEM"
DSPLINKDSPCFG ?= "<UNDEFINED_DSPLINKDSPCFG>"
-DSPLINKGPPOS_dm6446 = "MVL5G"
+DSPLINKGPPOS_dm6446 = "DM6446LSP"
DSPLINKGPPOS_dm6467 = "DM6467LSP"
DSPLINKGPPOS_omapl137 = "MVL5G"
DSPLINKGPPOS_omapl138 = "ARM"
diff --git a/recipes/ti/ti-dsplink/dsplink_1_64_add_dm6446_build_support.patch b/recipes/ti/ti-dsplink/dsplink_1_64_add_dm6446_build_support.patch
new file mode 100644
index 0000000000..5a25dbb588
--- /dev/null
+++ b/recipes/ti/ti-dsplink/dsplink_1_64_add_dm6446_build_support.patch
@@ -0,0 +1,337 @@
+From 7b36e94dcb33892e1df7d3327db31bd41fb6167e Mon Sep 17 00:00:00 2001
+From: Roger Monk <r-monk@ti.com>
+Date: Fri, 5 Mar 2010 19:22:58 +0000
+Subject: [PATCH] dsplink_1_64: Add support for building with CS tools + against 2.6.30+
+
+ * Tweaked Patches from Niclas
+
+Signed-off-by: Roger Monk <r-monk@ti.com>
+---
+ dsplink/config/bin/dsplinkcfg.pl | 17 ++++-
+ dsplink/gpp/src/DIRS | 5 +
+ dslpink/gpp/src/Makefile | 8 ++-
+ dsplink/gpp/src/Rules.mk | 5 +
+ dsplink/make/Linux/davinci_2.6.mk | 211 +++++++++++++++++++++++++++++++++++++++++++++
+ 5 files changed, 244 insertions(+), 2 deletions(-)
+ create mode 100644 make/Linux/davinci_2.6.mk
+
+diff --git a/dsplink/config/bin/dsplinkcfg.pl b/dsplink/config/bin/dsplinkcfg.pl
+index 644aa38..e83c133 100644
+--- a/dsplink/config/bin/dsplinkcfg.pl
++++ b/dsplink/config/bin/dsplinkcfg.pl
+@@ -215,6 +215,18 @@ my %CFG_GPPOS_DM6467LSPuc =
+ 'OSPREFIX' => 'uc',
+ ) ;
+
++# DM6446 Linux
++my %CFG_GPPOS_DM6446LSP =
++(
++ 'NAME' => 'DM6446LSP',
++ 'PREFIX' => '2.6',
++ 'ID' => 'DM6446LSP',
++ 'DESC' => 'DM6446 LSP for DM6446',
++ 'VER' => '2.6.18',
++ 'TYPE' => 'Linux',
++ 'LOADERS'=> [\%CFG_LOADER_COFF, ],
++ 'COMPS' => 'ponslrmc',
++) ;
+
+ # OMAPL138 Linux with uCLibc filesystem
+ my %CFG_GPPOS_OMAPL138LSPuc =
+@@ -356,7 +368,7 @@ my %CFG_DSPCFG_DM6446GEMSHMEM =
+ 'PHYID' => 'DM6446GEMSHMEM',
+ 'PHYDESC' => 'Shared Memory Physical Interface',
+ 'PHYTYPE' => 'SHMEM',
+- 'GPPOS' => [\%CFG_GPPOS_MVL5U, \%CFG_GPPOS_MVL5G],
++ 'GPPOS' => [\%CFG_GPPOS_MVL5U, \%CFG_GPPOS_MVL5G, \%CFG_GPPOS_DM6446LSP],
+ 'DSPOS' => [\%CFG_DSPOS_5XX, \%CFG_DSPOS_6XX],
+ # DSP defines
+ 'DSPNAME' => 'DM6446GEM',
+@@ -2994,6 +3006,9 @@ sub main {
+ if ($platform {'ID'} eq 'DA850') {
+ print "GPP side distribution file: \$DSPLINK" . $DIRSEP . "gpp" . $DIRSEP. "src" . $DIRSEP. "Rules.mk\n" ;
+ }
++ if ($platform {'ID'} eq 'DAVINCI') {
++ print "GPP side distribution file: \$DSPLINK" . $DIRSEP . "gpp" . $DIRSEP. "src" . $DIRSEP. "Rules.mk\n" ;
++ }
+ if ($platform {'ID'} eq 'DAVINCIHD') {
+ print "GPP side distribution file: \$DSPLINK" . $DIRSEP . "gpp" . $DIRSEP. "src" . $DIRSEP. "Rules.mk\n" ;
+ }
+diff --git a/dsplink/gpp/src/DIRS b/dsplink/gpp/src/DIRS
+index e82969c..05bad2b 100644
+--- a/dsplink/gpp/src/DIRS
++++ b/dsplink/gpp/src/DIRS
+@@ -63,6 +63,10 @@ ifeq ("$(TI_DSPLINK_PLATFORM)", "DAVINCIHD")
+ DIRS += \
+ api
+ else # ifeq ("$(TI_DSPLINK_PLATFORM)", "DAVINCIHD")
++ifeq ("$(TI_DSPLINK_PLATFORM)", "DAVINCI")
++DIRS += \
++ api
++else # ifeq ("$(TI_DSPLINK_PLATFORM)", "DAVINCI")
+ ifeq ("$(TI_DSPLINK_PLATFORM)", "DA850")
+ DIRS += \
+ api
+@@ -77,6 +81,7 @@ DIRS += \
+ endif # ifeq ("$(TI_DSPLINK_PLATFORM)", "OMAP3530")
+ endif # ifeq ("$(TI_DSPLINK_PLATFORM)", "OMAPL138")
+ endif # ifeq ("$(TI_DSPLINK_PLATFORM)", "DAVINCIHD")
++endif # ifeq ("$(TI_DSPLINK_PLATFORM)", "DAVINCI")
+ endif # ifeq ("$(TI_DSPLINK_PLATFORM)", "DA850")
+ else # ifeq ("$(TI_DSPLINK_GPPOS)", "Linux")
+ DIRS += \
+diff --git a/dsplink/gpp/src/Makefile b/dsplink/gpp/src/Makefile
+index 9e6bbb1..49c3b97 100644
+--- a/dsplink/gpp/src/Makefile
++++ b/dsplink/gpp/src/Makefile
+@@ -78,7 +78,13 @@ ifeq ("$(TI_DSPLINK_GPPOS)", "Linux")
+ include $(DSPLINK)$(DIRSEP)gpp$(DIRSEP)src$(DIRSEP)Rules.mk
+ include $(DSPLINK)$(DIRSEP)gpp$(DIRSEP)src$(DIRSEP)Makefile_kbuild
+ else # else ("$(TI_DSPLINK_PLATFORM)", "DAVINCIHD")
+- include Makefile_bld
++ ifeq ("$(TI_DSPLINK_PLATFORM)", "DAVINCI")
++ include $(DSPLINK)$(DIRSEP)gpp$(DIRSEP)src$(DIRSEP)Makefile_bld
++ include $(DSPLINK)$(DIRSEP)gpp$(DIRSEP)src$(DIRSEP)Rules.mk
++ include $(DSPLINK)$(DIRSEP)gpp$(DIRSEP)src$(DIRSEP)Makefile_kbuild
++ else # else ("$(TI_DSPLINK_PLATFORM)", "DAVINCI")
++ include Makefile_bld
++ endif # ifeq ("$(TI_DSPLINK_PLATFORM)", "DAVINCI")
+ endif # ifeq ("$(TI_DSPLINK_PLATFORM)", "OMAP3530")
+ endif # ifeq ("$(TI_DSPLINK_PLATFORM)", "DA850")
+ endif # ifeq ("$(TI_DSPLINK_PLATFORM)", "OMAPL138")
+diff --git a/dsplink/gpp/src/Rules.mk b/dsplink/gpp/src/Rules.mk
+index 658ee8a..5a6f52a 100644
+--- a/dsplink/gpp/src/Rules.mk
++++ b/dsplink/gpp/src/Rules.mk
+@@ -63,6 +63,11 @@ KERNEL_DIR := ${HOME}/da850/DaVinci-PSP-SDK-03.20.00.01/src/kernel/linux-03.2
+ TOOL_PATH := ${HOME}/git/arm-2008q3/bin
+ endif #ifeq ("$(TI_DSPLINK_PLATFORM)", "DA850")
+
++ifeq ("$(TI_DSPLINK_PLATFORM)", "DAVINCI")
++KERNEL_DIR := ${HOME}/linux-davinci
++TOOL_PATH := ${HOME}/toolchains/git/arm-2009q1-203/bin
++endif #ifeq ("$(TI_DSPLINK_PLATFORM)", "DAVINCI")
++
+ ifeq ("$(TI_DSPLINK_PLATFORM)", "DAVINCIHD")
+ KERNEL_DIR := ${HOME}/linux-davinci
+ TOOL_PATH := ${HOME}/toolchains/git/arm-2009q1-203/bin
+diff --git a/dsplink/make/Linux/davinci_2.6.mk b/dsplink/make/Linux/davinci_2.6.mk
+new file mode 100644
+index 0000000..834fd74
+--- /dev/null
++++ b/dsplink/make/Linux/davinci_2.6.mk
+@@ -0,0 +1,211 @@
++# ============================================================================
++# @file davinci_2.6.mk
++#
++# @path $(DSPLINK)/make/Linux/
++#
++# @desc This makefile defines OS specific macros used by MAKE system for
++# the Montavista Pro 5.0 Linux distribution.
++#
++# @ver 1.64
++# ============================================================================
++# Copyright (C) 2002-2009, Texas Instruments Incorporated -
++# http://www.ti.com/
++#
++# Redistribution and use in source and binary forms, with or without
++# modification, are permitted provided that the following conditions
++# are met:
++#
++# * Redistributions of source code must retain the above copyright
++# notice, this list of conditions and the following disclaimer.
++#
++# * Redistributions in binary form must reproduce the above copyright
++# notice, this list of conditions and the following disclaimer in the
++# documentation and/or other materials provided with the distribution.
++#
++# * Neither the name of Texas Instruments Incorporated nor the names of
++# its contributors may be used to endorse or promote products derived
++# from this software without specific prior written permission.
++#
++# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
++# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
++# THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
++# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
++# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
++# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
++# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
++# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
++# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
++# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
++# EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
++# ============================================================================
++
++
++ifndef DAVINCI_LINUX2_6_MK
++
++define DAVINCI_LINUX2_6_MK
++endef
++
++
++# ============================================================================
++# Let the make system know that a specific distribution for the GPP OS
++# is being used.
++# ============================================================================
++USE_DISTRIBUTION := 1
++
++
++# ============================================================================
++# Set the values of necessary variables to be used for the OS.
++# ============================================================================
++
++# ----------------------------------------------------------------------------
++# Base directory for the GPP OS
++# ----------------------------------------------------------------------------
++BASE_BUILDOS := ${HOME}/linux-davinci
++
++# ----------------------------------------------------------------------------
++# Base for toolchain
++# ----------------------------------------------------------------------------
++BASE_TOOLCHAIN := ${HOME}/toolchains/git/arm-2009q1-203
++
++# ----------------------------------------------------------------------------
++# Base for code generation tools - compiler, linker, archiver etc.
++# ----------------------------------------------------------------------------
++BASE_CGTOOLS := $(BASE_TOOLCHAIN)/bin
++
++# ----------------------------------------------------------------------------
++# Base directory for include files provided by GPP OS
++# ----------------------------------------------------------------------------
++BASE_OSINC := $(BASE_BUILDOS)/include
++
++OSINC_GENERIC := $(BASE_OSINC)
++OSINC_PLATFORM := $(BASE_TOOLCHAIN)/lib/gcc/arm-none-linux-gnueabi/4.2.3/include
++OSINC_TARGET := $(BASE_TOOLCHAIN)/arm-none-linux-gnueabi/libc/usr/include
++
++ifneq ("$(VARIANT)", "")
++OSINC_VARIANT := $(BASE_OSINC)
++endif
++
++
++# ----------------------------------------------------------------------------
++# Base directory for libraries provided by GPP OS
++# ----------------------------------------------------------------------------
++BASE_OSLIB := $(BASE_TOOLCHAIN)/lib
++
++OSLIB_GENERIC := $(BASE_OSLIB)
++OSLIB_PLATFORM := $(BASE_OSLIB)
++
++
++ifneq ("$(VARIANT)", "")
++OSLIB_VARIANT := $(BASE_OSLIB)
++endif
++
++
++# ============================================================================
++# COMPILER
++# ============================================================================
++
++# ----------------------------------------------------------------------------
++# Name of the compiler
++# ----------------------------------------------------------------------------
++COMPILER := $(BASE_CGTOOLS)/arm-none-linux-gnueabi-gcc
++LD := $(BASE_CGTOOLS)/arm-none-linux-gnueabi-ld
++
++CROSS_COMPILE := arm-none-linux-gnueabi-
++export CROSS_COMPILE
++
++# ----------------------------------------------------------------------------
++# Command line switches used by the compiler
++#
++# CC_SW_DEF Command line defines
++# CC_SW_INC Search path for header files
++# CC_SW_OBJ Create object file
++# CC_SW_DEB Include debug information
++# ----------------------------------------------------------------------------
++CC_SW_DEF := -D
++CC_SW_INC := -I
++CC_SW_OBJ := -o
++CC_SW_DEB := -g
++
++# ----------------------------------------------------------------------------
++# Standard flags for the compiler
++# ----------------------------------------------------------------------------
++STD_USER_FLAGS := -Wall -c
++
++# ----------------------------------------------------------------------------
++# Flags for the compiler when building a library
++# ----------------------------------------------------------------------------
++EXE_CC_FLAGS :=
++
++# ----------------------------------------------------------------------------
++# Standard flags for the compiler when building an executable
++# ----------------------------------------------------------------------------
++DRV_CC_FLAGS := -nostdinc
++
++# ----------------------------------------------------------------------------
++# Flags for the compiler when building a driver
++# ----------------------------------------------------------------------------
++LIB_CC_FLAGS :=
++
++# ----------------------------------------------------------------------------
++# Standard definitions for the compiler
++# ----------------------------------------------------------------------------
++STD_CC_DEFNS := -D_REENTRANT
++
++# ============================================================================
++# ARCHIVER2 - This denotes the archiver.
++# ============================================================================
++ARCHIVER := $(BASE_CGTOOLS)/arm-none-linux-gnueabi-ar
++
++# ----------------------------------------------------------------------------
++# Standard flags for the archiver
++# ----------------------------------------------------------------------------
++STD_AR_FLAGS := -rs
++
++
++# ============================================================================
++# LINKER used for Library & Driver build
++# ============================================================================
++LINKER := $(BASE_CGTOOLS)/arm-none-linux-gnueabi-gcc
++
++# ----------------------------------------------------------------------------
++# Command line switches used by the linker
++#
++# LD_SW_LIB Search path for libraries
++# LD_SW_OUT Output filename
++# LD_SW_RELOC Generate relocateable output
++# ----------------------------------------------------------------------------
++LD_SW_LIB := -L
++LD_SW_OUT := -o
++LD_SW_RELOC := -r
++
++# ----------------------------------------------------------------------------
++# Flags for the LD when building an executable
++# ----------------------------------------------------------------------------
++STD_LD_FLAGS :=
++
++# ----------------------------------------------------------------------------
++# Standard flags for the LD
++# ----------------------------------------------------------------------------
++EXE_LD_FLAGS := -lpthread -lc
++
++# ----------------------------------------------------------------------------
++# Standard flags for the archiver
++# ----------------------------------------------------------------------------
++DRV_LD_FLAGS :=
++
++
++# ============================================================================
++# Post processing utilities for Linux 2.6
++# ============================================================================
++ifneq ($(CONFIG_MODVERSIONS),)
++CMD_MODPOST_FLAGS := -m -i
++else
++CMD_MODPOST_FLAGS := -i
++endif
++
++CMD_MODPOST := $(BASE_BUILDOS)/scripts/mod/modpost \
++ $(CMD_MODPOST_FLAGS) $(BASE_BUILDOS)/Module.symvers \
++ $(BASE_BUILDOS)/vmlinux
++
++
++endif # ifndef DAVINCI_LINUX2_6_MK
+--
+1.6.0.6
+
diff --git a/recipes/ti/ti-dsplink_1.64.bb b/recipes/ti/ti-dsplink_1.64.bb
index d457e50120..9cc4e4133e 100644
--- a/recipes/ti/ti-dsplink_1.64.bb
+++ b/recipes/ti/ti-dsplink_1.64.bb
@@ -6,7 +6,8 @@ PV = "1_64"
SRC_URI[dsplinktarball.md5sum] = "90223da7c88af57d12936adeba1a0661"
SRC_URI[dsplinktarball.sha256sum] = "32b6fbae2b61f5f71ab3eae9d2f5ad6b75d682ad8bde9963152830be1f8d286b"
-SRC_URI_append = "file://dsplink_1_64_kernel_2_6_33_autoconf.patch;patch=1 "
+SRC_URI_append = "file://dsplink_1_64_kernel_2_6_33_autoconf.patch;patch=1 \
+ file://dsplink_1_64_add_dm6446_build_support.patch;patch=1 "
# Cheat a bit with includes
# SZ_1k = 0x00000400