summaryrefslogtreecommitdiffstats
path: root/src/securerom.ld
diff options
context:
space:
mode:
authorStephen Cprek <smcprek@us.ibm.com>2016-12-05 16:29:06 -0600
committerDaniel M. Crowell <dcrowell@us.ibm.com>2017-01-30 11:15:34 -0500
commitaff3f67b49b87d5e2755b364ecb512641bbb4540 (patch)
treee87cd2eb0afe2d3721ae2bfb7928c6a6b134e590 /src/securerom.ld
parent5784da25300866c71551f1f0411d469eb3a3c922 (diff)
downloadtalos-hostboot-aff3f67b49b87d5e2755b364ecb512641bbb4540.tar.gz
talos-hostboot-aff3f67b49b87d5e2755b364ecb512641bbb4540.zip
Add ROM code files in Hostboot
RTC: 143902 Change-Id: Iff00250b1dd36c301c311147a1540a5f3c33f19b Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/33607 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/securerom.ld')
-rw-r--r--src/securerom.ld96
1 files changed, 96 insertions, 0 deletions
diff --git a/src/securerom.ld b/src/securerom.ld
new file mode 100644
index 000000000..10670afe9
--- /dev/null
+++ b/src/securerom.ld
@@ -0,0 +1,96 @@
+/* IBM_PROLOG_BEGIN_TAG */
+/* This is an automatically generated prolog. */
+/* */
+/* $Source: src/securerom.ld $ */
+/* */
+/* OpenPOWER HostBoot Project */
+/* */
+/* Contributors Listed Below - COPYRIGHT 2016,2017 */
+/* [+] International Business Machines Corp. */
+/* */
+/* */
+/* 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 */
+/*****************************************************************************/
+/* linker script for low level firmware */
+/*****************************************************************************/
+
+/* PH: to use the same lds file for 32/64bit, don't specify
+ * OUTPUT_FORMAT, OUTPUT_ARCH here.
+ * /
+ OUTPUT_FORMAT("elf64-powerpc")
+ OUTPUT_ARCH(powerpc64:common)
+ */
+
+/* set the entry point */
+ENTRY(_instruction_start)
+
+MEMORY {
+ secure_boot_rom (IRX): ORIGIN = 0x80001C0000000000, LENGTH = 32K
+/* untrusted_memory (RW): ORIGIN = 0x8000000000000000, LENGTH = 0x0000000000800000
+* trusted_memory (RW): ORIGIN = 0x8000000000800000, LENGTH = 0x800000FFFF800000
+*/
+}
+
+
+SECTIONS {
+ . = 0x80001C0000000000; /* tbrom base address */
+
+ .branchtable : {
+ . = ALIGN(0x1000);
+ }>secure_boot_rom
+
+ .text : {
+ *(.text)
+ }>secure_boot_rom
+
+ . = ALIGN(8);
+
+ __toc_start = .;
+ .toc : {
+ *(.toc .got)
+ }>secure_boot_rom
+ . = ALIGN(8);
+ __toc_end = .;
+
+ .data : {
+ *(.data)
+ *(.rodata .rodata.*)
+ *(.got1)
+ *(.sdata)
+ }>secure_boot_rom
+
+ . = ALIGN(8);
+
+ /* PH: opd section must be separate, if i put it in .data,
+ * the C functions are not present in the generated file....
+ * If anybody can explain why, i'd be glad to hear...
+ * Note: the KEEP has been removed was: " KEEP (*(.opd)) "
+ */
+ .opd ALIGN(8) : {
+ *(.opd)
+ }>secure_boot_rom
+
+ . = ALIGN(8);
+ __bss_start = .;
+ .bss : {
+ *(.sbss) *(.scommon)
+ *(.dynbss)
+ *(.bss)
+ }>secure_boot_rom
+ . = ALIGN(8);
+ __bss_end = .;
+ __bss_size = SIZEOF(.bss);
+
+}
OpenPOWER on IntegriCloud