Skip to content

Tags: sunilkori/odp

Tags

v1.35.0.0

Toggle v1.35.0.0's commit message
api: increment ODP API version to 1.35.0.0

Increment API version number to reflect the following changes:

Backward incompatible:
- sched: deprecate scheduling priority level defines
  ODP_SCHED_PRIO_HIGHEST, ODP_SCHED_PRIO_NORMAL, ODP_SCHED_PRIO_LOWEST, and
  ODP_SCHED_PRIO_DEFAULT
- tm: change meaning of odp_tm_enq_multi() return value of zero from
  failure code to part of normal operation

Backward compatible:
- packet: remove references to deprecated odp_pktin_ts_res() and
  odp_pktin_ts_from_ns() functions
- pktio: add ODP_PKTOUT_MAX_QUEUES define for the maximum number of packet
  output queues
- pktio: add new packet output queue size configuration option
  odp_pktout_queue_param_t.queue_size and matching capabilities
  odp_pktio_capability_t.min_output_queue_size and
  odp_pktio_capability_t.max_output_queue_size
- pktio: clarify odp_pktio_config() usage in the interface setup sequence
- pktio: allow large send offload (LSO) usage with traffic manager
- timer: clarify timer tick properties
- timer: add new timer pool parameter odp_timer_pool_param_t.exp_mode
- timer: add new odp_timer_start() and odp_timer_restart() functions
- timer: add support for periodic timers
- tm: add odp_tm_enq_multi_lso() function

Removed deprecated APIs:
- cls: ODP_PMR_INVAL define
- crypto: old style cipher algorithm enumerations ODP_CIPHER_ALG_AES128_CBC
  and ODP_CIPHER_ALG_AES128_GCM
- crypto: old style authentication algorithm enumerations
  ODP_AUTH_ALG_MD5_96, ODP_AUTH_ALG_SHA256_128, and ODP_AUTH_ALG_AES128_GCM
- crypto: fields aes128_cbc and aes128_gcm from odp_crypto_cipher_algos_t
- crypto: fields md5_96, sha256_128, and aes128_gcm from
  odp_crypto_auth_algos_t
- crypto: data range specifier odp_crypto_data_range_t
- crypto: iv field from odp_crypto_session_param_t
- crypto: odp_crypto_session_params_t type
- crypto: override_iv_ptr field from odp_crypto_op_param_t
- crypto: override_iv_ptr field from odp_crypto_packet_op_param_t
- crypto: odp_crypto_op_params_t type
- crypto: odp_crypto_compl_status_t type
- pktio: parser layer defines (ODP_PKTIO_PARSER_LAYER_*)
- pktio: odp_pktio_capability_t.loop_supported capability
- pktio: odp_pktio_mtu() function
- queue: scheduled queue capabilities from odp_queue_capability_t
- misc: odp.h header file replaced by odp_api.h

Signed-off-by: Matias Elo <matias.elo@nokia.com>
Reviewed-by: Petri Savolainen <petri.savolainen@nokia.com>

v1.34.0.0

Toggle v1.34.0.0's commit message
api: increment ODP API version to 1.34.0.0

Increment API version number to reflect the following changes:

Backward incompatible:
- crypto: specify that the hash result field is not cleared in hash
  generation in encode sessions
- crypto: specify that the hash result field is left to an undefined value
  after verification
- crypto: add a new session parameter
  odp_crypto_session_param_t.hash_result_in_auth_range to indicate if the
  hash result location may overlap the authenticated range
- crypto: define new fields for cipher and auth IV lengths in the session
  parameter structure odp_crypto_session_param_t. Deprecate the old fields
  for cipher and auth IV lengths.
- crypto: deprecate the mechanism of configuring initialization vectors in
  sessions since reusing the same IV with the same key is almost always
  wrong. Require that IV is provided for each packet in the operation
  parameters.
- tm: add capabilities to odp_tm_level_capabilities_t for platforms to
  express shaper rate and burst min and max limits
- tm: remove support for min and max shaper rate via platform defined
  macros ODP_TM_MIN_SHAPER_BW and ODP_TM_MAX_SHAPER_BW

Backward compatible:
- crypto: clarify that in case of AEAD algorithms the
  odp_crypto_op_param_t.auth_range parameter is not used, except with
  AES-GMAC.
- crypto: clarify ODP_AUTH_ALG_AES_GMAC API text to not sound as if ODP did
  not use AAD as defined in the GMAC algorithm specification
- crypto: make the names of session creation errors
  (odp_crypto_ses_create_err_t) a bit shorter but retain the old names for
  backward compatibility
