Sie sind auf Seite 1von 14

RT-RK CONFIDENTIAL NDA RESTRICTIONS

ALPHA AMV Addon ReadMe


August 25, 2016
Version: 1.1

ReadMe

Version 1.1

August 25, 2016

CONFIDENTIAL
Copyright 20162016 RT-RK. All rights reserved. No part of this publication may be reproduced, transcribed,
translated or reverse engineered into a computer, software program or other manual without the express written
permission of RT-RK.
RT-RK Institute for Computer Based Systems LLC
Narodnog fronta 23a, 21000 Novi Sad, Serbia

RT-RK

Preliminary Information

Page 1 of 14

RT-RK CONFIDENTIAL NDA RESTRICTIONS

ALPHA AMV Addon ReadMe


August 25, 2016
Version: 1.1

Preface
This document describes setup instructions for Vision SDK
framework, and additional changes for AMV Board hardware
initialization.

RT-RK

Preliminary Information

Page 2 of 14

RT-RK CONFIDENTIAL NDA RESTRICTIONS

ALPHA AMV Addon ReadMe


August 25, 2016
Version: 1.1

1.
RT-RK

General informations
Preliminary Information

Page 3 of 14

RT-RK CONFIDENTIAL NDA RESTRICTIONS

ALPHA AMV Addon ReadMe

Archive

contains following:
bsp_01_06_00_11
tda2xx
VisionSDK_2.10.00.00 (optional)
BSP_AMV_Addon_ReleaseNotes
NDK_AMV_Addon_ReleaseNotes
VSDK_AMV_Addon_ReleaseNotes
VSDK_AMV_Addon_UserGuide

August 25, 2016


Version: 1.1

Before applying our Add-on you need to have CCS (Code Composer Studio)
installed, as well as VisionSDK.
CCS is needed to load, run and debug the software. CCS can be downloaded from
the below provided link. CCS version 6.0.1.00040 or higher should be installed.
http://processors.wiki.ti.com/index.php/Download_CCS (it is preferable to install it in
C:\ti)
VisionSDK should be installed on the C partition. (C:\)

2.

Vision SDK Setup Instructions

Installer for Vision SDK can be found in VisionSDK_2.10.00.00 folder. If you


already have VisionSDK installed you should proceed to step 3.
Run VISION_SDK_02_10_00_00_setupwin32.exe from VisionSDK_2.10.00.00
folder and follow wizard steps to install Vision SDK 2.10.00.00. The settings that
are provided in this chapter can be found separately for starterware, bsp and
VisionSDK level in their docs folders (placed in the build related chapters of the
UserGuides provided by TI.)
After
installation,
go
to
https://launchpad.net/gcc-arm-embedded/
+milestone/4.9-2015-q3-update
and
download
gcc-arm-none-eabi-4_92015q3-20150921-win32.zip.
Extract
archive
to
location
C:\VISION_SDK_02_10_00_00\ti_components
\cg_tools\windows
(after
extraction, folder will have name gcc-arm-none-eabi-4_9-2015q3-20150921,
rename
it
to
match
name
gcc-arm-none-eabi-4_9-2015q3).
Add
C:\VISION_SDK_02_10_00_00\ti_components\os_tools\windows\xdctools_3_32_
00_06_core path to PATH environment variable.

When previous steps are completed, following files have to be edited in


order to be able to build Vision SDK.
C:\VISION_SDK_02_10_00_00\ti_components\drivers\starterware_01_06_00_16\
build\makerules\env.mk (lines 32 to 82)
# Set path separator, etc based on the OS
ifeq ($(OS),Windows_NT)
PATH_SEPARATOR = ;
UTILSPATH = $(UTILS_INSTALL_DIR)/
else
# else, assume it is linux
PATH_SEPARATOR = :
endif
#

RT-RK

Preliminary Information

Page 4 of 14

RT-RK CONFIDENTIAL NDA RESTRICTIONS

ALPHA AMV Addon ReadMe


August 25, 2016
Version: 1.1

# Tools paths
#

