📄 hubxb.h
字号:
/* $Id: hubxb.h,v 1.1.1.1 2004/02/04 12:57:43 laputa Exp $ * * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive * for more details. * * Copyright (C) 1992 - 1997, 2000 Silicon Graphics, Inc. * Copyright (C) 2000 by Colin Ngam */#ifndef _ASM_SN_SN1_HUBXB_H#define _ASM_SN_SN1_HUBXB_H/************************************************************************ * * * WARNING!!! WARNING!!! WARNING!!! WARNING!!! WARNING!!! * * * * This file is created by an automated script. Any (minimal) changes * * made manually to this file should be made with care. * * * * MAKE ALL ADDITIONS TO THE END OF THIS FILE * * * ************************************************************************/#define XB_PARMS 0x00700000 /* * Controls * crossbar-wide * parameters. */#define XB_SLOW_GNT 0x00700008 /* * Controls wavefront * arbiter grant * frequency, used to * slow XB grants */#define XB_SPEW_CONTROL 0x00700010 /* * Controls spew * settings (debug * only). */#define XB_IOQ_ARB_TRIGGER 0x00700018 /* * Controls IOQ * trigger level */#define XB_FIRST_ERROR 0x00700090 /* * Records the first * crossbar error * seen. */#define XB_POQ0_ERROR 0x00700020 /* * POQ0 error * register. */#define XB_PIQ0_ERROR 0x00700028 /* * PIQ0 error * register. */#define XB_POQ1_ERROR 0x00700030 /* * POQ1 error * register. */#define XB_PIQ1_ERROR 0x00700038 /* * PIQ1 error * register. */#define XB_MP0_ERROR 0x00700040 /* * MOQ for PI0 error * register. */#define XB_MP1_ERROR 0x00700048 /* * MOQ for PI1 error * register. */#define XB_MMQ_ERROR 0x00700050 /* * MOQ for misc. (LB, * NI, II) error * register. */#define XB_MIQ_ERROR 0x00700058 /* * MIQ error register, * addtional MIQ * errors are logged * in MD "Input * Error * Registers". */#define XB_NOQ_ERROR 0x00700060 /* NOQ error register. */#define XB_NIQ_ERROR 0x00700068 /* NIQ error register. */#define XB_IOQ_ERROR 0x00700070 /* IOQ error register. */#define XB_IIQ_ERROR 0x00700078 /* IIQ error register. */#define XB_LOQ_ERROR 0x00700080 /* LOQ error register. */#define XB_LIQ_ERROR 0x00700088 /* LIQ error register. */#define XB_DEBUG_DATA_CTL 0x00700098 /* * Debug Datapath * Select */#define XB_DEBUG_ARB_CTL 0x007000A0 /* * XB master debug * control */#define XB_POQ0_ERROR_CLEAR 0x00700120 /* * Clears * XB_POQ0_ERROR * register. */#define XB_PIQ0_ERROR_CLEAR 0x00700128 /* * Clears * XB_PIQ0_ERROR * register. */#define XB_POQ1_ERROR_CLEAR 0x00700130 /* * Clears * XB_POQ1_ERROR * register. */#define XB_PIQ1_ERROR_CLEAR 0x00700138 /* * Clears * XB_PIQ1_ERROR * register. */#define XB_MP0_ERROR_CLEAR 0x00700140 /* * Clears XB_MP0_ERROR * register. */#define XB_MP1_ERROR_CLEAR 0x00700148 /* * Clears XB_MP1_ERROR * register. */#define XB_MMQ_ERROR_CLEAR 0x00700150 /* * Clears XB_MMQ_ERROR * register. */#define XB_XM_MIQ_ERROR_CLEAR 0x00700158 /* * Clears XB_MIQ_ERROR * register */#define XB_NOQ_ERROR_CLEAR 0x00700160 /* * Clears XB_NOQ_ERROR * register. */#define XB_NIQ_ERROR_CLEAR 0x00700168 /* * Clears XB_NIQ_ERROR * register. */#define XB_IOQ_ERROR_CLEAR 0x00700170 /* * Clears XB_IOQ * _ERROR register. */#define XB_IIQ_ERROR_CLEAR 0x00700178 /* * Clears XB_IIQ * _ERROR register. */#define XB_LOQ_ERROR_CLEAR 0x00700180 /* * Clears XB_LOQ_ERROR * register. */#define XB_LIQ_ERROR_CLEAR 0x00700188 /* * Clears XB_LIQ_ERROR * register. */#define XB_FIRST_ERROR_CLEAR 0x00700190 /* * Clears * XB_FIRST_ERROR * register */#ifdef _LANGUAGE_C/************************************************************************ * * * Access to parameters which control various aspects of the * * crossbar's operation. * * * ************************************************************************/#ifdef LITTLE_ENDIANtypedef union xb_parms_u { bdrkreg_t xb_parms_regval; struct { bdrkreg_t p_byp_en : 1; bdrkreg_t p_rsrvd_1 : 3; bdrkreg_t p_age_wrap : 8; bdrkreg_t p_deadlock_to_wrap : 20; bdrkreg_t p_tail_to_wrap : 20; bdrkreg_t p_rsrvd : 12; } xb_parms_fld_s;} xb_parms_u_t;#elsetypedef union xb_parms_u { bdrkreg_t xb_parms_regval; struct { bdrkreg_t p_rsrvd : 12; bdrkreg_t p_tail_to_wrap : 20; bdrkreg_t p_deadlock_to_wrap : 20; bdrkreg_t p_age_wrap : 8; bdrkreg_t p_rsrvd_1 : 3; bdrkreg_t p_byp_en : 1; } xb_parms_fld_s;} xb_parms_u_t;#endif/************************************************************************ * * * Sets the period of wavefront grants given to each unit. The * * register's value corresponds to the number of cycles between each * * wavefront grant opportunity given to the requesting unit. If set * * to 0xF, no grants are given to this unit. If set to 0xE, the unit * * is granted at the slowest rate (sometimes called "molasses mode"). * * This feature can be used to apply backpressure to a unit's output * * queue(s). The setting does not affect bypass grants. * * * ************************************************************************/#ifdef LITTLE_ENDIANtypedef union xb_slow_gnt_u { bdrkreg_t xb_slow_gnt_regval; struct { bdrkreg_t sg_lb_slow_gnt : 4; bdrkreg_t sg_ii_slow_gnt : 4; bdrkreg_t sg_ni_slow_gnt : 4; bdrkreg_t sg_mmq_slow_gnt : 4; bdrkreg_t sg_mp1_slow_gnt : 4; bdrkreg_t sg_mp0_slow_gnt : 4; bdrkreg_t sg_pi1_slow_gnt : 4; bdrkreg_t sg_pi0_slow_gnt : 4; bdrkreg_t sg_rsrvd : 32; } xb_slow_gnt_fld_s;} xb_slow_gnt_u_t;#elsetypedef union xb_slow_gnt_u { bdrkreg_t xb_slow_gnt_regval; struct { bdrkreg_t sg_rsrvd : 32; bdrkreg_t sg_pi0_slow_gnt : 4; bdrkreg_t sg_pi1_slow_gnt : 4; bdrkreg_t sg_mp0_slow_gnt : 4; bdrkreg_t sg_mp1_slow_gnt : 4; bdrkreg_t sg_mmq_slow_gnt : 4; bdrkreg_t sg_ni_slow_gnt : 4; bdrkreg_t sg_ii_slow_gnt : 4; bdrkreg_t sg_lb_slow_gnt : 4; } xb_slow_gnt_fld_s;} xb_slow_gnt_u_t;#endif/************************************************************************ * * * Enables snooping of internal crossbar traffic by spewing all * * traffic across a selected crossbar point to the PI1 port. Only one * * bit should be set at any one time, and any bit set will preclude * * using the P1 for anything but a debug connection. * * * ************************************************************************/#ifdef LITTLE_ENDIANtypedef union xb_spew_control_u { bdrkreg_t xb_spew_control_regval; struct { bdrkreg_t sc_snoop_liq : 1; bdrkreg_t sc_snoop_iiq : 1; bdrkreg_t sc_snoop_niq : 1; bdrkreg_t sc_snoop_miq : 1; bdrkreg_t sc_snoop_piq0 : 1; bdrkreg_t sc_snoop_loq : 1; bdrkreg_t sc_snoop_ioq : 1; bdrkreg_t sc_snoop_noq : 1; bdrkreg_t sc_snoop_mmq : 1; bdrkreg_t sc_snoop_mp0 : 1; bdrkreg_t sc_snoop_poq0 : 1; bdrkreg_t sc_rsrvd : 53; } xb_spew_control_fld_s;} xb_spew_control_u_t;#elsetypedef union xb_spew_control_u { bdrkreg_t xb_spew_control_regval; struct { bdrkreg_t sc_rsrvd : 53; bdrkreg_t sc_snoop_poq0 : 1; bdrkreg_t sc_snoop_mp0 : 1; bdrkreg_t sc_snoop_mmq : 1; bdrkreg_t sc_snoop_noq : 1; bdrkreg_t sc_snoop_ioq : 1; bdrkreg_t sc_snoop_loq : 1; bdrkreg_t sc_snoop_piq0 : 1; bdrkreg_t sc_snoop_miq : 1; bdrkreg_t sc_snoop_niq : 1; bdrkreg_t sc_snoop_iiq : 1; bdrkreg_t sc_snoop_liq : 1; } xb_spew_control_fld_s;} xb_spew_control_u_t;#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -