AM64x MCU+ SDK  10.00.00
sdl_exception.h
Go to the documentation of this file.
1 /*
2  * SDL EXCEPTION
3  *
4  * Software Diagnostics Library module for Exception handling
5  *
6  * Copyright (c) Texas Instruments Incorporated 2022-2023
7  *
8  * Redistribution and use in source and binary forms, with or without
9  * modification, are permitted provided that the following conditions
10  * are met:
11  *
12  * Redistributions of source code must retain the above copyright
13  * notice, this list of conditions and the following disclaimer.
14  *
15  * Redistributions in binary form must reproduce the above copyright
16  * notice, this list of conditions and the following disclaimer in the
17  * documentation and/or other materials provided with the
18  * distribution.
19  *
20  * Neither the name of Texas Instruments Incorporated nor the names of
21  * its contributors may be used to endorse or promote products derived
22  * from this software without specific prior written permission.
23  *
24  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
25  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
26  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
27  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
28  * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
29  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
30  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
31  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
32  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
33  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
34  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
35  *
36  */
37 
53 #ifndef INCLUDE_SDL_EXCEPTION_H_
54 #define INCLUDE_SDL_EXCEPTION_H_
55 #include "sdl_common.h"
56 
57 #ifdef __cplusplus
58 extern "C" {
59 #endif
60 
61 
63 typedef void (*SDL_EXCEPTION_ECCCallback_t) (uint32_t intSource,
64  uint32_t errorAddr,
65  uint32_t ramId,
66  uint64_t bitErrorOffset,
67  uint32_t bitErrorGroup);
68 
70 typedef void (*SDL_EXCEPTION_Callback_t) (void);
71 
73 typedef struct SDL_EXCEPTION_CallbackFunctions_s
74 {
92 
101 
110 
119 
127 
136 
145 
154 
163 
164 #ifdef __cplusplus
165 }
166 #endif
167 
168 #endif
SDL_EXCEPTION_CallbackFunctions_t::swiExptnCallback
SDL_EXCEPTION_Callback_t swiExptnCallback
Definition: sdl_exception.h:77
SDL_EXCEPTION_swIntrExptnHandler
void SDL_EXCEPTION_swIntrExptnHandler(void *param)
SW Interrupt Exception Handler.
SDL_EXCEPTION_undefInstructionExptnHandler
void SDL_EXCEPTION_undefInstructionExptnHandler(void *param)
Undefined Instruction Exception Handler.
SDL_EXCEPTION_ECCCallback_t
void(* SDL_EXCEPTION_ECCCallback_t)(uint32_t intSource, uint32_t errorAddr, uint32_t ramId, uint64_t bitErrorOffset, uint32_t bitErrorGroup)
Format of Call back function for ECC error events.
Definition: sdl_exception.h:63
SDL_EXCEPTION_prefetchAbortExptnHandler
void SDL_EXCEPTION_prefetchAbortExptnHandler(void *param)
Prefetch Abort Exception Handler.
SDL_EXCEPTION_CallbackFunctions_t::pabtExptnCallback
SDL_EXCEPTION_Callback_t pabtExptnCallback
Definition: sdl_exception.h:79
sdl_common.h
Header file contains enumerations, structure definitions and function declarations for SDL COMMON int...
SDL_EXCEPTION_irqExptnHandler
void SDL_EXCEPTION_irqExptnHandler(void *param)
IRQ Exception Handler.
SDL_EXCEPTION_Callback_t
void(* SDL_EXCEPTION_Callback_t)(void)
Format of Call back function for exception.
Definition: sdl_exception.h:70
SDL_EXCEPTION_CallbackFunctions_t::fiqExptnCallback
SDL_EXCEPTION_Callback_t fiqExptnCallback
Definition: sdl_exception.h:87
SDL_EXCEPTION_init
void SDL_EXCEPTION_init(const SDL_EXCEPTION_CallbackFunctions_t *callbackFunctions)
Initialise Exception module.
SDL_EXCEPTION_CallbackFunctions_t
Structure of call back functions for various exception events.
Definition: sdl_exception.h:74
SDL_EXCEPTION_CallbackFunctions_t::dabtExptnCallback
SDL_EXCEPTION_Callback_t dabtExptnCallback
Definition: sdl_exception.h:81
SDL_EXCEPTION_registerECCHandler
void SDL_EXCEPTION_registerECCHandler(SDL_EXCEPTION_ECCCallback_t ECCCallBackFunctionPtr)
Function to register ECC exception handler.
SDL_EXCEPTION_CallbackFunctions_t::irqExptnCallback
SDL_EXCEPTION_Callback_t irqExptnCallback
Definition: sdl_exception.h:83
SDL_EXCEPTION_fiqExptnHandler
void SDL_EXCEPTION_fiqExptnHandler(void *param)
FIQ Exception Handler.
SDL_EXCEPTION_dataAbortExptnHandler
void SDL_EXCEPTION_dataAbortExptnHandler(void *param)
Data Abort Exception Handler.
SDL_EXCEPTION_CallbackFunctions_t::udefExptnCallback
SDL_EXCEPTION_Callback_t udefExptnCallback
Definition: sdl_exception.h:75