# Cortex-M3
ifeq ($(CODEGEN_PATH_M3),)
CODEGEN_PATH_M3 = $
(EXTERNAL_SW_ROOT)/VISION_SDK_02_10_00_00/ti_components/cg_tools/windows/ti-cgtarm_5.2.5
endif
# Cortex-M4
ifeq ($(CODEGEN_PATH_M4),)
CODEGEN_PATH_M4 = $
(EXTERNAL_SW_ROOT)/VISION_SDK_02_10_00_00/ti_components/cg_tools/windows/ti-cgtarm_5.2.5
endif
# Cortex-A
ifeq ($(CODEGEN_PATH_A8),)
CODEGEN_PATH_A8 = $
(EXTERNAL_SW_ROOT)/VISION_SDK_02_10_00_00/ti_components/cg_tools/windows/ti-cgtarm_5.2.5
endif
# For Linaro GCC Cortex-A8
ifeq ($(CODEGEN_PATH_GCC_A8),)
CODEGEN_PATH_GCC_A8 = $
(EXTERNAL_SW_ROOT)/VISION_SDK_02_10_00_00/ti_components/cg_tools/windows/gccarm-none-eabi-4_9-2015q3
endif
# DSP
ifeq ($(CODEGEN_PATH_DSP),)
CODEGEN_PATH_DSP = $
(EXTERNAL_SW_ROOT)/VISION_SDK_02_10_00_00/ti_components/cg_tools/windows/C6000_7
.4.2
endif
# EVE
ifeq ($(CODEGEN_PATH_EVE),)
CODEGEN_PATH_EVE = $
(EXTERNAL_SW_ROOT)/VISION_SDK_02_10_00_00/ti_components/cg_tools/windows/arp32_1
.0.7
endif
#Cortex A15
# For Code Sourcery
#CODEGEN_PATH_A15 = $
(EXTERNAL_SW_ROOT)/CodeSourcery/Sourcery_CodeBench_Lite_for_ARM_EABI
# For RVCT
#CODEGEN_PATH_A15 = $(EXTERNAL_SW_ROOT)/ARM_Compiler_5
#For Linaro
ifeq ($(CODEGEN_PATH_A15),)
CODEGEN_PATH_A15 = $
(EXTERNAL_SW_ROOT)/VISION_SDK_02_10_00_00/ti_components/cg_tools/windows/gccarm-none-eabi-4_7-2015q3
endif

Pay attention to EXTERNAL_SW_ROOT variable value. It is preferable to


install VisionSDK on partition C: (in which case you set the variable
EXTERNAL_SW_ROOT to C: ) This variable can be set at line 21 of file
C:\VISION_SDK_02_10_00_00\ti_components
\drivers\starterware_01_06_00_16\build\makerules\env.mk.

RT-RK

Preliminary Information

Page 5 of 14

RT-RK CONFIDENTIAL NDA RESTRICTIONS

ALPHA AMV Addon ReadMe

August 25, 2016


Version: 1.1
C:\VISION_SDK_02_10_00_00\ti_components\drivers\bsp_01_06_0_11\Rules.ma
ke (lines 13 to 24)
#Paths for windows machine
CODEGEN_PATH_M4 :=
C:/VISION_SDK_02_10_00_00/ti_components/cg_tools/windows/ti-cgt-arm_5.2.5
CODEGEN_PATH_M3 :=
C:/VISION_SDK_02_10_00_00/ti_components/cg_tools/windows/ti-cgt-arm_5.2.5
CODEGEN_PATH_A15 :=
C:/VISION_SDK_02_10_00_00/ti_components/cg_tools/windows/gcc-arm-none-eabi-4_92015q3
CODEGEN_PATH_DSP :=
C:/VISION_SDK_02_10_00_00/ti_components/cg_tools/windows/C6000_7.4.2
bsp_PATH := C:/VISION_SDK_02_10_00_00/ti_components/drivers/$(bsp_RELPATH)
bios_PATH := C:/VISION_SDK_02_10_00_00/ti_components/os_tools/bios_6_46_00_23
xdc_PATH :=
C:/VISION_SDK_02_10_00_00/ti_components/os_tools/windows/xdctools_3_32_00_06_cor
e
starterware_PATH := C:/VISION_SDK_02_10_00_00/ti_components/drivers/$
(starterware_RELPATH)
edma3_lld_PATH :=
C:/VISION_SDK_02_10_00_00/ti_components/drivers/edma3_lld_02_12_00_20

