view src/cs/drivers/drv_app/lcc/lcc_trace.c @ 605:07d0dc4431f4

bootloader.s: same MEMIF fix as in int.s plus DPLL BYPASS fix Both MEMIF and DPLL settings are now the same between int.s and bootloader.s assembly code paths. Previously bootloader.s was setting DPLL BYPASS /2 mode, which persisted until _INT_Initialize code with the bootloader body omitted, or was changed to /1 in the hardware init function in the bootloader.lib:start.obj module.
author Mychaela Falconia <falcon@freecalypso.org>
date Mon, 17 Jun 2019 18:40:32 +0000
parents 945cf7f506b2
children
line wrap: on
line source

/******************************************************************************
 * PWR task (pwr)
 * Adapted from FFS by Svend Kristian Lindholm, skl@ti.com
 * Idea, design and coding by Mads Meisner-Jensen, mmj@ti.com
 *
 * pwr tracing
 *
 * $Id: pwr_trace.c 1.1 Wed, 20 Aug 2003 10:22:37 +0200 skl $
 *
 ******************************************************************************/

#include "lcc/lcc_trace.h"

#include <stdio.h>
#include <stdlib.h>
#include <stdarg.h>

#include "rvf/rvf_api.h"
#include "rv/rv_general.h"
#include "rvm/rvm_use_id_list.h"
#include "rv/rv_defined_swe.h"

/******************************************************************************
 * Target Tracing
 *****************************************************************************/

static unsigned int pwr_mask = TTrFatal | TTrWarning;

void pwr_ttr_init(unsigned int mask)
{
    pwr_mask = mask | TTrFatal | TTrWarning;
}

void pwr_ttr(unsigned int mask, char *format, ...)
{
    va_list args;
    static char buf[256];

    if (pwr_mask & mask)
    {
        // build string ala tr() then call str()
        va_start(args, format);
        vsprintf(buf, format, args);
        str(mask, buf);
        va_end(args);
    }
}

void pwr_str(unsigned mask, char *string)
{
    if (pwr_mask & mask) {
#if (_RVF == 1)
        rvf_send_trace(string, strlen(string), NULL_PARAM,
                       RV_TRACE_LEVEL_WARNING, LCC_USE_ID);
        rvf_delay(5);
#endif
    }
}

/******************************************************************************
 ** Common Tracing and logging
 *****************************************************************************/

int pwr_tr_query(int mask)
{
    return (pwr_mask & mask);
}