Age | Commit message (Collapse) | Author |
|
Create autoheader_external for helper and move there the ODPH_*
defines from odp autoheader_external.
Signed-off-by: Jere Leppänen <jere.leppanen@nokia.com>
Reviewed-by: Matias Elo <matias.elo@nokia.com>
|
|
The config.h file has been split into three parts:
autoheader_build.h: should NOT be included by ANY source file
autoheader_external.h: can be included by any source file, including
public headers
autoheader_internal.h: can be included by any internal source file, but
NOT by public headers
autoheader_external.h and autoheader_internal.h are generated based on
matching template files (*.in) and include only ODP defines.
autoheader_build.h includes all build defines and should not be included
by any source file.
Signed-off-by: Matias Elo <matias.elo@nokia.com>
Reviewed-by: Petri Savolainen <petri.savolainen@nokia.com>
|
|
Signed-off-by: Matias Elo <matias.elo@nokia.com>
Reviewed-by: Petri Savolainen <petri.savolainen@nokia.com>
|
|
Previously, config.h header was not included in install dir. This caused a
compilation failure when an application tried to include ODP helper
headers.
config.h has been moved to include/odp subdirectory to avoid naming
conflicts and unnecessary includes have been removed.
Signed-off-by: Matias Elo <matias.elo@nokia.com>
Reviewed-by: Petri Savolainen <petri.savolainen@nokia.com>
Reported-by: Mikko Parpala <mikko.parpala@nokia.com>
|
|
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
Reviewed-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
|
|
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
|
|
pkg-config files were moved, but I forgot to update .gitignore files.
Update them now.
Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
It does not make sense to have config.h just in helper tree. It should
be also used by the rest of the code.
Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
Signed-off-by: Brian Brooks <brian.brooks@arm.com>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
Use of a script in the autotools breaks github CI
Define the API version in configure and reuse it in the code
Benefits:
removes dependence on scripts to build
removes scripts and the make file from odp/scripts
removes generated .scmversion file
places api versioning right next to lib versioning in the configure.ac
allows github to auto build odp repos
Signed-off-by: Mike Holmes <mike.holmes@linaro.org>
Reviewed-by: Brian Brooks <brian.brooks@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
Add script to quickly build odp with dpdk pktio support.
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
Reviewed-by: Mike Holmes <mike.holmes@linaro.org>
|
|
Add generated by builddeb script .deb and .tar.gz files.
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
|
|
Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
Reviewed-and-tested-by: Mike Holmes <mike.holmes@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
Convert libraries used under test/validation to libtool convenience
libraries (.la files) rather than regular static libraries. These are used
elsewhere in the tree and allow for dependencies to be tracked
automatically.
Change-Id: I1dba179ce9151d277bd311f4c5430f85ecfe4b4f
Signed-off-by: Stuart Haslam <stuart.haslam@linaro.org>
Reviewed-by: Christophe Milard <christophe.milard@linaro.org>
|
|
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
Reviewed-by: Mike Holmes <mike.holmes@linaro.org>
|
|
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
Reviewed-by: Mike Holmes <mike.holmes@linaro.org>
|
|
Remove the need to build helper source files into the linux-generic
library by converting helpers to be their own library.
This removes the need for all other platforms to also build in the
helpers which are optional just to run the tests.
Signed-off-by: Mike Holmes <mike.holmes@linaro.org>
Reviewed-by: Christophe Milard <christophe.milard@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
gitignore when using ctags generated by make
Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
Reviewed-and-tested-by: Mike Holmes <mike.holmes@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
Reviewed-and-Tested-by: Mike Holmes <mike.holmes@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
When generating coverage info gcov creates .gcda and .gcno files
alongside each object file.
Signed-off-by: Stuart Haslam <stuart.haslam@arm.com>
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
Signed-off-by: Mike Holmes <mike.holmes@linaro.org>
Reviewed-by: Taras Kondratiuk <taras.kondratiuk@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
Signed-off-by: Mike Holmes <mike.holmes@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
This patch adds a suite for sync and async inplace mode of crypto APIs.
Correctness of crypto operation output is verified with known test
vectors. Various options and functionalities like use session IV
or operation IV for ciphering are exercised for both modes.
For async mode there are options to use input packet buffer or a
separate buffer as the completion event and to set and retrieve the
context associated with an operation from the completion event.
Signed-off-by: Alexandru Badicioiu <alexandru.badicioiu@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
Signed-off-by: Mike Holmes <mike.holmes@linaro.org>
Reviewed-by: Anders Roxell <anders.roxell@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
Reviewed-and-Tested-by: Mike Holmes <mike.holmes@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
Reviewed-by: Mike Holmes <mike.holmes@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
Reviewed-by: Ciprian Barbu <ciprian.barbu@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
Signed-off-by: Mike Holmes <mike.holmes@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
Signed-off-by: Robbie King <robking@cisco.com>
Tested-by: Alexandru Badicioiu <alexandru.badicioiu@linaro.org>
Reviewed-and Tested-by: Taras Kondratiuk <taras.kondratiuk@linaro.org>
Reviewed-by: Bala Manoharan <bala.manoharan@linaro.org>
Reviewed-by: Anders Roxell <anders.roxell@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
Acked-by: Petri Savolainen <petri.savolainen@linaro.org>
Reviewed-by: Stuart Haslam <stuart.haslam@arm.com>
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
Signed-off-by: Mike Holmes <mike.holmes@linaro.org>
Reviewed-by: Anders Roxell <anders.roxell@linaro.org>
|
|
The expectations of example code vs testing code is significantly
different. This difference is more easily managed if tests and
examples have their own root directory especially as the number
of validation tests is increased for the ODP 1.0 release.
For example test cases may be significantly more complex than
a good example might be expected to be. In addition tests are
not expected to have Doxygen documentation and tests will
not be expected to be coherent, they will test isolated APIs
and to do so may perform illegal combinations of calls making them
poor examples.
Signed-off-by: Mike Holmes <mike.holmes@linaro.org>
Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
Reviewed-and-Tested-by: Ciprian Barbu <ciprian.barbu@linaro.org>
|
|
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Reviewed-by: Anders Roxell <anders.roxell@linaro.org>
|
|
All odp applications have odp_ prefix. Adding the same prefix to l2fwd.
Reviewed-by: Anders Roxell <anders.roxell@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
|
|
odp_generator can send/receive udp packets, or works like ping.
Work mode:
1.send udp packets
odp_generator -I eth0 --srcmac fe:0f:97:c9:e0:44 --dstmac 32:cb:9b:27:2f:1a --srcip 192.168.0.1 --dstip 192.168.0.2 -m u
2.receive udp packets
odp_generator -I eth0 -m r
3.work likes ping
odp_generator -I eth0 --srcmac fe:0f:97:c9:e0:44 --dstmac 32:cb:9b:27:2f:1a --srcip 192.168.0.1 --dstip 192.168.0.2 -m p
Mandatory OPTIONS:
-I, --interface Eth interfaces (comma-separated, no spaces)
-a, --srcmac src mac address
-b, --dstmac dst mac address
-c, --srcip src ip address
-d, --dstip dst ip address
-s, --packetsize payload length of the packets
-m, --mode work mode: send udp(u), receive(r), send icmp(p)
-n, --count the number of packets to be send
-t, --timeout only for ping mode, wait ICMP reply timeout seconds
-i, --interval wait interval ms between sending each packet
default is 1000ms. 0 for flood mode
Signed-off-by: Weilong Chen <weilong.chen@linaro.org>
|
|
Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
|
|
This reverts commit 1aa4620f789d572a08441ce85ad4e39420d76fff.
ODP libpcap support will be in separate git tree:
git://git.linaro.org/lng/odp-apps.git
as well as others 3-rh party applications.
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
Conflicts:
.gitignore
|
|
Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
|
|
Reworked the netmap pktio example to support any number of threads of execution
and multiple interfaces to work on. The threads are no longer associated with
pktios because of using odp_schedule that gets packets from any pktio.
General cleanup changes were made, setting hardcoded values to defines, renaming
some variables, modifying some comments.
Signed-off-by: Ciprian Barbu <ciprian.barbu@linaro.org>
|
|
Signed-off-by: Vincent Hsu <vincent.hsu@linaro.org>
|
|
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
|
|
Signed-off-by: Ciprian Barbu <ciprian.barbu@linaro.org>
|
|
Signed-off-by: Carl Wallen <carl.wallen@linaro.org>
|
|
ODP queues can now be used to directly send and receive packets in the
application.
Currently only support using one default queue for receive and one default queue
for transmit for each packet IO resource.
The application needs to create the input queue and associate the queue with
the packet IO resource (handle) by calling:
input_queue = odp_queue_create(name, ODP_QUEUE_TYPE_PKTIN, param);
odp_pktio_inq_setdef(pktio_handle, input_queue);
Receive packets by calling:
/* Use schedule to get buf from any input queue */
buf = odp_schedule_poll();
OR
/* Dequeue from a specific input queue */
buf = odp_queue_deq(input_queue);
Each packet IO resource is by default associated with one default output queue
so the application only needs to query which queue to use to send packets:
output_queue = odp_pktio_outq_getdef(pktio_handle);
Transmit packets by calling:
odp_queue_enq(output_queue, buf);
An example is included in odp/test/packet/odp_example_packet.c:
$> sudo ./packet/odp_packet -ieth2,eth5,eth6,eth7 -m 1
...
... print number of packets received by each application thread
...
Help:
Usage: odp_packet OPTIONS
E.g. odp_packet -i eth1,eth2,eth3 -m 0
OpenDataPlane example application.
Mandatory OPTIONS:
-i, --interface Eth interfaces (comma-separated, no spaces)
-m, --mode 0: Burst send&receive packets (no queues)
1: Send&receive packets through ODP queues.
Optional OPTIONS
-h, --help Display help and exit.
Signed-off-by: Carl Wallen <carl.wallen@linaro.org>
|
|
Added new ODP APIs for setting up basic packet IO:
odp_pktio_t odp_pktio_open(char *dev, odp_buffer_pool_t pool)
int odp_pktio_close(odp_pktio_t id)
int odp_pktio_recv(odp_pktio_t id, odp_packet_t pkt_table[], unsigned len)
int odp_pktio_send(odp_pktio_t id, odp_packet_t pkt_table[], unsigned len)
An example using the API is located in odp/test/packet/odp_example_pktio.c
Compile with the provided packet/Makefile and run with root privileges:
$> sudo ./odp_packet -i eth0,eth1,eth2,eth3
The underlying implementation of ODP packet IO for linux-generic is based on
linux raw packet sockets. The user can choose the socket 'mode' from one
of the following (odp_packet_socket.c):
#define ODP_PACKET_SOCKET_BASIC 0 /** use recv()/send() */
#define ODP_PACKET_SOCKET_MMSG 1 /** use recvmmsg()/sendmmsg() */
#define ODP_PACKET_SOCKET_MMAP 2 /** use PACKET_MMAP */
/** Choose one from the alternatives above */
#define ODP_PACKET_SOCKET_MODE (ODP_PACKET_SOCKET_MMAP)
Signed-off-by: Carl Wallen <carl.wallen@linaro.org>
|