Now you should be able to start build. Start cmd shell and navigate to
location C:\VISION_SDK_02_10_00_00\vision_sdk. First you need to build lower
levels of Vision SDK framework, i.e. starterware, bsp and edma3 files. Type
command gmake s depend to start building lower levels. After lower level
build successfully passed you need to build Vision SDK example usecases. Type
gmake s command to start building examples. After build successfully
passed you have Vision SDK ready for use.

RT-RK

Preliminary Information

Page 6 of 14

RT-RK CONFIDENTIAL NDA RESTRICTIONS

ALPHA AMV Addon ReadMe

3. BSP AMV Add-on setup


instuctions

August 25, 2016


Version: 1.1

After successful installation of VisionSDK, to be able to run usecases on


AMV Board bsp drivers should be added. Files which should be copied can be
found in folder bsp_01_06_00_11.
Copy
files
from
bsp_01_06_00_11/include/devices
to

C:/VISION_SDK_02_10
_00_00/ti_components/drivers/bsp_01_06_00_11/include/devices
Copy folders from bsp_01_06_00_11/src/devices to C:/VISION_SDK_02_10
_00_00/ti_components/drivers/ bsp_01_06_00_11/src/devices
Open
Makefile
on
location
C:/
VISION_SDK_02_10_00_00/ti_components
/drivers/bsp_01_06_00_11/src/devices

o To variable SRCDIR add following paths:


amv_ov490/src
amv_ub964/src
amv_hdmi/src
amv_i2c_switch/src
amv_cam_PoC/src
amv_ub914/src
amv_ub913/src
amv_device_config/src

o To
variable
INCLUDE_EXTERNAL_INTERFACES
starterware_pm_hal (without quotes)
o Add following lines to Makefile:

add

include $(MODULE_SRC_BASE_PATH)/amv_ov490/SRC_FILES_amv_ov490.MK
include
$(MODULE_SRC_BASE_PATH)/amv_i2c_switch/
SRC_FILES_amv_i2c_switch.MK
include $(MODULE_SRC_BASE_PATH)/amv_ub964/SRC_FILES_amv_ub964.MK
include $(MODULE_SRC_BASE_PATH)/amv_ub914/SRC_FILES_amv_ub914.MK
include $(MODULE_SRC_BASE_PATH)/amv_cam_PoC/SRC_FILES_amv_cam_PoC.MK
include $(MODULE_SRC_BASE_PATH)/amv_hdmi/SRC_FILES_amv_hdmi.MK
include $(MODULE_SRC_BASE_PATH)/amv_ub913/SRC_FILES_amv_ub913.MK

o For aforementioned steps you can consult Makefile that is given as an


example

[Limitation ID0 in BSP_AMV_Addon_ReleaseNotes fix] The following


modification
should
be
made
in
bsp_boardTda2xx.c
at
VISION_SDK_xx_xx_xx_xx\
ti_components\drivers\bsp_xx_xx_xx_xx\src\boards\src as to ensure that
the
function
Bsp_boardGetIdTda2xx(line
422)
always
returns
BSP_BOARD_UNKNOWN value. Inserting the following snippet at line 577
should do the trick:
o boardId = BSP_BOARD_UNKNOWN;

RT-RK

Preliminary Information

Page 7 of 14

RT-RK CONFIDENTIAL NDA RESTRICTIONS

ALPHA AMV Addon ReadMe

August 25, 2016


Version: 1.1

[Limitation ID1 in in BSP_AMV_Addon_ReleaseNotes fix] The following


modification should be made in file bspdrv_ov1063xI2c.c, found at
VISION_SDK_xx_xx_xx_xx\
ti_components\drivers\bsp_xx_xx_xx_xx\src\devices\ov1063x\src
you
need to ensure that proper configuration is set for OV10635 in function
Bsp_ov1063xSensorConfig(line 450).
Variable
sensorConfiguration
must
be
set
to
gBsp_Ov1063xLvdsSensorsDefault, and nArraySize must be exact length
of that array.
Inserting this snippet at line 503 should do the trick:
o
sensorConfiguration =
(Bsp_VidSensorConfigRegs *)
gBsp_Ov1063xLvdsSensorsDefault;
nArraySize = (sizeof (gBsp_Ov1063xLvdsSensorsDefault) /
sizeof (gBsp_Ov1063xLvdsSensorsDefault[0]));

