From: Barry Spinney <spin...@ezchip.com>

This commit causes the traffic_mgr to become part of the ODP linux-generic
build.

Signed-off-by: Barry Spinney <spin...@ezchip.com>
Signed-off-by: Bill Fischofer <bill.fischo...@linaro.org>
---
 platform/linux-generic/Makefile.am            | 13 ++++++++
 platform/linux-generic/include/odp_internal.h |  2 ++
 platform/linux-generic/odp_init.c             |  5 +++
 platform/linux-generic/odp_packet_flags.c     | 45 +++++++++++++++++++++++++++
 4 files changed, 65 insertions(+)

diff --git a/platform/linux-generic/Makefile.am 
b/platform/linux-generic/Makefile.am
index 85c976d..71b85d2 100644
--- a/platform/linux-generic/Makefile.am
+++ b/platform/linux-generic/Makefile.am
@@ -49,6 +49,7 @@ odpinclude_HEADERS = \
                  $(srcdir)/include/odp/ticketlock.h \
                  $(srcdir)/include/odp/time.h \
                  $(srcdir)/include/odp/timer.h \
+                 $(srcdir)/include/odp/traffic_mngr.h \
                  $(srcdir)/include/odp/version.h
 
 odpplatincludedir= $(includedir)/odp/plat
@@ -75,6 +76,7 @@ odpplatinclude_HEADERS = \
                  $(srcdir)/include/odp/plat/thrmask_types.h \
                  $(srcdir)/include/odp/plat/ticketlock_types.h \
                  $(srcdir)/include/odp/plat/timer_types.h \
+                 $(srcdir)/include/odp/plat/traffic_mngr_types.h \
                  $(srcdir)/include/odp/plat/version_types.h
 
 odpapiincludedir= $(includedir)/odp/api
@@ -116,6 +118,7 @@ odpapiinclude_HEADERS = \
                  $(top_srcdir)/include/odp/api/ticketlock.h \
                  $(top_srcdir)/include/odp/api/time.h \
                  $(top_srcdir)/include/odp/api/timer.h \
+                 $(top_srcdir)/include/odp/api/traffic_mngr.h \
                  $(top_srcdir)/include/odp/api/version.h
 
 noinst_HEADERS = \
@@ -131,16 +134,21 @@ noinst_HEADERS = \
                  ${srcdir}/include/odp_debug_internal.h \
                  ${srcdir}/include/odp_forward_typedefs_internal.h \
                  ${srcdir}/include/odp_internal.h \
+                 ${srcdir}/include/odp_name_table_internal.h \
                  ${srcdir}/include/odp_packet_internal.h \
                  ${srcdir}/include/odp_packet_io_internal.h \
                  ${srcdir}/include/odp_packet_io_queue.h \
                  ${srcdir}/include/odp_packet_netmap.h \
                  ${srcdir}/include/odp_packet_socket.h \
+                 ${srcdir}/include/odp_pkt_queue_internal.h \
                  ${srcdir}/include/odp_pool_internal.h \
                  ${srcdir}/include/odp_queue_internal.h \
                  ${srcdir}/include/odp_schedule_internal.h \
+                 ${srcdir}/include/odp_sorted_list_internal.h \
                  ${srcdir}/include/odp_spin_internal.h \
                  ${srcdir}/include/odp_timer_internal.h \
+                 ${srcdir}/include/odp_timer_wheel_internal.h \
+                 ${srcdir}/include/odp_traffic_mngr_internal.h \
                  ${srcdir}/include/odp_cpu_internal.h \
                  ${srcdir}/Makefile.inc
 
@@ -156,6 +164,7 @@ __LIB__libodp_la_SOURCES = \
                           odp_event.c \
                           odp_init.c \
                           odp_impl.c \
+                          odp_name_table.c \
                           odp_packet.c \
                           odp_packet_flags.c \
                           odp_packet_io.c \
@@ -164,12 +173,14 @@ __LIB__libodp_la_SOURCES = \
                           pktio/netmap.c \
                           pktio/socket.c \
                           pktio/socket_mmap.c \
