MCUSW
Loading...
Searching...
No Matches
Cdd_IpcCfg.h
Go to the documentation of this file.
1/*
2*
3* Copyright (c) 2024 Texas Instruments Incorporated
4*
5* All rights reserved not granted herein.
6*
7* Limited License.
8*
9* Texas Instruments Incorporated grants a world-wide, royalty-free, non-exclusive
10* license under copyrights and patents it now or hereafter owns or controls to make,
11* have made, use, import, offer to sell and sell ("Utilize") this software subject to the
12* terms herein. With respect to the foregoing patent license, such license is granted
13* solely to the extent that any such patent is necessary to Utilize the software alone.
14* The patent license shall not apply to any combinations which include this software,
15* other than combinations with devices manufactured by or for TI ("TI Devices").
16* No hardware patent is licensed hereunder.
17*
18* Redistributions must preserve existing copyright notices and reproduce this license
19* (including the above copyright notice and the disclaimer and (if applicable) source
20* code license limitations below) in the documentation and/or other materials provided
21* with the distribution
22*
23* Redistribution and use in binary form, without modification, are permitted provided
24* that the following conditions are met:
25*
26* * No reverse engineering, decompilation, or disassembly of this software is
27* permitted with respect to any software provided in binary form.
28*
29* * any redistribution and use are licensed by TI for use only with TI Devices.
30*
31* * Nothing shall obligate TI to provide you with source code for the software
32* licensed and provided to you in object code.
33*
34* If software source code is provided to you, modification and redistribution of the
35* source code are permitted provided that the following conditions are met:
36*
37* * any redistribution and use of the source code, including any resulting derivative
38* works, are licensed by TI for use only with TI Devices.
39*
40* * any redistribution and use of any object code compiled from the source code
41* and any resulting derivative works, are licensed by TI for use only with TI Devices.
42*
43* Neither the name of Texas Instruments Incorporated nor the names of its suppliers
44*
45* may be used to endorse or promote products derived from this software without
46* specific prior written permission.
47*
48* DISCLAIMER.
49*
50* THIS SOFTWARE IS PROVIDED BY TI AND TI'S LICENSORS "AS IS" AND ANY EXPRESS
51* OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
52* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
53* IN NO EVENT SHALL TI AND TI'S LICENSORS BE LIABLE FOR ANY DIRECT, INDIRECT,
54* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
55* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
56* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
57* OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
58* OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
59* OF THE POSSIBILITY OF SUCH DAMAGE.
60*
61*/
62
71/******************************************************************************
72 Project : CDD_IPC_J721E
73 Date : 2024-10-23 15:01:41
74 SW Ver : 11.0.0
75 Module Rele Ver : AUTOSAR 4.3.1 0
76
77 This file is generated by EB Tresos
78 Do not modify this file,otherwise the software may behave in unexpected way.
79******************************************************************************/
80
88#ifndef CDD_IPC_CFG_H_
89#define CDD_IPC_CFG_H_
90/* Generic requirements covered mapping */
91/*
92 * Design : DES_CDD_IPC_020
93 */
94/*
95 * Requirements : MCAL-3698
96 */
97
98/* ========================================================================== */
99/* Include Files */
100/* ========================================================================== */
101
102#include "Dem.h"
103#include "Os.h"
104#include <CddIpc/ipc_baremetal_hw/include/ipc_config.h>
105
106
107#ifdef __cplusplus
108extern "C" {
109#endif
110
111/* ========================================================================== */
112/* Macros & Typedefs */
113/* ========================================================================== */
114/*
115 * Design : DES_CDD_IPC_004, DES_CDD_IPC_002, DES_CDD_IPC_017
116 */
117/*
118 * Requirements : MCAL-921, MCAL-3703
119 */
124#define CDD_IPC_PRE_COMPILE_VARIANT (STD_ON)
125
134#define CDD_IPC_ISR_VOID (0x00U)
136#define CDD_IPC_ISR_CAT1 (0x01U)
138#define CDD_IPC_ISR_CAT2 (0x02U)
139
140/*
141 * Design : DES_CDD_IPC_012
142 */
143/*
144 * Requirements : MCAL-3693
145 */
147#define CDD_IPC_DEV_ERROR_DETECT (STD_ON)
148/*
149 * Design : DES_CDD_IPC_012
150 */
151/*
152 * Requirements : MCAL-3692
153 */
155#define CDD_IPC_ISR_TYPE (CDD_IPC_ISR_CAT1)
156
161/*
162 * Design : DES_CDD_IPC_012
163 */
164/*
165 * Requirements : MCAL-3741
166 */
168#define CDD_IPC_VERSION_INFO_API (STD_ON)
169/*
170 * Design : DES_CDD_IPC_012
171 */
172/*
173 * Requirements : MCAL-3688
174 */
176#define CDD_IPC_DEINIT_API (STD_ON)
177/*
178 * Design : DES_CDD_IPC_012
179 */
180/*
181 * Requirements : MCAL-3689
182 */
184#define CDD_IPC_ANNOUNCE_API (STD_ON)
185/*
186 * Design : DES_CDD_IPC_005, DES_CDD_IPC_012
187 */
188/*
189 * Requirements : MCAL-3687
190 */
192#define CDD_IPC_REGISTER_READBACK_API (STD_ON)
193/*
194 * Design :
195 */
196/*
197 * Requirements : MCAL-8266
198 */
200#define CDD_IPC_SAFETY_DIAGNOSTIC_API (STD_ON)
201/*
202 * Design : DES_CDD_IPC_040
203 */
204/*
205 * Requirements : MCAL-4452
206 */
207
209#define CDD_IPC_IS_INIT_DONE_API (STD_ON)
210
211/*
212 * Design : DES_CDD_IPC_041
213 */
214/*
215 * Requirements : MCAL-4453
216 */
217
219#define CDD_IPC_GET_MAX_MSG_SIZE_API (STD_ON)
220
221
222/* @} */
223
228/*
229 * Design : DES_CDD_IPC_012
230 */
231/*
232 * Requirements : MCAL-3694, MCAL-3694
233 */
235#define CDD_IPC_OS_COUNTER_ID ((CounterType)OsCounter_0)
236
243/*
244 * Design : DES_CDD_IPC_020
245 */
246/*
247 * Requirements : MCAL-3693
248 */
249
250#ifndef CDD_IPC_E_HARDWARE_ERROR
252#define CDD_IPC_E_HARDWARE_ERROR (DemConf_DemEventParameter_CDD_IPC_E_HARDWARE_ERROR)
253#endif
254/* @} */
255
260/*
261 * Design : DES_CDD_IPC_018
262 */
263/*
264 * Requirements : MCAL-3699, MCAL-3700
265 */
266#define CDD_IPC_CORE_MCU1_0 (1U)
268#define CDD_IPC_CORE_MCU1_1 (2U)
270#define CDD_IPC_CORE_MCU2_0 (3U)
272#define CDD_IPC_CORE_MCU2_1 (4U)
274#define CDD_IPC_CORE_MCU3_0 (5U)
276#define CDD_IPC_CORE_MCU3_1 (6U)
278#define CDD_IPC_CORE_C66X_1 (7U)
280#define CDD_IPC_CORE_C66X_2 (8U)
282#define CDD_IPC_CORE_C7X_1 (9U)
284#define CDD_IPC_CORE_MAX_PROCS (11U)
288#define CDD_IPC_OWN_CORE_ID (CDD_IPC_CORE_MCU1_0)
290#define CDD_IPC_REMOTE_CORE_MCU2_0_USED
293/* @} */
294
295
300/*
301 * Design : DES_CDD_IPC_005, DES_CDD_IPC_016
302 */
303/*
304 * Requirements : MCAL-3686,
305 */
306#define CDD_IPC_VERTIO_OBJECT_SIZE (0x1000U)
307 /* @} */
308
313/*
314 * Design : DES_CDD_IPC_016
315 */
316/*
317 * Requirements : MCAL-3686,
318 */
319#define CddIpcConf_IpcComChanId_Cdd_IpcMcu20 (0U)
322/*
323 * Design : DES_CDD_IPC_016
324 */
325/*
326 * Requirements : MCAL-3755, MCAL-3682
327 */
328#define CDD_IPC_RPMSG_OBJ_SIZE (256U)
330#define CDD_IPC_CH_0_BUFF_SIZE ((256U * (496U + 32U)) + CDD_IPC_RPMSG_OBJ_SIZE)
332#define CDD_IPC_MAX_CHANNEL_CFG (2U)
339#define IPC_VRING_BUFFER_SIZE (0x1C00000U)
340
342#define IPC_MPU1_0 (0U)
343#define IPC_MCU1_0 (1U)
344#define IPC_MCU1_1 (2U)
345#define IPC_MCU2_0 (3U)
346#define IPC_MCU2_1 (4U)
347#define IPC_MCU3_0 (5U)
348#define IPC_MCU3_1 (6U)
349#define IPC_C66X_1 (7U)
350#define IPC_C66X_2 (8U)
351#define IPC_C7X_1 (9U)
352#define IPC_MPU1_1 (10U)
353#define IPC_MAX_PROCS (11U)
357#define CDD_IPC_CORE_ID_MAX (11U)
358
359#define IPC_MAILBOX_CLUSTER_CNT (12U)
360
361/* @} */
362/* ========================================================================== */
363/* Globals Variables */
364/* ========================================================================== */
365/* Mailbox Cluster Base Address */
367
371extern Ipc_ProcInfo g_Ipc_mp_procInfo[IPC_MAX_PROCS];
372
373extern Ipc_MailboxInfo g_IPC_MailboxInfo[IPC_MAX_PROCS][IPC_MAX_PROCS];
374
375/* ========================================================================== */
376/* Function Declarations */
377/* ========================================================================== */
378/*
379 * Design : DES_CDD_IPC_002, DES_CDD_IPC_017
380 */
381/*
382 * Requirements : MCAL-3703
383 */
384extern const struct Cdd_IpcConfigType_s CddIpcConfiguraions_PC;
385
390/*
391 * Design : DES_CDD_IPC_012, DES_CDD_IPC_026
392 */
393/*
394 * Requirements : MCAL-3701, MCAL-3691
395 */
396extern void Cdd_IpcNewMessageNotify(void);
397
398#define CDD_IPC_NEW_MSG_NTFY_FXN Cdd_IpcNewMessageNotify
399
400#if (STD_ON == CDD_IPC_ANNOUNCE_API)
401
406/*
407 * Design : DES_CDD_IPC_039
408 */
409/*
410 * Requirements : MCAL-4067, MCAL-4066
411 */
412extern void Cdd_IpcNewCtrlMessageNotify(uint32 remoteProcId);
413
414#define CDD_IPC_NEW_CTRL_MSG_NTFY_FXN Cdd_IpcNewCtrlMessageNotify
415
416#endif /* STD_ON == CDD_IPC_ANNOUNCE_API */
417
418/*
419 * Design : DES_CDD_IPC_013
420 */
421/*
422 * Requirements : MCAL-3674
423 */
429
444FUNC(void, CDD_IPC_CODE_FAST) Cdd_IpcIrqMbxFromMcu_20(void);
445
446#ifdef __cplusplus
447}
448#endif
449
450#endif /* #ifndef CDD_IPC_CFG_H_ */
451
452/* @} */
#define IPC_MAX_PROCS
Definition Cdd_IpcCfg.h:353
const uint32 IPC_Mailbox_BasePhyAddr[IPC_MAILBOX_CLUSTER_CNT]
#define IPC_MAILBOX_CLUSTER_CNT
Definition Cdd_IpcCfg.h:359
void Cdd_IpcNewMessageNotify(void)
New Message notification function.
Ipc_MailboxInfo g_IPC_MailboxInfo[IPC_MAX_PROCS][IPC_MAX_PROCS]
void Cdd_IpcIrqMbxFromMcu_20(void)
A Mailbox can raise multiple interrupts. In this implementation, the Mailbox new message interrupt is...
#define CDD_IPC_VERTIO_OBJECT_SIZE
Definition Cdd_IpcCfg.h:306
uint8 Cdd_IpcDrvVertIoObj[CDD_IPC_VERTIO_OBJECT_SIZE]
Communication Channels configured.
const struct Cdd_IpcConfigType_s CddIpcConfiguraions_PC
Ipc_ProcInfo g_Ipc_mp_procInfo[IPC_MAX_PROCS]
Processor IDs to name mapping for all processor in Jacinto7.
void Cdd_IpcNewCtrlMessageNotify(uint32 remoteProcId)
New Control Message notification function.