- crypto: add crypto session creation error codes
  (odp_crypto_ses_create_err_t) for cases where the requested combination
  of algorithms, order of algorithms or other combination of creation
  parameters is not supported.
- random: explicitly state that the same series of odp_random_test_data()
  calls is required to generate the same data
- tm: clarify that peak rate and peak burst are ignored when dual rate is
  set to false in odp_tm_shaper_params_t, indicating that the single rate
  is commit rate.
- tm: define the default values for many parameters to be set by various
  init functions

ABI:
- Removed mips64 architecture support. MIPS devices may still use ODP by
  utilizing the generic default architecture.

Signed-off-by: Matias Elo <matias.elo@nokia.com>
Reviewed-by: Janne Peltonen <janne.peltonen@nokia.com>
Reviewed-by: Jere Leppänen <jere.leppanen@nokia.com>
Reviewed-by: Petri Savolainen <petri.savolainen@nokia.com>

v1.33.0.0

Toggle v1.33.0.0's commit message
api: increment ODP API version to 1.33.0.0

Increment API version number to reflect the following changes:

Backward incompatible:
- shm: added a bit mask capability odp_shm_capability_t.flags for ODP_SHM_*
  flags
- timer: added initialization function odp_timer_pool_param_init() for
  timer pool parameters. Application must use it to initialize parameters
  to their default values.

Backward compatible:
- classifier: added missing default values for
  odp_cls_cos_param_t.num_queue, odp_cls_cos_param_t.red.enable,
  odp_cls_cos_param_t.bp.enable, and odp_pmr_param_t.range_term
- crypto: clarified that odp_crypto_session_create() parameters, including
  the key and IV data, can be freed after session creation.
- dma: added new DMA module which enables applications to offload memory
  transfers (copies) to DMA hardware. See include/odp/api/spec/dma.h for
  more information.
- ipsec: added possibility to request completed packets as packet vector
  events instead of packet events
- ipsec: clarified that odp_ipsec_sa_create() parameters, including the
  various memory buffers pointed to by the parameters, can be freed after
  SA creation.
- packet_io: clarified odp_pktin_vector_config_t.enable documentation to
  state that when packet vectors are enabled, packets may be delivered both
  as packet vector events and packet events. Packet vectors are disabled by
  default.
- packet_io: clarified that the type of input queues is deduced from the
  pktio input mode in odp_pktin_queue_config(), and that the default queue
  type value and the queue type value passed in
  odp_pktin_queue_param_t.queue_param are ignored.
- pool: added new pool type for DMA completion event pools. These pools are
  created with odp_dma_pool_create() and pool capability is included in
  odp_dma_capability_t. Otherwise, pool APIs are used normally for these
  pools.
- shm: added ODP_SHM_NO_HP flag which can be used to prevent the
  implementation from allocating the shared memory block from huge pages
- std: added DMA flag to odp_feature_t

Signed-off-by: Matias Elo <matias.elo@nokia.com>
Reviewed-by: Petri Savolainen <petri.savolainen@nokia.com>

v1.32.1.0

Toggle v1.32.1.0's commit message
api: increment ODP API version to 1.32.1.0

Increment API version number to reflect the following changes:

Backward compatible:
- init: added odp_instance() function for reading the current ODP instance
  handle
- ipsec: clarified bit field unions' 'all' member intended usage
- packet: clarified odp_proto_chksums_t.all_chksum intended usage
- packet_io: clarified odp_pktin_hash_proto_t.all_bits intended usage
- pool: added odp_pool_print_all() function for printing implementation
  defined information about all created pools to the ODP log
- pool: clarified odp_pool_param_t.pkt.seg_len documentation
- stash: added 32-bit only odp_stash_put_u32() and odp_stash_get_u32()
  functions
- stash: added 64-bit only odp_stash_put_u64() and odp_stash_get_u64()
  functions
- stash: added pointer only odp_stash_put_ptr() and odp_stash_get_ptr()
  functions

Helper library (1.3.0):

Backward incompatible:
- cli: removed unused instance parameter from odph_cli_init()
- deprecation: added a framework to enable controlled API deprecation
- linux: deprecated odph_odpthreads_create() function.
  Use odph_thread_create() instead.
- linux: deprecated odph_odpthreads_join() function. Use odph_thread_join()
  instead.
- linux: deprecated unused odph_thread_param_t.instance struct member
- linux: deprecated odph_odpthread_t and odph_odpthread_params_t types

Signed-off-by: Matias Elo <matias.elo@nokia.com>
Reviewed-by: Petri Savolainen <petri.savolainen@nokia.com>

v1.32.0.0