(Re)build BSP components (gmake s depend)

After these changes, add-on is integrated in build system and BSP components
are successfully rebuilt.

4. NDK & NSP AMV Add-on


instructions
Certain modifications of the NSP and NDK libraries need to be done in order
to support ALPHA AMV Boards hardware.

4.1

PHY address

In order to communicate with the PHY and configure it, the software needs
to know which address it corresponds to. ALPHA AMV board has this address
set to 7 for both of PHYs that are present. End-point TDA2XXs(SCV and FUS)
have the same configuration regarding PHY and middle TDA2XX(FFN) must be
configured so it does not expect any PHY connected.
For
that
purpose
you
must
modify
function
GMACSW_Config
#ifdef SCV
*GMACSW_getConfig(void)
is located in file which resides at following path
Vps_printf("SCV Mac that
configuration\r\n");
C:\VISION_SDK_02_10_00_00\vision_sdk\src\utils_common\src\ndk\
pGMACSWConfig->macInitCfg[0].phyMask = 0x1<<7;
pGMACSWConfig->macInitCfg[1].mdioModeFlags
ndk_nsp_hooks.c.
You must ensure that correct =forementioned configuration is done
MDIO_MODEFLG_NOPHY;
for all TDA2XXs.
If you are using clean VisionSDK this can be done if you insert after
#endif

line 494 (just after second #endif directive, before the closing curly brace)
#ifdef FFN
following code
snippet: Mac configuration\r\n");
Vps_printf("FFN
pGMACSWConfig->macInitCfg[i].mdioModeFlags =
MDIO_MODEFLG_NOPHY;
#endif

RT-RK

Preliminary Information

#ifdef FUS
Vps_printf("FUS Mac configuration\r\n");
pGMACSWConfig->macInitCfg[0].phyMask = 0x1<<7;
pGMACSWConfig->macInitCfg[1].mdioModeFlags =

Page 8 of 14

RT-RK CONFIDENTIAL NDA RESTRICTIONS

ALPHA AMV Addon ReadMe


August 25, 2016
Version: 1.1

After inserting this snippet you should define one of the following
preprocessor identifiers(SCV, FFN or FUS) in that same file so conditional
compiling can take place.

4.2 RGMII half cycle delays


RGMII half cycle delays should be disabled on end-point TDA2XXs and on
middle TDA2XX this should be enabled. For this purpose you need to take a
look at register CTRL_CORE_SMA_SW_1(address 0x4A00 2534). This can be
achieved
by
modifying
C:\VISION_SDK_02_10_00_00\vision_sdk\src\utils_common\src\ndk\
ndk_nsp_hooks.c. Ensure that function void NDK_NSP_Init( void ) changes 25 th
and 26th bit of forementioned register to adequate value.
On a clean VisionSDK this can be done by adding following code snippet:

, after line 194.


uint32_t regValue;
uint32_t mask = 0xF9FFFFFF;
regValue = (*(volatile Uint32 *)0x4A002534);
regValue &= mask;
#ifndef FFN
regValue |= (0x1 << 25U);
regValue |= (0x1 << 26U);
#endif
(*(volatile Uint32 *)0x4A002534) = regValue;

Make sure one of the preprocessor identifiers(SCV, FFN or FUS) is defined in


this same file.
4.3

PHY (de)reset

In oder to enable the reset to be performed correctly the following changes need to
be done. This should be ignored if building for middle one TDA2XX, because he is not
connected to any PHY.
In
file
C:\VISION_SDK_02_10_00_00\vision_sdk\src\utils_common\src\ndk
\ndk_nsp_hooks.c, after this last mentioned modification(RGMII half cycle

delays), you need to add the following lines:


RT-RK

Preliminary Information

Page 9 of 14

RT-RK CONFIDENTIAL NDA RESTRICTIONS

ALPHA AMV Addon ReadMe


August 25, 2016
Version: 1.1

#ifndef FFN
(*(volatile
(*(volatile
(*(volatile
(*(volatile
#endif

Uint32
Uint32
Uint32
Uint32

*)
*)
*)
*)

(0x4A00377C)) &= 0xFFFFFFFE;


(0x4A00377C)) |= 0x0000000E;
(0x4805D134)) &= 0xDFFFFFFF;
(0x4805D13C)) |= 0x20000000;

Again, make sure one of the preprocessor identifiers(SCV, FFN or FUS) is defined in this
same file.

4.4

PHY RGMII interface

In order to enable the RXC and TXC lines delay, the following modification
needs to be done. Function that can be used for this is static void
LOCAL_MDIO_FoundState(MDIO_State *pMdio, PHY_Device *pPhy) which is
defined at C:\VISION_SDK_02_10_00_00\ti_components\networking\
nsp_gmacsw_4_14_00_00\packages\ti\nsp\drv\gmacsw\mdio.c . If using
clean VisionSDK, this can be accomplished with following steps:

modify line 1083 so this


, becomes this
static uint32_t auto_neg1 = 0xFFFFFFFFUU, auto_neg2 =
static uint32_t auto_neg1 = 0x0U, auto_neg2 =

modify block starting at line 1110 so this


, becomes this
if ((auto_neg1 & ((uint32_t)1U << phyNum))
== 0)
{
LOCAL_MDIO_ResetPHY(pMdio, pPhy,
if ((auto_neg1 & ((uint32_t)1U << phyNum)) == 0)
{
MDIO_userAccessWrite(pMdio, pPhy, 20, 0x00F3);
LOCAL_MDIO_ResetPHY(pMdio, pPhy, phyNum);
}

4.5 Applying daisy-chain feature


Daisy chain is used so all TDA2XXs can communicate between themselves
and all of them are accessible from both RJ45s. Files that should be modified
are:

C:\VISION_SDK_02_10_00_00\ti_components\networking\nsp_g
macsw_4_14_00_00\packages\ti\nsp\drv\gmacsw\ndk2nsp.c

C:\VISION_SDK_02_10_00_00\ti_components\networking\nsp_g
macsw_4_14_00_00\packages\ti\nsp\drv\gmacsw\nimu_ndk.c

C:\VISION_SDK_02_10_00_00\ti_components\drivers\starterwar
e_01_06_00_16\platform\platform_tda2xx_pad_config.c
Page 10 of
RT-RK
Preliminary Information
14

RT-RK CONFIDENTIAL NDA RESTRICTIONS

ALPHA AMV Addon ReadMe

August 25, 2016


Version: 1.1

C:\VISION_SDK_02_10_00_00\ti_components\drivers\bsp_01_06_
00_11\src\platforms\src\bsp_platformTda2xx.c

First two files are used for daisy-chain implementation, third one is used for
RGMII configuration and the last one is modified so muxing is prevented.
If using clean VisionSDK following steps can be done:
1) In file ndk2nsp.c do the following:
a) After line 153 add following line
volatile uint32_t loopCntr

b) In the beginning of the function static void LOCAL_pollingCallback(void


*hCallbackArg), change following code snipet so this
becomes this,
static uint32_t loadCount = 0;
NDK2NSP_Handle hNDK2NSP =
(NDK2NSP_Handle) hCallbackArg;
Load_Stat stat;

static uint32_t loadCount = 0;


NDK2NSP_Handle hNDK2NSP =
(NDK2NSP_Handle) hCallbackArg;
Load_Stat stat;
ALE_TableDumpPrintFxn cmd =
printf;

c) In that same function, at its very end add this code snippet(after line
846):
while (0 == loopCntr)
{
GMACSW_ioctl(hNDK2NSP->hGMACSW,
GMACSW_IOCTL_ALE_DUMP_TABLE,
(void *)&cmd,
sizeof(ALE_TableDumpPrintFxn));
}

2) In file nimu_ndk.c do the following:


