summaryrefslogtreecommitdiffstats
path: root/src/usr/hwpf/hwp/initfiles/p8.pe.phase2.scom.initfile
blob: 827cb021d12b453fb91224b3cde321c269f512a1 (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
#-- $Id: p8.pe.phase2.scom.initfile,v 1.5 2013/11/13 17:20:20 jmcgill Exp $
#-------------------------------------------------------------------------------
#--
#-- (C) Copyright International Business Machines Corp. 2011
#-- All Rights Reserved -- Property of IBM
#-- *** IBM Confidential ***
#--
#-- TITLE       : p8.pcie.phase2.scom.initfile
#-- DESCRIPTION : Perform PCIe PBCQ/AIB Inits (Phase 2, Steps 9-17)
#--
#-- OWNER NAME  : Joe McDonald            Email: joemc@us.ibm.com
#-- OWNER NAME  : Rick Mata               Email: ricmata@us.ibm.com
#--
#--------------------------------------------------------------------------------

SyntaxVersion = 1

#--------------------------------------------------------------------------------
#-- Includes
#--------------------------------------------------------------------------------

#--------------------------------------------------------------------------------
#-- Defines
#--------------------------------------------------------------------------------

define def_nest_freq_r0 = (SYS.ATTR_FREQ_PB >= 2200);
define def_nest_freq_r1 = ((SYS.ATTR_FREQ_PB <= 1700) && (SYS.ATTR_FREQ_PB < 2200));
define def_nest_freq_r2 = (SYS.ATTR_FREQ_PB < 1700);

define enable_enh_ive_ordering = (ATTR_CHIP_EC_FEATURE_ENABLE_IVE_PERFORMANCE_ORDERING != 0);
define enable_dmar_ooo         = (ATTR_CHIP_EC_FEATURE_ENABLE_PCI_DMAR_OOO != 0);

#--------------------------------------------------------------------------------
#-- SCOM initializations
#--------------------------------------------------------------------------------

#-- PBCQ Mode Control Register
scom 0x02012(0,4,8)0B {
    bits,    scom_data,    expr;
    12,      0b1,          any;                                     #-- disable group scope on TCE read requests
    26,      0b1,          (enable_enh_ive_ordering);               #-- enable enhanced IVE performance ordering only where supported (HW226407)
    27,      0b1,          any;                                     #-- force IVE write operations to system scope
}

#-- PCI Hardware Configuration 0 Register
scom 0x02012(0,4,8)18 {
    bits,    scom_data;
    0:3,     0b0000;                                                #-- hang poll scale (reg=0, scale of 1)
    4:7,     0b0010;                                                #-- data poll scale (reg=2, scale of 3)
    8:11,    0b0000;                                                #-- data poll scale (PE) (reg=0, scale of 1)
    17,      0b1;                                                   #-- disable out-of-order store behavior
}

#-- PCI Hardware Configuration 1 Register
scom 0x02012(0,4,8)19 {
    bits,    scom_data;
    22,      0b0;                                                   #-- diable OOO DMA read
}

#-- PCI Nest Clock Trace Control Register
scom 0x02012(0,4,8)0D {
    bits,    scom_data;
    0:3,     0b1001;                                                #-- enable trace, select inbound + address info
}

#-- PB AIB Control/Status Register
scom 0x09012(0,4,8)0F {
    bits,    scom_data,    expr;
    0:2,     0b011,        (def_nest_freq_r0);                      #-- Maximum Ch0 command credit given to ETU
    0:2,     0b010,        (def_nest_freq_r1);
    0:2,     0b001,        (def_nest_freq_r2);
    3:5,     0b001,        any;                                     #-- Maximum Ch1 command credit given to ETU
    6:8,     0b011,        (def_nest_freq_r0);                      #-- Maximum Ch2 command credit given to ETU
    6:8,     0b010,        (def_nest_freq_r1 || def_nest_freq_r2);
    9:11,    0b000,        any;                                     #-- Maximum Ch3 command credit given to ETU
    12:13,   0b11,         any;                                     #-- Overcommit of inbound speed matching buffer (HW245629)
    30:31,   0b11,         any;                                     #-- enable PCI clock tracing w/ ETU as default
}
OpenPOWER on IntegriCloud