Toggle v1.32.0.0's commit message
api: increment ODP API version to 1.32.0.0

Increment API version number to reflect the following changes:

Backward incompatible:
* ipsec: added destination queue capabilities
  odp_ipsec_capability_t.queue_type_sched and
  odp_ipsec_capability_t.queue_type_plain
* ipsec: modified specification to not promise the original packet back
  after all error cases

Backward compatible:
- ipsec: added original ESP/AH packet length into IPsec packet result
  (odp_ipsec_packet_result_t.orig_ip_len)
- packet: added odp_packet_reass_info() function for reading completed
  reassembly details
- std: moved all contents of support and feature modules into ODP Std
  module

Helper library (1.2.0):

Backward incompatible:
- cli: replaced odph_cli_start() function with odph_cli_run(), which
  doesn't automatically create a separate thread for running the CLI
  server.
- linux: deprecated odph_odpthread_t and odph_odpthread_params_t types
- linux: added odph_thread_param_init() function for initializing thread
  parameters
- linux: added odph_thread_common_param_init() function for initializing
  thread common parameters

Backward compatible:
- cli: added odph_cli_param_t.hostname parameter for providing a custom CLI
  prompt hostname
- cli: added odph_cli_log_va() function for user defined CLI commands
- linux: added odph_thread_param_t.stack_size parameter for configuring
  minimum thread stack size
- linux: added odph_thread_common_param_t.sync_timeout parameter for
  configuring synchronized thread creation timeout

Signed-off-by: Matias Elo <matias.elo@nokia.com>
Reviewed-by: Petri Savolainen <petri.savolainen@nokia.com>

v1.31.0.0

Toggle v1.31.0.0's commit message
api: increment ODP API version to 1.31.0.0

Increment API version number to reflect the following changes:

Backward incompatible:
- traffic manager: added new feature capabilities and an egress specific
  capability function odp_tm_egress_capabilities()
- traffic manager: deprecated odp_tm_capabilities() function which is
  replaced by odp_tm_egress_capabilities()
- traffic manager: added maximum number of schedulers per TM node
  capability
- traffic manager: added support for non-global packet priority mode

Backward compatible:
- classifier: added odp_cls_queue_stats() for reading queue specific
  statistics counters
- ipsec: added ICV length into SA configuration parameters
- packet: added odp_packet_disassemble(), odp_packet_reassemble(), and
  other new functions for packets allocated from external memory pools
- packet: added per packet protocol statistics functions
- packet_io: added packet output configuration option for enabling packet
  protocol statistics updates
- pool: added new concept of external memory pools, which are populated
  with application provided memory
- pool: added new odp_pool_type_t enumeration
- proto_stats: added new generic protocol statistics framework
- traffic manager: increased scheduling weight parameter size (uint8_t to
  uint32_t)
- traffic manager: added odp_tm_queue_stats() for reading queue specific
  statistics counters
- traffic manager: added odp_tm_enq_multi() function for enqueueing
  multiple packets at a time
- traffic manager: added odp_tm_queue_params_t.ordered_enqueue option which
  can be used to control if ordering is enabled

Helper library:
- ipsec: added odph_ipsec_auth_icv_len_default() function for returning the
  default ICV length of an algorithm
- ipsec: added support for AES-CMAC into odph_ipsec_alg_check()
- ipsec: added default ICV length check into odph_ipsec_alg_check()

Signed-off-by: Matias Elo <matias.elo@nokia.com>
Reviewed-by: Janne Peltonen <janne.peltonen@nokia.com>
Reviewed-by: Jerin Jacob <jerinj@marvell.com>

v1.30.1.0

Toggle v1.30.1.0's commit message
api: increment ODP API version to 1.30.1.0

Increment API version number to reflect the following changes:

Backward compatible:
- packet_io: added odp_pktio_stats_capability_t struct to
  odp_pktio_capability_t to inform about supported statistics counters
- packet_io: added new statistics counters and related capabilities for
  received/transmitted multicast and broadcast Ethernet packets
  (in_mcast_pkts, in_bcast_pkts, out_mcast_pkts, out_bcast_pkts)
- packet_io: added new pktio input/output queue specific statistics
  counters and related functions and capabilities
- packet_io: added new functions for reading and printing ODP
  implementation specific custom packet IO statistics counters:
  odp_pktio_extra_stat_info() , odp_pktio_extra_stats(),
  odp_pktio_extra_stats_print()
- packet_io: specified that loopback mode is disabled by default
- packet_io: modified odp_pktio_stats_t.in_octets/out_octets definitions to
  not include CRC (4 bytes)
