Lines Matching +full:maximum +full:- +full:read

4  * @brief Generic low-level inter-processor mailbox communication API.
10 * SPDX-License-Identifier: Apache-2.0
37 * interrupt-safe APIS. Registration of callbacks is done via
44 * @param data Message data pointer. The correct amount of data to read out
60 * @brief Callback API to get maximum data size
68 * @brief Callback API to get the ID's maximum value
117 * event/semaphore, a high-level driver can implement that.
119 * There are constraints on how much data can be sent or the maximum value
125 * to the receiving side. The upper-level protocol dictates the amount of
126 * data read back.
129 * @param wait If nonzero, busy-wait for remote to consume the message. The
133 * event/semaphore, you can implement that in a high-level driver
136 * subset of bits in a 32-bit register to store the ID.
140 * @retval -EBUSY If the remote hasn't yet read the last data sent.
141 * @retval -EMSGSIZE If the supplied data size is unsupported by the driver.
142 * @retval -EINVAL If there was a bad parameter, such as: too-large id value.
154 (const struct ipm_driver_api *)ipmdev->api; in z_impl_ipm_send()
156 return api->send(ipmdev, wait, id, data, size); in z_impl_ipm_send()
164 * @param user_data Application-specific data pointer which will be passed
171 (const struct ipm_driver_api *)ipmdev->api; in ipm_register_callback()
173 api->register_callback(ipmdev, cb, user_data); in ipm_register_callback()
177 * @brief Return the maximum number of bytes possible in an outbound message.
184 * @return Maximum possible size of a message in bytes.
191 (const struct ipm_driver_api *)ipmdev->api; in z_impl_ipm_max_data_size_get()
193 return api->max_data_size_get(ipmdev); in z_impl_ipm_max_data_size_get()
198 * @brief Return the maximum id value possible in an outbound message.
205 * @return Maximum possible value of a message ID.
212 (const struct ipm_driver_api *)ipmdev->api; in z_impl_ipm_max_id_val_get()
214 return api->max_id_val_get(ipmdev); in z_impl_ipm_max_id_val_get()
224 * @retval -EINVAL If it isn't an inbound channel.
232 (const struct ipm_driver_api *)ipmdev->api; in z_impl_ipm_set_enabled()
234 return api->set_enabled(ipmdev, enable); in z_impl_ipm_set_enabled()
257 (const struct ipm_driver_api *)ipmdev->api; in z_impl_ipm_complete()
259 if (api->complete != NULL) { in z_impl_ipm_complete()
260 api->complete(ipmdev); in z_impl_ipm_complete()