SBE Build Process

From RCS Wiki
Jump to navigation Jump to search

This article documents the Self-Boot Engine source code build process, using the compiler-independent POSIX 2024-compliant code in the repository at TBD.

Key changes include removing GNU-style extensions such as addprefix and the elimination of conditional decision-making. The latter necessitated adding option-specific .mk files as needed.

SBE Build Process

Dependencies

Packages

python3 (symbolic link /usr/local/bin/python?)

perl

libxml-libxml-perl

libxml-simple-perl (p5-xml-simple on FreeBSD)

GNU-based cross-build environment

Probably easier to build on an earlier version of Debian, using gcc-10. Run inside a QEMU VM.

curl -O https://laotzu.ftp.acc.umu.se/mirror/cdimage/archive/10.13.0/ppc64el/iso-dvd/debian-10.13.0-ppc64el-DVD-1.iso

qemu-system-ppc64 --enable-kvm -nographic -M pseries,cap-nested-hv=true,cap-ibs=workaround -cpu host -smp cores=4,threads=4,sockets=1 -m 8G -drive file=debian-10.13.0-ppc64el-DVD-1.iso,media=cdrom,if=virtio,id=drive1,format=raw -nic user,ipv6=off,model=e1000,mac=52:54:98:76:54:32,hostfwd=tcp::1013-:22 hd_image.qcow2

Specify /dev/vda to load stuff from the cdrom in the installer and with apt-cdrom add (mount /dev/vda /media/cdrom).

checking for the correct version of gmp.h... yes checking for the correct version of mpfr.h... yes checking for the correct version of mpc.h... no

apt install flex bison (which libs are needed?)

Build mpfr from source code after install GMP

https://www.mpfr.org/mpfr-current/mpfr-4.2.2.tar.xz

Build mpc from scratch

ftp://gcc.gnu.org/pub/gcc/infrastructure/mpc-1.3.1.tar.gz

ppe42-gcc

ppe42-binutils

Run:

git checkout gcc-4_9_2-ppe42
git checkout binutils-2_24-ppe42

to populate the local repositories after cloning. This is before checkout was deprecated in git, so use checkout.

libmpc3, libmpfr3 and libgmp3 are installed by default. Install libmpc3 with apt.


Back in ppe42-gcc

Patch ./gcc/cp/cfns.h to comment out attribute

//#ifdef __GNUC_STDC_INLINE__ //__attribute__ ((__gnu_inline__)) //#endif


./configure --with-gmp-include=?



(not used) You will need quilt, libgmp-dev, libmpc-dev and libmpfr-dev, gcc-10 and g++-10.

apt install quilt libpmc-dev libmpc-dev libmpfr-dev



gcc-10 and g++-10 can be downloaded from Debian. Use gcc-12 to build gcc-10 and g++-10 with a default

./configure

open-power/sbe

Makefile defers to src/build/Makefile

open-power/sbe/src/build/Makefile

included files

includes src/build/img_defs.mk

include $(BOOT_SRCDIR)/bootfiles.mk

include $(BUILDDATA_SRCDIR)/utils.mk

include $(img).mk

SBE Source Tree Directory Structure

<htmltag tagname="details"><htmltag="summary">sbe/</htmltag></htmltag>

sbe/