a) Replace at line 241 following:
, with this
hNDK2NSP->Filter =

hNDK2NSP->Filter =

3) In file platform_tda2xx_pad_config.c do the following:


a)

Function void PlatformRGMIISetPinMux(void) should look like this:

RT-RK

Preliminary Information

Page 11 of
14

RT-RK CONFIDENTIAL NDA RESTRICTIONS

ALPHA AMV Addon ReadMe


August 25, 2016
Version: 1.1

void PlatformRGMIISetPinMux(void)
{
PlatformRGMII0SetPinMux();
PlatformRGMII1SetPinMux();
}

4) In file bsp_platformTda2xx.c do the following:


a) At line 459, following code
, should be
Bsp_platformSetPinmuxRegs((UInt32) 14,
(UInt32) CTRL_CORE_PAD_VIN2A_D12,
(BSP_PLATFORM_IOPAD_CFG_PULLUDENABLE_DISABLE
|
BSP_PLATFORM_IOPAD_CFG_PULLTYPESELECT_DOWN |
BSP_PLATFORM_IOPAD_CFG_INPUTENABLE_OUT));
Bsp_platformSetPinmuxRegs((UInt32) 14,
(UInt32) CTRL_CORE_PAD_VIN2A_D13,
(BSP_PLATFORM_IOPAD_CFG_PULLUDENABLE_DISABLE
|
BSP_PLATFORM_IOPAD_CFG_PULLTYPESELECT_DOWN |
BSP_PLATFORM_IOPAD_CFG_INPUTENABLE_OUT));
Bsp_platformSetPinmuxRegs((UInt32) 14,
(UInt32) CTRL_CORE_PAD_VIN2A_D14,
(BSP_PLATFORM_IOPAD_CFG_PULLUDENABLE_DISABLE
|
BSP_PLATFORM_IOPAD_CFG_PULLTYPESELECT_DOWN |
BSP_PLATFORM_IOPAD_CFG_INPUTENABLE_OUT));
Bsp_platformSetPinmuxRegs((UInt32) 14,
(UInt32) CTRL_CORE_PAD_VIN2A_D15,
(BSP_PLATFORM_IOPAD_CFG_PULLUDENABLE_DISABLE
|
BSP_PLATFORM_IOPAD_CFG_PULLTYPESELECT_DOWN |
BSP_PLATFORM_IOPAD_CFG_INPUTENABLE_OUT));

