return ret;
}
-struct rte_event_timer_adapter * __rte_experimental
+struct rte_event_timer_adapter *
rte_event_timer_adapter_create(const struct rte_event_timer_adapter_conf *conf)
{
return rte_event_timer_adapter_create_ext(conf, default_port_conf_cb,
NULL);
}
-struct rte_event_timer_adapter * __rte_experimental
+struct rte_event_timer_adapter *
rte_event_timer_adapter_create_ext(
const struct rte_event_timer_adapter_conf *conf,
rte_event_timer_adapter_port_conf_cb_t conf_cb,
return NULL;
}
-int __rte_experimental
+int
rte_event_timer_adapter_get_info(const struct rte_event_timer_adapter *adapter,
struct rte_event_timer_adapter_info *adapter_info)
{
return 0;
}
-int __rte_experimental
+int
rte_event_timer_adapter_start(const struct rte_event_timer_adapter *adapter)
{
int ret;
ADAPTER_VALID_OR_ERR_RET(adapter, -EINVAL);
FUNC_PTR_OR_ERR_RET(adapter->ops->start, -EINVAL);
+ if (adapter->data->started) {
+ EVTIM_LOG_ERR("event timer adapter %"PRIu8" already started",
+ adapter->data->id);
+ return -EALREADY;
+ }
+
ret = adapter->ops->start(adapter);
if (ret < 0)
return ret;
return 0;
}
-int __rte_experimental
+int
rte_event_timer_adapter_stop(const struct rte_event_timer_adapter *adapter)
{
int ret;
return 0;
}
-struct rte_event_timer_adapter * __rte_experimental
+struct rte_event_timer_adapter *
rte_event_timer_adapter_lookup(uint16_t adapter_id)
{
char name[DATA_MZ_NAME_MAX_LEN];
return adapter;
}
-int __rte_experimental
+int
rte_event_timer_adapter_free(struct rte_event_timer_adapter *adapter)
{
int ret;
return 0;
}
-int __rte_experimental
+int
rte_event_timer_adapter_service_id_get(struct rte_event_timer_adapter *adapter,
uint32_t *service_id)
{
return adapter->data->service_inited ? 0 : -ESRCH;
}
-int __rte_experimental
+int
rte_event_timer_adapter_stats_get(struct rte_event_timer_adapter *adapter,
struct rte_event_timer_adapter_stats *stats)
{
return adapter->ops->stats_get(adapter, stats);
}
-int __rte_experimental
+int
rte_event_timer_adapter_stats_reset(struct rte_event_timer_adapter *adapter)
{
ADAPTER_VALID_OR_ERR_RET(adapter, -EINVAL);
.cancel_burst = sw_event_timer_cancel_burst,
};
-RTE_INIT(event_timer_adapter_init_log);
-static void
-event_timer_adapter_init_log(void)
+RTE_INIT(event_timer_adapter_init_log)
{
evtim_logtype = rte_log_register("lib.eventdev.adapter.timer");
if (evtim_logtype >= 0)