Developer World
Spresense SDK Library
v3.2.0-ebc0364
types.h
Go to the documentation of this file.
1
/****************************************************************************
2
* modules/include/asmp/types.h
3
*
4
* Copyright 2018 Sony Semiconductor Solutions Corporation
5
*
6
* Redistribution and use in source and binary forms, with or without
7
* modification, are permitted provided that the following conditions
8
* are met:
9
*
10
* 1. Redistributions of source code must retain the above copyright
11
* notice, this list of conditions and the following disclaimer.
12
* 2. Redistributions in binary form must reproduce the above copyright
13
* notice, this list of conditions and the following disclaimer in
14
* the documentation and/or other materials provided with the
15
* distribution.
16
* 3. Neither the name of Sony Semiconductor Solutions Corporation nor
17
* the names of its contributors may be used to endorse or promote
18
* products derived from this software without specific prior written
19
* permission.
20
*
21
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
24
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
25
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
26
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
27
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
28
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
29
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
30
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
31
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
32
* POSSIBILITY OF SUCH DAMAGE.
33
*
34
****************************************************************************/
35
43
#ifndef __INCLUDE_ASMP_TYPES_H
44
#define __INCLUDE_ASMP_TYPES_H
45
46
#include <sys/types.h>
47
#include <nuttx/queue.h>
48
49
#define MPOBJTYPE_SHM 0x4588
/* MP shared memory object */
50
#define MPOBJTYPE_MQ 0x2dc6
/* MP message queue object */
51
#define MPOBJTYPE_MUTEX 0x0686
/* MP mutex object */
52
53
/*
54
* MP object initializer
55
*/
56
57
#define mpobj_init(obj, t, k) do { (obj)->super.type = MPOBJTYPE_ ## t; (obj)->super.key = (k); } while (0)
58
64
typedef
int16_t
cpuid_t
;
65
71
typedef
int16_t
mpobjtype_t
;
72
73
/* This typedef is supplemental */
74
75
#ifndef CONFIG_SMP
76
typedef
volatile
uint8_t cpu_set_t;
77
#endif
78
79
/*
80
* Super class for MP objects
81
*/
82
83
typedef
struct
mpobj
84
{
85
mpobjtype_t
type;
86
key_t key;
87
}
mpobj_t
;
88
91
#endif
cpuid_t
int16_t cpuid_t
Definition:
types.h:64
mpobjtype_t
int16_t mpobjtype_t
Definition:
types.h:71
mpobj
Definition:
types.h:84
spresense
sdk
modules
include
asmp
types.h
Generated by
1.9.4