From: Andy M. <ja...@sm...> - 2011-05-16 16:45:46
|
we use the DSP for FFT/filtering audio data, the pixhawk page is a good place to start as well as working through the TI examples for passing buffers, notifications etc. http://pixhawk.ethz.ch/wiki/tutorials/omap/dsplink http://processors.wiki.ti.com/index.php/Category:DSPLink you will need to bitbake ti-dsplink and ti-dspbios, as a minimum to get you started. Depending on your memory requirements at some point you will need to modify dsplink_linux_1_65_00_03/dsplink/config/all/CFG_OMAP3530_SHMEM.c but the default probably works for the examples Below is the patch I use for our overo water, yours will be different but this may give you a reference point. You also need to modify your uboot args. Check your CFG_OMAP3530_SHMEM.c for the amount you need to remove from your total RAM. sysram=200M mmcargs=setenv bootargs console=${console} mpurate=${mpurate} vram=${vram} mem=${sysram} omapfb.mode=dvi:${dvimode} omapfb.debug=y omapdss.def_disp=${defaultdisplay} root=${mmcroot} rootfstype=${mmcrootfstype} nandargs=setenv bootargs console=${console} mpurate=${mpurate} vram=${vram} mem=${sysram} omapfb.mode=dvi:${dvimode} omapfb.debug=y omapdss.def_disp=${defaultdisplay} root=${nandroot} rootfstype=${nandrootfstype} --- dsplink_linux_1_65_00_03/dsplink/config/all/CFG_OMAP3530_SHMEM.c 2010-07-16 10:03:05.000000000 +0100 +++ dsplink_linux_1_65_00_03/dsplink/config/all/CFG_OMAP3530_SHMEM.c 2010-11-19 11:36:40.000000000 +0000 @@ -6,7 +6,7 @@ * @desc Defines the configuration information for DSP/BIOS LINK for the * OMAP platform. * - * @ver 1.65.00.03 + * @ver 1.64 * ======================================================================== ==== * Copyright (C) 2002-2009, Texas Instruments Incorporated - * http://www.ti.com/ @@ -99,7 +99,7 @@ * ======================================================================== ==== */ #define RSTENTRYID 0u -#define RESETCTRLADDR 0x87E00000u +#define RESETCTRLADDR 0x8C800000u #define RESETCTRLSIZE 0x80u /** ======================================================================== ==== @@ -110,7 +110,8 @@ */ #define CODEENTRYID 1u #define CODEMEMORYADDR (RESETCTRLADDR + RESETCTRLSIZE) -#define CODEMEMORYSIZE 0xFFF80u +//#define CODEMEMORYSIZE 0xFFF80u +#define CODEMEMORYSIZE 0x1fFFF80u /** ======================================================================== ==== * @name SHAREDENTRYID/SHAREDMEMORYADDR/SHAREDMEMORYSIZE @@ -120,7 +121,8 @@ */ #define SHAREDENTRYID0 2u #define SHAREDMEMORYADDR0 (CODEMEMORYADDR + CODEMEMORYSIZE) -#define SHAREDMEMORYSIZE0 0x5000u +//#define SHAREDMEMORYSIZE0 0x5000u +#define SHAREDMEMORYSIZE0 0x400000u /** ======================================================================== ==== * @name SHAREDENTRYID/SHAREDMEMORYADDR/SHAREDMEMORYSIZE @@ -130,7 +132,8 @@ */ #define SHAREDENTRYID1 3u #define SHAREDMEMORYADDR1 (SHAREDMEMORYADDR0 + SHAREDMEMORYSIZE0) -#define SHAREDMEMORYSIZE1 0x2B000u +//#define SHAREDMEMORYSIZE1 0x2B000u +#define SHAREDMEMORYSIZE1 0x400000u /** ======================================================================== ==== * @name POOLMEMORYADDR/POOLMEMORYSIZE @@ -140,7 +143,8 @@ */ #define POOLENTRYID 4u #define POOLMEMORYADDR (SHAREDMEMORYADDR1 + SHAREDMEMORYSIZE1) -#define POOLMEMORYSIZE 0x000D0000u +//#define POOLMEMORYSIZE 0x00D00000u +#define POOLMEMORYSIZE 0x01000000u /** ======================================================================== ==== * @name LINKCFG_memTable_00 @@ -305,7 +309,18 @@ { "SMAPOOL", /* NAME : Name of the pool */ SHAREDENTRYID1, /* MEMENTRY : Memory entry ID (-1 if not needed) */ - (Uint32) POOLMEMORYSIZE, /* POOLSIZE : Size of the pool (-1 if not needed) */ +// (Uint32) 0x70000, /* POOLSIZE : Size of the pool (-1 if not needed) */ + (Uint32) 0x800000, /* POOLSIZE : Size of the pool (-1 if not needed) */ + (Uint32) -1, /* IPSID : ID of the IPS used */ + (Uint32) -1, /* IPSEVENTNO : IPS Event number associated with POOL */ + POOLENTRYID, /* POOLMEMENTRY : Pool memory region section ID */ + 0x0, /* ARGUMENT1 : First Pool-specific argument */ + 0x0 /* ARGUMENT2 : Second Pool-specific argument */ + }, + { + "SMAPOOL", /* NAME : Name of the pool */ + SHAREDENTRYID1, /* MEMENTRY : Memory entry ID (-1 if not needed) */ + (Uint32) 0x800000, /* POOLSIZE : Size of the pool (-1 if not needed) */ (Uint32) -1, /* IPSID : ID of the IPS used */ (Uint32) -1, /* IPSEVENTNO : IPS Event number associated with POOL */ POOLENTRYID, /* POOLMEMENTRY : Pool memory region section ID */ @@ -337,7 +352,8 @@ "ZCPYDATA", /* NAME : Name of the data driver */ 0, /* BASECHANNELID : Base channel ID for the driver */ 16, /* NUMCHANNELS : Number of channels supported */ - 16384, /* MAXBUFSIZE : Maximum size of buffer supported (-1 if no limit) */ +// 16384, /* MAXBUFSIZE : Maximum size of buffer supported (-1 if no limit) */ + -1, /* MAXBUFSIZE : Maximum size of buffer supported (-1 if no limit) */ SHAREDENTRYID1, /* MEMENTRY : Memory entry ID (-1 if not needed) */ 0, /* POOLID : Pool id for allocating buffers */ 1, /* QUEUELENGTH : Queue length for the data driver */ -----Original Message----- From: Philip Balister [mailto:ph...@ba...] Sent: 16 May 2011 16:48 To: General mailing list for gumstix users. Subject: Re: [Gumstix-users] Overo TIDE DSP access On 05/10/2011 01:16 PM, Anthony Nwokafor wrote: > Hi, Just got an Overo Tide and a Tobi board to use in an SDR project. I can't seem to find any directions on how to set up a development envrionment? Specifically I have code that needs to go on the DSP in the OMAP processor. > > Can anyone provide links? For the USRP-E100 (based on the Overo Tide) I built dsplink and the dsplink examples using the recipes in OE. I haven't personally done anything more with the DSP, but there are people using or for SDR. There was a paper presented at SDR10 about using the DSP with GNU Radio. Philip > > Thanks in advance! > > > --- > Anthony Nwokafor > Calit2, University of California, San Diego > 9500 Gilman Drive > La Jolla, CA 92093-0440 > Tel: +1 858 822 5393 > Fax: +1 858 822 4129 > Email: aan...@uc... > http://www.calit2.net > > > > > > ---------------------------------------------------------------------- > -------- Achieve unprecedented app performance and reliability What > every C/C++ and Fortran developer should know. > Learn how Intel has extended the reach of its next-generation tools to > help boost performance applications - inlcuding clusters. > http://p.sf.net/sfu/intel-dev2devmay > _______________________________________________ > gumstix-users mailing list > gum...@li... > https://lists.sourceforge.net/lists/listinfo/gumstix-users > ------------------------------------------------------------------------ ------ Achieve unprecedented app performance and reliability What every C/C++ and Fortran developer should know. Learn how Intel has extended the reach of its next-generation tools to help boost performance applications - inlcuding clusters. http://p.sf.net/sfu/intel-dev2devmay _______________________________________________ gumstix-users mailing list gum...@li... https://lists.sourceforge.net/lists/listinfo/gumstix-users |