test suite reviews and discussions
 help / color / mirror / Atom feed
From: Haiyang Zhao <haiyangx.zhao@intel.com>
To: lijuan.tu@intel.com, dts@dpdk.org
Cc: Haiyang Zhao <haiyangx.zhao@intel.com>
Subject: [dts] [PATCH V1] doc/dts_gsg: add support_igb_uio
Date: Wed, 23 Dec 2020 15:49:21 +0800	[thread overview]
Message-ID: <20201223074921.4951-1-haiyangx.zhao@intel.com> (raw)

this doc is to guide user to enable testing DPDK with igb_uio.

Signed-off-by: Haiyang Zhao <haiyangx.zhao@intel.com>
---
 doc/dts_gsg/index.rst           |   1 +
 doc/dts_gsg/support_igb_uio.rst | 102 ++++++++++++++++++++++++++++++++
 2 files changed, 103 insertions(+)
 create mode 100644 doc/dts_gsg/support_igb_uio.rst

diff --git a/doc/dts_gsg/index.rst b/doc/dts_gsg/index.rst
index 16da30e3..0c84f466 100644
--- a/doc/dts_gsg/index.rst
+++ b/doc/dts_gsg/index.rst
@@ -48,3 +48,4 @@ Getting Started Guide
     trex
     trex_known_issue
     usage_of_create_eal_and_start_testpmd
+    support_igb_uio
diff --git a/doc/dts_gsg/support_igb_uio.rst b/doc/dts_gsg/support_igb_uio.rst
new file mode 100644
index 00000000..ca48a8f9
--- /dev/null
+++ b/doc/dts_gsg/support_igb_uio.rst
@@ -0,0 +1,102 @@
+Test DPDK based on igb_uio
+==========================
+
+The kernel module igb_uio is moved to the dpdk-kmods repository in the
+/linux/igb_uio/ directory snice DPDK 20.11 (commit: 56bb5841fd06).
+The most easy way to test DPDK in DTS based on igb_uio is to add igb_uio
+source code back to dpdk.
+
+
+Get Source Code
+---------------
+
+Get DPDK::
+
+   git clone git://dpdk.org/dpdk
+   git clone http://dpdk.org/git/dpdk
+
+Get igb_uio::
+
+   git clone http://dpdk.org/git/dpdk-kmods
+   git clone git://dpdk.org/dpdk-kmods
+
+Integrate igb_uio into DPDK
+---------------------------
+
+Assume you have cloned the dpdk and dpdk-kmods source code
+in ./dpdk and ./dpdk-kmods.
+
+#. Copy dpdk-kmods/linux/igb_uio/ to dpdk/kernel/linux/::
+
+    [root@dts linux]# cp -r ./dpdk-kmods/linux/igb_uio /root/dpdk/kernel/linux/
+    [root@dts linux]# ls ./dpdk/kernel/linux/
+    igb_uio  kni  meson.build
+
+#. enable igb_uio build in meson:
+
+*   add igb_uio in dpdk/kernel/linux/meson.build subdirs as below::
+
+     subdirs = ['kni', 'igb_uio']
+
+.. note::
+
+    igb_uio will be added into compile list when it is added in subdirs.
+
+
+*   create a file of meson.build in dpdk/kernel/linux/igb_uio/ as below::
+
+     # SPDX-License-Identifier: BSD-3-Clause
+     # Copyright(c) 2017 Intel Corporation
+
+     mkfile = custom_target('igb_uio_makefile',
+             output: 'Makefile',
+             command: ['touch', '@OUTPUT@'])
+
+     custom_target('igb_uio',
+             input: ['igb_uio.c', 'Kbuild'],
+             output: 'igb_uio.ko',
+             command: ['make', '-C', kernel_dir + '/build',
+                     'M=' + meson.current_build_dir(),
+                     'src=' + meson.current_source_dir(),
+                     'EXTRA_CFLAGS=-I' + meson.current_source_dir() +
+                             '/../../../lib/librte_eal/include',
+                     'modules'],
+             depends: mkfile,
+             install: true,
+             install_dir: kernel_dir + '/extra/dpdk',
+             build_by_default: get_option('enable_kmods'))
+
+.. note::
+
+    DPDK is using meson build, create meson.build so that igb_uio can be built.
+
+DTS configuration
+-----------------
+
+#. Pack the dpdk into dpdk.tar.gz and copy into dts/dep::
+
+    tar -zcvf dpdk.tar.gz dpdk
+    cp dpdk.tar.gz ~/dts/dep
+
+
+#. config drivername=igb_uio in execution.cfg::
+
+    [Execution1]
+    crbs=127.0.0.1
+    drivername=igb_uio
+    build_type=meson
+    test_suites=
+        checksum_offload,
+    targets=
+        x86_64-native-linuxapp-gcc
+    parameters=nic_type=cfg:func=true
+
+#. configure dts with other requirements (not mentioned here) and now start dts::
+
+   ./dts
+
+.. note ..
+
+    dts parameter "-s" means skip setup, it won't unpack dep/dpdk.tar.gz
+    to the default directory `/root/dpdk`, but use dpdk already there.
+    so copy the integrated dpdk to `/root/dpdk` if with `-s`
\ No newline at end of file
-- 
2.17.1


             reply	other threads:[~2020-12-23  7:55 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-12-23  7:49 Haiyang Zhao [this message]
2020-12-24  3:00 ` Tu, Lijuan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20201223074921.4951-1-haiyangx.zhao@intel.com \
    --to=haiyangx.zhao@intel.com \
    --cc=dts@dpdk.org \
    --cc=lijuan.tu@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).