diff options
author | Adam Muhle <armuhle@us.ibm.com> | 2013-04-26 10:07:20 -0500 |
---|---|---|
committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2013-05-15 12:57:32 -0500 |
commit | 722ff9bff1f0d7830ef166822e32500accc421f9 (patch) | |
tree | a20c45f23d8433cf70cc73898177318b0da57d20 /src/include | |
parent | cdf07e157ef6173e5b4d1f3f39556ffad2884d0e (diff) | |
download | talos-hostboot-722ff9bff1f0d7830ef166822e32500accc421f9.tar.gz talos-hostboot-722ff9bff1f0d7830ef166822e32500accc421f9.zip |
AVP OCC Enable & Procedure Refresh
Refreshed OCC Procedures
Enabled OCC in AVP mode for all processors
Merged SLW and OCC to common HOMER image
RTC:50987
Change-Id: I08d9128dfcb572367c145ee0296a48292584a480
Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/4340
Tested-by: Jenkins Server
Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/include')
-rw-r--r-- | src/include/sys/misc.h | 14 | ||||
-rw-r--r-- | src/include/usr/hwpf/hwp/occ/occ.H | 13 | ||||
-rw-r--r-- | src/include/usr/hwpf/hwpf_reasoncodes.H | 2 | ||||
-rw-r--r-- | src/include/usr/hwpf/istepreasoncodes.H | 4 | ||||
-rw-r--r-- | src/include/usr/vmmconst.h | 41 |
5 files changed, 48 insertions, 26 deletions
diff --git a/src/include/sys/misc.h b/src/include/sys/misc.h index d680548b8..f3e89e4e7 100644 --- a/src/include/sys/misc.h +++ b/src/include/sys/misc.h @@ -69,6 +69,20 @@ enum WinkleScope WINKLE_SCOPE_ALL = 0x1, }; +/** + * HOMER layout offsets + * see: HOMER_Image_Layout.odt + */ +/** OCC image is at the start of the HOMER layout */ +#define HOMER_OFFSET_TO_OCC_IMG 0 +/** Offset from HOMER to OCC Host Data Area */ +#define HOMER_OFFSET_TO_OCC_HOST_DATA (MEGABYTE) +/** SLW image is 2MB into the HOMER layout */ +#define HOMER_SLW_IMG_OFFSET (2*MEGABYTE) +/** SLW Image Max ouput size */ +#define HOMER_MAX_SLW_IMG_SIZE_IN_MB 1 + + #ifdef __cplusplus extern "C" { diff --git a/src/include/usr/hwpf/hwp/occ/occ.H b/src/include/usr/hwpf/hwp/occ/occ.H index 3e77af1dd..3d1de46e0 100644 --- a/src/include/usr/hwpf/hwp/occ/occ.H +++ b/src/include/usr/hwpf/hwp/occ/occ.H @@ -23,11 +23,16 @@ #ifndef OCC_H_ #define OCC_H_ -namespace OCC { +namespace HBOCC { + + /** + * @brief Starts OCCs on all Processors in the node + * This is intended to be used for AVP testing. + * + * @return errlHndl_t Error log if OCC load failed + */ + errlHndl_t loadnStartAllOccs(); - errlHndl_t loadnStartOcc(uint64_t i_homer_addr, - uint64_t i_common_addr, - TARGETING::Target* i_target); } //end OCC namespace diff --git a/src/include/usr/hwpf/hwpf_reasoncodes.H b/src/include/usr/hwpf/hwpf_reasoncodes.H index bfd8b462c..7c6e14093 100644 --- a/src/include/usr/hwpf/hwpf_reasoncodes.H +++ b/src/include/usr/hwpf/hwpf_reasoncodes.H @@ -56,7 +56,7 @@ namespace fapi MOD_GET_CACHE_DECONFIG = 0x11, MOD_FAPI_GET_OTHER_SIDE_OF_MEM_CHANNEL = 0x12, MOD_MBVPD_ACCESS = 0x13, - MOD_OCC_LOAD_OCC_IMAGE_TO_HOMER = 0x14, + MOD_OCC_LOAD_START_ALL_OCCS = 0x14, }; /** diff --git a/src/include/usr/hwpf/istepreasoncodes.H b/src/include/usr/hwpf/istepreasoncodes.H index 80116af90..8c409d266 100644 --- a/src/include/usr/hwpf/istepreasoncodes.H +++ b/src/include/usr/hwpf/istepreasoncodes.H @@ -167,8 +167,8 @@ enum istepReasonCode ISTEP_FABRIC_IO_DCCAL_ENDPOINT1_FAILED = ISTEP_COMP_ID | 0x24, ISTEP_FABRIC_IO_DCCAL_ENDPOINT2_FAILED = ISTEP_COMP_ID | 0x25, ISTEP_CUSTOMIZE_CHIP_REGIONS_FAILED = ISTEP_COMP_ID | 0x26, - ISTEP_GET_SLW_OUTPUT_BUFFER_FAILED = ISTEP_COMP_ID | 0x27, - ISTEP_GET_SLW_REALMEM_FAILED = ISTEP_COMP_ID | 0x28, + ISTEP_MMIO_UNMAP_ERR = ISTEP_COMP_ID | 0x27, + /** 0x28 - available */ ISTEP_CEN_REC_ATTN_FAILED = ISTEP_COMP_ID | 0x29, ISTEP_PROC_REC_ATTN_FAILED = ISTEP_COMP_ID | 0x2A, ISTEP_PROC_XBUS_SCOMINIT_FAILED = ISTEP_COMP_ID | 0x2B, diff --git a/src/include/usr/vmmconst.h b/src/include/usr/vmmconst.h index 29e82c48d..3a0526347 100644 --- a/src/include/usr/vmmconst.h +++ b/src/include/usr/vmmconst.h @@ -107,12 +107,28 @@ enum BlockPriority /** Page Size in bits per SLBE */ #define SLBE_b 12 -/** Hardwired pointer to output SLW image in real mem */ -/** 128M + 32M */ -/** SLW image must be on 1M boundary */ -/** set_pore_bars expects a region size in MB. It must be a power of 2 */ -#define OUTPUT_PORE_IMG_ADDR 128*MEGABYTE + 32*MEGABYTE -#define MAX_OUTPUT_PORE_IMG_IN_MB 4 +/** Hardwired pointer to HOMER images in real mem */ +/** HOMER starts at 128MB + 32MB = 160MB */ +/** HOMER is 4 MB per proc, 8 procs = 32MB */ +/** Each HOMER must start on a 4MB offset to meet OCC requirements */ +#define VMM_HOMER_REGION_START_ADDR (128*MEGABYTE + 32*MEGABYTE) +#define VMM_HOMER_INSTANCE_SIZE_IN_MB (4) +#define VMM_HOMER_INSTANCE_SIZE \ + (VMM_HOMER_INSTANCE_SIZE_IN_MB*MEGABYTE) +#define VMM_HOMER_REGION_SIZE (VMM_HOMER_INSTANCE_SIZE*8) +/** HOMER_REGION_END = 192MB */ +#define VMM_HOMER_REGION_END_ADDR \ + (VMM_HOMER_REGION_START_ADDR + VMM_HOMER_REGION_SIZE) + +/** Physical Memory for OCC common space - 8MB total */ +/** OCC Common must be on an 8MB offset */ +/** Start = End of Homer, currently 192MB */ +#define VMM_OCC_COMMON_START_ADDR VMM_HOMER_REGION_END_ADDR +#define VMM_OCC_COMMON_SIZE_IN_MB 8 +#define VMM_OCC_COMMON_SIZE \ + (VMM_OCC_COMMON_SIZE_IN_MB*MEGABYTE) +#define VMM_OCC_COMMON_END \ + (VMM_OCC_COMMON_START_ADDR + VMM_OCC_COMMON_SIZE) /** @@ -133,17 +149,4 @@ enum BlockPriority #define DUMP_TEST_MEMORY_ADDR (HSVC_TEST_MEMORY_ADDR + HSVC_TEST_MEMORY_SIZE) #define DUMP_TEST_MEMORY_SIZE (4*MEGABYTE) - -//TODO RTC: 35752 - Merge SLW and OCC into simgle HOMER Offset -//Note: OCC base image must be at 4MB offset, COMMON data must be at 8MB offset. -/** Physical Memory for OCC images - 1MB/chip * 4 chips */ -#define VMM_OCC_IMAGE_BASE_ADDR (72*MEGABYTE) -#define VMM_OCC_IMAGE_BASE_SIZE (4*MEGABYTE) - -/** Physical Memory for OCC common space - 8MB total */ -#define VMM_OCC_COMMON_ADDR (80*MEGABYTE) -#define VMM_OCC_COMMON_SIZE (8*MEGABYTE) - - - #endif /* _VMMCONST_H */ |