summaryrefslogtreecommitdiffstats
path: root/src/usr/hwpf/hwp/dram_training/mss_funcs.H
diff options
context:
space:
mode:
authorMark Wenning <wenning@us.ibm.com>2012-02-28 12:15:00 -0600
committerA. Patrick Williams III <iawillia@us.ibm.com>2012-03-13 15:55:33 -0500
commit034d5adf483e55a961719122261e15eb4d72227c (patch)
tree7b3f1ec75906b63b04d78ca182810a63db9c6275 /src/usr/hwpf/hwp/dram_training/mss_funcs.H
parent45a4f6fd8245b4c41c8f2fcd8c424acf6ebda8be (diff)
downloadtalos-hostboot-034d5adf483e55a961719122261e15eb4d72227c.tar.gz
talos-hostboot-034d5adf483e55a961719122261e15eb4d72227c.zip
ISTEP 13: dram_training
RTC37081 - HWP Integration: mss_draminit. Add to Hostboot RTC37087 - HWP Integration: mss_draminit_training. Add to Hostboot RTC37093 - HWP Integration: mss_draminit_mc. Add to Hostboot - branch mss_draminit Checking in all 3 as one because of common files mss_funcs.H, memory_errors.xml review fixes (remove extra trace, change draminit_mc target to centaur ) update to new levels of mss_func, mss_draminit and mss_draminit_mc Depends on Change Ib83227b1: Add code to set MBA's under Centaurs functional Change-Id: I77463d9b8482ad6bc1884baf05d6b6c2dde48b7c Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/707 Tested-by: Jenkins Server Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/usr/hwpf/hwp/dram_training/mss_funcs.H')
-rw-r--r--src/usr/hwpf/hwp/dram_training/mss_funcs.H204
1 files changed, 204 insertions, 0 deletions
diff --git a/src/usr/hwpf/hwp/dram_training/mss_funcs.H b/src/usr/hwpf/hwp/dram_training/mss_funcs.H
new file mode 100644
index 000000000..84143c3ff
--- /dev/null
+++ b/src/usr/hwpf/hwp/dram_training/mss_funcs.H
@@ -0,0 +1,204 @@
+// IBM_PROLOG_BEGIN_TAG
+// This is an automatically generated prolog.
+//
+// $Source: src/usr/hwpf/hwp/dram_training/mss_funcs.H $
+//
+// IBM CONFIDENTIAL
+//
+// COPYRIGHT International Business Machines Corp. 2012
+//
+// p1
+//
+// Object Code Only (OCO) source materials
+// Licensed Internal Code Source Materials
+// IBM HostBoot Licensed Internal Code
+//
+// The source code for this program is not published or other-
+// wise divested of its trade secrets, irrespective of what has
+// been deposited with the U.S. Copyright Office.
+//
+// Origin: 30
+//
+// IBM_PROLOG_END
+/* File mss_funcs.H created by SLOAT JACOB D. (JAKE),2D3970 on Fri Apr 22 2011. */
+
+//------------------------------------------------------------------------------
+// *! (C) Copyright International Business Machines Corp. 2007
+// *! All Rights Reserved -- Property of IBM
+// *! *** IBM Confidential ***
+//------------------------------------------------------------------------------
+// *! TITLE : mss_funcs.H
+// *! DESCRIPTION : Tools for centaur procedures
+// *! OWNER NAME :
+// *! BACKUP NAME :
+// #! ADDITIONAL COMMENTS :
+//
+// CCS related and general utility functions.
+
+//------------------------------------------------------------------------------
+// Don't forget to create CVS comments when you check in your changes!
+//------------------------------------------------------------------------------
+// CHANGE HISTORY:
+//------------------------------------------------------------------------------
+// Version:| Author: | Date: | Comment:
+//---------|----------|---------|-----------------------------------------------
+// 1.10 | 2/14/12 | jdsloat | Comment section filled in, elimated unnecessary constant, added enums
+// 1.9 | 2/08/12 | jdsloat | Target to Target&
+// 1.8 | 2/02/12 | jdsloat | Added fapi:: to arguments in function prototypes
+// 1.7 | 1/13/12 | jdsloat | Capatilization, cleaned up includes, address names, "mss_" prefix, argument prefix
+// 1.6 | 1/6/12 | jdsloat | Added a function call
+// 1.5 | 1/5/12 | jdsloat | Got rid of Globals
+// 1.4 | 10/31/11 | jdsloat | CCS Update - goto_inst now assumed to be +1, CCS_fail fix, CCS_status fix
+// 1.3 | 10/06/11 | jdsloat | argument data type fix
+// 1.2 | 10/05/11 | jdsloat | Convert integers to ecmdDataBufferBase in CCS_INST_1, CCS_INST_2, CCS_MODE
+// 1.1 | 10/04/11 | jdsloat | First drop of Centaur in FAPI dir
+//---------|----------|---------|-----------------------------------------------
+// 1.6 | 09/29/11 | jdsloat | global CCS counts, port added to calls, temp dimms defined as #
+// 1.5 | 09/27/11 | jdsloat | Added port information.
+// 1.4 | 09/22/11 | jdsloat | Full update to FAPI. Functional changes to match procedure.
+// 1.3 | 09/13/11 | jdsloat | First attempt at FAPI upgrade - attributes still in ecmd
+// 1.00 | 04/22/11 | jdsloat | First drop of Centaur
+
+#ifndef _MSS_FUNCS_H
+#define _MSS_FUNCS_H
+
+//----------------------------------------------------------------------
+// Constants for CCS Operations
+//----------------------------------------------------------------------
+const uint64_t CCS_INST_ARRY0_AB_REG0_0x03010615 = 0x03010615;
+const uint64_t CCS_INST_ARRY1_AB_REG0_0x03010635 = 0x03010635;
+
+const uint64_t CCS_CNTLQ_AB_REG_0x030106A5 = 0x030106A5;
+const uint64_t CCS_MODEQ_AB_REG_0x030106A7 = 0x030106A7;
+const uint64_t CCS_STATQ_AB_REG_0x030106A6 = 0x030106A6;
+const uint64_t MBA01_CALFIR_REG_0x03010402 = 0x03010402;
+
+
+//----------------------------------------------------------------------
+// Enums for CCS Operations
+//----------------------------------------------------------------------
+
+enum mss_ccs_status_query_result
+{
+ MSS_STAT_QUERY_PASS = 1,
+ MSS_STAT_QUERY_IN_PROGRESS = 2,
+ MSS_STAT_QUERY_FAIL = 3
+};
+
+
+
+const bool MSS_CCS_START = 0;
+const bool MSS_CCS_STOP = 1;
+
+
+//----------------------------------------------------------------------
+// CCS FUNCS
+//----------------------------------------------------------------------
+
+//--------------------------------------------------------------
+// mss_ccs_inst_arry_0
+// Adding information to the CCS - 0 instruction array by index
+// Target = centaur.mba
+//--------------------------------------------------------------
+fapi::ReturnCode mss_ccs_inst_arry_0( fapi::Target& i_target,
+ uint32_t& io_instruction_number,
+ ecmdDataBufferBase i_address,
+ ecmdDataBufferBase i_bank,
+ ecmdDataBufferBase i_activate,
+ ecmdDataBufferBase i_rasn,
+ ecmdDataBufferBase i_casn,
+ ecmdDataBufferBase i_wen,
+ ecmdDataBufferBase i_cke,
+ ecmdDataBufferBase i_csn,
+ ecmdDataBufferBase i_odt,
+ ecmdDataBufferBase i_ddr_cal_type,
+ uint32_t i_port);
+
+//--------------------------------------------------------------
+// mss_ccs_inst_arry_1
+// Adding information to the CCS - 1 instruction array by index
+// Target = centaur.mba
+//--------------------------------------------------------------
+fapi::ReturnCode mss_ccs_inst_arry_1( fapi::Target& i_target,
+ uint32_t& io_instruction_number,
+ ecmdDataBufferBase i_num_idles,
+ ecmdDataBufferBase i_num_repeat,
+ ecmdDataBufferBase i_data,
+ ecmdDataBufferBase i_read_compare,
+ ecmdDataBufferBase i_rank_cal,
+ ecmdDataBufferBase i_ddr_cal_enable,
+ ecmdDataBufferBase i_ccs_end);
+
+//-----------------------------------------
+// mss_ccs_status_query
+// Querying the status of the CCS
+// Target = centaur.mba
+//-----------------------------------------
+fapi::ReturnCode mss_ccs_status_query( fapi::Target& i_target,
+ mss_ccs_status_query_result& io_status);
+
+//-----------------------------------------
+// mss_ccs_start_stop
+// Issuing a start or stop of the CCS
+// Target = centaur.mba
+//-----------------------------------------
+fapi::ReturnCode mss_ccs_start_stop( fapi::Target& i_target,
+ uint32_t i_start_stop);
+
+//----------------------------------------------
+// mss_ccs_mode
+// Adding info the the Mode Register of the CCS
+// Target = centaur.mba
+//----------------------------------------------
+fapi::ReturnCode mss_ccs_mode( fapi::Target& i_target,
+ ecmdDataBufferBase i_stop_on_err,
+ ecmdDataBufferBase i_ue_disable,
+ ecmdDataBufferBase i_data_sel,
+ ecmdDataBufferBase i_pclk,
+ ecmdDataBufferBase i_nclk,
+ ecmdDataBufferBase i_cal_time_cnt,
+ ecmdDataBufferBase i_resetn,
+ ecmdDataBufferBase i_reset_recover,
+ ecmdDataBufferBase i_copy_spare_cke);
+
+//-----------------------------------------
+// mss_ccs_fail_type
+// Extracting the type of ccs fail
+// Target = centaur.mba
+//-----------------------------------------
+fapi::ReturnCode mss_ccs_fail_type( fapi::Target& i_target);
+
+//-----------------------------------
+// mss_execute_ccs_inst_array
+// Execute the CCS intruction array
+// Target = centaur.mba
+//-----------------------------------
+fapi::ReturnCode mss_execute_ccs_inst_array( fapi::Target& i_target,
+ uint32_t i_num_poll,
+ uint32_t i_wait_timer);
+
+//-------------------------------------------
+// mss_ccs_set_end_bit
+// Setting the End location of the CCS array
+// Target = centaur.mba
+//-------------------------------------------
+fapi::ReturnCode mss_ccs_set_end_bit( fapi::Target& i_target,
+ uint32_t i_instruction_number);
+
+//--------------------------------------------------------
+// mss_rcd_parity_check
+// Checking the Parity Error Bits associated with the RCD
+// Target = centaur.mba
+//--------------------------------------------------------
+fapi::ReturnCode mss_rcd_parity_check(fapi::Target& i_target,
+ uint32_t i_port);
+
+//-----------------------------------------
+// mss_reverse_32bits, mss_reverse_8bits
+// Reversing bit order of 8 or 32 bit uint
+//-----------------------------------------
+uint32_t mss_reverse_32bits( uint32_t i_x);
+uint8_t mss_reverse_8bits(uint8_t i_number);
+
+#endif /* _MSS_FUNCS_H */
+
OpenPOWER on IntegriCloud