customrc
env.bash
LICENSE_PROLOG
Makefile
Makefile.gnu
img_defs.mk
img_defs.mk.gnu
sb/
src/
boot/
bootfiles.mk
loader_l1.S
loader_l2.c
loader_l2_setup.S
Makefile
otprom_init.S
OtpromFuseAlter.log
pibmem_repair/
scom_repair_axone
pibmem_repair.S
scom_repair_p9
pibmem_repair.S
sbeCompression.py
sbeDecompression.h
build/
buildInfo.py
import_hwp_mk/
power/
arrayaccess/
arrayaccessfiles.mk
Makefile
istep2/
istep2files.mk
Makefile
istep3/
istep3files.mk
Makefile
istep4/
istep4files.mk
Makefile
istep5/
istep5files.mk
Makefile
istepcommon/
istepcommonfiles.mk
Makefile
istepmpipl/
istepmpiplfiles.mk
Makefile
power_axone/
linkerscripts/
power/
linkloader.cmd
linkotprom.cmd
linksbe.cmd
linkseeprom.cmd
power_axone/
linkloader.cmd
linkotprom.cmd
linkseeprom.cmd
z/
linkloader.cmd
linkotprom.cmd
linksbe.cmd
linkseeprom.cmd
Makefile
Makefile.gnu
pibmem.mk
parsAndCutElf.py
power_axone_defs.mk
power_axone_defs.mk.gnu
power_defs.mk
power_defs.mk.gnu
sbeOpDistribute.py
security/
securityRegListGen.py
seeprom.mk
updateBuildTag.py
utils/
base_ppe_header.S
base_sbe_fixed.S
Makefile
p9_sbe.H
power/
sbe_link.H
power_axone/
sbe_link.H
proc_sbe_fixed.H
sbe_common.H
utils.mk
z/
sbe_link.H
z_defs.mk
z_defs.mk.gnu
hwpf/
fapi2sbefiles.mk
ffdc.C
hw_access.H
hwp_executor.H
Makefile
plat_attribute_service.H
plat_attributes.H
plat_error_scope.H
plat_hw_access.C
plat_hw_access.H
plat_includes.H
plat_ring_traverse.C
plat_ring_traverse.H
plat_target.H
plat_target_definitions.H
plat_target_filter.H
plat_target_parms.H
plat_target_utils.H
plat_trace.H
plat_utils.C
plat_utils.H
target.C
target.H
import/
chips/
centaur/
utils/
imageProcs/
cen_ring_id.h
cen_ringId.C
cen_ringId.H
common/
utils/
imageProcs/
common_ringId.C
common_ringId.H
ocmb/
explorer/
procedures/
hwp/
memory/
lib/
i2c/
exp_i2c.C
exp_i2c.H
exp_i2c_fields.H
exp_i2c_scom.H
shared/
exp_consts.H
xml/
error_info/
exp_i2c_scom_errors.xml
mss_exp_errors.xml
p9/
common/
include/
p9_const_common.H
p9_frequency_buckets.H
p9_mc_scom_addresses.H
p9_mc_scom_addresses_fixes.H
p9_mc_scom_addresses_fld.H
p9_mc_scom_addresses_fld_fixes.H
p9_misc_scom_addresses.H
p9_misc_scom_addresses_fixes.H
p9_misc_scom_addresses_fld.H
p9_misc_scom_addresses_fld_fixes.H
p9_obus_scom_addresses.H
p9_obus_scom_addresses_fixes.H
p9_obus_scom_addresses_fld.H
p9_obus_scom_addresses_fld_fixes.H
p9_perv_scom_addresses.H
p9_perv_scom_addresses_fixes.H
p9_perv_scom_addresses_fld.H
p9_perv_scom_addresses_fld_fixes.H
p9_quad_scom_addresses.H
p9_quad_scom_addresses_fixes.H
p9_quad_scom_addresses_fld.H
p9_quad_scom_addresses_fld_fixes.H
p9_scom_template_consts.H
p9_xbus_scom_addresses.H
p9_xbus_scom_addresses_fixes.H
p9_xbus_scom_addresses_fld.H
p9_xbus_scom_addresses_fld_fixes.H
p9a_mc_scom_addresses.H
p9a_mc_scom_addresses_fixes.H
p9a_mc_scom_addresses_fld.H
p9a_mc_scom_addresses_fld_fixes.H
p9a_misc_scom_addresses.H
p9a_misc_scom_addresses_fld.H
p9a_obus_scom_addresses.H
p9a_obus_scom_addresses_fld.H
p9a_perv_scom_addresses.H
p9a_perv_scom_addresses_fld.H
p9a_quad_scom_addresses.H
p9a_quad_scom_addresses_fld.H
p9a_xbus_scom_addresses.H
p9a_xbus_scom_addresses_fld.H
p9n2_mc_scom_addresses.H
p9n2_mc_scom_addresses_fld.H
p9n2_misc_scom_addresses.H
p9n2_misc_scom_addresses_fld.H
p9n2_obus_scom_addresses.H
p9n2_obus_scom_addresses_fld.H
p9n2_perv_scom_addresses.H
p9n2_perv_scom_addresses_fld.H
p9n2_quad_scom_addresses.H
p9n2_quad_scom_addresses_fld.H
p9n2_xbus_scom_addresses.H
p9n2_xbus_scom_addresses_fld.H
procedures/
hwp/
cache/
p9_hcd_cache.H
p9_hcd_cache_arrayinit.C
p9_hcd_cache_arrayinit.H
p9_hcd_cache_chiplet_init.C
p9_hcd_cache_chiplet_init.H
p9_hcd_cache_chiplet_l3_dcc_setup.C
p9_hcd_cache_chiplet_l3_dcc_setup.H
p9_hcd_cache_chiplet_reset.C
p9_hcd_cache_chiplet_reset.H
p9_hcd_cache_dpll_initf.C
p9_hcd_cache_dpll_initf.H
p9_hcd_cache_dpll_setup.C
p9_hcd_cache_dpll_setup.H
p9_hcd_cache_gptr_time_initf.C
p9_hcd_cache_gptr_time_initf.H
p9_hcd_cache_initf.C
p9_hcd_cache_initf.H
p9_hcd_cache_occ_runtime_scom.C
p9_hcd_cache_occ_runtime_scom.H
p9_hcd_cache_poweron.C
p9_hcd_cache_poweron.H
p9_hcd_cache_ras_runtime_scom.C
p9_hcd_cache_ras_runtime_scom.H
p9_hcd_cache_repair_initf.C
p9_hcd_cache_repair_initf.H
p9_hcd_cache_scomcust.C
p9_hcd_cache_scomcust.H
p9_hcd_cache_scominit.C
p9_hcd_cache_scominit.H
p9_hcd_cache_startclocks.C
p9_hcd_cache_startclocks.H
p9_hcd_cache_stopclocks.C
p9_hcd_cache_stopclocks.H
p9_hcd_l2_stopclocks.C
p9_hcd_l2_stopclocks.H
core/
p9_hcd_core.H
p9_hcd_core_arrayinit.C
p9_hcd_core_arrayinit.H
p9_hcd_core_chiplet_init.C
p9_hcd_core_chiplet_init.H
p9_hcd_core_chiplet_reset.C
p9_hcd_core_chiplet_reset.H
p9_hcd_core_gptr_time_initf.C
p9_hcd_core_gptr_time_initf.H
p9_hcd_core_initf.C
p9_hcd_core_initf.H
p9_hcd_core_occ_runtime_scom.C
p9_hcd_core_occ_runtime_scom.H
p9_hcd_core_pcb_arb.C
p9_hcd_core_pcb_arb.H
p9_hcd_core_poweron.C
p9_hcd_core_poweron.H
p9_hcd_core_ras_runtime_scom.C
p9_hcd_core_ras_runtime_scom.H
p9_hcd_core_repair_initf.C
p9_hcd_core_repair_initf.H
p9_hcd_core_scomcust.C
p9_hcd_core_scomcust.H
p9_hcd_core_scominit.C
p9_hcd_core_scominit.H
p9_hcd_core_startclocks.C
p9_hcd_core_startclocks.H
p9_hcd_core_stopclocks.C
p9_hcd_core_stopclocks.H
p9_sbe_instruct_start.C
p9_sbe_instruct_start.H
p9_thread_control.C
p9_thread_control.H
ffdc/
p9_eq_clear_atomic_lock.C
p9_eq_clear_atomic_lock.H
initfiles/
p9_core_scom.C
p9_core_scom.H
p9_l2_scom.C
p9_l2_scom.H
p9_l3_scom.C
p9_l3_scom.H
p9_mmu_scom.C
p9_mmu_scom.H
p9_ncu_scom.C
p9_ncu_scom.H
io/
p9_sbe_io_eol_toggle.C
p9_sbe_io_eol_toggle.H
lib/
p9_collect_deadman_ffdc.C
p9_collect_deadman_ffdc.H
p9_collect_suspend_ffdc.C
p9_collect_suspend_ffdc.H
p9_common_clk_ctrl_state.H
p9_common_poweronoff.C
p9_common_poweronoff.H
p9_common_pro_epi_log.C
p9_common_pro_epi_log.H
p9_hcd_common.H
p9_pm_hcd_flags.h
p9_pm_stop_history.H
p9_ppe_defs.H
p9_ppe_utils.C
p9_ppe_utils.H
p9_sbe_ppe_ffdc.C
p9_sbe_ppe_ffdc.H
p9_sbe_ppe_utils.C
p9_sbe_ppe_utils.H
memory/
lib/
workarounds
nvdimm_workarounds.C
nvdimm_workarounds.H
nest/
p9_adu_access.C
p9_adu_access.H
p9_adu_coherent_utils.C
p9_adu_coherent_utils.H
p9_adu_constants.H
p9_adu_setup.C
p9_adu_setup.H
p9_fbc_utils.C
p9_fbc_utils.H
p9_inject_local_xstop.C
p9_inject_local_xstop.H
p9_l2_flush.C
p9_l2_flush.H
p9_l3_flush.C
p9_l3_flush.H
p9_pba_access.C
p9_pba_access.H
p9_pba_coherent_utils.C
p9_pba_coherent_utils.H
p9_pba_constants.H
p9_pba_setup.C
p9_pba_setup.H
p9_sbe_check_quiesce.C
p9_sbe_check_quiesce.H
p9_sbe_fabricinit.C
p9_sbe_fabricinit.H
p9_sbe_hb_structures.H
p9_sbe_load_bootloader.C
p9_sbe_load_bootloader.H
p9_sbe_mcs_setup.C
p9_sbe_mcs_setup.H
p9_sbe_scominit.C
p9_sbe_scominit.H
p9_suspend_io.C
p9_suspend_io.H
p9_xbus_fir_utils.H
perv/
p9_common_stopclocks.C
p9_common_stopclocks.H
p9_cplt_stopclocks.C
p9_cplt_stopclocks.H
p9_hcd_cache_dcc_skewadjust_setup.C
p9_hcd_cache_dcc_skewadjust_setup.H
p9_lpc_utils.C
p9_lpc_utils.H
p9_nest_stopclocks.C
p9_nest_stopclocks.H
p9_perv_sbe_cmn.C
p9_perv_sbe_cmn.H
p9_ram_core.C
p9_ram_core.H
p9_sbe_arrayinit.C
p9_sbe_arrayinit.H
p9_sbe_attr_setup.C
p9_sbe_attr_setup.H
p9_sbe_check_master.C
p9_sbe_check_master.H
p9_sbe_check_master_stop15.C
p9_sbe_check_master_stop15.H
p9_sbe_chiplet_init.C
p9_sbe_chiplet_init.H
p9_sbe_chiplet_pll_initf.C
p9_sbe_chiplet_pll_initf.H
p9_sbe_chiplet_pll_setup.C
p9_sbe_chiplet_pll_setup.H
p9_sbe_chiplet_reset.C
p9_sbe_chiplet_reset.H
p9_sbe_clock_test2.C
p9_sbe_clock_test2.H
p9_sbe_common.C
p9_sbe_common.H
p9_sbe_enable_seeprom.C
p9_sbe_enable_seeprom.H
p9_sbe_fastarray_abist_catchup.C
p9_sbe_fastarray_abist_catchup.H
p9_sbe_fastarray_cleanup.C
p9_sbe_fastarray_cleanup.H
p9_sbe_fastarray_setup.C
p9_sbe_fastarray_setup.H
p9_sbe_gear_switcher.C
p9_sbe_gear_switcher.H
p9_sbe_gptr_time_initf.C
p9_sbe_gptr_time_initf.H
p9_sbe_io_initf.C
p9_sbe_io_initf.H
p9_sbe_lpc_init.C
p9_sbe_lpc_init.H
p9_sbe_nest_enable_ridi.C
p9_sbe_nest_enable_ridi.H
p9_sbe_nest_initf.C
p9_sbe_nest_initf.H
p9_sbe_nest_startclocks.C
p9_sbe_nest_startclocks.H
p9_sbe_npll_initf.C
p9_sbe_npll_initf.H
p9_sbe_npll_setup.C
p9_sbe_npll_setup.H
p9_sbe_repr_initf.C
p9_sbe_repr_initf.H
p9_sbe_select_ex.C
p9_sbe_select_ex.H
p9_sbe_sequence_drtm.C
p9_sbe_sequence_drtm.H
p9_sbe_setup_boot_freq.C
p9_sbe_setup_boot_freq.H
p9_sbe_setup_evid.C
p9_sbe_setup_evid.H
p9_sbe_startclock_chiplets.C
p9_sbe_startclock_chiplets.H
p9_sbe_tp_arrayinit.C
p9_sbe_tp_arrayinit.H
p9_sbe_tp_chiplet_init1.C
p9_sbe_tp_chiplet_init1.H
p9_sbe_tp_chiplet_init2.C
p9_sbe_tp_chiplet_init2.H
p9_sbe_tp_chiplet_init3.C
p9_sbe_tp_chiplet_init3.H
p9_sbe_tp_chiplet_reset.C
p9_sbe_tp_chiplet_reset.H
p9_sbe_tp_enable_ridi.C
p9_sbe_tp_enable_ridi.H
p9_sbe_tp_gptr_time_initf.C
p9_sbe_tp_gptr_time_initf.H
p9_sbe_tp_initf.C
p9_sbe_tp_initf.H
p9_sbe_tp_ld_image.C
p9_sbe_tp_ld_image.H
p9_sbe_tp_repr_initf.C
p9_sbe_tp_repr_initf.H
p9_sbe_tp_switch_gears.C
p9_sbe_tp_switch_gears.H
p9_sbe_tracearray.C
p9_sbe_tracearray.H
p9_setup_clock_term.H
p9_stopclocks.C
p9_stopclocks.H
p9_tp_stopclocks.C
p9_tp_stopclocks.H
p9_tracearray_defs.H
pm/
p9_block_wakeup_intr.C
p9_block_wakeup_intr.H
p9_pm.H
p9_pm_ocb_indir_access.C
p9_pm_ocb_indir_access.H
p9_pm_ocb_indir_setup_circular.C
p9_pm_ocb_indir_setup_circular.H
p9_pm_ocb_indir_setup_linear.C
p9_pm_ocb_indir_setup_linear.H
p9_pm_ocb_init.C
p9_pm_ocb_init.H
p9_pm_pfet_control.C
p9_pm_pfet_control.H
p9_pm_pfet_types.H
p9_pm_utils.C
p9_pm_utils.H
p9_quad_power_off.C
p9_quad_power_off.H
p9_query_cache_access_state.C
p9_query_cache_access_state.H
p9_query_core_access_state.C
p9_query_core_access_state.H
p9_suspend_powman.C
p9_suspend_powman.H
ppe/
include/
std/
algorithm
iterator
new
type_traits
util
impl
iterator.h
qsort.H
traits
has_lessthan.H
has_minus.H
has_plusequals.H
impl
has_comparison.H
remove_const.H
pk/
kernel/
Makefile
pk.h
pk_api.h
pk_bh_core.c
pk_core.c
pk_debug_ptrs.c
pk_debug_ptrs.h
pk_init.c
pk_kernel.h
pk_macros.h
pk_semaphore_core.c
pk_semaphore_init.c
pk_stack_init.c
pk_thread.h
pk_thread_core.c
pk_thread_init.c
pk_thread_util.c
pk_timer_core.c
pk_timer_init.c
pkkernelfiles.mk
ppe42/
div32.S
div64.S
eabi.c
endian.h
Makefile
math.c
pk_panic_codes.h
pk_port_types.h
pkppe42files.mk
ppe42.h
ppe42_asm.h
ppe42_boot.S
ppe42_cache.h
ppe42_context.h
ppe42_core.c
ppe42_exceptions.S
ppe42_gcc.c
ppe42_gcc.h
ppe42_init.c
ppe42_irq.h
ppe42_irq_core.c
ppe42_msr.h
ppe42_scom.c
ppe42_scom.h
ppe42_spr.h
ppe42_string.c
ppe42_string.h
ppe42_thread_init.S
ppe42_timebase.S
ppe42math.h
std/
Makefile
pk_port.h
pkstdfiles.mk
std.h
std_common.h
std_init.c
std_irq.h
std_irq_config.h
std_irq_init.c
std_register_addresses.h
std_timebase.h
trace/
Makefile
pk_trace.h
pk_trace_big.c
pk_trace_binary.c
pk_trace_core.c
pktracefiles.mk
xml/
attribute_info/
chip_ec_attributes.xml
core_attributes.xml
memory_mcs_attributes.xml
nest_attributes.xml
p9_cache_contained_attributes.xml
p9_hcode_image_build_attributes.xml
p9_sbe_attributes.xml
p9_sbe_load_bootloader_attributes.xml
pervasive_attributes.xml
pervasive_sbe_only_attributes.xml
pm_hwp_attributes.xml
pm_plat_attributes.xml
error_info/
hwpErrors.mk
p9_adu_errors.xml
p9_block_wakeup_intr_errors.xml
p9_common_poweronoff_errors.xml
p9_fastarray_errors.xml
p9_hcd_cache_dpll_setup_errors.xml
p9_hcd_cache_initf_errors.xml
p9_hcd_cache_scominit_errors.xml
p9_hcd_cache_startclocks_errors.xml
p9_hcd_cache_stopclocks_errors.xml
p9_hcd_core_startclocks_errors.xml
p9_hcd_core_stopclocks_errors.xml
p9_hcd_l2_stopclocks_errors.xml
p9_l2_flush_errors.xml
p9_l3_flush_errors.xml
p9_memory_mss_lib.xml
p9_pba_errors.xml
p9_perv_sbe_cmn_errors.xml
p9_pm_ocb_indir_access_errors.xml
p9_pm_ocb_init_errors.xml
p9_pm_pfet_control_errors.xml
p9_quad_power_off_errors.xml
p9_ram_errors.xml
p9_sbe_arrayinit_errors.xml
p9_sbe_check_master_stop15_errors.xml
p9_sbe_check_quiesce_errors.xml
p9_sbe_chiplet_init_errors.xml
p9_sbe_chiplet_pll_initf_errors.xml
p9_sbe_common_errors.xml
p9_sbe_fabricinit_errors.xml
p9_sbe_gear_switcher_errors.xml
p9_sbe_load_bootloader_errors.xml
p9_sbe_lpc_init_errors.xml
p9_sbe_mcs_setup_errors.xml
p9_sbe_nest_startclocks_errors.xml
p9_sbe_npll_initf_errors.xml
p9_sbe_npll_setup_errors.xml
p9_sbe_plat_errors.xml
p9_sbe_pll_setup_errors.xml
p9_sbe_ppe_utils.xml
p9_sbe_ring_errors.xml
p9_sbe_scominit_errors.xml
p9_sbe_select_ex_errors.xml
p9_sbe_startclock_chiplets_errors.xml
p9_sbe_tp_arrayinit_errors.xml
p9_sbe_tp_chiplet_init3_errors.xml
p9_sbe_tp_switch_gears_errors.xml
p9_sbe_tracearray_errors.xml
p9_suspend_io_errors.xml
p9_suspend_powman_errors.xml
p9_thread_control_errors.xml
security/
p9_security_white_black_list.csv
sw_simulation/
chip.act
pervasive.act
powermgmt.act
utils/
imageProcs/
p9_dd_container.c
p9_dd_container.h
p9_infrastruct_help.H
p9_ring_id.h
p9_ring_identification.H
p9_ringId.C
p9_ringId.H
p9_scan_compression.H
p9_tor.C
p9_tor.H
Makefile
p9_putRingUtils.C
p9_putRingUtils.H
p9_putRingUtils.mk
utils.mk
xip/
Makefile
p9_xip_image.C
p9_xip_image.h
p9_xip_tool.C
generic/
memory/
lib/
utils/
endian_utils.H
mss_field.H
mss_generic_check.H
shared
mss_generic_consts.H
procedures/
xml/
error_info/
generic_error.xml
hwpf/
fapi2/
include/
buffer.H
buffer_parameters.H
buffer_traits.H
error_info.H
error_info_defs.H
error_scope.H
fapi2.H
fapi2_attribute_service.H
fapi2_error_scope.H
fapi2_hw_access.H
fapi2_hwp_executor.H
fapi2_i2c_access.H
fapi2_target.H
fapi2_vpd_access.H
ffdc.H
hw_access_def.H
multicast_defs.H
mvpd_access.H
mvpd_access_defs.H
plat/
hw_access.H
plat_error_scope.H
plat_hw_access.H
plat_target.H
plat_trace.H
plat_vpd_access.H
target.H
vpd_access.H
return_code.H
return_code_defs.H
target_states.H
target_types.H
utils.H
variable_buffer.H
variable_buffer_utils.H
vpd_access_defs.H
tools/
parseErrorInfo.pl
xml/
attribute_info/
chip_attributes.xml
system_attributes.xml
unit_attributes.xml
tools/
imageProcs/
fapi_sbe_common.H
p9_ipl_build.C
p9_ipl_build.H
sbefw/
app/
common/
appcommonfiles.mk
Makefile
sbecmdCntrlTimer.C
sbecmdCntrlTimer.H
sbecmdgeneric.C
sbecmdgeneric.H
sbecmdringaccess.C
sbecmdringaccess.H
sbecmdscomaccess.C
sbecmdscomaccess.H
power/
apppowerfiles.mk
chipop_table.C
ipl_table.C
istep.C
istep.H
Makefile
sbearchregdump.C
sbearchregdump.H
sbecmdcntlinst.C
sbecmdcntlinst.H
sbecmdcntrldmt.C
sbecmdcntrldmt.H
sbecmdfastarray.C
sbecmdfastarray.H
sbecmdflushnvdimm.C
sbecmdflushnvdimm.H
sbecmdgeneric.C
sbecmdiplcontrol.C
sbecmdiplcontrol.H
sbecmdmemaccess.C
sbecmdmemaccess.H
sbecmdmpipl.C
sbecmdmpipl.H
sbecmdregaccess.C
sbecmdregaccess.H
sbecmdsram.C
sbecmdsram.H
sbecmdtracearray.C
sbecmdtracearray.H
z/
appzfiles.mk
chipop_table.C
ipl_table.C
Makefile
sbecmdcntrldmt.C
sbecmdcntrldmt.H
sbecmdiplcontrol.C
sbecmdiplcontrol.H
core/
assert.h
chipop_handler.C
chipop_handler.H
corefiles.mk
ipl.C
ipl.H
Makefile
pk_app_cfg.h
plugins
sbeUserDataParser.C
pool.C
pool.H
sbe_host_intf.H
sbe_sp_intf.H
sbecmdprocessor.C
sbecmdreceiver.C
sbeConsole.C
sbeConsole.H
sbeerrorcodes.H
sbeevents.H
sbeexeintf.H
sbefapiutil.C
sbefapiutil.H
sbeFFDC.C
sbeFFDC.H
sbeFFDCType.H
sbefifo.H
sbeFifoMsgUtils.C
sbeFifoMsgUtils.H
sbeglobals.C
sbeglobals.H
sbeHostMsg.C
sbeHostMsg.H
sbeHostUtils.C
sbeHostUtils.H
sbeirq.C
sbeirq.H
sbeirqregistersave.H
sbemain.C
sbeMemAccessInterface.C
sbeMemAccessInterface.H
sberegaccess.C
sberegaccess.H
sbes0handler.C
sbes0handler.H
sbescom.C
sbescom.H
sbeSecureMemRegionManager.C
sbeSecureMemRegionManager.H
sbeSecurity.C
sbeSecurity.H
sbeSpMsg.C
sbeSpMsg.H
sbestates.H
sbeTimerSvc.C
sbeTimerSvc.H
sbetrace.H
sbeutil.C
sbeutil.H
sbeXipUtils.H
securityAlgo.C
securityAlgo.H
vector
test/
framework/
autocitest
build-script
check-copyright
copyright-check.sh
create-sandbox
etc
patches
patchlist.txt
standalone.simics.patch
workarounds.postsimsetup
workarounds.presimsetup
populate-sandbox
sbetest-start.sh
setup-env
testcases/
ffdc.xml
test.xml
testAbort.py
testAduMem.xml
testAduMem_124B.py
testAduMem_ecc.py
testAduMem_itag.py
testAduMem_noEccNoItag.py
testAduMem_withEccItag.py
testAduMem_withEccWithItagReadWrite.py
testArrayAccess.xml
testAxone.simics
testCntlInstruction.py
testCntlInstruction.xml
testContinueMpipl.py
testContinueSbeBoot.py
testEnterMpipl.py
testExecutorCntrlTimer.py
testExecutorCntrlTimer.xml
testExecutorMemory.py
testExecutorPSU.py
testExecutorPutRing.py
testExecutorPutRing.xml
testExecutorStopTimer.py
testFastAccess.xml
testFastArray.py
testFifoReset.py
testFifoReset.xml
testFlushNVDIMM.py
testFlushNVDIMM.xml
testGeneric.xml
testGetCapabilities.py
testGetMem.py
testGetMem_expdata.py
testGetRing.py
testGetRing.xml
testHostFFDC.py
testIstep.xml
testIstepAuto.py
testIstepInvalid.py
testIstepInvalidFenced.py
testIstepSuccess.py
testMatchStashPair.py
testMemPBA.py
testMemUtil.py
testPSUGetCapabilities.py
testPsuHostPassThrough.py
testPSUReadSbeMem.py
testPSUSetFFDCAddr.py
testPSUSetFFDCAddr.xml
testPSUSetStashPair.py
testPSUSetStashPair.xml
testPSUUserUtil.py
testPSUUtil.py
testPutGetMem.xml
testPutGetRegFpr.py
testPutGetRegGpr.py
testPutGetRegSpr.py
testPutGetScom.py
testPutMem_fail.py
testQuiesce.py
testQuiesce.xml
testRegAccess.xml
testRegistry.py
testRunTillSbeBooted.py
testSbeDump.py
testScomUtil.py
testSecurity.py
testSecurity.xml
testSecurityListDump.py
testSecurityListDump.xml
testSram.py
testSram.xml
testStartInstruction.py
testStopClocks.py
testStopClocks.xml
testStopInstruction.py
testSuspendIO.py
testSuspendIO.xml
testSystemFabricMap.py
testSystemFabricMap.xml
testTraceArray.py
testUnsecureMemRegions.py
testUnsecureMemRegions.xml
testUtil.py
tools/
debug/
sbe-debug.py
simics/
makefile
sbe_startup.simics
sbe_startupAxone.simics
simics-debug-framework.py
hooks/
addCopyright
gerrit-hostname
post-commit
pre-commit
pre-commit-actions
pre-commit-prologs
setupgithooks.sh
verify-commit
image/
Makefile
sbe_default_tool.c
iplbuild/
Makefile
models/
n10_e9027_tp026_soa_sc_u285_01/
base
n10_e9030_tp029_soa_sc_u339_01/
base
n10_e9031_tp030_soa_sc_u008_01/
base
n10_e9031_tp030_soa_sc_u012_01/
base
n10_e9031_tp030_soa_sc_u022_01/
base
pibrepr_tool/
gen_pibrepr_data.py
insert_pibrepr.sh
scripts/
ppeCreateAttrGetSetMacros.pl
ppeParseAttrGetSetMacros.pl
ppeParseAttributeInfo.pl
ppeParseProcSbeFixed.pl
ppeSetFixed.pl
trace/
cmvc/
makefile
jhash.h
Makefile
ppe2fsp.c
ppe2fsp.h
ppe2fsp_cmd.c
ppetracepp.C
trac_interface.h
tracehash.pl
utils/
cmvcRelease.py
CommitSbeImageToCMVC.py
conv_rel_branch.pl
gitRelease.pl
modules/
gitUtil.pm
README
sandbox-create
sbe-size/
absolute.gnuplot
collect-section-sizes
compare-section-breakdown
compare-section-sizes
deltas.gnuplot
README
section-breakdown.py
section-deltas.py
section-sizes.py
view-section-sizes
sbeCmvcConstants.py
sbeCmvcUtility.py
sbeGitTool.pl
sbePatchUtility.py
sbePrime.py

Endnotes

This build tree was built with Public Domain POSIX make. Thanks to Ron Yorston for his help and his Public Domain POSIX make (pdpmake) utility.