PRSDK-4607 Remove local sample critical section files.
authorSinthu Raja M <x0257345@ti.com>
Wed, 12 Sep 2018 08:26:10 +0000 (13:56 +0530)
committerSinthu Raja M <x0257345@ti.com>
Wed, 12 Sep 2018 08:26:10 +0000 (13:56 +0530)
 Remove the local critical session sample files specific to K2G.
 Update cfg file to include EDMA3 sample library

example/k2g/MCBSPDigLpbk/mcbspMasterDigLpbk.cfg
example/k2g/MCBSPDigLpbk/sample_cs.c [deleted file]
example/k2g/MCBSPDigLpbk/sample_init.c [deleted file]
example/k2g/MCBSPDigLpbk/sample_k2g_int_reg.c [deleted file]

index 01113e494b486b84521164af1cad5b110d60dfe9..c639a820f935a1ce68ad871a88b8116d11764a5c 100644 (file)
@@ -49,8 +49,9 @@ ECM.eventGroupHwiNum[2] = 9;
 ECM.eventGroupHwiNum[3] = 10;
 
 /* Load and use the mcbsp, EDMA, PlatformLib etc. packages */
-var Edma = xdc.loadPackage('ti.sdo.edma3.drv');
-
+var Edma                       = xdc.loadPackage ("ti.sdo.edma3.drv.sample");
+var drv                        = xdc.loadPackage ("ti.sdo.edma3.drv");
+var rm                 = xdc.loadPackage ("ti.sdo.edma3.rm");
 
 var devType = "k2g"
 var mcbsp = xdc.useModule('ti.drv.mcbsp.Settings');
