aboutsummaryrefslogtreecommitdiff
path: root/include/odp/api/spec/std_types.h
diff options
context:
space:
mode:
authorPetri Savolainen <petri.savolainen@nokia.com>2021-08-27 10:52:40 +0300
committerPetri Savolainen <petri.savolainen@nokia.com>2021-09-29 17:01:02 +0300
commit17dab693309bd6beea145ecf1edbe81c289b9f4d (patch)
tree4d395b8547e18121788a899c2d03bd55de335796 /include/odp/api/spec/std_types.h
parent187d289fb05dad716647dbc7ea0834475547f388 (diff)
api: feature: move content to std_types.h
Maintain all common types and definitions in one file (std_types.h). Signed-off-by: Petri Savolainen <petri.savolainen@nokia.com> Reviewed-by: Matias Elo <matias.elo@nokia.com>
Diffstat (limited to 'include/odp/api/spec/std_types.h')
-rw-r--r--include/odp/api/spec/std_types.h37
1 files changed, 37 insertions, 0 deletions
diff --git a/include/odp/api/spec/std_types.h b/include/odp/api/spec/std_types.h
index 0a5f55bf0..41f436065 100644
--- a/include/odp/api/spec/std_types.h
+++ b/include/odp/api/spec/std_types.h
@@ -118,6 +118,43 @@ typedef enum odp_support_t {
} odp_support_t;
+/** Definition of ODP features */
+typedef union odp_feature_t {
+ /** All features */
+ uint32_t all_feat;
+
+ /** Individual feature bits */
+ struct {
+ /** Classifier APIs, e.g., odp_cls_xxx(), odp_cos_xxx() */
+ uint32_t cls:1;
+
+ /** Compression APIs, e.g., odp_comp_xxx() */
+ uint32_t compress:1;
+
+ /** Crypto APIs, e.g., odp_crypto_xxx() */
+ uint32_t crypto:1;
+
+ /** IPsec APIs, e.g., odp_ipsec_xxx() */
+ uint32_t ipsec:1;
+
+ /** Scheduler APIs, e.g., odp_schedule_xxx() */
+ uint32_t schedule:1;
+
+ /** Stash APIs, e.g., odp_stash_xxx() */
+ uint32_t stash:1;
+
+ /** Time APIs, e.g., odp_time_xxx() */
+ uint32_t time:1;
+
+ /** Timer APIs, e.g., odp_timer_xxx(), odp_timeout_xxx() */
+ uint32_t timer:1;
+
+ /** Traffic Manager APIs, e.g., odp_tm_xxx() */
+ uint32_t tm:1;
+ } feat;
+
+} odp_feature_t;
+
/**
* @}
*/