// ========== Copyright Header Begin ========================================== // // OpenSPARC T2 Processor File: general_csr_defines.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 // have any questions. // // ========== Copyright Header End ============================================ #define BOOLEAN bit #define ZEROS 64'b0 #define CSRT_CHECK_DISABLED 0 #define CSRT_CHECK_ENABLED 1 #define CSRT_ALL_OUTPUT_MSG_DISABLED 0 #define CSRT_ERROR_MSG_ONLY_ENABLED 1 #define CSRT_WARNING_MSG_ENABLED 2 #define CSRT_COLLECTION_LEVEL_MSG_ENABLED 3 #define CSRT_ACCESSOR_LEVEL_MSG_ENABLED 4 #define CSRT_ALL_OUTPUT_MSG_ENABLED 5 #define CSRT_SUCCESSFUL_RETURN_CODE 1 #define CSRT_MISMATCH_RETURN_CODE 0 #define CSRT_ADDR_OFFSET_WIDTH 64 #define CSRT_MODE_WIDTH 64 #define CSRT_DATA_WIDTH 64 #define CSRT_ADDR_WIDTH 32 #define CSRT_ERROR_WIDTH 64 #define CSRT_NO_ACCESS 0 #define CSRT_READ_ACCESS 1 #define CSRT_FULL_ACCESS 2 #define CSRT_HW_ACCESS 3 //access mode bits #define CSRT_ZERO_TIME_ACCESS 0 #define CSRT_DIAG_MODE 1 #define CSRT_USE_DEFAULT_METHOD -1 // Sentinel to indicate use of default access method. // Not used outside of CSRAccessor class. #define CSRT_SB_DEFAULT_ROUTING_FIELD 20'h80001 #define CSRT_SB_WRITE_NO_WAIT_POS 32 #define CSRT_SB_WRITE_NO_WAIT ((64'h1 << CSRT_SB_WRITE_NO_WAIT_POS) | CSRT_SB_DEFAULT_ROUTING_FIELD) #define CSRT_SB_WRITE_WAIT ((64'h0 << CSRT_SB_WRITE_NO_WAIT_POS) | CSRT_SB_DEFAULT_ROUTING_FIELD) //These are conventions for TID reporting with non-omni CSR access. #define CSRT_ACCESS_METHOD_CONTEXT_NUM 1000 #define CSRT_SBUS_STRATEGY_NUM 100 #define CSRT_RAP_STRATEGY_NUM 200 #define M8B_MAX_EVENT 8 #define M8B_FE_POSITION 63 #define M8B_ME_POSITION 62