source: rtems-libbsd/rtemsbsd/include/machine/rtems-bsd-config.h.in @ ea49a89

4.115-freebsd-12freebsd-9.3
Last change on this file since ea49a89 was ea49a89, checked in by Sebastian Huber <sebastian.huber@…>, on Oct 24, 2013 at 8:17:20 AM

Move ticks definition

  • Property mode set to 100644
File size: 4.2 KB
Line 
1/**
2 * @file
3 *
4 * @ingroup rtems_bsd_machine
5 *
6 * @brief TODO.
7 */
8
9/*
10 * Copyright (c) 2009-2013 embedded brains GmbH.  All rights reserved.
11 *
12 *  embedded brains GmbH
13 *  Dornierstr. 4
14 *  82178 Puchheim
15 *  Germany
16 *  <rtems@embedded-brains.de>
17 *
18 * Redistribution and use in source and binary forms, with or without
19 * modification, are permitted provided that the following conditions
20 * are met:
21 * 1. Redistributions of source code must retain the above copyright
22 *    notice, this list of conditions and the following disclaimer.
23 * 2. Redistributions in binary form must reproduce the above copyright
24 *    notice, this list of conditions and the following disclaimer in the
25 *    documentation and/or other materials provided with the distribution.
26 *
27 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
28 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
29 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
30 * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
31 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
32 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
33 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
34 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
35 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
36 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
37 * SUCH DAMAGE.
38 */
39
40#ifndef _RTEMS_BSD_MACHINE_RTEMS_BSD_CONFIG_H_
41#define _RTEMS_BSD_MACHINE_RTEMS_BSD_CONFIG_H_
42
43/* XXX hack so /opt.../machine/param.h can disable MSIZE and use this one */
44#define __NEW_RTEMS_BSD__
45
46/* General defines to activate BSD kernel parts */
47#define _KERNEL 1
48
49#include <sys/cdefs.h>
50#include <sys/types.h>
51
52/* Type set from the C standard */
53#include <stdarg.h>
54#include <stddef.h>
55#include <stdint.h>
56#include <limits.h>
57#include <string.h>
58#include <stdio.h>
59#include <stdlib.h>
60
61/* Ensure that we are RTEMS compatible and can use RTEMS */
62#include <rtems.h>
63#include <rtems/error.h>
64#include <rtems/chain.h>
65#include <rtems/libio.h>
66
67/* Ensure that we can use POSIX threads */
68#include <pthread.h>
69
70/* The BSD kernel is not a POSIX source */
71#undef _POSIX_SOURCE
72
73/* Symbol undefines */
74#undef MAXPATHLEN
75
76/* Networking */
77#define IPSEC 1
78#define INET  1
79#define INET6 1
80#define TCP_SIGNATURE 1
81
82/* Integer type definitions */
83
84#define __float_t float
85#define __double_t double
86
87#define __clock_t clock_t
88#define __cpumask_t unsigned int
89#define __critical_t intptr_t
90#define __ptrdiff_t ptrdiff_t
91#define __time_t time_t
92
93#define _CLOCKID_T_DECLARED 1
94#define _TIMER_T_DECLARED 1
95#define _TIME_T_DECLARED 1
96#define _USECONDS_T_DECLARED 1
97#define _FSBLKCNT_T_DECLARED 1
98#define _BLKSIZE_T_DECLARED 1
99#define _BLKCNT_T_DECLARED 1
100
101/* Symbol rename */
102
103#include <machine/rtems-bsd-symbols.h>
104
105#define gets _bsd_gets
106#define realloc _bsd_realloc
107#define reallocf _bsd_reallocf
108#define setenv _bsd_setenv
109#define abs _bsd_abs
110#define labs _bsd_labs
111
112/* Debug */
113
114void rtems_bsd_assert_func(const char *file, int line, const char *func, const char *expr);
115
116#define BSD_PRINTF(fmt, ...) printf("%s: " fmt, __func__, ##__VA_ARGS__)
117
118#define BSD_PANIC(fmt, ...) panic("%s: " fmt "\n",  __func__, ##__VA_ARGS__)
119
120#ifdef NDEBUG
121# define BSD_ASSERT(expr) ((void) 0)
122#else
123# define BSD_ASSERT(expr) ((expr) ? (void) 0 : rtems_bsd_assert_func(__FILE__, __LINE__, __func__, #expr))
124#endif
125
126#define BSD_ASSERT_SC(sc) BSD_ASSERT((sc) == RTEMS_SUCCESSFUL)
127
128#define BSD_ASSERT_RV(rv) BSD_ASSERT((rv) == 0)
129
130/* General definitions */
131
132#define M_RTEMS_HEAP 0
133
134#define BSD_DEFAULT_FIB 0
135
136#define BSD_DEFAULT_PID 0
137
138#define BSD_DEFAULT_UID 0
139
140#define BSD_DEFAULT_GID 0
141
142#define BSD_DEFAULT_PRISON (&prison0)
143
144extern rtems_chain_control rtems_bsd_lock_chain;
145
146extern rtems_chain_control rtems_bsd_mtx_chain;
147
148extern rtems_chain_control rtems_bsd_sx_chain;
149
150extern rtems_chain_control rtems_bsd_condvar_chain;
151
152extern rtems_chain_control rtems_bsd_callout_chain;
153
154extern rtems_chain_control rtems_bsd_malloc_chain;
155
156/* CPU definitions */
157#define cpu_spinwait()    /* nothing */
158
159#endif /* _RTEMS_BSD_MACHINE_RTEMS_BSD_CONFIG_H_ */
Note: See TracBrowser for help on using the repository browser.