blob: 43a2a3e5c614d1f8c0b9fdcda0a87b11b7146cff (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
|
/* IBM_PROLOG_BEGIN_TAG
* This is an automatically generated prolog.
*
* $Source: src/usr/hwpf/hwp/build_winkle_images/proc_slw_build/p8_pore_api_const.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_TAG
*/
/* $Id: p8_pore_api_const.h,v 1.1 2011/08/25 12:32:33 yjkim Exp $ */
/* $Source: /afs/awd/projects/eclipz/KnowledgeBase/.cvsroot/eclipz/chips/p8/working/procedures/utils/p8_pore_api_const.h,v $ */
/**
* Contains any constants uses as inputs or outputs to the p7p_pore functions
*/
/****************************/
/***** SCOM Operators *****/
/****************************/
#define P8_PORE_SCOM_APPEND 0 /* add scom instructions to the end of the existing image */
#define P8_PORE_SCOM_REPLACE 1 /* replace existing instructions with new data */
#define P8_PORE_SCOM_OR 2 /* overlay scom data onto existing instruction by bitwise OR */
#define P8_PORE_SCOM_AND 3 /* overlay scom data onto existing instruction by bitwise AND */
#define P8_PORE_SCOM_NOOP 4 /* replace existing instructions with NOP */
#define P8_PORE_SCOM_LAST_OP 4 /* keep track of the last op for checking correctness of op input */
/***************************/
/***** CPU Registers *****/
/***************************/
#define P8_PORE_HSPRG0 304
#define P8_PORE_HRMOR 313
#define P8_PORE_LPCR 318
#define P8_PORE_HMEER 337
#define P8_PORE_HID0 1008
#define P8_PORE_HID1 1009
#define P8_PORE_HID4 1012
#define P8_PORE_HID5 1014
#define P8_PORE_MSR 2000
/****************************/
/***** Branch Types *****/
/****************************/
#define P8_PORE_BRA_REL 0 /* generate relative branch instruction */
#define P8_PORE_BRA_SUB 1 /* generate branch to subroutine instruction */
/**************************/
/***** Return Codes *****/
/**************************/
#define P8_PORE_SUCCESS_RC 0x00000000 /* Success, no errors */
#define P8_PORE_IMAGE_TOO_BIG_RC 0x00000001 /* size of PORE image exceeded allowed space */
#define P8_PORE_BAD_ARG_RC 0x00000002 /* some input argument is nonsensical */
#define P8_PORE_NO_ADDR_FOUND_RC 0x00000003 /* address to overlay not found */
#define P8_PORE_MULT_ADDR_FOUND_RC 0x00000004 /* address to replace/overlay found multiple times */
#define P8_PORE_MULT_SPR_FOUND_RC 0x00000005 /* spr to add/replace found multiple times*/
#define P8_PORE_BAD_RING_ADDR_RC 0x00000006 /* don't recognize the ring addr*/
/* may need to include errors for 128byte_bound check and cpureg_status check */
/*...etc...*/
/*
*************** Do not edit this area ***************
This section is automatically updated by CVS when you check in this file.
Be sure to create CVS comments when you commit so that they can be included here.
$Log: p8_pore_api_const.h,v $
Revision 1.1 2011/08/25 12:32:33 yjkim
initial checkin
Revision 1.7 2010/11/03 19:13:16 schwartz
Added code to gen_cpureg to handle changes to MSR
Revision 1.6 2010/08/30 23:27:16 schwartz
Added TRACE statements to include specified number of arguments
Defined branch type constants
Added constant for last scom op used to check if operation input to gen_scan is valid
Added mult spr error constant
Added p7p_pore_gen_wait API
Changed additional C++ style comments to C style
Initialized all variables to 0
Removed FTRACE statements
Added additional information to trace statements
Updated gen_scom to use the defined operation constants
Updated branch gen_relbranch to use defined branch type constants
Added rc check for calls to p7p_pore_gen_cpureg_status and p7p_pore_span_128byte_boundary subroutines
Revision 1.5 2010/08/26 15:13:34 schwartz
Fixed more C++ style comments to C style comments
Revision 1.4 2010/08/26 03:57:02 schwartz
Changed comments to C-style
Changed "" to <> for #includes
Moved RINGINFO struct and RINGINDEX constant into separate object file, includes created static_data.h file
Put p7p_pore in front of #defines
Removed ring length from ringInfoStruct
Renamed scom operators to have SCOM in the name
Fixed gen_scan to use SCANRD and SCANWR pore instructions
Fixed compiler warnings
Revision 1.3 2010/06/23 23:07:40 schwartz
Updated define statements for SPRs, constant values are actual SPR values from Book IV
Revision 1.2 2010/05/24 02:33:14 schwartz
Fixed errors that appear when using -Werrors flag
Added in cvs logging (hopefully)
*/
|