Lines Matching +full:tx +full:- +full:data +full:- +full:mode

4  * SPDX-License-Identifier: Apache-2.0
63 * True if lower 32-bit of Provisioned ID is random.
66 * the lower 32-bit is random value.
83 * Bit mask of supported HDR modes (0 - 7).
85 * This can be used to enable or disable HDR mode
141 * reception of a byte of data in an ongoing write operation to the
153 * @return 0 if more data can be accepted, or a negative error
174 * @param val Pointer to storage for the first byte of data to return
177 * @return 0 if more data can be requested, or a negative error code.
186 * provide additional data for a read operation from the address
197 * @param val Pointer to storage for the next byte of data to return
200 * @return 0 if data has been provided, or a negative error code.
209 * reception of data from the source buffer to the destination
215 * @param ptr pointer to the buffer that contains the data to be transferred.
217 * @param len the length of the data to be transferred.
224 * provide additional data by buffer for a read operation from the address
235 * @param ptr pointer to storage for the address of data buffer to return
238 * @param len pointer to storage for the length of the data to be transferred
241 * @param hdr_mode HDR mode
243 * @return 0 if data has been provided, or a negative error code.
253 * provide additional data for a read operation from the address
272 * @brief Writes to the target's TX FIFO
274 * Write to the TX FIFO @p dev I3C bus driver using the provided
275 * buffer and length. Some I3C targets will NACK read requests until data
276 * is written to the TX FIFO. This function will write as much as it can
279 * data. Negative returns indicate error.
282 * and target mode. This is however not guaranteed.
285 * driver configured in target mode.
288 * @param hdr_mode HDR mode see @c I3C_MSG_HDR_MODE*
291 * @retval -ENOTSUP Not in Target Mode or HDR Mode not supported
292 * @retval -ENOSPC No space in Tx FIFO
293 * @retval -ENOSYS If target mode is not implemented
299 (const struct i3c_driver_api *)dev->api; in i3c_target_tx_write()
301 if (api->target_tx_write == NULL) { in i3c_target_tx_write()
302 return -ENOSYS; in i3c_target_tx_write()
305 return api->target_tx_write(dev, buf, len, hdr_mode); in i3c_target_tx_write()
311 * Enable I3C target mode for the @p dev I3C bus driver using the provided
315 * to the target mode will be passed onto I3C target device driver via a set of
319 * and target mode. This is however not guaranteed.
322 * driver configured in target mode.
327 * @retval -EINVAL If parameters are invalid
328 * @retval -EIO General input / output error.
329 * @retval -ENOSYS If target mode is not implemented
335 (const struct i3c_driver_api *)dev->api; in i3c_target_register()
337 if (api->target_register == NULL) { in i3c_target_register()
338 return -ENOSYS; in i3c_target_register()
341 return api->target_register(dev, cfg); in i3c_target_register()
347 * This routine disables I3C target mode for the @p dev I3C bus driver using
352 * driver configured in target mode.
357 * @retval -EINVAL If parameters are invalid
358 * @retval -ENOSYS If target mode is not implemented
364 (const struct i3c_driver_api *)dev->api; in i3c_target_unregister()
366 if (api->target_unregister == NULL) { in i3c_target_unregister()
367 return -ENOSYS; in i3c_target_unregister()
370 return api->target_unregister(dev, cfg); in i3c_target_unregister()