1fefed7a2SSrikanth Yalavarthi /* SPDX-License-Identifier: BSD-3-Clause 2fefed7a2SSrikanth Yalavarthi * Copyright (c) 2022 Marvell. 3fefed7a2SSrikanth Yalavarthi */ 4fefed7a2SSrikanth Yalavarthi 5fefed7a2SSrikanth Yalavarthi #ifndef RTE_MLDEV_UTILS_H 6fefed7a2SSrikanth Yalavarthi #define RTE_MLDEV_UTILS_H 7fefed7a2SSrikanth Yalavarthi 8fefed7a2SSrikanth Yalavarthi /** 9fefed7a2SSrikanth Yalavarthi * @file 10fefed7a2SSrikanth Yalavarthi * 11fefed7a2SSrikanth Yalavarthi * ML Device PMD utility API 12fefed7a2SSrikanth Yalavarthi * 13fefed7a2SSrikanth Yalavarthi * These APIs for the use from ML drivers, user applications shouldn't use them. 14fefed7a2SSrikanth Yalavarthi */ 15fefed7a2SSrikanth Yalavarthi 16fefed7a2SSrikanth Yalavarthi #include <rte_compat.h> 17fefed7a2SSrikanth Yalavarthi #include <rte_mldev.h> 18fefed7a2SSrikanth Yalavarthi 19*719834a6SMattias Rönnblom #ifdef __cplusplus 20*719834a6SMattias Rönnblom extern "C" { 21*719834a6SMattias Rönnblom #endif 22*719834a6SMattias Rönnblom 23fefed7a2SSrikanth Yalavarthi /** 24fefed7a2SSrikanth Yalavarthi * @internal 25fefed7a2SSrikanth Yalavarthi * 26fefed7a2SSrikanth Yalavarthi * Get the size an ML IO type in bytes. 27fefed7a2SSrikanth Yalavarthi * 28fefed7a2SSrikanth Yalavarthi * @param[in] type 29fefed7a2SSrikanth Yalavarthi * Enumeration of ML IO data type. 30fefed7a2SSrikanth Yalavarthi * 31fefed7a2SSrikanth Yalavarthi * @return 32fefed7a2SSrikanth Yalavarthi * - > 0, Size of the data type in bytes. 33fefed7a2SSrikanth Yalavarthi * - < 0, Error code on failure. 34fefed7a2SSrikanth Yalavarthi */ 35fefed7a2SSrikanth Yalavarthi __rte_internal 36fefed7a2SSrikanth Yalavarthi int 37fefed7a2SSrikanth Yalavarthi rte_ml_io_type_size_get(enum rte_ml_io_type type); 38fefed7a2SSrikanth Yalavarthi 39fefed7a2SSrikanth Yalavarthi /** 40fefed7a2SSrikanth Yalavarthi * @internal 41fefed7a2SSrikanth Yalavarthi * 42fefed7a2SSrikanth Yalavarthi * Get the name of an ML IO type. 43fefed7a2SSrikanth Yalavarthi * 44fefed7a2SSrikanth Yalavarthi * @param[in] type 45fefed7a2SSrikanth Yalavarthi * Enumeration of ML IO data type. 46fefed7a2SSrikanth Yalavarthi * @param[in] str 47fefed7a2SSrikanth Yalavarthi * Address of character array. 48fefed7a2SSrikanth Yalavarthi * @param[in] len 49fefed7a2SSrikanth Yalavarthi * Length of character array. 50fefed7a2SSrikanth Yalavarthi */ 51fefed7a2SSrikanth Yalavarthi __rte_internal 52fefed7a2SSrikanth Yalavarthi void 53fefed7a2SSrikanth Yalavarthi rte_ml_io_type_to_str(enum rte_ml_io_type type, char *str, int len); 54fefed7a2SSrikanth Yalavarthi 55fefed7a2SSrikanth Yalavarthi #ifdef __cplusplus 56fefed7a2SSrikanth Yalavarthi } 57fefed7a2SSrikanth Yalavarthi #endif 58fefed7a2SSrikanth Yalavarthi 59fefed7a2SSrikanth Yalavarthi #endif /* RTE_MLDEV_UTILS_H */ 60