- ipsec: specified default values for reassembly enables
- scheduler: added odp_schedule_print() function for printing debug
  information about scheduler status into the ODP log
- std_types: added odp_fract_u64_t type which can be used to define
  fractional numbers accurately
- std_types: added odp_fract_u64_to_dbl() function for converting
  odp_fract_u64_t fractional numbers into doubles
- timer: added timer tick info as part of odp_timer_pool_info_t. This
  enables timer implementation to specify tick frequency and duration very
  accurately.

Signed-off-by: Matias Elo <matias.elo@nokia.com>
Reviewed-by: Petri Savolainen <petri.savolainen@nokia.com>

v1.30.0.0

Toggle v1.30.0.0's commit message
api: increment ODP API version to 1.30.0.0

Increment API version number to reflect the following changes:

Backward compatible:
- traffic manager: add option to enable packet mode shaper (packets per
  second as opposed to bits per second)
- packet io: specify explicitly that an application may enqueue to packet
  input side event queues, and cannot dequeue from output side event queues
- ipsec: include success bytes in stats (odp_ipsec_stats_t.success_bytes)
- time: added new time stamp read functions which read time stamp value
  more strictly in the program order: odp_time_local_strict(),
  odp_time_local_strict_ns(), odp_time_global_strict(),
  odp_time_global_strict_ns()
- timer: added new default clock source enumeration ODP_CLOCK_DEFAULT
  (=ODP_CLOCK_SRC_0) and support for multiple clock sources
  (ODP_CLOCK_SRC_1, ODP_CLOCK_SRC_2...). The old ODP_CLOCK_CPU and
  ODP_CLOCK_EXT enumerations will be deprecated in the future.
- timer: rename set operation return codes (odp_timer_set_t) to better
  document expiration time position to current time:
    ODP_TIMER_TOOEARLY -> ODP_TIMER_TOO_NEAR
    ODP_TIMER_TOOLATE  -> ODP_TIMER_TOO_FAR
- timer: rename set operation failure code (odp_timer_set_t) to cover all
  error cases: ODP_TIMER_NOEVENT -> ODP_TIMER_FAIL

Backward incompatible:
- traffic manager: add new mandatory odp_tm_start() and odp_tm_stop() calls
  for starting and stopping traffic manager system
- traffic manager: add capabilities (odp_tm_capabilities_t) for supported
  dynamic configuration updates
- traffic manager: deprecate shaper commit information rate bps
  (odp_tm_shaper_params_t.commit_bps) and peak information rate bps
  (odp_tm_shaper_params_t.peak_bps) fields.
  odp_tm_shaper_params_t.commit_rate and odp_tm_shaper_params_t.peak_rate
  fields should be used instead.

Helper library:
- cli: added new mandatory odph_cli_init() and odph_cli_term() functions
  for initializing and terminating the helper
- cli: added odph_cli_register_command() function for registering user
  defined commands

Signed-off-by: Matias Elo <matias.elo@nokia.com>
Reviewed-by: Petri Savolainen <petri.savolainen@nokia.com>

v1.29.0.0

Toggle v1.29.0.0's commit message
api: increment ODP API version to 1.29.0.0

Increment API version number to reflect the following changes:

Backward incompatible:
- Modified packet IO statistics counters (odp_pktio_stats_t) definitions
- Deprecated packet IO statistics field odp_pktio_stats_t.in_unknown_protos

Backward compatible:
- New APIs for inline IP reassembly offload for packet input and IPsec
- New odp_log_thread_fn_set() function for setting a thread specific log
  function
- New packet IO statistics counters
  odp_pktio_stats_t.in_packets/out_packets

Signed-off-by: Matias Elo <matias.elo@nokia.com>
Reviewed-by: Petri Savolainen <petri.savolainen@nokia.com>

v1.28.0.0

Toggle v1.28.0.0's commit message
api: increment ODP API version to 1.28.0

Increment API version number to reflect the following changes:

Backward-incompatible:
- New crypto capabilities for defining if a queue type (scheduled/plain)
  can be used as a crypto completion event destination

Backward-compatible:
- New packet TX completion event type and related functions
- New packet APIs for requesting packet TX completion events
- New packet APIS for requesting packet TX drop based on packet age
- New odp_cls_print_all() function for printing implementation specific
  debug information about all classifier rules
- New enumerations for ARMv8.7-A, ARMv9.0-A, ARMv9.1-A, and ARMv9.2-A ISA
  versions

Signed-off-by: Matias Elo <matias.elo@nokia.com>
Reviewed-by: Petri Savolainen <petri.savolainen@nokia.com>