// ========== Copyright Header Begin ==========================================
// OpenSPARC T2 Processor File: ccxDevicesDefines.vri
// Copyright (C) 1995-2007 Sun Microsystems, Inc. All Rights Reserved
// 4150 Network Circle, Santa Clara, California 95054, U.S.A.
// * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; version 2 of the License.
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
// For the avoidance of doubt, and except that if any non-GPL license
// choice is available it will apply instead, Sun elects to use only
// the General Public License version 2 (GPLv2) at this time for any
// software where a choice of GPL license versions is made
// available with the language indicating that GPLv2 or any later version
// may be used, or where a choice of which version of the GPL is applied is
// otherwise unspecified.
// Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
// CA 95054 USA or visit www.sun.com if you need additional information or
// ========== Copyright Header End ============================================
#ifndef INC__TMP_CCXDEVICEDEFINES_VRI
#define INC__TMP_CCXDEVICEDEFINES_VRI
//----------------------------------------------------------
// PCX Packet rqtyp Defines, actual - request
#define PCX_PREF 5'b00000
#define PCX_PREF_ICE 5'b00000
#define PCX_DIAG_LD 5'b00000
#define PCX_D_INVAL 5'b00000
#define PCX_IFILL 5'b10000
#define PCX_I_INVAL 5'b10000
#define PCX_BLK_ST 5'b00001
#define PCX_BLK_INIT_ST 5'b00001
#define PCX_DIAG_ST 5'b00001
#define PCX_CAS1 5'b00010
#define PCX_CAS2 5'b00011
#define PCX_SWAP 5'b00111
#define PCX_STR_LD 5'b00100
#define PCX_STR_ST 5'b00101
#define PCX_MMU_LD 5'b01000
#define PCX_FLUSH 5'b01001
// PCX Packet rqtyp Defines, unique
#define U_PCX_PREF_ICE 16
#define U_PCX_BLK_INIT_ST 17
// CPX Packet rtntyp Defines, actual - return
#define CPX_PREF_ICE 4'b0000
#define CPX_DIAG_LD 4'b0000
#define CPX_NCU_LD 4'b1000
#define CPX_D_INVAL 4'b0100
#define CPX_IFILL 4'b0001
#define CPX_NCU_IFILL 4'b1001
#define CPX_I_INVAL 4'b0100
#define CPX_DIAG_ST 4'b0100
#define CPX_CAS_RTN 4'b0000
#define CPX_CAS_ACK 4'b0100
#define CPX_SWAP_RTN 4'b0000
#define CPX_SWAP_ACK 4'b0100
#define CPX_STR_LD 4'b0010
#define CPX_STR_ST 4'b0110
#define CPX_MMU_RTN 4'b0101
#define CPX_EVICT 4'b0011
#define CPX_ERROR_L2 4'b1100
#define CPX_ERROR_SOC 4'b1101
#define CPX_BLK_ST 4'b0100
#define CPX_FLUSH 4'b0111
// CPX Packet rtntyp Defines, unique
#define U_CPX_SWAP_RTN 11
#define U_CPX_SWAP_ACK 12
#define U_CPX_ERROR_L2 18
#define U_CPX_ERROR_SOC 21
#define U_CPX_NCU_IFILL 22
#define U_CPX_PREF_ICE 23
#define INTR_RESUME 2'b11
#define INTR_POR 6'b000001
#define INTR_XIR 6'b000011
// #define IO_ASI_ADDR 8'h90
// #define ASI_CMP_CORE 8'h41
// #define ASI_CMP_CORE_AVAIL 18'h000
// #define ASI_CMP_CORE_ENABLED 18'h010
// #define ASI_CMP_CORE_ENABLE 18'h020
// #define ASI_CMP_XIR_STEERING 18'h030
// #define ASI_CMP_ERROR_STEERING 18'h040
// #define ASI_CMP_CORE_RUNNING_RW 18'h050
// #define ASI_CMP_CORE_RUNNING_STATUS 18'h058
// #define ASI_CMP_CORE_RUNNING_W1S 18'h060
// #define ASI_CMP_CORE_RUNNING_W1C 18'h068
// "same cache line address".
#define CACHE_LINE_MASK 64'h0000007fffffffc0
//#define IDLE_DATA {urandom(),urandom(),urandom(),urandom()}
#define IDLE_DATA 128'hDEAD_BEEF_DEAD_BEEF_DEAD_BEEF_DEAD_BEEF
//----------------------------------------------------------
//----------------------------------------------------------