Mistake on this page?
Report an issue in GitHub or email us
ns_hal_init.h
1 /*
2  * Copyright (c) 2016-2018, Arm Limited and affiliates.
3  * SPDX-License-Identifier: Apache-2.0
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */
17 
18 #ifndef NS_HAL_INIT_H_
19 #define NS_HAL_INIT_H_
20 
21 #include <stddef.h>
22 #include "nsdynmemLIB.h"
23 
24 #ifdef __cplusplus
25 extern "C" {
26 #endif
27 
28 /**
29  * Initialise core Nanostack HAL components.
30  *
31  * Calls after the first do nothing. So "major" users should make sure
32  * they call this first with a "large" heap size, before anyone
33  * requests a smaller one.
34  *
35  * Parameters are as for ns_dyn_mem_init (but note that nsdynmemlib
36  * currently limits heap size to 16-bit, so be wary of passing large
37  * sizes.
38  *
39  * If heap is NULL, h_size will be allocated from the malloc() heap,
40  * else the passed-in pointer will be used.
41  */
42 void ns_hal_init(void *heap, size_t h_size, void (*passed_fptr)(heap_fail_t), mem_stat_t *info_ptr);
43 
44 #ifdef __cplusplus
45 }
46 #endif
47 
48 #endif /* NS_HAL_INIT_H_ */
Important Information for this Arm website

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies. If you are not happy with the use of these cookies, please review our Cookie Policy to learn how they can be disabled. By disabling cookies, some features of the site will not work.