summaryrefslogtreecommitdiffstats
path: root/firmware/microblaze
diff options
context:
space:
mode:
authorJosh Blum <josh@joshknows.com>2010-12-14 16:16:11 -0800
committerJosh Blum <josh@joshknows.com>2010-12-14 16:16:11 -0800
commita338403c05ec1a279aa9f4b9e514767a1948a19c (patch)
tree96a133c9783639af9a08e37cd4b4ef5cb257f54a /firmware/microblaze
parent03d200f9484d9706535142d9cc0336fcf02b369c (diff)
downloaduhd-a338403c05ec1a279aa9f4b9e514767a1948a19c.tar.gz
uhd-a338403c05ec1a279aa9f4b9e514767a1948a19c.tar.bz2
uhd-a338403c05ec1a279aa9f4b9e514767a1948a19c.zip
usrp2: removed mb linker stuff, added bootloader + rmi gen
Diffstat (limited to 'firmware/microblaze')
-rw-r--r--firmware/microblaze/CMakeLists.txt1
-rw-r--r--firmware/microblaze/usrp2/CMakeLists.txt2
-rw-r--r--firmware/microblaze/usrp2p/CMakeLists.txt4
-rw-r--r--firmware/microblaze/usrp2p/bootloader/CMakeLists.txt39
4 files changed, 41 insertions, 5 deletions
diff --git a/firmware/microblaze/CMakeLists.txt b/firmware/microblaze/CMakeLists.txt
index 4344b3ab9..6222cc2bf 100644
--- a/firmware/microblaze/CMakeLists.txt
+++ b/firmware/microblaze/CMakeLists.txt
@@ -46,7 +46,6 @@ MACRO(ADD_LINKER_FLAGS flags)
SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${flags}")
ENDMACRO(ADD_LINKER_FLAGS)
-ADD_LINKER_FLAGS("-Wl,-defsym -Wl,_STACK_SIZE=3072")
ADD_LINKER_FLAGS("-Wl,--relax -Wl,--gc-sections")
########################################################################
diff --git a/firmware/microblaze/usrp2/CMakeLists.txt b/firmware/microblaze/usrp2/CMakeLists.txt
index 6f43bb702..8ed31b8d4 100644
--- a/firmware/microblaze/usrp2/CMakeLists.txt
+++ b/firmware/microblaze/usrp2/CMakeLists.txt
@@ -27,8 +27,6 @@ ADD_LIBRARY(libusrp2fw STATIC
)
########################################################################
-ADD_LINKER_FLAGS("-Wl,-defsym -Wl,_TEXT_START_ADDR=0x0050")
-
ADD_EXECUTABLE(usrp2_txrx_uhd.elf ${CMAKE_SOURCE_DIR}/apps/txrx_uhd.c)
TARGET_LINK_LIBRARIES(usrp2_txrx_uhd.elf libusrp2fw)
GEN_OUTPUTS(usrp2_txrx_uhd.elf)
diff --git a/firmware/microblaze/usrp2p/CMakeLists.txt b/firmware/microblaze/usrp2p/CMakeLists.txt
index 825c3ab9e..41ef8f1dd 100644
--- a/firmware/microblaze/usrp2p/CMakeLists.txt
+++ b/firmware/microblaze/usrp2p/CMakeLists.txt
@@ -32,9 +32,9 @@ ADD_LIBRARY(libusrp2pfw STATIC
udp_fw_update.c
)
-########################################################################
-ADD_LINKER_FLAGS("-Wl,-defsym -Wl,_TEXT_START_ADDR=0x8050")
+ADD_SUBDIRECTORY(bootloader)
+########################################################################
ADD_EXECUTABLE(usrp2p_txrx_uhd.elf ${CMAKE_SOURCE_DIR}/apps/txrx_uhd.c)
TARGET_LINK_LIBRARIES(usrp2p_txrx_uhd.elf libusrp2pfw)
GEN_OUTPUTS(usrp2p_txrx_uhd.elf)
diff --git a/firmware/microblaze/usrp2p/bootloader/CMakeLists.txt b/firmware/microblaze/usrp2p/bootloader/CMakeLists.txt
new file mode 100644
index 000000000..41c86cc9a
--- /dev/null
+++ b/firmware/microblaze/usrp2p/bootloader/CMakeLists.txt
@@ -0,0 +1,39 @@
+#
+# Copyright 2010 Ettus Research LLC
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+
+########################################################################
+INCLUDE(FindPythonInterp)
+
+MACRO(GEN_RMI target)
+ GET_FILENAME_COMPONENT(name ${target} NAME_WE)
+ #command to create a rmi from elf
+ ADD_CUSTOM_COMMAND(
+ OUTPUT ${name}.rmi DEPENDS ${name}.bin
+ COMMAND ${PYTHON_EXECUTABLE}
+ ARGS ${CMAKE_SOURCE_DIR}/bin/bin_to_ram_macro_init.py ${name}.bin ${name}.rmi
+ )
+ #add a top level target for output files
+ ADD_CUSTOM_TARGET(
+ ${name}_rmi ALL DEPENDS ${name}.rmi
+ )
+ENDMACRO(GEN_RMI)
+
+########################################################################
+ADD_EXECUTABLE(init_bootloader.elf init_bootloader.c)
+TARGET_LINK_LIBRARIES(init_bootloader.elf libusrp2pfw)
+GEN_OUTPUTS(init_bootloader.elf)
+GEN_RMI(init_bootloader.bin)