From d807f0ab00ec7b833c8688f0b08b7ecdf9b8d52b Mon Sep 17 00:00:00 2001 From: Trygve Laugstøl Date: Sun, 4 Sep 2016 22:12:32 +0200 Subject: o Initial import of mcu.cmake containing old Intel Quark D2000 cmake code and new NRF51 code. The Intel code is not useful and the NRF code needs to be updated to support NRF52 chips. --- intel/d2000.cmake | 11 +++++++++++ intel/gdb.cmake | 4 ++++ intel/intel.tmp.txt | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ intel/openocd.cmake | 6 ++++++ intel/qmsi.cmake | 27 +++++++++++++++++++++++++++ 5 files changed, 96 insertions(+) create mode 100644 intel/d2000.cmake create mode 100644 intel/gdb.cmake create mode 100644 intel/intel.tmp.txt create mode 100644 intel/openocd.cmake create mode 100644 intel/qmsi.cmake (limited to 'intel') diff --git a/intel/d2000.cmake b/intel/d2000.cmake new file mode 100644 index 0000000..2ddca80 --- /dev/null +++ b/intel/d2000.cmake @@ -0,0 +1,11 @@ +function(d2000_init) + list(APPEND includes "${ISSM_DIR}/firmware/bsp/1.0/soc/quark_d2000/include") + set(includes "${includes}" PARENT_SCOPE) + set(ld_file "${ISSM_DIR}/firmware/bsp/1.0/soc/quark_d2000/quark_d2000.ld" PARENT_SCOPE) + + list(APPEND mcu_text_areas 0x00180000:20k) + export_variable(mcu_text_areas) + + list(APPEND mcu_data_areas 0x00280000:5k) + export_variable(mcu_data_areas) +endfunction() diff --git a/intel/gdb.cmake b/intel/gdb.cmake new file mode 100644 index 0000000..b6840cb --- /dev/null +++ b/intel/gdb.cmake @@ -0,0 +1,4 @@ +function(gdb_init) + set(gdb_bin "${ISSM_DIR}/tools/debugger/gdb/gdb-ia") + export_variable(gdb_bin) +endfunction() diff --git a/intel/intel.tmp.txt b/intel/intel.tmp.txt new file mode 100644 index 0000000..f028e68 --- /dev/null +++ b/intel/intel.tmp.txt @@ -0,0 +1,48 @@ +22:58:42 **** Build of configuration build_debug for project accel_test **** +make +APP_NAME = accel_test +SOC = quark_d2000 +APP_DIR = . +BUILD = debug +make -C ./bsp/drivers SOC=quark_d2000 +make[1]: Entering directory '/home/trygvis/intel/workspace/accel_test/bsp/drivers' +BUILD = debug +i586-intel-elfiamcu-gcc -O0 -g -DDEBUG -std=c90 -Wall -Wextra -Werror -Wno-unused-parameter -fmessage-length=0 -I../include -fno-asynchronous-unwind-tables -I../drivers -I../drivers/include -march=lakemont -mtune=lakemont -miamcu -msoft-float -DSPI_IRQ_MST -I../soc/quark_d2000/include -c -o ../drivers/debug/quark_d2000/obj/qm_flash.o ../drivers/qm_flash.c +i586-intel-elfiamcu-gcc -O0 -g -DDEBUG -std=c90 -Wall -Wextra -Werror -Wno-unused-parameter -fmessage-length=0 -I../include -fno-asynchronous-unwind-tables -I../drivers -I../drivers/include -march=lakemont -mtune=lakemont -miamcu -msoft-float -DSPI_IRQ_MST -I../soc/quark_d2000/include -c -o ../drivers/debug/quark_d2000/obj/qm_aon_counters.o ../drivers/qm_aon_counters.c +i586-intel-elfiamcu-gcc -O0 -g -DDEBUG -std=c90 -Wall -Wextra -Werror -Wno-unused-parameter -fmessage-length=0 -I../include -fno-asynchronous-unwind-tables -I../drivers -I../drivers/include -march=lakemont -mtune=lakemont -miamcu -msoft-float -DSPI_IRQ_MST -I../soc/quark_d2000/include -c -o ../drivers/debug/quark_d2000/obj/qm_init.o ../drivers/qm_init.c +i586-intel-elfiamcu-gcc -O0 -g -DDEBUG -std=c90 -Wall -Wextra -Werror -Wno-unused-parameter -fmessage-length=0 -I../include -fno-asynchronous-unwind-tables -I../drivers -I../drivers/include -march=lakemont -mtune=lakemont -miamcu -msoft-float -DSPI_IRQ_MST -I../soc/quark_d2000/include -c -o ../drivers/debug/quark_d2000/obj/qm_pinmux.o ../drivers/qm_pinmux.c +i586-intel-elfiamcu-gcc -O0 -g -DDEBUG -std=c90 -Wall -Wextra -Werror -Wno-unused-parameter -fmessage-length=0 -I../include -fno-asynchronous-unwind-tables -I../drivers -I../drivers/include -march=lakemont -mtune=lakemont -miamcu -msoft-float -DSPI_IRQ_MST -I../soc/quark_d2000/include -c -o ../drivers/debug/quark_d2000/obj/qm_comparator.o ../drivers/qm_comparator.c +i586-intel-elfiamcu-gcc -O0 -g -DDEBUG -std=c90 -Wall -Wextra -Werror -Wno-unused-parameter -fmessage-length=0 -I../include -fno-asynchronous-unwind-tables -I../drivers -I../drivers/include -march=lakemont -mtune=lakemont -miamcu -msoft-float -DSPI_IRQ_MST -I../soc/quark_d2000/include -c -o ../drivers/debug/quark_d2000/obj/qm_interrupt.o ../drivers/qm_interrupt.c +i586-intel-elfiamcu-gcc -O0 -g -DDEBUG -std=c90 -Wall -Wextra -Werror -Wno-unused-parameter -fmessage-length=0 -I../include -fno-asynchronous-unwind-tables -I../drivers -I../drivers/include -march=lakemont -mtune=lakemont -miamcu -msoft-float -DSPI_IRQ_MST -I../soc/quark_d2000/include -c -o ../drivers/debug/quark_d2000/obj/qm_adc.o ../drivers/qm_adc.c +i586-intel-elfiamcu-gcc -O0 -g -DDEBUG -std=c90 -Wall -Wextra -Werror -Wno-unused-parameter -fmessage-length=0 -I../include -fno-asynchronous-unwind-tables -I../drivers -I../drivers/include -march=lakemont -mtune=lakemont -miamcu -msoft-float -DSPI_IRQ_MST -I../soc/quark_d2000/include -c -o ../drivers/debug/quark_d2000/obj/qm_spi.o ../drivers/qm_spi.c +i586-intel-elfiamcu-gcc -O0 -g -DDEBUG -std=c90 -Wall -Wextra -Werror -Wno-unused-parameter -fmessage-length=0 -I../include -fno-asynchronous-unwind-tables -I../drivers -I../drivers/include -march=lakemont -mtune=lakemont -miamcu -msoft-float -DSPI_IRQ_MST -I../soc/quark_d2000/include -c -o ../drivers/debug/quark_d2000/obj/qm_gpio.o ../drivers/qm_gpio.c +i586-intel-elfiamcu-gcc -O0 -g -DDEBUG -std=c90 -Wall -Wextra -Werror -Wno-unused-parameter -fmessage-length=0 -I../include -fno-asynchronous-unwind-tables -I../drivers -I../drivers/include -march=lakemont -mtune=lakemont -miamcu -msoft-float -DSPI_IRQ_MST -I../soc/quark_d2000/include -c -o ../drivers/debug/quark_d2000/obj/qm_fpr.o ../drivers/qm_fpr.c +i586-intel-elfiamcu-gcc -O0 -g -DDEBUG -std=c90 -Wall -Wextra -Werror -Wno-unused-parameter -fmessage-length=0 -I../include -fno-asynchronous-unwind-tables -I../drivers -I../drivers/include -march=lakemont -mtune=lakemont -miamcu -msoft-float -DSPI_IRQ_MST -I../soc/quark_d2000/include -c -o ../drivers/debug/quark_d2000/obj/qm_rar.o ../drivers/qm_rar.c +i586-intel-elfiamcu-gcc -O0 -g -DDEBUG -std=c90 -Wall -Wextra -Werror -Wno-unused-parameter -fmessage-length=0 -I../include -fno-asynchronous-unwind-tables -I../drivers -I../drivers/include -march=lakemont -mtune=lakemont -miamcu -msoft-float -DSPI_IRQ_MST -I../soc/quark_d2000/include -c -o ../drivers/debug/quark_d2000/obj/qm_pwm.o ../drivers/qm_pwm.c +i586-intel-elfiamcu-gcc -O0 -g -DDEBUG -std=c90 -Wall -Wextra -Werror -Wno-unused-parameter -fmessage-length=0 -I../include -fno-asynchronous-unwind-tables -I../drivers -I../drivers/include -march=lakemont -mtune=lakemont -miamcu -msoft-float -DSPI_IRQ_MST -I../soc/quark_d2000/include -c -o ../drivers/debug/quark_d2000/obj/qm_power.o ../drivers/qm_power.c +i586-intel-elfiamcu-gcc -O0 -g -DDEBUG -std=c90 -Wall -Wextra -Werror -Wno-unused-parameter -fmessage-length=0 -I../include -fno-asynchronous-unwind-tables -I../drivers -I../drivers/include -march=lakemont -mtune=lakemont -miamcu -msoft-float -DSPI_IRQ_MST -I../soc/quark_d2000/include -c -o ../drivers/debug/quark_d2000/obj/qm_uart.o ../drivers/qm_uart.c +i586-intel-elfiamcu-gcc -O0 -g -DDEBUG -std=c90 -Wall -Wextra -Werror -Wno-unused-parameter -fmessage-length=0 -I../include -fno-asynchronous-unwind-tables -I../drivers -I../drivers/include -march=lakemont -mtune=lakemont -miamcu -msoft-float -DSPI_IRQ_MST -I../soc/quark_d2000/include -c -o ../drivers/debug/quark_d2000/obj/qm_identification.o ../drivers/qm_identification.c +i586-intel-elfiamcu-gcc -O0 -g -DDEBUG -std=c90 -Wall -Wextra -Werror -Wno-unused-parameter -fmessage-length=0 -I../include -fno-asynchronous-unwind-tables -I../drivers -I../drivers/include -march=lakemont -mtune=lakemont -miamcu -msoft-float -DSPI_IRQ_MST -I../soc/quark_d2000/include -c -o ../drivers/debug/quark_d2000/obj/qm_pic_timer.o ../drivers/qm_pic_timer.c +i586-intel-elfiamcu-gcc -O0 -g -DDEBUG -std=c90 -Wall -Wextra -Werror -Wno-unused-parameter -fmessage-length=0 -I../include -fno-asynchronous-unwind-tables -I../drivers -I../drivers/include -march=lakemont -mtune=lakemont -miamcu -msoft-float -DSPI_IRQ_MST -I../soc/quark_d2000/include -c -o ../drivers/debug/quark_d2000/obj/qm_scss.o ../drivers/qm_scss.c +i586-intel-elfiamcu-gcc -O0 -g -DDEBUG -std=c90 -Wall -Wextra -Werror -Wno-unused-parameter -fmessage-length=0 -I../include -fno-asynchronous-unwind-tables -I../drivers -I../drivers/include -march=lakemont -mtune=lakemont -miamcu -msoft-float -DSPI_IRQ_MST -I../soc/quark_d2000/include -c -o ../drivers/debug/quark_d2000/obj/qm_rtc.o ../drivers/qm_rtc.c +i586-intel-elfiamcu-gcc -O0 -g -DDEBUG -std=c90 -Wall -Wextra -Werror -Wno-unused-parameter -fmessage-length=0 -I../include -fno-asynchronous-unwind-tables -I../drivers -I../drivers/include -march=lakemont -mtune=lakemont -miamcu -msoft-float -DSPI_IRQ_MST -I../soc/quark_d2000/include -c -o ../drivers/debug/quark_d2000/obj/qm_i2c.o ../drivers/qm_i2c.c +i586-intel-elfiamcu-gcc -O0 -g -DDEBUG -std=c90 -Wall -Wextra -Werror -Wno-unused-parameter -fmessage-length=0 -I../include -fno-asynchronous-unwind-tables -I../drivers -I../drivers/include -march=lakemont -mtune=lakemont -miamcu -msoft-float -DSPI_IRQ_MST -I../soc/quark_d2000/include -c -o ../drivers/debug/quark_d2000/obj/qm_wdt.o ../drivers/qm_wdt.c +i586-intel-elfiamcu-gcc -O0 -g -DDEBUG -std=c90 -Wall -Wextra -Werror -Wno-unused-parameter -fmessage-length=0 -I../include -fno-asynchronous-unwind-tables -I../drivers -I../drivers/include -march=lakemont -mtune=lakemont -miamcu -msoft-float -DSPI_IRQ_MST -I../soc/quark_d2000/include -c -o ../drivers/debug/quark_d2000/obj/qm_mpr.o ../drivers/qm_mpr.c +i586-intel-elfiamcu-ar rcs ../build/debug/quark_d2000/libqmsi/lib/libqmsi.a ../drivers/debug/quark_d2000/obj/qm_flash.o ../drivers/debug/quark_d2000/obj/qm_aon_counters.o ../drivers/debug/quark_d2000/obj/qm_init.o ../drivers/debug/quark_d2000/obj/qm_pinmux.o ../drivers/debug/quark_d2000/obj/qm_comparator.o ../drivers/debug/quark_d2000/obj/qm_interrupt.o ../drivers/debug/quark_d2000/obj/qm_adc.o ../drivers/debug/quark_d2000/obj/qm_spi.o ../drivers/debug/quark_d2000/obj/qm_gpio.o ../drivers/debug/quark_d2000/obj/qm_fpr.o ../drivers/debug/quark_d2000/obj/qm_rar.o ../drivers/debug/quark_d2000/obj/qm_pwm.o ../drivers/debug/quark_d2000/obj/qm_power.o ../drivers/debug/quark_d2000/obj/qm_uart.o ../drivers/debug/quark_d2000/obj/qm_identification.o ../drivers/debug/quark_d2000/obj/qm_pic_timer.o ../drivers/debug/quark_d2000/obj/qm_scss.o ../drivers/debug/quark_d2000/obj/qm_rtc.o ../drivers/debug/quark_d2000/obj/qm_i2c.o ../drivers/debug/quark_d2000/obj/qm_wdt.o ../drivers/debug/quark_d2000/obj/qm_mpr.o +make[1]: Leaving directory '/home/trygvis/intel/workspace/accel_test/bsp/drivers' +i586-intel-elfiamcu-gcc -I/home/trygvis/intel/issm_2016.0.019/firmware/lib/ipp/1.0.0/include -D__IPP_ENABLED__=1 -DPRINTF_ENABLE -DPUTS_ENABLE -O0 -g -DDEBUG -std=c90 -Wall -Wextra -Werror -Wno-unused-parameter -fmessage-length=0 -I./bsp/include -fno-asynchronous-unwind-tables -I./bsp/build/debug/quark_d2000/libqmsi/include -march=lakemont -mtune=lakemont -miamcu -msoft-float -DSPI_IRQ_MST -I./bsp/soc/quark_d2000/include -I./bsp/board/drivers -c -o debug/quark_d2000/obj/main.o main.c +i586-intel-elfiamcu-gcc -I/home/trygvis/intel/issm_2016.0.019/firmware/lib/ipp/1.0.0/include -D__IPP_ENABLED__=1 -DPRINTF_ENABLE -DPUTS_ENABLE -O0 -g -DDEBUG -std=c90 -Wall -Wextra -Werror -Wno-unused-parameter -fmessage-length=0 -I./bsp/include -fno-asynchronous-unwind-tables -I./bsp/build/debug/quark_d2000/libqmsi/include -march=lakemont -mtune=lakemont -miamcu -msoft-float -DSPI_IRQ_MST -I./bsp/soc/quark_d2000/include -I./bsp/board/drivers -c -o bsp/sys/debug/quark_d2000/obj/app_entry.o bsp/sys/app_entry.c +i586-intel-elfiamcu-gcc -I/home/trygvis/intel/issm_2016.0.019/firmware/lib/ipp/1.0.0/include -D__IPP_ENABLED__=1 -DPRINTF_ENABLE -DPUTS_ENABLE -O0 -g -DDEBUG -std=c90 -Wall -Wextra -Werror -Wno-unused-parameter -fmessage-length=0 -I./bsp/include -fno-asynchronous-unwind-tables -I./bsp/build/debug/quark_d2000/libqmsi/include -march=lakemont -mtune=lakemont -miamcu -msoft-float -DSPI_IRQ_MST -I./bsp/soc/quark_d2000/include -I./bsp/board/drivers -c -o bsp/sys/debug/quark_d2000/obj/newlib-syscalls.o bsp/sys/newlib-syscalls.c +i586-intel-elfiamcu-gcc -I/home/trygvis/intel/issm_2016.0.019/firmware/lib/ipp/1.0.0/include -D__IPP_ENABLED__=1 -DPRINTF_ENABLE -DPUTS_ENABLE -O0 -g -DDEBUG -std=c90 -Wall -Wextra -Werror -Wno-unused-parameter -fmessage-length=0 -I./bsp/include -fno-asynchronous-unwind-tables -I./bsp/build/debug/quark_d2000/libqmsi/include -march=lakemont -mtune=lakemont -miamcu -msoft-float -DSPI_IRQ_MST -I./bsp/soc/quark_d2000/include -I./bsp/board/drivers -c -o bsp/board/drivers/debug/quark_d2000/obj/bmc150.o bsp/board/drivers/bmc150/bmc150.c +i586-intel-elfiamcu-gcc -nostdlib -L./bsp/build/debug/quark_d2000/libqmsi/lib -Xlinker -T./bsp/soc/quark_d2000/quark_d2000.ld \ + -Xlinker -A \ + -Xlinker --oformat \ + -Xlinker -Map=./debug/quark_d2000/obj/accel_test.map \ + -o ./debug/quark_d2000/obj/accel_test.elf ./debug/quark_d2000/obj/main.o ./bsp/sys/debug/quark_d2000/obj/app_entry.o ./bsp/sys/debug/quark_d2000/obj/newlib-syscalls.o ./bsp/board/drivers/debug/quark_d2000/obj/bmc150.o -L/home/trygvis/intel/issm_2016.0.019/firmware/lib/ipp/1.0.0/lib -lippsq -lc -lnosys -lsoftfp -lgcc -lqmsi +i586-intel-elfiamcu-size ./debug/quark_d2000/obj/accel_test.elf + text data bss dec hex filename + 17659 716 304 18679 48f7 ./debug/quark_d2000/obj/accel_test.elf +i586-intel-elfiamcu-objcopy -O binary ./debug/quark_d2000/obj/accel_test.elf debug/quark_d2000/bin/accel_test.bin + +22:58:43 Build Finished (took 1s.121ms) + diff --git a/intel/openocd.cmake b/intel/openocd.cmake new file mode 100644 index 0000000..e7ce892 --- /dev/null +++ b/intel/openocd.cmake @@ -0,0 +1,6 @@ +function(openocd_init) + set(openocd_bin "${ISSM_DIR}/tools/debugger/openocd/bin/openocd") + export_variable(openocd_bin) + set(openocd_scripts "${ISSM_DIR}/tools/debugger/openocd/scripts") + export_variable(openocd_scripts) +endfunction() diff --git a/intel/qmsi.cmake b/intel/qmsi.cmake new file mode 100644 index 0000000..0cffa5e --- /dev/null +++ b/intel/qmsi.cmake @@ -0,0 +1,27 @@ +function(qmsi_init) +endfunction() + +function(qmsi_create TARGET_SUFFIX) + set(qmsi qmsi_${TARGET_SUFFIX}) + set(bmc qmsi_bmc_${TARGET_SUFFIX}) + message("Creating QMSI targets ${qmsi} and ${bmc}") + + file(GLOB_RECURSE qmsi_sources + ${ISSM_DIR}/firmware/bsp/1.0/drivers/*.c + ${ISSM_DIR}/firmware/bsp/1.0/sys/*.c) + add_library(${qmsi} STATIC ${qmsi_sources}) + target_include_directories(${qmsi} PUBLIC "${ISSM_DIR}/firmware/bsp/1.0/include") + target_include_directories(${qmsi} PUBLIC "${ISSM_DIR}/firmware/bsp/1.0/drivers/include") + + message("INTEL_QUARK_CHIP=${INTEL_QUARK_CHIP}") + if (INTEL_QUARK_CHIP STREQUAL D2000) + target_include_directories(${qmsi} PUBLIC "${ISSM_DIR}/firmware/bsp/1.0/soc/quark_d2000/include") + elseif (INTEL_QUARK_CHIP STREQUAL SE) + target_include_directories(${qmsi} PUBLIC "${ISSM_DIR}/firmware/bsp/1.0/soc/quark_se/include") + endif () + + file(GLOB_RECURSE bmc_sources ${ISSM_DIR}/firmware/bsp/1.0/board/drivers/bmc150/*.c) + add_library(${bmc} STATIC ${bmc_sources}) + target_link_libraries(${bmc} PUBLIC ${qmsi}) + target_include_directories(${bmc} PUBLIC "${ISSM_DIR}/firmware/bsp/1.0/board/drivers") +endfunction() -- cgit v1.2.3