+                          odp_pkt_queue.c \
                           odp_pool.c \
                           odp_queue.c \
                           odp_rwlock.c \
                           odp_rwlock_recursive.c \
                           odp_schedule.c \
                           odp_shared_memory.c \
+                          odp_sorted_list.c \
                           odp_spinlock.c \
                           odp_spinlock_recursive.c \
                           odp_system_info.c \
@@ -178,6 +189,8 @@ __LIB__libodp_la_SOURCES = \
                           odp_ticketlock.c \
                           odp_time.c \
                           odp_timer.c \
+                          odp_timer_wheel.c \
+                          odp_traffic_mngr.c \
                           odp_version.c \
                           odp_weak.c \
                           arch/@ARCH@/odp_cpu_cycles.c
diff --git a/platform/linux-generic/include/odp_internal.h 
b/platform/linux-generic/include/odp_internal.h
index 8a1a219..a852c5b 100644
--- a/platform/linux-generic/include/odp_internal.h
+++ b/platform/linux-generic/include/odp_internal.h
@@ -78,6 +78,8 @@ int odp_schedule_term_local(void);
 int odp_timer_init_global(void);
 int odp_timer_disarm_all(void);
 
+int odp_tm_init_global(void);
+
 void _odp_flush_caches(void);
 
 #ifdef __cplusplus
diff --git a/platform/linux-generic/odp_init.c 
b/platform/linux-generic/odp_init.c
index 48d9b20..c4de602 100644
--- a/platform/linux-generic/odp_init.c
+++ b/platform/linux-generic/odp_init.c
@@ -71,6 +71,11 @@ int odp_init_global(const odp_init_t *params,
                return -1;
        }
 
+       if (odp_tm_init_global()) {
+               ODP_ERR("ODP traffic manager init failed\n");
+               return -1;
+       }
+
        return 0;
 }
 
diff --git a/platform/linux-generic/odp_packet_flags.c 
b/platform/linux-generic/odp_packet_flags.c
index ea308f7..67318a5 100644
--- a/platform/linux-generic/odp_packet_flags.c
+++ b/platform/linux-generic/odp_packet_flags.c
@@ -123,6 +123,51 @@ int odp_packet_has_flow_hash(odp_packet_t pkt)
        return pkt_hdr->has_hash;
 }
 
+odp_packet_color_t odp_packet_color(odp_packet_t pkt)
+{
+       retflag(pkt, input_flags.color);
+}
+
+void odp_packet_color_set(odp_packet_t pkt, odp_packet_color_t color)
+{
+       odp_packet_hdr_t *pkt_hdr = odp_packet_hdr(pkt);
+
+       if (pkt_hdr->input_flags.unparsed)
+               _odp_packet_parse(pkt_hdr);
+
+       pkt_hdr->input_flags.color = color;
+}
+
+odp_bool_t odp_packet_drop_eligible(odp_packet_t pkt)
+{
+       odp_packet_hdr_t *pkt_hdr = odp_packet_hdr(pkt);
+
+       if (pkt_hdr->input_flags.unparsed)
+               _odp_packet_parse(pkt_hdr);
+
+       return !pkt_hdr->input_flags.nodrop;
+}
+
+void odp_packet_drop_eligible_set(odp_packet_t pkt, odp_bool_t drop)
+{
+       setflag(pkt, input_flags.nodrop, !drop);
+}
+
+int8_t odp_packet_shaper_len_adjust(odp_packet_t pkt)
+{
+       retflag(pkt, output_flags.shaper_len_adj);
+}
+
+void odp_packet_shaper_len_adjust_set(odp_packet_t pkt, int8_t adj)
+{
+       odp_packet_hdr_t *pkt_hdr = odp_packet_hdr(pkt);
+
+       if (pkt_hdr->input_flags.unparsed)
+               _odp_packet_parse(pkt_hdr);
+
+       pkt_hdr->output_flags.shaper_len_adj = adj;
+}
+
 /* Set Input Flags */
 
 void odp_packet_has_l2_set(odp_packet_t pkt, int val)
-- 
2.1.4

_______________________________________________
lng-odp mailing list
lng-odp@lists.linaro.org
https://lists.linaro.org/mailman/listinfo/lng-odp

Reply via email to