Contiki-NG
Loading...
Searching...
No Matches
contiki-conf.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2026, RISE Research Institutes of Sweden AB.
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright
11 * notice, this list of conditions and the following disclaimer in the
12 * documentation and/or other materials provided with the distribution.
13 * 3. Neither the name of the Institute nor the names of its contributors
14 * may be used to endorse or promote products derived from this software
15 * without specific prior written permission.
16 *
17 * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
18 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
19 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
20 * ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
21 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
27 * SUCH DAMAGE.
28 */
29
30/**
31 * \file
32 * Contiki configuration for MSP-EXP430FR5969 LaunchPad
33 */
34
35#ifndef CONTIKI_CONF_H_
36#define CONTIKI_CONF_H_
37
38/*---------------------------------------------------------------------------*/
39/* Include project-specific configuration if provided */
40/*---------------------------------------------------------------------------*/
41#ifdef PROJECT_CONF_PATH
42#include PROJECT_CONF_PATH
43#endif
44
45/*---------------------------------------------------------------------------*/
46/* Include platform hardware definitions */
47/*---------------------------------------------------------------------------*/
49
50/*---------------------------------------------------------------------------*/
51/* Include MSP430 CPU definitions */
52/*---------------------------------------------------------------------------*/
53#include "msp430-def.h"
54
55/*---------------------------------------------------------------------------*/
56/* RAM saving configuration for 2KB SRAM */
57/*---------------------------------------------------------------------------*/
58/* Disable stack check - no linker support for _stack_origin on MSP430 */
59#ifndef STACK_CHECK_CONF_ENABLED
60#define STACK_CHECK_CONF_ENABLED 0
61#endif
62
63/* Reduce process limit */
64#ifndef PROCESS_CONF_NUMEVENTS
65#define PROCESS_CONF_NUMEVENTS 8
66#endif
67
68/* Disable queuebuf since there's no radio */
69#ifndef QUEUEBUF_CONF_NUM
70#define QUEUEBUF_CONF_NUM 0
71#endif
72
73/* Disable neighbor tables since there's no network */
74#ifndef NBR_TABLE_CONF_MAX_NEIGHBORS
75#define NBR_TABLE_CONF_MAX_NEIGHBORS 0
76#endif
77
78/*---------------------------------------------------------------------------*/
79/* Network stack configuration - No radio on this platform */
80/*---------------------------------------------------------------------------*/
81#ifndef NETSTACK_CONF_RADIO
82#define NETSTACK_CONF_RADIO nullradio_driver
83#endif
84
85/* Disable networking by default since there is no radio */
86#ifndef NETSTACK_CONF_WITH_IPV6
87#define NETSTACK_CONF_WITH_IPV6 0
88#endif
89
90#ifndef NETSTACK_CONF_WITH_IPV4
91#define NETSTACK_CONF_WITH_IPV4 0
92#endif
93
94/*
95 * This board has no radio and only 2 KB of SRAM, so the IPv6/IPv4 network
96 * stacks cannot fit and would never have a link anyway. Fail early with a
97 * clear message if an example or project-conf.h turns them on, instead of
98 * the confusing errors this otherwise produces (undeclared IPv6 helpers at
99 * compile time, or a RAM overflow at link time).
100 */
101#if NETSTACK_CONF_WITH_IPV6 || NETSTACK_CONF_WITH_IPV4
102#error "MSP-EXP430FR5969 has no radio and only 2 KB SRAM; IP networking is not \
103supported. Do not enable NETSTACK_CONF_WITH_IPV6 or NETSTACK_CONF_WITH_IPV4."
104#endif
105
106/*---------------------------------------------------------------------------*/
107/* uIP configuration */
108/*---------------------------------------------------------------------------*/
109#ifndef UIP_CONF_BUFFER_SIZE
110#define UIP_CONF_BUFFER_SIZE 128
111#endif
112
113/*---------------------------------------------------------------------------*/
114/* Include MSP430 CPU configuration */
115/*---------------------------------------------------------------------------*/
116#include "msp430-conf.h"
117
118#endif /* CONTIKI_CONF_H_ */
Hardware definitions for MSP-EXP430FR5969 LaunchPad.