diff --git a/example/k2g/MCBSPDigLpbk/sample_cs.c b/example/k2g/MCBSPDigLpbk/sample_cs.c
deleted file mode 100644 (file)
index 92c20ab..0000000
+++ /dev/null
@@ -1,420 +0,0 @@
-/*
- * sample_cs.c
- *
- * Sample functions showing the implementation of critical section entry/exit
- * routines and various semaphore related routines (all BIOS6 depenedent).
- * These implementations MUST be provided by the user / application, using the
- * EDMA3 driver, for its correct functioning.
- *
- * Copyright (C) 2009-2012 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.
- *
-*/
-
-#include <ti/sysbios/family/c64p/EventCombiner.h>
-#include <ti/sysbios/hal/Cache.h>
-#include <ti/sysbios/hal/Hwi.h>
-#include <ti/sysbios/knl/Task.h>
-#include <ti/sysbios/knl/Semaphore.h>
-
-#include "bios6_edma3_drv_sample.h"
-
-extern unsigned int ccXferCompInt[][EDMA3_MAX_REGIONS];
-extern unsigned int ccErrorInt[];
-extern unsigned int tcErrorInt[][EDMA3_MAX_TC];
-
-/**
- * Shadow Region on which the executable is running. Its value is
- * populated with the DSP Instance Number here in this case.
- */
-extern unsigned int region_id;
-
-/**
- * \brief   EDMA3 OS Protect Entry
- *
- *      This function saves the current state of protection in 'intState'
- *      variable passed by caller, if the protection level is
- *      EDMA3_OS_PROTECT_INTERRUPT. It then applies the requested level of
- *      protection.
- *      For EDMA3_OS_PROTECT_INTERRUPT_XFER_COMPLETION and
- *      EDMA3_OS_PROTECT_INTERRUPT_CC_ERROR, variable 'intState' is ignored,
- *      and the requested interrupt is disabled.
- *      For EDMA3_OS_PROTECT_INTERRUPT_TC_ERROR, '*intState' specifies the
- *      Transfer Controller number whose interrupt needs to be disabled.
- *
- * \param   level is numeric identifier of the desired degree of protection.
- * \param   intState is memory location where current state of protection is
- *      saved for future use while restoring it via edma3OsProtectExit() (Only
- *      for EDMA3_OS_PROTECT_INTERRUPT protection level).
- * \return  None
- */
-void edma3OsProtectEntry (unsigned int edma3InstanceId,
-                                                       int level, unsigned int *intState)
-    {
-    if (((level == EDMA3_OS_PROTECT_INTERRUPT)
-        || (level == EDMA3_OS_PROTECT_INTERRUPT_TC_ERROR))
-        && (intState == NULL))
-        {
-        return;
-        }
-    else
-        {
-        switch (level)
-            {
-            /* Disable all (global) interrupts */
-            case EDMA3_OS_PROTECT_INTERRUPT :
-                *intState = Hwi_disable();
-                break;
-
-            /* Disable scheduler */
-            case EDMA3_OS_PROTECT_SCHEDULER :
-                                       Task_disable();
-                break;
-
-            /* Disable EDMA3 transfer completion interrupt only */
-            case EDMA3_OS_PROTECT_INTERRUPT_XFER_COMPLETION :
-                EventCombiner_disableEvent(ccXferCompInt[edma3InstanceId][region_id]);
-                break;
-
-            /* Disable EDMA3 CC error interrupt only */
-            case EDMA3_OS_PROTECT_INTERRUPT_CC_ERROR :
-                EventCombiner_disableEvent(ccErrorInt[edma3InstanceId]);
-                break;
-
-            /* Disable EDMA3 TC error interrupt only */
-            case EDMA3_OS_PROTECT_INTERRUPT_TC_ERROR :
-                switch (*intState)
-                    {
-                    case 0:
-                    case 1:
-                    case 2:
-                    case 3:
-                    case 4:
-                    case 5:
-                    case 6:
-                    case 7:
-                        /* Fall through... */
-                        /* Disable the corresponding interrupt */
-                        EventCombiner_disableEvent(tcErrorInt[edma3InstanceId][*intState]);
-                        break;
-
-                     default:
-                        break;
-                    }
-
-                break;
-
-            default:
-                break;
-            }
-        }
-    }
-
-
-/**
- * \brief   EDMA3 OS Protect Exit
- *
- *      This function undoes the protection enforced to original state
- *      as is specified by the variable 'intState' passed, if the protection
- *      level is EDMA3_OS_PROTECT_INTERRUPT.
- *      For EDMA3_OS_PROTECT_INTERRUPT_XFER_COMPLETION and
- *      EDMA3_OS_PROTECT_INTERRUPT_CC_ERROR, variable 'intState' is ignored,
- *      and the requested interrupt is enabled.
- *      For EDMA3_OS_PROTECT_INTERRUPT_TC_ERROR, 'intState' specifies the
- *      Transfer Controller number whose interrupt needs to be enabled.
- * \param   level is numeric identifier of the desired degree of protection.
- * \param   intState is original state of protection at time when the
- *      corresponding edma3OsProtectEntry() was called (Only
- *      for EDMA3_OS_PROTECT_INTERRUPT protection level).
- * \return  None
- */
-void edma3OsProtectExit (unsigned int edma3InstanceId,
-                        int level, unsigned int intState)
-    {
-    switch (level)
-        {
-        /* Enable all (global) interrupts */
-        case EDMA3_OS_PROTECT_INTERRUPT :
-            Hwi_restore(intState);
-            break;
-
-        /* Enable scheduler */
-        case EDMA3_OS_PROTECT_SCHEDULER :
-            Task_enable();
-            break;
-
-        /* Enable EDMA3 transfer completion interrupt only */
-        case EDMA3_OS_PROTECT_INTERRUPT_XFER_COMPLETION :
-            EventCombiner_enableEvent(ccXferCompInt[edma3InstanceId][region_id]);
-            break;
-
-        /* Enable EDMA3 CC error interrupt only */
-        case EDMA3_OS_PROTECT_INTERRUPT_CC_ERROR :
-            EventCombiner_enableEvent(ccErrorInt[edma3InstanceId]);
-            break;
-
-        /* Enable EDMA3 TC error interrupt only */
-        case EDMA3_OS_PROTECT_INTERRUPT_TC_ERROR :
-            switch (intState)
-                {
-                case 0:
-                case 1:
-                case 2:
-                case 3:
-                case 4:
-                case 5:
-                case 6:
-                case 7:
-                    /* Fall through... */
-                    /* Enable the corresponding interrupt */
-                    EventCombiner_enableEvent(tcErrorInt[edma3InstanceId][intState]);
-                    break;
-
-                 default:
-                    break;
-                }
-
-            break;
-
-        default:
-            break;
-        }
-    }
-
-
-/**
- *  \brief   EDMA3 Cache Invalidate
- *
- *  This function invalidates the D cache.
- *
- *  \param  mem_start_ptr [IN]      Starting address of memory.
- *                                  Please note that this should be
- *                                  aligned according to the cache line size.
- *  \param  num_bytes [IN]          length of buffer
- *  \return  EDMA3_DRV_SOK if success, else error code in case of error
- *          or non-alignment of buffers.
- *
- * Note: This function is required if the buffer is in DDR.
- * For other cases, where buffer is NOT in DDR, user
- * may or may not require the below implementation and
- * should modify it according to her need.
- */
-EDMA3_DRV_Result Edma3_CacheInvalidate(unsigned int mem_start_ptr,
-                           unsigned int    num_bytes)
-    {
-    EDMA3_DRV_Result cacheInvResult = EDMA3_DRV_SOK;
-
-    /* Verify whether the start address is cache aligned or not */
-    if((mem_start_ptr & (EDMA3_CACHE_LINE_SIZE_IN_BYTES-1u))    !=    0)
-        {
-#ifdef EDMA3_DRV_DEBUG
-        EDMA3_DRV_PRINTF("\r\n Cache : Memory is not %d bytes alinged\r\n",
-                            EDMA3_CACHE_LINE_SIZE_IN_BYTES);
-#endif
-        cacheInvResult = EDMA3_NON_ALIGNED_BUFFERS_ERROR;
-        }
-    else
-        {
-               Cache_inv((Ptr)mem_start_ptr, num_bytes, Cache_Type_ALL, TRUE);
-        }
-
-    return cacheInvResult;
-}
-
-
-
-/**
- * \brief   EDMA3 Cache Flush
- *
- *  This function flushes (cleans) the Cache
- *
- *  \param  mem_start_ptr [IN]      Starting address of memory.
- *                                  Please note that this should be
- *                                  aligned according to the cache line size.
- *  \param  num_bytes [IN]          length of buffer
- *  \return  EDMA3_DRV_SOK if success, else error code in case of error
- *          or non-alignment of buffers.
- *
- * Note: This function is required if the buffer is in DDR.
- * For other cases, where buffer is NOT in DDR, user
- * may or may not require the below implementation and
- * should modify it according to her need.
- */
-EDMA3_DRV_Result Edma3_CacheFlush(unsigned int mem_start_ptr,
-                      unsigned int num_bytes)
-    {
-    EDMA3_DRV_Result cacheFlushResult = EDMA3_DRV_SOK;
-
-    /* Verify whether the start address is cache aligned or not */
-    if((mem_start_ptr & (EDMA3_CACHE_LINE_SIZE_IN_BYTES-1u))    !=    0)
-        {
-#ifdef EDMA3_DRV_DEBUG
-        EDMA3_DRV_PRINTF("\r\n Cache : Memory is not %d bytes alinged\r\n",
-                            EDMA3_CACHE_LINE_SIZE_IN_BYTES);
-#endif
-        cacheFlushResult = EDMA3_NON_ALIGNED_BUFFERS_ERROR;
-        }
-    else
-        {
-               Cache_wb((Ptr)mem_start_ptr, num_bytes, Cache_Type_ALL, TRUE);
-        }
-
-    return cacheFlushResult;
-}
-
-
-/**
-  * Counting Semaphore related functions (OS dependent) should be
-  * called/implemented by the application. A handle to the semaphore
-  * is required while opening the driver/resource manager instance.
-  */
-
-/**
- * \brief   EDMA3 OS Semaphore Create
- *
- *      This function creates a counting semaphore with specified
- *      attributes and initial value. It should be used to create a semaphore
- *      with initial value as '1'. The semaphore is then passed by the user
- *      to the EDMA3 driver/RM for proper sharing of resources.
- * \param   initVal [IN] is initial value for semaphore
- * \param   semParams [IN] is the semaphore attributes.
- * \param   hSem [OUT] is location to recieve the handle to just created
- *      semaphore
- * \return  EDMA3_DRV_SOK if succesful, else a suitable error code.
- */
-EDMA3_DRV_Result edma3OsSemCreate(int initVal,
-                                                       const Semaphore_Params *semParams,
-                               EDMA3_OS_Sem_Handle *hSem)
-    {
-    EDMA3_DRV_Result semCreateResult = EDMA3_DRV_SOK;
-
-    if(NULL == hSem)
-        {
-        semCreateResult = EDMA3_DRV_E_INVALID_PARAM;
-        }
-    else
-        {
-        *hSem = (EDMA3_OS_Sem_Handle)Semaphore_create(initVal, semParams, NULL);
-        if ( (*hSem) == NULL )
-            {
-            semCreateResult = EDMA3_DRV_E_SEMAPHORE;
-            }
-        }
-
-    return semCreateResult;
-    }
-
-
-/**
- * \brief   EDMA3 OS Semaphore Delete
- *
- *      This function deletes or removes the specified semaphore
- *      from the system. Associated dynamically allocated memory
- *      if any is also freed up.
- * \param   hSem [IN] handle to the semaphore to be deleted
- * \return  EDMA3_DRV_SOK if succesful else a suitable error code
- */
-EDMA3_DRV_Result edma3OsSemDelete(EDMA3_OS_Sem_Handle hSem)
-    {
-    EDMA3_DRV_Result semDeleteResult = EDMA3_DRV_SOK;
-
-    if(NULL == hSem)
-        {
-        semDeleteResult = EDMA3_DRV_E_INVALID_PARAM;
-        }
-    else
-        {
-               Semaphore_delete((Semaphore_Handle *)&hSem);
-        }
-
-    return semDeleteResult;
-    }
-
-
-/**
- * \brief   EDMA3 OS Semaphore Take
- *
- *      This function takes a semaphore token if available.
- *      If a semaphore is unavailable, it blocks currently
- *      running thread in wait (for specified duration) for
- *      a free semaphore.
- * \param   hSem [IN] is the handle of the specified semaphore
- * \param   mSecTimeout [IN] is wait time in milliseconds
- * \return  EDMA3_DRV_Result if successful else a suitable error code
- */
-EDMA3_DRV_Result edma3OsSemTake(EDMA3_OS_Sem_Handle hSem, int mSecTimeout)
-    {
-    EDMA3_DRV_Result semTakeResult = EDMA3_DRV_SOK;
-    unsigned short semPendResult;
-
-    if(NULL == hSem)
-        {
-        semTakeResult = EDMA3_DRV_E_INVALID_PARAM;
-        }
-    else
-        {
-        semPendResult = Semaphore_pend(hSem, mSecTimeout);
-        if (semPendResult == FALSE)
-            {
-            semTakeResult = EDMA3_DRV_E_SEMAPHORE;
-            }
-        }
-
-    return semTakeResult;
-    }
-
-
-/**
- * \brief   EDMA3 OS Semaphore Give
- *
- *      This function gives or relinquishes an already
- *      acquired semaphore token
- * \param   hSem [IN] is the handle of the specified semaphore
- * \return  EDMA3_DRV_Result if successful else a suitable error code
- */
-EDMA3_DRV_Result edma3OsSemGive(EDMA3_OS_Sem_Handle hSem)
-    {
-    EDMA3_DRV_Result semGiveResult = EDMA3_DRV_SOK;
-
-    if(NULL == hSem)
-        {
-        semGiveResult = EDMA3_DRV_E_INVALID_PARAM;
-        }
-    else
-        {
-               Semaphore_post(hSem);
-        }
-
-    return semGiveResult;
-    }
-
-/* End of File */
-
diff --git a/example/k2g/MCBSPDigLpbk/sample_init.c b/example/k2g/MCBSPDigLpbk/sample_init.c
deleted file mode 100644 (file)
index 54fc955..0000000
+++ /dev/null
@@ -1,223 +0,0 @@
-/*
- * sample_init.c
- *
- * Sample Initialization for the EDMA3 Driver for BIOS 6 based applications.
- * It should be MANDATORILY done once before EDMA3 usage.
- *
- * Copyright (C) 2009-2012 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.
- *
-*/
-
-#include <ti/sysbios/hal/Hwi.h>
-#include <ti/sysbios/knl/Semaphore.h>
-#include <ti/sysbios/family/c64p/EventCombiner.h>
-
-#include "bios6_edma3_drv_sample.h"
-
-/** @brief EDMA3 Driver Instance specific Semaphore handle */
-extern EDMA3_OS_Sem_Handle semHandle[];
-
-/**  To Register the ISRs with the underlying OS, if required. */
-extern void registerEdma3Interrupts (unsigned int edma3Id);
-/**  To Unregister the ISRs with the underlying OS, if previously registered. */
-extern void unregisterEdma3Interrupts (unsigned int edma3Id);
-
-/* To find out the DSP# */
-extern unsigned short determineProcId();
-
-/**
- * To check whether the global EDMA3 configuration is required or not.
- * It should be done ONCE by any of the masters present in the system.
- * This function checks whether the global configuration is required by the
- * current master or not. In case of many masters, it should be done only
- * by one of the masters. Hence this function will return TRUE only once
- * and FALSE for all other masters. 
- */
-extern unsigned short isGblConfigRequired(unsigned int dspNum);
-
-/**
- * DSP instance number on which the executable is running. Its value is
- * determined by reading the processor specific register DNUM.
- */
-unsigned int dsp_num;
-
-/**
- * Shadow Region on which the executable is runnig. Its value is populated
- * with the DSP Instance Number here in this case.
- */
-unsigned int region_id;
-
-/* Number of EDMA3 controllers present in the system */
-extern const unsigned int numEdma3Instances;
-
-/* External Global Configuration Structure */
-extern EDMA3_DRV_GblConfigParams sampleEdma3GblCfgParams[];
-
-/* External Instance Specific Configuration Structure */
-extern EDMA3_DRV_InstanceInitConfig sampleInstInitConfig[][EDMA3_MAX_REGIONS];
-
-#if defined (CHIP_TI814X)
-extern EDMA3_DRV_Result sampleInitXbarEvt(EDMA3_DRV_Handle hEdma, unsigned int edma3Id);
-#endif
-
-/**
- * \brief   EDMA3 Initialization
- *
- * This function initializes the EDMA3 Driver and registers the
- * interrupt handlers.
- *
-  * \return  EDMA3_DRV_SOK if success, else error code
- */
-EDMA3_DRV_Handle edma3init (unsigned int edma3Id, EDMA3_DRV_Result *errorCode)
-    {
-    EDMA3_DRV_Result edma3Result = EDMA3_DRV_E_INVALID_PARAM;
-    Semaphore_Params semParams;
-    EDMA3_DRV_GblConfigParams *globalConfig = NULL;
-       EDMA3_DRV_InitConfig initCfg;
-       EDMA3_RM_MiscParam miscParam;
-       EDMA3_DRV_Handle hEdma = NULL;
-
-       if ((edma3Id >= numEdma3Instances) || (errorCode == NULL))
-               return hEdma;
-
-    /* DSP instance number */
-    dsp_num = determineProcId();
-//    dsp_num = 0; /* selection of region ID */
-
-       globalConfig = &sampleEdma3GblCfgParams[edma3Id];
-
-       /* Configure it as master, if required */
-       miscParam.isSlave = isGblConfigRequired(dsp_num);
-       edma3Result = EDMA3_DRV_create (edma3Id, globalConfig ,
-                                                                       (void *)&miscParam);
-
-       if (edma3Result == EDMA3_DRV_SOK)
-               {
-               /**
-               * Driver Object created successfully.
-               * Create a semaphore now for driver instance.
-               */
-               Semaphore_Params_init(&semParams);
-
-               initCfg.drvSemHandle = NULL;
-               edma3Result = edma3OsSemCreate(1, &semParams, &initCfg.drvSemHandle);
-               }
-
-       if (edma3Result == EDMA3_DRV_SOK)
-               {
-               /* Save the semaphore handle for future use */
-               semHandle[edma3Id] = initCfg.drvSemHandle;
-
-        /* Driver instance specific config NULL */
-               initCfg.drvInstInitConfig = NULL;
-
-#ifndef EDMA3_DRV_USE_DEF_RM_CFG
-        /* Hook for running examples with default RM config */
-               /* configuration structure for the Driver */
-               initCfg.drvInstInitConfig = &sampleInstInitConfig[edma3Id][dsp_num];
-#endif
-
-               initCfg.isMaster = TRUE;
-               /* Choose shadow region according to the DSP# */
-               initCfg.regionId = (EDMA3_RM_RegionId)dsp_num;
-               /*Saving the regionId for using it in the sample_cs.c file */
-               region_id = (EDMA3_RM_RegionId)dsp_num;
-               /* Driver instance specific config NULL */
-
-               initCfg.gblerrCb = NULL;
-               initCfg.gblerrData = NULL;
-
-               /* Open the Driver Instance */
-               hEdma = EDMA3_DRV_open (edma3Id, (void *) &initCfg, &edma3Result);
-               }
-
-#if defined (CHIP_TI814X)
-       {
-       if(hEdma && (edma3Result == EDMA3_DRV_SOK))
-               {
-               edma3Result = sampleInitXbarEvt(hEdma, edma3Id);
-               }
-       }
-#endif
-       if(hEdma && (edma3Result == EDMA3_DRV_SOK))
-               {
-               /**
-               * Register Interrupt Handlers for various interrupts
-               * like transfer completion interrupt, CC error
-               * interrupt, TC error interrupts etc, if required.
-               */
-               registerEdma3Interrupts(edma3Id);
-               }
-
-       *errorCode = edma3Result;       
-       return hEdma;
-    }
-
-
-/**
- * \brief   EDMA3 De-initialization
- *
- * This function removes the EDMA3 Driver instance and unregisters the
- * interrupt handlers.
- *
-  * \return  EDMA3_DRV_SOK if success, else error code
- */
-EDMA3_DRV_Result edma3deinit (unsigned int edma3Id, EDMA3_DRV_Handle hEdma)
-    {
-    EDMA3_DRV_Result edma3Result = EDMA3_DRV_E_INVALID_PARAM;
-
-    /* Unregister Interrupt Handlers first */
-    unregisterEdma3Interrupts(edma3Id);
-
-    /* Delete the semaphore */
-    edma3Result = edma3OsSemDelete(semHandle[edma3Id]);
-
-    if (EDMA3_DRV_SOK == edma3Result )
-        {
-        /* Make the semaphore handle as NULL. */
-        semHandle[edma3Id] = NULL;
-
-        /* Now, close the EDMA3 Driver Instance */
-        edma3Result = EDMA3_DRV_close (hEdma, NULL);
-       }
-
-       if (EDMA3_DRV_SOK == edma3Result )
-        {
-        /* Now, delete the EDMA3 Driver Object */
-        edma3Result = EDMA3_DRV_delete (edma3Id, NULL);
-        }
-
-    return edma3Result;
-    }
-
-/* End of File */
-
diff --git a/example/k2g/MCBSPDigLpbk/sample_k2g_int_reg.c b/example/k2g/MCBSPDigLpbk/sample_k2g_int_reg.c
deleted file mode 100644 (file)
index 47b68be..0000000
+++ /dev/null
@@ -1,310 +0,0 @@
-/*
- * sample_tci6616_int_reg.c
- *
- * Platform specific interrupt registration and un-registration routines.
- *
- * Copyright (C) 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.
- *
-*/
-
-#include <ti/sysbios/knl/Semaphore.h>
-#include <ti/sysbios/family/c64p/Hwi.h>
-#include <ti/sysbios/family/c64p/EventCombiner.h>
-#include <ti/sysbios/family/c66/tci66xx/CpIntc.h>
-
-#include <ti/sdo/edma3/rm/sample/bios6_edma3_rm_sample.h>
-
-#include <ti/csl/csl_edma3.h>
-extern unsigned int ccXferCompInt[][EDMA3_MAX_REGIONS];
-extern unsigned int ccErrorInt[];
-extern unsigned int tcErrorInt[][EDMA3_MAX_TC];
-extern unsigned int numEdma3Tc[];
-
-void (*ptrEdma3TcIsrHandler[EDMA3_MAX_TC])(unsigned int arg) =
-                                                {
-                                                &lisrEdma3TC0ErrHandler0,
-                                                &lisrEdma3TC1ErrHandler0,
-                                                &lisrEdma3TC2ErrHandler0,
-                                                &lisrEdma3TC3ErrHandler0,
-                                                &lisrEdma3TC4ErrHandler0,
-                                                &lisrEdma3TC5ErrHandler0,
-                                                &lisrEdma3TC6ErrHandler0,
-                                                &lisrEdma3TC7ErrHandler0,
-                                                };
-#if 0
-unsigned int hwiInterrupt = 8;
-
-/* Host interrupts for transfer completion */
-//unsigned int ccXferHostInt[NUM_EDMA3_INSTANCES][NUM_DSPS] = {
-unsigned int ccXferHostInt[3][4] = {
-                                                                               {32, 24u, 40u, 56u},
-                                                                               {9u, 25u, 41u, 57u},
-                                                                               {10u, 26u, 42u, 58u},
-                                                                               };
-unsigned int edma3ErrHostInt[3][4] = {
-                                                                               {33, 27u, 43u, 59u},
-                                                                               {12u, 28u, 44u, 60u},
-                                                                               {13u, 29u, 45u, 61u},
-                                                                               };
-
-
-extern unsigned int dsp_num;
-
-/**  To Register the ISRs with the underlying OS, if required */
-void registerEdma3Interrupts (unsigned int edma3Id)
-    {
-    static UInt32 cookie = 0;
-    Int eventId = 0;   /* GEM event id */
-       unsigned int numTc = 0;
-
-    /* Disabling the global interrupts */
-    cookie = Hwi_disable();
-#if 0
-       /* Transfer completion ISR */
-#if 0
-       CpIntc_dispatchPlug(ccXferCompInt[edma3Id][dsp_num],
-                                               lisrEdma3ComplHandler0,
-                                               edma3Id,
-                                               TRUE);
-       CpIntc_mapSysIntToHostInt(0, ccXferCompInt[edma3Id][dsp_num],
-                                                               ccXferHostInt[edma3Id][dsp_num]);
-       CpIntc_enableHostInt(0, ccXferHostInt[edma3Id][dsp_num]);
-#else
-       // Map system interrupt 15 to host interrupt 8
-       CpIntc_mapSysIntToHostInt(0, 0x88, 32);
-
-       // Plug the function for event #15
-       CpIntc_dispatchPlug(0x88, lisrEdma3ComplHandler0,edma3Id,TRUE);
-
-       // Enable host interrupt #8
-       CpIntc_enableHostInt(0,32); // enable host interrupt 8
-#endif
-    eventId = CpIntc_getEventId(ccXferHostInt[edma3Id][dsp_num]);
-    eventId = 0x30;
-    EventCombiner_dispatchPlug (eventId, CpIntc_dispatch,
-                                ccXferHostInt[edma3Id][dsp_num], TRUE);
-       EventCombiner_enableEvent(eventId);
-
-       /* CC Error ISR */
-       CpIntc_dispatchPlug(ccErrorInt[edma3Id], lisrEdma3CCErrHandler0,
-                                               edma3Id, TRUE);
-       CpIntc_mapSysIntToHostInt(0, ccErrorInt[edma3Id],
-                                                               edma3ErrHostInt[edma3Id][dsp_num]);
-       /* TC Error ISR */
-    while (numTc < numEdma3Tc[edma3Id])
-           {
-               CpIntc_dispatchPlug(tcErrorInt[edma3Id][numTc],
-                                                       (CpIntc_FuncPtr )(ptrEdma3TcIsrHandler[numTc]),
-                                                       edma3Id, TRUE);
-               CpIntc_mapSysIntToHostInt(0, tcErrorInt[edma3Id][numTc],
-                                                                       edma3ErrHostInt[edma3Id][dsp_num]);
-        numTc++;
-       }
-       /* Enable the host interrupt which is common for both CC and TC error */
-       CpIntc_enableHostInt(0, edma3ErrHostInt[edma3Id][dsp_num]);
-    eventId = CpIntc_getEventId(edma3ErrHostInt[edma3Id][dsp_num]);
-    eventId = 0x31;
-    EventCombiner_dispatchPlug (eventId, CpIntc_dispatch,
-                                edma3ErrHostInt[edma3Id][dsp_num], TRUE);
-       EventCombiner_enableEvent(eventId);
-
-    Hwi_enableInterrupt(hwiInterrupt);
-#else
-
-    /* enable the 'global' switch */
-    CpIntc_enableAllHostInts(0);
-    {
-        Hwi_Params params;
-       CpIntc_mapSysIntToHostInt(0, 0x88, 32);                 // I picked host int 32 for CPINTC #0.  CPINTC #1 is for cores 4-7
-           CpIntc_dispatchPlug(0x88, lisrEdma3ComplHandler0, 0, TRUE);   //  the 'arg' parameter could be anything, doesn't have to be 149
-           CpIntc_enableHostInt(0, 32);                                     // CPINT #0 is for cores 0-3, CPINTC #1 is for cores 4-7
-           eventId = CpIntc_getEventId(32);                               // this should return the GEM event 21 (This was a bug fixed in 6.32.04)
-           eventId = 0x30;
-           Hwi_Params_init(&params);
-           params.arg = 32;                                       // required to be the host interrupt #
-           params.eventId = eventId;
-           params.enableInt = TRUE;
-           Hwi_create(8, &CpIntc_dispatch, &params, NULL); // create ISR to handle this event in Hwi vector 8
-
-    }
-#endif
-    /* Restore interrupts */
-    Hwi_restore(cookie);
-    }
-
-/**  To Unregister the ISRs with the underlying OS, if previously registered. */
-void unregisterEdma3Interrupts (unsigned int edma3Id)
-    {
-    static UInt32 cookie = 0;
-    Int eventId = 0;   /* GEM event id */
-
-    /* Disabling the global interrupts */
-    cookie = Hwi_disable();
-
-       /* Transfer completion ISR */
-       CpIntc_disableHostInt(0, ccXferHostInt[edma3Id][dsp_num]);
-    eventId = CpIntc_getEventId(ccXferHostInt[edma3Id][dsp_num]);
-       EventCombiner_disableEvent(eventId);
-
-       /* CC/TC Error ISR */
-       CpIntc_disableHostInt(0, edma3ErrHostInt[edma3Id][dsp_num]);
-    eventId = CpIntc_getEventId(edma3ErrHostInt[edma3Id][dsp_num]);
-       EventCombiner_disableEvent(eventId);
-
-    /* Restore interrupts */
-    Hwi_restore(cookie);
-    }
-
-#else
-/**  To Register the ISRs with the underlying OS, if required. */
-void registerEdma3Interrupts (unsigned int edma3Id)
-    {
-    static UInt32 cookie = 0;
-    unsigned int eventId,numTc = 0;
-    Hwi_Params params;
-
-    /* Disabling the global interrupts */
-    cookie = Hwi_disable();
-
-    /* Enable the Xfer Completion Event Interrupt */
-    EventCombiner_dispatchPlug(6,
-                                               (EventCombiner_FuncPtr)(&lisrEdma3ComplHandler0),
-                               edma3Id, 1);
-    EventCombiner_enableEvent(6);
-
-    Hwi_enableInterrupt(7);
-
-# if 0
-    /* Map the EDMA Region 0 transfer complete interrupt to the EDMA ISR Handler. */
-    CpIntc_dispatchPlug(0x88, (CpIntc_FuncPtr)lisrEdma3ComplHandler0, 0, TRUE);
-
-    /* The configuration is for CPINTC0. We map system interrupt 0x88 to Host Interrupt 32. */
-    CpIntc_mapSysIntToHostInt(0, 0x88, 32);
-
-    /* Enable the Host Interrupt. */
-    CpIntc_enableHostInt(0, 32);
-
-    /* Enable the System Interrupt */
-    CpIntc_enableSysInt(0, 0x88);
-
-    /* Get the event id associated with the host interrupt. */
-    eventId = 0x30;
-    /* enable the 'global' switch */
-
-   /* Enable the Xfer Completion Event Interrupt */
-        EventCombiner_dispatchPlug(0x30,
-                                                       (EventCombiner_FuncPtr)(&CpIntc_dispatch),
-                               32, 1);
-        EventCombiner_enableEvent(0x30);
-
-        /* Map the EDMA CC error interrupt to the EDMA ISR Handler. */
-            CpIntc_dispatchPlug(0x99, (CpIntc_FuncPtr)lisrEdma3ComplHandler0, 0, TRUE);
-
-            /* The configuration is for CPINTC0. We map system interrupt 0x99 to Host Interrupt 33. */
-            CpIntc_mapSysIntToHostInt(0, 0x99, 33);
-
-            /* Enable the Host Interrupt. */
-            CpIntc_enableHostInt(0, 33);
-
-            /* Enable the System Interrupt */
-            CpIntc_enableSysInt(0, 0x99);
-
-            /* Get the event id associated with the host interrupt. */
-            eventId = 0x31;
-            /* enable the 'global' switch */
-
-           /* Enable the Xfer Completion Event Interrupt */
-                EventCombiner_dispatchPlug(0x31,
-                                                               (EventCombiner_FuncPtr)(&CpIntc_dispatch),
-                                       33, 1);
-                EventCombiner_enableEvent(0x31);
-
-                /* Map the EDMA TC error  interrupt to the EDMA ISR Handler. */
-                           CpIntc_dispatchPlug(0x9e, (CpIntc_FuncPtr)lisrEdma3ComplHandler0, 0, TRUE);
-
-                           /* The configuration is for CPINTC0. We map system interrupt 0x9e to Host Interrupt 34. */
-                           CpIntc_mapSysIntToHostInt(0, 0x9e, 34);
-
-                           /* Enable the Host Interrupt. */
-                           CpIntc_enableHostInt(0, 34);
-
-                           /* Enable the System Interrupt */
-                           CpIntc_enableSysInt(0, 0x9e);
-
-                           /* Get the event id associated with the host interrupt. */
-                           eventId = 0x32;
-                           /* enable the 'global' switch */
-
-                          /* Enable the Xfer Completion Event Interrupt */
-                               EventCombiner_dispatchPlug(0x32,
-                                                                               (EventCombiner_FuncPtr)(&CpIntc_dispatch),
-                                                       34, 1);
-                               EventCombiner_enableEvent(0x32);
-
-
-
-        CpIntc_enableAllHostInts(0);
-        Hwi_enableInterrupt(8);
-
-
-#endif
-
-    /* Restore interrupts */
-    Hwi_restore(cookie);
-    }
-
-/**  To Unregister the ISRs with the underlying OS, if previously registered. */
-void unregisterEdma3Interrupts (unsigned int edma3Id)
-    {
-       static UInt32 cookie = 0;
-    unsigned int numTc = 0;
-
-    /* Disabling the global interrupts */
-    cookie = Hwi_disable();
-
-    /* Disable the Xfer Completion Event Interrupt */
-       EventCombiner_disableEvent(ccXferCompInt[edma3Id][0]);
-
-    /* Disable the CC Error Event Interrupt */
-       EventCombiner_disableEvent(ccErrorInt[edma3Id]);
-
-    /* Enable the TC Error Event Interrupt, according to the number of TCs. */
-    while (numTc < numEdma3Tc[edma3Id])
-       {
-        EventCombiner_disableEvent(tcErrorInt[edma3Id][numTc]);
-        numTc++;
-       }
-
-    /* Restore interrupts */
-    Hwi_restore(cookie);
-    }
-#endif