MAC layer configuration done from Makefile instead of .h files

This commit is contained in:
Simon Duquennoy 2017-09-08 17:48:29 +02:00
parent a1fbd826ef
commit ffc94f832c
44 changed files with 102 additions and 114 deletions

View File

@ -74,7 +74,36 @@ endif
MODULES += os os/sys os/dev os/lib os/services MODULES += os os/sys os/dev os/lib os/services
# Include IPv6, RPL # Configure MAC layer
# The different options
MAKE_MAC_NULLMAC = 0
MAKE_MAC_CSMA = 1
MAKE_MAC_TSCH = 2
MAKE_MAC_OTHER = 3
# Make CSMA the default MAC
MAKE_MAC ?= MAKE_MAC_CSMA
ifeq ($(MAKE_MAC),MAKE_MAC_NULLMAC)
CFLAGS += -DMAC_CONF_WITH_NULLMAC=1
endif
ifeq ($(MAKE_MAC),MAKE_MAC_CSMA)
MODULES += os/net/mac/csma
CFLAGS += -DMAC_CONF_WITH_CSMA=1
endif
ifeq ($(MAKE_MAC),MAKE_MAC_TSCH)
MODULES += os/net/mac/tsch
CFLAGS += -DMAC_CONF_WITH_TSCH=1
endif
ifeq ($(MAKE_MAC),MAKE_MAC_OTHER)
CFLAGS += -DMAC_CONF_WITH_OTHER=1
endif
# Configure IPv6, RPL
HAS_STACK = 0 HAS_STACK = 0

View File

@ -20,7 +20,6 @@ CONTIKI_CPU=$(CONTIKI)/arch/cpu/cc2538
include $(CONTIKI_CPU)/Makefile.cc2538 include $(CONTIKI_CPU)/Makefile.cc2538
MODULES += os/net os/net/mac os/net/mac/framer \ MODULES += os/net os/net/mac os/net/mac/framer \
os/net/mac/csma os/net/mac/nullmac \
os/storage/cfs os/storage/cfs
PYTHON = python PYTHON = python

View File

@ -77,8 +77,7 @@ CFLAGSNO += -Werror
endif endif
CFLAGS += $(CFLAGSNO) CFLAGS += $(CFLAGSNO)
MODULES += os/net os/net/mac os/net/mac/framer os/net/ip64-addr \ MODULES += os/net os/net/mac os/net/mac/framer os/net/ip64-addr
os/net/mac/csma os/net/mac/nullmac
## Copied from Makefile.include, since Cooja overrides CFLAGS et al ## Copied from Makefile.include, since Cooja overrides CFLAGS et al
HAS_STACK = 0 HAS_STACK = 0

View File

@ -143,8 +143,7 @@ endif
CLEAN += *.jn516x CLEAN += *.jn516x
CLEAN += *.jn516x.bin CLEAN += *.jn516x.bin
MODULES += os/net os/net/mac os/net/mac/framer \ MODULES += os/net os/net/mac os/net/mac/framer
os/net/mac/csma os/net/mac/nullmac
CONTIKI_TARGET_SOURCEFILES += $(ARCH) CONTIKI_TARGET_SOURCEFILES += $(ARCH)
CONTIKI_SOURCEFILES += $(CONTIKI_TARGET_SOURCEFILES) CONTIKI_SOURCEFILES += $(CONTIKI_TARGET_SOURCEFILES)

View File

@ -30,6 +30,9 @@ CONTIKI_SOURCEFILES += $(CONTIKI_TARGET_SOURCEFILES)
.SUFFIXES: .SUFFIXES:
# Enable nullmac by default
MAKE_MAC ?= MAKE_MAC_NULLMAC
### Define the CPU directory ### Define the CPU directory
CONTIKI_CPU=$(CONTIKI)/arch/cpu/native CONTIKI_CPU=$(CONTIKI)/arch/cpu/native
include $(CONTIKI)/arch/cpu/native/Makefile.native include $(CONTIKI)/arch/cpu/native/Makefile.native
@ -42,5 +45,4 @@ CURSES_LIBS ?= -lncurses
TARGET_LIBFILES += $(CURSES_LIBS) TARGET_LIBFILES += $(CURSES_LIBS)
MODULES+=os/net os/net/mac os/net/mac/framer os/net/ip64-addr/ \ MODULES+=os/net os/net/mac os/net/mac/framer os/net/ip64-addr/
os/net/mac/csma os/net/mac/nullmac

