Added makefile support for writer utilities
authorHao Zhang <hzhang@ti.com>
Wed, 15 Jun 2011 20:29:06 +0000 (16:29 -0400)
committerHao Zhang <hzhang@ti.com>
Wed, 15 Jun 2011 20:29:06 +0000 (16:29 -0400)
writer/eeprom/evmc6670l/Makefile [new file with mode: 0644]
writer/eeprom/evmc6670l/eepromwriter.cmd [new file with mode: 0644]

diff --git a/writer/eeprom/evmc6670l/Makefile b/writer/eeprom/evmc6670l/Makefile
new file mode 100644 (file)
index 0000000..aca05b4
--- /dev/null
@@ -0,0 +1,81 @@
+# Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/
+
+CC = cl6x
+CLIB_INC = $(C_DIR)/include
+STRIP = strip6x
+PRELINK = prelink6x
+
+HOST_PRFX = C60
+HOST_EXT = 6x
+
+AS = cl6x
+ifeq ($(DEVICE),C6670)
+DEVICE_NUM = 6670
+C_OPTS = -DDEVICE=6670 ## Turbo Nyquist 
+C_OPTS += -mv6600  
+A_OPTS += -mv6600
+else
+ifeq ($(DEVICE),C6678)
+DEVICE_NUM = 6678
+C_OPTS = -DDEVICE=6678 ## Shannon 
+C_OPTS += -mv6600  
+A_OPTS += -mv6600
+else
+DEFAULT:
+       @echo "Device '$(DEVICE)' not supported"
+       @exit 1
+endif
+endif
+
+TARGET_NAME = bin/eepromwriter_evm$(DEVICE_NUM)l.out
+
+C_OPTS += -g ## Enable debugging  
+C_OPTS += -ss ## interlist C source and optimizer with .asm source
+C_OPTS += -ml3  ## Far memory model
+C_OPTS += -k  ## Keep .asm files
+ifeq ($(ENDIAN),big)
+C_OPTS+= -me ## Big Endian
+endif
+C_OPTS += -pds67
+C_OPTS += --abi=elfabi
+ifeq ($(ENDIAN),big)
+A_OPTS += -me
+endif
+A_OPTS += --abi=elfabi
+OUTPUT_FILE_OPTION = --output_file
+LNK_OPTS += -z eepromwriter.cmd -m bin/eepromwriter_evm$(DEVICE_NUM)l.map --dynamic
+LNK_OPTS += -l $(C_DIR)/lib/rts6600_elf.lib
+LNK_OPTS += -l $(PFORM_LIB_DIR)/evmc$(DEVICE_NUM)l/platform_lib/lib/debug/ti.platform.evm$(DEVICE_NUM)l.ae66
+LNK_OPTS += --reread_libs --rom_model
+
+OBJ_DIR = obj
+PFORM_LIB_INC = $(PFORM_LIB_DIR) 
+SRCDIR = ../src
+
+SRC_FILES = eepromwriter.c 
+
+VPATH = $(SRCDIR)
+INCL = -I $(CLIB_INC) $(patsubst %,-I%,$(VPATH)) -I $(PFORM_LIB_DIR) -I ../include
+
+OBJS = $(patsubst %.c,$(OBJ_DIR)/%.obj,$(filter %.c, $(SRC_FILES)))
+OBJS += $(patsubst %.s,$(OBJ_DIR)/%.obj,$(filter %.s, $(SRC_FILES)))
+
+all: $(TARGET_NAME)
+
+$(TARGET_NAME): $(OBJS) eepromwriter.cmd
+       $(CC) $(C_OPTS) $(OBJS) $(LNK_OPTS) -o $@ 
+
+$(OBJ_DIR)/%.obj: %.c $(HEADERS) $(OBJ_DIR)/.created
+       $(CC) -c $(C_OPTS) $(INCL) $(DEFINE_TARGET) $< $(OUTPUT_FILE_OPTION) $@
+
+$(OBJ_DIR)/%.obj: %.s $(HEADERS) $(OBJ_DIR)/.created
+       $(CC) -c $(A_OPTS) $(DEFINE_TARGET) $< $(OUTPUT_FILE_OPTION) $@
+
+$(OBJ_DIR)/.created:
+       mkdir -p $(OBJ_DIR)
+       touch $(OBJ_DIR)/.created
+
+clean:
+       -rm -rf $(OBJ_DIR)
+       -rm -rf *.asm
+
diff --git a/writer/eeprom/evmc6670l/eepromwriter.cmd b/writer/eeprom/evmc6670l/eepromwriter.cmd
new file mode 100644 (file)
index 0000000..cab1993
--- /dev/null
@@ -0,0 +1,77 @@
+/******************************************************************************
+ * Copyright (c) 2011 Texas Instruments Incorporated - http://www.ti.com
+ * 
+ *  Redistribution and use in source and binary forms, with or without 
+ *  modification, are permitted provided that the following conditions 
+ *  are met:
+ *
+ *    Redistributions of source code must retain the above copyright 
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ *    Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the 
+ *    documentation and/or other materials provided with the   
+ *    distribution.
+ *
+ *    Neither the name of Texas Instruments Incorporated nor the names of
+ *    its contributors may be used to endorse or promote products derived
+ *    from this software without specific prior written permission.
+ *
+ *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
+ *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
+ *  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ *  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 
+ *  OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 
+ *  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 
+ *  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ *  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ *  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 
+ *  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 
+ *  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ * 
+ *****************************************************************************/
+/*
+ *  Linker command file
+ *
+ */
+
+-c
+-heap  0x40000
+-stack 0x8000
+
+/* Memory Map 1 - the default */
+MEMORY
+{
+    L1PSRAM (RWX)  : org = 0x0E00000, len = 0x7FFF
+    L1DSRAM (RWX)  : org = 0x0F00000, len = 0x7FFF 
+
+    L2SRAM (RWX)   : org = 0x0820000, len = 0xe0000
+    MSMCSRAM (RWX) : org = 0xc000000, len = 0x200000
+    DDR3 (RWX)     : org = 0x80000000,len = 0x10000000
+}
+
+SECTIONS
+{
+    .csl_vect   >       L2SRAM
+    .cppi       >       L2SRAM
+    .linkram    >       L2SRAM
+    .mac_buffer >       L2SRAM
+    platform_lib >     L2SRAM
+    .text       >       L2SRAM
+    GROUP (NEAR_DP)
+    {
+    .neardata
+    .rodata 
+    .bss
+    } load > L2SRAM
+    .stack      >       L2SRAM
+    .cinit      >       L2SRAM
+    .cio        >       L2SRAM
+    .const      >       L2SRAM
+    .data       >       L2SRAM
+    .switch     >       L2SRAM
+    .sysmem     >       L2SRAM
+    .far        >       L2SRAM
+    .testMem    >       L2SRAM
+    .fardata    >       L2SRAM
+}