MAX78002 Peripheral Driver API
Peripheral Driver API for the MAX78002
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Modules Pages
sema_regs.h
Go to the documentation of this file.
1
8/******************************************************************************
9 *
10 * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by
11 * Analog Devices, Inc.),
12 * Copyright (C) 2023-2024 Analog Devices, Inc.
13 *
14 * Licensed under the Apache License, Version 2.0 (the "License");
15 * you may not use this file except in compliance with the License.
16 * You may obtain a copy of the License at
17 *
18 * http://www.apache.org/licenses/LICENSE-2.0
19 *
20 * Unless required by applicable law or agreed to in writing, software
21 * distributed under the License is distributed on an "AS IS" BASIS,
22 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
23 * See the License for the specific language governing permissions and
24 * limitations under the License.
25 *
26 ******************************************************************************/
27
28#ifndef LIBRARIES_CMSIS_DEVICE_MAXIM_MAX78002_INCLUDE_SEMA_REGS_H_
29#define LIBRARIES_CMSIS_DEVICE_MAXIM_MAX78002_INCLUDE_SEMA_REGS_H_
30
31/* **** Includes **** */
32#include <stdint.h>
33
34#ifdef __cplusplus
35extern "C" {
36#endif
37
38#if defined (__ICCARM__)
39 #pragma system_include
40#endif
41
42#if defined (__CC_ARM)
43 #pragma anon_unions
44#endif
46/*
47 If types are not defined elsewhere (CMSIS) define them here
48*/
49#ifndef __IO
50#define __IO volatile
51#endif
52#ifndef __I
53#define __I volatile const
54#endif
55#ifndef __O
56#define __O volatile
57#endif
58#ifndef __R
59#define __R volatile const
60#endif
62
63/* **** Definitions **** */
64
80typedef struct {
81 __IO uint32_t semaphores[8];
82 __R uint32_t rsv_0x20_0x3f[8];
83 __IO uint32_t irq0;
84 __IO uint32_t mail0;
85 __IO uint32_t irq1;
86 __IO uint32_t mail1;
87 __R uint32_t rsv_0x50_0xff[44];
88 __IO uint32_t status;
90
91/* Register offsets for module SEMA */
98#define MXC_R_SEMA_SEMAPHORES ((uint32_t)0x00000000UL)
99#define MXC_R_SEMA_IRQ0 ((uint32_t)0x00000040UL)
100#define MXC_R_SEMA_MAIL0 ((uint32_t)0x00000044UL)
101#define MXC_R_SEMA_IRQ1 ((uint32_t)0x00000048UL)
102#define MXC_R_SEMA_MAIL1 ((uint32_t)0x0000004CUL)
103#define MXC_R_SEMA_STATUS ((uint32_t)0x00000100UL)
112#define MXC_F_SEMA_SEMAPHORES_SEMA_POS 0
113#define MXC_F_SEMA_SEMAPHORES_SEMA ((uint32_t)(0x1UL << MXC_F_SEMA_SEMAPHORES_SEMA_POS))
123#define MXC_F_SEMA_IRQ0_EN_POS 0
124#define MXC_F_SEMA_IRQ0_EN ((uint32_t)(0x1UL << MXC_F_SEMA_IRQ0_EN_POS))
126#define MXC_F_SEMA_IRQ0_CM4_IRQ_POS 16
127#define MXC_F_SEMA_IRQ0_CM4_IRQ ((uint32_t)(0x1UL << MXC_F_SEMA_IRQ0_CM4_IRQ_POS))
137#define MXC_F_SEMA_MAIL0_DATA_POS 0
138#define MXC_F_SEMA_MAIL0_DATA ((uint32_t)(0xFFFFFFFFUL << MXC_F_SEMA_MAIL0_DATA_POS))
148#define MXC_F_SEMA_IRQ1_EN_POS 0
149#define MXC_F_SEMA_IRQ1_EN ((uint32_t)(0x1UL << MXC_F_SEMA_IRQ1_EN_POS))
151#define MXC_F_SEMA_IRQ1_RV32_IRQ_POS 16
152#define MXC_F_SEMA_IRQ1_RV32_IRQ ((uint32_t)(0x1UL << MXC_F_SEMA_IRQ1_RV32_IRQ_POS))
162#define MXC_F_SEMA_MAIL1_DATA_POS 0
163#define MXC_F_SEMA_MAIL1_DATA ((uint32_t)(0xFFFFFFFFUL << MXC_F_SEMA_MAIL1_DATA_POS))
173#define MXC_F_SEMA_STATUS_STATUS0_POS 0
174#define MXC_F_SEMA_STATUS_STATUS0 ((uint32_t)(0x1UL << MXC_F_SEMA_STATUS_STATUS0_POS))
176#define MXC_F_SEMA_STATUS_STATUS1_POS 1
177#define MXC_F_SEMA_STATUS_STATUS1 ((uint32_t)(0x1UL << MXC_F_SEMA_STATUS_STATUS1_POS))
179#define MXC_F_SEMA_STATUS_STATUS2_POS 2
180#define MXC_F_SEMA_STATUS_STATUS2 ((uint32_t)(0x1UL << MXC_F_SEMA_STATUS_STATUS2_POS))
182#define MXC_F_SEMA_STATUS_STATUS3_POS 3
183#define MXC_F_SEMA_STATUS_STATUS3 ((uint32_t)(0x1UL << MXC_F_SEMA_STATUS_STATUS3_POS))
185#define MXC_F_SEMA_STATUS_STATUS4_POS 4
186#define MXC_F_SEMA_STATUS_STATUS4 ((uint32_t)(0x1UL << MXC_F_SEMA_STATUS_STATUS4_POS))
188#define MXC_F_SEMA_STATUS_STATUS5_POS 5
189#define MXC_F_SEMA_STATUS_STATUS5 ((uint32_t)(0x1UL << MXC_F_SEMA_STATUS_STATUS5_POS))
191#define MXC_F_SEMA_STATUS_STATUS6_POS 6
192#define MXC_F_SEMA_STATUS_STATUS6 ((uint32_t)(0x1UL << MXC_F_SEMA_STATUS_STATUS6_POS))
194#define MXC_F_SEMA_STATUS_STATUS7_POS 7
195#define MXC_F_SEMA_STATUS_STATUS7 ((uint32_t)(0x1UL << MXC_F_SEMA_STATUS_STATUS7_POS))
199#ifdef __cplusplus
200}
201#endif
202
203#endif // LIBRARIES_CMSIS_DEVICE_MAXIM_MAX78002_INCLUDE_SEMA_REGS_H_
__IO uint32_t mail1
Definition: sema_regs.h:86
__IO uint32_t irq1
Definition: sema_regs.h:85
__IO uint32_t irq0
Definition: sema_regs.h:83
__IO uint32_t mail0
Definition: sema_regs.h:84
__IO uint32_t status
Definition: sema_regs.h:88
Definition: sema_regs.h:80