1 /*
2  * Renesas SCP/MCP Software
3  * Copyright (c) 2020-2021, Renesas Electronics Corporation. All rights
4  * reserved.
5  *
6  * SPDX-License-Identifier: BSD-3-Clause
7  */
8 
9 #ifndef MOD_RCAR_SYSTEM_H
10 #define MOD_RCAR_SYSTEM_H
11 
12 #include <fwk_id.h>
13 
14 /*!
15  * \addtogroup GroupRCARModule RCAR Product Modules
16  * @{
17  */
18 
19 /*!
20  * \defgroup GroupRCARSystem RCAR System Support
21  *
22  * @{
23  */
24 
25 /*!
26  * \brief System device configuration.
27  */
28 struct mod_rcar_system_dev_config {
29     /*! Reference to the device element within the associated driver module */
30     const fwk_id_t driver_id;
31 
32     /*! Reference to the API provided by the device driver module */
33     const fwk_id_t api_id;
34 };
35 
36 /*!
37  * \brief API indices.
38  */
39 enum mod_rcar_system_api_idx {
40     /*! API index for the driver interface of the SYSTEM POWER module */
41     MOD_RCAR_SYSTEM_API_IDX_SYSTEM_POWER_DRIVER,
42 
43     /*! Number of defined APIs */
44     MOD_RCAR_SYSTEM_API_COUNT
45 };
46 
47 /*!
48  * @cond
49  */
50 
51 void rcar_system_code_copy_to_system_ram(void);
52 extern void vConfigureTickInterrupt(void);
53 extern void _save_system(void);
54 
55 /*!
56  * \brief rcar system module interface.
57  */
58 struct mod_rcar_system_drv_api {
59     int (*resume)(void);
60 };
61 
62 /*!
63  * @endcond
64  */
65 
66 /*!
67  * @}
68  */
69 
70 /*!
71  * @}
72  */
73 
74 #endif /* MOD_RCAR_SYSTEM_H */
75