View File

@ -68,10 +68,6 @@ typedef unsigned short uip_stats_t;
#if NETSTACK_CONF_WITH_IPV6 #if NETSTACK_CONF_WITH_IPV6
#ifndef NETSTACK_CONF_MAC
#define NETSTACK_CONF_MAC nullmac_driver
#endif /* NETSTACK_CONF_MAC */
#ifndef NETSTACK_CONF_RADIO #ifndef NETSTACK_CONF_RADIO
#define NETSTACK_CONF_RADIO nullradio_driver #define NETSTACK_CONF_RADIO nullradio_driver
#endif /* NETSTACK_CONF_RADIO */ #endif /* NETSTACK_CONF_RADIO */

View File

@ -24,9 +24,11 @@ CLEAN += *.nrf52dk
### Unless the example dictates otherwise, build with code size optimisations switched off ### Unless the example dictates otherwise, build with code size optimisations switched off
SMALL ?= 0 SMALL ?= 0
# Custom MAC layer for BLE (ble_ipsp_mac_driver)
MAKE_MAC = MAKE_MAC_OTHER
### Define the CPU directory and pull in the correct CPU makefile. ### Define the CPU directory and pull in the correct CPU makefile.
CONTIKI_CPU=$(CONTIKI)/arch/cpu/nrf52832 CONTIKI_CPU=$(CONTIKI)/arch/cpu/nrf52832
include $(CONTIKI_CPU)/Makefile.nrf52832 include $(CONTIKI_CPU)/Makefile.nrf52832
MODULES += os/net os/net/mac os/net/mac/framer \ MODULES += os/net os/net/mac os/net/mac/framer
os/net/mac/csma os/net/mac/nullmac

View File

