view src/cs/drivers/drv_core/timer/timer.h @ 624:012028896cfb

FFS dev.c, Leonardo target: Fujitsu MB84VF5F5F4J2 #if 0'ed out The FFS code we got from TI/Openmoko had a stanza for "Fujitsu MB84VF5F5F4J2 stacked device", using a fake device ID code that would need to be patched manually into cfgffs.c (suppressing and overriding autodetection) and using an FFS base address in the nCS2 bank, indicating that this FFS config was probably meant for the MCP version of Leonardo which allows for 16 MiB flash with a second bank on nCS2. We previously had this FFS config stanza conditionalized under CONFIG_TARGET_LEONARDO because the base address contained therein is invalid for other targets, but now that we actually have a Leonardo build target in FC Magnetite, I realize that the better approach is to #if 0 out this stanza altogether: it is already non-functional because it uses a fake device ID code, thus it is does not add support for more Leonardo board variants, instead it is just noise.
author Mychaela Falconia <falcon@freecalypso.org>
date Sun, 22 Dec 2019 21:24:29 +0000
parents 945cf7f506b2
children
line wrap: on
line source

/*******************************************************************************
            TEXAS INSTRUMENTS INCORPORATED PROPRIETARY INFORMATION           
                                                                             
   Property of Texas Instruments -- For  Unrestricted  Internal  Use  Only 
   Unauthorized reproduction and/or distribution is strictly prohibited.  This 
   product  is  protected  under  copyright  law  and  trade  secret law as an 
   unpublished work.  Created 1987, (C) Copyright 1997 Texas Instruments.  All 
   rights reserved.                                                            
                  
                                                           
   Filename         : timer.h

   Description      : timer.c header

   Project          : drivers

   Author           : pmonteil@tif.ti.com  Patrice Monteil.

   Version number   : 1.3

   Date and time    : 07/23/98 16:25:53
   Previous delta   : 07/23/98 16:25:52

   SCCS file        : /db/gsm_asp/db_ht96/dsp_0/gsw/rel_0/mcu_l1/release1.5/mod/emu/EMU_MCMP/eva3_drivers/source/SCCS/s.timer.h

   Sccs Id  (SID)       : '@(#) timer.h 1.3 07/23/98 16:25:53 '

 
*****************************************************************************/

#include "l1sw.cfg"

#if (OP_L1_STANDALONE == 0)
  #include "main/sys_types.h"
#else
  #include "sys_types.h"
#endif

#define TIMER_CNTL_REG  MEM_TIMER_ADDR      /* watchdog Control Timer register */
 
#define TIMER_ST        0x0080       
#define TIMER_AR        0x0100       
#define TIMER_PTV       0x0e00   
#define	TIMER_CNTL_MASK	0x0f80	 
#define	TIMER_MODE_MASK	0x80ff	 


#define TIMER_LOAD_REG  (MEM_TIMER_ADDR + 0x02)   /* Timer load register */ 
#define TIMER_READ_REG  (MEM_TIMER_ADDR + 0x02)   /* Timer read register */ 


#define TIMER_MODE_REG  (MEM_TIMER_ADDR + 0x04)   /* Timer mode register */ 
#define TIMER_WDOG      0x8000          /* watch dog */

#define START_STOP      1           /*to start or stop a timer */
#define AR              0x0002       
#define PTV             0x001c 
#define TIMER_CLK_EN    0x0020


#define TIMER1_CNTL         (MEM_TIMER1 + 0x00)
#define TIMER1_LOAD_TIM     (MEM_TIMER1 + 0x02)
#define TIMER1_READ_TIM     (MEM_TIMER1 + 0x04)
#define TIMER2_CNTL         (MEM_TIMER2 + 0x00)
#define TIMER2_LOAD_TIM     (MEM_TIMER2 + 0x02)
#define TIMER2_READ_TIM     (MEM_TIMER2 + 0x04)


/*--------------------------------------------------------------
 *   TIMER_START_STOP ()
 *--------------------------------------------------------------
 * Parameters : start or stop command
 * Return     :	none
 * Functionality : Start or Stop the timer
 *--------------------------------------------------------------*/
#define TIMER_START_STOP(startStop) ((startStop) ? ((* (volatile SYS_UWORD16 *) TIMER_CNTL_REG) |=  TIMER_ST) : \
((* (volatile SYS_UWORD16 *) TIMER_CNTL_REG) &= ~TIMER_ST))


/* Prototype of the functions */

void        TM_ResetTimer (SYS_UWORD16 timerNum, SYS_UWORD16 countValue,
                           SYS_UWORD16 autoReload, SYS_UWORD16 clockScale);
void        TM_StopTimer (int timerNum);
void        TM_StartTimer (int timerNum);
SYS_UWORD16      TM_ReadTimer (int timerNum);

void        TM_DisableWatchdog(void);
void        TM_EnableWatchdog(void);
void        TM_ResetWatchdog(SYS_UWORD16 cnt);
void        TM_EnableTimer (int timerNum);
void        TM_DisableTimer (int timerNum);

SYS_UWORD16 TIMER_Read (unsigned short);
void TIMER_WriteValue (SYS_UWORD16);
unsigned short TIMER_ReadValue (void);