Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependents: TYBLE16_simple_data_logger TYBLE16_MP3_Air
fnet_isr.h
00001 /************************************************************************** 00002 * 00003 * Copyright 2011-2016 by Andrey Butok. FNET Community. 00004 * Copyright 2008-2010 by Andrey Butok. Freescale Semiconductor, Inc. 00005 * 00006 *************************************************************************** 00007 * 00008 * Licensed under the Apache License, Version 2.0 (the "License"); you may 00009 * not use this file except in compliance with the License. 00010 * You may obtain a copy of the License at 00011 * 00012 * http://www.apache.org/licenses/LICENSE-2.0 00013 * 00014 * Unless required by applicable law or agreed to in writing, software 00015 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 00016 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 00017 * See the License for the specific language governing permissions and 00018 * limitations under the License. 00019 * 00020 **********************************************************************/ 00021 /*! 00022 * @brief Private. Interrupt dispatcher API. 00023 * 00024 ***************************************************************************/ 00025 00026 #ifndef _FNET_ISR_H_ 00027 00028 #define _FNET_ISR_H_ 00029 00030 #ifndef FNET_ISR_HANDLER 00031 #define FNET_ISR_HANDLER fnet_cpu_isr 00032 #endif 00033 #ifndef FNET_ISR_HANDLER_INSTALL 00034 #define FNET_ISR_HANDLER_INSTALL fnet_cpu_isr_install 00035 #endif 00036 00037 /* Defines number of the first event handler. MUST be higher than any HW-vector number. */ 00038 #define FNET_EVENT_VECTOR_NUMBER (1025) 00039 00040 /************************************************************************ 00041 * Events 00042 *************************************************************************/ 00043 typedef fnet_int32_t fnet_event_desc_t; 00044 00045 /************************************************************************ 00046 * Function Prototypes 00047 *************************************************************************/ 00048 #if defined(__cplusplus) 00049 extern "C" { 00050 #endif 00051 00052 fnet_return_t fnet_isr_vector_init( fnet_uint32_t vector_number, void (*handler_top)(fnet_uint32_t cookie), void (*handler_bottom)(fnet_uint32_t cookie), fnet_uint32_t priority, fnet_uint32_t cookie ); 00053 fnet_event_desc_t fnet_event_init(void (*event_handler)(fnet_uint32_t cookie), fnet_uint32_t cookie); 00054 void fnet_event_raise(fnet_event_desc_t event_number); 00055 void fnet_isr_vector_release(fnet_uint32_t vector_number); 00056 void fnet_isr_lock(void); 00057 void fnet_isr_unlock(void); 00058 void fnet_isr_init(void); 00059 void fnet_isr_handler(fnet_uint32_t vector_number); 00060 fnet_return_t fnet_cpu_isr_install(fnet_uint32_t vector_number, fnet_uint32_t priority); 00061 00062 #if defined(__cplusplus) 00063 } 00064 #endif 00065 00066 #endif
Generated on Tue Jul 12 2022 13:54:22 by
