blob: 32ccc706e57e41c0fe7d815efa188bf5925f0b5d [file] [log] [blame]
/********************************************************************************
* Marvell GPL License Option
*
* If you received this File from Marvell, you may opt to use, redistribute and/or
* modify this File in accordance with the terms and conditions of the General
* Public License Version 2, June 1991 (the "GPL License"), a copy of which is
* available along with the File in the license.txt file or by writing to the Free
* Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 or
* on the worldwide web at http://www.gnu.org/licenses/gpl.txt.
*
* THE FILE IS DISTRIBUTED AS-IS, WITHOUT WARRANTY OF ANY KIND, AND THE IMPLIED
* WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE ARE EXPRESSLY
* DISCLAIMED. The GPL License provides additional details about this warranty
* disclaimer.
******************************************************************************/
//////
/// don't edit! auto-generated by docc: tsi.h
////////////////////////////////////////////////////////////
#ifndef tsi_h
#define tsi_h (){}
#include "ctypes.h"
#pragma pack(1)
#ifdef __cplusplus
extern "C" {
#endif
#ifndef _DOCC_H_BITOPS_
#define _DOCC_H_BITOPS_ (){}
#define _bSETMASK_(b) ((b)<32 ? (1<<((b)&31)) : 0)
#define _NSETMASK_(msb,lsb) (_bSETMASK_((msb)+1)-_bSETMASK_(lsb))
#define _bCLRMASK_(b) (~_bSETMASK_(b))
#define _NCLRMASK_(msb,lsb) (~_NSETMASK_(msb,lsb))
#define _BFGET_(r,msb,lsb) (_NSETMASK_((msb)-(lsb),0)&((r)>>(lsb)))
#define _BFSET_(r,msb,lsb,v) do{ (r)&=_NCLRMASK_(msb,lsb); (r)|=_NSETMASK_(msb,lsb)&((v)<<(lsb)); }while(0)
#endif
//////
///
/// $INTERFACE TSI biu (4,4)
/// # # ----------------------------------------------------------
/// @ 0x00000 status (WOC-)
/// %unsigned 1 extErr 0x0
/// ###
/// * 1: Error signal (of TS interface) was asserted.
/// * 0: No error.
/// ###
/// %unsigned 1 alErr 0x0
/// ###
/// * 1: Alignment error is detected internally, i.e., TSSYNC signal is asserted on a non-byte boundary.
/// * 0: No alignment error.
/// ###
/// %% 30 # Stuffing bits...
/// @ 0x00004 enable (P)
/// %unsigned 1 extErr 0x0
/// ###
/// * 1: Interrupt is asserted when status.extErr is high.
/// * 0: No interrupt is asserted because of status.extErr
/// ###
/// %unsigned 1 alErr 0x0
/// ###
/// * 1: Interrupt is asserted when status.alErr is high.
/// * 0: No interrupt is asserted because of status.alErr
/// ###
/// %% 30 # Stuffing bits...
/// # # ----------------------------------------------------------
/// $ENDOFINTERFACE # size: 8B, bits: 4b, padding: 0B
////////////////////////////////////////////////////////////
#ifndef h_TSI
#define h_TSI (){}
#define RA_TSI_status 0x0000
#define BA_TSI_status_extErr 0x0000
#define B16TSI_status_extErr 0x0000
#define LSb32TSI_status_extErr 0
#define LSb16TSI_status_extErr 0
#define bTSI_status_extErr 1
#define MSK32TSI_status_extErr 0x00000001
#define BA_TSI_status_alErr 0x0000
#define B16TSI_status_alErr 0x0000
#define LSb32TSI_status_alErr 1
#define LSb16TSI_status_alErr 1
#define bTSI_status_alErr 1
#define MSK32TSI_status_alErr 0x00000002
///////////////////////////////////////////////////////////
#define RA_TSI_enable 0x0004
#define BA_TSI_enable_extErr 0x0004
#define B16TSI_enable_extErr 0x0004
#define LSb32TSI_enable_extErr 0
#define LSb16TSI_enable_extErr 0
#define bTSI_enable_extErr 1
#define MSK32TSI_enable_extErr 0x00000001
#define BA_TSI_enable_alErr 0x0004
#define B16TSI_enable_alErr 0x0004
#define LSb32TSI_enable_alErr 1
#define LSb16TSI_enable_alErr 1
#define bTSI_enable_alErr 1
#define MSK32TSI_enable_alErr 0x00000002
///////////////////////////////////////////////////////////
typedef struct SIE_TSI {
///////////////////////////////////////////////////////////
#define GET32TSI_status_extErr(r32) _BFGET_(r32, 0, 0)
#define SET32TSI_status_extErr(r32,v) _BFSET_(r32, 0, 0,v)
#define GET16TSI_status_extErr(r16) _BFGET_(r16, 0, 0)
#define SET16TSI_status_extErr(r16,v) _BFSET_(r16, 0, 0,v)
#define GET32TSI_status_alErr(r32) _BFGET_(r32, 1, 1)
#define SET32TSI_status_alErr(r32,v) _BFSET_(r32, 1, 1,v)
#define GET16TSI_status_alErr(r16) _BFGET_(r16, 1, 1)
#define SET16TSI_status_alErr(r16,v) _BFSET_(r16, 1, 1,v)
#define w32TSI_status {\
UNSG32 ustatus_extErr : 1;\
UNSG32 ustatus_alErr : 1;\
UNSG32 RSVDx0_b2 : 30;\
}
union { UNSG32 u32TSI_status;
struct w32TSI_status;
};
///////////////////////////////////////////////////////////
#define GET32TSI_enable_extErr(r32) _BFGET_(r32, 0, 0)
#define SET32TSI_enable_extErr(r32,v) _BFSET_(r32, 0, 0,v)
#define GET16TSI_enable_extErr(r16) _BFGET_(r16, 0, 0)
#define SET16TSI_enable_extErr(r16,v) _BFSET_(r16, 0, 0,v)
#define GET32TSI_enable_alErr(r32) _BFGET_(r32, 1, 1)
#define SET32TSI_enable_alErr(r32,v) _BFSET_(r32, 1, 1,v)
#define GET16TSI_enable_alErr(r16) _BFGET_(r16, 1, 1)
#define SET16TSI_enable_alErr(r16,v) _BFSET_(r16, 1, 1,v)
#define w32TSI_enable {\
UNSG32 uenable_extErr : 1;\
UNSG32 uenable_alErr : 1;\
UNSG32 RSVDx4_b2 : 30;\
}
union { UNSG32 u32TSI_enable;
struct w32TSI_enable;
};
///////////////////////////////////////////////////////////
} SIE_TSI;
typedef union T32TSI_status
{ UNSG32 u32;
struct w32TSI_status;
} T32TSI_status;
typedef union T32TSI_enable
{ UNSG32 u32;
struct w32TSI_enable;
} T32TSI_enable;
///////////////////////////////////////////////////////////
typedef union TTSI_status
{ UNSG32 u32[1];
struct {
struct w32TSI_status;
};
} TTSI_status;
typedef union TTSI_enable
{ UNSG32 u32[1];
struct {
struct w32TSI_enable;
};
} TTSI_enable;
///////////////////////////////////////////////////////////
SIGN32 TSI_drvrd(SIE_TSI *p, UNSG32 base, SIGN32 mem, SIGN32 tst);
SIGN32 TSI_drvwr(SIE_TSI *p, UNSG32 base, SIGN32 mem, SIGN32 tst, UNSG32 *pcmd);
void TSI_reset(SIE_TSI *p);
SIGN32 TSI_cmp (SIE_TSI *p, SIE_TSI *pie, char *pfx, void *hLOG, SIGN32 mem, SIGN32 tst);
#define TSI_check(p,pie,pfx,hLOG) TSI_cmp(p,pie,pfx,(void*)(hLOG),0,0)
#define TSI_print(p, pfx,hLOG) TSI_cmp(p,0, pfx,(void*)(hLOG),0,0)
#endif
//////
/// ENDOFINTERFACE: TSI
////////////////////////////////////////////////////////////
#ifdef __cplusplus
}
#endif
#pragma pack()
#endif
//////
/// ENDOFFILE: tsi.h
////////////////////////////////////////////////////////////