cslr_ssr.h
来自「dsp在音频处理中的运用」· C头文件 代码 · 共 319 行
H
319 行
/** ============================================================================
* @file cslr_ssr.h
*
* @path $(CSLPATH)\arm\ssr\src
*
* @desc Register layer header file for the OMAP3.2 Synchronous Serial
* Receiver CSL on ARM side
* =============================================================================
*/
/* ============================================================================
* Copyright (c) Texas Instruments Inc 2002, 2003, 2004
*
* Use of this software is controlled by the terms and conditions found in the
* license agreement under which this software has been supplied.
* ===========================================================================
*/
/* =============================================================================
* Revision History
* ================
* 12-July-2004 Ru File Created.
*
* =============================================================================
*/
#ifndef _CSLR_SSR_H_
#define _CSLR_SSR_H_
#include <cslr.h>
#include <tistdtypes.h>
/**************************************************************************\
* Register Overlay Structure
\**************************************************************************/
typedef struct {
/** The SSR Identification Register */
volatile Uint32 ID;
/** The SSR Mode Of Operation Register */
volatile Uint32 MODE;
/** The SSR Data Framesize Register */
volatile Uint32 FRAMESIZE;
/** The SSR Receiver State Register */
volatile Uint32 RXSTATE;
/** The SSR Receiver Buffer State Register */
volatile Uint32 BUFSTATE;
volatile Uint8 RSVD0[8];
/** The SSR Break Detection State Register */
volatile Uint32 BREAK;
/** The SSR Error Detection State Register */
volatile Uint32 ERROR;
/** The SSR Error Acknowledge Register */
volatile Uint32 ERRORACK;
/** The SSR Channels Register */
volatile Uint32 CHANNELS;
/** The SSR Overrun Register */
volatile Uint32 OVERRUN;
/** The SSR Overrun Acknowledge Register */
volatile Uint32 OVERRUNACK;
/** The SSR Timeout Period Register */
volatile Uint32 TIMEOUT;
volatile Uint8 RSVD1[72];
/** The SSR Reception Buffers - Channel 0...8 */
volatile Uint32 BUFFER_CH[8];
volatile Uint8 RSVD2[32];
/** The SSR Reception Swap Buffers - Channel 0..8 */
volatile Uint32 SWAPBUFFER_CH[8];
} CSL_SsrRegs;
/** Overlay structure typedef definition */
typedef volatile CSL_SsrRegs * CSL_SsrRegsOvly;
/**************************************************************************\
* Field Definition Macros
\**************************************************************************/
/* ID */
/** ID_VAL - field mask */
#define CSL_SSR_ID_ID_VAL_MASK (0xFFFFFFFFu)
/** ID_VAL - field shift */
#define CSL_SSR_ID_ID_VAL_SHIFT (0x00000000u)
/** ID_VAL - field reset value */
#define CSL_SSR_ID_ID_VAL_RESETVAL (0x55555555u)
/** ID - field reset value */
#define CSL_SSR_ID_RESETVAL (0x55555555u)
/* MODE */
/** MODE_VAL - field mask */
#define CSL_SSR_MODE_MODE_VAL_MASK (0x00000007u)
/** MODE_VAL - field shift */
#define CSL_SSR_MODE_MODE_VAL_SHIFT (0x00000000u)
/** MODE_VAL - field reset value */
#define CSL_SSR_MODE_MODE_VAL_RESETVAL (0x00000000u)
/*----MODE_VAL Tokens----*/
/** MODE_VAL - field sleep mode */
#define CSL_SSR_MODE_MODE_VAL_SLEEP (0x00000000u)
/** MODE_VAL - field stream mode */
#define CSL_SSR_MODE_MODE_VAL_STREAM (0x00000001u)
/** MODE_VAL - field frame mode */
#define CSL_SSR_MODE_MODE_VAL_FRAME (0x00000002u)
/** MODE_VAL - field two-wire mode */
#define CSL_SSR_MODE_MODE_VAL_TWO_WIRE (0x00000003u)
/** MODE_VAL - field real-time mode */
#define CSL_SSR_MODE_MODE_VAL_REAL_TIME (0x00000004u)
/** MODE - field mode reset value */
#define CSL_SSR_MODE_RESETVAL (0x00000000u)
/* FRAMESIZE */
/** FRAME_VAL - field mask */
#define CSL_SSR_FRAMESIZE_FRAMESIZE_VAL_MASK (0x0000001Fu)
/** FRAME_VAL - field shift */
#define CSL_SSR_FRAMESIZE_FRAMESIZE_VAL_SHIFT (0x00000000u)
/** FRAME_VAL - field reset value */
#define CSL_SSR_FRAMESIZE_FRAMESIZE_VAL_RESETVAL (0x00000000u)
/** FRAMESIZE - field reset value */
#define CSL_SSR_FRAMESIZE_RESETVAL (0x00000000u)
/* RXSTATE */
/** RXSTATE_VAL - field mask */
#define CSL_SSR_RXSTATE_RXSTATE_VAL_MASK (0x00000007u)
/** RXSTATE_VAL - field shift */
#define CSL_SSR_RXSTATE_RXSTATE_VAL_SHIFT (0x00000000u)
/** RXSTATE_VAL - field shift */
#define CSL_SSR_RXSTATE_RXSTATE_VAL_RESETVAL (0x00000000u)
/*----RXSTATE_VAL Tokens----*/
/** RXSTATE_VAL - field idle state */
#define CSL_SSR_RXSTATE_RXSTATE_VAL_IDLE (0x00000000u)
/** RXSTATE_VAL - field receiving state */
#define CSL_SSR_RXSTATE_RXSTATE_VAL_RECEIVING (0x00000001u)
/** RXSTATE_VAL - field finished state */
#define CSL_SSR_RXSTATE_RXSTATE_VAL_FINISHED (0x00000002u)
/** RXSTATE_VAL - field error state */
#define CSL_SSR_RXSTATE_RXSTATE_VAL_ERROR (0x00000003u)
/** RXSTATE_VAL - field halt state */
#define CSL_SSR_RXSTATE_RXSTATE_VAL_HALT (0x00000004u)
/** RXSTATE_VAL - field timeout state */
#define CSL_SSR_RXSTATE_RXSTATE_VAL_TIME_OUT (0x00000005u)
/** RXSTATE - field reset value */
#define CSL_SSR_RXSTATE_RESETVAL (0x00000000u)
/* BUFSTATE */
/** BUFSTATE_VAL - field mask */
#define CSL_SSR_BUFSTATE_BUFSTATE_VAL_MASK (0x000000FFu)
/** BUFSTATE_VAL - field shift */
#define CSL_SSR_BUFSTATE_BUFSTATE_VAL_SHIFT (0x00000000u)
/** BUFSTATE_VAL - field reset value */
#define CSL_SSR_BUFSTATE_BUFSTATE_VAL_RESETVAL (0x00000000u)
/*----BUFSTATE_VAL Tokens----*/
/** BUFSTATE_VAL - field empty state */
#define CSL_SSR_BUFSTATE_BUFSTATE_VAL_EMPTY (0x00000000u)
/** BUFSTATE_VAL - field non-empty state */
#define CSL_SSR_BUFSTATE_BUFSTATE_VAL_NON_EMPTY (0x00000001u)
/** BUFSTATE - field reset value */
#define CSL_SSR_BUFSTATE_RESETVAL (0x00000000u)
/* BREAK */
/** BREAK_VAL - field mask */
#define CSL_SSR_BREAK_BREAK_VAL_MASK (0x00000001u)
/** BREAK_VAL - field shift */
#define CSL_SSR_BREAK_BREAK_VAL_SHIFT (0x00000000u)
/** BREAK_VAL - field reset value */
#define CSL_SSR_BREAK_BREAK_VAL_RESETVAL (0x00000000u)
/*----BREAK_VAL Tokens----*/
/** BREAK_VAL - field undetected */
#define CSL_SSR_BREAK_BREAK_VAL_UNDETECTED (0x00000000u)
/** BREAK_VAL - field detected */
#define CSL_SSR_BREAK_BREAK_VAL_DETECTED (0x00000001u)
/** BREAK - field reset value */
#define CSL_SSR_BREAK_RESETVAL (0x00000000u)
/* ERROR */
/** ERROR_VAL - field mask */
#define CSL_SSR_ERROR_ERROR_VAL_MASK (0x00000003u)
/** ERROR_VAL - field shift */
#define CSL_SSR_ERROR_ERROR_VAL_SHIFT (0x00000000u)
/** ERROR_VAL - field reset value */
#define CSL_SSR_ERROR_ERROR_VAL_RESETVAL (0x00000000u)
/*----ERROR_VAL Tokens----*/
/** ERRORACK_VAL - field no error */
#define CSL_SSR_ERROR_ERROR_VAL_NONE (0x00000000u)
/** ERRORACK_VAL - field signal error */
#define CSL_SSR_ERROR_ERROR_VAL_SIGNAL (0x00000001u)
/** ERRORACK_VAL - field timeout error */
#define CSL_SSR_ERROR_ERROR_VAL_TIMEOUT (0x00000002u)
/** ERROR - field reset value */
#define CSL_SSR_ERROR_RESETVAL (0x00000000u)
/* ERRORACK */
/** ERRORACK_VAL - field mask */
#define CSL_SSR_ERRORACK_ERRORACK_VAL_MASK (0x00000003u)
/** ERRORACK_VAL - field shift */
#define CSL_SSR_ERRORACK_ERRORACK_VAL_SHIFT (0x00000000u)
/** ERRORACK_VAL - field reset value */
#define CSL_SSR_ERRORACK_ERRORACK_VAL_RESETVAL (0x0000000u)
/*----ERRORACK_VAL Tokens----*/
/** ERRORACK_VAL - field no acknowledgement */
#define CSL_SSR_ERRORACK_ERRORACK_VAL_NONE (0x00000000u)
/** ERRORACK_VAL - field acknowledge signal error */
#define CSL_SSR_ERRORACK_ERRORACK_VAL_SIGNAL (0x00000001u)
/** ERRORACK_VAL - field acknowledge timeout error */
#define CSL_SSR_ERRORACK_ERRORACK_VAL_TIMEOUT (0x00000002u)
/** ERRORACK - field reset value */
#define CSL_SSR_ERRORACK_RESETVAL (0x00000000u)
/* CHANNELS */
/** CHANNEL_VAL - field mask */
#define CSL_SSR_CHANNELS_CHANNEL_VAL_MASK (0x0000000Fu)
/** CHANNEL_VAL - field shift */
#define CSL_SSR_CHANNELS_CHANNEL_VAL_SHIFT (0x00000000u)
/** CHANNEL_VAL - field reset value */
#define CSL_SSR_CHANNELS_CHANNEL_VAL_RESETVAL (0x00000001u)
/** CHANNELS - field reset value */
#define CSL_SSR_CHANNELS_RESETVAL (0x00000001u)
/* OVERRUN */
/** OVERRUN_VAL - field mask */
#define CSL_SSR_OVERRUN_OVERRUN_VAL_MASK (0x000000FFu)
/** OVERRUN_VAL - field shift */
#define CSL_SSR_OVERRUN_OVERRUN_VAL_SHIFT (0x00000000u)
/** OVERRUN_VAL - field reset value */
#define CSL_SSR_OVERRUN_OVERRUN_VAL_RESETVAL (0x00000000u)
/** OVERRUN - field reset value */
#define CSL_SSR_OVERRUN_RESETVAL (0x00000000u)
/* OVERRUNACK */
/** OVERRUNACK_VAL - field mask */
#define CSL_SSR_OVERRUNACK_OVERRUNACK_VAL_MASK (0x000000FFu)
/** OVERRUNACK_VAL - field shift */
#define CSL_SSR_OVERRUNACK_OVERRUNACK_VAL_SHIFT (0x00000000u)
/** OVERRUNACK_VAL - field reset value */
#define CSL_SSR_OVERRUNACK_OVERRUNACK_VAL_RESETVAL (0x00000000u)
/** OVERRUNACK - field reset value */
#define CSL_SSR_OVERRUNACK_RESETVAL (0x00000000u)
/* TIMEOUT */
/** TIMEOUT_VAL - field mask */
#define CSL_SSR_TIMEOUT_TIMEOUT_VAL_MASK (0x000001FFu)
/** TIMEOUT_VAL - field shift */
#define CSL_SSR_TIMEOUT_TIMEOUT_VAL_SHIFT (0x00000000u)
/** TIMEOUT_VAL - field reset value */
#define CSL_SSR_TIMEOUT_TIMEOUT_VAL_RESETVAL (0x00000000u)
/** TIMEOUT - field reset value */
#define CSL_SSR_TIMEOUT_RESETVAL (0x00000000u)
/* BUFFER_CH */
/** BUFFER_CH_VAL - field mask */
#define CSL_SSR_BUFFER_CH_BUFFER_CH_VAL_MASK (0xFFFFFFFFu)
/** BUFFER_CH0_VAL - field shift */
#define CSL_SSR_BUFFER_CH_BUFFER_CH_VAL_SHIFT (0x00000000u)
/** BUFFER_CH_VAL - field reset value */
#define CSL_SSR_BUFFER_CH_BUFFER_CH_VAL_RESETVAL (0x00000000u)
/** BUFFER_CH0 - field reset value */
#define CSL_SSR_BUFFER_CH_RESETVAL (0x00000000u)
/* SWAPBUFFER_CH */
/** SWAPBUFFER_CH_VAL - field mask */
#define CSL_SSR_SWAPBUFFER_CH_SWAPBUFFER_CH_VAL_MASK (0xFFFFFFFFu)
/** SWAPBUFFER_CH_VAL - field shift */
#define CSL_SSR_SWAPBUFFER_CH_SWAPBUFFER_CH_VAL_SHIFT (0x00000000u)
/** SWAPBUFFER_CH_VAL - field reset value */
#define CSL_SSR_SWAPBUFFER_CH_SWAPBUFFER_CH_VAL_RESETVAL (0x00000000u)
/** SWAPBUFFER_CH - field reset value */
#define CSL_SSR_SWAPBUFFER_CH_RESETVAL (0x00000000u)
#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?