summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 445810c)
raw | patch | inline | side by side (parent: 445810c)
author | Mike Line <m-line1@ti.com> | |
Wed, 3 Nov 2010 18:33:46 +0000 (14:33 -0400) | ||
committer | Mike Line <m-line1@ti.com> | |
Wed, 3 Nov 2010 18:33:46 +0000 (14:33 -0400) |
A single linker command file is used for both the big and little endian
IBL. The template file is used by make to create the list of object
files with the correct endian values to be used during link.
IBL. The template file is used by make to create the list of object
files with the correct endian values to be used during link.
src/make/ibl_c6472/ibl_common.inc | [new file with mode: 0644] | patch | blob |
src/make/ibl_c6472/ibl_init_objs_template.inc | [new file with mode: 0644] | patch | blob |
src/make/ibl_c6472/ibl_objs_template.inc | [new file with mode: 0644] | patch | blob |
diff --git a/src/make/ibl_c6472/ibl_common.inc b/src/make/ibl_c6472/ibl_common.inc
--- /dev/null
@@ -0,0 +1,38 @@
+/************************************************************************************
+ * FILE PURPOSE: Provide common memory and sections definitions for ibl_init and ibl
+ ************************************************************************************
+ * FILE NAME: ibl_common.inc
+ *
+ * DESCRIPTION: Defines the common memory map and section placement required
+ * to get ibl and ibl_init to work together in a two stage load
+ * process.
+ *************************************************************************************/
+
+-c
+-stack 0x800
+-heap 0x6000
+
+
+MEMORY
+{
+ TEXT_INIT : origin = 0x800000, length = 0x2700
+ TEXT : origin = 0x802700, length = 0xd900
+ STACK : origin = 0x810000, length = 0x0800
+ HEAP : origin = 0x810800, length = 0x6000
+ DATA_INIT : origin = 0x816800, length = 0x0200
+ DATA : origin = 0x816a00, length = 0x2e00
+ CFG : origin = 0x819800, length = 0x0300
+ STAT : origin = 0x819b00, length = 0x0200
+}
+
+
+SECTIONS
+{
+ .stack > STACK
+ .sysmem > HEAP
+
+ .ibl_config_table > CFG
+ .ibl_status_table > STAT
+
+}
+
diff --git a/src/make/ibl_c6472/ibl_init_objs_template.inc b/src/make/ibl_c6472/ibl_init_objs_template.inc
--- /dev/null
@@ -0,0 +1,18 @@
+/* ibl_init_objs_template.inc
+ *
+ * list of object files tagged with the endian field for replacement during make
+ */
+
+../main/c64x/make/iblinit.ENDIAN_TAG.oc
+../device/c64x/make/c6472init.ENDIAN_TAG.oc
+../hw/c64x/make/pll.ENDIAN_TAG.oc
+../hw/c64x/make/i2c.ENDIAN_TAG.oc
+../interp/c64x/make/btblwrap.ENDIAN_TAG.oc
+../interp/c64x/make/btblpr.ENDIAN_TAG.oc
+../interp/c64x/make/gem.ENDIAN_TAG.oc
+
+
+
+
+
+
diff --git a/src/make/ibl_c6472/ibl_objs_template.inc b/src/make/ibl_c6472/ibl_objs_template.inc
--- /dev/null
@@ -0,0 +1,37 @@
+/* ibl_objs_template.inc
+ *
+ * list of oject files tagged with the endian field for replacement during make
+ */
+
+../main/c64x/make/iblmain.ENDIAN_TAG.oc
+../device/c64x/make/c6472.ENDIAN_TAG.oc
+../ethboot/c64x/make/ethboot.ENDIAN_TAG.oc
+../nandboot/c64x/make/nandboot.ENDIAN_TAG.oc
+../driver/c64x/make/net.ENDIAN_TAG.oc
+../driver/c64x/make/arp.ENDIAN_TAG.oc
+../driver/c64x/make/ip.ENDIAN_TAG.oc
+../driver/c64x/make/udp.ENDIAN_TAG.oc
+../driver/c64x/make/stream.ENDIAN_TAG.oc
+../driver/c64x/make/timer.ENDIAN_TAG.oc
+../driver/c64x/make/bootp.ENDIAN_TAG.oc
+../driver/c64x/make/tftp.ENDIAN_TAG.oc
+../driver/c64x/make/nand.ENDIAN_TAG.oc
+../hw/c64x/make/t64.ENDIAN_TAG.oc
+../hw/c64x/make/cpmacdrv.ENDIAN_TAG.oc
+../hw/c64x/make/psc.ENDIAN_TAG.oc
+../hw/c64x/make/emif31.ENDIAN_TAG.oc
+../hw/c64x/make/mdio.ENDIAN_TAG.oc
+../hw/c64x/make/gpio.ENDIAN_TAG.oc
+../hw/c64x/make/nandgpio.ENDIAN_TAG.oc
+../interp/c64x/make/bis.ENDIAN_TAG.oc
+../interp/c64x/make/cload.ENDIAN_TAG.oc
+../interp/c64x/make/osal.ENDIAN_TAG.oc
+../interp/c64x/make/blob.ENDIAN_TAG.oc
+
+../interp/c64x/make/dload.ENDIAN_TAG.oc
+../interp/c64x/make/elfwrap.ENDIAN_TAG.oc
+../interp/c64x/make/dlw_client.ENDIAN_TAG.oc
+../interp/c64x/make/dload_endian.ENDIAN_TAG.oc
+../interp/c64x/make/ArrayList.ENDIAN_TAG.oc
+
+../ecc/c64x/make/3byte_ecc.ENDIAN_TAG.oc