/* * Copyright 2024 Tenstorrent AI ULC * * SPDX-License-Identifier: Apache-2.0 */ #ifndef ZEPHYR_INCLUDE_ZEPHYR_POSIX_AIO_H_ #define ZEPHYR_INCLUDE_ZEPHYR_POSIX_AIO_H_ #include #include #include #ifdef __cplusplus extern "C" { #endif struct aiocb { int aio_fildes; off_t aio_offset; volatile void *aio_buf; size_t aio_nbytes; int aio_reqprio; struct sigevent aio_sigevent; int aio_lio_opcode; }; #if _POSIX_C_SOURCE >= 200112L int aio_cancel(int fildes, struct aiocb *aiocbp); int aio_error(const struct aiocb *aiocbp); int aio_fsync(int filedes, struct aiocb *aiocbp); int aio_read(struct aiocb *aiocbp); ssize_t aio_return(struct aiocb *aiocbp); int aio_suspend(const struct aiocb *const list[], int nent, const struct timespec *timeout); int aio_write(struct aiocb *aiocbp); int lio_listio(int mode, struct aiocb *const ZRESTRICT list[], int nent, struct sigevent *ZRESTRICT sig); #endif /* _POSIX_C_SOURCE >= 200112L */ #ifdef __cplusplus } #endif #endif /* ZEPHYR_INCLUDE_ZEPHYR_POSIX_AIO_H_ */