commented or left out.

4.6

Building modified libraries

Modify the file:


C:\VISION_SDK_02_10_00_00\ti_components\networking\nsp_gmacsw_4_14_00_
00\packages\ti\nsp\drv\config.bld
by adding paths to compilers and modules (lines 52-57):
if (ndkRoot == null) ndkRoot =
"C:/VISION_SDK_02_10_00_00/ti_components/networking/ndk_2_24_02_31";
if (edmaRoot == null) edmaRoot =
"C:/VISION_SDK_02_10_00_00/ti_components/drivers/edma3_lld_02_12_00_20";
if (biosRoot == null) biosRoot =
"C:/VISION_SDK_02_10_00_00/ti_components/os_tools/bios_6_46_00_23";
if (tiArmRoot == null) tiArmRoot =
"C:/VISION_SDK_02_10_00_00/ti_components/cg_tools/windows/ti-cgtarm_5.2.5";

RT-RK

Preliminary Information

Page 12 of
14

RT-RK CONFIDENTIAL NDA RESTRICTIONS

ALPHA AMV Addon ReadMe


August 25, 2016
Version: 1.1

if (gccRoot == null) gccRoot =


"C:/VISION_SDK_02_10_00_00/ti_components/cg_tools/windows/gcc-arm-noneeabi-4_9-2015q3";
if (tiDspRoot == null) tiDspRoot =
"C:/VISION_SDK_02_10_00_00/ti_components/cg_tools/windows/C6000_7.4.2";

In order for the above mentioned changes to make impact, you should build
these libraries using the build command:
xdc
--xdcpath="C:/VISION_SDK_02_10_00_00/ti_components/os_tools/bios_6_46_00
_23 /packages" -P packages/ti/nsp/drv/
from:
C:\VISION_SDK_02_10_00_00\ti_components\networking\nsp_gmacsw_4_14_00_
00
After the completion of the previous command, run the following command:
gmake s depend
from here C:\VISION_SDK_02_10_00_00\vision_sdk\

