diff options
-rw-r--r-- | hwp/nest/Makefile | 30 | ||||
-rw-r--r-- | hwp/nest/nestfiles.mk | 24 | ||||
-rw-r--r-- | hwp/nest/p9_sbe_mcs_setup.C | 49 | ||||
-rw-r--r-- | hwp/nest/p9_sbe_mcs_setup.H | 58 | ||||
-rw-r--r-- | hwp/nest/p9_sbe_scominit.C | 52 | ||||
-rw-r--r-- | hwp/nest/p9_sbe_scominit.H | 60 |
6 files changed, 273 insertions, 0 deletions
diff --git a/hwp/nest/Makefile b/hwp/nest/Makefile new file mode 100644 index 00000000..5a24f54e --- /dev/null +++ b/hwp/nest/Makefile @@ -0,0 +1,30 @@ + +# This Makefile compiles all of the core hardware procedure code. See the +# "nestfiles.mk" file in this directory. + +#all generated files from this makefile will end up in obj/nest +export SUB_OBJDIR = /nest + +include img_defs.mk +include nestfiles.mk + + +OBJS := $(addprefix $(OBJDIR)/, $(NEST_OBJECTS)) + +libnest.a: nest + $(AR) crs $(OBJDIR)/libnest.a $(OBJDIR)/*.o + +.PHONY: clean nest +nest: $(OBJS) + +$(OBJS) $(OBJS:.o=.d): | $(OBJDIR) + +$(OBJDIR): + mkdir -p $(OBJDIR) + +clean: + rm -fr $(OBJDIR) + +ifneq ($(MAKECMDGOALS),clean) +include $(OBJS:.o=.d) +endif diff --git a/hwp/nest/nestfiles.mk b/hwp/nest/nestfiles.mk new file mode 100644 index 00000000..aa2abc12 --- /dev/null +++ b/hwp/nest/nestfiles.mk @@ -0,0 +1,24 @@ +# @file nestfiles.mk +# +# @brief mk for including nest object files +# +# @page ChangeLogs Change Logs +# @section nestfiles.mk +# @verbatim +# +# @endverbatim +# +########################################################################## +# Object Files +########################################################################## + +NEST-CPP-SOURCES = p9_sbe_mcs_setup.C +NEST-CPP-SOURCES +=p9_sbe_scominit.C +NEST-CPP-SOURCES +=p9_sbe_fabricinit.C + +NEST-C-SOURCES = +NEST-S-SOURCES = + +NEST_OBJECTS += $(NEST-CPP-SOURCES:.C=.o) +NEST_OBJECTS += $(NEST-C-SOURCES:.c=.o) +NEST_OBJECTS += $(NEST-S-SOURCES:.S=.o) diff --git a/hwp/nest/p9_sbe_mcs_setup.C b/hwp/nest/p9_sbe_mcs_setup.C new file mode 100644 index 00000000..14b1428b --- /dev/null +++ b/hwp/nest/p9_sbe_mcs_setup.C @@ -0,0 +1,49 @@ +/* IBM_PROLOG_BEGIN_TAG */ +/* This is an automatically generated prolog. */ +/* */ +/* $Source: hwp/nest/p9_sbe_mcs_setup.C $ */ +/* */ +/* IBM CONFIDENTIAL */ +/* */ +/* PPE Project */ +/* */ +/* COPYRIGHT 2015 */ +/* [+] International Business Machines Corp. */ +/* */ +/* */ +/* The source code for this program is not published or otherwise */ +/* divested of its trade secrets, irrespective of what has been */ +/* deposited with the U.S. Copyright Office. */ +/* */ +/* IBM_PROLOG_END_TAG */ +//------------------------------------------------------------------------------ +/// @file p9_sbe_mcs_setup.C +/// +/// @brief Configure one MCS unit on the master chip to low point of +/// coherency acknowledge preparations(lpc_ack preps). in support +/// of dcbz(Data Cache Block Zero) operations executed by HBI code +/// (while still running cache contained prior to memory configuration). +//------------------------------------------------------------------------------ +// *HWP HW Owner : Girisankar Paulraj <gpaulraj@in.ibm.com> +// *HWP HW Backup Owner : Joe McGill <jcmgill@us.ibm.com> +// *HWP FW Owner : Thi N. Tran <thi@us.ibm.com> +// *HWP Team : Nest +// *HWP Level : 1 +// *HWP Consumed by : SBE +//------------------------------------------------------------------------------ + + +//## auto_generated +#include "p9_sbe_mcs_setup.H" + + +fapi2::ReturnCode p9_sbe_mcs_setup(const + fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP> & i_target) +{ + FAPI_DBG("Entering ..."); + + FAPI_DBG("Exiting ..."); + + return fapi2::FAPI2_RC_SUCCESS; + +} diff --git a/hwp/nest/p9_sbe_mcs_setup.H b/hwp/nest/p9_sbe_mcs_setup.H new file mode 100644 index 00000000..f08d6d3f --- /dev/null +++ b/hwp/nest/p9_sbe_mcs_setup.H @@ -0,0 +1,58 @@ +/* IBM_PROLOG_BEGIN_TAG */ +/* This is an automatically generated prolog. */ +/* */ +/* $Source: hwp/nest/p9_sbe_mcs_setup.H $ */ +/* */ +/* IBM CONFIDENTIAL */ +/* */ +/* PPE Project */ +/* */ +/* COPYRIGHT 2015 */ +/* [+] International Business Machines Corp. */ +/* */ +/* */ +/* The source code for this program is not published or otherwise */ +/* divested of its trade secrets, irrespective of what has been */ +/* deposited with the U.S. Copyright Office. */ +/* */ +/* IBM_PROLOG_END_TAG */ +//------------------------------------------------------------------------------ +/// @file p9_sbe_mcs_setup.H +/// +/// @brief Configure one MCS unit on the master chip to low point of +/// coherency acknowledge preparations(lpc_ack preps). in support +/// of dcbz(Data Cache Block Zero) operations executed by HBI code +/// (while still running cache contained prior to memory configuration). +//------------------------------------------------------------------------------ +// *HWP HW Owner : Girisankar Paulraj <gpaulraj@in.ibm.com> +// *HWP HW Backup Owner : Joe McGill <jcmgill@us.ibm.com> +// *HWP FW Owner : Thi N. Tran <thi@us.ibm.com> +// *HWP Team : Nest +// *HWP Level : 1 +// *HWP Consumed by : SBE +//------------------------------------------------------------------------------ + + +#ifndef _P9_SBE_MCS_SETUP_H_ +#define _P9_SBE_MCS_SETUP_H_ + + +#include <fapi2.H> + + +typedef fapi2::ReturnCode (*p9_sbe_mcs_setup_FP_t)(const + fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP> &); + +/// @brief This function configures MCS BAR registers on master SBE chip +/// to support of dcbz operation execution by HBI code and response +/// on lpc_ack preps +/// +/// @param[in] i_target Reference to TARGET_TYPE_PROC_CHIP target +/// @return FAPI2_RC_SUCCESS if success, else error code. +extern "C" +{ + fapi2::ReturnCode p9_sbe_mcs_setup(const + fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP> & i_target); +} + +#endif diff --git a/hwp/nest/p9_sbe_scominit.C b/hwp/nest/p9_sbe_scominit.C new file mode 100644 index 00000000..70687314 --- /dev/null +++ b/hwp/nest/p9_sbe_scominit.C @@ -0,0 +1,52 @@ +/* IBM_PROLOG_BEGIN_TAG */ +/* This is an automatically generated prolog. */ +/* */ +/* $Source: hwp/nest/p9_sbe_scominit.C $ */ +/* */ +/* IBM CONFIDENTIAL */ +/* */ +/* PPE Project */ +/* */ +/* COPYRIGHT 2015 */ +/* [+] International Business Machines Corp. */ +/* */ +/* */ +/* The source code for this program is not published or otherwise */ +/* divested of its trade secrets, irrespective of what has been */ +/* deposited with the U.S. Copyright Office. */ +/* */ +/* IBM_PROLOG_END_TAG */ +//------------------------------------------------------------------------------ +/// @file p9_sbe_scominit.C +/// +/// @brief This procedure contains SCOM based initialization required for +/// fabric configuration & HBI operation +/// *! +/// *! o Set fabric node/chip ID configuration for all configured +/// *! chiplets to chip specific values +/// *! o Establish ADU XSCOM BAR for HBI operation +//------------------------------------------------------------------------------ +// *HWP HW Owner : Girisankar Paulraj <gpaulraj@in.ibm.com> +// *HWP HW Backup Owner : Joe McGill <jmcgill@us.ibm.com> +// *HWP FW Owner : Thi N. Tran <thi@us.ibm.com> +// *HWP Team : Nest +// *HWP Level : 1 +// *HWP Consumed by : SBE +//------------------------------------------------------------------------------ + + +//## auto_generated +#include "p9_sbe_scominit.H" + + + +fapi2::ReturnCode p9_sbe_scominit(const + fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP> & i_target) +{ + FAPI_DBG("Entering ..."); + + FAPI_DBG("Exiting ..."); + + return fapi2::FAPI2_RC_SUCCESS; + +} diff --git a/hwp/nest/p9_sbe_scominit.H b/hwp/nest/p9_sbe_scominit.H new file mode 100644 index 00000000..dfb85717 --- /dev/null +++ b/hwp/nest/p9_sbe_scominit.H @@ -0,0 +1,60 @@ +/* IBM_PROLOG_BEGIN_TAG */ +/* This is an automatically generated prolog. */ +/* */ +/* $Source: hwp/nest/p9_sbe_scominit.H $ */ +/* */ +/* IBM CONFIDENTIAL */ +/* */ +/* PPE Project */ +/* */ +/* COPYRIGHT 2015 */ +/* [+] International Business Machines Corp. */ +/* */ +/* */ +/* The source code for this program is not published or otherwise */ +/* divested of its trade secrets, irrespective of what has been */ +/* deposited with the U.S. Copyright Office. */ +/* */ +/* IBM_PROLOG_END_TAG */ +//------------------------------------------------------------------------------ +/// @file p9_sbe_scominit.H +/// +/// @brief This procedure contains SCOM based initialization required for +/// fabric configuration & HBI operation +/// *! +/// *! o Set fabric node/chip ID configuration for all configured +/// *! chiplets to chip specific values +/// *! o Establish ADU XSCOM BAR for HBI operation +//------------------------------------------------------------------------------ +// *HWP HW Owner : Girisankar Paulraj <gpaulraj@in.ibm.com> +// *HWP HW Backup Owner : Joe McGill <jmcgill@us.ibm.com> +// *HWP FW Owner : Thi N. Tran <thi@us.ibm.com> +// *HWP Team : Nest +// *HWP Level : 1 +// *HWP Consumed by : SBE +//------------------------------------------------------------------------------ + + +#ifndef _P9_SBE_SCOMINIT_H_ +#define _P9_SBE_SCOMINIT_H_ + + +#include <fapi2.H> + + +typedef fapi2::ReturnCode (*p9_sbe_scominit_FP_t)(const + fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP> &); + +/// @brief This function does ADU BAR and XSCOM BAR base setup, +/// Set Fabric node/chip ID for all configured chiplets in nest +/// area and Clearing/setting up FIR register +/// +/// @param[in] i_target Reference to TARGET_TYPE_PROC_CHIP target +/// @return FAPI2_RC_SUCCESS if success, else error code. +extern "C" +{ + fapi2::ReturnCode p9_sbe_scominit(const + fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP> & i_target); +} + +#endif |