aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrederic Barrat <fbarrat@linux.vnet.ibm.com>2016-08-08 16:29:19 +0200
committerStewart Smith <stewart@linux.vnet.ibm.com>2016-08-24 16:52:27 +1000
commitec1cf514b83eb22c57bf8aa65d8acd712759a0c2 (patch)
tree587ff928f70acd01cda06dc90b5826798ffad19a
parent3560f4030ec456b408188b64e622926a6330c4f8 (diff)
downloadskiboot-ec1cf514b83eb22c57bf8aa65d8acd712759a0c2.zip
skiboot-ec1cf514b83eb22c57bf8aa65d8acd712759a0c2.tar.gz
skiboot-ec1cf514b83eb22c57bf8aa65d8acd712759a0c2.tar.bz2
hw/phb3: Update capi initialization sequence
The capi initialization sequence was revised in a circumvention document when a 'link down' error was converted from fatal to Endpoint Recoverable. Other, non-capi, register setup was corrected even before the initial open-source release of skiboot, but a few capi-related registers were not updated then, so this patch fixes it. The point is that a link-down error detected by the UTL logic will lead to an AIB fence, so that the CAPP unit can detect the error. Signed-off-by: Frederic Barrat <fbarrat@linux.vnet.ibm.com> Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com> (cherry picked from commit e36f4f219b642c6c5032208fca7191fbd75fe1a3) Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
-rw-r--r--hw/phb3.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/hw/phb3.c b/hw/phb3.c
index 5d865f6..4c27309 100644
--- a/hw/phb3.c
+++ b/hw/phb3.c
@@ -3287,10 +3287,11 @@ static void phb3_init_capp_regs(struct phb3 *p)
/* override some inits with CAPI defaults */
static void phb3_init_capp_errors(struct phb3 *p)
{
- out_be64(p->regs + PHB_ERR_AIB_FENCE_ENABLE, 0xffffffdd0c80ffc0);
+ out_be64(p->regs + PHB_ERR_AIB_FENCE_ENABLE, 0xffffffdd8c80ffc0);
out_be64(p->regs + PHB_OUT_ERR_AIB_FENCE_ENABLE, 0x9cf3fe08f8dc700f);
out_be64(p->regs + PHB_INA_ERR_AIB_FENCE_ENABLE, 0xffff57fbff01ffde);
out_be64(p->regs + PHB_INB_ERR_AIB_FENCE_ENABLE, 0xfcffe0fbff7ff0ec);
+ out_be64(p->regs + PHB_LEM_ERROR_MASK, 0x40018e2400022482);
}
static int64_t phb3_set_capi_mode(struct phb *phb, uint64_t mode,