WIP integrate with libosmocore in as far as msgb_alloc() works
Change-Id: I99617d217ab938ab57746445906b1af8902b5ff7
diff --git a/sysmoOCTSIM/gcc/Makefile b/sysmoOCTSIM/gcc/Makefile
index 7684204..c51b3ec 100644
--- a/sysmoOCTSIM/gcc/Makefile
+++ b/sysmoOCTSIM/gcc/Makefile
@@ -2,6 +2,7 @@
# Automatically-generated file. Do not edit!
################################################################################
+EXTRA_LIBS=/usr/local/arm-none-eabi/lib/libosmocore.a
EXTRA_CFLAGS=-I/usr/local/arm-none-eabi/include -I../../ccid
ifdef SystemRoot
@@ -230,7 +231,7 @@
$(OUTPUT_FILE_PATH): $(OBJS)
@echo Building target: $@
@echo Invoking: ARM/GNU Linker
- $(QUOTE)arm-none-eabi-gcc$(QUOTE) -o $(OUTPUT_FILE_NAME).elf $(OBJS_AS_ARGS) -Wl,--start-group -lm -Wl,--end-group -mthumb \
+ $(QUOTE)arm-none-eabi-gcc$(QUOTE) -o $(OUTPUT_FILE_NAME).elf $(OBJS_AS_ARGS) $(EXTRA_LIBS) -Wl,--start-group -lm -Wl,--end-group -mthumb \
-Wl,-Map="$(OUTPUT_FILE_NAME).map" --specs=nano.specs -Wl,--gc-sections -mcpu=cortex-m4 \
\
-T"../gcc/gcc/same54n19a_dfu.ld" \
@@ -258,7 +259,7 @@
@echo ARM/GNU C Compiler
$(QUOTE)arm-none-eabi-gcc$(QUOTE) -x c -mthumb -DDEBUG -Os -ffunction-sections -mlong-calls -g3 -Wall -c -std=gnu99 \
-D__SAME54N19A__ -mcpu=cortex-m4 -mfloat-abi=softfp -mfpu=fpv4-sp-d16 \
--I"../" -I"../config" -I"../hal/include" -I"../hal/utils/include" -I"../hpl/cmcc" -I"../hpl/core" -I"../hpl/dmac" -I"../hpl/gclk" -I"../hpl/mclk" -I"../hpl/osc32kctrl" -I"../hpl/oscctrl" -I"../hpl/pm" -I"../hpl/port" -I"../hpl/ramecc" -I"../hpl/sercom" -I"../hpl/usb" -I"../hri" -I"../" -I"../config" -I"../usb" -I"../usb/class/cdc" -I"../usb/class/cdc/device" -I"../usb/class/ccid" -I"../usb/class/ccid/device" -I"../usb/device" -I"../" -I"../config" -I"../stdio_redirect" -I"../" -I"../dma_m2m" -I"../" -I"../CMSIS/Core/Include" -I"../include" \
+-I"../" -I"../config" -I"../hal/include" -I"../hal/utils/include" -I"../hpl/cmcc" -I"../hpl/core" -I"../hpl/dmac" -I"../hpl/gclk" -I"../hpl/mclk" -I"../hpl/osc32kctrl" -I"../hpl/oscctrl" -I"../hpl/pm" -I"../hpl/port" -I"../hpl/ramecc" -I"../hpl/sercom" -I"../hpl/usb" -I"../hri" -I"../" -I"../config" -I"../usb" -I"../usb/class/cdc" -I"../usb/class/cdc/device" -I"../usb/class/ccid" -I"../usb/class/ccid/device" -I"../usb/device" -I"../" -I"../config" -I"../stdio_redirect" -I"../" -I"../dma_m2m" -I"../" -I"../CMSIS/Core/Include" -I"../include" $(EXTRA_CFLAGS) \
-MD -MP -MF "$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -MT"$(@:%.o=%.o)" -o "$@" "$<"
@echo Finished building: $<
diff --git a/sysmoOCTSIM/hal/utils/include/utils.h b/sysmoOCTSIM/hal/utils/include/utils.h
index 1cf2699..52c0367 100644
--- a/sysmoOCTSIM/hal/utils/include/utils.h
+++ b/sysmoOCTSIM/hal/utils/include/utils.h
@@ -52,7 +52,9 @@
/**
* \brief Retrieve array size
*/
+#ifndef ARRAY_SIZE
#define ARRAY_SIZE(a) (sizeof(a) / sizeof((a)[0]))
+#endif
/**
* \brief Emit the compiler pragma \a arg.
diff --git a/sysmoOCTSIM/main.c b/sysmoOCTSIM/main.c
index 6381a80..4bda38a 100644
--- a/sysmoOCTSIM/main.c
+++ b/sysmoOCTSIM/main.c
@@ -708,6 +708,7 @@
extern void testmode_init(void);
#include "talloc.h"
+#include <osmocom/core/msgb.h>
void *g_tall_ctx;
DEFUN(_talloc_report, cmd_talloc_report, "talloc-report", "Generate a talloc report")
@@ -719,6 +720,7 @@
{
for (int i = 0; i < 10; i++)
talloc_named_const(g_tall_ctx, 10, "sibling");
+ msgb_alloc_c(g_tall_ctx, 1024, "foo");
}
DEFUN(v_talloc_free, cmd_talloc_free, "talloc-free", "Release all memory")
@@ -727,6 +729,15 @@
g_tall_ctx = NULL;
}
+/* dependency of libosmocore. FIXME: Implement it bsed on jiffies and/or RTC! */
+#include <sys/time.h>
+int _gettimeofday(struct timeval *tv, void *tz)
+{
+ tv->tv_sec = 0;
+ tv->tv_usec = 0;
+ return 0;
+}
+
int main(void)
{
atmel_start_init();