5. Vision SDK Add-on instructions


To be able to capture stream from cameras on AMV Board hardware
components needs to be enabled, powerd on and prepared to use. In order to
to use cameras properly files in folder tda2xx should be copied to locations
inside VISION_SDK_02_XX_XX_XX_XX.
Copy
files
from
tda2xx/include
to

RT-RK

C:/VISION_SDK_02_10_00_00/vision_s dk/examples/tda2xx/include
Copy
files
from
tda2xx/src/usecases/common
to
C:/VISION_SDK_02_10
_00_00/vision_sdk/examples/tda2xx/src/usecases/common
Copy folders multi_cam_view_alpha_amv and vip_single_cam_ffn_amv
from
tda2xx/src/usecases
to
C:/VISION_SDK_02_10_00_00/vision_sdk/
examples/tda2xx/src/usecases
To variable SRCS_$(IPU_PRIMARY_CORE) in SRC_FILES.MK in C:/
VISION_SDK_02_10_00_00/vision_sdk/examples/tda2xx/src/usecases/
common add chains_common_amv.c and video_sensor_amv.c

To be able to build usecases for 2, 4 and 6 cameras you need to


include usecases in build system. Add lines include $
Page 13 of
Preliminary Information
14

RT-RK CONFIDENTIAL NDA RESTRICTIONS

ALPHA AMV Addon ReadMe


August 25, 2016
Version: 1.1

(MODULE_SRC_BASE_PATH)/
tda2xx/src/usecases/multi_cam_view_alpha_amv/SRC_FILES.MK and
include
$
(MODULE_SRC_BASE_PATH)/tda2xx/src/usecases/vip_single_
cam_ffn_amv /SRC_FILES.MK in file Makefile on location C:/VISION_
SDK_02_10_00_00/vision_sdk/examples

(include it before line ifeq ($(RADAR_INCLUDE),yes))


In file system_const.h on location C:/VISION_SDK_02_10_00_00/vision
_sdk/include/link_api
change
value
of
macrodirective
SYSTEM_MAX_CH_PER _OUT_QUE to 12U
In file chains.h on location C:/VISION_SDK_02_10_00_00/vision_sdk/
examples/tda2xx/include add following lines:

Void Chains_twoCam_Display(Chains_Ctrl *chainsCfg);


Void Chains_fourCam_Display(Chains_Ctrl *chainsCfg);
Void Chains_sixCam_Display(Chains_Ctrl *chainsCfg);
Void Chains_vipSingleCamFFN_Display(Chains_Ctrl *chainsCfg);
Consult file chains.h in archive (tda2xx/include lines 1059 to 1065)
Replace
chains_main_bios.c
file
on
location
C:/VISION_SDK_02_10_00_00/
vision_sdk/examples/tda2xx/src/common
(tda2xx/src/common).

with

one

from

archive

Now, rebuild usecase components (gmake s).

6.

Running Add-on usecases

After successful rebuild code should be runable on ALPHA AMV Board.


When code is loaded usecase menu will be displayed on console. Find menu
option c: ALPHA AMV Usecases. Press c on keyboard. Now, there should
be additional menu where you can choose options:
1: Two Camera Mosaic Display
2: Four Camera Mosaic Display
3: Six Camera Mosaic Display
4: FFN Single Camera View
First three usecases are for SC chip. The first usecase requires imaging
sensors C5 and C6. The second one requires C1, C2, C3, C4. The third
usecase uses all 6 imaging sensors. The positions of these sensors can be
seen in ALPHA_AMV_Board_UserGuide (page 10).
Fourth usecase is for FFN chip. Video stream will be captured from
imaging sensor defined in file chains_vipSingleCamFFN_Display.c(line
91). In file video_sensor_amv.h are defined values for imaging sensors
(enum FFN_VideoSensor_Id). The positions of these sensors can be seen in
ALPHA_AMV_Board_UserGuide (page 10).

RT-RK

Preliminary Information

Page 14 of
14

Das könnte Ihnen auch gefallen