@ -56,9 +56,8 @@
* @{ * @{
*/ */
#ifndef NETSTACK_CONF_MAC /* Selected in netstack.h because our Makefile sets MAKE_MAC = MAKE_MAC_OTHER */
#define NETSTACK_CONF_MAC ble_ipsp_mac_driver #define NETSTACK_CONF_OTHER_MAC ble_ipsp_mac_driver
#endif /* NETSTACK_CONF_MAC */
/* 6LoWPAN */ /* 6LoWPAN */
#define SICSLOWPAN_CONF_MAC_MAX_PAYLOAD 1280 #define SICSLOWPAN_CONF_MAC_MAX_PAYLOAD 1280

View File

@ -27,7 +27,6 @@ CONTIKI_CPU=$(CONTIKI)/arch/cpu/cc2538
include $(CONTIKI_CPU)/Makefile.cc2538 include $(CONTIKI_CPU)/Makefile.cc2538
MODULES += os/net os/net/mac os/net/mac/framer \ MODULES += os/net os/net/mac os/net/mac/framer \
os/net/mac/csma os/net/mac/nullmac \
os/storage/cfs os/storage/cfs
PYTHON = python PYTHON = python

View File

@ -7,6 +7,5 @@ CONTIKI_TARGET_SOURCEFILES += contiki-sky-platform.c \
include $(CONTIKI)/arch/platform/sky/Makefile.common include $(CONTIKI)/arch/platform/sky/Makefile.common
MODULES += os/net/mac os/net/mac/framer os/net \ MODULES += os/net/mac os/net/mac/framer os/net \
os/net/mac/csma os/net/mac/nullmac \
arch/dev/cc2420 arch/dev/sht11 arch/dev/ds2411 \ arch/dev/cc2420 arch/dev/sht11 arch/dev/ds2411 \
os/storage/cfs os/storage/cfs

View File

@ -32,5 +32,4 @@ SMALL ?= 0
CONTIKI_CPU=$(CONTIKI)/arch/cpu/cc26xx-cc13xx CONTIKI_CPU=$(CONTIKI)/arch/cpu/cc26xx-cc13xx
include $(CONTIKI_CPU)/Makefile.$(CPU_FAMILY) include $(CONTIKI_CPU)/Makefile.$(CPU_FAMILY)
MODULES += os/net os/net/mac os/net/mac/framer \ MODULES += os/net os/net/mac os/net/mac/framer
os/net/mac/csma os/net/mac/nullmac

View File

@ -46,7 +46,6 @@ CONTIKI_CPU=$(CONTIKI)/arch/cpu/cc2538
include $(CONTIKI_CPU)/Makefile.cc2538 include $(CONTIKI_CPU)/Makefile.cc2538
MODULES += os/net os/net/mac os/net/mac/framer \ MODULES += os/net os/net/mac os/net/mac/framer \
os/net/mac/csma os/net/mac/nullmac \
arch/dev/cc1200 \ arch/dev/cc1200 \
os/storage/cfs os/storage/cfs

View File

@ -3,6 +3,8 @@ PROJECT_SOURCEFILES += test-sf.c
CONTIKI = ../../../ CONTIKI = ../../../
CFLAGS += -DPROJECT_CONF_H=\"project-conf.h\" CFLAGS += -DPROJECT_CONF_H=\"project-conf.h\"
MODULES += os/net/mac/tsch os/net/mac/tsch/sixtop
MAKE_MAC = MAKE_MAC_TSCH
MODULES += os/net/mac/tsch/sixtop
include $(CONTIKI)/Makefile.include include $(CONTIKI)/Makefile.include

View File

@ -42,8 +42,6 @@
#error "This example is intended to be used for Cooja mote." #error "This example is intended to be used for Cooja mote."
#endif /* CONTIKI_TARGET_COOJA */ #endif /* CONTIKI_TARGET_COOJA */
#define NETSTACK_CONF_MAC tschmac_driver
#define TSCH_CONF_WITH_SIXTOP 1 #define TSCH_CONF_WITH_SIXTOP 1
#define TSCH_LOG_CONF_LEVEL 2 #define TSCH_LOG_CONF_LEVEL 2
#define TSCH_CONF_AUTOSTART 1 #define TSCH_CONF_AUTOSTART 1

View File

@ -17,6 +17,9 @@ MODULES += $(WITH_WEBSERVER)
CFLAGS += -DWEBSERVER=2 CFLAGS += -DWEBSERVER=2
endif endif
# Custom MAC layer (border_router_mac_driver)
MAKE_MAC = MAKE_MAC_OTHER
# Configure Network stack
CONTIKI_WITH_IPV6 = 1 CONTIKI_WITH_IPV6 = 1
include $(CONTIKI)/Makefile.include include $(CONTIKI)/Makefile.include

View File

@ -42,8 +42,8 @@
#define CMD_CONF_OUTPUT border_router_cmd_output #define CMD_CONF_OUTPUT border_router_cmd_output
#undef NETSTACK_CONF_MAC /* Selected in netstack.h because our Makefile sets MAKE_MAC = MAKE_MAC_OTHER */
#define NETSTACK_CONF_MAC border_router_mac_driver #define NETSTACK_CONF_OTHER_MAC border_router_mac_driver
/* used by wpcap (see /cpu/native/net/wpcap-drv.c) */ /* used by wpcap (see /cpu/native/net/wpcap-drv.c) */
#define SELECT_CALLBACK 1 #define SELECT_CALLBACK 1

View File

@ -6,7 +6,7 @@ CFLAGS += -DPROJECT_CONF_H=\"project-conf.h\"
WITH_TSCH ?= 0 WITH_TSCH ?= 0
ifeq ($(WITH_TSCH),1) ifeq ($(WITH_TSCH),1)
MODULES += os/net/mac/tsch MAKE_MAC = MAKE_MAC_TSCH
endif endif
CFLAGS += -DWITH_TSCH=$(WITH_TSCH) CFLAGS += -DWITH_TSCH=$(WITH_TSCH)

View File

@ -49,13 +49,9 @@
#if WITH_TSCH #if WITH_TSCH
/*******************************************************/ /*******************************************************/
/********************* Enable TSCH *********************/ /********************* Configure TSCH *********************/
/*******************************************************/ /*******************************************************/
/* Netstack layers */
#undef NETSTACK_CONF_MAC
#define NETSTACK_CONF_MAC tschmac_driver
/* TSCH and RPL callbacks */ /* TSCH and RPL callbacks */
#define RPL_CALLBACK_PARENT_SWITCH tsch_rpl_callback_parent_switch #define RPL_CALLBACK_PARENT_SWITCH tsch_rpl_callback_parent_switch
#define RPL_CALLBACK_NEW_DIO_INTERVAL tsch_rpl_callback_new_dio_interval #define RPL_CALLBACK_NEW_DIO_INTERVAL tsch_rpl_callback_new_dio_interval

View File

@ -5,10 +5,9 @@ PROJECT_SOURCEFILES += sf-simple.c
CONTIKI=../../.. CONTIKI=../../..
CFLAGS += -DPROJECT_CONF_H=\"project-conf.h\" CFLAGS += -DPROJECT_CONF_H=\"project-conf.h\"
CONTIKI_WITH_IPV6 = 1
MAKE_WITH_SECURITY ?= 0 # force Security from command line MAKE_WITH_SECURITY ?= 0 # force Security from command line
MODULES += os/net/mac/tsch MAKE_MAC = MAKE_MAC_TSCH
MODULES += os/net/mac/tsch/sixtop MODULES += os/net/mac/tsch/sixtop
ifeq ($(MAKE_WITH_SECURITY),1) ifeq ($(MAKE_WITH_SECURITY),1)

View File

@ -51,18 +51,6 @@
/********************* Enable TSCH *********************/ /********************* Enable TSCH *********************/
/*******************************************************/ /*******************************************************/
/* Netstack layers */
#undef NETSTACK_CONF_MAC
#define NETSTACK_CONF_MAC tschmac_driver
#undef NETSTACK_CONF_RDC
#define NETSTACK_CONF_RDC nordc_driver
#undef NETSTACK_CONF_FRAMER
#define NETSTACK_CONF_FRAMER framer_802154
/* IEEE802.15.4 frame version */
#undef FRAME802154_CONF_VERSION
#define FRAME802154_CONF_VERSION FRAME802154_IEEE802154_2015
/* TSCH and RPL callbacks */ /* TSCH and RPL callbacks */
#define RPL_CALLBACK_PARENT_SWITCH tsch_rpl_callback_parent_switch #define RPL_CALLBACK_PARENT_SWITCH tsch_rpl_callback_parent_switch
#define RPL_CALLBACK_NEW_DIO_INTERVAL tsch_rpl_callback_new_dio_interval #define RPL_CALLBACK_NEW_DIO_INTERVAL tsch_rpl_callback_new_dio_interval

View File

@ -9,7 +9,8 @@ MAKE_WITH_ORCHESTRA ?= 0 # force Orchestra from command line
MAKE_WITH_SECURITY ?= 0 # force Security from command line MAKE_WITH_SECURITY ?= 0 # force Security from command line
MAKE_WITH_PERIODIC_ROUTES_PRINT ?= 0 # print #routes periodically, used for regression tests MAKE_WITH_PERIODIC_ROUTES_PRINT ?= 0 # print #routes periodically, used for regression tests
MODULES += os/net/mac/tsch os/services/shell os/services/orchestra MAKE_MAC = MAKE_MAC_TSCH
MODULES += os/services/shell os/services/orchestra
ifeq ($(MAKE_WITH_ORCHESTRA),1) ifeq ($(MAKE_WITH_ORCHESTRA),1)
CFLAGS += -DWITH_ORCHESTRA=1 CFLAGS += -DWITH_ORCHESTRA=1

View File

@ -58,13 +58,9 @@
#define ORCHESTRA_CONF_RULES { &eb_per_time_source, &unicast_per_neighbor_rpl_ns, &default_common } /* Orchestra in non-storing */ #define ORCHESTRA_CONF_RULES { &eb_per_time_source, &unicast_per_neighbor_rpl_ns, &default_common } /* Orchestra in non-storing */
/*******************************************************/ /*******************************************************/
/********************* Enable TSCH *********************/ /********************* Configure TSCH *********************/
/*******************************************************/ /*******************************************************/
/* Netstack layers */
#undef NETSTACK_CONF_MAC
#define NETSTACK_CONF_MAC tschmac_driver
/* TSCH and RPL callbacks */ /* TSCH and RPL callbacks */
#define RPL_CALLBACK_PARENT_SWITCH tsch_rpl_callback_parent_switch #define RPL_CALLBACK_PARENT_SWITCH tsch_rpl_callback_parent_switch
#define RPL_CALLBACK_NEW_DIO_INTERVAL tsch_rpl_callback_new_dio_interval #define RPL_CALLBACK_NEW_DIO_INTERVAL tsch_rpl_callback_new_dio_interval

View File

@ -7,7 +7,7 @@ CONTIKI=../../../../..
CONTIKI_WITH_IPV6 = 1 CONTIKI_WITH_IPV6 = 1
MODULES += os/net/mac/tsch MAKE_MAC = MAKE_MAC_TSCH
PROJECTDIRS += .. ../tools PROJECTDIRS += .. ../tools
PROJECT_SOURCEFILES += rpl-tools.c PROJECT_SOURCEFILES += rpl-tools.c
CFLAGS += -DPROJECT_CONF_H=\"project-conf.h\" CFLAGS += -DPROJECT_CONF_H=\"project-conf.h\"

View File

@ -8,7 +8,8 @@ CONTIKI=../../../../..
CONTIKI_WITH_IPV6 = 1 CONTIKI_WITH_IPV6 = 1
MODULES += os/net/mac/tsch os/lib/json MAKE_MAC = MAKE_MAC_TSCH
MODULES += os/lib/json
PROJECTDIRS += .. ../tools PROJECTDIRS += .. ../tools
PROJECT_SOURCEFILES += rpl-tools.c PROJECT_SOURCEFILES += rpl-tools.c
CFLAGS += -DPROJECT_CONF_H=\"project-conf.h\" CFLAGS += -DPROJECT_CONF_H=\"project-conf.h\"

View File

@ -8,7 +8,8 @@ CONTIKI=../../../../..
CONTIKI_WITH_IPV6 = 1 CONTIKI_WITH_IPV6 = 1
MODULES += os/net/mac/tsch os/lib/json MAKE_MAC = MAKE_MAC_TSCH
MODULES += os/lib/json
PROJECTDIRS += .. ../tools PROJECTDIRS += .. ../tools
PROJECT_SOURCEFILES += rpl-tools.c PROJECT_SOURCEFILES += rpl-tools.c
CFLAGS += -DPROJECT_CONF_H=\"project-conf.h\" CFLAGS += -DPROJECT_CONF_H=\"project-conf.h\"

View File

@ -8,7 +8,8 @@ CONTIKI=../../../../..
CONTIKI_WITH_IPV6 = 1 CONTIKI_WITH_IPV6 = 1
MODULES += os/net/mac/tsch os/lib/json MAKE_MAC = MAKE_MAC_TSCH
MODULES += os/lib/json
PROJECTDIRS += .. ../tools PROJECTDIRS += .. ../tools
PROJECT_SOURCEFILES += rpl-tools.c PROJECT_SOURCEFILES += rpl-tools.c
CFLAGS += -DPROJECT_CONF_H=\"project-conf.h\" CFLAGS += -DPROJECT_CONF_H=\"project-conf.h\"

View File

@ -39,9 +39,6 @@
/* Select a MAC configuration */ /* Select a MAC configuration */
#define MAC_CONFIG MAC_CONFIG_TSCH #define MAC_CONFIG MAC_CONFIG_TSCH
#undef NETSTACK_CONF_MAC
#undef NETSTACK_CONF_FRAMER
#if MAC_CONFIG == MAC_CONFIG_CSMA #if MAC_CONFIG == MAC_CONFIG_CSMA
#elif MAC_CONFIG == MAC_CONFIG_TSCH #elif MAC_CONFIG == MAC_CONFIG_TSCH
@ -56,8 +53,6 @@
#define WITH_SECURITY 0 #define WITH_SECURITY 0
#endif /* WITH_SECURITY */ #endif /* WITH_SECURITY */
#define NETSTACK_CONF_MAC tschmac_driver
/* TSCH and RPL callbacks */ /* TSCH and RPL callbacks */
#define RPL_CALLBACK_PARENT_SWITCH tsch_rpl_callback_parent_switch #define RPL_CALLBACK_PARENT_SWITCH tsch_rpl_callback_parent_switch
#define RPL_CALLBACK_NEW_DIO_INTERVAL tsch_rpl_callback_new_dio_interval #define RPL_CALLBACK_NEW_DIO_INTERVAL tsch_rpl_callback_new_dio_interval

View File

@ -7,7 +7,7 @@ CONTIKI=../../../../..
CONTIKI_WITH_IPV6 = 1 CONTIKI_WITH_IPV6 = 1
MODULES += os/net/mac/tsch MAKE_MAC = MAKE_MAC_TSCH
PROJECTDIRS += .. ../tools PROJECTDIRS += .. ../tools
PROJECT_SOURCEFILES += rpl-tools.c PROJECT_SOURCEFILES += rpl-tools.c
CFLAGS += -DPROJECT_CONF_H=\"project-conf.h\" CFLAGS += -DPROJECT_CONF_H=\"project-conf.h\"

View File

@ -129,13 +129,7 @@
#define TSCH_CONF_JOIN_SECURED_ONLY 0 #define TSCH_CONF_JOIN_SECURED_ONLY 0
#endif /* WITH_TSCH_SECURITY */ #endif /* WITH_TSCH_SECURITY */
#if WITH_TSCH #if !WITH_TSCH /* No TSCH, use Csma with ACK (default MAC) */
/* Contiki netstack: MAC */
#undef NETSTACK_CONF_MAC
#define NETSTACK_CONF_MAC tschmac_driver
#else /* No TSCH, use Csma with ACK (default MAC) */
#undef MICROMAC_CONF_CHANNEL #undef MICROMAC_CONF_CHANNEL
#define MICROMAC_CONF_CHANNEL 26 #define MICROMAC_CONF_CHANNEL 26

View File

@ -13,8 +13,9 @@ PROJECT_SOURCEFILES += rpl-tools.c
CFLAGS += -DWITH_COAP CFLAGS += -DWITH_COAP
CFLAGS += -DREST=coap_rest_implementation CFLAGS += -DREST=coap_rest_implementation
CFLAGS += -DUIP_CONF_TCP=0 CFLAGS += -DUIP_CONF_TCP=0
MAKE_MAC = MAKE_MAC_TSCH
MODULES += os/net/app-layer/coap MODULES += os/net/app-layer/coap
MODULES += os/net/mac/tsch os/services/orchestra os/lib/json MODULES += os/services/orchestra os/lib/json
all: $(CONTIKI_PROJECT) all: $(CONTIKI_PROJECT)

View File

@ -15,8 +15,9 @@ PROJECT_SOURCEFILES += rpl-tools.c
CFLAGS += -DWITH_COAP CFLAGS += -DWITH_COAP
CFLAGS += -DREST=coap_rest_implementation CFLAGS += -DREST=coap_rest_implementation
CFLAGS += -DUIP_CONF_TCP=0 CFLAGS += -DUIP_CONF_TCP=0
MAKE_MAC = MAKE_MAC_TSCH
MODULES += os/net/app-layer/coap MODULES += os/net/app-layer/coap
MODULES += os/net/mac/tsch os/services/orchestra os/lib/json MODULES += os/services/orchestra os/lib/json
all: $(CONTIKI_PROJECT) all: $(CONTIKI_PROJECT)
include $(CONTIKI)/Makefile.include include $(CONTIKI)/Makefile.include

View File

@ -13,8 +13,9 @@ PROJECT_SOURCEFILES += rpl-tools.c
CFLAGS += -DWITH_COAP CFLAGS += -DWITH_COAP
CFLAGS += -DREST=coap_rest_implementation CFLAGS += -DREST=coap_rest_implementation
CFLAGS += -DUIP_CONF_TCP=0 CFLAGS += -DUIP_CONF_TCP=0
MAKE_MAC = MAKE_MAC_TSCH
MODULES += os/net/app-layer/coap MODULES += os/net/app-layer/coap
MODULES += os/net/mac/tsch os/services/orchestra os/lib/json MODULES += os/services/orchestra os/lib/json
all: $(CONTIKI_PROJECT) all: $(CONTIKI_PROJECT)

View File

@ -15,8 +15,9 @@ PROJECT_SOURCEFILES += rpl-tools.c
CFLAGS += -DWITH_COAP CFLAGS += -DWITH_COAP
CFLAGS += -DUIP_CONF_TCP=0 CFLAGS += -DUIP_CONF_TCP=0
MAKE_MAC = MAKE_MAC_TSCH
MODULES += os/net/app-layer/coap MODULES += os/net/app-layer/coap
MODULES += os/net/mac/tsch os/services/orchestra os/lib/json MODULES += os/services/orchestra os/lib/json
all: $(CONTIKI_PROJECT) all: $(CONTIKI_PROJECT)
include $(CONTIKI)/Makefile.include include $(CONTIKI)/Makefile.include

View File

@ -14,8 +14,9 @@ PROJECT_SOURCEFILES += rpl-tools.c
CFLAGS += -DWITH_COAP CFLAGS += -DWITH_COAP
CFLAGS += -DREST=coap_rest_implementation CFLAGS += -DREST=coap_rest_implementation
CFLAGS += -DUIP_CONF_TCP=0 CFLAGS += -DUIP_CONF_TCP=0
MAKE_MAC = MAKE_MAC_TSCH
MODULES += os/net/app-layer/coap MODULES += os/net/app-layer/coap
MODULES += os/net/mac/tsch os/services/orchestra os/lib/json MODULES += os/services/orchestra os/lib/json
all: $(CONTIKI_PROJECT) all: $(CONTIKI_PROJECT)

View File

@ -17,6 +17,9 @@ endif
### add more source files to the build or define make variables. ### add more source files to the build or define make variables.
-include $(TARGET)/Makefile.$(TARGET) -include $(TARGET)/Makefile.$(TARGET)
# Custom MAC layer for sensniff (sensniff_mac_driver)
MAKE_MAC = MAKE_MAC_OTHER
all: $(CONTIKI_PROJECT) all: $(CONTIKI_PROJECT)
CONTIKI = ../.. CONTIKI = ../..

View File

@ -32,8 +32,8 @@
#ifndef PROJECT_CONF_H_ #ifndef PROJECT_CONF_H_
#define PROJECT_CONF_H_ #define PROJECT_CONF_H_
/*---------------------------------------------------------------------------*/ /*---------------------------------------------------------------------------*/
#undef NETSTACK_CONF_MAC /* Selected in netstack.h because our Makefile sets MAKE_MAC = MAKE_MAC_OTHER */
#define NETSTACK_CONF_MAC sensniff_mac_driver #define NETSTACK_CONF_OTHER_MAC sensniff_mac_driver
/*---------------------------------------------------------------------------*/ /*---------------------------------------------------------------------------*/
/* Include platform-specific header */ /* Include platform-specific header */
#include "target-conf.h" #include "target-conf.h"

View File

@ -54,15 +54,6 @@
/* #define NETSTACK_CONF_FRAMER framer_802154 */ /* #define NETSTACK_CONF_FRAMER framer_802154 */
#endif /* NETSTACK_CONF_FRAMER */ #endif /* NETSTACK_CONF_FRAMER */
/* NETSTACK_CONF_MAC specifies the Medium Access Control (MAC)
layer. The nullmac_driver does not provide any MAC
functionality. The csma_driver is the default CSMA MAC layer, but
is not compatible with all radios. */
#ifndef NETSTACK_CONF_MAC
#define NETSTACK_CONF_MAC csma_driver
/* #define NETSTACK_CONF_MAC csma_driver */
#endif /* NETSTACK_CONF_MAC */
/* NETSTACK_CONF_NETWORK specifies the network layer and can be either /* NETSTACK_CONF_NETWORK specifies the network layer and can be either
sicslowpan_driver, for IPv6 networking. */ sicslowpan_driver, for IPv6 networking. */
#ifndef NETSTACK_CONF_NETWORK #ifndef NETSTACK_CONF_NETWORK

View File

@ -51,13 +51,17 @@
#endif /* NETSTACK_CONF_NETWORK */ #endif /* NETSTACK_CONF_NETWORK */
#endif /* NETSTACK_NETWORK */ #endif /* NETSTACK_NETWORK */
#ifndef NETSTACK_MAC /* MAC layer configuration. The MAC layer is configured through the Makefile,
#ifdef NETSTACK_CONF_MAC via the flag MAKE_MAC */
#define NETSTACK_MAC NETSTACK_CONF_MAC #if MAC_CONF_WITH_NULLMAC
#else /* NETSTACK_CONF_MAC */ #define NETSTACK_MAC nullmac_driver
#elif MAC_CONF_WITH_CSMA
#define NETSTACK_MAC csma_driver #define NETSTACK_MAC csma_driver
#endif /* NETSTACK_CONF_MAC */ #elif MAC_CONF_WITH_TSCH
#endif /* NETSTACK_MAC */ #define NETSTACK_MAC tschmac_driver
#elif MAC_CONF_WITH_OTHER
#define NETSTACK_MAC NETSTACK_CONF_OTHER_MAC
#endif
#ifndef NETSTACK_RADIO #ifndef NETSTACK_RADIO
#ifdef NETSTACK_CONF_RADIO #ifdef NETSTACK_CONF_RADIO

View File

@ -1,10 +1,11 @@
all: all:
CFLAGS += -D PROJECT_CONF_H=\"project-conf.h\" CFLAGS += -D PROJECT_CONF_H=\"project-conf.h\"
MODULES += os/net/mac/tsch os/net/mac/tsch/sixtop os/services/unit-test MAKE_MAC = MAKE_MAC_TSCH
MODULES += os/net/mac/tsch/sixtop os/services/unit-test
PROJECT_SOURCEFILES += common.c PROJECT_SOURCEFILES += common.c
CONTIKI = ../../.. CONTIKI = ../../..
CONTIKI_WITH_IPV6 = 1 MAKE_MAC = MAKE_MAC_TSCH
include $(CONTIKI)/Makefile.include include $(CONTIKI)/Makefile.include

View File

@ -45,9 +45,6 @@
#undef TSCH_CONF_AUTOSTART #undef TSCH_CONF_AUTOSTART
#define TSCH_CONF_AUTOSTART 1 #define TSCH_CONF_AUTOSTART 1
#undef NETSTACK_CONF_MAC
#define NETSTACK_CONF_MAC tschmac_driver
#undef TSCH_CONF_WITH_SIXTOP #undef TSCH_CONF_WITH_SIXTOP
#define TSCH_CONF_WITH_SIXTOP 1 #define TSCH_CONF_WITH_SIXTOP 1

View File

@ -1,6 +1,7 @@
all: test-panid-handling test-tcsh-create-packet all: test-panid-handling test-tcsh-create-packet
MODULES += os/net/mac/tsch os/services/unit-test MAKE_MAC = MAKE_MAC_TSCH
MODULES += os/services/unit-test
CFLAGS += -D PROJECT_CONF_H=\"project-conf.h\" CFLAGS += -D PROJECT_CONF_H=\"project-conf.h\"
WITH_TSCH ?= 0 WITH_TSCH ?= 0

View File

@ -32,9 +32,6 @@
#ifndef _PROJECT_TSCH_CONF_H #ifndef _PROJECT_TSCH_CONF_H
#define _PROJECT_TSCH_CONF_H #define _PROJECT_TSCH_CONF_H
#undef NETSTACK_CONF_MAC
#define NETSTACK_CONF_MAC tschmac_driver
#if WITH_SECURITY_ON #if WITH_SECURITY_ON
#define TEST_CONFIG_TYPE SECURITY_ON #define TEST_CONFIG_TYPE SECURITY_ON

View File

@ -1,4 +1,4 @@
all: all:
CFLAGS += -D PROJECT_CONF_H=\"project-conf.h\" CFLAGS += -D PROJECT_CONF_H=\"project-conf.h\"
APPS += unit-test APPS += unit-test
@ -11,5 +11,6 @@ CFLAGS += -DSIXP_MSG_API_TEST=1
endif endif
CONTIKI = ../../.. CONTIKI = ../../..
CONTIKI_WITH_IPV6 = 1 # MAC layer is test_mac_driver
MAKE_MAC = MAKE_MAC_OTHER
include $(CONTIKI)/Makefile.include include $(CONTIKI)/Makefile.include

View File

@ -65,16 +65,8 @@
#undef IEEE802154_CONF_PANID #undef IEEE802154_CONF_PANID
#define IEEE802154_CONF_PANID 0xabcd #define IEEE802154_CONF_PANID 0xabcd
#undef NETSTACK_CONF_MAC /* Custom MAC layer, enabled via MAKE_MAC = MAKE_MAC_OTHER in the Makefile */
#define NETSTACK_CONF_MAC test_mac_driver #undef NETSTACK_CONF_OTHER_MAC
#define NETSTACK_CONF_OTHER_MAC test_mac_driver
#undef NETSTACK_CONF_RDC
#define NETSTACK_CONF_RDC nordc_driver
#undef NETSTACK_CONF_FRAMER
#define NETSTACK_CONF_FRAMER framer_802154
#undef FRAME802154_CONF_VERSION
#define FRAME802154_CONF_VERSION FRAME802154_IEEE802154_2015
#endif /* __PROJECT_CONF_H__ */ #endif /* __PROJECT_CONF_H__ */