1    /* --COPYRIGHT--,BSD
     2     * Copyright (c) $(CPYYEAR), Texas Instruments Incorporated
     3     * All rights reserved.
     4     *
     5     * Redistribution and use in source and binary forms, with or without
     6     * modification, are permitted provided that the following conditions
     7     * are met:
     8     *
     9     * *  Redistributions of source code must retain the above copyright
    10     *    notice, this list of conditions and the following disclaimer.
    11     *
    12     * *  Redistributions in binary form must reproduce the above copyright
    13     *    notice, this list of conditions and the following disclaimer in the
    14     *    documentation and/or other materials provided with the distribution.
    15     *
    16     * *  Neither the name of Texas Instruments Incorporated nor the names of
    17     *    its contributors may be used to endorse or promote products derived
    18     *    from this software without specific prior written permission.
    19     *
    20     * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
    21     * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
    22     * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
    23     * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
    24     * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
    25     * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
    26     * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
    27     * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
    28     * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
    29     * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
    30     * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
    31     * --/COPYRIGHT--*/
    32    /*
    33     *  ======== MultiProcSetup.xdc ========
    34     */
    35    
    36    import xdc.runtime.Assert;
    37    
    38    /*!
    39     *  ======== MultiProcSetup ======== 
    40     */
    41    
    42    module MultiProcSetup
    43    {
    44        /*!
    45         * By default the MultiProcSetup module will set the ID at startup.
    46         *
    47         * By setting this flag to false, the initialization step is suppressed.
    48         */
    49        config Bool configureProcId = true;
    50        
    51        /*!
    52         *  Assert raised when the target core is not in the MultiProc name list
    53         */
    54        config Assert.Id A_invalidProcessor  = {
    55            msg: "A_invalidProcessor: This core is not present in the MultiProc name list"
    56        };
    57    
    58        /*! ProcId -> CoreId mapping (indexed by procId) */
    59        config UInt16 procMap[];
    60    
    61    internal:
    62    
    63        /*! 
    64         *  ======== getProcId ========
    65         *  Returns the MultiProc ID corresponding to a specific core
    66         */
    67        UInt16 getProcId(UInt coreId);
    68    
    69        Void init();
    70    }