riot-boards.h: helper macro for memarray initialization The pre-processor macro MEMARRAY helps declaring and initializing the buffer and memarray_t structure that are required by memarray_init(). Change-Id: I9f9732881469d7163c5710b3ffd0e46d86a9fb66
diff --git a/crypto.c b/crypto.c index dcb7752..a71e457 100644 --- a/crypto.c +++ b/crypto.c
@@ -118,8 +118,6 @@ } #elif defined (RIOT_VERSION) - -#include "memarray.h" MEMARRAY(handshake_storage, dtls_handshake_parameters_t, DTLS_HANDSHAKE_MAX) MEMARRAY(security_storage, dtls_security_parameters_t, DTLS_SECURITY_MAX)
diff --git a/dtls.c b/dtls.c index f640a0c..938722e 100644 --- a/dtls.c +++ b/dtls.c
@@ -62,7 +62,6 @@ #define DTLS10_VERSION 0xfeff #ifdef RIOT_VERSION -#include "memarray.h" MEMARRAY(dtlscontext_storage, dtls_context_t, DTLS_CONTEXT_MAX) #endif /* RIOT_VERSION */
diff --git a/netq.c b/netq.c index 22ffc10..bcee04f 100644 --- a/netq.c +++ b/netq.c
@@ -62,8 +62,6 @@ } #elif defined (RIOT_VERSION) - -#include "memarray.h" MEMARRAY(netq_storage, netq_t, NETQ_MAXCNT) static inline netq_t *
diff --git a/peer.c b/peer.c index c9a1be4..6a56473 100644 --- a/peer.c +++ b/peer.c
@@ -60,8 +60,6 @@ } #elif defined (RIOT_VERSION) - -#include "memarray.h" MEMARRAY(peer_storage, dtls_peer_t, DTLS_PEER_MAX) void
diff --git a/platform-specific/riot_boards.h b/platform-specific/riot_boards.h index e8b21a4..284c000 100644 --- a/platform-specific/riot_boards.h +++ b/platform-specific/riot_boards.h
@@ -149,5 +149,16 @@ # endif #endif +/* The memarray API requires declaration of the following structures + * over and over, so we define a macro for a cleaner API: + */ +#include "memarray.h" +#define MEMARRAY(name, structure, cnt) \ + structure name ## _data[cnt]; \ + memarray_t name = { \ + .free_data = name ## _data, \ + .size = sizeof(structure), \ + .num = cnt \ + }; #endif /* _RIOT_BOARDS_H_ */