Line data Source code
1 0 : /* 2 : * Copyright 2024 Tenstorrent AI ULC 3 : * 4 : * SPDX-License-Identifier: Apache-2.0 5 : */ 6 : 7 : #ifndef ZEPHYR_INCLUDE_ZEPHYR_POSIX_AIO_H_ 8 : #define ZEPHYR_INCLUDE_ZEPHYR_POSIX_AIO_H_ 9 : 10 : #include <signal.h> 11 : #include <sys/types.h> 12 : #include <time.h> 13 : 14 : #ifdef __cplusplus 15 : extern "C" { 16 : #endif 17 : 18 0 : struct aiocb { 19 0 : int aio_fildes; 20 0 : off_t aio_offset; 21 0 : volatile void *aio_buf; 22 0 : size_t aio_nbytes; 23 0 : int aio_reqprio; 24 0 : struct sigevent aio_sigevent; 25 0 : int aio_lio_opcode; 26 : }; 27 : 28 : #if _POSIX_C_SOURCE >= 200112L 29 : 30 : int aio_cancel(int fildes, struct aiocb *aiocbp); 31 : int aio_error(const struct aiocb *aiocbp); 32 : int aio_fsync(int filedes, struct aiocb *aiocbp); 33 : int aio_read(struct aiocb *aiocbp); 34 : ssize_t aio_return(struct aiocb *aiocbp); 35 : int aio_suspend(const struct aiocb *const list[], int nent, const struct timespec *timeout); 36 : int aio_write(struct aiocb *aiocbp); 37 : int lio_listio(int mode, struct aiocb *const ZRESTRICT list[], int nent, 38 : struct sigevent *ZRESTRICT sig); 39 : 40 : #endif /* _POSIX_C_SOURCE >= 200112L */ 41 : 42 : #ifdef __cplusplus 43 : } 44 : #endif 45 : 46 : #endif /* ZEPHYR_INCLUDE_ZEPHYR_POSIX_AIO_H_ */