diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/build/Makefile | 20 | ||||
-rw-r--r-- | src/build/img_defs.mk | 10 | ||||
l--------- | src/build/import_hwp_mk/power_axone | 1 | ||||
-rwxr-xr-x | src/build/linkerscripts/power_axone/linkloader.cmd | 95 | ||||
-rw-r--r-- | src/build/linkerscripts/power_axone/linkotprom.cmd | 43 | ||||
-rw-r--r-- | src/build/linkerscripts/power_axone/linkseeprom.cmd | 203 | ||||
-rw-r--r-- | src/build/power_axone_defs.mk | 99 |
7 files changed, 460 insertions, 11 deletions
diff --git a/src/build/Makefile b/src/build/Makefile index d144fcc7..61ed136a 100644 --- a/src/build/Makefile +++ b/src/build/Makefile @@ -30,7 +30,7 @@ ifndef img export img = seeprom endif -# pass argument project=power/zthemis +# pass argument project=power/power_axone/zthemis # By default power image is built ifndef project export project = power @@ -56,6 +56,7 @@ LIB_DIRS += -L$(OBJDIR)/sbefw/core_pibmem SBECORELIB := $(OBJDIR)/sbefw/core_pibmem/libsbecorepibmem.a LLIBS += -lsbecorepibmem +SEEPROM_SUBDIRS += targetseeprom_../sbefw/core LIB_DIRS += -L$(OBJDIR)/sbefw/core_seeprom SBECORESEEPROMLIB := $(OBJDIR)/sbefw/core_seeprom/libsbecoreseeprom.a LLIBS += -lsbecoreseeprom @@ -65,6 +66,7 @@ LIB_DIRS += -L$(OBJDIR)/sbefw/app/$(PROJECT_APP_DIR)_pibmem SBEAPPLIB := $(OBJDIR)/sbefw/app/$(PROJECT_APP_DIR)_pibmem/lib$(PROJECT_APP_PIBMEM_LIB).a LLIBS += -l$(PROJECT_APP_PIBMEM_LIB) +SEEPROM_SUBDIRS += targetseeprom_../sbefw/app/$(PROJECT_APP_DIR) LIB_DIRS += -L$(OBJDIR)/sbefw/app/$(PROJECT_APP_DIR)_seeprom SBECORESEEPROMLIB := $(OBJDIR)/sbefw/app/$(PROJECT_APP_DIR)_seeprom/lib$(PROJECT_APP_SEEPROM_LIB).a LLIBS += -l$(PROJECT_APP_SEEPROM_LIB) @@ -74,6 +76,7 @@ LIB_DIRS += -L$(OBJDIR)/sbefw/app/common_pibmem SBEAPPLIB := $(OBJDIR)/sbefw/app/common_pibmem/libsbeappcommonpibmem.a LLIBS += -lsbeappcommonpibmem +SEEPROM_SUBDIRS += targetseeprom_../sbefw/app/common LIB_DIRS += -L$(OBJDIR)/sbefw/app/common_seeprom SBECORESEEPROMLIB := $(OBJDIR)/sbefw/app/common_seeprom/libsbeappcommonseeprom.a LLIBS += -lsbeappcommonseeprom @@ -84,6 +87,7 @@ LIB_DIRS += -L$(OBJDIR)/fapi2 FAPI2LIB := $(OBJDIR)/fapi2/libfapi2.a LLIBS += -lfapi2 +SEEPROM_SUBDIRS += targetseeprom_$(PLAT_FAPI2_DIR) LIB_DIRS += -L$(OBJDIR)/fapi2_seeprom FAPI2LIB := $(OBJDIR)/fapi2/libfapi2seeprom.a LLIBS += -lfapi2seeprom @@ -142,7 +146,7 @@ $(IMG_DIR)/$(IMAGE_SEEPROM_NAME).bin $(IMG_DIR)/$(IMAGE_SEEPROM_NAME).dis: $(IMG $(OBJDUMP) -S $< > $(IMG_DIR)/$(IMAGE_SEEPROM_NAME).dis #create a linked ELF executable -$(IMG_DIR)/$(IMAGE_SEEPROM_NAME).out: ppe_trace_bin buildInfo $(SUBDIRS) _seeprom_libs $(LINK_OBJS) $(LINK_SCRIPT_SEEPROM) +$(IMG_DIR)/$(IMAGE_SEEPROM_NAME).out: ppe_trace_bin buildInfo $(SUBDIRS) $(SEEPROM_SUBDIRS) $(LINK_OBJS) $(LINK_SCRIPT_SEEPROM) $(LD) -n -T$(LINK_SCRIPT_SEEPROM) -Map $(IMG_DIR)/$(IMAGE_SEEPROM_NAME).map \ -Bstatic -o $(IMG_DIR)/$(IMAGE_SEEPROM_NAME).out $(BOOT_OBJDIR)/$(BOOT_OBJECTS) $(BUILDDATA_OBJDIR)/$(IMAGE_BASE_PPE_HEADER).o $(OBJS) $(LIB_DIRS) \ --start-group $(LLIBS) --end-group @@ -162,7 +166,7 @@ $(IMG_DIR)/$(IMAGE_SBE_NAME).bin $(IMG_DIR)/$(IMAGE_SBE_NAME).dis: $(IMG_DIR)/$( $(OBJDUMP) -S $< > $(IMG_DIR)/$(IMAGE_SBE_NAME).dis # create a linked ELF executable -$(IMG_DIR)/$(IMAGE_SBE_NAME).out: ppe_trace_bin buildInfo $(SUBDIRS) _seeprom_libs $(LINK_OBJS) $(LINK_SCRIPT_SBE) +$(IMG_DIR)/$(IMAGE_SBE_NAME).out: ppe_trace_bin buildInfo $(SUBDIRS) $(SEEPROM_SUBDIRS) $(LINK_OBJS) $(LINK_SCRIPT_SBE) $(LD) -e __system_reset -T$(LINK_SCRIPT_SBE) -Map $(IMG_DIR)/$(IMAGE_SBE_NAME).map -Bstatic -o $(IMG_DIR)/$(IMAGE_SBE_NAME).out $(LIB_DIRS) $(BUILDDATA_OBJDIR)/base_sbe_fixed.o --start-group $(LLIBS) --end-group # pass the link command file through the C preprocessor to evaluate macros and remove comments @@ -200,7 +204,7 @@ tar: @echo "Generated simics.tar in Sbe images Directory" .PHONY: all normalize compress defaultset appendloader add_LoaderAddr symbols report \ - appendoverrides xml security tracehash topfixedheaders $(SUBDIRS) _seeprom_libs \ + appendoverrides xml security tracehash topfixedheaders $(SUBDIRS) $(SEEPROM_SUBDIRS) \ tar install buildinfo: $(P9_XIP_TOOL) $(IMG_DIR)/$(IMAGE_SEEPROM_NAME).bin @@ -266,12 +270,8 @@ platattr: # Build the subdirectories $(SUBDIRS): $(MAKE) -I $(INCLUDES) -C $@ -f Makefile -_seeprom_libs: - $(MAKE) -I $(INCLUDES) -C ../hwpf -f Makefile img_mem=seeprom - $(MAKE) -I $(INCLUDES) -C ../sbefw/core -f Makefile img_mem=seeprom - $(MAKE) -I $(INCLUDES) -C ../sbefw/app/common -f Makefile img_mem=seeprom - $(MAKE) -I $(INCLUDES) -C ../sbefw/app/$(PROJECT_APP_DIR) -f Makefile img_mem=seeprom - +$(SEEPROM_SUBDIRS): + $(MAKE) -I $(INCLUDES) -C $(subst targetseeprom_,, $@) -f Makefile img_mem=seeprom #Build the SBE XIP Tools $(SBE_TOOLS): $(P9_XIP_TOOL) diff --git a/src/build/img_defs.mk b/src/build/img_defs.mk index 24b82b95..cc22374e 100644 --- a/src/build/img_defs.mk +++ b/src/build/img_defs.mk @@ -172,7 +172,7 @@ export IMAGEPROCS_CEN_SRCDIR = $(IMPORT_SRCDIR)/chips/centaur/utils/imageProcs endif ifndef BASE_OBJDIR -export BASE_OBJDIR = $(SBE_ROOT_DIR)/obj/$(IMAGE_SUFFIX) +export BASE_OBJDIR = $(SBE_ROOT_DIR)/obj/$(project)/$(IMAGE_SUFFIX) endif ifndef TAR_OBJDIR @@ -477,6 +477,10 @@ ifeq ($(SBE_S0_SUPPORT), 1) GCC-DEFS += -D_S0_=$(SBE_S0_SUPPORT) endif +ifeq ($(project),power_axone) +GCC-DEFS += -DSBE_AXONE_CONFIG +endif + ############################################################################ CFLAGS = PPE-CFLAGS = $(CFLAGS) -c $(GCC-CFLAGS) $(PIPE-CFLAGS) $(GCC-O-LEVEL) $(INCLUDES) @@ -496,6 +500,10 @@ ifeq ($(project),power) include power_defs.mk endif +ifeq ($(project),power_axone) +include power_axone_defs.mk +endif + ifeq ($(project),z) include z_defs.mk endif diff --git a/src/build/import_hwp_mk/power_axone b/src/build/import_hwp_mk/power_axone new file mode 120000 index 00000000..7266847b --- /dev/null +++ b/src/build/import_hwp_mk/power_axone @@ -0,0 +1 @@ +power
\ No newline at end of file diff --git a/src/build/linkerscripts/power_axone/linkloader.cmd b/src/build/linkerscripts/power_axone/linkloader.cmd new file mode 100755 index 00000000..c10cf978 --- /dev/null +++ b/src/build/linkerscripts/power_axone/linkloader.cmd @@ -0,0 +1,95 @@ +/* IBM_PROLOG_BEGIN_TAG */ +/* This is an automatically generated prolog. */ +/* */ +/* $Source: src/build/linkerscripts/power_axone/linkloader.cmd $ */ +/* */ +/* OpenPOWER sbe Project */ +/* */ +/* Contributors Listed Below - COPYRIGHT 2015,2018 */ +/* */ +/* */ +/* Licensed under the Apache License, Version 2.0 (the "License"); */ +/* you may not use this file except in compliance with the License. */ +/* You may obtain a copy of the License at */ +/* */ +/* http://www.apache.org/licenses/LICENSE-2.0 */ +/* */ +/* Unless required by applicable law or agreed to in writing, software */ +/* distributed under the License is distributed on an "AS IS" BASIS, */ +/* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or */ +/* implied. See the License for the specific language governing */ +/* permissions and limitations under the License. */ +/* */ +/* IBM_PROLOG_END_TAG */ + +// Need to do this so that elf32-powerpc is not modified! +#undef powerpc + +#ifndef BASE_LOADER_STACK_SIZE +#define BASE_LOADER_STACK_SIZE 6144 +#endif +#include "sbe_link.H" + +OUTPUT_FORMAT(elf32-powerpc); + +MEMORY +{ + sram : ORIGIN = SBE_LOADER_BASE_ORIGIN, LENGTH = SBE_LOADER_BASE_LENGTH +} + +SECTIONS +{ + . = SBE_LOADER_BASE_ORIGIN; + + //////////////////////////////// + // Read-only Data + //////////////////////////////// + + . = ALIGN(8); + _RODATA_SECTION_BASE = .; + + .text . : { *(.text) } > sram + .data . : { *(.data) } > sram + + // SDA2 constant sections .sdata2 and .sbss2 must be adjacent to each + // other. Our SDATA sections are small so we'll use strictly positive + // offsets. + + _SDA2_BASE_ = .; + .sdata2 . : { *(.sdata2) } > sram + .sbss2 . : { *(.sbss2) } > sram + + // Other read-only data. + + .rodata . : { *(.rodata*) *(.got2) } > sram + + _RODATA_SECTION_SIZE = . - _RODATA_SECTION_BASE; + + //////////////////////////////// + // Read-write Data + //////////////////////////////// + + . = ALIGN(8); + _DATA_SECTION_BASE = .; + + // SDA sections .sdata and .sbss must be adjacent to each + // other. Our SDATA sections are small so we'll use strictly positive + // offsets. + + _SDA_BASE_ = .; + .sdata . : { *(.sdata) } > sram + .sbss . : { *(.sbss) } > sram + + // Other read-write data + // It's not clear why boot.S is generating empty .glink,.iplt + + .rela . : { *(.rela*) } > sram + .rwdata . : { *(.data) *(.bss) } > sram + + _BASE_LOADER_STACK_LIMIT = .; + _BASE_LOADER_STACK_LIMIT = . + BASE_LOADER_STACK_SIZE - 1; + + . = ALIGN(8); + _loader_end = . - 0; + +} diff --git a/src/build/linkerscripts/power_axone/linkotprom.cmd b/src/build/linkerscripts/power_axone/linkotprom.cmd new file mode 100644 index 00000000..59d9a37b --- /dev/null +++ b/src/build/linkerscripts/power_axone/linkotprom.cmd @@ -0,0 +1,43 @@ +/* IBM_PROLOG_BEGIN_TAG */ +/* This is an automatically generated prolog. */ +/* */ +/* $Source: src/build/linkerscripts/power_axone/linkotprom.cmd $ */ +/* */ +/* OpenPOWER sbe Project */ +/* */ +/* Contributors Listed Below - COPYRIGHT 2016,2018 */ +/* */ +/* */ +/* Licensed under the Apache License, Version 2.0 (the "License"); */ +/* you may not use this file except in compliance with the License. */ +/* You may obtain a copy of the License at */ +/* */ +/* http://www.apache.org/licenses/LICENSE-2.0 */ +/* */ +/* Unless required by applicable law or agreed to in writing, software */ +/* distributed under the License is distributed on an "AS IS" BASIS, */ +/* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or */ +/* implied. See the License for the specific language governing */ +/* permissions and limitations under the License. */ +/* */ +/* IBM_PROLOG_END_TAG */ + +// Need to do this so that elf32-powerpc is not modified! +#undef powerpc + +#include "sbe_link.H" + +OUTPUT_FORMAT(elf32-powerpc); + +MEMORY +{ + sram : ORIGIN = OTPROM_ORIGIN, LENGTH = OTPROM_BLOCK_SIZE +} + +SECTIONS +{ + . = OTPROM_ORIGIN; + .text . : { *(.text)} + . = OTPROM_FIXED_SIZE; + .fixed . : { *(.fixed)} +} diff --git a/src/build/linkerscripts/power_axone/linkseeprom.cmd b/src/build/linkerscripts/power_axone/linkseeprom.cmd new file mode 100644 index 00000000..fc7e0ce4 --- /dev/null +++ b/src/build/linkerscripts/power_axone/linkseeprom.cmd @@ -0,0 +1,203 @@ +/* IBM_PROLOG_BEGIN_TAG */ +/* This is an automatically generated prolog. */ +/* */ +/* $Source: src/build/linkerscripts/power_axone/linkseeprom.cmd $ */ +/* */ +/* OpenPOWER sbe Project */ +/* */ +/* Contributors Listed Below - COPYRIGHT 2015,2018 */ +/* */ +/* */ +/* Licensed under the Apache License, Version 2.0 (the "License"); */ +/* you may not use this file except in compliance with the License. */ +/* You may obtain a copy of the License at */ +/* */ +/* http://www.apache.org/licenses/LICENSE-2.0 */ +/* */ +/* Unless required by applicable law or agreed to in writing, software */ +/* distributed under the License is distributed on an "AS IS" BASIS, */ +/* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or */ +/* implied. See the License for the specific language governing */ +/* permissions and limitations under the License. */ +/* */ +/* IBM_PROLOG_END_TAG */ +// Need to do this so that elf32-powerpc is not modified! +#undef powerpc +#include "sbe_link.H" +OUTPUT_FORMAT(elf32-powerpc); + +#ifndef INITIAL_STACK_SIZE +#define INITIAL_STACK_SIZE 256 +#endif + +MEMORY +{ + pibmem : ORIGIN = SBE_BASE_ORIGIN, LENGTH = SBE_BASE_LENGTH + seeprom : ORIGIN = SBE_SEEPROM_BASE_ORIGIN, LENGTH = 0x40000 +} + +SECTIONS +{ + . = SBE_SEEPROM_BASE_ORIGIN; + _sbe_image_start_addr = . + SIZEOF_HEADERS; + + // TODO via RTC 149153 + // It seems first section in elf image is 8 byte aligned. + // We need to verify this assumption. + + // Get 8 byte alligned address + _sbe_image_start_addr = ( ( _sbe_image_start_addr % 8) == 0 ) ? _sbe_image_start_addr : ( _sbe_image_start_addr + ( 8 - ( _sbe_image_start_addr % 8))); + + // Get the image offset after elf header + _sbe_image_start_offset = _sbe_image_start_addr - .; + _seeprom_origin = . - 0; + _pibmem_origin = SBE_BASE_ORIGIN; + + //////////////////////////////// + // Header + //////////////////////////////// + .header : { + _header_origin = .; _header_offset = . - _seeprom_origin; *(.header); + } > seeprom + _header_size = . - _header_origin; + + // @TODO via RTC 136215 + // We have used allignment 0x200 so that it can be found + // at fixed location. once otprom loader support is enabled. + // alligment will not be required. + + //////////////////////////////// + // LOADER_TEXT + //////////////////////////////// + .loader_text ALIGN(0x200): { + _loader_text_origin = .; _loader_text_offset = . - _seeprom_origin; + *(.loader_text); + } > seeprom + _loader_text_size = . - _loader_text_origin; + + // @TODO via RTC 136215 + // loader_text section should come after fixed and related + // sections as we want fixed section at knowon offset. Currently we + // have shared SEEPROM start address ( IVPR register value ) with + // multiple teams. So keeping loader_text as first section. Once + // WE have otprom loader support, we will put loader_text at right + // position + + //////////////////////////////// + // FIXED + //////////////////////////////// + .fixed ALIGN(0x200) : { + _fixed_origin = .; _fixed_offset = . - _seeprom_origin; + *(.fixed) + } > seeprom + _fixed_size = . - _fixed_origin; + + //////////////////////////////// + // text + //////////////////////////////// + .text ALIGN(8): { + _text_origin = .; _text_offset = . - _seeprom_origin; + *\libistep2.a:(.text* ) *\libistep3.a:(.text* ) *\libistep4.a:(.text* ) *\libistepmpipl.a:(.text* ) *\libistep5.a:(.text* ) *\libsbecoreseeprom.a:(.text* ) *\libsbeapppowerseeprom.a:(.text* ) *\libsbeappcommonseeprom.a:(.text* ) *\libfapi2seeprom.a:(.text* ) } > seeprom + _text_size = . - _text_origin; + + //////////////////////////////// + // FIXED_TOC + //////////////////////////////// + .fixed_toc ALIGN(8) : { + _fixed_toc_origin = .; _fixed_toc_offset = . - _seeprom_origin; *(.fixed_toc); + } > seeprom + _fixed_toc_size = . - _fixed_toc_origin; + + //////////////////////////////// + // TOC + //////////////////////////////// + .toc ALIGN(4): { + _toc_origin = .; _toc_offset = . - _seeprom_origin; *(.toc); + } > seeprom + _toc_size = . - _toc_origin; + + //////////////////////////////// + // STRING + //////////////////////////////// + .strings : { + _strings_origin = .; _strings_offset = . - _seeprom_origin; *(.strings); + } > seeprom + _strings_size = . - _strings_origin; + + _seeprom_size = . - _seeprom_origin; + + // TODO via RTC 149153 + // It seems when we jump across memory region, elf creates 32 byte offset. + // We need to verify this assumption. + + _seeprom_size_with_elf_hdr = _seeprom_size + _sbe_image_start_offset; + _seeprom_size = ( ( _seeprom_size_with_elf_hdr % 32) == 0 ) ? _seeprom_size : ( _seeprom_size + ( 32 - (_seeprom_size_with_elf_hdr % 32))); + + + . = _pibmem_origin; + _base_origin = .; + _base_offset = . - _base_origin + _seeprom_size; + + .pkVectors ALIGN(32) : { + *(.vectors) + } > pibmem + + .base . : { + *(.text*) *(.eh_frame) *(.dtors*); + } > pibmem + + . = ALIGN(8); + _RODATA_SECTION_BASE = .; + + // SDA2 constant sections .sdata2 and .sbss2 must be adjacent to each + // other. Our SDATA sections are small so we'll use strictly positive + // offsets. + + _SDA2_BASE_ = .; + .sdata2 . : { *(.sdata2*) } > pibmem + .sbss2 . : { *(.sbss2*) } > pibmem + + . = ALIGN(8); + .rodata . : { + ctor_start_address = .; + *(.ctors) *(.ctors.*) + ctor_end_address = .; + *(.rodata*) *(.got2); + } > pibmem + _RODATA_SECTION_SIZE = . - _RODATA_SECTION_BASE; + + + . = ALIGN(8); _DATA_SECTION_BASE = .; + _SDA_BASE_ = .; + .data . : { + *(.data*) *(.comment) + } > pibmem + .sdata . : { *(.sdata*) } > pibmem + . = ALIGN(8); + + // We do not want to store bss section in sbe image as laoder will take + // care of it while loading image on PIBMEM. It will save us space in + // SEEPROM. So define XIP image related variables here so that SBE image + // finishes here. + + _base_size = . - _base_origin; + _pibmem_size = . - _pibmem_origin; + _sbe_image_size = _seeprom_size + ( . - _pibmem_origin ); + + _sbss_start = .; + .sbss . : { + *(.bss*) *(.sbss*); + . = ALIGN(8); + } > pibmem + _sbss_end = .; + + . = ALIGN(8); + _sbss_size = SIZEOF(.sbss); + + . = ALIGN(8); + _PK_INITIAL_STACK_LIMIT = .; + . = . + INITIAL_STACK_SIZE; + _PK_INITIAL_STACK = . - 1; + . = ALIGN(8); + +} diff --git a/src/build/power_axone_defs.mk b/src/build/power_axone_defs.mk new file mode 100644 index 00000000..172e185e --- /dev/null +++ b/src/build/power_axone_defs.mk @@ -0,0 +1,99 @@ +# IBM_PROLOG_BEGIN_TAG +# This is an automatically generated prolog. +# +# $Source: src/build/power_axone_defs.mk $ +# +# OpenPOWER sbe Project +# +# Contributors Listed Below - COPYRIGHT 2017,2018 +# +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. See the License for the specific language governing +# permissions and limitations under the License. +# +# IBM_PROLOG_END_TAG +# Levels of SBE logging +# 0 - No tracing +# 1 - Error +# 2 - Error, info +# 3 - Error, info, entry/exit +# 4 - Error, info, entry/exit, debug +SBE_TRACE_LEVEL_DEF = 2 + +FAPI_TRACE_LEVEL_DEF = 2 + +HOST_INTERFACE_AVAILABLE = 1 +PERIODIC_IO_TOGGLE_SUPPORTED = 1 + +export SBE_S0_SUPPORT = 1 + +ISTEP2_INFRA_DIR = $(IMPORT_HWP_MK_DIR)/istep2 +ISTEP3_INFRA_DIR = $(IMPORT_HWP_MK_DIR)/istep3 +ISTEP4_INFRA_DIR = $(IMPORT_HWP_MK_DIR)/istep4 +ISTEP5_INFRA_DIR = $(IMPORT_HWP_MK_DIR)/istep5 +ISTEPMPIPL_INFRA_DIR = $(IMPORT_HWP_MK_DIR)/istepmpipl +ISTEPCOMMON_INFRA_DIR = $(IMPORT_HWP_MK_DIR)/istepcommon +ARRAYACCESS_INFRA_DIR = $(IMPORT_HWP_MK_DIR)/arrayaccess + +OBJDIR-ISTEP2 = $(BASE_OBJDIR)/$(IMPORT_OBJDIR)/istep2 +OBJDIR-ISTEP3 = $(BASE_OBJDIR)/$(IMPORT_OBJDIR)/istep3 +OBJDIR-ISTEP4 = $(BASE_OBJDIR)/$(IMPORT_OBJDIR)/istep4 +OBJDIR-ISTEP5 = $(BASE_OBJDIR)/$(IMPORT_OBJDIR)/istep5 +OBJDIR-ISTEPMPIPL = $(BASE_OBJDIR)/$(IMPORT_OBJDIR)/istepmpipl +OBJDIR-ISTEPCOMMON = $(BASE_OBJDIR)/$(IMPORT_OBJDIR)/istepcommon +OBJDIR-ARRAYACCESS = $(BASE_OBJDIR)/arrayaccess + +PROJ_SUBDIRS += $(ISTEP2_INFRA_DIR) +PROJ_LIB_DIRS += -L$(OBJDIR-ISTEP2) +PROJ_LLIBS += -listep2 + +PROJ_SUBDIRS += $(ISTEP3_INFRA_DIR) +PROJ_LIB_DIRS += -L$(OBJDIR-ISTEP3) +PROJ_LLIBS += -listep3 + +PROJ_SUBDIRS += $(ISTEP4_INFRA_DIR) +PROJ_LIB_DIRS += -L$(OBJDIR-ISTEP4) +PROJ_LLIBS += -listep4 + +PROJ_SUBDIRS += $(ISTEP5_INFRA_DIR) +PROJ_LIB_DIRS += -L$(OBJDIR-ISTEP5) +PROJ_LLIBS += -listep5 + +PROJ_SUBDIRS += $(ISTEPMPIPL_INFRA_DIR) +PROJ_LIB_DIRS += -L$(OBJDIR-ISTEPMPIPL) +PROJ_LLIBS += -listepmpipl + +PROJ_SUBDIRS += $(ISTEPCOMMON_INFRA_DIR) +PROJ_LIB_DIRS += -L$(OBJDIR-ISTEPCOMMON) +PROJ_LLIBS += -listepcommon + +PROJ_SUBDIRS += $(ARRAYACCESS_INFRA_DIR) +PROJ_LIB_DIRS += -L$(OBJDIR-ARRAYACCESS) +PROJ_LLIBS += -larrayaccess +######################################################### +# mandatory defines # +######################################################### +IMAGE_SUFFIX := DD2 +GCC-DEFS += -DDD2 +IMAGE_SEEPROM_NAME := sbe_seeprom_$(IMAGE_SUFFIX) +IMAGE_SBE_NAME := sbe_pibmem_$(IMAGE_SUFFIX) + +IMAGE_LOADER_NAME := sbe_loader +IMAGE_OTPROM_NAME := sbe_otprom_$(IMAGE_SUFFIX) +IMAGE_BASE_PPE_HEADER := base_ppe_header + +SBE_SYMBOLS_NAME := sbe_$(IMAGE_SUFFIX).syms +SBE_STRINGFILE_NAME := sbeStringFile_$(IMAGE_SUFFIX) + +PROJECT_APP_DIR := power +PROJECT_APP_PIBMEM_LIB := sbeapppowerpibmem +PROJECT_APP_SEEPROM_LIB := sbeapppowerseeprom |