le_riPin_interface.h

Go to the documentation of this file.
1 /*
2  * ====================== WARNING ======================
3  *
4  * THE CONTENTS OF THIS FILE HAVE BEEN AUTO-GENERATED.
5  * DO NOT MODIFY IN ANY WAY.
6  *
7  * ====================== WARNING ======================
8  */
9 
10 /**
11  * @page c_riPin Ring Indicator Signal
12  *
13  * @ref le_riPin_interface.h "API Reference"
14  *
15  * <HR>
16  *
17  * The Ring Indicator pin is used to allow the module to wake up a host device.
18  *
19  * @section c_riPin_binding IPC interfaces binding
20  *
21  * All the functions of this API are provided by the @b modemService app.
22  *
23  * Here's a code sample binding to modem services:
24  * @verbatim
25  bindings:
26  {
27  clientExe.clientComponent.le_riPin -> modemService.le_riPin
28  }
29  @endverbatim
30  *
31  * @section c_riPin_usage Ring Indication signal
32  *
33  *
34  * The RING pin can be configured to notify a host device with different timing of pulse signals for
35  * different module activities.
36  *
37  * - le_riPin_AmIOwnerOfRingSignal() function checks whether the application core is the current
38  * owner of the Ring Indicator signal.
39  * - le_riPin_TakeRingSignal() function takes control of the Ring Indicator signal.
40  * - le_riPin_ReleaseRingSignal() function releases control of the Ring Indicator signal.
41  *
42  * - le_riPin_PulseRingSignal() function sets the ring signal high for configurable duration of time
43  * before lowering it.
44  *
45  * <HR>
46  * Copyright (C) Sierra Wireless Inc. Use of this work is subject to license.
47  */
48 /**
49  * @file le_riPin_interface.h
50  *
51  * Legato @ref c_riPin include file.
52  *
53  * Copyright (C) Sierra Wireless Inc. Use of this work is subject to license.
54  */
55 
56 #ifndef LE_RIPIN_INTERFACE_H_INCLUDE_GUARD
57 #define LE_RIPIN_INTERFACE_H_INCLUDE_GUARD
58 
59 
60 #include "legato.h"
61 
62 //--------------------------------------------------------------------------------------------------
63 /**
64  *
65  * Connect the current client thread to the service providing this API. Block until the service is
66  * available.
67  *
68  * For each thread that wants to use this API, either ConnectService or TryConnectService must be
69  * called before any other functions in this API. Normally, ConnectService is automatically called
70  * for the main thread, but not for any other thread. For details, see @ref apiFilesC_client.
71  *
72  * This function is created automatically.
73  */
74 //--------------------------------------------------------------------------------------------------
76 (
77  void
78 );
79 
80 //--------------------------------------------------------------------------------------------------
81 /**
82  *
83  * Try to connect the current client thread to the service providing this API. Return with an error
84  * if the service is not available.
85  *
86  * For each thread that wants to use this API, either ConnectService or TryConnectService must be
87  * called before any other functions in this API. Normally, ConnectService is automatically called
88  * for the main thread, but not for any other thread. For details, see @ref apiFilesC_client.
89  *
90  * This function is created automatically.
91  *
92  * @return
93  * - LE_OK if the client connected successfully to the service.
94  * - LE_UNAVAILABLE if the server is not currently offering the service to which the client is bound.
95  * - LE_NOT_PERMITTED if the client interface is not bound to any service (doesn't have a binding).
96  * - LE_COMM_ERROR if the Service Directory cannot be reached.
97  */
98 //--------------------------------------------------------------------------------------------------
100 (
101  void
102 );
103 
104 //--------------------------------------------------------------------------------------------------
105 /**
106  *
107  * Disconnect the current client thread from the service providing this API.
108  *
109  * Normally, this function doesn't need to be called. After this function is called, there's no
110  * longer a connection to the service, and the functions in this API can't be used. For details, see
111  * @ref apiFilesC_client.
112  *
113  * This function is created automatically.
114  */
115 //--------------------------------------------------------------------------------------------------
117 (
118  void
119 );
120 
121 //--------------------------------------------------------------------------------------------------
122 /**
123  * Check whether the application core is the current owner of the Ring Indicator signal.
124  *
125  * @return
126  * - LE_OK The function succeeded.
127  * - LE_FAULT The function failed.
128  * - LE_UNSUPPORTED The platform does not support this operation.
129  */
130 //--------------------------------------------------------------------------------------------------
132 (
133  bool* amIOwnerPtr
134  ///< [OUT] true when application core is the owner of the Ring Indicator signal,
135 );
136 
137 //--------------------------------------------------------------------------------------------------
138 /**
139  * Take control of the Ring Indicator signal.
140  *
141  * @return
142  * - LE_OK The function succeeded.
143  * - LE_FAULT The function failed.
144  * - LE_UNSUPPORTED The platform does not support this operation.
145  */
146 //--------------------------------------------------------------------------------------------------
148 (
149  void
150 );
151 
152 //--------------------------------------------------------------------------------------------------
153 /**
154  * Release control of the Ring Indicator signal.
155  *
156  * @return
157  * - LE_OK The function succeeded.
158  * - LE_FAULT The function failed.
159  * - LE_UNSUPPORTED The platform does not support this operation.
160  */
161 //--------------------------------------------------------------------------------------------------
163 (
164  void
165 );
166 
167 //--------------------------------------------------------------------------------------------------
168 /**
169  * Set the Ring Indicator signal to high for configurable duration of time before lowering it.
170  *
171  */
172 //--------------------------------------------------------------------------------------------------
174 (
175  uint32_t duration
176  ///< [IN] [IN] Duration in ms
177 );
178 
179 
180 #endif // LE_RIPIN_INTERFACE_H_INCLUDE_GUARD
181 
le_result_t le_riPin_AmIOwnerOfRingSignal(bool *amIOwnerPtr)
le_result_t
Definition: le_basics.h:35
void le_riPin_PulseRingSignal(uint32_t duration)
le_result_t le_riPin_TakeRingSignal(void)
void le_riPin_DisconnectService(void)
void le_riPin_ConnectService(void)
le_result_t le_riPin_ReleaseRingSignal(void)
le_result_t le_riPin_TryConnectService(void)