1 /*
2  * @ : Copyright (c) 2021 Phytium Information Technology, Inc.
3  *
4  * SPDX-License-Identifier: Apache-2.0.
5  *
6  * @Date: 2021-04-07 09:53:07
7  * @LastEditTime: 2021-05-18 13:43:09
8  * @Description:  This files is for type definition
9  *
10  * @Modify History:
11  *  Ver   Who        Date         Changes
12  * ----- ------     --------    --------------------------------------
13  */
14 
15 #include "ft_types.h"
16 #include "ft_assert.h"
17 
18 /************* 全局变量 用于判断驱动是否出现断言 *****************/
19 u32 Ft_assertStatus;
20 
21 /************** 断言是否需要无限等待,1 等待,0不等待  ******************/
22 s32 Ft_assertWait = 1;
23 
24 /* 当断言发生时,将会调用此函数 */
25 static Ft_assertCallback Ft_assertCallbackRoutine = NULL;
26 
27 /************************** Function Prototypes ******************************/
Ft_assert(FT_IN char * File,s32 Line)28 void Ft_assert(FT_IN char *File, s32 Line)
29 {
30     if (Ft_assertCallbackRoutine != NULL)
31     {
32         Ft_assertCallbackRoutine(File, Line);
33     }
34 
35     while (Ft_assertWait != 0)
36     {
37     }
38 }
39 
Ft_assertSetCallBack(Ft_assertCallback Routine)40 void Ft_assertSetCallBack(Ft_assertCallback Routine)
41 {
42     Ft_assertCallbackRoutine = Routine;
43 }
44