Skip to content

Commit

Permalink
OCMB MMIO error handling
Browse files Browse the repository at this point in the history
Added the following
-Error checking and FRU isolation on explorer side
-Cleaned up MMIO write error handling to read an MMIO
 error register
-Fixed and enabled MMIO test cases
-Moved parameter checking and channel checkstop checking
 into seperate functions.
-Only check for channel checkstop for the channel that an
 OCMB is connected to.
-Switch to using I2C on first MMIO failure.

Change-Id: I5e997c5177f8a68a2966f837acc9b578a4cc1897
RTC:201588
RTC:201901
RTC:202533
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/77859
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com>
Reviewed-by: Matt Derksen <mderkse1@us.ibm.com>
Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
  • Loading branch information
milesg-github authored and dcrowell77 committed Jun 7, 2019
1 parent ca91046 commit 5634271
Show file tree
Hide file tree
Showing 8 changed files with 1,460 additions and 350 deletions.
7 changes: 7 additions & 0 deletions src/include/usr/mmio/mmio_reasoncodes.H
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,11 @@ namespace MMIO
MOD_MMIO_PERFORM_OP = 0x02,
MOD_MMIO_GET_PROC_SCOM = 0x03,
MOD_MMIO_SET_PROC_SCOM = 0x04,
MOD_VALIDATE_OCMB_MMIO_OP = 0x05,
MOD_MMIO_CHAN_CHECKSTOP = 0x06,
MOD_CHECK_OCMB_ERROR = 0x07,
MOD_DETERMINE_CALLOUTS = 0x08,
MOD_DETERMINE_EXP_CALLOUTS = 0x09,
};

enum MMIOReasonCode
Expand All @@ -52,6 +57,8 @@ namespace MMIO
RC_BAD_MMIO_WRITE = MMIO_COMP_ID | 0x09,
RC_PROC_NOT_FOUND = MMIO_COMP_ID | 0x0A,
RC_BAR_OFFSET_MISMATCH = MMIO_COMP_ID | 0x0B,
RC_MMIO_CHAN_CHECKSTOP = MMIO_COMP_ID | 0x0C,
RC_UNSUPPORTED_CHIPID = MMIO_COMP_ID | 0x0D,
};
};

Expand Down
1 change: 1 addition & 0 deletions src/makefile
Original file line number Diff line number Diff line change
Expand Up @@ -266,6 +266,7 @@ TESTCASE_MODULES += $(if $(CONFIG_EARLY_TESTCASES) && $(FSP_BUILD) ,,testnvram)
TESTCASE_MODULES += $(if $(CONFIG_AXONE_BRING_UP),,testsmf)
TESTCASE_MODULES += testexpaccess
TESTCASE_MODULES += testexpupd
TESTCASE_MODULES += testmmio

#******************************************************************
#KNOWN ISSUES (I might let these run but there is something wrong)
Expand Down
11 changes: 10 additions & 1 deletion src/usr/mmio/makefile
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
#
# OpenPOWER HostBoot Project
#
# Contributors Listed Below - COPYRIGHT 2013,2018
# Contributors Listed Below - COPYRIGHT 2013,2019
# [+] International Business Machines Corp.
#
#
Expand All @@ -25,12 +25,21 @@
ROOTPATH = ../../..
MODULE = mmio

SUBDIRS += test.d

EXTRAINCDIR += ${ROOTPATH}/src/import/chips/p9/common/include/
EXTRAINCDIR += ${ROOTPATH}/src/import/chips/p9/procedures/hwp/ffdc/
EXTRAINCDIR += ${ROOTPATH}/src/import/chips/common/
EXTRAINCDIR += ${ROOTPATH}/src/import/
EXTRAINCDIR += ${ROOTPATH}/src/import/chips/common/utils/imageProcs/
EXTRAINCDIR += ${ROOTPATH}/src/import/chips/ocmb/explorer/common/include/
EXTRAINCDIR += ${ROOTPATH}/src/import/chips/ocmb/explorer/procedures/hwp/memory/
EXTRAINCDIR += ${ROOTPATH}/src/import/hwpf/fapi2/include/
EXTRAINCDIR += ${ROOTPATH}/src/include/usr/fapi2/

#include unique object modules
OBJS += mmio.o
OBJS += mmio_explorer.o

VPATH += ..
include $(ROOTPATH)/config.mk

0 comments on commit 5634271

Please sign in to comment.