From a8e0c180f5a24bcff7d9b73ea62abeb223ca2939 Mon Sep 17 00:00:00 2001
From: Karen Xie <karenx@xilinx.com>
Date: Wed, 12 Dec 2018 10:05:35 -0800
Subject: [PATCH] QDMA Reference Drivers 2018.3 release

---
 QDMA/DPDK/RELEASE.txt                         |   42 +
 .../DPDK/docs/DPDK_qdma_driver_user_guide.pdf |  Bin 0 -> 601852 bytes
 QDMA/DPDK/drivers/net/qdma/Makefile           |   78 +
 QDMA/DPDK/drivers/net/qdma/qdma.h             |  488 ++++
 QDMA/DPDK/drivers/net/qdma/qdma_common.c      | 1380 ++++++++++
 QDMA/DPDK/drivers/net/qdma/qdma_devops.c      | 1447 ++++++++++
 QDMA/DPDK/drivers/net/qdma/qdma_ethdev.c      |  966 +++++++
 QDMA/DPDK/drivers/net/qdma/qdma_export.h      |   68 +
 QDMA/DPDK/drivers/net/qdma/qdma_regs.h        |  367 +++
 QDMA/DPDK/drivers/net/qdma/qdma_rxtx.c        |  814 ++++++
 QDMA/DPDK/drivers/net/qdma/qdma_user.h        |   77 +
 QDMA/DPDK/drivers/net/qdma/qdma_vf_ethdev.c   |  968 +++++++
 QDMA/DPDK/drivers/net/qdma/qdma_xdebug.c      | 1113 ++++++++
 .../drivers/net/qdma/rte_pmd_qdma_version.map |    3 +
 QDMA/DPDK/drivers/net/qdma/version.h          |   51 +
 QDMA/DPDK/examples/qdma_testapp/Makefile      |   55 +
 QDMA/DPDK/examples/qdma_testapp/commands.c    | 1532 +++++++++++
 QDMA/DPDK/examples/qdma_testapp/commands.h    |   38 +
 .../examples/qdma_testapp/parse_obj_list.c    |  196 ++
 .../examples/qdma_testapp/parse_obj_list.h    |  146 +
 QDMA/DPDK/examples/qdma_testapp/pcierw.c      |   56 +
 QDMA/DPDK/examples/qdma_testapp/pcierw.h      |   42 +
 QDMA/DPDK/examples/qdma_testapp/qdma_regs.h   |  235 ++
 QDMA/DPDK/examples/qdma_testapp/testapp.c     |  795 ++++++
 QDMA/DPDK/examples/qdma_testapp/testapp.h     |   86 +
 ....7-Patch-to-add-Jumbo-packet-support.patch |  302 ++
 QDMA/DPDK/tools/README.txt                    |    7 +
 LICENSE => QDMA/linux-kernel/COPYING          |   39 +-
 QDMA/linux-kernel/LICENSE                     |   30 +
 QDMA/linux-kernel/Makefile                    |  307 +++
 QDMA/linux-kernel/README                      |    1 +
 QDMA/linux-kernel/RELEASE                     |   72 +
 QDMA/linux-kernel/docs/Doxyfile               | 2443 +++++++++++++++++
 QDMA/linux-kernel/docs/QDMA_Driver_APIs.pdf   |  Bin 0 -> 660344 bytes
 QDMA/linux-kernel/docs/README                 |  267 ++
 QDMA/linux-kernel/docs/dmactl.8.gz            |  Bin 0 -> 2164 bytes
 .../docs/linux_qdma_driver_user_guide.pdf     |  Bin 0 -> 924396 bytes
 QDMA/linux-kernel/drv/.cache.mk               |   63 +
 QDMA/linux-kernel/drv/Makefile                |   83 +
 QDMA/linux-kernel/drv/cdev.c                  |  800 ++++++
 QDMA/linux-kernel/drv/cdev.h                  |  182 ++
 QDMA/linux-kernel/drv/nl.c                    | 1862 +++++++++++++
 QDMA/linux-kernel/drv/nl.h                    |   45 +
 QDMA/linux-kernel/drv/pci_ids.h               |  253 ++
 QDMA/linux-kernel/drv/qdma_mod.c              | 2257 +++++++++++++++
 QDMA/linux-kernel/drv/qdma_mod.h              |  215 ++
 QDMA/linux-kernel/drv/version.h               |   40 +
 QDMA/linux-kernel/etc/30-qdma.rules           |    3 +
 QDMA/linux-kernel/include/qdma_nl.h           |  406 +++
 QDMA/linux-kernel/include/xdev_regs.h         |  240 ++
 QDMA/linux-kernel/libqdma/Makefile            |   47 +
 QDMA/linux-kernel/libqdma/libqdma_config.c    |  572 ++++
 QDMA/linux-kernel/libqdma/libqdma_config.h    |  301 ++
 QDMA/linux-kernel/libqdma/libqdma_export.c    | 2037 ++++++++++++++
 QDMA/linux-kernel/libqdma/libqdma_export.h    | 1228 +++++++++
 QDMA/linux-kernel/libqdma/qdma_compat.h       |   97 +
 QDMA/linux-kernel/libqdma/qdma_context.c      |  909 ++++++
 QDMA/linux-kernel/libqdma/qdma_context.h      |  198 ++
 QDMA/linux-kernel/libqdma/qdma_debugfs.c      |   74 +
 QDMA/linux-kernel/libqdma/qdma_debugfs.h      |   52 +
 QDMA/linux-kernel/libqdma/qdma_debugfs_dev.c  |  655 +++++
 QDMA/linux-kernel/libqdma/qdma_debugfs_dev.h  |   29 +
 .../linux-kernel/libqdma/qdma_debugfs_queue.c | 1190 ++++++++
 .../linux-kernel/libqdma/qdma_debugfs_queue.h |   33 +
 QDMA/linux-kernel/libqdma/qdma_descq.c        | 1602 +++++++++++
 QDMA/linux-kernel/libqdma/qdma_descq.h        |  554 ++++
 QDMA/linux-kernel/libqdma/qdma_device.c       |  584 ++++
 QDMA/linux-kernel/libqdma/qdma_device.h       |  276 ++
 QDMA/linux-kernel/libqdma/qdma_intr.c         | 1007 +++++++
 QDMA/linux-kernel/libqdma/qdma_intr.h         |  217 ++
 QDMA/linux-kernel/libqdma/qdma_mbox.c         |  762 +++++
 QDMA/linux-kernel/libqdma/qdma_mbox.h         |  415 +++
 QDMA/linux-kernel/libqdma/qdma_qconf_mgr.c    |  608 ++++
 QDMA/linux-kernel/libqdma/qdma_qconf_mgr.h    |  217 ++
 QDMA/linux-kernel/libqdma/qdma_regs.c         | 1109 ++++++++
 QDMA/linux-kernel/libqdma/qdma_regs.h         | 1006 +++++++
 QDMA/linux-kernel/libqdma/qdma_sriov.c        |  213 ++
 QDMA/linux-kernel/libqdma/qdma_st_c2h.c       |  699 +++++
 QDMA/linux-kernel/libqdma/qdma_st_c2h.h       |  232 ++
 QDMA/linux-kernel/libqdma/qdma_thread.c       |  236 ++
 QDMA/linux-kernel/libqdma/qdma_thread.h       |   76 +
 QDMA/linux-kernel/libqdma/thread.c            |  193 ++
 QDMA/linux-kernel/libqdma/thread.h            |  145 +
 QDMA/linux-kernel/libqdma/version.h           |   33 +
 QDMA/linux-kernel/libqdma/xdev.c              | 1017 +++++++
 QDMA/linux-kernel/libqdma/xdev.h              |  531 ++++
 QDMA/linux-kernel/make/common_flags.mk        |    9 +
 QDMA/linux-kernel/make/distro_check.mk        |   86 +
 QDMA/linux-kernel/make/kernel_check.mk        |  332 +++
 .../scripts/datafile_16bit_pattern.bin        |  Bin 0 -> 262144 bytes
 .../scripts/qdma_run_stress_test.sh           |  678 +++++
 .../scripts/qdma_run_test_mm_vf.sh            |  142 +
 QDMA/linux-kernel/scripts/qdma_run_test_pf.sh |  453 +++
 .../scripts/qdma_run_test_st_vf.sh            |  209 ++
 QDMA/linux-kernel/scripts/qdma_vf_auto_tst.sh |   82 +
 QDMA/linux-kernel/scripts/stress_test_top.sh  |   75 +
 QDMA/linux-kernel/tools/Makefile              |   21 +
 QDMA/linux-kernel/tools/aio_example.aio       |  178 ++
 QDMA/linux-kernel/tools/aioutility.c          |  950 +++++++
 QDMA/linux-kernel/tools/aioutility.h          |  110 +
 .../tools/config/dmautils_config/mm-bi.zip    |  Bin 0 -> 18447 bytes
 .../tools/config/dmautils_config/mm-c2h.zip   |  Bin 0 -> 18719 bytes
 .../tools/config/dmautils_config/mm-h2c.zip   |  Bin 0 -> 17146 bytes
 .../tools/config/dmautils_config/st-bi.zip    |  Bin 0 -> 90077 bytes
 .../config/dmautils_config/st-c2h-pfetch1.zip |  Bin 0 -> 102427 bytes
 .../tools/config/dmautils_config/st-h2c.zip   |  Bin 0 -> 83913 bytes
 QDMA/linux-kernel/tools/dma_from_device.c     |  233 ++
 .../tools/dma_from_device_w_udd.c             |  266 ++
 QDMA/linux-kernel/tools/dma_to_device.c       |  266 ++
 QDMA/linux-kernel/tools/dma_xfer_utils.c      |  198 ++
 QDMA/linux-kernel/tools/dmautils.c            | 1489 ++++++++++
 QDMA/linux-kernel/tools/libaio_engine.c       |  249 ++
 QDMA/linux-kernel/tools/posixaio_engine.c     |  224 ++
 QDMA/linux-kernel/user/Makefile               |   19 +
 QDMA/linux-kernel/user/bash/decode_hw_ctxt.sh |   42 +
 .../user/bash/decode_preftch_ctxt.sh          |   40 +
 QDMA/linux-kernel/user/bash/decode_sw_ctxt.sh |  106 +
 .../linux-kernel/user/bash/decode_wrb_ctxt.sh |   91 +
 .../user/bash/qdma_run_test_st_vf.sh          |  198 ++
 QDMA/linux-kernel/user/cli/cmd_parse.c        | 1201 ++++++++
 QDMA/linux-kernel/user/cli/cmd_parse.h        |   40 +
 QDMA/linux-kernel/user/cli/main.c             |   76 +
 QDMA/linux-kernel/user/cli/nl_user.c          |  575 ++++
 QDMA/linux-kernel/user/cli/nl_user.h          |   95 +
 QDMA/linux-kernel/user/cli/reg_cmd.c          |  401 +++
 QDMA/linux-kernel/user/cli/reg_cmd.h          |   34 +
 QDMA/linux-kernel/user/cli/version.h          |   19 +
 README.md                                     |   19 +-
 128 files changed, 49300 insertions(+), 20 deletions(-)
 create mode 100644 QDMA/DPDK/RELEASE.txt
 create mode 100644 QDMA/DPDK/docs/DPDK_qdma_driver_user_guide.pdf
 create mode 100644 QDMA/DPDK/drivers/net/qdma/Makefile
 create mode 100644 QDMA/DPDK/drivers/net/qdma/qdma.h
 create mode 100644 QDMA/DPDK/drivers/net/qdma/qdma_common.c
 create mode 100644 QDMA/DPDK/drivers/net/qdma/qdma_devops.c
 create mode 100644 QDMA/DPDK/drivers/net/qdma/qdma_ethdev.c
 create mode 100644 QDMA/DPDK/drivers/net/qdma/qdma_export.h
 create mode 100644 QDMA/DPDK/drivers/net/qdma/qdma_regs.h
 create mode 100644 QDMA/DPDK/drivers/net/qdma/qdma_rxtx.c
 create mode 100644 QDMA/DPDK/drivers/net/qdma/qdma_user.h
 create mode 100644 QDMA/DPDK/drivers/net/qdma/qdma_vf_ethdev.c
 create mode 100644 QDMA/DPDK/drivers/net/qdma/qdma_xdebug.c
 create mode 100644 QDMA/DPDK/drivers/net/qdma/rte_pmd_qdma_version.map
 create mode 100644 QDMA/DPDK/drivers/net/qdma/version.h
 create mode 100644 QDMA/DPDK/examples/qdma_testapp/Makefile
 create mode 100644 QDMA/DPDK/examples/qdma_testapp/commands.c
 create mode 100644 QDMA/DPDK/examples/qdma_testapp/commands.h
 create mode 100644 QDMA/DPDK/examples/qdma_testapp/parse_obj_list.c
 create mode 100644 QDMA/DPDK/examples/qdma_testapp/parse_obj_list.h
 create mode 100644 QDMA/DPDK/examples/qdma_testapp/pcierw.c
 create mode 100644 QDMA/DPDK/examples/qdma_testapp/pcierw.h
 create mode 100644 QDMA/DPDK/examples/qdma_testapp/qdma_regs.h
 create mode 100644 QDMA/DPDK/examples/qdma_testapp/testapp.c
 create mode 100644 QDMA/DPDK/examples/qdma_testapp/testapp.h
 create mode 100644 QDMA/DPDK/tools/0001-PKTGEN-3.4.7-Patch-to-add-Jumbo-packet-support.patch
 create mode 100644 QDMA/DPDK/tools/README.txt
 rename LICENSE => QDMA/linux-kernel/COPYING (95%)
 create mode 100644 QDMA/linux-kernel/LICENSE
 create mode 100644 QDMA/linux-kernel/Makefile
 create mode 120000 QDMA/linux-kernel/README
 create mode 100644 QDMA/linux-kernel/RELEASE
 create mode 100644 QDMA/linux-kernel/docs/Doxyfile
 create mode 100644 QDMA/linux-kernel/docs/QDMA_Driver_APIs.pdf
 create mode 100644 QDMA/linux-kernel/docs/README
 create mode 100644 QDMA/linux-kernel/docs/dmactl.8.gz
 create mode 100644 QDMA/linux-kernel/docs/linux_qdma_driver_user_guide.pdf
 create mode 100644 QDMA/linux-kernel/drv/.cache.mk
 create mode 100644 QDMA/linux-kernel/drv/Makefile
 create mode 100644 QDMA/linux-kernel/drv/cdev.c
 create mode 100644 QDMA/linux-kernel/drv/cdev.h
 create mode 100644 QDMA/linux-kernel/drv/nl.c
 create mode 100644 QDMA/linux-kernel/drv/nl.h
 create mode 100644 QDMA/linux-kernel/drv/pci_ids.h
 create mode 100644 QDMA/linux-kernel/drv/qdma_mod.c
 create mode 100644 QDMA/linux-kernel/drv/qdma_mod.h
 create mode 100644 QDMA/linux-kernel/drv/version.h
 create mode 100644 QDMA/linux-kernel/etc/30-qdma.rules
 create mode 100644 QDMA/linux-kernel/include/qdma_nl.h
 create mode 100644 QDMA/linux-kernel/include/xdev_regs.h
 create mode 100644 QDMA/linux-kernel/libqdma/Makefile
 create mode 100644 QDMA/linux-kernel/libqdma/libqdma_config.c
 create mode 100644 QDMA/linux-kernel/libqdma/libqdma_config.h
 create mode 100644 QDMA/linux-kernel/libqdma/libqdma_export.c
 create mode 100644 QDMA/linux-kernel/libqdma/libqdma_export.h
 create mode 100644 QDMA/linux-kernel/libqdma/qdma_compat.h
 create mode 100644 QDMA/linux-kernel/libqdma/qdma_context.c
 create mode 100644 QDMA/linux-kernel/libqdma/qdma_context.h
 create mode 100644 QDMA/linux-kernel/libqdma/qdma_debugfs.c
 create mode 100644 QDMA/linux-kernel/libqdma/qdma_debugfs.h
 create mode 100644 QDMA/linux-kernel/libqdma/qdma_debugfs_dev.c
 create mode 100644 QDMA/linux-kernel/libqdma/qdma_debugfs_dev.h
 create mode 100644 QDMA/linux-kernel/libqdma/qdma_debugfs_queue.c
 create mode 100644 QDMA/linux-kernel/libqdma/qdma_debugfs_queue.h
 create mode 100644 QDMA/linux-kernel/libqdma/qdma_descq.c
 create mode 100644 QDMA/linux-kernel/libqdma/qdma_descq.h
 create mode 100644 QDMA/linux-kernel/libqdma/qdma_device.c
 create mode 100644 QDMA/linux-kernel/libqdma/qdma_device.h
 create mode 100644 QDMA/linux-kernel/libqdma/qdma_intr.c
 create mode 100644 QDMA/linux-kernel/libqdma/qdma_intr.h
 create mode 100644 QDMA/linux-kernel/libqdma/qdma_mbox.c
 create mode 100644 QDMA/linux-kernel/libqdma/qdma_mbox.h
 create mode 100644 QDMA/linux-kernel/libqdma/qdma_qconf_mgr.c
 create mode 100644 QDMA/linux-kernel/libqdma/qdma_qconf_mgr.h
 create mode 100644 QDMA/linux-kernel/libqdma/qdma_regs.c
 create mode 100644 QDMA/linux-kernel/libqdma/qdma_regs.h
 create mode 100644 QDMA/linux-kernel/libqdma/qdma_sriov.c
 create mode 100644 QDMA/linux-kernel/libqdma/qdma_st_c2h.c
 create mode 100644 QDMA/linux-kernel/libqdma/qdma_st_c2h.h
 create mode 100644 QDMA/linux-kernel/libqdma/qdma_thread.c
 create mode 100644 QDMA/linux-kernel/libqdma/qdma_thread.h
 create mode 100644 QDMA/linux-kernel/libqdma/thread.c
 create mode 100644 QDMA/linux-kernel/libqdma/thread.h
 create mode 100644 QDMA/linux-kernel/libqdma/version.h
 create mode 100644 QDMA/linux-kernel/libqdma/xdev.c
 create mode 100644 QDMA/linux-kernel/libqdma/xdev.h
 create mode 100644 QDMA/linux-kernel/make/common_flags.mk
 create mode 100644 QDMA/linux-kernel/make/distro_check.mk
 create mode 100644 QDMA/linux-kernel/make/kernel_check.mk
 create mode 100755 QDMA/linux-kernel/scripts/datafile_16bit_pattern.bin
 create mode 100755 QDMA/linux-kernel/scripts/qdma_run_stress_test.sh
 create mode 100755 QDMA/linux-kernel/scripts/qdma_run_test_mm_vf.sh
 create mode 100755 QDMA/linux-kernel/scripts/qdma_run_test_pf.sh
 create mode 100755 QDMA/linux-kernel/scripts/qdma_run_test_st_vf.sh
 create mode 100644 QDMA/linux-kernel/scripts/qdma_vf_auto_tst.sh
 create mode 100755 QDMA/linux-kernel/scripts/stress_test_top.sh
 create mode 100644 QDMA/linux-kernel/tools/Makefile
 create mode 100644 QDMA/linux-kernel/tools/aio_example.aio
 create mode 100644 QDMA/linux-kernel/tools/aioutility.c
 create mode 100644 QDMA/linux-kernel/tools/aioutility.h
 create mode 100644 QDMA/linux-kernel/tools/config/dmautils_config/mm-bi.zip
 create mode 100644 QDMA/linux-kernel/tools/config/dmautils_config/mm-c2h.zip
 create mode 100644 QDMA/linux-kernel/tools/config/dmautils_config/mm-h2c.zip
 create mode 100644 QDMA/linux-kernel/tools/config/dmautils_config/st-bi.zip
 create mode 100644 QDMA/linux-kernel/tools/config/dmautils_config/st-c2h-pfetch1.zip
 create mode 100644 QDMA/linux-kernel/tools/config/dmautils_config/st-h2c.zip
 create mode 100644 QDMA/linux-kernel/tools/dma_from_device.c
 create mode 100644 QDMA/linux-kernel/tools/dma_from_device_w_udd.c
 create mode 100644 QDMA/linux-kernel/tools/dma_to_device.c
 create mode 100644 QDMA/linux-kernel/tools/dma_xfer_utils.c
 create mode 100644 QDMA/linux-kernel/tools/dmautils.c
 create mode 100644 QDMA/linux-kernel/tools/libaio_engine.c
 create mode 100644 QDMA/linux-kernel/tools/posixaio_engine.c
 create mode 100644 QDMA/linux-kernel/user/Makefile
 create mode 100755 QDMA/linux-kernel/user/bash/decode_hw_ctxt.sh
 create mode 100755 QDMA/linux-kernel/user/bash/decode_preftch_ctxt.sh
 create mode 100755 QDMA/linux-kernel/user/bash/decode_sw_ctxt.sh
 create mode 100755 QDMA/linux-kernel/user/bash/decode_wrb_ctxt.sh
 create mode 100755 QDMA/linux-kernel/user/bash/qdma_run_test_st_vf.sh
 create mode 100644 QDMA/linux-kernel/user/cli/cmd_parse.c
 create mode 100644 QDMA/linux-kernel/user/cli/cmd_parse.h
 create mode 100644 QDMA/linux-kernel/user/cli/main.c
 create mode 100644 QDMA/linux-kernel/user/cli/nl_user.c
 create mode 100644 QDMA/linux-kernel/user/cli/nl_user.h
 create mode 100644 QDMA/linux-kernel/user/cli/reg_cmd.c
 create mode 100644 QDMA/linux-kernel/user/cli/reg_cmd.h
 create mode 100644 QDMA/linux-kernel/user/cli/version.h

diff --git a/QDMA/DPDK/RELEASE.txt b/QDMA/DPDK/RELEASE.txt
new file mode 100644
index 0000000..4f45da0
--- /dev/null
+++ b/QDMA/DPDK/RELEASE.txt
@@ -0,0 +1,42 @@
+Release: 2018.3
+===============
+
+This release is based on DPDK v17.11.1 containing QDMA poll mode driver and
+QDMA test application.
+
+This release includes a patch file for dpdk-pktgen v3.4.7 that extends
+dpdk-pktgen application to handle packets with packet sizes more than 1518 bytes
+and it disables the packet size classification logic in dpdk-pktgen to remove
+application overhead in performance measurement.
+This patch is used for performance testing with dpdk-pktgen application.
+
+The driver is validated against dpdk-pktgen and testpmd applications for API compliance.
+2018.3 driver is not backward compatible with 2018.2 and earlier QDMA IP.
+
+SUPPORTED FEATURES:
+===================
+- Support for both the AXI4 Memory Mapped(MM) and AXI4 Streaming(ST) Interfaces
+- 2048 Queue Sets
+	- 2048 H2C Descriptor Rings
+	- 2048 C2H Descriptor Rings
+	- 2048 C2H Completion Rings
+- Supports Polling Mode
+- Supports SR-IOV with 4 Physical Functions(PF) and 252 Virtual Functions(VF)
+- Allows Only Privileged/Physical functions to program the contexts and registers
+- Function Level Reset(FLR) Support
+- Mailbox Support
+- Supports Descriptor Prefetch
+- ST H2C to C2H and C2H to H2C loopback support
+- Zero-byte transfer support
+
+2018.3 Features
+- Descriptor (8, 16, 32, 64 bytes) bypass support
+- Support for Completion queue descriptors of 64 bytes size
+- Support flexible BAR mapping for QDMA configuration register space
+- Support disabling overflow check in completion ring
+- Indirect programming of FMAP registers
+
+
+KNOWN ISSUES:
+============
+- Occasionally, C2H completions are not observed when payload and immediate data transfers are combined
\ No newline at end of file
diff --git a/QDMA/DPDK/docs/DPDK_qdma_driver_user_guide.pdf b/QDMA/DPDK/docs/DPDK_qdma_driver_user_guide.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..c7951790fbc35f0e30f34fa61c8622772dd6b76c
GIT binary patch
literal 601852
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%0Daquy44fyWtksB*xXXlX9B(_Dz0!
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%0Dm&2FOq!^=O<Y+|%{_UWgI>`P`_
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%0Dc#<0ZnjCCyYJoIu=1Yo*U7JDzuNnC*}{9j
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%0D+3k1C_Bqvew%yrwZJS{F
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

literal 0
HcmV?d00001

diff --git a/QDMA/DPDK/drivers/net/qdma/Makefile b/QDMA/DPDK/drivers/net/qdma/Makefile
new file mode 100644
index 0000000..ccfd9f4
--- /dev/null
+++ b/QDMA/DPDK/drivers/net/qdma/Makefile
@@ -0,0 +1,78 @@
+#   BSD LICENSE
+#
+#   Copyright(c) 2017-2018 Xilinx, Inc. All rights reserved.
+#
+#   Redistribution and use in source and binary forms, with or without
+#   modification, are permitted provided that the following conditions
+#   are met:
+#
+#     * Redistributions of source code must retain the above copyright
+#       notice, this list of conditions and the following disclaimer.
+#     * Redistributions in binary form must reproduce the above copyright
+#       notice, this list of conditions and the following disclaimer in
+#       the documentation and/or other materials provided with the
+#       distribution.
+#     * Neither the name of the copyright holder nor the names of its
+#       contributors may be used to endorse or promote products derived
+#       from this software without specific prior written permission.
+#
+#   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+#   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+#   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+#   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+#   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+#   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+#   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+#   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+#   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+#   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+#   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+include $(RTE_SDK)/mk/rte.vars.mk
+
+## if modified this BRAM_SIZE, then the same should be modified in the testapp Makefile also
+## default set to 512KB
+BRAM_SIZE ?= 524288
+
+#
+# library name
+#
+LIB = librte_pmd_qdma.a
+
+# library version
+ LIBABIVER := 1
+
+# versioning export map
+EXPORT_MAP := rte_pmd_qdma_version.map
+
+CFLAGS += -O3 -DDMA_BRAM_SIZE=$(BRAM_SIZE)
+#CFLAGS += -g
+CFLAGS += $(WERROR_FLAGS)
+
+ifeq ($(TEST_64B_DESC_BYPASS),1)
+  CFLAGS += -DTEST_64B_DESC_BYPASS
+endif
+
+# this lib depends upon:
+LDLIBS += -lrte_eal -lrte_mbuf -lrte_mempool -lrte_ring
+LDLIBS += -lrte_ethdev -lrte_net -lrte_kvargs
+LDLIBS += -lrte_bus_pci
+
+#
+# all source are stored in SRCS-y
+#
+SRCS-$(CONFIG_RTE_LIBRTE_QDMA_PMD) += qdma_ethdev.c
+SRCS-$(CONFIG_RTE_LIBRTE_QDMA_PMD) += qdma_vf_ethdev.c
+SRCS-$(CONFIG_RTE_LIBRTE_QDMA_PMD) += qdma_devops.c
+SRCS-$(CONFIG_RTE_LIBRTE_QDMA_PMD) += qdma_common.c
+SRCS-$(CONFIG_RTE_LIBRTE_QDMA_PMD) += qdma_rxtx.c
+SRCS-$(CONFIG_RTE_LIBRTE_QDMA_PMD) += qdma_xdebug.c
+
+#
+## Export include files
+#
+SYMLINK-y-include += qdma_export.h
+
+
+include $(RTE_SDK)/mk/rte.lib.mk
diff --git a/QDMA/DPDK/drivers/net/qdma/qdma.h b/QDMA/DPDK/drivers/net/qdma/qdma.h
new file mode 100644
index 0000000..07e52db
--- /dev/null
+++ b/QDMA/DPDK/drivers/net/qdma/qdma.h
@@ -0,0 +1,488 @@
+/*-
+ *   BSD LICENSE
+ *
+ *   Copyright(c) 2017-2018 Xilinx, Inc. All rights reserved.
+ *
+ *   Redistribution and use in source and binary forms, with or without
+ *   modification, are permitted provided that the following conditions
+ *   are met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in
+ *       the documentation and/or other materials provided with the
+ *       distribution.
+ *     * Neither the name of the copyright holder nor the names of its
+ *       contributors may be used to endorse or promote products derived
+ *       from this software without specific prior written permission.
+ *
+ *   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ *   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ *   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ *   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ *   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ *   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ *   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ *   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef __QDMA_H__
+#define __QDMA_H__
+
+#include <rte_dev.h>
+#include <rte_ethdev.h>
+#include <rte_spinlock.h>
+#include <rte_log.h>
+#include <rte_byteorder.h>
+#include <rte_memzone.h>
+#include <linux/pci.h>
+#include "qdma_user.h"
+
+#ifdef RTE_LIBRTE_QDMA_DEBUG_DRIVER
+#define PMD_DRV_LOG(level, fmt, args...) \
+	RTE_LOG(level, PMD, "%s(): " fmt "\n", __func__, ## args)
+#else
+#define PMD_DRV_LOG(level, fmt, args...) do { } while (0)
+#endif
+
+#define FMAP_CNTXT (1)
+
+#define NUM_BARS	(6)
+#define DEFAULT_PF_CONFIG_BAR  (0)
+#define DEFAULT_VF_CONFIG_BAR  (0)
+#define BAR_ID_INVALID -1
+
+#define QDMA_QUEUES_NUM_MAX (2048)
+#define QDMA_MAX_BURST_SIZE (256)
+#define QDMA_MIN_RXBUFF_SIZE	(256)
+
+#define RX_STATUS_EOP (1)
+
+#define QDMA_BUF_ALIGN	(4096)
+/* Descriptor Rings aligned to 4KB boundaries - only supported value */
+#define QDMA_ALIGN	(4096)
+
+/* If this RX_BUF_SIZE, modified then the same value need to be modified
+ * in the testapp commands.h file "MAX_BUF_SIZE" macro.
+ * This is maintained equal to the descriptor Bufffer size
+ */
+#define RX_BUF_SIZE	4096
+
+/* QDMA IP absolute maximum */
+#define QDMA_PF_MAX             4       /* 4 PFs */
+#define QDMA_VF_MAX             252
+#define QDMA_FUNC_ID_INVALID    (QDMA_PF_MAX + QDMA_VF_MAX)
+
+/** MBOX OPCODE **/
+#define QDMA_MBOX_OPCD_HI	(1)
+#define QDMA_MBOX_OPCD_BYE	(2)
+#define QDMA_MBOX_OPCD_QADD	(3)
+#define QDMA_MBOX_OPCD_QDEL	(4)
+
+#define MBOX_POLL_FRQ 500000
+
+#define DEFAULT_QUEUE_BASE	(0)
+
+/*Corresponding to 100ns (1tick = 4ns for 250MHz user clock)*/
+#define DEFAULT_C2H_INTR_TIMER_TICK		(25)
+#define DEFAULT_TIMER_CNT_TRIG_MODE_TIMER	(5)
+#define DEFAULT_TIMER_CNT_TRIG_MODE_COUNT_TIMER	(30)
+#define DEFAULT_MAX_DESC_FETCH	(3) /* Max nuber of descriptors to fetch in one
+				     * request is 8 * 2^val; Max value is 6;
+				     * Keep same as PCIe MRRS
+				     */
+#define DEFAULT_WB_ACC_INT	(4) // Calculated as 4 * 2^val; Max value is 7
+#define MAX_WB_ACC_INT		(7) // Calculated as 4 * 2^val; Max value is 7
+
+#define DEFAULT_H2C_THROTTLE	(0x14000) // Setting throttle to 16K buffer size
+
+#define MIN_RX_PIDX_UPDATE_THRESHOLD (1)
+#define MIN_TX_PIDX_UPDATE_THRESHOLD (1)
+#define QDMA_TXQ_PIDX_UPDATE_INTERVAL	(1000) //100 uSec
+
+#define DEFAULT_PFCH_STOP_THRESH	(256)
+#define DEFAULT_PFCH_NUM_ENTRIES_PER_Q	(8)
+#define DEFAULT_PFCH_MAX_Q_CNT		(16)
+#define DEFAULT_PFCH_EVICTION_Q_CNT	(14)
+
+#define DEFAULT_CMPT_COAL_TIMER_CNT	(5)
+#define DEFAULT_CMPT_COAL_TIMER_TICK	(25)
+#define DEFAULT_CMPT_COAL_MAX_BUF_SZ	(32)
+
+/** Delays **/
+#define CONTEXT_PROG_DELAY		(1)
+#define MAILBOX_PF_MSG_DELAY		(20)
+#define PF_RESET_DELAY			(1)
+#define PF_START_DELAY			(1)
+#define MAILBOX_VF_MSG_DELAY		(10)
+#define VF_RESET_DELAY			(200)
+#define CONTEXT_PROG_POLL_COUNT		(10)
+#define MAILBOX_PROG_POLL_COUNT		(1250)
+
+#define WB_TIMEOUT			(UINT16_MAX * 4)
+
+#ifdef spin_lock_init
+#undef spin_lock_init
+#endif
+#define spin_lock_init(sl) rte_spinlock_init(sl)
+
+enum cmpt_desc_len {
+	CMPT_DESC_LEN_8B = 8,
+	CMPT_DESC_LEN_16B = 16,
+	CMPT_DESC_LEN_32B = 32,
+	CMPT_DESC_LEN_64B = 64
+};
+
+enum bypass_desc_len {
+	BYPASS_DESC_LEN_8B = 8,
+	BYPASS_DESC_LEN_16B = 16,
+	BYPASS_DESC_LEN_32B = 32,
+	BYPASS_DESC_LEN_64B = 64
+};
+
+enum c2h_bypass_mode {
+	C2H_BYPASS_MODE_NONE = 0,
+	C2H_BYPASS_MODE_CACHE = 1,
+	C2H_BYPASS_MODE_SIMPLE = 2,
+	C2H_BYPASS_MODE_MAX = C2H_BYPASS_MODE_SIMPLE,
+};
+
+#define DEFAULT_QDMA_CMPT_DESC_LEN (CMPT_DESC_LEN_8B)
+
+struct qdma_pkt_stats {
+	uint64_t pkts;
+	uint64_t bytes;
+};
+
+/**
+ * Structure associated with each RX queue.
+ */
+struct qdma_rx_queue {
+	struct rte_mempool	*mb_pool; /**< mbuf pool to populate RX ring. */
+	void			*rx_ring; /**< RX ring virtual address */
+	struct c2h_cmpt_ring	*cmpt_ring;
+	struct wb_status	*wb_status;
+	struct rte_mbuf		**sw_ring; /**< address of RX software ring. */
+	volatile uint32_t	*rx_pidx;
+	volatile uint32_t	*rx_cidx;
+
+	uint16_t		rx_tail;
+	uint16_t		c2h_pidx;
+	uint16_t		rx_cmpt_tail;
+	uint16_t		cmpt_desc_len;
+	uint16_t		rx_buff_size;
+	uint16_t		nb_rx_desc; /**< number of RX descriptors. */
+	uint16_t		nb_rx_cmpt_desc;
+	uint32_t		queue_id; /**< RX queue index. */
+
+	struct qdma_pkt_stats	stats;
+
+	uint32_t		ep_addr;
+
+	uint8_t			st_mode:1; /**< dma-mode: MM or ST */
+	uint8_t			rx_deferred_start:1;
+	uint8_t			en_prefetch:1;
+	uint8_t                 en_bypass:1;
+	uint8_t                 dump_immediate_data:1;
+	uint8_t                 en_bypass_prefetch:1;
+	uint8_t                 dis_overflow_check:1;
+	uint8_t                 status:1;
+	enum bypass_desc_len	bypass_desc_sz;
+
+	uint16_t		port_id; /**< Device port identifier. */
+	uint16_t		func_id; /**< RX queue index. */
+
+
+	int8_t			ringszidx;
+	int8_t			cmpt_ringszidx;
+	int8_t			buffszidx;
+	int8_t			threshidx;
+	int8_t			timeridx;
+	int8_t			triggermode;
+
+	const struct rte_memzone *rx_mz;
+	/* C2H stream mode, completion descriptor result */
+	const struct rte_memzone *rx_cmpt_mz;
+};
+
+/**
+ * Structure associated with each TX queue.
+ */
+struct qdma_tx_queue {
+	void				*tx_ring; /* TX ring virtual address*/
+	struct wb_status		*wb_status;
+	struct rte_mbuf			**sw_ring;/* SW ring virtual address*/
+	volatile uint32_t		*tx_pidx;
+	uint16_t			tx_tail;
+	uint16_t			tx_fl_tail;
+	uint16_t			tx_desc_pend;
+	uint16_t			nb_tx_desc; /* No of TX descriptors.*/
+	rte_spinlock_t			pidx_update_lock;
+
+	uint8_t				st_mode:1;/* dma-mode: MM or ST */
+	uint8_t				tx_deferred_start:1;
+	uint8_t                         en_bypass:1;
+	uint8_t                         status:1;
+	enum bypass_desc_len		bypass_desc_sz;
+	uint16_t			func_id; /* RX queue index. */
+	uint16_t			port_id; /* Device port identifier. */
+	int8_t				ringszidx;
+
+	struct				qdma_pkt_stats stats;
+
+	uint32_t			ep_addr;
+	uint32_t			queue_id; /* TX queue index. */
+	uint32_t			num_queues; /* TX queue index. */
+	const struct rte_memzone	*tx_mz;
+};
+
+struct qdma_vf_queue_info {
+	uint32_t mode;
+};
+
+struct qdma_vf_info {
+	uint32_t	qbase;
+	uint32_t	qmax;
+	uint16_t	func_id;
+	struct	qdma_vf_queue_info *vfqinfo;
+};
+
+struct queue_info {
+	uint32_t queue_mode:1;
+	uint32_t rx_bypass_mode:2;
+	uint32_t tx_bypass_mode:1;
+	uint32_t cmpt_desc_sz:7;
+	enum bypass_desc_len rx_bypass_desc_sz:7;
+	enum bypass_desc_len tx_bypass_desc_sz:7;
+};
+
+struct qdma_pci_dev {
+	struct pci_dev *pdev; /* PCI device pointer */
+	unsigned long magic;
+	int config_bar_idx;
+	int user_bar_idx;
+	int bypass_bar_idx;
+	struct rte_eth_dev *eth_dev;
+
+	/* Driver Attributes */
+	uint32_t qsets_max; /* max. of queue pairs */
+	uint32_t qsets_en;  /* no. of queue pairs enabled */
+	uint8_t st_mode_en;		/* Streaming mode enabled? */
+	uint8_t mm_mode_en;		/* Memory mapped mode enabled? */
+
+	uint16_t pf;
+	uint8_t is_vf;
+	uint8_t en_desc_prefetch;
+	uint8_t cmpt_desc_len;
+	uint8_t c2h_bypass_mode;
+	uint8_t h2c_bypass_mode;
+
+	void *bar_addr[NUM_BARS]; /* memory mapped I/O addr for BARs */
+	unsigned long bar_len[NUM_BARS]; /* length of BAR regions */
+	unsigned int flags;
+
+	volatile uint32_t	*c2h_mm_control;
+	volatile uint32_t	*h2c_mm_control;
+	unsigned int queue_base;
+	uint8_t wb_acc_int;
+	uint8_t trigger_mode;
+	uint16_t timer_count;
+
+	/* Hardware version info*/
+	uint32_t everest_ip:1;
+	uint32_t vivado_rel:4;
+	uint32_t rtl_version:8;
+	struct qdma_vf_info *vfinfo;
+	struct queue_info *q_info;
+};
+
+struct __attribute__ ((packed)) qdma_mbox_data {
+	uint8_t opcode;
+	uint16_t debug_funid:12;   /* Used for debug information only*/
+	uint16_t filler:4;
+	uint8_t err;
+	uint32_t data[31];
+};
+
+struct __attribute__ ((packed)) qadd_msg {
+	uint32_t qid;
+	uint32_t st:1;
+	uint32_t c2h:1;
+	uint32_t prefetch:1;
+	uint32_t  en_bypass:1;
+	uint32_t  en_bypass_prefetch:1;
+	uint32_t  dis_overflow_check:1;
+	uint32_t  bypass_desc_sz_idx:4;
+	uint32_t ringsz;
+	uint32_t bufsz;
+	uint32_t thresidx;
+	uint32_t timeridx;
+	uint32_t triggermode;
+	uint64_t ring_bs_addr;
+	uint64_t cmpt_ring_bs_addr;
+	uint32_t cmpt_ringszidx;
+	uint8_t  cmpt_desc_fmt;
+};
+
+enum get_param_type {
+	CONFIG_BAR = 0,
+	USER_BAR,
+	BYPASS_BAR
+};
+enum get_queue_param_type {
+	CHECK_DUMP_IMMEDIATE_DATA = 0x10
+};
+
+enum dev_param_type {
+	QUEUE_BASE = 0,
+	TIMER_COUNT,
+	TRIGGER_MODE,
+};
+
+enum queue_param_type {
+	QUEUE_MODE = 0x10,
+	DESC_PREFETCH,
+	TX_DST_ADDRESS,
+	RX_SRC_ADDRESS,
+	DIS_OVERFLOW_CHECK,
+	DUMP_IMMEDIATE_DATA,
+	RX_BYPASS_MODE,
+	RX_BYPASS_DESC_SIZE,
+	TX_BYPASS_MODE,
+	TX_BYPASS_DESC_SIZE,
+	CMPT_DESC_SIZE
+};
+
+/*
+ * queue_mode_t - queue modes
+ */
+enum queue_mode_t {
+	MEMORY_MAPPED_MODE,
+	STREAMING_MODE
+};
+
+/*
+ * tigger_mode_t - trigger modes
+ */
+enum tigger_mode_t {
+	TRIG_MODE_DISABLE,
+	TRIG_MODE_EVERY,
+	TRIG_MODE_USER_COUNT,
+	TRIG_MODE_USER,
+	TRIG_MODE_USER_TIMER,
+	TRIG_MODE_USER_TIMER_COUNT,
+	TRIG_MODE_MAX = TRIG_MODE_USER_TIMER_COUNT,
+};
+
+enum dma_data_direction {
+	DMA_BIDIRECTIONAL = 0,
+	DMA_TO_DEVICE = 1,
+	DMA_FROM_DEVICE = 2,
+	DMA_NONE = 3,
+};
+
+void qdma_dev_ops_init(struct rte_eth_dev *dev);
+uint32_t qdma_read_reg(uint64_t addr);
+void qdma_write_reg(uint64_t addr, uint32_t val);
+void qdma_txq_pidx_update(void *arg);
+
+int qdma_queue_ctxt_tx_prog(struct rte_eth_dev *dev, uint32_t qid,
+	uint32_t mode, uint32_t ringszidx, uint16_t func_id, uint64_t phys_addr,
+	uint8_t en_bypass, uint8_t  bypass_desc_sz_idx);
+
+int qdma_queue_ctxt_rx_prog(struct rte_eth_dev *dev, uint32_t qid,
+				uint32_t mode, uint8_t prefetch,
+				uint32_t ringszidx, uint32_t cmpt_ringszidx,
+				uint32_t bufszidx, uint32_t threshidx,
+				uint32_t timeridx, uint32_t triggermode,
+				uint16_t func_id, uint64_t phys_addr,
+				uint64_t cmpt_phys_addr, uint8_t cmpt_desc_fmt,
+				uint8_t en_bypass, uint8_t en_bypass_prefetch,
+				uint8_t  bypass_desc_sz_idx,
+				uint8_t dis_overflow_check);
+
+int qdma_dev_rx_queue_setup(struct rte_eth_dev *dev, uint16_t rx_queue_id,
+				uint16_t nb_rx_desc, unsigned int socket_id,
+				const struct rte_eth_rxconf *rx_conf,
+				struct rte_mempool *mb_pool);
+
+int qdma_dev_tx_queue_setup(struct rte_eth_dev *dev, uint16_t tx_queue_id,
+				uint16_t nb_tx_desc, unsigned int socket_id,
+				const struct rte_eth_txconf *tx_conf);
+void qdma_dev_rx_queue_release(void *rqueue);
+void qdma_dev_tx_queue_release(void *tqueue);
+uint8_t qmda_get_desc_sz_idx(enum bypass_desc_len);
+int qdma_dev_rx_queue_start(struct rte_eth_dev *dev, uint16_t rx_queue_id);
+int qdma_dev_rx_queue_stop(struct rte_eth_dev *dev, uint16_t rx_queue_id);
+int qdma_dev_tx_queue_start(struct rte_eth_dev *dev, uint16_t tx_queue_id);
+int qdma_dev_tx_queue_stop(struct rte_eth_dev *dev, uint16_t tx_queue_id);
+int qdma_vf_dev_rx_queue_start(struct rte_eth_dev *dev, uint16_t rx_queue_id);
+int qdma_vf_dev_rx_queue_stop(struct rte_eth_dev *dev, uint16_t rx_queue_id);
+int qdma_vf_dev_tx_queue_start(struct rte_eth_dev *dev, uint16_t tx_queue_id);
+int qdma_vf_dev_tx_queue_stop(struct rte_eth_dev *dev, uint16_t tx_queue_id);
+
+int qdma_start_rx_queue(struct qdma_rx_queue *rxq);
+void qdma_start_tx_queue(struct qdma_tx_queue *txq);
+void qdma_reset_tx_queue(struct qdma_tx_queue *txq);
+void qdma_reset_rx_queue(struct qdma_rx_queue *rxq);
+
+void qdma_reset_rx_queues(struct rte_eth_dev *dev, uint32_t qid, uint32_t mode);
+void qdma_inv_rx_queues(struct rte_eth_dev *dev, uint32_t qid, uint32_t mode);
+void qdma_reset_tx_queues(struct rte_eth_dev *dev, uint32_t qid, uint32_t mode);
+void qdma_inv_tx_queues(struct rte_eth_dev *dev, uint32_t qid, uint32_t mode);
+int qdma_set_fmap(struct qdma_pci_dev *qdma_dev, uint16_t devfn,
+			uint32_t q_base, uint32_t q_count);
+int qdma_identify_bars(struct rte_eth_dev *dev);
+int qdma_get_hw_version(struct rte_eth_dev *dev);
+/* implemented in rxtx.c */
+uint16_t qdma_recv_pkts(void *rx_queue, struct rte_mbuf **rx_pkts,
+				uint16_t nb_pkts);
+uint16_t qdma_xmit_pkts(void *tx_queue, struct rte_mbuf **tx_pkts,
+				uint16_t nb_pkts);
+int qdma_dev_rx_descriptor_done(void *rx_queue, uint16_t exp_count);
+
+uint16_t qdma_recv_pkts_st(struct qdma_rx_queue *rxq, struct rte_mbuf **rx_pkts,
+				uint16_t nb_pkts);
+uint16_t qdma_recv_pkts_mm(struct qdma_rx_queue *rxq, struct rte_mbuf **rx_pkts,
+				uint16_t nb_pkts);
+
+uint16_t qdma_xmit_pkts_st(struct qdma_tx_queue *txq, struct rte_mbuf **tx_pkts,
+				uint16_t nb_pkts);
+uint16_t qdma_xmit_pkts_mm(struct qdma_tx_queue *txq, struct rte_mbuf **tx_pkts,
+				uint16_t nb_pkts);
+
+uint32_t qdma_pci_read_reg(struct rte_eth_dev *dev, uint32_t bar, uint32_t reg);
+void qdma_pci_write_reg(struct rte_eth_dev *dev, uint32_t bar,
+				uint32_t reg, uint32_t val);
+void qdma_desc_dump(struct rte_eth_dev *dev, uint32_t qid);
+
+int index_of_array(uint32_t *arr, uint32_t n, uint32_t element);
+int get_param(struct rte_eth_dev *dev, enum get_param_type param, void *value);
+int get_queue_param(struct rte_eth_dev *dev, uint32_t qid,
+			enum get_queue_param_type param, void *value);
+int update_param(struct rte_eth_dev *dev, enum dev_param_type param,
+			uint16_t value);
+int update_queue_param(struct rte_eth_dev *dev, uint32_t qid,
+				enum queue_param_type param, uint32_t value);
+int qdma_check_kvargs(struct rte_devargs *devargs,
+			struct qdma_pci_dev *qdma_dev);
+
+static inline const
+struct rte_memzone *qdma_zone_reserve(struct rte_eth_dev *dev,
+					const char *ring_name,
+					uint32_t queue_id,
+					uint32_t ring_size,
+					int socket_id)
+{
+	char z_name[RTE_MEMZONE_NAMESIZE];
+	snprintf(z_name, sizeof(z_name), "%s%s%d_%d",
+			dev->device->driver->name, ring_name,
+			dev->data->port_id, queue_id);
+	return rte_memzone_reserve_aligned(z_name, (uint64_t)ring_size,
+						socket_id, 0, QDMA_ALIGN);
+}
+#endif /* ifndef __QDMA_H__ */
diff --git a/QDMA/DPDK/drivers/net/qdma/qdma_common.c b/QDMA/DPDK/drivers/net/qdma/qdma_common.c
new file mode 100644
index 0000000..fb95d0a
--- /dev/null
+++ b/QDMA/DPDK/drivers/net/qdma/qdma_common.c
@@ -0,0 +1,1380 @@
+/*-
+ *   BSD LICENSE
+ *
+ *   Copyright(c) 2017-2018 Xilinx, Inc. All rights reserved.
+ *
+ *   Redistribution and use in source and binary forms, with or without
+ *   modification, are permitted provided that the following conditions
+ *   are met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in
+ *       the documentation and/or other materials provided with the
+ *       distribution.
+ *     * Neither the name of the copyright holder nor the names of its
+ *       contributors may be used to endorse or promote products derived
+ *       from this software without specific prior written permission.
+ *
+ *   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ *   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ *   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ *   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ *   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ *   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ *   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ *   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include <stdint.h>
+#include <rte_malloc.h>
+#include <rte_common.h>
+#include <rte_ethdev_pci.h>
+#include <rte_cycles.h>
+#include <rte_kvargs.h>
+#include "qdma.h"
+#include "qdma_regs.h"
+
+#include <fcntl.h>
+#include <unistd.h>
+
+/* Read register */
+uint32_t qdma_read_reg(uint64_t reg_addr)
+{
+	uint32_t val;
+
+	val = *((volatile uint32_t *)(reg_addr));
+	return val;
+}
+
+/* Write register */
+void qdma_write_reg(uint64_t reg_addr, uint32_t val)
+{
+	*((volatile uint32_t *)(reg_addr)) = val;
+}
+
+uint32_t qdma_pci_read_reg(struct rte_eth_dev *dev, uint32_t bar, uint32_t reg)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	uint64_t baseaddr;
+	uint32_t val;
+
+	if (bar >= (NUM_BARS - 1)) {
+		printf("Error: PCI BAR number:%d not supported\n"
+			"Please enter valid BAR number\n", bar);
+		return -1;
+	}
+
+	baseaddr = (uint64_t)qdma_dev->bar_addr[bar];
+	if (!baseaddr) {
+		printf("Error: PCI BAR number:%d not mapped\n", bar);
+		return -1;
+	}
+	val = *((volatile uint32_t *)(baseaddr + reg));
+
+	return val;
+}
+
+void qdma_pci_write_reg(struct rte_eth_dev *dev, uint32_t bar,
+			uint32_t reg, uint32_t val)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	uint64_t baseaddr;
+
+	if (bar >= (NUM_BARS - 1)) {
+		printf("Error: PCI BAR index:%d not supported\n"
+			"Please enter valid BAR index\n", bar);
+		return;
+	}
+
+	baseaddr = (uint64_t)qdma_dev->bar_addr[bar];
+	if (!baseaddr) {
+		printf("Error: PCI BAR number:%d not mapped\n", bar);
+		return;
+	}
+	*((volatile uint32_t *)(baseaddr + reg)) = val;
+}
+
+void qdma_desc_dump(struct rte_eth_dev *dev, uint32_t qid)
+{
+	struct qdma_rx_queue *rxq;
+	struct qdma_tx_queue *txq;
+	uint32_t i, k, bypass_desc_sz_idx;
+	struct qdma_c2h_desc *rx_ring_st;
+	struct qdma_mm_desc *ring_mm;
+	struct qdma_h2c_desc *tx_ring_st;
+	uint8_t *rx_ring_bypass = NULL;
+	uint8_t *tx_ring_bypass = NULL;
+
+	rxq = (struct qdma_rx_queue *)dev->data->rx_queues[qid];
+	txq = (struct qdma_tx_queue *)dev->data->tx_queues[qid];
+	bypass_desc_sz_idx = qmda_get_desc_sz_idx(rxq->bypass_desc_sz);
+
+	if (rxq->en_bypass &&
+	    bypass_desc_sz_idx == SW_DESC_CNTXT_64B_BYPASS_DMA) {
+		rx_ring_bypass = (uint8_t *)rxq->rx_ring;
+		for (i = 0; i < rxq->nb_rx_desc; ++i) {
+			for (k = 0; k < rxq->bypass_desc_sz; k++)
+				printf("\trxq descriptor-data[%d]: %x\n", i,
+				       rx_ring_bypass[i * (rxq->bypass_desc_sz)
+				       + k]);
+		}
+	} else if (rxq->st_mode) {
+		rx_ring_st = (struct qdma_c2h_desc *)rxq->rx_ring;
+		printf("\nST-mode Rx descriptor dump on Queue-id:%d:\n", qid);
+		for (i = 0; i < rxq->nb_rx_desc; ++i) {
+			printf("\t desc-index:%d: dest-addr:%lx\n", i,
+					rx_ring_st[i].dst_addr);
+		}
+	} else {
+		ring_mm = (struct qdma_mm_desc *)rxq->rx_ring;
+		printf("\nMM-mode Rx descriptor dump on Queue-id:%d:\n", qid);
+		for (i = 0; i < rxq->nb_rx_desc; ++i) {
+			printf("\t desc-index:%d: dest-addr:%lx, src-addr:%lx,"
+					" valid:%d, eop:%d, sop:%d,"
+					"length:%d\n", i,
+					ring_mm[i].dst_addr,
+					ring_mm[i].src_addr,
+					ring_mm[i].dv,
+					ring_mm[i].eop,
+					ring_mm[i].sop,
+					ring_mm[i].len);
+		}
+	}
+
+	bypass_desc_sz_idx = qmda_get_desc_sz_idx(txq->bypass_desc_sz);
+
+	if (txq->en_bypass &&
+	    bypass_desc_sz_idx == SW_DESC_CNTXT_64B_BYPASS_DMA) {
+		tx_ring_bypass = (uint8_t *)txq->tx_ring;
+		for (i = 0; i < txq->nb_tx_desc; ++i) {
+			for (k = 0; k < txq->bypass_desc_sz; k++)
+				printf("\t txq descriptor-data[%d]: %x\n", i,
+						tx_ring_bypass[i *
+						(txq->bypass_desc_sz) + k]);
+		}
+	} else if (txq->st_mode) {
+		tx_ring_st = (struct qdma_h2c_desc *)txq->tx_ring;
+		printf("\nST-mode Tx descriptor dump on Queue-id:%d:\n", qid);
+		for (i = 0; i < txq->nb_tx_desc; ++i) {
+			printf("\t desc-index:%d: src-addr:%lx,length:%d\n", i,
+					tx_ring_st[i].src_addr,
+					tx_ring_st[i].len);
+		}
+
+	} else {
+		ring_mm = (struct qdma_mm_desc *)txq->tx_ring;
+		printf("\nMM-mode Tx descriptor dump on Queue-id:%d:\n", qid);
+		for (i = 0; i < txq->nb_tx_desc; ++i) {
+			printf("\t desc-index:%d: dest-addr:%lx, src-addr:%lx,"
+					" valid:%d, eop:%d,sop:%d, length:%d\n",
+					i, ring_mm[i].dst_addr,
+					ring_mm[i].src_addr,
+					ring_mm[i].dv,
+					ring_mm[i].eop,
+					ring_mm[i].sop,
+					ring_mm[i].len);
+		}
+	}
+}
+
+void qdma_reset_rx_queue(struct qdma_rx_queue *rxq)
+{
+	uint32_t i;
+	uint32_t sz;
+
+	rxq->rx_tail = 0;
+	rxq->c2h_pidx = 0;
+	rxq->rx_cmpt_tail = 0;
+
+	/* Zero out HW ring memory, For MM Descriptor */
+	if (rxq->st_mode) {  /** if ST-mode **/
+		sz = rxq->cmpt_desc_len;
+		for (i = 0; i < (sz * rxq->nb_rx_cmpt_desc); i++)
+			((volatile char *)rxq->cmpt_ring)[i] = 0;
+
+		sz = sizeof(struct qdma_c2h_desc);
+		for (i = 0; i < (sz * rxq->nb_rx_desc); i++)
+			((volatile char *)rxq->rx_ring)[i] = 0;
+
+	} else {
+		sz = sizeof(struct qdma_mm_desc);
+		for (i = 0; i < (sz * rxq->nb_rx_desc); i++)
+			((volatile char *)rxq->rx_ring)[i] = 0;
+	}
+
+	/* Initialize SW ring entries */
+	for (i = 0; i < rxq->nb_rx_desc; i++)
+		rxq->sw_ring[i] = NULL;
+}
+
+void qdma_inv_rx_queues(struct rte_eth_dev *dev, uint32_t qid, uint32_t mode)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	struct queue_ind_prg *q_regs;
+	uint32_t ctxt_sel, reg_val;
+	uint32_t i, flag;
+	uint64_t bar_addr;
+
+	bar_addr = (uint64_t)qdma_dev->bar_addr[qdma_dev->config_bar_idx];
+	q_regs = (struct queue_ind_prg *)(bar_addr + QDMA_TRQ_SEL_IND +
+					  QDMA_IND_Q_PRG_OFF);
+
+	/** To clear the Queues **/
+	/** To clear the SW C2H Queues **/
+	ctxt_sel = (QDMA_CTXT_SEL_DESC_SW_C2H << CTXT_SEL_SHIFT_B) |
+		   (qid << QID_SHIFT_B) |
+		   (QDMA_CTXT_CMD_INV << OP_CODE_SHIFT_B);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+	flag = 1;
+	i = CONTEXT_PROG_POLL_COUNT;
+	while (flag && i) {
+		reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_cmd);
+		PMD_DRV_LOG(INFO, "SW C2H Clear cmd for queue-id:%d:"
+			    "reg_val:%x\n", qid, reg_val);
+		flag = reg_val & BUSY_BIT_MSK;
+		rte_delay_ms(CONTEXT_PROG_DELAY);
+		i--;
+	}
+	/** To clear the HW C2H Queues **/
+	ctxt_sel = (QDMA_CTXT_SEL_DESC_HW_C2H << CTXT_SEL_SHIFT_B) |
+		   (qid << QID_SHIFT_B) |
+		   (QDMA_CTXT_CMD_INV << OP_CODE_SHIFT_B);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+	flag = 1;
+	i = CONTEXT_PROG_POLL_COUNT;
+	while (flag && i) {
+		reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_cmd);
+		PMD_DRV_LOG(INFO, "HW C2H Clear cmd for queue-id:%d:"
+				"reg_val:%x\n", qid, reg_val);
+		flag = reg_val & BUSY_BIT_MSK;
+		rte_delay_ms(CONTEXT_PROG_DELAY);
+		i--;
+	}
+	if (mode) {  /** ST-mode **/
+		/** To clear the C2H prefetch context Queues **/
+		ctxt_sel = (QDMA_CTXT_SEL_PFTCH << CTXT_SEL_SHIFT_B) |
+			   (qid << QID_SHIFT_B) |
+			   (QDMA_CTXT_CMD_INV << OP_CODE_SHIFT_B);
+		qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+		flag = 1;
+		i = CONTEXT_PROG_POLL_COUNT;
+		while (flag && i) {
+			reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_cmd);
+			PMD_DRV_LOG(INFO, "HW C2H Clear cmd for queue-id:%d:"
+					"reg_val:%x\n", qid, reg_val);
+			flag = reg_val & BUSY_BIT_MSK;
+			rte_delay_ms(CONTEXT_PROG_DELAY);
+			i--;
+		}
+
+		/** To clear the C2H Completion Queues **/
+		ctxt_sel = (QDMA_CTXT_SEL_DESC_CMPT << CTXT_SEL_SHIFT_B) |
+			   (qid << QID_SHIFT_B) |
+			   (QDMA_CTXT_CMD_INV << OP_CODE_SHIFT_B);
+		qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+		flag = 1;
+		i = CONTEXT_PROG_POLL_COUNT;
+		while (flag && i) {
+			reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_cmd);
+			PMD_DRV_LOG(INFO, "HW C2H Clear cmd for queue-id:%d:"
+					"reg_val:%x\n", qid, reg_val);
+			flag = reg_val & BUSY_BIT_MSK;
+			rte_delay_ms(CONTEXT_PROG_DELAY);
+			i--;
+		}
+
+		/** To clear the C2H credit context Queues **/
+		ctxt_sel = (QDMA_CTXT_SEL_CR_C2H << CTXT_SEL_SHIFT_B) |
+			   (qid << QID_SHIFT_B) |
+			   (QDMA_CTXT_CMD_INV << OP_CODE_SHIFT_B);
+		qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+		flag = 1;
+		i = CONTEXT_PROG_POLL_COUNT;
+		while (flag && i) {
+			reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_cmd);
+			PMD_DRV_LOG(INFO, "C2H  creditsClear cmd for qid:%d:"
+					"reg_val:%x\n", qid, reg_val);
+			flag = reg_val & BUSY_BIT_MSK;
+			rte_delay_ms(CONTEXT_PROG_DELAY);
+			i--;
+		}
+	}
+}
+/**
+ * reset the Rx device queues.
+ *
+ * reset the device by clearing the Rx descriptors for all
+ * queues and device registers.
+ *
+ * @param dev
+ *   Pointer to Ethernet device structure.
+ *
+ * @return
+ *   Nothing.
+ */
+void qdma_reset_rx_queues(struct rte_eth_dev *dev, uint32_t qid, uint32_t mode)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	struct queue_ind_prg *q_regs;
+	uint32_t ctxt_sel, reg_val;
+	uint32_t i, flag;
+	uint64_t bar_addr;
+
+	bar_addr = (uint64_t)qdma_dev->bar_addr[qdma_dev->config_bar_idx];
+	q_regs = (struct queue_ind_prg *)(bar_addr + QDMA_TRQ_SEL_IND +
+					  QDMA_IND_Q_PRG_OFF);
+
+	/** To clear the Queues **/
+	/** To clear the SW C2H Queues **/
+	ctxt_sel = (QDMA_CTXT_SEL_DESC_SW_C2H << CTXT_SEL_SHIFT_B) |
+		   (qid << QID_SHIFT_B) |
+		   (QDMA_CTXT_CMD_CLR << OP_CODE_SHIFT_B);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+	flag = 1;
+	i = CONTEXT_PROG_POLL_COUNT;
+	while (flag && i) {
+		reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_cmd);
+		PMD_DRV_LOG(INFO, "SW C2H Clear cmd for queue-id:%d:"
+			    "reg_val:%x\n", qid, reg_val);
+		flag = reg_val & BUSY_BIT_MSK;
+		rte_delay_ms(CONTEXT_PROG_DELAY);
+		i--;
+	}
+	/** To clear the HW C2H Queues **/
+	ctxt_sel = (QDMA_CTXT_SEL_DESC_HW_C2H << CTXT_SEL_SHIFT_B) |
+		   (qid << QID_SHIFT_B) |
+		   (QDMA_CTXT_CMD_CLR << OP_CODE_SHIFT_B);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+	flag = 1;
+	i = CONTEXT_PROG_POLL_COUNT;
+	while (flag && i) {
+		reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_cmd);
+		PMD_DRV_LOG(INFO, "HW C2H Clear cmd for queue-id:%d:"
+				"reg_val:%x\n", qid, reg_val);
+		flag = reg_val & BUSY_BIT_MSK;
+		rte_delay_ms(CONTEXT_PROG_DELAY);
+		i--;
+	}
+	if (mode) {  /** ST-mode **/
+		/** To clear the C2H prefetch context Queues **/
+		ctxt_sel = (QDMA_CTXT_SEL_PFTCH << CTXT_SEL_SHIFT_B) |
+			   (qid << QID_SHIFT_B) |
+			   (QDMA_CTXT_CMD_CLR << OP_CODE_SHIFT_B);
+		qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+		flag = 1;
+		i = CONTEXT_PROG_POLL_COUNT;
+		while (flag && i) {
+			reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_cmd);
+			PMD_DRV_LOG(INFO, "HW C2H Clear cmd for queue-id:%d:"
+					"reg_val:%x\n", qid, reg_val);
+			flag = reg_val & BUSY_BIT_MSK;
+			rte_delay_ms(CONTEXT_PROG_DELAY);
+			i--;
+		}
+
+		/** To clear the C2H Completion Queues **/
+		ctxt_sel = (QDMA_CTXT_SEL_DESC_CMPT << CTXT_SEL_SHIFT_B) |
+			   (qid << QID_SHIFT_B) |
+			   (QDMA_CTXT_CMD_CLR << OP_CODE_SHIFT_B);
+		qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+		flag = 1;
+		i = CONTEXT_PROG_POLL_COUNT;
+		while (flag && i) {
+			reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_cmd);
+			PMD_DRV_LOG(INFO, "HW C2H Clear cmd for queue-id:%d:"
+					"reg_val:%x\n", qid, reg_val);
+			flag = reg_val & BUSY_BIT_MSK;
+			rte_delay_ms(CONTEXT_PROG_DELAY);
+			i--;
+		}
+
+		/** To clear the C2H credit context Queues **/
+		ctxt_sel = (QDMA_CTXT_SEL_CR_C2H << CTXT_SEL_SHIFT_B) |
+			   (qid << QID_SHIFT_B) |
+			   (QDMA_CTXT_CMD_CLR << OP_CODE_SHIFT_B);
+		qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+		flag = 1;
+		i = CONTEXT_PROG_POLL_COUNT;
+		while (flag && i) {
+			reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_cmd);
+			PMD_DRV_LOG(INFO, "C2H  creditsClear cmd for qid:%d:"
+					"reg_val:%x\n", qid, reg_val);
+			flag = reg_val & BUSY_BIT_MSK;
+			rte_delay_ms(CONTEXT_PROG_DELAY);
+			i--;
+		}
+	}
+}
+
+int qdma_start_rx_queue(struct qdma_rx_queue *rxq)
+{
+	struct rte_mbuf *mb;
+	void *obj = NULL;
+	uint64_t phys_addr;
+	uint16_t i;
+	struct qdma_c2h_desc *rx_ring_st = NULL;
+
+	/* allocate new buffers for the Rx descriptor ring */
+	if (rxq->st_mode) {  /** ST-mode **/
+		rx_ring_st = (struct qdma_c2h_desc *)rxq->rx_ring;
+#ifdef DUMP_MEMPOOL_USAGE_STATS
+		PMD_DRV_LOG(INFO, "%s(): %d: queue id %d, mbuf_avail_count =%d,"
+				"mbuf_in_use_count = %d",
+				__func__, __LINE__, rxq->queue_id,
+				rte_mempool_avail_count(rxq->mb_pool),
+				rte_mempool_in_use_count(rxq->mb_pool));
+#endif //DUMP_MEMPOOL_USAGE_STATS
+		for (i = 0; i < (rxq->nb_rx_desc - 1); i++) {
+			if (rte_mempool_get(rxq->mb_pool, &obj) != 0) {
+				PMD_DRV_LOG(ERR, "qdma-start-rx-queue(): "
+						"rte_mempool_get: failed");
+				goto fail;
+			}
+
+			mb = obj;
+			phys_addr = (uint64_t)mb->buf_physaddr +
+				     RTE_PKTMBUF_HEADROOM;
+
+			mb->data_off = RTE_PKTMBUF_HEADROOM;
+			rxq->sw_ring[i] = mb;
+			rx_ring_st[i].dst_addr = phys_addr;
+		}
+#ifdef DUMP_MEMPOOL_USAGE_STATS
+		PMD_DRV_LOG(INFO, "%s(): %d: qid %d, mbuf_avail_count = %d,"
+				"mbuf_in_use_count = %d",
+				__func__, __LINE__, rxq->queue_id,
+				rte_mempool_avail_count(rxq->mb_pool),
+				rte_mempool_in_use_count(rxq->mb_pool));
+#endif //DUMP_MEMPOOL_USAGE_STATS
+	}
+
+	/* initialize tail */
+	rxq->rx_tail = 0;
+	rxq->c2h_pidx = 0;
+	rxq->rx_cmpt_tail = 0;
+
+	return 0;
+fail:
+	return -ENOMEM;
+}
+
+/**
+ * Start the Rx device queues.
+ *
+ * Start the device by configuring the Rx descriptors for all
+ * the queues and device registers.
+ *
+ * @param dev
+ *   Pointer to Ethernet device structure.
+ *
+ * @return
+ *   0 on success, negative errno value on failure.
+ */
+
+int qdma_queue_ctxt_rx_prog(struct rte_eth_dev *dev, uint32_t qid,
+				uint32_t mode, uint8_t en_prefetch,
+				uint32_t ringszidx, uint32_t cmpt_ringszidx,
+				uint32_t bufszidx, uint32_t threshidx,
+				uint32_t timeridx, uint32_t triggermode,
+				uint16_t func_id, uint64_t phys_addr,
+				uint64_t cmpt_phys_addr, uint8_t cmpt_desc_fmt,
+				uint8_t en_bypass, uint8_t en_bypass_prefetch,
+				uint8_t bypass_desc_sz_idx,
+				uint8_t dis_overflow_check)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	struct queue_ind_prg *q_regs;
+	uint64_t bar_addr;
+	uint32_t reg_val, ctxt_sel;
+	uint16_t flag, i;
+
+	bar_addr = (uint64_t)qdma_dev->bar_addr[qdma_dev->config_bar_idx];
+	q_regs = (struct queue_ind_prg *)(bar_addr + QDMA_TRQ_SEL_IND +
+					  QDMA_IND_Q_PRG_OFF);
+
+	/* C2H Queue initialization */
+	reg_val = (func_id << SW_DESC_CNTXT_FUNC_ID_SHIFT);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_data[0], reg_val);
+	reg_val = (SW_DESC_CNTXT_WB_EN << SW_DESC_CNTXT_WB_EN_SHIFT_B) |
+			(ringszidx << SW_DESC_CNTXT_RING_SIZE_ID_SHIFT) |
+			(SW_DESC_CNTXT_QUEUE_ENABLE <<
+			 SW_DESC_CNTXT_QUEUE_EN_SHIFT);
+
+	if (mode) {  /** ST-mode **/
+		if (en_bypass &&
+		    bypass_desc_sz_idx == SW_DESC_CNTXT_64B_BYPASS_DMA)
+			reg_val =  reg_val | (bypass_desc_sz_idx <<
+						SW_DESC_CNTXT_DESC_SZ_SHIFT);
+		else
+			reg_val = reg_val | (SW_DESC_CNTXT_C2H_STREAM_DMA <<
+						SW_DESC_CNTXT_DESC_SZ_SHIFT);
+
+		reg_val = reg_val | (en_bypass << SW_DESC_CNTXT_BYPASS_SHIFT) |
+			  (SW_DESC_CNTXT_FETCH_CREDIT_EN <<
+			   SW_DESC_CNTXT_FETCH_CREDIT_EN_SHIFT);
+	} else {
+		if (en_bypass &&
+			bypass_desc_sz_idx == SW_DESC_CNTXT_64B_BYPASS_DMA)
+			reg_val = reg_val | (bypass_desc_sz_idx <<
+						  SW_DESC_CNTXT_DESC_SZ_SHIFT) |
+					(SW_DESC_CNTXT_IS_MM <<
+					 SW_DESC_CNTXT_IS_MM_SHIFT);
+		else
+			reg_val = reg_val | (SW_DESC_CNTXT_MEMORY_MAP_DMA <<
+						  SW_DESC_CNTXT_DESC_SZ_SHIFT) |
+					(SW_DESC_CNTXT_IS_MM <<
+						 SW_DESC_CNTXT_IS_MM_SHIFT);
+
+		reg_val = reg_val |  (en_bypass << SW_DESC_CNTXT_BYPASS_SHIFT) |
+			 (SW_DESC_CNTXT_WBI_INTERVAL <<
+			  SW_DESC_CNTXT_WBI_INTERVAL_SHIFT) |
+			 (SW_DESC_CNTXT_WBI_CHK <<
+			  SW_DESC_CNTXT_WBI_CHK_SHIFT);
+	}
+
+	qdma_write_reg((uint64_t)&q_regs->ctxt_data[1], reg_val);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_data[2],
+				rte_cpu_to_le_32(phys_addr & MASK_32BIT));
+	qdma_write_reg((uint64_t)&q_regs->ctxt_data[3],
+				rte_cpu_to_le_32(phys_addr >> 32));
+	qdma_write_reg((uint64_t)&q_regs->ctxt_data[4], 0);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_mask[0], MASK_32BIT);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_mask[1], MASK_32BIT);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_mask[2], MASK_32BIT);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_mask[3], MASK_32BIT);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_mask[4], MASK_32BIT);
+	ctxt_sel = (QDMA_CTXT_SEL_DESC_SW_C2H << CTXT_SEL_SHIFT_B) |
+				(qid << QID_SHIFT_B) |
+				(QDMA_CTXT_CMD_WR << OP_CODE_SHIFT_B);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+
+	flag = 1;
+	i = CONTEXT_PROG_POLL_COUNT;
+	while (flag && i) {
+		reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_cmd);
+		PMD_DRV_LOG(INFO, " Read cmd for queue-id:%d: reg_val:%x\n",
+					qid, reg_val);
+		flag = reg_val & BUSY_BIT_MSK;
+		rte_delay_ms(CONTEXT_PROG_DELAY);
+		i--;
+	}
+	if (flag) {
+		PMD_DRV_LOG(ERR, "Error: Busy on queue-id:%d: "
+				"initailization with cmd reg_val:%x\n",
+						 qid, reg_val);
+		goto fail;
+	}
+
+#ifdef RTE_LIBRTE_QDMA_DEBUG_DRIVER
+	/** To read the Queue **/
+	ctxt_sel = (QDMA_CTXT_SEL_DESC_SW_C2H << CTXT_SEL_SHIFT_B) |
+			(qid << QID_SHIFT_B) |
+			(QDMA_CTXT_CMD_RD << OP_CODE_SHIFT_B);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+
+	for (i = 0; i < 5; i++) {
+		reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_data[i]);
+		PMD_DRV_LOG(INFO, " Read context-data on queue-id:%d,"
+				" idx:%d:reg_val:%x\n", qid, i, reg_val);
+	/* TO-DO: Need to verify the Queue ctxt-data and if Queue has
+	 * any errors, then return -1. **/
+	}
+#endif //RTE_LIBRTE_QDMA_DEBUG_DRIVER
+
+	/* C2H Prefetch & Completion context initialization */
+	if (mode) {  /** ST-mode **/
+		/** C2H Prefetch Context **/
+		qdma_write_reg((uint64_t)&q_regs->ctxt_data[0],
+				(en_prefetch << PREFETCH_EN_SHIFT) |
+				(bufszidx << BUFF_SIZE_INDEX_SHIFT) |
+				(en_bypass_prefetch << PREFETCH_BYPASS_SHIFT));
+		qdma_write_reg((uint64_t)&q_regs->ctxt_data[1],
+				(VALID_CNTXT << VALID_CNTXT_SHIFT));
+		qdma_write_reg((uint64_t)&q_regs->ctxt_data[2], 0);
+		qdma_write_reg((uint64_t)&q_regs->ctxt_data[3], 0);
+		qdma_write_reg((uint64_t)&q_regs->ctxt_mask[0], MASK_32BIT);
+		qdma_write_reg((uint64_t)&q_regs->ctxt_mask[1], MASK_32BIT);
+		qdma_write_reg((uint64_t)&q_regs->ctxt_mask[2], MASK_0BIT);
+		qdma_write_reg((uint64_t)&q_regs->ctxt_mask[3], MASK_0BIT);
+		ctxt_sel = (QDMA_CTXT_SEL_PFTCH << CTXT_SEL_SHIFT_B) |
+				(qid << QID_SHIFT_B) |
+				(QDMA_CTXT_CMD_WR << OP_CODE_SHIFT_B);
+		qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+
+		i = CONTEXT_PROG_POLL_COUNT;
+		flag = 1;
+		while (flag && i) {
+			reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_cmd);
+			PMD_DRV_LOG(INFO, " Read cmd for queue-id:%d:"
+					"reg_val:%x\n", qid, reg_val);
+			flag = reg_val & BUSY_BIT_MSK;
+			rte_delay_ms(CONTEXT_PROG_DELAY);
+			i--;
+		}
+		if (flag) {
+			PMD_DRV_LOG(ERR, "Error: Busy on queue-id:%d:"
+					" C2H Prefetch initailization with cmd"
+					" reg_val:%x\n", qid, reg_val);
+			goto fail;
+		}
+
+#ifdef RTE_LIBRTE_QDMA_DEBUG_DRIVER
+		/** To read the Queue **/
+		ctxt_sel = (QDMA_CTXT_SEL_PFTCH << CTXT_SEL_SHIFT_B) |
+			   (qid << QID_SHIFT_B) |
+			   (QDMA_CTXT_CMD_RD << OP_CODE_SHIFT_B);
+		qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+
+		for (i = 0; i < NUM_CONTEXT_REGS; i++) {
+			reg_val =
+				qdma_read_reg((uint64_t)&q_regs->ctxt_data[i]);
+			PMD_DRV_LOG(INFO, " Read context-data C2H Prefetch on "
+					"queue-id:%d, idx:%d:reg_val:%x\n",
+							qid, i, reg_val);
+		}
+#endif //RTE_LIBRTE_QDMA_DEBUG_DRIVER
+
+		/** C2H Completion Context **/
+		qdma_write_reg((uint64_t)&q_regs->ctxt_data[0],
+					(CMPT_CNTXT_EN_STAT_DESC <<
+					 CMPT_CNTXT_EN_STAT_DESC_SHIFT) |
+					(CMPT_CNTXT_COLOR_BIT <<
+					 CMPT_CNTXT_COLOR_BIT_SHIFT) |
+					((uint32_t)func_id <<
+					 CMPT_CNTXT_FUNC_ID_SHIFT) |
+					((uint64_t)threshidx <<
+					 CMPT_CNTXT_THRESHOLD_MODE_SHIFT) |
+					((uint64_t)timeridx <<
+					 CMPT_CNTXT_TIMER_INDEX_SHIFT) |
+					(triggermode <<
+					 CMPT_CNTXT_TRIGGER_MODE_SHIFT) |
+					((uint64_t)cmpt_ringszidx <<
+					 CMPT_CNTXT_RING_SIZE_INDEX_SHIFT));
+
+		qdma_write_reg((uint64_t)&q_regs->ctxt_data[1],
+				(rte_cpu_to_le_32(cmpt_phys_addr >> 6) &
+					 MASK_32BIT));
+
+		qdma_write_reg((uint64_t)&q_regs->ctxt_data[2],
+				(rte_cpu_to_le_32(cmpt_phys_addr >> 32) >> 6) |
+					((uint32_t)cmpt_desc_fmt <<
+					 CMPT_CNTXT_DESC_SIZE_SHIFT));
+
+		qdma_write_reg((uint64_t)&q_regs->ctxt_data[3],
+					(CMPT_CNTXT_CTXT_VALID <<
+					 CMPT_CNTXT_CTXT_VALID_SHIFT));
+		qdma_write_reg((uint64_t)&q_regs->ctxt_data[4],
+					(dis_overflow_check <<
+					 CMPT_CNTXT_OVF_CHK_DIS_SHIFT));
+		qdma_write_reg((uint64_t)&q_regs->ctxt_mask[0], MASK_32BIT);
+		qdma_write_reg((uint64_t)&q_regs->ctxt_mask[1], MASK_32BIT);
+		qdma_write_reg((uint64_t)&q_regs->ctxt_mask[2], MASK_32BIT);
+		qdma_write_reg((uint64_t)&q_regs->ctxt_mask[3], MASK_32BIT);
+		qdma_write_reg((uint64_t)&q_regs->ctxt_mask[4], MASK_32BIT);
+		ctxt_sel = (QDMA_CTXT_SEL_DESC_CMPT << CTXT_SEL_SHIFT_B) |
+					(qid << QID_SHIFT_B) |
+					(QDMA_CTXT_CMD_WR << OP_CODE_SHIFT_B);
+		qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+
+		i = CONTEXT_PROG_POLL_COUNT;
+		flag = 1;
+		while (flag && i) {
+			reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_cmd);
+			PMD_DRV_LOG(INFO, " Read cmd for queue-id:%d:"
+						" reg_val:%x\n", qid, reg_val);
+			flag = reg_val & BUSY_BIT_MSK;
+			rte_delay_ms(CONTEXT_PROG_DELAY);
+			i--;
+		}
+		if (flag) {
+			PMD_DRV_LOG(ERR, "Error: Busy on queue-id:%d: C2H CMPT"
+					" initailization with cmd reg_val:%x\n",
+					qid, reg_val);
+			goto fail;
+		}
+
+#ifdef RTE_LIBRTE_QDMA_DEBUG_DRIVER
+		/** To read the Queue **/
+		ctxt_sel = (QDMA_CTXT_SEL_DESC_CMPT << CTXT_SEL_SHIFT_B) |
+					(qid << QID_SHIFT_B) |
+					(QDMA_CTXT_CMD_RD << OP_CODE_SHIFT_B);
+		qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+
+		for (i = 0; i < NUM_CONTEXT_REGS; i++) {
+			reg_val = qdma_read_reg((uint64_t)&
+							q_regs->ctxt_data[i]);
+			PMD_DRV_LOG(INFO, " Read context-data C2H-CMPT on "
+					"queue-id:%d, idx:%d:reg_val:%x\n",
+						qid, i, reg_val);
+		}
+#endif //RTE_LIBRTE_QDMA_DEBUG_DRIVER
+	}
+
+	return 0;
+fail:
+	return -1;
+}
+
+/*
+ * Tx queue reset
+ */
+void qdma_reset_tx_queue(struct qdma_tx_queue *txq)
+{
+	uint32_t i;
+	uint32_t sz;
+
+	txq->tx_tail = 0;
+	txq->tx_fl_tail = 0;
+	if (txq->st_mode) {  /** ST-mode **/
+		sz = sizeof(struct qdma_h2c_desc);
+		/* Zero out HW ring memory */
+		for (i = 0; i < (sz * (txq->nb_tx_desc)); i++)
+			((volatile char *)txq->tx_ring)[i] = 0;
+	} else {
+		sz = sizeof(struct qdma_mm_desc);
+		/* Zero out HW ring memory */
+		for (i = 0; i < (sz * (txq->nb_tx_desc)); i++)
+			((volatile char *)txq->tx_ring)[i] = 0;
+	}
+
+	/* Initialize SW ring entries */
+	for (i = 0; i < txq->nb_tx_desc; i++)
+		txq->sw_ring[i] = NULL;
+}
+
+void qdma_inv_tx_queues(struct rte_eth_dev *dev, uint32_t qid, uint32_t mode)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	struct queue_ind_prg *q_regs;
+	uint64_t bar_addr;
+	uint32_t ctxt_sel, reg_val;
+	uint32_t i, flag;
+
+	bar_addr = (uint64_t)qdma_dev->bar_addr[qdma_dev->config_bar_idx];
+	q_regs = (struct queue_ind_prg *)(bar_addr + QDMA_TRQ_SEL_IND +
+					  QDMA_IND_Q_PRG_OFF);
+
+	/** To clear the SW H2C Queues **/
+	ctxt_sel = (QDMA_CTXT_SEL_DESC_SW_H2C << CTXT_SEL_SHIFT_B) |
+				(qid << QID_SHIFT_B) |
+				(QDMA_CTXT_CMD_INV << OP_CODE_SHIFT_B);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+	flag = 1;
+	i = CONTEXT_PROG_POLL_COUNT;
+	while (flag && i) {
+		reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_cmd);
+		PMD_DRV_LOG(INFO, "SW H2C Clear cmd for queue-id:%d:"
+				" reg_val:%x\n", qid, reg_val);
+		flag = reg_val & BUSY_BIT_MSK;
+		rte_delay_ms(CONTEXT_PROG_DELAY);
+		i--;
+	}
+	/** To clear the HW H2C Queues **/
+	ctxt_sel = (QDMA_CTXT_SEL_DESC_HW_H2C << CTXT_SEL_SHIFT_B) |
+				(qid << QID_SHIFT_B) |
+				(QDMA_CTXT_CMD_INV << OP_CODE_SHIFT_B);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+	flag = 1;
+	i = CONTEXT_PROG_POLL_COUNT;
+	while (flag && i) {
+		reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_cmd);
+		PMD_DRV_LOG(INFO, "HW H2C Clear cmd for queue-id:%d:"
+				" reg_val:%x\n", qid, reg_val);
+		flag = reg_val & BUSY_BIT_MSK;
+		rte_delay_ms(CONTEXT_PROG_DELAY);
+		i--;
+	}
+	if (mode) {  /** ST-mode **/
+		/** To clear the C2H credit context Queues **/
+		ctxt_sel = (QDMA_CTXT_SEL_CR_H2C << CTXT_SEL_SHIFT_B) |
+					(qid << QID_SHIFT_B) |
+					(QDMA_CTXT_CMD_INV << OP_CODE_SHIFT_B);
+		qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+		flag = 1;
+		i = CONTEXT_PROG_POLL_COUNT;
+		while (flag && i) {
+			reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_cmd);
+			PMD_DRV_LOG(INFO, "H2C Credits Clear cmd for queue-id:"
+					  "%d: reg_val:%x\n", qid, reg_val);
+			flag = reg_val & BUSY_BIT_MSK;
+			rte_delay_ms(CONTEXT_PROG_DELAY);
+			i--;
+		}
+	}
+}
+
+/**
+ * reset the Tx device queues.
+ *
+ * reset the device by clearing the Tx descriptors for
+ * all queues and device registers.
+ *
+ * @param dev
+ *   Pointer to Ethernet device structure.
+ *
+ * @return
+ *   Nothing.
+ */
+void qdma_reset_tx_queues(struct rte_eth_dev *dev, uint32_t qid, uint32_t mode)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	struct queue_ind_prg *q_regs;
+	uint64_t bar_addr;
+	uint32_t ctxt_sel, reg_val;
+	uint32_t i, flag;
+
+	bar_addr = (uint64_t)qdma_dev->bar_addr[qdma_dev->config_bar_idx];
+	q_regs = (struct queue_ind_prg *)(bar_addr + QDMA_TRQ_SEL_IND +
+					  QDMA_IND_Q_PRG_OFF);
+
+	/** To clear the SW H2C Queues **/
+	ctxt_sel = (QDMA_CTXT_SEL_DESC_SW_H2C << CTXT_SEL_SHIFT_B) |
+				(qid << QID_SHIFT_B) |
+				(QDMA_CTXT_CMD_CLR << OP_CODE_SHIFT_B);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+	flag = 1;
+	i = CONTEXT_PROG_POLL_COUNT;
+	while (flag && i) {
+		reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_cmd);
+		PMD_DRV_LOG(INFO, "SW H2C Clear cmd for queue-id:%d:"
+				" reg_val:%x\n", qid, reg_val);
+		flag = reg_val & BUSY_BIT_MSK;
+		rte_delay_ms(CONTEXT_PROG_DELAY);
+		i--;
+	}
+	/** To clear the HW H2C Queues **/
+	ctxt_sel = (QDMA_CTXT_SEL_DESC_HW_H2C << CTXT_SEL_SHIFT_B) |
+				(qid << QID_SHIFT_B) |
+				(QDMA_CTXT_CMD_CLR << OP_CODE_SHIFT_B);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+	flag = 1;
+	i = CONTEXT_PROG_POLL_COUNT;
+	while (flag && i) {
+		reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_cmd);
+		PMD_DRV_LOG(INFO, "HW H2C Clear cmd for queue-id:%d:"
+				" reg_val:%x\n", qid, reg_val);
+		flag = reg_val & BUSY_BIT_MSK;
+		rte_delay_ms(CONTEXT_PROG_DELAY);
+		i--;
+	}
+	if (mode) {  /** ST-mode **/
+		/** To clear the C2H credit context Queues **/
+		ctxt_sel = (QDMA_CTXT_SEL_CR_H2C << CTXT_SEL_SHIFT_B) |
+					(qid << QID_SHIFT_B) |
+					(QDMA_CTXT_CMD_CLR << OP_CODE_SHIFT_B);
+		qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+		flag = 1;
+		i = CONTEXT_PROG_POLL_COUNT;
+		while (flag && i) {
+			reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_cmd);
+			PMD_DRV_LOG(INFO, "H2C Credits Clear cmd for queue-id:"
+					  "%d: reg_val:%x\n", qid, reg_val);
+			flag = reg_val & BUSY_BIT_MSK;
+			rte_delay_ms(CONTEXT_PROG_DELAY);
+			i--;
+		}
+	}
+}
+
+void qdma_start_tx_queue(struct qdma_tx_queue *txq)
+{
+	/* initialize tail */
+	txq->tx_tail = 0;
+	*txq->tx_pidx = 0;
+}
+
+/**
+ * Start the tx device queues.
+ *
+ * Start the device by configuring the Tx descriptors for
+ * all the queues and device registers.
+ *
+ * @param dev
+ *   Pointer to Ethernet device structure.
+ *
+ * @return
+ *   Nothing.
+ */
+
+int qdma_queue_ctxt_tx_prog(struct rte_eth_dev *dev, uint32_t qid,
+				uint32_t mode, uint32_t ringszidx,
+				uint16_t func_id, uint64_t phys_addr,
+				uint8_t en_bypass, uint8_t bypass_desc_sz_idx)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	struct queue_ind_prg *q_regs;
+	uint32_t ctxt_sel, reg_val;
+	uint64_t bar_addr;
+	uint16_t flag, i;
+
+	bar_addr = (uint64_t)qdma_dev->bar_addr[qdma_dev->config_bar_idx];
+	q_regs = (struct queue_ind_prg *)(bar_addr + QDMA_TRQ_SEL_IND +
+			  QDMA_IND_Q_PRG_OFF);
+
+	reg_val = (func_id << SW_DESC_CNTXT_FUNC_ID_SHIFT);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_data[0], reg_val);
+
+	reg_val = (en_bypass << SW_DESC_CNTXT_BYPASS_SHIFT) |
+				(SW_DESC_CNTXT_WB_EN <<
+				 SW_DESC_CNTXT_WB_EN_SHIFT_B) |
+				(ringszidx <<
+				 SW_DESC_CNTXT_RING_SIZE_ID_SHIFT) |
+				(SW_DESC_CNTXT_WBI_INTERVAL <<
+				 SW_DESC_CNTXT_WBI_INTERVAL_SHIFT) |
+				(SW_DESC_CNTXT_WBI_CHK <<
+				 SW_DESC_CNTXT_WBI_CHK_SHIFT) |
+				(SW_DESC_CNTXT_QUEUE_ENABLE <<
+				 SW_DESC_CNTXT_QUEUE_EN_SHIFT);
+
+	if (en_bypass && bypass_desc_sz_idx == SW_DESC_CNTXT_64B_BYPASS_DMA)
+		reg_val = reg_val | (bypass_desc_sz_idx <<
+						SW_DESC_CNTXT_DESC_SZ_SHIFT);
+	else if (mode)   /** ST-mode **/
+		reg_val = reg_val | (SW_DESC_CNTXT_H2C_STREAM_DMA <<
+						SW_DESC_CNTXT_DESC_SZ_SHIFT);
+	else		 /* MM- mode*/
+		reg_val = reg_val | (SW_DESC_CNTXT_MEMORY_MAP_DMA <<
+						SW_DESC_CNTXT_DESC_SZ_SHIFT) |
+					(SW_DESC_CNTXT_IS_MM <<
+					 SW_DESC_CNTXT_IS_MM_SHIFT);
+
+	qdma_write_reg((uint64_t)&q_regs->ctxt_data[1], reg_val);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_data[2],
+					rte_cpu_to_le_32(phys_addr &
+								MASK_32BIT));
+	qdma_write_reg((uint64_t)&q_regs->ctxt_data[3],
+					rte_cpu_to_le_32(phys_addr >> 32));
+	qdma_write_reg((uint64_t)&q_regs->ctxt_data[4], 0);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_mask[0], MASK_32BIT);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_mask[1], MASK_32BIT);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_mask[2], MASK_32BIT);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_mask[3], MASK_32BIT);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_mask[4], MASK_32BIT);
+	ctxt_sel = (QDMA_CTXT_SEL_DESC_SW_H2C << CTXT_SEL_SHIFT_B) |
+				(qid << QID_SHIFT_B) |
+				(QDMA_CTXT_CMD_WR << OP_CODE_SHIFT_B);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+
+	flag = 1;
+	i = CONTEXT_PROG_POLL_COUNT;
+	while (flag && i) {
+		reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_cmd);
+		PMD_DRV_LOG(INFO, " Read cmd for queue-id:%d: reg_val:%x\n",
+					qid, reg_val);
+		flag = reg_val & BUSY_BIT_MSK;
+		rte_delay_ms(CONTEXT_PROG_DELAY);
+		i--;
+	}
+	if (flag) {
+		PMD_DRV_LOG(ERR, "H2C Error: Busy on queue-id:%d: "
+				"initailization with cmd reg_val:%x\n",
+				qid, reg_val);
+		goto fail;
+	}
+
+#ifdef RTE_LIBRTE_QDMA_DEBUG_DRIVER
+	/** To read the Queue **/
+	ctxt_sel = (QDMA_CTXT_SEL_DESC_SW_H2C << CTXT_SEL_SHIFT_B) |
+				(qid << QID_SHIFT_B) |
+				(QDMA_CTXT_CMD_RD << OP_CODE_SHIFT_B);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+
+	for (i = 0; i < NUM_CONTEXT_REGS; i++) {
+		reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_data[i]);
+		PMD_DRV_LOG(INFO, " Read context-data on queue-id:%d,"
+				"idx:%d:reg_val:%x\n", qid, i, reg_val);
+	}
+#endif //RTE_LIBRTE_QDMA_DEBUG_DRIVER
+	return 0;
+fail:
+	return -1;
+}
+
+/* Utility function to find index of an element in an array */
+int index_of_array(uint32_t *arr, uint32_t n, uint32_t element)
+{
+	int index = 0;
+
+	for (index = 0; (uint32_t)index < n; index++) {
+		if (*(arr + index) == element)
+			return index;
+	}
+	return -1;
+}
+
+static int qbase_check_handler(__rte_unused const char *key,
+					const char *value,  void *opaque)
+{
+	struct qdma_pci_dev *qdma_dev = (struct qdma_pci_dev *)opaque;
+	char *end = NULL;
+
+	PMD_DRV_LOG(INFO, "QDMA devargs queue base is: %s\n", value);
+	qdma_dev->queue_base =  (unsigned int)strtoul(value, &end, 10);
+	if (qdma_dev->queue_base >= QDMA_QUEUES_NUM_MAX) {
+		PMD_DRV_LOG(INFO, "QDMA devargs queue-base > max allowed\n");
+		return -1;
+	}
+
+	return 0;
+}
+
+static int pfetch_check_handler(__rte_unused const char *key,
+					const char *value,  void *opaque)
+{
+	struct qdma_pci_dev *qdma_dev = (struct qdma_pci_dev *)opaque;
+	char *end = NULL;
+
+	PMD_DRV_LOG(INFO, "QDMA devargs desc_prefetch is: %s\n", value);
+	qdma_dev->en_desc_prefetch = (uint8_t)strtoul(value, &end, 10);
+	if (qdma_dev->en_desc_prefetch > 1) {
+		PMD_DRV_LOG(INFO, "QDMA devargs prefetch should be 1 or 0,"
+						  " setting to 1.\n");
+		qdma_dev->en_desc_prefetch = 1;
+	}
+	return 0;
+}
+
+static int cmpt_desc_len_check_handler(__rte_unused const char *key,
+					const char *value,  void *opaque)
+{
+	struct qdma_pci_dev *qdma_dev = (struct qdma_pci_dev *)opaque;
+	char *end = NULL;
+
+	PMD_DRV_LOG(INFO, "QDMA devargs cmpt_desc_len is: %s\n", value);
+	qdma_dev->cmpt_desc_len =  (uint8_t)strtoul(value, &end, 10);
+	if (qdma_dev->cmpt_desc_len != CMPT_DESC_LEN_8B &&
+			qdma_dev->cmpt_desc_len != CMPT_DESC_LEN_16B &&
+			qdma_dev->cmpt_desc_len != CMPT_DESC_LEN_32B &&
+			qdma_dev->cmpt_desc_len != CMPT_DESC_LEN_64B) {
+		PMD_DRV_LOG(INFO, "QDMA devargs incorrect cmpt_desc_len = %d "
+						  "specified\n",
+						  qdma_dev->cmpt_desc_len);
+		return -1;
+	}
+
+	return 0;
+}
+
+static int trigger_mode_handler(__rte_unused const char *key,
+					const char *value,  void *opaque)
+{
+	struct qdma_pci_dev *qdma_dev = (struct qdma_pci_dev *)opaque;
+	char *end = NULL;
+
+	PMD_DRV_LOG(INFO, "QDMA devargs trigger mode: %s\n", value);
+	qdma_dev->trigger_mode =  (uint8_t)strtoul(value, &end, 10);
+
+	if (qdma_dev->trigger_mode > TRIG_MODE_MAX) {
+		qdma_dev->trigger_mode = TRIG_MODE_MAX;
+		PMD_DRV_LOG(INFO, "QDMA devargs trigger mode invalid,"
+						  "reset to default: %d\n",
+						  qdma_dev->trigger_mode);
+	}
+	return 0;
+}
+
+static int wb_accumulation_handler(__rte_unused const char *key,
+					const char *value,  void *opaque)
+{
+	struct qdma_pci_dev *qdma_dev = (struct qdma_pci_dev *)opaque;
+	char *end = NULL;
+
+	PMD_DRV_LOG(INFO, "QDMA devargs trigger mode: %s\n", value);
+	qdma_dev->wb_acc_int =  (uint8_t)strtoul(value, &end, 10);
+
+	if (qdma_dev->wb_acc_int > MAX_WB_ACC_INT) {
+		qdma_dev->wb_acc_int = DEFAULT_WB_ACC_INT;
+		PMD_DRV_LOG(INFO, "QDMA devargs write-back-accumulation "
+				"invalid, reset to default: %d\n",
+						  qdma_dev->wb_acc_int);
+	}
+	return 0;
+}
+
+static int config_bar_idx_handler(__rte_unused const char *key,
+					const char *value,  void *opaque)
+{
+	struct qdma_pci_dev *qdma_dev = (struct qdma_pci_dev *)opaque;
+	char *end = NULL;
+
+	PMD_DRV_LOG(INFO, "QDMA devargs trigger mode: %s\n", value);
+	qdma_dev->config_bar_idx =  (int)strtoul(value, &end, 10);
+
+	if (qdma_dev->config_bar_idx >= QDMA_BAR_NUM ||
+			qdma_dev->config_bar_idx < 0) {
+		PMD_DRV_LOG(INFO, "QDMA devargs config bar idx invalid: %d\n",
+				qdma_dev->config_bar_idx);
+		return -1;
+	}
+	return 0;
+}
+
+static int c2h_byp_mode_check_handler(__rte_unused const char *key,
+					const char *value,  void *opaque)
+{
+	struct qdma_pci_dev *qdma_dev = (struct qdma_pci_dev *)opaque;
+	char *end = NULL;
+
+	PMD_DRV_LOG(INFO, "QDMA devargs c2h_byp_mode is: %s\n", value);
+	qdma_dev->c2h_bypass_mode =  (uint8_t)strtoul(value, &end, 10);
+
+	if (qdma_dev->c2h_bypass_mode > C2H_BYPASS_MODE_MAX) {
+		PMD_DRV_LOG(INFO, "QDMA devargs incorrect "
+				"c2h_byp_mode= %d specified\n",
+						qdma_dev->c2h_bypass_mode);
+		return -1;
+	}
+
+	return 0;
+}
+
+static int h2c_byp_mode_check_handler(__rte_unused const char *key,
+					const char *value,  void *opaque)
+{
+	struct qdma_pci_dev *qdma_dev = (struct qdma_pci_dev *)opaque;
+	char *end = NULL;
+
+	PMD_DRV_LOG(INFO, "QDMA devargs h2c_byp_mode is: %s\n", value);
+	qdma_dev->h2c_bypass_mode =  (uint8_t)strtoul(value, &end, 10);
+
+	if (qdma_dev->h2c_bypass_mode > 1) {
+		PMD_DRV_LOG(INFO, "QDMA devargs incorrect"
+				" h2c_byp_mode =%d specified\n",
+					qdma_dev->h2c_bypass_mode);
+		return -1;
+	}
+
+	return 0;
+}
+
+/* Process the all devargs */
+int qdma_check_kvargs(struct rte_devargs *devargs,
+						struct qdma_pci_dev *qdma_dev)
+{
+	struct rte_kvargs *kvlist;
+	const char *qbase_key = "queue_base";
+	const char *pfetch_key = "desc_prefetch";
+	const char *cmpt_desc_len_key = "cmpt_desc_len";
+	const char *trigger_mode_key = "trigger_mode";
+	const char *wb_acc_int_key = "wb_acc_int";
+	const char *config_bar_key = "config_bar";
+	const char *c2h_byp_mode_key = "c2h_byp_mode";
+	const char *h2c_byp_mode_key = "h2c_byp_mode";
+	int ret = 0;
+
+	if (!devargs)
+		return 0;
+
+	kvlist = rte_kvargs_parse(devargs->args, NULL);
+	if (!kvlist)
+		return 0;
+
+	/* process the queue_base*/
+	if (rte_kvargs_count(kvlist, qbase_key)) {
+		ret = rte_kvargs_process(kvlist, qbase_key,
+						qbase_check_handler, qdma_dev);
+		if (ret) {
+			rte_kvargs_free(kvlist);
+			return ret;
+		}
+	}
+
+	/* process the desc_prefetch*/
+	if (rte_kvargs_count(kvlist, pfetch_key)) {
+		ret = rte_kvargs_process(kvlist, pfetch_key,
+						pfetch_check_handler, qdma_dev);
+		if (ret) {
+			rte_kvargs_free(kvlist);
+			return ret;
+		}
+	}
+
+	/* process the cmpt_desc_len*/
+	if (rte_kvargs_count(kvlist, cmpt_desc_len_key)) {
+		ret = rte_kvargs_process(kvlist, cmpt_desc_len_key,
+					 cmpt_desc_len_check_handler, qdma_dev);
+		if (ret) {
+			rte_kvargs_free(kvlist);
+			return ret;
+		}
+	}
+
+	/* process the trigger_mode*/
+	if (rte_kvargs_count(kvlist, trigger_mode_key)) {
+		ret = rte_kvargs_process(kvlist, trigger_mode_key,
+						trigger_mode_handler, qdma_dev);
+		if (ret) {
+			rte_kvargs_free(kvlist);
+			return ret;
+		}
+	}
+
+	/* process the writeback accumalation*/
+	if (rte_kvargs_count(kvlist, wb_acc_int_key)) {
+		ret = rte_kvargs_process(kvlist, wb_acc_int_key,
+					  wb_accumulation_handler, qdma_dev);
+		if (ret) {
+			rte_kvargs_free(kvlist);
+			return ret;
+		}
+	}
+
+	/* process the config bar*/
+	if (rte_kvargs_count(kvlist, config_bar_key)) {
+		ret = rte_kvargs_process(kvlist, config_bar_key,
+					   config_bar_idx_handler, qdma_dev);
+		if (ret) {
+			rte_kvargs_free(kvlist);
+			return ret;
+		}
+	}
+
+	/* process c2h_byp_mode*/
+	if (rte_kvargs_count(kvlist, c2h_byp_mode_key)) {
+		ret = rte_kvargs_process(kvlist, c2h_byp_mode_key,
+					  c2h_byp_mode_check_handler, qdma_dev);
+		if (ret) {
+			rte_kvargs_free(kvlist);
+			return ret;
+		}
+	}
+
+	/* process h2c_byp_mode*/
+	if (rte_kvargs_count(kvlist, h2c_byp_mode_key)) {
+		ret = rte_kvargs_process(kvlist, h2c_byp_mode_key,
+					  h2c_byp_mode_check_handler, qdma_dev);
+		if (ret) {
+			rte_kvargs_free(kvlist);
+			return ret;
+		}
+	}
+
+	rte_kvargs_free(kvlist);
+	return ret;
+}
+
+int qdma_identify_bars(struct rte_eth_dev *dev)
+{
+	uint64_t baseaddr;
+	int      bar_len, i, j;
+	uint32_t xlnx_id_mask = 0xffff0000;
+	uint64_t reg_val;
+	uint32_t mask = 1;
+	struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
+	struct qdma_pci_dev *dma_priv;
+
+	dma_priv = (struct qdma_pci_dev *)dev->data->dev_private;
+
+	/* Config bar */
+	bar_len = pci_dev->mem_resource[dma_priv->config_bar_idx].len;
+	if (bar_len) {
+		baseaddr = (uint64_t)
+			   pci_dev->mem_resource[dma_priv->config_bar_idx].addr;
+
+		if (dma_priv->is_vf)
+			reg_val = qdma_read_reg((uint64_t)baseaddr +
+							QDMA_VF_RTL_VER);
+		else
+			reg_val = qdma_read_reg((uint64_t)baseaddr);
+
+		if ((reg_val & xlnx_id_mask) != QDMA_CONFIG_BLOCK_ID) {
+			PMD_DRV_LOG(INFO, "QDMA config BAR index :%d invalid",
+						dma_priv->config_bar_idx);
+			return -1;
+		}
+	} else {
+		PMD_DRV_LOG(INFO, "QDMA config BAR index :%d is not enabled",
+					dma_priv->config_bar_idx);
+		return -1;
+	}
+
+	/* Find user bar*/
+	if (dma_priv->is_vf) {
+		reg_val = qdma_read_reg((uint64_t)baseaddr +
+						QDMA_GLBL2_VF_BARLITE_EXT);
+		reg_val = reg_val & 0x3F;
+
+	} else {
+		reg_val = qdma_read_reg((uint64_t)baseaddr +
+						QDMA_GLBL2_PF_BARLITE_EXT);
+		reg_val = (reg_val >> (6 * PCI_FUNC(dma_priv->pf))) & 0x3F;
+	}
+
+	for (j = 0 ; j < QDMA_BAR_NUM; j++) {
+		if (reg_val & mask) {
+			if (pci_dev->mem_resource[j].len) {
+				dma_priv->user_bar_idx = j;
+				break;
+			}
+		}
+		mask <<= 1;
+	}
+
+	/* Find bypass bar*/
+	for (i = 0; i < QDMA_BAR_NUM; i++) {
+		bar_len = pci_dev->mem_resource[i].len;
+		if (!bar_len) /* Bar not enabled ? */
+			continue;
+		if (dma_priv->user_bar_idx != i &&
+				dma_priv->config_bar_idx != i) {
+			dma_priv->bypass_bar_idx = i;
+			break;
+		}
+	}
+
+	PMD_DRV_LOG(INFO, "QDMA config bar idx :%d\n",
+			dma_priv->config_bar_idx);
+	PMD_DRV_LOG(INFO, "QDMA user bar idx :%d\n", dma_priv->user_bar_idx);
+	PMD_DRV_LOG(INFO, "QDMA bypass bar idx :%d\n",
+			dma_priv->bypass_bar_idx);
+
+	return 0;
+}
+int qdma_get_hw_version(struct rte_eth_dev *dev)
+{
+	uint64_t baseaddr, reg_val;
+	struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
+	struct qdma_pci_dev *dma_priv;
+
+	dma_priv = (struct qdma_pci_dev *)dev->data->dev_private;
+	baseaddr = ((uint64_t)
+			pci_dev->mem_resource[dma_priv->config_bar_idx].addr);
+
+	if (dma_priv->is_vf) {
+		reg_val = qdma_read_reg((uint64_t)baseaddr + QDMA_VF_RTL_VER);
+		dma_priv->rtl_version = (reg_val & VF_RTL_VERSION_MASK) >>
+						VF_RTL_VERSION_SHIFT;
+		dma_priv->vivado_rel = (reg_val & VF_VIVADO_RELEASE_ID_MASK) >>
+						VF_VIVADO_RELEASE_ID_SHIFT;
+		dma_priv->everest_ip = (reg_val & VF_EVEREST_IP_MASK) >>
+						VF_EVEREST_IP_SHIFT;
+
+	} else {
+		reg_val = qdma_read_reg((uint64_t)baseaddr + QDMA_PF_RTL_VER);
+		dma_priv->rtl_version = (reg_val & PF_RTL_VERSION_MASK) >>
+						 PF_RTL_VERSION_SHIFT;
+		dma_priv->vivado_rel = (reg_val & PF_VIVADO_RELEASE_ID_MASK) >>
+						PF_VIVADO_RELEASE_ID_SHIFT;
+		dma_priv->everest_ip = (reg_val & PF_EVEREST_IP_MASK) >>
+						PF_EVEREST_IP_SHIFT;
+	}
+
+	if (dma_priv->rtl_version == 0)
+		PMD_DRV_LOG(INFO, "QDMA RTL VERSION : RTL-1\n");
+	else if (dma_priv->rtl_version == 1)
+		PMD_DRV_LOG(INFO, "QDMA RTL VERSION : RTL-2\n");
+
+	if (dma_priv->vivado_rel == 0)
+		PMD_DRV_LOG(INFO, "QDMA VIVADO RELEASE ID : 2018.3\n");
+
+	if (dma_priv->everest_ip == 0)
+		PMD_DRV_LOG(INFO, "QDMA IP : SOFT-IP\n");
+	else
+		PMD_DRV_LOG(INFO, "QDMA IP : HARD-IP\n");
+	return 0;
+}
diff --git a/QDMA/DPDK/drivers/net/qdma/qdma_devops.c b/QDMA/DPDK/drivers/net/qdma/qdma_devops.c
new file mode 100644
index 0000000..371fbc2
--- /dev/null
+++ b/QDMA/DPDK/drivers/net/qdma/qdma_devops.c
@@ -0,0 +1,1447 @@
+/*-
+ *   BSD LICENSE
+ *
+ *   Copyright(c) 2017-2018 Xilinx, Inc. All rights reserved.
+ *
+ *   Redistribution and use in source and binary forms, with or without
+ *   modification, are permitted provided that the following conditions
+ *   are met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in
+ *       the documentation and/or other materials provided with the
+ *       distribution.
+ *     * Neither the name of the copyright holder nor the names of its
+ *       contributors may be used to endorse or promote products derived
+ *       from this software without specific prior written permission.
+ *
+ *   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ *   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ *   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ *   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ *   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ *   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ *   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ *   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include <stdint.h>
+#include <sys/mman.h>
+#include <sys/fcntl.h>
+#include <rte_memzone.h>
+#include <rte_string_fns.h>
+#include <rte_ethdev_pci.h>
+#include <rte_malloc.h>
+#include <rte_dev.h>
+#include <rte_pci.h>
+#include <rte_ether.h>
+#include <rte_ethdev.h>
+#include <rte_alarm.h>
+#include <rte_cycles.h>
+#include <unistd.h>
+#include <string.h>
+
+#include "qdma.h"
+#include "qdma_regs.h"
+
+uint32_t g_ring_sz[QDMA_GLOBAL_CSR_ARRAY_SZ];
+uint32_t g_c2h_cnt_th[QDMA_GLOBAL_CSR_ARRAY_SZ];
+uint32_t g_c2h_buf_sz[QDMA_GLOBAL_CSR_ARRAY_SZ];
+uint32_t g_c2h_timer_cnt[QDMA_GLOBAL_CSR_ARRAY_SZ];
+
+int get_param(struct rte_eth_dev *dev, enum get_param_type param,
+		void *ret_param)
+{
+	struct qdma_pci_dev *dma_priv = dev->data->dev_private;
+
+	if (!ret_param)
+		return -1;
+
+	switch (param) {
+	case CONFIG_BAR:
+		*((int *)ret_param) = dma_priv->config_bar_idx;
+		break;
+	case USER_BAR:
+		*((int *)ret_param) = dma_priv->user_bar_idx;
+		break;
+	case BYPASS_BAR:
+		*((int *)ret_param) = dma_priv->bypass_bar_idx;
+		break;
+	}
+	return 0;
+}
+
+
+int get_queue_param(struct rte_eth_dev *dev, uint32_t qid,
+			enum get_queue_param_type param, void *ret_param)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	struct qdma_rx_queue *rxq;
+
+	if (qid >= qdma_dev->qsets_en) {
+		PMD_DRV_LOG(ERR, "Invalid Q-id passed qid %d max en_qid %d\n",
+				qid, qdma_dev->qsets_en);
+		return -1;
+	}
+
+	if (!ret_param) {
+		PMD_DRV_LOG(ERR, "Invalid ret_param for qid %d\n", qid);
+		return -1;
+	}
+	switch (param) {
+	/* Use this param after queue setup is done, and before queue start*/
+	case CHECK_DUMP_IMMEDIATE_DATA:
+		if (qid >= dev->data->nb_rx_queues) {
+			PMD_DRV_LOG(ERR, "Invalid RX Queue id passed for "
+					"DUMP_IMMEDIATE_DATA\n");
+			return -1;
+		}
+		rxq = (struct qdma_rx_queue *)dev->data->rx_queues[qid];
+		*((int *)ret_param) = rxq->dump_immediate_data;
+		break;
+	}
+	return 0;
+}
+
+int update_param(struct rte_eth_dev *dev, enum dev_param_type param,
+							uint16_t value)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+
+	switch (param) {
+	case QUEUE_BASE:
+		if (value > qdma_dev->qsets_max) {
+			PMD_DRV_LOG(ERR, "Invalid Queue base passed\n");
+			return -1;
+		}
+		qdma_dev->queue_base = value;
+		break;
+	case TIMER_COUNT:
+		qdma_dev->timer_count = value;
+		break;
+	case TRIGGER_MODE:
+		if (value > TRIG_MODE_MAX) {
+			PMD_DRV_LOG(ERR, "Invalid Trigger mode passed\n");
+			return -1;
+		}
+		qdma_dev->trigger_mode = value;
+		break;
+	default:
+		PMD_DRV_LOG(ERR, "Invalid param %x specified\n", param);
+		break;
+	}
+	return 0;
+}
+
+int update_queue_param(struct rte_eth_dev *dev, uint32_t qid,
+				enum queue_param_type param, uint32_t value)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	struct qdma_rx_queue *rxq;
+	struct qdma_tx_queue *txq;
+
+	if (qid >= qdma_dev->qsets_en) {
+		PMD_DRV_LOG(ERR, "Invalid Queue id passed\n");
+		return -1;
+	}
+
+	switch (param) {
+	case QUEUE_MODE:
+		if (value > STREAMING_MODE) {
+			PMD_DRV_LOG(ERR, "Invalid Queue mode passed\n");
+			return -1;
+		}
+		qdma_dev->q_info[qid].queue_mode = value;
+		break;
+
+	case DIS_OVERFLOW_CHECK: /* Update this param after queue-setup issued*/
+		if (qid >= dev->data->nb_rx_queues) {
+			PMD_DRV_LOG(ERR, "Invalid RX Queue id passed for "
+					"DIS_OVERFLOW_CHECK\n");
+			return -1;
+		}
+		if (value > 1)
+			return -1;
+		rxq = (struct qdma_rx_queue *)dev->data->rx_queues[qid];
+		rxq->dis_overflow_check = value;
+		break;
+
+	case DUMP_IMMEDIATE_DATA: /*Update this param after queue-setup issued*/
+		if (qid >= dev->data->nb_rx_queues) {
+			PMD_DRV_LOG(ERR, "Invalid RX Queue id passed for "
+					"DUMP_IMMEDIATE_DATA\n");
+			return -1;
+		}
+		if (value > 1)
+			return -1;
+		rxq = (struct qdma_rx_queue *)dev->data->rx_queues[qid];
+		rxq->dump_immediate_data = value;
+		break;
+
+	case DESC_PREFETCH:
+		if (qid >= dev->data->nb_rx_queues) {
+			PMD_DRV_LOG(ERR, "Invalid RX Queue id passed for "
+					"DESC_PREFETCH\n");
+				return -1;
+		}
+		rxq = (struct qdma_rx_queue *)dev->data->rx_queues[qid];
+		rxq->en_prefetch = (value > 0) ? 1 : 0;
+		break;
+
+	case RX_BYPASS_MODE:
+		if (qid >= dev->data->nb_rx_queues) {
+			PMD_DRV_LOG(ERR, "Invalid RX Queue id passed for "
+					"RX_BYPASS_MODE\n");
+			return -1;
+		}
+		if (value > C2H_BYPASS_MODE_MAX) {
+			PMD_DRV_LOG(ERR, "Invalid Rx Bypass mode : %d\n",
+					value);
+			return -1;
+		}
+		qdma_dev->q_info[qid].rx_bypass_mode = value;
+		break;
+
+	case TX_BYPASS_MODE:
+		if (qid >= dev->data->nb_tx_queues) {
+			PMD_DRV_LOG(ERR, "Invalid TX Queue id passed for "
+					"TX_BYPASS_MODE\n");
+			return -1;
+		}
+		if (value > 1) {
+			PMD_DRV_LOG(ERR, "Invalid Tx Bypass mode : %d\n",
+					value);
+			return -1;
+		}
+		qdma_dev->q_info[qid].tx_bypass_mode = value;
+		break;
+
+	case RX_BYPASS_DESC_SIZE:
+		if (qid >= dev->data->nb_rx_queues) {
+			PMD_DRV_LOG(ERR, "Invalid RX Queue id passed for "
+					"RX_BYPASS_DESC_SIZE\n");
+			return -1;
+		}
+	/* Only 64byte descriptor size supported in 2018.3 Example Design*/
+		if (value  != 64)
+			return -1;
+		qdma_dev->q_info[qid].rx_bypass_desc_sz =
+			(enum bypass_desc_len)value;
+		break;
+
+	case TX_BYPASS_DESC_SIZE:
+		if (qid >= dev->data->nb_tx_queues) {
+			PMD_DRV_LOG(ERR, "Invalid TX Queue id passed "
+					"for TX_BYPASS_DESC_SIZE\n");
+			return -1;
+		}
+	/* Only 64byte descriptor size supported in 2018.3 Example Design*/
+		if (value  != 64)
+			return -1;
+		qdma_dev->q_info[qid].tx_bypass_desc_sz =
+			(enum bypass_desc_len)value;
+		break;
+
+	case TX_DST_ADDRESS:
+		if (qid >= dev->data->nb_tx_queues) {
+			PMD_DRV_LOG(ERR, "Invalid TX Queue id passed for  "
+					"TX_DST_ADDRESS\n");
+			return -1;
+		}
+		txq = (struct qdma_tx_queue *)dev->data->tx_queues[qid];
+		txq->ep_addr = value;
+		break;
+
+	case RX_SRC_ADDRESS:
+		if (qid >= dev->data->nb_rx_queues) {
+			PMD_DRV_LOG(ERR, "Invalid RX Queue id passed "
+					"for RX_SRC_ADDRESS\n");
+			return -1;
+		}
+		rxq = (struct qdma_rx_queue *)dev->data->rx_queues[qid];
+		rxq->ep_addr = value;
+		break;
+
+	case CMPT_DESC_SIZE:
+		if (qid >= dev->data->nb_rx_queues) {
+			PMD_DRV_LOG(ERR, "Invalid RX Queue id passed "
+					"for CMPT_DESC_SIZE\n");
+			return -1;
+		}
+		if (value != CMPT_DESC_LEN_8B &&
+			value != CMPT_DESC_LEN_16B &&
+			value != CMPT_DESC_LEN_32B &&
+			value != CMPT_DESC_LEN_64B)
+			return -1;
+		qdma_dev->q_info[qid].cmpt_desc_sz = value;
+		break;
+
+	default:
+		PMD_DRV_LOG(ERR, "Invalid param %x specified\n", param);
+		break;
+	}
+
+	return 0;
+}
+
+int qdma_set_fmap(struct qdma_pci_dev *qdma_dev, uint16_t devfn,
+			uint32_t q_base, uint32_t q_count)
+{
+	uint64_t bar_addr;
+#if FMAP_CNTXT
+	struct queue_ind_prg *q_regs;
+	uint32_t ctxt_sel;
+	uint16_t flag, i;
+#else
+	uint64_t fmap;
+#endif
+#if defined(RTE_LIBRTE_QDMA_DEBUG_DRIVER) || FMAP_CNTXT
+	uint64_t reg_val;
+#endif
+
+	bar_addr = (uint64_t)qdma_dev->bar_addr[qdma_dev->config_bar_idx];
+#if FMAP_CNTXT
+	q_regs = (struct queue_ind_prg *)(bar_addr + QDMA_TRQ_SEL_IND +
+				QDMA_IND_Q_PRG_OFF);
+
+	qdma_write_reg((uint64_t)&q_regs->ctxt_data[0], q_base);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_data[1], q_count);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_mask[0], MASK_32BIT);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_mask[1], MASK_32BIT);
+	ctxt_sel = (QDMA_CTXT_SEL_FMAP << CTXT_SEL_SHIFT_B) |
+				(devfn << QID_SHIFT_B) |
+				(QDMA_CTXT_CMD_WR << OP_CODE_SHIFT_B);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+
+	flag = 1;
+	i = CONTEXT_PROG_POLL_COUNT;
+	while (flag && i) {
+		reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_cmd);
+		PMD_DRV_LOG(INFO, " Read cmd for FMAP CTXT for device:%d: "
+				"reg_val:%lx\n", devfn, reg_val);
+		flag = reg_val & BUSY_BIT_MSK;
+		rte_delay_ms(CONTEXT_PROG_DELAY);
+		i--;
+	}
+	if (flag) {
+		PMD_DRV_LOG(ERR, "Error: Busy on device:%d: FMAP "
+				"initailization with cmd reg_val:%lx\n",
+				devfn, reg_val);
+		goto fail;
+	}
+#else
+	fmap = (uint64_t)(bar_addr + QDMA_TRQ_SEL_FMAP + devfn * 4);
+	qdma_write_reg((uint64_t)fmap, (q_count  << QID_MAX_SHIFT_B) |
+					(q_base & QID_BASE_MSK));
+#endif
+#ifdef RTE_LIBRTE_QDMA_DEBUG_DRIVER
+#if FMAP_CNTXT
+	ctxt_sel = (QDMA_CTXT_SEL_FMAP << CTXT_SEL_SHIFT_B) |
+			(devfn << QID_SHIFT_B) |
+			(QDMA_CTXT_CMD_RD << OP_CODE_SHIFT_B);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+	for (i = 0; i < 2; i++) {
+		reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_data[i]);
+		PMD_DRV_LOG(INFO, " FMAP CTXT for device :%d, idx:%d:"
+				"reg_val:%lx\n", devfn, i, reg_val);
+		/* TO-DO: Need to verify the Queue ctxt-data and
+		 * if Queue has any errors, then return -1. **/
+	}
+#else
+	reg_val = qdma_read_reg((uint64_t)fmap);
+	PMD_DRV_LOG(INFO, "Fmap for function id %d reg_val:0x%lx,"
+			" qid_max:%lu\n", devfn, reg_val,
+			((reg_val & QID_MAX_MSK) >> QID_MAX_SHIFT_B));
+#endif
+#endif
+	return 0;
+
+#if FMAP_CNTXT
+fail:
+	return -1;
+#endif
+}
+uint8_t qmda_get_desc_sz_idx(enum bypass_desc_len size)
+{
+	uint8_t ret;
+	switch (size) {
+	case BYPASS_DESC_LEN_8B:
+		ret = 0;
+		break;
+	case BYPASS_DESC_LEN_16B:
+		ret = 1;
+		break;
+	case BYPASS_DESC_LEN_32B:
+		ret = 2;
+		break;
+	case BYPASS_DESC_LEN_64B:
+		ret = 3;
+		break;
+	default:
+		/* Suppress compiler warnings*/
+		ret = 0;
+	}
+	return ret;
+}
+
+/**
+ * DPDK callback to configure a RX queue.
+ *
+ * @param dev
+ *   Pointer to Ethernet device structure.
+ * @param rx_queue_id
+ *   RX queue index.
+ * @param nb_rx_desc
+ *   Number of descriptors to configure in queue.
+ * @param socket_id
+ *   NUMA socket on which memory must be allocated.
+ * @param[in] rx_conf
+ *   Thresholds parameters.
+ * @param mp_pool
+ *   Memory pool for buffer allocations.
+ *
+ * @return
+ *   0 on success, negative errno value on failure.
+ */
+int qdma_dev_rx_queue_setup(struct rte_eth_dev *dev, uint16_t rx_queue_id,
+				uint16_t nb_rx_desc, unsigned int socket_id,
+				const struct rte_eth_rxconf *rx_conf,
+				struct rte_mempool *mb_pool)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	struct qdma_rx_queue *rxq;
+	struct qdma_mm_desc *rx_ring_mm;
+	uint64_t dma_bar;
+	uint32_t sz;
+	uint8_t  *rx_ring_bypass;
+	int bypass_desc_sz_idx;
+
+	PMD_DRV_LOG(INFO, "Configuring Rx queue id:%d\n", rx_queue_id);
+
+	if (nb_rx_desc == 0) {
+		PMD_DRV_LOG(ERR, "Invalid descriptor ring size %d\n",
+				nb_rx_desc);
+		return -EINVAL;
+	}
+
+	/* allocate rx queue data structure */
+	rxq = rte_zmalloc("QDMA_RxQ", sizeof(struct qdma_rx_queue),
+						RTE_CACHE_LINE_SIZE);
+	if (!rxq) {
+		PMD_DRV_LOG(ERR, "Unable to allocate structure rxq of "
+				"size %d\n",
+				(int)(sizeof(struct qdma_rx_queue)));
+		return (-ENOMEM);
+	}
+
+	dma_bar = (uint64_t)qdma_dev->bar_addr[qdma_dev->config_bar_idx];
+	rxq->st_mode = qdma_dev->q_info[rx_queue_id].queue_mode;
+	rxq->nb_rx_desc = nb_rx_desc;
+	rxq->bypass_desc_sz = qdma_dev->q_info[rx_queue_id].rx_bypass_desc_sz;
+	bypass_desc_sz_idx = qmda_get_desc_sz_idx(rxq->bypass_desc_sz);
+
+	if (qdma_dev->q_info[rx_queue_id].rx_bypass_mode ==
+				C2H_BYPASS_MODE_CACHE ||
+			qdma_dev->q_info[rx_queue_id].rx_bypass_mode ==
+			 C2H_BYPASS_MODE_SIMPLE)
+		rxq->en_bypass = 1;
+	if (qdma_dev->q_info[rx_queue_id].rx_bypass_mode ==
+			C2H_BYPASS_MODE_SIMPLE)
+		rxq->en_bypass_prefetch = 1;
+
+	/* <= 2018.2 IP
+	 * double the cmpl ring size to avoid run out of cmpl entry while
+	 * desc. ring still have free entries
+	 */
+	rxq->nb_rx_cmpt_desc = (nb_rx_desc * 2);
+	rxq->en_prefetch = qdma_dev->en_desc_prefetch;
+	rxq->cmpt_desc_len = qdma_dev->q_info[rx_queue_id].cmpt_desc_sz;
+
+	/* Disable the cmpt over flow check by default
+	 * Applcation can test enable/disable via update param before
+	 * queue_start is issued
+	 */
+	rxq->dis_overflow_check = 0;
+
+	/* allocate memory for Rx descriptor ring */
+	if (rxq->st_mode) {
+		if (!qdma_dev->st_mode_en) {
+			PMD_DRV_LOG(ERR, "Streaming mode not enabled "
+					"in the hardware\n");
+			rte_free(rxq);
+			return -EINVAL;
+		}
+
+		if (rxq->en_bypass &&
+		     bypass_desc_sz_idx == SW_DESC_CNTXT_64B_BYPASS_DMA)
+			sz = (rxq->nb_rx_desc) * (rxq->bypass_desc_sz);
+		else
+			sz = (rxq->nb_rx_desc) * sizeof(struct qdma_c2h_desc);
+
+		rxq->rx_mz = qdma_zone_reserve(dev, "RxHwRn", rx_queue_id,
+						sz, socket_id);
+		if (!rxq->rx_mz) {
+			PMD_DRV_LOG(ERR, "Unable to allocate rxq->rx_mz "
+					"of size %d\n", sz);
+			rte_free(rxq);
+			return -ENOMEM;
+		}
+		rxq->rx_ring = rxq->rx_mz->addr;
+	} else {
+		if (!qdma_dev->mm_mode_en) {
+			PMD_DRV_LOG(ERR, "Memory mapped mode not enabled "
+					"in the hardware\n");
+			rte_free(rxq);
+			return -EINVAL;
+		}
+		if (rxq->en_bypass &&
+			bypass_desc_sz_idx == SW_DESC_CNTXT_64B_BYPASS_DMA)
+			sz = (rxq->nb_rx_desc) * (rxq->bypass_desc_sz);
+		else
+			sz = (rxq->nb_rx_desc) * sizeof(struct qdma_mm_desc);
+		rxq->rx_mz = qdma_zone_reserve(dev, "RxHwRn",
+						rx_queue_id, sz, socket_id);
+		if (!rxq->rx_mz) {
+			PMD_DRV_LOG(ERR, "Unable to allocate rxq->rx_mz "
+					"of size %d\n", sz);
+			rte_free(rxq);
+			return -ENOMEM;
+		}
+		rxq->rx_ring = rxq->rx_mz->addr;
+		rx_ring_mm = (struct qdma_mm_desc *)rxq->rx_mz->addr;
+		rx_ring_bypass = (uint8_t *)rxq->rx_mz->addr;
+		if (rxq->en_bypass &&
+			bypass_desc_sz_idx == SW_DESC_CNTXT_64B_BYPASS_DMA)
+			rxq->wb_status = (struct wb_status *)&
+					(rx_ring_bypass[(rxq->nb_rx_desc - 1) *
+							(rxq->bypass_desc_sz)]);
+		else
+			rxq->wb_status = (struct wb_status *)&
+					 (rx_ring_mm[rxq->nb_rx_desc - 1]);
+	}
+
+	if (rxq->st_mode) {
+		/* allocate memory for Rx completion(cpmt) descriptor ring */
+		sz = (rxq->nb_rx_cmpt_desc) * rxq->cmpt_desc_len;
+		rxq->rx_cmpt_mz = qdma_zone_reserve(dev, "RxHwCmptRn",
+						    rx_queue_id, sz, socket_id);
+		if (!rxq->rx_cmpt_mz) {
+			PMD_DRV_LOG(ERR, "Unable to allocate rxq->rx_cmpt_mz "
+					"of size %d\n", sz);
+			rte_memzone_free(rxq->rx_mz);
+			rte_free(rxq);
+			return -ENOMEM;
+		}
+		rxq->cmpt_ring = (struct c2h_cmpt_ring *)rxq->rx_cmpt_mz->addr;
+
+		/* Write-back status structure */
+		rxq->wb_status = (struct wb_status *)((uint64_t)rxq->cmpt_ring +
+				 (((uint64_t)rxq->nb_rx_cmpt_desc - 1) *
+				  rxq->cmpt_desc_len));
+
+		if (!qdma_dev->is_vf) {
+			rxq->rx_cidx = (volatile uint32_t *)(dma_bar +
+					QDMA_TRQ_SEL_QUEUE_PF +
+					QDMA_SEL_CMPT_CIDX_Q_OFF +
+					(rx_queue_id * QDMA_CIDX_STEP));
+		} else {
+			rxq->rx_cidx = (volatile uint32_t *)(dma_bar +
+					QDMA_TRQ_SEL_QUEUE_VF +
+					QDMA_SEL_CMPT_CIDX_Q_OFF +
+					(rx_queue_id * QDMA_CIDX_STEP));
+		}
+	}
+
+	/* allocate memory for RX software ring */
+	sz = rxq->nb_rx_desc * sizeof(struct rte_mbuf *);
+	rxq->sw_ring = rte_zmalloc("RxSwRn", sz, RTE_CACHE_LINE_SIZE);
+	if (!rxq->sw_ring) {
+		PMD_DRV_LOG(ERR, "Unable to allocate rxq->sw_ring of size %d\n",
+									sz);
+		rte_memzone_free(rxq->rx_mz);
+		rte_free(rxq);
+		return -ENOMEM;
+	}
+
+	rxq->queue_id = rx_queue_id;
+
+	rxq->port_id = dev->data->port_id;
+	rxq->func_id = qdma_dev->pf;
+	rxq->mb_pool = mb_pool;
+
+	/* Calculate the ring index, completion queue ring size,
+	 * buffer index and threshold index.
+	 * If index is not found , by default use the index as 0
+	 */
+
+	/* Find C2H queue ring size index */
+	rxq->ringszidx = index_of_array(g_ring_sz, QDMA_GLOBAL_CSR_ARRAY_SZ,
+					rxq->nb_rx_desc);
+	if (rxq->ringszidx < 0) {
+		PMD_DRV_LOG(ERR, "Expected Ring size %d not found\n",
+				rxq->nb_rx_desc);
+		rte_memzone_free(rxq->rx_mz);
+		rte_free(rxq->sw_ring);
+		rte_free(rxq);
+		return -EINVAL;
+	}
+
+	/* Find completion ring size index */
+	rxq->cmpt_ringszidx = index_of_array(g_ring_sz,
+						QDMA_GLOBAL_CSR_ARRAY_SZ,
+						rxq->nb_rx_cmpt_desc);
+	if (rxq->cmpt_ringszidx < 0) {
+		PMD_DRV_LOG(ERR, "Expected completion ring size %d not found\n",
+				rxq->nb_rx_cmpt_desc);
+		rte_memzone_free(rxq->rx_mz);
+		rte_free(rxq->sw_ring);
+		rte_free(rxq);
+		return -EINVAL;
+	}
+
+	/* Find Threshold index */
+	rxq->threshidx = index_of_array(g_c2h_cnt_th, QDMA_GLOBAL_CSR_ARRAY_SZ,
+					rx_conf->rx_thresh.wthresh);
+	if (rxq->threshidx < 0) {
+		PMD_DRV_LOG(WARNING, "Expected Threshold %d not found,"
+				" using the value %d at index 0\n",
+				rx_conf->rx_thresh.wthresh, g_c2h_cnt_th[0]);
+		rxq->threshidx = 0;
+	}
+
+	/* Find Timer index */
+	rxq->timeridx = index_of_array(g_c2h_timer_cnt,
+					QDMA_GLOBAL_CSR_ARRAY_SZ,
+					qdma_dev->timer_count);
+	if (rxq->timeridx < 0) {
+		PMD_DRV_LOG(WARNING, "Expected timer %d not found, "
+				"using the value %d at index 1\n",
+				qdma_dev->timer_count, g_c2h_timer_cnt[1]);
+		rxq->timeridx = 1;
+	}
+
+	/* Find Buffer size index */
+	rxq->rx_buff_size = (uint16_t)
+				(rte_pktmbuf_data_room_size(rxq->mb_pool) -
+				 RTE_PKTMBUF_HEADROOM);
+	rxq->buffszidx = index_of_array(g_c2h_buf_sz, QDMA_GLOBAL_CSR_ARRAY_SZ,
+					rxq->rx_buff_size);
+	if (rxq->buffszidx < 0) {
+		PMD_DRV_LOG(ERR, "Expected buffer size %d not found\n",
+				rxq->rx_buff_size);
+		rte_memzone_free(rxq->rx_mz);
+		rte_free(rxq->sw_ring);
+		rte_free(rxq);
+		return -EINVAL;
+	}
+
+	rxq->triggermode = qdma_dev->trigger_mode;
+	rxq->rx_deferred_start = rx_conf->rx_deferred_start;
+
+	if (!qdma_dev->is_vf) {
+		rxq->rx_pidx = (volatile uint32_t *)(dma_bar +
+							QDMA_TRQ_SEL_QUEUE_PF +
+							QDMA_C2H_PIDX_Q_OFF +
+							(rx_queue_id *
+							 QDMA_PIDX_STEP));
+	} else {
+		rxq->rx_pidx = (volatile uint32_t *)(dma_bar +
+							QDMA_TRQ_SEL_QUEUE_VF +
+							QDMA_C2H_PIDX_Q_OFF +
+							(rx_queue_id *
+							 QDMA_PIDX_STEP));
+	}
+
+	/* store rx_pkt_burst function pointer */
+	dev->rx_pkt_burst = qdma_recv_pkts;
+
+	dev->data->rx_queues[rx_queue_id] = rxq;
+
+	return 0;
+}
+
+/**
+ * DPDK callback to configure a TX queue.
+ *
+ * @param dev
+ *   Pointer to Ethernet device structure.
+ * @param tx_queue_id
+ *   TX queue index.
+ * @param nb_tx_desc
+ *   Number of descriptors to configure in queue.
+ * @param socket_id
+ *   NUMA socket on which memory must be allocated.
+ * @param[in] tx_conf
+ *   Thresholds parameters.
+ *
+ * @return
+ *   0 on success, negative errno value on failure.
+ */
+int qdma_dev_tx_queue_setup(struct rte_eth_dev *dev, uint16_t tx_queue_id,
+			    uint16_t nb_tx_desc, unsigned int socket_id,
+			    const struct rte_eth_txconf *tx_conf)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	struct qdma_tx_queue *txq;
+	struct qdma_mm_desc *tx_ring_mm;
+	struct qdma_h2c_desc *tx_ring_st;
+	uint8_t  *tx_ring_bypass;
+	uint64_t dma_bar;
+	uint32_t sz;
+	int	bypass_desc_sz_idx;
+
+	PMD_DRV_LOG(INFO, "Configuring Tx queue id:%d\n", tx_queue_id);
+
+	/* allocate rx queue data structure */
+	txq = rte_zmalloc("QDMA_TxQ", sizeof(struct qdma_tx_queue),
+						RTE_CACHE_LINE_SIZE);
+	if (!txq) {
+		PMD_DRV_LOG(ERR, "Memory allocation failed for "
+				"Tx queue SW structure\n");
+		return (-ENOMEM);
+	}
+
+	dma_bar = (uint64_t)qdma_dev->bar_addr[qdma_dev->config_bar_idx];
+	txq->st_mode = qdma_dev->q_info[tx_queue_id].queue_mode;
+	txq->en_bypass = (qdma_dev->q_info[tx_queue_id].tx_bypass_mode) ? 1 : 0;
+	txq->bypass_desc_sz = qdma_dev->q_info[tx_queue_id].tx_bypass_desc_sz;
+	bypass_desc_sz_idx = qmda_get_desc_sz_idx(txq->bypass_desc_sz);
+
+	/* allocate memory for TX descriptor ring */
+	if (txq->st_mode) {
+		if (!qdma_dev->st_mode_en) {
+			PMD_DRV_LOG(ERR, "Streaming mode not enabled "
+					"in the hardware\n");
+			rte_free(txq);
+			return -EINVAL;
+		}
+		if (txq->en_bypass &&
+			bypass_desc_sz_idx == SW_DESC_CNTXT_64B_BYPASS_DMA)
+			sz = (nb_tx_desc) * (txq->bypass_desc_sz);
+		else
+			sz = (nb_tx_desc) * sizeof(struct qdma_h2c_desc);
+		txq->tx_mz = qdma_zone_reserve(dev, "TxHwRn", tx_queue_id, sz,
+						socket_id);
+		if (!txq->tx_mz) {
+			PMD_DRV_LOG(ERR, "Couldn't reserve memory for "
+					"ST H2C ring of size %d\n", sz);
+			rte_free(txq);
+			return -ENOMEM;
+		}
+
+		txq->tx_ring = txq->tx_mz->addr;
+		tx_ring_st = (struct qdma_h2c_desc *)txq->tx_ring;
+		tx_ring_bypass = (uint8_t *)txq->tx_ring;
+		/* Write-back status structure */
+		if (txq->en_bypass &&
+			bypass_desc_sz_idx == SW_DESC_CNTXT_64B_BYPASS_DMA)
+			txq->wb_status = (struct wb_status *)&
+					tx_ring_bypass[(nb_tx_desc - 1) *
+					(txq->bypass_desc_sz)];
+		else
+			txq->wb_status = (struct wb_status *)&
+					tx_ring_st[nb_tx_desc - 1];
+	} else {
+		if (!qdma_dev->mm_mode_en) {
+			PMD_DRV_LOG(ERR, "Memory mapped mode not "
+					"enabled in the hardware\n");
+			rte_free(txq);
+			return -EINVAL;
+		}
+
+		if (txq->en_bypass &&
+			bypass_desc_sz_idx == SW_DESC_CNTXT_64B_BYPASS_DMA)
+			sz = (nb_tx_desc) * (txq->bypass_desc_sz);
+		else
+			sz = (nb_tx_desc) * sizeof(struct qdma_mm_desc);
+		txq->tx_mz = qdma_zone_reserve(dev, "TxHwRn", tx_queue_id,
+						sz, socket_id);
+		if (!txq->tx_mz) {
+			PMD_DRV_LOG(ERR, "Couldn't reserve memory for "
+					"MM H2C ring of size %d\n", sz);
+			rte_free(txq);
+			return -ENOMEM;
+		}
+
+		txq->tx_ring = txq->tx_mz->addr;
+		tx_ring_mm = (struct qdma_mm_desc *)txq->tx_ring;
+		tx_ring_bypass = (uint8_t *)txq->tx_ring;
+
+		/* Write-back status structure */
+		if (txq->en_bypass &&
+			bypass_desc_sz_idx == SW_DESC_CNTXT_64B_BYPASS_DMA)
+			txq->wb_status = (struct wb_status *)&
+				tx_ring_bypass[(nb_tx_desc - 1) *
+				(txq->bypass_desc_sz)];
+		else
+			txq->wb_status = (struct wb_status *)&
+				tx_ring_mm[nb_tx_desc - 1];
+	}
+
+	PMD_DRV_LOG(INFO, "Tx ring phys addr: 0x%lX, Tx Ring virt addr: 0x%lX",
+	    (uint64_t)txq->tx_mz->phys_addr, (uint64_t)txq->tx_ring);
+
+	/* allocate memory for TX software ring */
+	sz = nb_tx_desc * sizeof(struct rte_mbuf *);
+	txq->sw_ring = rte_zmalloc("TxSwRn", sz, RTE_CACHE_LINE_SIZE);
+	if (!txq->sw_ring) {
+		PMD_DRV_LOG(ERR, "Memory allocation failed for Tx queue SW ring\n");
+		rte_memzone_free(txq->tx_mz);
+		rte_free(txq);
+		return -ENOMEM;
+	}
+
+	txq->nb_tx_desc = nb_tx_desc;
+	txq->queue_id = tx_queue_id;
+
+	txq->port_id = dev->data->port_id;
+	txq->func_id = qdma_dev->pf;
+	txq->num_queues = dev->data->nb_tx_queues;
+
+	txq->ringszidx = index_of_array(g_ring_sz, QDMA_GLOBAL_CSR_ARRAY_SZ,
+					txq->nb_tx_desc);
+
+	if (txq->ringszidx < 0) {
+		PMD_DRV_LOG(ERR, "Expected Ring size %d not found\n",
+				txq->nb_tx_desc);
+		rte_memzone_free(txq->tx_mz);
+		rte_free(txq->sw_ring);
+		rte_free(txq);
+		return -EINVAL;
+	}
+
+	txq->tx_deferred_start = tx_conf->tx_deferred_start;
+
+	if (!qdma_dev->is_vf) {
+		txq->tx_pidx = (volatile uint32_t *)(dma_bar +
+							QDMA_TRQ_SEL_QUEUE_PF +
+							QDMA_H2C_PIDX_Q_OFF +
+							(tx_queue_id * 0x10));
+	} else {
+		txq->tx_pidx = (volatile uint32_t *)(dma_bar +
+							QDMA_TRQ_SEL_QUEUE_VF +
+							QDMA_H2C_PIDX_Q_OFF +
+							(tx_queue_id * 0x10));
+	}
+	rte_spinlock_init(&txq->pidx_update_lock);
+	/* store tx_pkt_burst function pointer */
+	dev->tx_pkt_burst = qdma_xmit_pkts;
+
+	dev->data->tx_queues[tx_queue_id] = txq;
+
+	return 0;
+}
+
+#if (MIN_TX_PIDX_UPDATE_THRESHOLD > 1)
+void qdma_txq_pidx_update(void *arg)
+{
+	struct rte_eth_dev *dev = (struct rte_eth_dev *)arg;
+	struct qdma_tx_queue *txq;
+	uint32_t qid;
+
+	for (qid = 0; qid < dev->data->nb_tx_queues; qid++) {
+		txq = (struct qdma_tx_queue *)dev->data->tx_queues[qid];
+		if (txq->tx_desc_pend) {
+			rte_spinlock_lock(&txq->pidx_update_lock);
+			if (txq->tx_desc_pend) {
+				*txq->tx_pidx = txq->tx_tail;
+				txq->tx_desc_pend = 0;
+			}
+			rte_spinlock_unlock(&txq->pidx_update_lock);
+		}
+	}
+	rte_eal_alarm_set(QDMA_TXQ_PIDX_UPDATE_INTERVAL,
+			qdma_txq_pidx_update, (void *)arg);
+}
+#endif
+
+
+
+void qdma_dev_tx_queue_release(void *tqueue)
+{
+	struct qdma_tx_queue *txq = (struct qdma_tx_queue *)tqueue;
+
+	if (txq) {
+		PMD_DRV_LOG(INFO, "Remove H2C queue: %d", txq->queue_id);
+
+		if (txq->sw_ring)
+			rte_free(txq->sw_ring);
+		if (txq->tx_mz)
+			rte_memzone_free(txq->tx_mz);
+		rte_free(txq);
+		PMD_DRV_LOG(INFO, "H2C queue %d removed", txq->queue_id);
+	}
+}
+
+void qdma_dev_rx_queue_release(void *rqueue)
+{
+	struct qdma_rx_queue *rxq = (struct qdma_rx_queue *)rqueue;
+
+	if (rxq) {
+		PMD_DRV_LOG(INFO, "Remove C2H queue: %d", rxq->queue_id);
+
+		if (rxq->sw_ring)
+			rte_free(rxq->sw_ring);
+		if (rxq->st_mode) { /** if ST-mode **/
+			if (rxq->rx_cmpt_mz)
+				rte_memzone_free(rxq->rx_cmpt_mz);
+		}
+		if (rxq->rx_mz)
+			rte_memzone_free(rxq->rx_mz);
+		rte_free(rxq);
+		PMD_DRV_LOG(INFO, "C2H queue %d removed", rxq->queue_id);
+	}
+}
+
+/**
+ * DPDK callback to start the device.
+ *
+ * Start the device by configuring the Rx/Tx descriptor and device registers.
+ *
+ * @param dev
+ *   Pointer to Ethernet device structure.
+ *
+ * @return
+ *   0 on success, negative errno value on failure.
+ */
+static int qdma_dev_start(struct rte_eth_dev *dev)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	struct qdma_tx_queue *txq;
+	struct qdma_rx_queue *rxq;
+	uint32_t qid;
+	int err;
+
+	PMD_DRV_LOG(INFO, "qdma-dev-start: Starting\n");
+
+	/* prepare descriptor rings for operation */
+	for (qid = 0; qid < dev->data->nb_tx_queues; qid++) {
+		txq = (struct qdma_tx_queue *)dev->data->tx_queues[qid];
+
+		/*Deferred Queues should not start with dev_start*/
+		if (!txq->tx_deferred_start) {
+			err = qdma_dev_tx_queue_start(dev, qid);
+			if (err != 0)
+				return err;
+		}
+	}
+
+	for (qid = 0; qid < dev->data->nb_rx_queues; qid++) {
+		rxq = (struct qdma_rx_queue *)dev->data->rx_queues[qid];
+
+		/*Deferred Queues should not start with dev_start*/
+		if (!rxq->rx_deferred_start) {
+			err = qdma_dev_rx_queue_start(dev, qid);
+			if (err != 0)
+				return err;
+		}
+	}
+
+	/* Start Tx h2c engine */
+	*qdma_dev->h2c_mm_control = QDMA_MM_CTRL_START;
+
+	/* Start Rx c2h engine */
+	*qdma_dev->c2h_mm_control = QDMA_MM_CTRL_START;
+#if (MIN_TX_PIDX_UPDATE_THRESHOLD > 1)
+	rte_eal_alarm_set(QDMA_TXQ_PIDX_UPDATE_INTERVAL,
+			qdma_txq_pidx_update, (void *)dev);
+#endif
+	return 0;
+}
+
+/**
+ * DPDK callback to retrieve the physical link information.
+ *
+ * @param dev
+ *   Pointer to Ethernet device structure.
+ * @param wait_to_complete
+ *   wait_to_complete field is ignored.
+ */
+static int qdma_dev_link_update(struct rte_eth_dev *dev,
+				__rte_unused int wait_to_complete)
+{
+	dev->data->dev_link.link_status = ETH_LINK_UP;
+	dev->data->dev_link.link_duplex = ETH_LINK_FULL_DUPLEX;
+	dev->data->dev_link.link_speed = ETH_SPEED_NUM_100G;
+	PMD_DRV_LOG(INFO, "Link update done\n");
+	return 0;
+}
+
+
+/**
+ * DPDK callback to get information about the device.
+ *
+ * @param dev
+ *   Pointer to Ethernet device structure.
+ * @param[out] dev_info
+ *   Device information structure output buffer.
+ */
+static void qdma_dev_infos_get(__rte_unused struct rte_eth_dev *dev,
+				struct rte_eth_dev_info *dev_info)
+{
+	//struct qdma_pci_dev *xdev = dev->data->dev_private;
+
+//	xdev->magic		= MAGIC_DEVICE;
+	dev_info->max_rx_queues = QDMA_QUEUES_NUM_MAX;
+	dev_info->max_tx_queues = QDMA_QUEUES_NUM_MAX;
+	dev_info->min_rx_bufsize = QDMA_MIN_RXBUFF_SIZE;
+	dev_info->max_rx_pktlen = DMA_BRAM_SIZE;
+	dev_info->max_mac_addrs = 1;
+}
+/**
+ * DPDK callback to stop the device.
+ *
+ * Stop the device by clearing all configured Rx/Tx queue
+ * descriptors and registers.
+ *
+ * @param dev
+ *   Pointer to Ethernet device structure.
+ */
+static void qdma_dev_stop(struct rte_eth_dev *dev)
+{
+#ifdef RTE_LIBRTE_QDMA_DEBUG_DRIVER
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+#endif
+	uint32_t qid;
+
+	/* reset driver's internal queue structures to default values */
+	PMD_DRV_LOG(INFO, "PF-%d(DEVFN) Stop H2C & C2H queues", qdma_dev->pf);
+	for (qid = 0; qid < dev->data->nb_tx_queues; qid++)
+		qdma_dev_tx_queue_stop(dev, qid);
+	for (qid = 0; qid < dev->data->nb_rx_queues; qid++)
+		qdma_dev_rx_queue_stop(dev, qid);
+}
+
+/**
+ * DPDK callback to close the device.
+ *
+ * Destroy all queues and objects, free memory.
+ *
+ * @param dev
+ *   Pointer to Ethernet device structure.
+ */
+static void qdma_dev_close(struct rte_eth_dev *dev)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	struct qdma_tx_queue *txq;
+	struct qdma_rx_queue *rxq;
+	uint64_t bar_addr;
+#if FMAP_CNTXT
+	uint32_t ctxt_sel, reg_val;
+	uint32_t i, flag;
+	struct queue_ind_prg *q_regs;
+#else
+	uint64_t reg_addr;
+#endif
+	uint32_t qid;
+
+	PMD_DRV_LOG(INFO, "PF-%d(DEVFN) DEV Close\n", qdma_dev->pf);
+
+#if (MIN_TX_PIDX_UPDATE_THRESHOLD > 1)
+	/* Cancel pending PIDX updates */
+	rte_eal_alarm_cancel(qdma_txq_pidx_update, (void *)dev);
+#endif
+
+	bar_addr = (uint64_t)qdma_dev->bar_addr[qdma_dev->config_bar_idx];
+#if FMAP_CNTXT
+	q_regs = (struct queue_ind_prg *)(bar_addr + QDMA_TRQ_SEL_IND +
+						QDMA_IND_Q_PRG_OFF);
+	ctxt_sel = (QDMA_CTXT_SEL_FMAP << CTXT_SEL_SHIFT_B) | (qdma_dev->pf <<
+								QID_SHIFT_B) |
+		    (QDMA_CTXT_CMD_CLR << OP_CODE_SHIFT_B);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+
+	flag = 1;
+	i = CONTEXT_PROG_POLL_COUNT;
+	while (flag && i) {
+		reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_cmd);
+		PMD_DRV_LOG(INFO, " Read cmd for device:%d: reg_val:%x\n",
+				qdma_dev->pf, reg_val);
+		flag = reg_val & BUSY_BIT_MSK;
+		rte_delay_ms(CONTEXT_PROG_DELAY);
+		i--;
+	}
+#else
+	reg_addr = (uint64_t)(bar_addr + QDMA_TRQ_SEL_FMAP + qdma_dev->pf * 4);
+	qdma_write_reg((uint64_t)reg_addr, 0x0);
+#endif
+		/* iterate over rx queues */
+	for (qid = 0; qid < dev->data->nb_rx_queues; ++qid) {
+		rxq = dev->data->rx_queues[qid];
+		if (rxq) {
+			PMD_DRV_LOG(INFO, "Remove C2H queue: %d", qid);
+
+			if (rxq->sw_ring)
+				rte_free(rxq->sw_ring);
+			if (rxq->st_mode) { /** if ST-mode **/
+				if (rxq->rx_cmpt_mz)
+					rte_memzone_free(rxq->rx_cmpt_mz);
+			}
+			if (rxq->rx_mz)
+				rte_memzone_free(rxq->rx_mz);
+			rte_free(rxq);
+			PMD_DRV_LOG(INFO, "C2H queue %d removed", qid);
+		}
+	}
+	/* iterate over tx queues */
+	for (qid = 0; qid < dev->data->nb_tx_queues; ++qid) {
+		txq = dev->data->tx_queues[qid];
+		if (txq) {
+			PMD_DRV_LOG(INFO, "Remove H2C queue: %d", qid);
+
+			if (txq->sw_ring)
+				rte_free(txq->sw_ring);
+			if (txq->tx_mz)
+				rte_memzone_free(txq->tx_mz);
+			rte_free(txq);
+			PMD_DRV_LOG(INFO, "H2C queue %d removed", qid);
+		}
+	}
+}
+
+
+/**
+ * DPDK callback for Ethernet device configuration.
+ *
+ * @param dev
+ *   Pointer to Ethernet device structure.
+ *
+ * @return
+ *   0 on success, negative errno value on failure.
+ */
+static int qdma_dev_configure(struct rte_eth_dev *dev)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	uint16_t qid = 0;
+	int ret = 0;
+
+	PMD_DRV_LOG(INFO, "Configure the qdma engines\n");
+
+	qdma_dev->qsets_en = RTE_MAX(dev->data->nb_rx_queues,
+					dev->data->nb_tx_queues);
+	if ((qdma_dev->queue_base + qdma_dev->qsets_en) > qdma_dev->qsets_max) {
+		PMD_DRV_LOG(ERR, "PF-%d(DEVFN) Error: Number of Queues to be"
+				" configured are greater than the queues"
+				" supported by the hardware\n", qdma_dev->pf);
+		qdma_dev->qsets_en = 0;
+		return -1;
+	}
+
+	qdma_dev->q_info = rte_zmalloc("qinfo", sizeof(struct queue_info) *
+					(qdma_dev->qsets_en), 0);
+	if (!qdma_dev->q_info) {
+		PMD_DRV_LOG(ERR, "PF-%d(DEVFN) Cannot allocate "
+				"memory for queue info\n", qdma_dev->pf);
+		return (-ENOMEM);
+	}
+
+	/* Initialize queue_modes to all 1's ( i.e. Streaming) */
+	for (qid = 0 ; qid < qdma_dev->qsets_en; qid++)
+		qdma_dev->q_info[qid].queue_mode = STREAMING_MODE;
+
+	for (qid = 0 ; qid < dev->data->nb_rx_queues; qid++) {
+		qdma_dev->q_info[qid].cmpt_desc_sz = qdma_dev->cmpt_desc_len;
+		qdma_dev->q_info[qid].rx_bypass_mode =
+						qdma_dev->c2h_bypass_mode;
+	}
+
+	for (qid = 0 ; qid < dev->data->nb_tx_queues; qid++)
+		qdma_dev->q_info[qid].tx_bypass_mode =
+						qdma_dev->h2c_bypass_mode;
+
+	PMD_DRV_LOG(INFO, "PF-%d(DEVFN) qdma-dev-configure:\n", qdma_dev->pf);
+
+	/** FMAP configuration **/
+	ret = qdma_set_fmap(qdma_dev, qdma_dev->pf, qdma_dev->queue_base,
+			    qdma_dev->qsets_en);
+	if (ret < 0) {
+		rte_free(qdma_dev->q_info);
+		return -1;
+	}
+
+	/* Start Tx h2c engine */
+	*qdma_dev->h2c_mm_control = QDMA_MM_CTRL_START;
+	/* Start Rx c2h engine */
+	*qdma_dev->c2h_mm_control = QDMA_MM_CTRL_START;
+
+	return 0;
+}
+
+int qdma_dev_tx_queue_start(struct rte_eth_dev *dev, uint16_t qid)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	struct qdma_tx_queue *txq;
+	uint64_t phys_addr;
+	uint32_t queue_base =  qdma_dev->queue_base;
+	int err, bypass_desc_sz_idx;
+
+	txq = (struct qdma_tx_queue *)dev->data->tx_queues[qid];
+	bypass_desc_sz_idx = qmda_get_desc_sz_idx(txq->bypass_desc_sz);
+
+	qdma_reset_tx_queue(txq);
+	qdma_reset_tx_queues(dev, (qid + queue_base), txq->st_mode);
+
+	rte_delay_ms(PF_START_DELAY);
+
+	phys_addr = (uint64_t)txq->tx_mz->phys_addr;
+
+	PMD_DRV_LOG(INFO, "PF-%d(DEVFN) Phys-addr for H2C queue-id:%d: "
+			"is Lo:0x%lx, Hi:0x%lx\n", qdma_dev->pf, qid,
+			rte_cpu_to_le_32(phys_addr & MASK_32BIT),
+			rte_cpu_to_le_32(phys_addr >> 32));
+
+	err = qdma_queue_ctxt_tx_prog(dev, (qid + queue_base), txq->st_mode,
+					txq->ringszidx, txq->func_id, phys_addr,
+					txq->en_bypass, bypass_desc_sz_idx);
+	if (err != 0)
+		return err;
+	qdma_start_tx_queue(txq);
+
+	dev->data->tx_queue_state[qid] = RTE_ETH_QUEUE_STATE_STARTED;
+	txq->status = RTE_ETH_QUEUE_STATE_STARTED;
+	return 0;
+}
+
+
+int qdma_dev_rx_queue_start(struct rte_eth_dev *dev, uint16_t qid)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	struct qdma_rx_queue *rxq;
+	uint64_t phys_addr, cmpt_phys_addr;
+	uint32_t queue_base =  qdma_dev->queue_base;
+	uint8_t en_pfetch;
+	uint8_t cmpt_desc_fmt;
+	int err, bypass_desc_sz_idx;
+
+	rxq = (struct qdma_rx_queue *)dev->data->rx_queues[qid];
+	qdma_reset_rx_queue(rxq);
+	qdma_reset_rx_queues(dev, (qid + queue_base), rxq->st_mode);
+	bypass_desc_sz_idx = qmda_get_desc_sz_idx(rxq->bypass_desc_sz);
+
+	rte_delay_ms(1);
+	en_pfetch = (rxq->en_prefetch) ? 1 : 0;
+	phys_addr = (uint64_t)rxq->rx_mz->phys_addr;
+
+	switch (rxq->cmpt_desc_len) {
+	case CMPT_DESC_LEN_8B:
+		cmpt_desc_fmt = CMPT_CNTXT_DESC_SIZE_8B;
+		break;
+	case CMPT_DESC_LEN_16B:
+		cmpt_desc_fmt = CMPT_CNTXT_DESC_SIZE_16B;
+		break;
+	case CMPT_DESC_LEN_32B:
+		cmpt_desc_fmt = CMPT_CNTXT_DESC_SIZE_32B;
+		break;
+	case CMPT_DESC_LEN_64B:
+		cmpt_desc_fmt = CMPT_CNTXT_DESC_SIZE_64B;
+		break;
+	default:
+		cmpt_desc_fmt = CMPT_CNTXT_DESC_SIZE_8B;
+		break;
+	}
+
+	PMD_DRV_LOG(INFO, "PF-%d(DEVFN) Phys-addr for C2H queue-id:%d: "
+			"is Lo:0x%lx, Hi:0x%lx\n",
+			qdma_dev->pf, qid,
+			rte_cpu_to_le_32(phys_addr & MASK_32BIT),
+			rte_cpu_to_le_32(phys_addr >> 32));
+
+	if (rxq->st_mode)
+		cmpt_phys_addr = (uint64_t)rxq->rx_cmpt_mz->phys_addr;
+	else
+		cmpt_phys_addr = 0;
+
+	PMD_DRV_LOG(INFO, "PF-%d(DEVFN) C2H Completion Phys-addr for "
+			"queue-id:%d: is Lo:0x%lx, Hi:0x%lx\n",
+			qdma_dev->pf, qid,
+			rte_cpu_to_le_32(cmpt_phys_addr & MASK_32BIT),
+			rte_cpu_to_le_32(cmpt_phys_addr >> 32));
+
+	err = qdma_start_rx_queue(rxq);
+	if (err != 0)
+		return err;
+	err = qdma_queue_ctxt_rx_prog(dev, (qid + queue_base), rxq->st_mode,
+					en_pfetch, rxq->ringszidx,
+					rxq->cmpt_ringszidx, rxq->buffszidx,
+					rxq->threshidx,	rxq->timeridx,
+					rxq->triggermode, rxq->func_id,
+					phys_addr, cmpt_phys_addr,
+					cmpt_desc_fmt, rxq->en_bypass,
+					rxq->en_bypass_prefetch,
+					bypass_desc_sz_idx,
+					rxq->dis_overflow_check);
+	if (err != 0)
+		return err;
+
+	if (rxq->st_mode) {
+		rte_wmb();
+		/* enable status desc , loading the triggermode,
+		 * thresidx and timeridx passed from the user
+		 */
+		*rxq->rx_cidx = (CMPT_STATUS_DESC_EN <<
+					CMPT_STATUS_DESC_EN_SHIFT) |
+				(rxq->triggermode << CMPT_TRIGGER_MODE_SHIFT) |
+				(rxq->threshidx << CMPT_THREHOLD_CNT_SHIFT) |
+				(rxq->timeridx << CMPT_TIMER_CNT_SHIFT);
+		*rxq->rx_pidx = (rxq->nb_rx_desc - 2);
+	}
+
+	dev->data->rx_queue_state[qid] = RTE_ETH_QUEUE_STATE_STARTED;
+	rxq->status = RTE_ETH_QUEUE_STATE_STARTED;
+	return 0;
+}
+
+int qdma_dev_rx_queue_stop(struct rte_eth_dev *dev, uint16_t qid)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	struct qdma_rx_queue *rxq;
+	uint32_t queue_base =  qdma_dev->queue_base;
+	int i = 0;
+	int cnt = 0;
+
+	rxq = (struct qdma_rx_queue *)dev->data->rx_queues[qid];
+
+	rxq->status = RTE_ETH_QUEUE_STATE_STOPPED;
+
+	/* Wait for queue to recv all packets. */
+	if (rxq->st_mode) {  /** ST-mode **/
+		while (rxq->wb_status->pidx != rxq->rx_cmpt_tail) {
+			usleep(10);
+			if (cnt++ > 10000)
+				break;
+		}
+	} else { /* MM mode */
+		while (rxq->wb_status->cidx != rxq->rx_tail) {
+			usleep(10);
+			if (cnt++ > 10000)
+				break;
+		}
+	}
+
+	qdma_inv_rx_queues(dev, (qid + queue_base), rxq->st_mode);
+	qdma_reset_rx_queues(dev, (qid + queue_base), rxq->st_mode);
+
+	if (rxq->st_mode) {  /** ST-mode **/
+#ifdef DUMP_MEMPOOL_USAGE_STATS
+		PMD_DRV_LOG(INFO, "%s(): %d: queue id %d,"
+				"mbuf_avail_count = %d, mbuf_in_use_count = %d",
+				__func__, __LINE__, rxq->queue_id,
+				rte_mempool_avail_count(rxq->mb_pool),
+				rte_mempool_in_use_count(rxq->mb_pool));
+#endif //DUMP_MEMPOOL_USAGE_STATS
+		for (i = 0; i < rxq->nb_rx_desc - 1; i++) {
+			rte_pktmbuf_free(rxq->sw_ring[i]);
+			rxq->sw_ring[i] = NULL;
+		}
+#ifdef DUMP_MEMPOOL_USAGE_STATS
+		PMD_DRV_LOG(INFO, "%s(): %d: queue id %d,"
+				"mbuf_avail_count = %d, mbuf_in_use_count = %d",
+			__func__, __LINE__, rxq->queue_id,
+			rte_mempool_avail_count(rxq->mb_pool),
+			rte_mempool_in_use_count(rxq->mb_pool));
+#endif //DUMP_MEMPOOL_USAGE_STATS
+	}
+
+	qdma_reset_rx_queue(rxq);
+
+	dev->data->rx_queue_state[qid] = RTE_ETH_QUEUE_STATE_STOPPED;
+
+	return 0;
+}
+
+int qdma_dev_tx_queue_stop(struct rte_eth_dev *dev, uint16_t qid)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	uint32_t queue_base =  qdma_dev->queue_base;
+	struct qdma_tx_queue *txq;
+	int cnt = 0;
+	uint16_t count;
+
+	txq = (struct qdma_tx_queue *)dev->data->tx_queues[qid];
+
+	txq->status = RTE_ETH_QUEUE_STATE_STOPPED;
+	/* Wait for TXQ to send out all packets. */
+	while (txq->wb_status->cidx != txq->tx_tail) {
+		usleep(10);
+		if (cnt++ > 10000)
+			break;
+	}
+
+	qdma_inv_tx_queues(dev, (qid + queue_base), txq->st_mode);
+	qdma_reset_tx_queues(dev, (qid + queue_base), txq->st_mode);
+
+	/* Relinquish pending mbufs */
+	for (count = 0; count < txq->nb_tx_desc - 1; count++) {
+		rte_pktmbuf_free(txq->sw_ring[count]);
+		txq->sw_ring[count] = NULL;
+	}
+	qdma_reset_tx_queue(txq);
+
+	dev->data->tx_queue_state[qid] = RTE_ETH_QUEUE_STATE_STOPPED;
+
+	return 0;
+}
+
+static int qdma_dev_stats_get(struct rte_eth_dev *dev,
+			      struct rte_eth_stats *eth_stats)
+{
+	unsigned int i;
+
+	eth_stats->opackets = 0;
+	eth_stats->obytes = 0;
+	eth_stats->ipackets = 0;
+	eth_stats->ibytes = 0;
+
+	for (i = 0; i < dev->data->nb_rx_queues; i++) {
+		struct qdma_rx_queue *rxq =
+			(struct qdma_rx_queue *)dev->data->rx_queues[i];
+
+		eth_stats->q_ipackets[i] = rxq->stats.pkts;
+		eth_stats->q_ibytes[i] = rxq->stats.bytes;
+		eth_stats->ipackets += eth_stats->q_ipackets[i];
+		eth_stats->ibytes += eth_stats->q_ibytes[i];
+	}
+
+	for (i = 0; i < dev->data->nb_tx_queues; i++) {
+		struct qdma_tx_queue *txq =
+			(struct qdma_tx_queue *)dev->data->tx_queues[i];
+
+		eth_stats->q_opackets[i] = txq->stats.pkts;
+		eth_stats->q_obytes[i] = txq->stats.bytes;
+		eth_stats->opackets += eth_stats->q_opackets[i];
+		eth_stats->obytes   += eth_stats->q_obytes[i];
+	}
+	return 0;
+}
+
+static struct eth_dev_ops qdma_eth_dev_ops = {
+	.dev_configure        = qdma_dev_configure,
+	.dev_infos_get        = qdma_dev_infos_get,
+	.dev_start            = qdma_dev_start,
+	.dev_stop             = qdma_dev_stop,
+	.dev_close            = qdma_dev_close,
+	.link_update          = qdma_dev_link_update,
+	.rx_queue_setup       = qdma_dev_rx_queue_setup,
+	.tx_queue_setup       = qdma_dev_tx_queue_setup,
+	.rx_queue_release	  = qdma_dev_rx_queue_release,
+	.tx_queue_release	  = qdma_dev_tx_queue_release,
+	.rx_queue_start	  = qdma_dev_rx_queue_start,
+	.rx_queue_stop	  = qdma_dev_rx_queue_stop,
+	.tx_queue_start	  = qdma_dev_tx_queue_start,
+	.tx_queue_stop	  = qdma_dev_tx_queue_stop,
+	.stats_get		  = qdma_dev_stats_get,
+};
+
+void qdma_dev_ops_init(struct rte_eth_dev *dev)
+{
+	dev->dev_ops = &qdma_eth_dev_ops;
+	if (rte_eal_process_type() == RTE_PROC_PRIMARY) {
+		dev->rx_pkt_burst = &qdma_recv_pkts;
+		dev->tx_pkt_burst = &qdma_xmit_pkts;
+	}
+}
diff --git a/QDMA/DPDK/drivers/net/qdma/qdma_ethdev.c b/QDMA/DPDK/drivers/net/qdma/qdma_ethdev.c
new file mode 100644
index 0000000..2991194
--- /dev/null
+++ b/QDMA/DPDK/drivers/net/qdma/qdma_ethdev.c
@@ -0,0 +1,966 @@
+/*-
+ *   BSD LICENSE
+ *
+ *   Copyright(c) 2017-2018 Xilinx, Inc. All rights reserved.
+ *
+ *   Redistribution and use in source and binary forms, with or without
+ *   modification, are permitted provided that the following conditions
+ *   are met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in
+ *       the documentation and/or other materials provided with the
+ *       distribution.
+ *     * Neither the name of the copyright holder nor the names of its
+ *       contributors may be used to endorse or promote products derived
+ *       from this software without specific prior written permission.
+ *
+ *   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ *   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ *   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ *   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ *   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ *   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ *   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ *   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include <stdint.h>
+#include <stdbool.h>
+#include <sys/mman.h>
+#include <sys/fcntl.h>
+#include <rte_memzone.h>
+#include <rte_string_fns.h>
+#include <rte_ethdev_pci.h>
+#include <rte_malloc.h>
+#include <rte_dev.h>
+#include <rte_pci.h>
+#include <rte_ether.h>
+#include <rte_ethdev.h>
+#include <rte_alarm.h>
+#include <rte_cycles.h>
+#include <unistd.h>
+#include <string.h>
+
+#include "qdma.h"
+#include "qdma_regs.h"
+#include "version.h"
+
+static void qdma_device_attributes_get(struct qdma_pci_dev *qdma_dev);
+
+uint32_t g_ring_sz[QDMA_GLOBAL_CSR_ARRAY_SZ] = {
+1024, 256, 512, 768, 1280, 1536, 2048, 2560,
+3072, 4096, 5120, 6144, 8192, 1024, 1024, 1024
+};
+
+uint32_t g_c2h_cnt_th[QDMA_GLOBAL_CSR_ARRAY_SZ] = {
+64, 2, 4, 8, 12, 16, 24, 32, 40, 48, 96, 128, 192, 256, 384, 512
+};
+
+uint32_t g_c2h_buf_sz[QDMA_GLOBAL_CSR_ARRAY_SZ] = {
+4096, 256, 512, 1024, 2048, 8192, 9018, 16384, 3968, 4096, 4096,
+4096, 4096, 4096, 4096, 4096
+};
+
+uint32_t g_c2h_timer_cnt[QDMA_GLOBAL_CSR_ARRAY_SZ] = {
+0, 1, 2, 3, 4, 5, 7, 8, 10, 12, 15, 20, 30, 50, 100, 200
+};
+
+static int qdma_vf_hi(struct rte_eth_dev *dev, uint16_t vf_funid,
+			struct qdma_mbox_data *recv_msg)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	uint32_t qbase, qmax, i;
+	struct rte_pci_device *pci_dev;
+	int ret = 0;
+	uint64_t sz;
+
+	PMD_DRV_LOG(INFO, "PF-%d received HI msg from VF global function-id %d",
+			PCI_FUNC(qdma_dev->pf), vf_funid);
+	pci_dev = RTE_ETH_DEV_TO_PCI(dev);
+	/* Mapping internal function id index to external function id */
+	for (i = 0; i < pci_dev->max_vfs; i++) {
+		if (qdma_dev->vfinfo[i].func_id == QDMA_FUNC_ID_INVALID) {
+			qdma_dev->vfinfo[i].func_id = vf_funid;
+			break;
+		}
+	}
+
+	if (i == pci_dev->max_vfs) {
+		PMD_DRV_LOG(INFO, "PF-%d  failed to create function "
+				"id mapping VF- func_id%d",
+				PCI_FUNC(qdma_dev->pf), vf_funid);
+		return -1;
+	}
+
+	PMD_DRV_LOG(INFO, "PF-%d received HI msg from VF internal "
+			"id %d global %d", PCI_FUNC(qdma_dev->pf), i, vf_funid);
+
+	qbase = recv_msg->data[0];
+	qdma_dev->vfinfo[i].qbase = recv_msg->data[0];
+	qmax = recv_msg->data[1];
+	qdma_dev->vfinfo[i].qmax = recv_msg->data[1];
+	qdma_dev->vfinfo[i].func_id = vf_funid;
+
+	sz = sizeof(struct qdma_vf_queue_info) * qmax;
+	qdma_dev->vfinfo[i].vfqinfo = rte_zmalloc("vfqinfo", sz, 0);
+	if (qdma_dev->vfinfo[i].vfqinfo == NULL) {
+		PMD_DRV_LOG(INFO, "cannot allocate memory for VF queue info");
+		return -1;
+	}
+
+	ret = qdma_set_fmap(qdma_dev, vf_funid, qbase, qmax);
+	if (ret < 0) {
+		rte_free(qdma_dev->vfinfo[i].vfqinfo);
+		return -1;
+	}
+	return 0;
+}
+
+static int qdma_vf_bye(struct rte_eth_dev *dev, uint16_t vf, uint16_t vf_funid)
+{
+	struct qdma_pci_dev *qdma_dev  = dev->data->dev_private;
+	uint64_t bar_addr;
+#if FMAP_CNTXT
+	uint32_t ctxt_sel, reg_val;
+	uint32_t i, flag;
+	struct queue_ind_prg *q_regs;
+#else
+	uint64_t fmap;
+#endif
+
+	PMD_DRV_LOG(INFO, "PF-%d received BYE msg from VF internal id %d, "
+			"global id %d", PCI_FUNC(qdma_dev->pf), vf, vf_funid);
+
+	if (qdma_dev->vfinfo[vf].vfqinfo != NULL)
+		rte_free(qdma_dev->vfinfo[vf].vfqinfo);
+
+	qdma_dev->vfinfo[vf].qbase = 0;
+	qdma_dev->vfinfo[vf].qmax = 0;
+	qdma_dev->vfinfo[vf].func_id = QDMA_FUNC_ID_INVALID;
+
+	bar_addr = (uint64_t)qdma_dev->bar_addr[qdma_dev->config_bar_idx];
+#if FMAP_CNTXT
+	q_regs = (struct queue_ind_prg *)(bar_addr + QDMA_TRQ_SEL_IND +
+						QDMA_IND_Q_PRG_OFF);
+
+	ctxt_sel = (QDMA_CTXT_SEL_FMAP << CTXT_SEL_SHIFT_B) |
+			(vf_funid << QID_SHIFT_B) |
+			(QDMA_CTXT_CMD_CLR << OP_CODE_SHIFT_B);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+
+	flag = 1;
+	i = CONTEXT_PROG_POLL_COUNT;
+	while (flag && i) {
+		reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_cmd);
+		PMD_DRV_LOG(INFO, " Read cmd for device:%d: reg_val:%x\n",
+				vf_funid, reg_val);
+		flag = reg_val & BUSY_BIT_MSK;
+		rte_delay_ms(CONTEXT_PROG_DELAY);
+		i--;
+	}
+#else
+
+	fmap = (uint64_t)(bar_addr + QDMA_TRQ_SEL_FMAP + (vf_funid * 4));
+	qdma_write_reg((uint64_t)fmap, 0);
+#endif
+
+	return 0;
+}
+
+/* Perform queue context programming */
+
+static int qdma_vf_qadd(struct rte_eth_dev *dev, uint16_t vf, uint8_t vf_funid,
+			struct qdma_mbox_data *recv_msg)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	struct qadd_msg msg;
+	int err, qbase;
+	uint64_t addr;
+
+	PMD_DRV_LOG(INFO, "PF-%d received QADD msg from VF internal id %d, "
+			"global id %d", PCI_FUNC(qdma_dev->pf), vf, vf_funid);
+
+	msg.qid			= recv_msg->data[0];
+	msg.st			= recv_msg->data[1];
+	msg.c2h			= recv_msg->data[2];
+	msg.ringsz		= recv_msg->data[3];
+	msg.bufsz		= recv_msg->data[4];
+	msg.thresidx		= recv_msg->data[5];
+	msg.timeridx		= recv_msg->data[6];
+	msg.triggermode		= recv_msg->data[7];
+	msg.cmpt_ringszidx	= recv_msg->data[12];
+	msg.prefetch		= recv_msg->data[13];
+	msg.cmpt_desc_fmt	= recv_msg->data[14];
+	msg.en_bypass		= recv_msg->data[15];
+	msg.bypass_desc_sz_idx	= recv_msg->data[16];
+	msg.en_bypass_prefetch	= recv_msg->data[17];
+	msg.dis_overflow_check	= recv_msg->data[18];
+
+	addr = rte_le_to_cpu_64(((uint64_t)recv_msg->data[9] << 32) |
+					recv_msg->data[8]);
+	msg.ring_bs_addr = addr;
+	addr = rte_le_to_cpu_64(((uint64_t)recv_msg->data[11] << 32) |
+					recv_msg->data[10]);
+	msg.cmpt_ring_bs_addr = addr;
+
+	qbase = qdma_dev->vfinfo[vf].qbase;
+
+	qdma_dev->vfinfo[vf].vfqinfo[msg.qid - qbase].mode = msg.st;
+
+	if (msg.c2h) {
+		qdma_reset_rx_queues(dev, msg.qid, msg.st);
+		err = qdma_queue_ctxt_rx_prog(dev, msg.qid, msg.st,
+						msg.prefetch, msg.ringsz,
+						msg.cmpt_ringszidx, msg.bufsz,
+						msg.thresidx, msg.timeridx,
+						msg.triggermode, vf_funid,
+						msg.ring_bs_addr,
+						msg.cmpt_ring_bs_addr,
+						msg.cmpt_desc_fmt,
+						msg.en_bypass,
+						msg.en_bypass_prefetch,
+						msg.bypass_desc_sz_idx,
+						msg.dis_overflow_check);
+		if (err != 0)
+			return err;
+	} else {
+		qdma_reset_tx_queues(dev, msg.qid, msg.st);
+		err = qdma_queue_ctxt_tx_prog(dev, msg.qid, msg.st, msg.ringsz,
+						vf_funid, msg.ring_bs_addr,
+						msg.en_bypass,
+						msg.bypass_desc_sz_idx);
+		if (err != 0)
+			return err;
+	}
+
+	*qdma_dev->h2c_mm_control = QDMA_MM_CTRL_START; /* Start Tx h2c engine*/
+	*qdma_dev->c2h_mm_control = QDMA_MM_CTRL_START; /* Start Rx c2h engine*/
+
+	return 0;
+}
+
+static int qdma_vf_qdel(struct rte_eth_dev *dev, uint8_t vf,
+				struct qdma_mbox_data *recv_msg)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	int qbase = 0;
+	uint32_t qid, dir;
+
+	PMD_DRV_LOG(INFO, "PF-%d received QDEL msg from VF-%d",
+			PCI_FUNC(qdma_dev->pf), vf);
+
+	qid = recv_msg->data[0];
+	dir = recv_msg->data[1];
+	qbase = qdma_dev->vfinfo[vf].qbase;
+
+	if (dir == DMA_FROM_DEVICE)
+		qdma_reset_rx_queues(dev, qid,
+				qdma_dev->vfinfo[vf].vfqinfo[qid - qbase].mode);
+	else
+		qdma_reset_tx_queues(dev, qid,
+				qdma_dev->vfinfo[vf].vfqinfo[qid - qbase].mode);
+
+	return 0;
+}
+
+/*
+ * Calculate vf internal funciton of PF from global function id
+ */
+static int qdma_get_dev_internal_vfid(struct rte_eth_dev *dev, uint8_t devfn)
+{
+	uint16_t  i;
+	struct rte_pci_device *pci_dev;
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+
+	pci_dev = RTE_ETH_DEV_TO_PCI(dev);
+
+	for (i = 0; i < pci_dev->max_vfs; i++) {
+		if (qdma_dev->vfinfo[i].func_id == devfn)
+			return i;
+	}
+
+	return QDMA_FUNC_ID_INVALID;
+}
+
+static void qdma_read_vf_msg(struct rte_eth_dev *dev, uint8_t devfn)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	uint64_t bar_addr;
+	struct qdma_mbox_data recv_msg;
+	struct mbox_imsg *in_msg;
+	int32_t retval = -1;
+	uint32_t reg_val;
+	uint16_t vf;
+	int i;
+	bar_addr = (uint64_t)qdma_dev->bar_addr[qdma_dev->config_bar_idx];
+
+	/* write function ID into target function register to get the
+	 * msg in incoming message register
+	 */
+
+	qdma_write_reg((uint64_t)(bar_addr + QDMA_TRQ_EXT + QDMA_MBOX_TRGT_FN),
+									devfn);
+	in_msg = (struct mbox_imsg *)(bar_addr + QDMA_TRQ_EXT + QDMA_MBOX_IMSG);
+	reg_val = qdma_read_reg((uint64_t)&in_msg->imsg[0]);
+
+	recv_msg.opcode = reg_val & 0xff;
+	recv_msg.debug_funid  = (reg_val >> 8) & 0xfff;
+	recv_msg.filler = (reg_val >> 20) & 0xf;
+	recv_msg.err    = (reg_val >> 24) & 0xff;
+
+	for (i = 1; i < 32; i++)
+		recv_msg.data[i - 1] = qdma_read_reg((uint64_t)&
+							in_msg->imsg[i]);
+
+	if (recv_msg.opcode == QDMA_MBOX_OPCD_HI) {
+		retval = qdma_vf_hi(dev, devfn, &recv_msg);
+		goto ack_ok;
+	}
+
+	vf = qdma_get_dev_internal_vfid(dev, devfn);
+
+	if (vf == QDMA_FUNC_ID_INVALID)
+		return;
+
+	switch (recv_msg.opcode) {
+	case QDMA_MBOX_OPCD_BYE:
+		retval = qdma_vf_bye(dev, vf, devfn);
+		break;
+	case QDMA_MBOX_OPCD_QADD:
+		retval = qdma_vf_qadd(dev, vf, devfn, &recv_msg);
+		break;
+	case QDMA_MBOX_OPCD_QDEL:
+		retval = qdma_vf_qdel(dev, vf, &recv_msg);
+		break;
+	}
+
+ack_ok:
+	/* once the msg is handled ACK it */
+	if (!retval)
+		qdma_write_reg((bar_addr + QDMA_TRQ_EXT + QDMA_MBOX_FCMD),
+					QDMA_MBOX_CMD_RECV);
+}
+
+static void qdma_check_vf_msg(void *arg)
+{
+	struct qdma_pci_dev *qdma_dev = NULL;
+	uint64_t bar_addr, reg_addr;
+	struct mbox_fsr *mbx_stat;
+
+	qdma_dev = ((struct rte_eth_dev *)arg)->data->dev_private;
+	if (!qdma_dev)
+		return;
+
+	bar_addr = (uint64_t)qdma_dev->bar_addr[qdma_dev->config_bar_idx];
+	reg_addr = bar_addr + QDMA_TRQ_EXT + QDMA_MBOX_FSR;
+	mbx_stat = (struct mbox_fsr *)(reg_addr);
+
+
+	if (mbx_stat->imsg_stat == 1)
+		qdma_read_vf_msg((struct rte_eth_dev *)arg,
+					mbx_stat->curr_src_fn);
+
+	rte_eal_alarm_set(MBOX_POLL_FRQ, qdma_check_vf_msg, arg);
+}
+
+/*
+ * The set of PCI devices this driver supports
+ */
+static struct rte_pci_id qdma_pci_id_tbl[] = {
+#define RTE_PCI_DEV_ID_DECL_XNIC(vend, dev) {RTE_PCI_DEVICE(vend, dev)},
+#ifndef PCI_VENDOR_ID_XILINX
+#define PCI_VENDOR_ID_XILINX 0x10ee
+#endif
+
+	/** Gen 1 PF */
+	/** PCIe lane width x1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9011)	/** PF 0 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9111)	/** PF 1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9211)	/** PF 2 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9311)	/** PF 3 */
+	/** PCIe lane width x4 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9014)	/** PF 0 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9114)	/** PF 1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9214)	/** PF 2 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9314)	/** PF 3 */
+	/** PCIe lane width x8 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9018)	/** PF 0 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9118)	/** PF 1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9218)	/** PF 2 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9318)	/** PF 3 */
+	/** PCIe lane width x16 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x901f)	/** PF 0 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x911f)	/** PF 1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x921f)	/** PF 2 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x931f)	/** PF 3 */
+
+	/** Gen 2 PF */
+	/** PCIe lane width x1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9021)	/** PF 0 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9121)	/** PF 1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9221)	/** PF 2 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9321)	/** PF 3 */
+	/** PCIe lane width x4 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9024)	/** PF 0 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9124)	/** PF 1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9224)	/** PF 2 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9324)	/** PF 3 */
+	/** PCIe lane width x8 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9028)	/** PF 0 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9128)	/** PF 1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9228)	/** PF 2 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9328)	/** PF 3 */
+	/** PCIe lane width x16 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x902f)	/** PF 0 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x912f)	/** PF 1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x922f)	/** PF 2 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x932f)	/** PF 3 */
+
+	/** Gen 3 PF */
+	/** PCIe lane width x1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9031)	/** PF 0 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9131)	/** PF 1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9231)	/** PF 2 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9331)	/** PF 3 */
+	/** PCIe lane width x4 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9034)	/** PF 0 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9134)	/** PF 1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9234)	/** PF 2 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9334)	/** PF 3 */
+	/** PCIe lane width x8 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9038)	/** PF 0 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9138)	/** PF 1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9238)	/** PF 2 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9338)	/** PF 3 */
+	/** PCIe lane width x16 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x903f)	/** PF 0 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x913f)	/** PF 1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x923f)	/** PF 2 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x933f)	/** PF 3 */
+
+	/** Gen 4 PF */
+	/** PCIe lane width x1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9041)	/** PF 0 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9141)	/** PF 1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9241)	/** PF 2 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9341)	/** PF 3 */
+	/** PCIe lane width x4 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9044)	/** PF 0 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9144)	/** PF 1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9244)	/** PF 2 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9344)	/** PF 3 */
+	/** PCIe lane width x8 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9048)	/** PF 0 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9148)	/** PF 1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9248)	/** PF 2 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0x9348)	/** PF 3 */
+
+	{ .vendor_id = 0, /* sentinel */ },
+};
+
+static void qdma_device_attributes_get(struct qdma_pci_dev *qdma_dev)
+{
+	int mm_c2h_flag = 0;
+	int mm_h2c_flag = 0;
+	int st_c2h_flag = 0;
+	int st_h2c_flag = 0;
+	uint64_t bar_addr;
+	uint32_t v1;
+
+	bar_addr = (uint64_t)qdma_dev->bar_addr[qdma_dev->config_bar_idx];
+	v1 = qdma_read_reg((uint64_t)(bar_addr + QDMA_REG_GLBL_QMAX));
+
+	/* DPDK limitation */
+	if (v1 > RTE_MAX_QUEUES_PER_PORT)
+		v1 = RTE_MAX_QUEUES_PER_PORT;
+	qdma_dev->qsets_max = v1;
+
+	v1 = qdma_read_reg((uint64_t)(bar_addr + QDMA_REG_GLBL_MDMA_CHANNEL));
+	mm_c2h_flag = (v1 & MDMA_CHANNEL_MM_C2H_ENABLED_MASK) ? 1 : 0;
+	mm_h2c_flag = (v1 & MDMA_CHANNEL_MM_H2C_ENABLED_MASK) ? 1 : 0;
+	st_c2h_flag = (v1 & MDMA_CHANNEL_ST_C2H_ENABLED_MASK) ? 1 : 0;
+	st_h2c_flag = (v1 & MDMA_CHANNEL_ST_H2C_ENABLED_MASK) ? 1 : 0;
+
+	qdma_dev->mm_mode_en = (mm_c2h_flag && mm_h2c_flag) ? 1 : 0;
+	qdma_dev->st_mode_en = (st_c2h_flag && st_h2c_flag) ? 1 : 0;
+
+	PMD_DRV_LOG(INFO, "qmax = %d, mm %d, st %d.\n", qdma_dev->qsets_max,
+			 qdma_dev->mm_mode_en, qdma_dev->st_mode_en);
+}
+
+static inline uint8_t pcie_find_cap(const struct rte_pci_device *pci_dev,
+					uint8_t cap)
+{
+	uint8_t pcie_cap_pos = 0;
+	uint8_t pcie_cap_id = 0;
+
+	if (rte_pci_read_config(pci_dev, &pcie_cap_pos, sizeof(uint8_t),
+				PCI_CAPABILITY_LIST) < 0) {
+		PMD_DRV_LOG(ERR, "PCIe config space read failed..\n");
+		return 0;
+	}
+
+	while (pcie_cap_pos >= 0x40) {
+		pcie_cap_pos &= ~3;
+
+		if (rte_pci_read_config(pci_dev, &pcie_cap_id, sizeof(uint8_t),
+					pcie_cap_pos + PCI_CAP_LIST_ID) < 0) {
+			PMD_DRV_LOG(ERR, "PCIe config space read failed..\n");
+			goto ret;
+		}
+
+		if (pcie_cap_id == 0xff)
+			break;
+
+		if (pcie_cap_id == cap)
+			return pcie_cap_pos;
+
+		if (rte_pci_read_config(pci_dev, &pcie_cap_pos, sizeof(uint8_t),
+					pcie_cap_pos + PCI_CAP_LIST_NEXT) < 0) {
+			PMD_DRV_LOG(ERR, "PCIe config space read failed..\n");
+			goto ret;
+		}
+	}
+
+ret:
+	return 0;
+}
+
+static void pcie_perf_enable(const struct rte_pci_device *pci_dev)
+{
+	uint16_t value;
+	uint8_t pcie_cap_pos = pcie_find_cap(pci_dev, PCI_CAP_ID_EXP);
+
+	if (!pcie_cap_pos)
+		return;
+
+	if (pcie_cap_pos > 0) {
+		if (rte_pci_read_config(pci_dev, &value, sizeof(uint16_t),
+					 pcie_cap_pos + PCI_EXP_DEVCTL) < 0) {
+			PMD_DRV_LOG(ERR, "PCIe config space read failed..\n");
+			return;
+		}
+
+		value |= (PCI_EXP_DEVCTL_EXT_TAG | PCI_EXP_DEVCTL_RELAX_EN);
+
+		if (rte_pci_write_config(pci_dev, &value, sizeof(uint16_t),
+					   pcie_cap_pos + PCI_EXP_DEVCTL) < 0) {
+			PMD_DRV_LOG(ERR, "PCIe config space write failed..\n");
+			return;
+		}
+	}
+}
+
+
+/**
+ * DPDK callback to register a PCI device.
+ *
+ * This function creates an Ethernet device for each port of a given
+ * PCI device.
+ *
+ * @param[in] dev
+ *   Pointer to Ethernet device structure.
+ *
+ * @return
+ *   0 on success, negative errno value on failure.
+ */
+static int eth_qdma_dev_init(struct rte_eth_dev *dev)
+{
+	struct qdma_pci_dev *dma_priv;
+	uint8_t *baseaddr;
+	uint64_t bar_len;
+	int i, idx;
+	static bool once = true;
+	int vf_num;
+	uint64_t reg_addr, sz;
+	uint32_t reg_val;
+	uint32_t pfch_val;
+	struct rte_pci_device *pci_dev;
+
+	/* sanity checks */
+	if (dev == NULL)
+		return -EINVAL;
+	if (dev->data == NULL)
+		return -EINVAL;
+	if (dev->data->dev_private == NULL)
+		return -EINVAL;
+
+	pci_dev = RTE_ETH_DEV_TO_PCI(dev);
+	if (pci_dev == NULL)
+		return -EINVAL;
+
+	/* for secondary processes, we don't initialise any further as primary
+	 * has already done this work.
+	 */
+	if (rte_eal_process_type() != RTE_PROC_PRIMARY) {
+		qdma_dev_ops_init(dev);
+		return 0;
+	}
+
+	if (once)
+		RTE_LOG(INFO, PMD, "QDMA PMD VERSION: %s\n", QDMA_PMD_VERSION);
+
+	/* allocate space for a single Ethernet MAC address */
+	dev->data->mac_addrs = rte_zmalloc("qdma", ETHER_ADDR_LEN * 1, 0);
+	if (dev->data->mac_addrs == NULL)
+		return -ENOMEM;
+
+	/* Copy some dummy Ethernet MAC address for QDMA device
+	 * This will change in real NIC device...
+	 */
+	for (i = 0; i < ETHER_ADDR_LEN; ++i)
+		dev->data->mac_addrs[0].addr_bytes[i] = 0x15 + i;
+
+	/* Init system & device */
+	dma_priv = (struct qdma_pci_dev *)dev->data->dev_private;
+	dma_priv->pf = PCI_DEVFN(pci_dev->addr.devid, pci_dev->addr.function);
+	dma_priv->queue_base = DEFAULT_QUEUE_BASE;
+	dma_priv->timer_count = DEFAULT_TIMER_CNT_TRIG_MODE_TIMER;
+
+	/* Setting default Mode to TRIG_MODE_USER_TIMER_COUNT */
+	dma_priv->trigger_mode = TRIG_MODE_USER_TIMER_COUNT;
+	if (dma_priv->trigger_mode == TRIG_MODE_USER_TIMER_COUNT)
+		dma_priv->timer_count = DEFAULT_TIMER_CNT_TRIG_MODE_COUNT_TIMER;
+
+	dma_priv->en_desc_prefetch = 0; //Keep prefetch default to 0
+	dma_priv->cmpt_desc_len = DEFAULT_QDMA_CMPT_DESC_LEN;
+	dma_priv->c2h_bypass_mode = C2H_BYPASS_MODE_NONE;
+	dma_priv->h2c_bypass_mode = 0;
+
+	/*Default write-back accumulation interval */
+	dma_priv->wb_acc_int = DEFAULT_WB_ACC_INT;
+
+	dma_priv->config_bar_idx = DEFAULT_PF_CONFIG_BAR;
+	dma_priv->bypass_bar_idx = BAR_ID_INVALID;
+	dma_priv->user_bar_idx = BAR_ID_INVALID;
+
+	/* Check and handle device devargs*/
+	if (qdma_check_kvargs(dev->device->devargs, dma_priv)) {
+		PMD_DRV_LOG(INFO, "devargs failed\n");
+		rte_free(dev->data->mac_addrs);
+		return -EINVAL;
+	}
+
+	idx = qdma_identify_bars(dev);
+	if (idx < 0) {
+		rte_free(dev->data->mac_addrs);
+		return -EINVAL;
+	}
+
+	PMD_DRV_LOG(INFO, "QDMA device driver probe:");
+
+	idx = qdma_get_hw_version(dev);
+	if (idx < 0) {
+		rte_free(dev->data->mac_addrs);
+		return -EINVAL;
+	}
+
+	baseaddr = (uint8_t *)
+			pci_dev->mem_resource[dma_priv->config_bar_idx].addr;
+	bar_len = pci_dev->mem_resource[dma_priv->config_bar_idx].len;
+
+	dma_priv->bar_addr[dma_priv->config_bar_idx] = baseaddr;
+	dma_priv->bar_len[dma_priv->config_bar_idx] = bar_len;
+
+	if (dma_priv->user_bar_idx >= 0) {
+		baseaddr = (uint8_t *)
+			    pci_dev->mem_resource[dma_priv->user_bar_idx].addr;
+		bar_len = pci_dev->mem_resource[dma_priv->user_bar_idx].len;
+
+		dma_priv->bar_addr[dma_priv->user_bar_idx] = baseaddr;
+		dma_priv->bar_len[dma_priv->user_bar_idx] = bar_len;
+	}
+
+	qdma_dev_ops_init(dev);
+	baseaddr = (uint8_t *)
+			pci_dev->mem_resource[dma_priv->config_bar_idx].addr;
+
+	/* Getting the device attributes from the Hardware */
+	qdma_device_attributes_get(dma_priv);
+
+	dma_priv->c2h_mm_control = (volatile uint32_t *)(baseaddr +
+							  QDMA_TRQ_SEL_C2H_MM0 +
+							  QDMA_C2H_MM0_CONTROL);
+	dma_priv->h2c_mm_control = (volatile uint32_t *)(baseaddr +
+							 QDMA_TRQ_SEL_H2C_MM0 +
+							 QDMA_H2C_MM0_CONTROL);
+	if (once) {
+		/** Write-back accumulation configuration **/
+		reg_addr = (uint64_t)(baseaddr + QDMA_TRQ_SEL_GLBL +
+					QDMA_GLBL_DSC_CFG);
+		reg_val = ((dma_priv->wb_acc_int <<
+					QDMA_GLBL_DSC_CFG_WB_ACC_SHFT) |
+				(DEFAULT_MAX_DESC_FETCH <<
+				 QDMA_GLBL_DSC_CFG_MAX_DSC_FTCH_SHFT));
+		qdma_write_reg((uint64_t)reg_addr, reg_val);
+#ifdef RTE_LIBRTE_QDMA_DEBUG_DRIVER
+		reg_val = qdma_read_reg((uint64_t)reg_addr);
+		PMD_DRV_LOG(INFO, " GLBL_DSC_CFG reg_val:0x%x, wb_acc: %d,"
+				" max_desc_fetch: %d\n",
+			reg_val, (reg_val & QDMA_GLBL_DSC_CFG_WB_ACC_MSK),
+			(reg_val & QDMA_GLBL_DSC_CFG_MAX_DSC_FTCH_MSK) >>
+				QDMA_GLBL_DSC_CFG_MAX_DSC_FTCH_SHFT);
+#endif
+		/* Ring-size configuration, need to set the same index
+		 * in the H2C/C2H context structure
+		 */
+		reg_addr = (uint64_t)(baseaddr + QDMA_TRQ_SEL_GLBL +
+					QDMA_GLBL_RING_SZ);
+		for (i = 0; i < QDMA_GLOBAL_CSR_ARRAY_SZ; i++, reg_addr += 4) {
+			qdma_write_reg((uint64_t)reg_addr, g_ring_sz[i]);
+#ifdef RTE_LIBRTE_QDMA_DEBUG_DRIVER
+			reg_val = qdma_read_reg((uint64_t)reg_addr);
+			PMD_DRV_LOG(INFO, " Ring-size reg_val:0x%x written to "
+					"index %d", reg_val, i);
+#endif
+		}
+
+		/* C2H threshold count configuration, need to set the same index
+		 * in the C2H completion context structure
+		 */
+		reg_addr = (uint64_t)(baseaddr + QDMA_TRQ_SEL_C2H +
+					QDMA_C2H_CNT_TH_BASE);
+		for (i = 0; i < QDMA_GLOBAL_CSR_ARRAY_SZ; i++, reg_addr += 4) {
+			qdma_write_reg((uint64_t)reg_addr, g_c2h_cnt_th[i]);
+#ifdef RTE_LIBRTE_QDMA_DEBUG_DRIVER
+			reg_val = qdma_read_reg((uint64_t)reg_addr);
+			PMD_DRV_LOG(INFO, " threshold-count reg_val:0x%x "
+					"written to index %d\n", reg_val, i);
+#endif
+		}
+
+		/* C2H Buf size, need to allocate the same buffer size
+		 * in the C2H descriptor source addr
+		 */
+		reg_addr = (uint64_t)(baseaddr + QDMA_TRQ_SEL_C2H +
+						QDMA_C2H_BUF_SZ_BASE);
+		for (i = 0; i < QDMA_GLOBAL_CSR_ARRAY_SZ; i++, reg_addr += 4) {
+			qdma_write_reg((uint64_t)reg_addr, g_c2h_buf_sz[i]);
+#ifdef RTE_LIBRTE_QDMA_DEBUG_DRIVER
+			reg_val = qdma_read_reg((uint64_t)reg_addr);
+			PMD_DRV_LOG(INFO, " Buffer size for C2H, reg_val:0x%x "
+					"written to index %d\n", reg_val, i);
+#endif
+		}
+
+		/** C2H Prefetch configuration */
+		reg_addr = (uint64_t)(baseaddr + QDMA_TRQ_SEL_C2H +
+					QDMA_C2H_PFCH_CACHE_DEPTH_OFFSET);
+		pfch_val = qdma_read_reg(reg_addr);
+
+		reg_addr = (uint64_t)(baseaddr + QDMA_TRQ_SEL_C2H +
+						QDMA_C2H_PFCH_CFG_OFFSET);
+		reg_val = ((DEFAULT_PFCH_STOP_THRESH <<
+					QDMA_C2H_PFCH_CFG_STOP_THRESH_SHIFT) |
+				(DEFAULT_PFCH_NUM_ENTRIES_PER_Q <<
+				 QDMA_C2H_PFCH_CFG_NUM_ENTRIES_PER_Q_SHIFT) |
+				((pfch_val / 2) <<
+				 QDMA_C2H_PFCH_CFG_MAX_Q_CNT_SHIFT) |
+				(((pfch_val / 2) - 2) <<
+				 QDMA_C2H_PFCH_CFG_EVICTION_Q_CNT_SHIFT));
+		qdma_write_reg((uint64_t)reg_addr, reg_val);
+#ifdef RTE_LIBRTE_QDMA_DEBUG_DRIVER
+		reg_val = qdma_read_reg((uint64_t)reg_addr);
+		PMD_DRV_LOG(INFO, "C2H prefetch config, reg_val:0x%x", reg_val);
+#endif
+
+		/** C2H timer tick configuration */
+		reg_addr = (uint64_t)(baseaddr + QDMA_TRQ_SEL_C2H +
+					QDMA_C2H_INT_TIMER_TICK_OFFSET);
+		qdma_write_reg((uint64_t)reg_addr, DEFAULT_C2H_INTR_TIMER_TICK);
+#ifdef RTE_LIBRTE_QDMA_DEBUG_DRIVER
+		reg_val = qdma_read_reg((uint64_t)reg_addr);
+		PMD_DRV_LOG(INFO, " timer tick for C2H, reg_val:0x%x", reg_val);
+#endif
+
+		/** C2H Writeback Coalesce configuration */
+		reg_addr = (uint64_t)(baseaddr + QDMA_TRQ_SEL_C2H +
+					QDMA_C2H_CMPT_COAL_BUF_DEPTH_OFFSET);
+		pfch_val = qdma_read_reg(reg_addr);
+
+		reg_addr = (uint64_t)(baseaddr + QDMA_TRQ_SEL_C2H +
+					QDMA_C2H_CMPT_COAL_CFG_OFFSET);
+		reg_val = ((DEFAULT_CMPT_COAL_TIMER_CNT <<
+				QDMA_C2H_CMPT_COAL_TIMER_CNT_VAL_SHIFT) |
+				(DEFAULT_CMPT_COAL_TIMER_TICK <<
+				 QDMA_C2H_CMPT_COAL_TIMER_TICK_VAL_SHIFT) |
+				(pfch_val <<
+				 QDMA_C2H_CMPT_COAL_MAX_BUF_SZ_SHIFT));
+
+		qdma_write_reg((uint64_t)reg_addr, reg_val);
+#ifdef RTE_LIBRTE_QDMA_DEBUG_DRIVER
+		reg_val = qdma_read_reg((uint64_t)reg_addr);
+		PMD_DRV_LOG(INFO, "C2H writeback coalesce config, reg_val:0x%x",
+				reg_val);
+#endif
+		/** C2H timer configuration*/
+		reg_addr = (uint64_t)(baseaddr + QDMA_TRQ_SEL_C2H +
+						QDMA_C2H_TIMER_BASE);
+		for (i = 0; i < QDMA_GLOBAL_CSR_ARRAY_SZ; i++, reg_addr += 4) {
+			qdma_write_reg((uint64_t)reg_addr, g_c2h_timer_cnt[i]);
+#ifdef RTE_LIBRTE_QDMA_DEBUG_DRIVER
+			reg_val = qdma_read_reg((uint64_t)reg_addr);
+			PMD_DRV_LOG(INFO, " timer count for C2H, reg_val:0x%x "
+					"written to index %d\n", reg_val, i);
+#endif
+		}
+
+		/* Data Threshold (Throttle) register setting when
+		 * Prefetch is disabled
+		 */
+		reg_addr = (uint64_t)(baseaddr + QDMA_TRQ_SEL_H2C +
+					QDMA_H2C_DATA_THRESHOLD_OFFSET);
+		qdma_write_reg((uint64_t)reg_addr, DEFAULT_H2C_THROTTLE);
+		once = false;
+	}
+
+	vf_num = pci_dev->max_vfs;
+	if (vf_num) {
+		sz = sizeof(struct qdma_vf_info) * vf_num;
+		dma_priv->vfinfo = rte_zmalloc("vfinfo", sz, 0);
+		if (dma_priv->vfinfo == NULL)
+			rte_panic("Cannot allocate memory for VF info\n");
+		/* Mark all VFs with invalid function id mapping*/
+		for (i = 0; i < vf_num; i++)
+			dma_priv->vfinfo[i].func_id = QDMA_FUNC_ID_INVALID;
+
+		rte_eal_alarm_set(MBOX_POLL_FRQ, qdma_check_vf_msg,
+							(void *)dev);
+	}
+
+	pcie_perf_enable(pci_dev);
+
+	return 0;
+}
+
+/**
+ * DPDK callback to deregister PCI device.
+ *
+ * @param[in] dev
+ *   Pointer to Ethernet device structure.
+ *
+ * @return
+ *   0 on success, negative errno value on failure.
+ */
+static int eth_qdma_dev_uninit(struct rte_eth_dev *dev)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	uint32_t numvf, i, count, v;
+	struct mbox_fsr *mbx_stat;
+	struct qdma_mbox_data send_msg;
+	uint64_t bar_addr, addr;
+	struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
+
+	/* only uninitialize in the primary process */
+	if (rte_eal_process_type() != RTE_PROC_PRIMARY)
+		return -EPERM;
+	bar_addr = (uint64_t)qdma_dev->bar_addr[qdma_dev->config_bar_idx];
+	mbx_stat = (struct mbox_fsr *)(bar_addr + QDMA_TRQ_EXT + QDMA_MBOX_FSR);
+
+	numvf = pci_dev->max_vfs;
+
+	for (i = 0; i < numvf; i++) {
+		count = MAILBOX_PROG_POLL_COUNT;
+		memset(&send_msg, 0, sizeof(send_msg));
+		if (qdma_dev->vfinfo[i].qmax) {
+			qdma_write_reg((uint64_t)(bar_addr + QDMA_TRQ_EXT +
+							QDMA_MBOX_TRGT_FN),
+					qdma_dev->vfinfo[i].func_id);
+			while (mbx_stat->omsg_stat && count) {
+				rte_delay_ms(MAILBOX_PF_MSG_DELAY);
+				count--;
+			}
+			if (count) {
+				PMD_DRV_LOG(INFO, "PF-%d(DEVFN) send BYE "
+						"message to VF-%d(DEVFN)",
+						qdma_dev->pf,
+						qdma_dev->vfinfo[i].func_id);
+				send_msg.opcode = QDMA_MBOX_OPCD_BYE;
+				send_msg.debug_funid = qdma_dev->pf;
+				v = rte_cpu_to_le_32(send_msg.debug_funid << 8 |
+							send_msg.opcode);
+				addr = bar_addr + QDMA_TRQ_EXT + QDMA_MBOX_OMSG;
+				qdma_write_reg(addr, v);
+
+				addr = bar_addr + QDMA_TRQ_EXT + QDMA_MBOX_FCMD;
+				qdma_write_reg(addr, QDMA_MBOX_CMD_SEND);
+
+				count = MAILBOX_PROG_POLL_COUNT;
+				while (mbx_stat->omsg_stat && count) {
+					rte_delay_ms(MAILBOX_PF_MSG_DELAY);
+					count--;
+				}
+				if (!count)
+					PMD_DRV_LOG(INFO, "Pf-%d(DEVFN) did "
+							"not receive ACK from "
+							"VF-%d(DEVFN)",
+							qdma_dev->pf,
+						   qdma_dev->vfinfo[i].func_id);
+			} else {
+				PMD_DRV_LOG(INFO, "Pf-%d(DEVFN) could not send "
+						"BYE message to VF-%d(DEVFN)",
+						qdma_dev->pf,
+						qdma_dev->vfinfo[i].func_id);
+				break;
+			}
+		}
+	}
+
+	/* cancel pending polls*/
+	rte_eal_alarm_cancel(qdma_check_vf_msg, (void *)dev);
+	*qdma_dev->h2c_mm_control = 0; /* Stop Tx h2c engine */
+	*qdma_dev->c2h_mm_control = 0;
+
+	if (qdma_dev->vfinfo != NULL) {
+		rte_free(qdma_dev->vfinfo);
+		qdma_dev->vfinfo = NULL;
+	}
+
+	dev->dev_ops = NULL;
+	dev->rx_pkt_burst = NULL;
+	dev->tx_pkt_burst = NULL;
+	dev->data->nb_rx_queues = 0;
+	dev->data->nb_tx_queues = 0;
+
+	if (dev->data->mac_addrs != NULL) {
+		rte_free(dev->data->mac_addrs);
+		dev->data->mac_addrs = NULL;
+	}
+
+	if (qdma_dev->q_info != NULL) {
+		rte_free(qdma_dev->q_info);
+		qdma_dev->q_info = NULL;
+	}
+
+	return 0;
+}
+
+static int eth_qdma_pci_probe(struct rte_pci_driver *pci_drv __rte_unused,
+				struct rte_pci_device *pci_dev)
+{
+	return rte_eth_dev_pci_generic_probe(pci_dev,
+						sizeof(struct qdma_pci_dev),
+						eth_qdma_dev_init);
+}
+
+/* Detach a ethdev interface */
+static int eth_qdma_pci_remove(struct rte_pci_device *pci_dev)
+{
+	return rte_eth_dev_pci_generic_remove(pci_dev, eth_qdma_dev_uninit);
+}
+
+static struct rte_pci_driver rte_qdma_pmd = {
+	.id_table = qdma_pci_id_tbl,
+	.drv_flags = RTE_PCI_DRV_NEED_MAPPING,
+	.probe = eth_qdma_pci_probe,
+	.remove = eth_qdma_pci_remove,
+};
+
+RTE_PMD_REGISTER_PCI(net_qdma, rte_qdma_pmd);
+RTE_PMD_REGISTER_PCI_TABLE(net_qdma, qdma_pci_id_tbl);
diff --git a/QDMA/DPDK/drivers/net/qdma/qdma_export.h b/QDMA/DPDK/drivers/net/qdma/qdma_export.h
new file mode 100644
index 0000000..8314352
--- /dev/null
+++ b/QDMA/DPDK/drivers/net/qdma/qdma_export.h
@@ -0,0 +1,68 @@
+/*-
+ *   BSD LICENSE
+ *
+ *   Copyright(c) 2017-2018 Xilinx, Inc. All rights reserved.
+ *
+ *   Redistribution and use in source and binary forms, with or without
+ *   modification, are permitted provided that the following conditions
+ *   are met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in
+ *       the documentation and/or other materials provided with the
+ *       distribution.
+ *     * Neither the name of the copyright holder nor the names of its
+ *       contributors may be used to endorse or promote products derived
+ *       from this software without specific prior written permission.
+ *
+ *   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ *   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ *   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ *   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ *   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ *   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ *   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ *   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef __QDMA_EXPORT_H__
+#define __QDMA_EXPORT_H__
+
+#include <rte_dev.h>
+#include <rte_ethdev.h>
+#include <rte_spinlock.h>
+#include <rte_log.h>
+#include <rte_byteorder.h>
+#include <rte_memzone.h>
+#include <linux/pci.h>
+
+enum rte_xdebug_type {
+	ETH_XDEBUG_QDMA_GLOBAL_CSR,
+	ETH_XDEBUG_QUEUE_CONTEXT,
+	ETH_XDEBUG_QUEUE_STRUCT,
+	ETH_XDEBUG_QUEUE_DESC_DUMP,
+	ETH_XDEBUG_MAX,
+};
+
+enum rte_xdebug_desc_type {
+	ETH_XDEBUG_DESC_C2H,
+	ETH_XDEBUG_DESC_H2C,
+	ETH_XDEBUG_DESC_CMPT,
+	ETH_XDEBUG_DESC_MAX,
+};
+struct rte_xdebug_desc_param {
+	uint16_t queue;
+	int start;
+	int end;
+	enum rte_xdebug_desc_type type;
+};
+
+int qdma_xdebug(uint8_t port_id, enum rte_xdebug_type type,
+			void *params);
+
+#endif /* ifndef __QDMA_EXPORT_H__ */
diff --git a/QDMA/DPDK/drivers/net/qdma/qdma_regs.h b/QDMA/DPDK/drivers/net/qdma/qdma_regs.h
new file mode 100644
index 0000000..5955e64
--- /dev/null
+++ b/QDMA/DPDK/drivers/net/qdma/qdma_regs.h
@@ -0,0 +1,367 @@
+/*-
+ *   BSD LICENSE
+ *
+ *   Copyright(c) 2017-2018 Xilinx, Inc. All rights reserved.
+ *
+ *   Redistribution and use in source and binary forms, with or without
+ *   modification, are permitted provided that the following conditions
+ *   are met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in
+ *       the documentation and/or other materials provided with the
+ *       distribution.
+ *     * Neither the name of the copyright holder nor the names of its
+ *       contributors may be used to endorse or promote products derived
+ *       from this software without specific prior written permission.
+ *
+ *   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ *   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ *   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ *   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ *   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ *   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ *   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ *   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef __QDMA_REGS_H__
+#define __QDMA_REGS_H__
+
+#define QDMA_BAR_NUM		(6)
+
+#define QDMA_GLOBAL_CSR_ARRAY_SZ        (16)
+
+extern uint32_t g_ring_sz[QDMA_GLOBAL_CSR_ARRAY_SZ];
+extern uint32_t g_c2h_cnt_th[QDMA_GLOBAL_CSR_ARRAY_SZ];
+extern uint32_t g_c2h_buf_sz[QDMA_GLOBAL_CSR_ARRAY_SZ];
+extern uint32_t g_c2h_timer_cnt[QDMA_GLOBAL_CSR_ARRAY_SZ];
+
+/** Target definations **/
+#define QDMA_TRQ_SEL_GLBL	0x00000200
+#define QDMA_TRQ_SEL_FMAP	0x00000400
+#define QDMA_TRQ_SEL_IND	0x00000800
+#define QDMA_TRQ_SEL_C2H	0x00000A00
+#define QDMA_TRQ_SEL_H2C	0x00000E00
+#define QDMA_TRQ_SEL_C2H_MM0	0x00001000
+#define QDMA_TRQ_SEL_H2C_MM0	0x00001200
+#define QDMA_TRQ_EXT		0x00002400
+//#define QDMA_TRQ_SEL_QUEUE_PF	0x00001800 /* for old Bitstreams **/
+#define QDMA_TRQ_SEL_QUEUE_PF	0x00018000
+#define QDMA_TRQ_EXT_VF		0x00001000
+#define QDMA_TRQ_SEL_QUEUE_VF	0x00003000
+
+#define QDMA_CONFIG_BLOCK_ID	0x1fd30000UL
+/** Global registers **/
+#define QDMA_GLBL_RING_SZ	0x04
+#define QDMA_GLBL_SCRATCH	0x44
+#define QDMA_GLBL_DSC_CFG	0x50
+#define QDMA_RING_SZ_MSK	0x0000ffff
+#define QDMA_GLBL_DSC_CFG_WB_ACC_MSK	0x00000007
+#define QDMA_GLBL_DSC_CFG_MAX_DSC_FTCH_MSK	0x00000038
+#define QDMA_GLBL_DSC_CFG_WB_ACC_SHFT	0
+#define QDMA_GLBL_DSC_CFG_MAX_DSC_FTCH_SHFT	3
+#define QDMA_GLBL2_PF_BARLITE_INT      0x104
+#define QDMA_GLBL2_PF_VF_BARLITE_INT   0x108
+#define QDMA_GLBL2_PF_BARLITE_EXT      0x10c
+#define QDMA_GLBL2_VF_BARLITE_EXT      0x1018
+#define QDMA_PF_RTL_VER		       0x134
+#define QDMA_VF_RTL_VER		       0x1014
+#define	PF_RTL_VERSION_MASK                0xFF0000
+#define	PF_RTL_VERSION_SHIFT               16
+#define	PF_VIVADO_RELEASE_ID_MASK          0x0F000000
+#define	PF_VIVADO_RELEASE_ID_SHIFT         24
+#define	PF_EVEREST_IP_MASK                 0x10000000
+#define	PF_EVEREST_IP_SHIFT                28
+#define	VF_RTL_VERSION_MASK                0xFF
+#define	VF_RTL_VERSION_SHIFT               0
+#define	VF_VIVADO_RELEASE_ID_MASK          0x0F00
+#define	VF_VIVADO_RELEASE_ID_SHIFT         8
+#define	VF_EVEREST_IP_MASK                 0x1000
+#define	VF_EVEREST_IP_SHIFT                12
+
+/** Fmap registers **/
+#define QID_BASE_MSK		(0x000007ff)
+#define QID_MAX_MSK		(0x003ff800)
+#define QID_MAX_SHIFT_B			(11)
+
+/** Queue Indirect programming commands **/
+
+#define QDMA_IND_Q_PRG_OFF	(0x4)
+
+#define QDMA_CTXT_CMD_CLR	(0)
+#define QDMA_CTXT_CMD_WR	(1)
+#define QDMA_CTXT_CMD_RD	(2)
+#define QDMA_CTXT_CMD_INV	(3)
+
+#define MASK_0BIT            (0x0)
+#define MASK_32BIT           (0xffffffffUL)
+
+#define QDMA_CTXT_SEL_DESC_SW_C2H	(0)
+#define QDMA_CTXT_SEL_DESC_SW_H2C	(1)
+#define QDMA_CTXT_SEL_DESC_HW_C2H	(2)
+#define QDMA_CTXT_SEL_DESC_HW_H2C	(3)
+#define QDMA_CTXT_SEL_CR_C2H	(4)
+#define QDMA_CTXT_SEL_CR_H2C	(5)
+#define QDMA_CTXT_SEL_DESC_CMPT	(6)
+#define QDMA_CTXT_SEL_PFTCH	(7)
+#define QDMA_CTXT_SEL_FMAP	(12)
+
+#define QID_SHIFT_B		(7)
+#define OP_CODE_SHIFT_B		(5)
+#define CTXT_SEL_SHIFT_B	(1)
+#define BUSY_BIT_MSK		(1)
+
+#define QDMA_CIDX_STEP      (0x10)
+#define QDMA_PIDX_STEP      (0x10)
+
+#define MM_CHAN_SHIFT_B		(19)
+#define DESC_RING_SZ_SHIFT_B	(12)
+#define ST_H2C_DESC_SZ_SHIFT_B	(16)
+#define MM_DESC_SZ_WB_SHIFT_B	(29)
+//#define C2H_WB_CTXT_V_SHIFT_B	(30)
+
+
+/** C2H target registers **/
+#define QDMA_C2H_CNT_TH_BASE	0x40
+#define QDMA_C2H_BUF_SZ_BASE	0xB0
+#define QDMA_C2H_TIMER_BASE		0x00
+
+#define QDMA_C2H_PFCH_CACHE_DEPTH_OFFSET 0x1E0
+#define QDMA_C2H_CMPT_COAL_BUF_DEPTH_OFFSET 0x1E4
+
+#define QDMA_C2H_PFCH_CFG_OFFSET		0x108
+#define QDMA_C2H_PFCH_CFG_STOP_THRESH_SHIFT		(0)
+#define QDMA_C2H_PFCH_CFG_NUM_ENTRIES_PER_Q_SHIFT	(8)
+#define QDMA_C2H_PFCH_CFG_MAX_Q_CNT_SHIFT			(16)
+#define QDMA_C2H_PFCH_CFG_EVICTION_Q_CNT_SHIFT		(25)
+
+#define QDMA_C2H_INT_TIMER_TICK_OFFSET  0x10C
+
+#define QDMA_C2H_CMPT_COAL_CFG_OFFSET	0x150
+#define QDMA_C2H_CMPT_COAL_TIMER_CNT_VAL_SHIFT	(2)
+#define QDMA_C2H_CMPT_COAL_TIMER_TICK_VAL_SHIFT		(14)
+#define QDMA_C2H_CMPT_COAL_MAX_BUF_SZ_SHIFT		(26)
+
+/** H2C target registers **/
+#define QDMA_H2C_DATA_THRESHOLD_OFFSET	0x24 //Base address is QDMA_TRQ_SEL_H2C
+
+/** PF Queue index registers */
+#define QDMA_H2C_PIDX_Q_OFF	(0x04)
+#define QDMA_C2H_PIDX_Q_OFF	(0x08)
+#define QDMA_SEL_CMPT_CIDX_Q_OFF (0x0c)
+
+
+/** QDMA Target registers **/
+#define QDMA_C2H_MM0_CONTROL	0x00000004
+#define QDMA_H2C_MM0_CONTROL	0x00000004
+#define QDMA_MM_CTRL_START	(1 << 0)
+
+/** QDMA Descriptor definations **/
+#define QDMA_DESC_SOP	0x1
+#define QDMA_DESC_EOP	0x1
+#define QDMA_DESC_VALID	0x1
+
+/** Mailbox Register **/
+#define QDMA_MBOX_FSR		0x00
+#define QDMA_MBOX_FCMD		0x04
+#define QDMA_MBOX_TRGT_FN	0x0c
+#define QDMA_MBOX_ACK_BASE	0x20
+#define QDMA_MBOX_IMSG		0x800
+#define QDMA_MBOX_OMSG		0xc00
+
+/** Mailbox commands **/
+#define QDMA_MBOX_CMD_SEND	(1)
+#define QDMA_MBOX_CMD_RECV	(2)
+
+/* Driver visible Attribute Space 0x100 */
+#define QDMA_REG_GLBL_PF_BARLITE_INT             0x104
+#define		PF_BARLITE_INT_3_SHIFT               18
+#define		PF_BARLITE_INT_3_MASK                0xFC0000
+#define		PF_BARLITE_INT_2_SHIFT               12
+#define		PF_BARLITE_INT_2_MASK                0x3F000
+#define		PF_BARLITE_INT_1_SHIFT               6
+#define		PF_BARLITE_INT_1_MASK                0xFC0
+#define		PF_BARLITE_INT_0_SHIFT               0
+#define		PF_BARLITE_INT_0_MASK                0x3F
+
+#define QDMA_REG_GLBL_QMAX                       0x120
+#define QDMA_REG_GLBL_MISC_CAP                   0x134
+#define QDMA_REG_GLBL_MDMA_CHANNEL               0x118
+#define     MDMA_CHANNEL_ST_C2H_ENABLED_SHIFT    16
+#define     MDMA_CHANNEL_ST_C2H_ENABLED_MASK     0x10000
+#define     MDMA_CHANNEL_ST_H2C_ENABLED_SHIFT    17
+#define     MDMA_CHANNEL_ST_H2C_ENABLED_MASK     0x20000
+#define     MDMA_CHANNEL_MM_C2H_ENABLED_SHIFT    8
+#define     MDMA_CHANNEL_MM_C2H_ENABLED_MASK     0x100
+#define     MDMA_CHANNEL_MM_H2C_ENABLED_SHIFT    0
+#define     MDMA_CHANNEL_MM_H2C_ENABLED_MASK     0x1
+
+/** Completion Descriptor config */
+#define CMPT_STATUS_DESC_EN          (1)
+#define CMPT_STATUS_DESC_EN_SHIFT    (27)
+#define CMPT_TRIGGER_MODE_SHIFT      (24)
+#define CMPT_TIMER_CNT_SHIFT         (20)
+#define CMPT_THREHOLD_CNT_SHIFT      (16)
+
+/** Prefetch Context config */
+#define PREFETCH_EN                     (1)
+#define PREFETCH_EN_SHIFT               (27)
+#define PREFETCH_BYPASS_SHIFT           (0)
+#define BUFF_SIZE_INDEX_SHIFT           (1)
+#define VALID_CNTXT                     (1)
+#define VALID_CNTXT_SHIFT               (13)
+
+/** Completion Context config */
+#define CMPT_CNTXT_EN_STAT_DESC          (1)
+#define CMPT_CNTXT_EN_STAT_DESC_SHIFT    (0)
+#define CMPT_CNTXT_COLOR_BIT             (1)
+#define CMPT_CNTXT_COLOR_BIT_SHIFT       (27)
+#define CMPT_CNTXT_TRIGGER_MODE_SHIFT    (2)
+#define CMPT_CNTXT_TIMER_INDEX_SHIFT     (21)
+#define CMPT_CNTXT_THRESHOLD_MODE_SHIFT  (17)
+#define CMPT_CNTXT_FUNC_ID_SHIFT          (5)
+#define CMPT_CNTXT_RING_SIZE_INDEX_SHIFT (28)
+#define CMPT_CNTXT_DESC_SIZE_8B          (0)
+#define CMPT_CNTXT_DESC_SIZE_16B         (1)
+#define CMPT_CNTXT_DESC_SIZE_32B         (2)
+#define CMPT_CNTXT_DESC_SIZE_64B         (3)
+#define CMPT_CNTXT_DESC_SIZE_SHIFT       (90 - (2 * 32))
+#define CMPT_CNTXT_CTXT_VALID            (1)
+#define CMPT_CNTXT_OVF_CHK_DIS_SHIFT      (130 - (4 * 32))
+#define CMPT_CNTXT_CTXT_VALID_SHIFT      (124 - (3 * 32))
+#define CMPT_CNTX_FULL_UPDT		(1)
+#define CMPT_CNTX_FULL_UPDT_SHIFT	(129 - (4 * 32))
+
+/** SOFTWARE DESC CONTEXT */
+#define SW_DESC_CNTXT_WB_EN                 (1)
+#define SW_DESC_CNTXT_WB_EN_SHIFT_B         (52 - (1 * 32))
+#define SW_DESC_CNTXT_8B_BYPASS_DMA	    (0)
+#define SW_DESC_CNTXT_16B_BYPASS_DMA	    (1)
+#define SW_DESC_CNTXT_32B_BYPASS_DMA	    (2)
+#define SW_DESC_CNTXT_64B_BYPASS_DMA	    (3)
+#define SW_DESC_CNTXT_MEMORY_MAP_DMA        (2)
+#define SW_DESC_CNTXT_H2C_STREAM_DMA        (1)
+#define SW_DESC_CNTXT_C2H_STREAM_DMA        (0)
+#define SW_DESC_CNTXT_BYPASS_SHIFT	    (50 - (1 * 32))
+#define SW_DESC_CNTXT_DESC_SZ_SHIFT         (48 - (1 * 32))
+#define SW_DESC_CNTXT_FUNC_ID_SHIFT         (17)
+#define SW_DESC_CNTXT_RING_SIZE_ID_SHIFT    (44 - (1 * 32))
+#define SW_DESC_CNTXT_QUEUE_ENABLE          (1)
+#define SW_DESC_CNTXT_QUEUE_EN_SHIFT        (32 - (1 * 32))
+#define SW_DESC_CNTXT_FETCH_CREDIT_EN       (1)
+#define SW_DESC_CNTXT_FETCH_CREDIT_EN_SHIFT (33 - (1 * 32))
+#define SW_DESC_CNTXT_WBI_CHK               (1)
+#define SW_DESC_CNTXT_WBI_CHK_SHIFT         (34 - (1 * 32))
+#define SW_DESC_CNTXT_WBI_INTERVAL          (1)
+#define SW_DESC_CNTXT_WBI_INTERVAL_SHIFT    (35 - (1 * 32))
+#define SW_DESC_CNTXT_IS_MM                 (1)
+#define SW_DESC_CNTXT_IS_MM_SHIFT           (63 - (1 * 32))
+
+/** QDMA Global registers **/
+struct __attribute__ ((packed)) qdma_global_regs
+{
+	volatile uint32_t ring_sz[16];
+	volatile uint32_t status[16];
+	volatile uint32_t config[16];
+	volatile uint32_t wb_acc;
+	volatile uint32_t pf_scratch_reg;
+};
+
+#define NUM_CONTEXT_REGS	8
+/** Queue Indirect programming registers **/
+struct __attribute__ ((packed)) queue_ind_prg
+{
+	volatile uint32_t ctxt_data[NUM_CONTEXT_REGS];
+	volatile uint32_t ctxt_mask[NUM_CONTEXT_REGS];
+	volatile uint32_t ctxt_cmd;
+};
+
+/** MM Write-back status structure **/
+struct __attribute__ ((packed)) wb_status
+{
+	volatile uint16_t	pidx; /** in C2H WB **/
+	volatile uint16_t	cidx; /** Consumer-index **/
+	uint32_t	rsvd2; /** Reserved. **/
+};
+
+/** ST C2H Descriptor **/
+struct __attribute__ ((packed)) qdma_c2h_desc
+{
+	volatile uint64_t	dst_addr;
+};
+
+#define S_H2C_DESC_F_SOP		1
+#define S_H2C_DESC_F_EOP		2
+
+/* pld_len and flags members are part of custom descriptor format needed
+ * by example design for ST loopback and desc bypass
+ */
+
+/** ST H2C Descriptor **/
+struct __attribute__ ((packed)) qdma_h2c_desc
+{
+	volatile uint16_t	cdh_flags;
+	volatile uint16_t	pld_len;
+	volatile uint16_t	len;
+	volatile uint16_t	flags;
+	volatile uint64_t	src_addr;
+};
+
+/** MM Descriptor **/
+struct __attribute__ ((packed)) qdma_mm_desc
+{
+	volatile uint64_t	src_addr;
+	volatile uint64_t	len:28;
+	volatile uint64_t	dv:1;
+	volatile uint64_t	sop:1;
+	volatile uint64_t	eop:1;
+	volatile uint64_t	rsvd:33;
+	volatile uint64_t	dst_addr;
+	volatile uint64_t	rsvd2;
+
+};
+
+/** MBOX STATUS **/
+struct __attribute__ ((packed)) mbox_fsr
+{
+	volatile uint8_t	imsg_stat:1;
+	volatile uint8_t	omsg_stat:1;
+	volatile uint8_t	ack_stat:2;
+	volatile uint16_t	curr_src_fn:8;
+	volatile uint32_t	rsvd:20;
+};
+
+struct __attribute__ ((packed)) mbox_ack_stat
+{
+	volatile uint32_t ack[8];
+};
+
+struct __attribute__ ((packed)) mbox_imsg
+{
+	volatile uint32_t imsg[32];
+};
+
+struct __attribute__ ((packed)) mbox_omsg
+{
+	volatile uint32_t omsg[32];
+};
+
+/** C2H/H2C Descriptor context structure **/
+
+#define PIDX_MSK	(0)
+#define Q_STATUS_MSK	(0)
+#define Q_STATUS_EN_MSK (3)
+#define Q_STATUS_RST_MSK (1)
+#define WBI_CHK_MSK	(6)
+#define WBI_ACC_EN_MSK	(7)
+#define FUNC_ID_MSK	(8)
+#define RING_SZ_MSK	(16)
+#define DESC_SZ_MSK	(16)
+
+#endif /* ifndef __QDMA_REGS_H__ */
diff --git a/QDMA/DPDK/drivers/net/qdma/qdma_rxtx.c b/QDMA/DPDK/drivers/net/qdma/qdma_rxtx.c
new file mode 100644
index 0000000..3ebd8d6
--- /dev/null
+++ b/QDMA/DPDK/drivers/net/qdma/qdma_rxtx.c
@@ -0,0 +1,814 @@
+/*-
+ *   BSD LICENSE
+ *
+ *   Copyright(c) 2017-2018 Xilinx, Inc. All rights reserved.
+ *
+ *   Redistribution and use in source and binary forms, with or without
+ *   modification, are permitted provided that the following conditions
+ *   are met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in
+ *       the documentation and/or other materials provided with the
+ *       distribution.
+ *     * Neither the name of the copyright holder nor the names of its
+ *       contributors may be used to endorse or promote products derived
+ *       from this software without specific prior written permission.
+ *
+ *   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ *   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ *   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ *   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ *   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ *   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ *   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ *   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include <rte_mbuf.h>
+#include <rte_cycles.h>
+#include "qdma.h"
+#include "qdma_regs.h"
+
+#include <fcntl.h>
+#include <unistd.h>
+
+
+int dma_wb_monitor(void *xq, uint8_t dir, uint16_t expected_count);
+
+/**
+ * Poll the QDMA engine for transfer completion.
+ *
+ * @param txq
+ *   Generic pointer to either Rx/Tx queue structure based on the DMA direction.
+ * @param expected_count
+ *   expected transfer count.
+ *
+ * @return
+ *   Number of packets transferred successfully by the engine.
+ */
+int dma_wb_monitor(void *xq, uint8_t dir, uint16_t expected_count)
+{
+	struct wb_status *wb_status;
+	uint16_t mode, wb_tail;
+	uint32_t i = 0;
+
+	if (dir == DMA_TO_DEVICE) {
+		struct qdma_tx_queue *txq = (struct qdma_tx_queue *)xq;
+		wb_status = txq->wb_status;
+
+		while (i < WB_TIMEOUT) {
+			if (expected_count == wb_status->cidx) {
+				PMD_DRV_LOG(DEBUG, "Poll writeback count "
+					    "matches to the expected count :%d",
+					    expected_count);
+				return 0;
+			}
+			PMD_DRV_LOG(DEBUG, "poll wait on wb-count:%d and "
+					"expected-count:%d\n",
+					wb_status->cidx, expected_count);
+			i++;
+		}
+		PMD_DRV_LOG(ERR, "DMA Engine write-back monitor "
+				"timeout error occurred\n");
+		return -1;
+	}
+	/* dir == DMA_FROM_DEVICE */
+	struct qdma_rx_queue *rxq = (struct qdma_rx_queue *)xq;
+	wb_status = rxq->wb_status;
+	mode = rxq->st_mode;
+
+	/* Poll the writeback location until timeout Or, the expected
+	 * count matches to the writeback count
+	 */
+	while (i < WB_TIMEOUT) {
+		if (mode) {
+			wb_tail = (rxq->rx_cmpt_tail + expected_count) %
+				(rxq->nb_rx_cmpt_desc - 1);
+			if (wb_tail == wb_status->pidx) {
+				PMD_DRV_LOG(DEBUG, "ST: Poll cmpt count matches"
+						" to the expected count :%d",
+						expected_count);
+				return 0;
+			}
+			PMD_DRV_LOG(DEBUG, "ST: poll wait on wb-count:%d and"
+					" expected-count:%d\n",
+					wb_status->pidx, expected_count);
+		} else {
+			if (expected_count == wb_status->cidx) {
+				PMD_DRV_LOG(DEBUG, "MM: Poll writeback count "
+						"matches to the expected count"
+						" :%d", expected_count);
+				return 0;
+			}
+			PMD_DRV_LOG(DEBUG, "MM: poll wait on wb-count:%d "
+					"and expected-count:%d\n",
+					wb_status->cidx, expected_count);
+		}
+		i++;
+	}
+	return -1;
+}
+
+uint16_t qdma_recv_pkts_st(struct qdma_rx_queue *rxq, struct rte_mbuf **rx_pkts,
+				uint16_t nb_pkts)
+{
+	struct rte_mbuf *mb;
+	struct rte_mbuf *first_seg = NULL;
+	struct rte_mbuf *last_seg = NULL;
+	struct qdma_c2h_desc *rx_ring_st = NULL;
+	uint32_t count = 0, count_pkts = 0;
+	uint16_t id;
+	struct c2h_cmpt_ring *cmpt_ring;
+	struct wb_status *wb_status;
+	uint32_t pkt_length;
+	uint64_t phys_addr;
+	uint16_t nb_pkts_avail = 0;
+	uint16_t rx_cmpt_tail = 0;
+	uint16_t mbuf_index = 0;
+	uint16_t pkt_len[QDMA_MAX_BURST_SIZE];
+	uint16_t rx_buff_size;
+	uint16_t cmpt_pidx;
+	uint16_t pending_desc;
+#ifdef TEST_64B_DESC_BYPASS
+	int bypass_desc_sz_idx = qmda_get_desc_sz_idx(rxq->bypass_desc_sz);
+#endif
+
+	id = rxq->rx_tail; /* Descriptor index */
+	PMD_DRV_LOG(DEBUG, "recv start on rx queue-id :%d, on "
+			"tail index:%d number of pkts %d",
+			rxq->queue_id, rxq->rx_tail, nb_pkts);
+
+	wb_status = rxq->wb_status;
+	rx_cmpt_tail = rxq->rx_cmpt_tail;
+	rx_buff_size = rxq->rx_buff_size;
+
+#ifdef TEST_64B_DESC_BYPASS
+	if (unlikely(rxq->en_bypass &&
+			bypass_desc_sz_idx == SW_DESC_CNTXT_64B_BYPASS_DMA)) {
+		PMD_DRV_LOG(DEBUG, "For  RX ST-mode, example"
+				" design doesn't support 64byte descriptor\n");
+		return 0;
+	}
+#endif
+	rx_ring_st = (struct qdma_c2h_desc *)rxq->rx_ring;
+	cmpt_pidx = wb_status->pidx;
+
+	if (rx_cmpt_tail < cmpt_pidx)
+		nb_pkts_avail = cmpt_pidx - rx_cmpt_tail;
+	else if (rx_cmpt_tail > cmpt_pidx)
+		nb_pkts_avail = rxq->nb_rx_cmpt_desc - 1 - rx_cmpt_tail +
+				cmpt_pidx;
+
+	if (nb_pkts_avail == 0) {
+		PMD_DRV_LOG(DEBUG, "%s(): %d: nb_pkts_avail = 0\n",
+				__func__, __LINE__);
+		return 0;
+	}
+
+	if (nb_pkts > QDMA_MAX_BURST_SIZE)
+		nb_pkts = QDMA_MAX_BURST_SIZE;
+
+	if (nb_pkts > nb_pkts_avail)
+		nb_pkts = nb_pkts_avail;
+
+#ifdef DUMP_MEMPOOL_USAGE_STATS
+	PMD_DRV_LOG(DEBUG, "%s(): %d: queue id = %d, mbuf_avail_count = %d, "
+			"mbuf_in_use_count = %d",
+		__func__, __LINE__, rxq->queue_id,
+		rte_mempool_avail_count(rxq->mb_pool),
+		rte_mempool_in_use_count(rxq->mb_pool));
+#endif //DUMP_MEMPOOL_USAGE_STATS
+	/* Make sure reads to CMPT ring are synchronized before
+	 * accessing the ring
+	 */
+	rte_rmb();
+
+	while (count < nb_pkts) {
+		cmpt_ring = (struct c2h_cmpt_ring *)((uint64_t)rxq->cmpt_ring +
+						     ((uint64_t)rx_cmpt_tail *
+						      rxq->cmpt_desc_len));
+		pkt_length = cmpt_ring->length;
+
+		if (unlikely(!cmpt_ring->desc_used))
+			pkt_length = 0;
+		if (unlikely(rxq->dump_immediate_data)) {
+			int ofd, ret = 0;
+			char fln[50];
+#ifndef TEST_64B_DESC_BYPASS
+			uint16_t i = 0;
+#endif
+			sprintf(fln, "q_%d_%s", rxq->queue_id,
+					"immmediate_data.txt");
+			ofd = open(fln, O_RDWR | O_CREAT | O_APPEND |
+					O_SYNC, 0666);
+			if (ofd < 0) {
+				PMD_DRV_LOG(INFO, "recv on rxq[%d] CMPT, "
+						"unable to create outfile "
+						" to dump immediate data",
+						rxq->queue_id);
+				return 0;
+			}
+#ifdef TEST_64B_DESC_BYPASS
+			ret = write(ofd, cmpt_ring, rxq->cmpt_desc_len);
+#else
+			ret = dprintf(ofd, "%02x",
+					(*((uint8_t *)cmpt_ring) & 0xF0));
+			for (i = 1; i < (rxq->cmpt_desc_len) ; i++)
+				ret = dprintf(ofd, "%02x",
+						*((uint8_t *)cmpt_ring + i));
+#endif
+			if (ret < rxq->cmpt_desc_len)
+				PMD_DRV_LOG(DEBUG, "recv on rxq[%d] CMPT, "
+						"immediate data len: %d, "
+						"written to outfile :%d bytes",
+					     rxq->queue_id, rxq->cmpt_desc_len,
+					     ret);
+			close(ofd);
+		}
+		pkt_len[count] = pkt_length;
+		rx_cmpt_tail++;
+		if (unlikely(rx_cmpt_tail >= (rxq->nb_rx_cmpt_desc - 1)))
+			rx_cmpt_tail -= (rxq->nb_rx_cmpt_desc - 1);
+		count++;
+	}
+
+	rte_wmb();
+	rxq->rx_cmpt_tail = rx_cmpt_tail;
+	// Update the CPMT CIDX
+	*rxq->rx_cidx = rxq->rx_cmpt_tail;
+
+	if (rxq->status != RTE_ETH_QUEUE_STATE_STARTED) {
+		PMD_DRV_LOG(DEBUG, "%s(): %d: rxq->status = %d\n",
+				__func__, __LINE__, rxq->status);
+		return 0;
+	}
+
+	count = 0;
+	mbuf_index = 0;
+	while (count < nb_pkts) {
+		pkt_length = pkt_len[count];
+
+		if (unlikely(!pkt_length)) {
+			count++;
+			continue;
+		}
+
+		do {
+			mb = rxq->sw_ring[id];
+			rxq->sw_ring[id++] = NULL;
+
+			if (unlikely(id >= (rxq->nb_rx_desc - 1)))
+				id -= (rxq->nb_rx_desc - 1);
+			if (pkt_length > rx_buff_size) {
+				rte_pktmbuf_data_len(mb) = rx_buff_size;
+				pkt_length -= rx_buff_size;
+			} else {
+				rte_pktmbuf_data_len(mb) = pkt_length;
+				pkt_length = 0;
+			}
+			rte_mbuf_refcnt_set(mb, 1);
+
+			if (first_seg == NULL) {
+				first_seg = mb;
+				first_seg->nb_segs = 1;
+				first_seg->pkt_len = pkt_len[count];
+				first_seg->packet_type = 0;
+				first_seg->ol_flags = 0;
+				first_seg->port = rxq->port_id;
+				first_seg->vlan_tci = 0;
+				first_seg->hash.rss = 0;
+			} else {
+				first_seg->nb_segs++;
+				last_seg->next = mb;
+			}
+
+			last_seg = mb;
+			mb->next = NULL;
+		} while (pkt_length);
+		rxq->stats.pkts++;
+		rxq->stats.bytes += pkt_len[count++];
+		rx_pkts[count_pkts++] = first_seg;
+		first_seg = NULL;
+	}
+
+	rxq->rx_tail = id;
+
+	pending_desc = rxq->rx_tail - rxq->c2h_pidx;
+	if (rxq->rx_tail < rxq->c2h_pidx)
+		pending_desc = rxq->nb_rx_desc - 1 + rxq->rx_tail -
+				rxq->c2h_pidx;
+
+	/* Batch the PIDX updates, this minimizes overhead on
+	 * descriptor engine
+	 */
+	if (pending_desc >= MIN_RX_PIDX_UPDATE_THRESHOLD) {
+		struct rte_mbuf *tmp_sw_ring[pending_desc];
+		/* allocate new buffer */
+		if (rte_mempool_get_bulk(rxq->mb_pool, (void *)tmp_sw_ring,
+						pending_desc) != 0){
+			PMD_DRV_LOG(ERR, "%s(): %d: No MBUFS\n",
+					__func__, __LINE__);
+			return count_pkts;
+		}
+
+		id = rxq->c2h_pidx;
+		for (mbuf_index = 0; mbuf_index < pending_desc; mbuf_index++) {
+			mb = tmp_sw_ring[mbuf_index];
+			/* low 32-bits of phys addr must be 4KB aligned... */
+			phys_addr = (uint64_t)mb->buf_physaddr +
+						RTE_PKTMBUF_HEADROOM;
+
+			/* make it so the data pointer starts there too... */
+			mb->data_off = RTE_PKTMBUF_HEADROOM;
+
+			/* rearm descriptor */
+			rx_ring_st[id].dst_addr = phys_addr;
+			rxq->sw_ring[id++] = mb;
+			if (unlikely(id >= (rxq->nb_rx_desc - 1)))
+				id -= (rxq->nb_rx_desc - 1);
+		}
+
+		PMD_DRV_LOG(DEBUG, "%s(): %d: PIDX Update: queue id = %d, "
+					"pending_desc = %d",
+					__func__, __LINE__, rxq->queue_id,
+					pending_desc);
+
+		/* Make sure writes to the C2H descriptors are
+		 * synchronized before updating PIDX
+		 */
+		rte_wmb();
+
+		if (rxq->rx_tail == 0)
+			*rxq->rx_pidx = (rxq->nb_rx_desc - 2);
+		else
+			*rxq->rx_pidx = (rxq->rx_tail - 1);
+
+		rxq->c2h_pidx = rxq->rx_tail;
+	}
+
+#ifdef DUMP_MEMPOOL_USAGE_STATS
+	PMD_DRV_LOG(DEBUG, "%s(): %d: queue id = %d, mbuf_avail_count = %d,"
+			" mbuf_in_use_count = %d, count_pkts = %d",
+		__func__, __LINE__, rxq->queue_id,
+		rte_mempool_avail_count(rxq->mb_pool),
+		rte_mempool_in_use_count(rxq->mb_pool), count_pkts);
+#endif //DUMP_MEMPOOL_USAGE_STATS
+
+	PMD_DRV_LOG(DEBUG, " Recv complete with hw cidx :%d",
+				rxq->wb_status->cidx);
+	PMD_DRV_LOG(DEBUG, " Recv complete with hw pidx :%d\n",
+				rxq->wb_status->pidx);
+
+	return count_pkts;
+}
+
+uint16_t qdma_recv_pkts_mm(struct qdma_rx_queue *rxq, struct rte_mbuf **rx_pkts,
+			uint16_t nb_pkts)
+{
+	struct rte_mbuf *mb;
+	uint32_t count, id;
+	struct qdma_mm_desc *desc;
+	uint64_t phys_addr;
+	uint32_t len;
+	int ret;
+#ifdef TEST_64B_DESC_BYPASS
+	int bypass_desc_sz_idx = qmda_get_desc_sz_idx(rxq->bypass_desc_sz);
+#endif
+
+	if (rxq->status != RTE_ETH_QUEUE_STATE_STARTED)
+		return 0;
+
+	id = rxq->rx_tail; /* Descriptor index */
+
+	PMD_DRV_LOG(DEBUG, "recv start on rx queue-id :%d, on tail index:%d\n",
+			rxq->queue_id, rxq->rx_tail);
+
+#ifdef TEST_64B_DESC_BYPASS
+	if (unlikely(rxq->en_bypass &&
+			bypass_desc_sz_idx == SW_DESC_CNTXT_64B_BYPASS_DMA)) {
+		PMD_DRV_LOG(DEBUG, "For MM mode, example design doesn't "
+				"support 64byte descriptor\n");
+		return 0;
+	}
+#endif
+	/* Make 1 less available, otherwise if we allow all descriptors
+	 * to be filled,when nb_pkts = nb_tx_desc - 1, pidx will be same
+	 * as old pidx and HW will treat this as no new descriptors were added.
+	 * Hence, DMA won't happen with new descriptors.
+	 */
+	if (nb_pkts > rxq->nb_rx_desc - 2)
+		nb_pkts = rxq->nb_rx_desc - 2;
+
+	for (count = 0; count < nb_pkts; count++) {
+		/* allocate new buffer */
+		if (rte_mempool_get(rxq->mb_pool, (void *)&mb) != 0) {
+			rte_panic("No MBUFS\n");
+			break;
+		}
+
+		/* low 32-bits of phys addr must be 4KB aligned... */
+		phys_addr = (uint64_t)mb->buf_physaddr + RTE_PKTMBUF_HEADROOM;
+
+		/* make it so the data pointer starts there too... */
+		mb->data_off = RTE_PKTMBUF_HEADROOM;
+
+		desc = (struct qdma_mm_desc *)rxq->rx_ring;
+		desc += id;
+
+		desc->src_addr = rxq->ep_addr;
+		desc->dst_addr = phys_addr;
+		desc->dv = QDMA_DESC_VALID;
+		desc->sop = 0;
+		desc->eop = 0;
+		if ((count + 1) == nb_pkts)
+			desc->eop = QDMA_DESC_EOP;
+		if (count == 0)
+			desc->sop = QDMA_DESC_SOP;
+
+		desc->len = (int)rxq->rx_buff_size;
+		len = (int)rxq->rx_buff_size;
+		rte_pktmbuf_pkt_len(mb) = (int)rxq->rx_buff_size;
+
+		rte_mbuf_refcnt_set(mb, 1);
+		mb->packet_type = 0;
+		mb->ol_flags = 0;
+		mb->next = 0;
+		mb->nb_segs = 1;
+		mb->port = rxq->port_id;
+		mb->vlan_tci = 0;
+		mb->hash.rss = 0;
+
+		rx_pkts[count] = mb;
+
+		rxq->ep_addr = (rxq->ep_addr + len) % DMA_BRAM_SIZE;
+		rxq->rx_tail = (rxq->rx_tail + 1) % (rxq->nb_rx_desc - 1);
+		id  = rxq->rx_tail;
+	}
+
+	/* Make sure writes to the C2H descriptors are synchronized
+	 * before updating PIDX
+	 */
+	rte_wmb();
+
+	/* update pidx pointer for MM-mode*/
+	if (count > 0)
+		*rxq->rx_pidx = id;
+
+	ret = dma_wb_monitor(rxq, DMA_FROM_DEVICE, id);
+	if (ret) {//Error
+		PMD_DRV_LOG(ERR, "DMA Engine write-back monitor "
+				"timeout error occurred\n");
+		return 0;
+	}
+	return count;
+}
+/**
+ * DPDK callback for receiving packets in burst.
+ *
+ * @param rx_queue
+ *   Generic pointer to Rx queue structure.
+ * @param[out] rx_pkts
+ *   Array to store received packets.
+ * @param nb_pkts
+ *   Maximum number of packets in array.
+ *
+ * @return
+ *   Number of packets successfully received (<= nb_pkts).
+ */
+uint16_t qdma_recv_pkts(void *rx_queue, struct rte_mbuf **rx_pkts,
+			uint16_t nb_pkts)
+{
+	struct qdma_rx_queue *rxq = rx_queue;
+	uint32_t count;
+
+	if (rxq->st_mode)
+		count = qdma_recv_pkts_st(rxq, rx_pkts, nb_pkts);
+	else
+		count = qdma_recv_pkts_mm(rxq, rx_pkts, nb_pkts);
+
+	return count;
+}
+
+static void reclaim_tx_mbuf(struct qdma_tx_queue *txq, uint16_t cidx)
+{
+	int fl_desc = 0;
+	uint16_t count;
+	int id;
+
+	id = txq->tx_fl_tail;
+	fl_desc = (int)cidx - id;
+	if (fl_desc < 0)
+		fl_desc += (txq->nb_tx_desc - 1);
+
+	for (count = 0; count < fl_desc; count++) {
+		rte_pktmbuf_free(txq->sw_ring[id]);
+		txq->sw_ring[id] = NULL;
+		id++;
+		if (unlikely(id >= (txq->nb_tx_desc - 1)))
+			id -= (txq->nb_tx_desc - 1);
+	}
+	txq->tx_fl_tail = id;
+}
+
+#ifdef TEST_64B_DESC_BYPASS
+static uint16_t qdma_xmit_64B_desc_bypass(struct qdma_tx_queue *txq,
+			struct rte_mbuf **tx_pkts, uint16_t nb_pkts)
+{
+	uint16_t count, id;
+	uint8_t *tx_ring_st_bypass = NULL;
+	int ofd = -1, ret = 0;
+	char fln[50];
+
+	id = txq->tx_tail;
+
+	for (count = 0; count < nb_pkts; count++) {
+		tx_ring_st_bypass = (uint8_t *)txq->tx_ring;
+		memset(&tx_ring_st_bypass[id * (txq->bypass_desc_sz)],
+				((id  % 255) + 1), txq->bypass_desc_sz);
+
+		sprintf(fln, "q_%d_%s", txq->queue_id,
+				"h2c_desc_data.txt");
+		ofd = open(fln, O_RDWR | O_CREAT | O_APPEND | O_SYNC,
+				0666);
+		if (ofd < 0) {
+			PMD_DRV_LOG(INFO, " txq[%d] unable to create "
+					"outfile to dump descriptor"
+					" data", txq->queue_id);
+			return 0;
+		}
+		ret = write(ofd, &(tx_ring_st_bypass[id *
+					(txq->bypass_desc_sz)]),
+					txq->bypass_desc_sz);
+		if (ret < txq->bypass_desc_sz)
+			PMD_DRV_LOG(DEBUG, "Txq[%d] descriptor data "
+					"len: %d, written to inputfile"
+					" :%d bytes", txq->queue_id,
+					txq->bypass_desc_sz, ret);
+		close(ofd);
+
+		rte_pktmbuf_free(tx_pkts[count]);
+
+		id++;
+		if (unlikely(id >= (txq->nb_tx_desc - 1)))
+			id -= (txq->nb_tx_desc - 1);
+	}
+
+	/* Make sure writes to the H2C descriptors are synchronized
+	 * before updating PIDX
+	 */
+	rte_wmb();
+
+	txq->tx_tail = id;
+	*txq->tx_pidx = txq->tx_tail;
+
+	PMD_DRV_LOG(DEBUG, " xmit completed with count:%d\n", count);
+
+	return count;
+}
+#endif
+
+uint16_t qdma_xmit_pkts_st(struct qdma_tx_queue *txq, struct rte_mbuf **tx_pkts,
+			uint16_t nb_pkts)
+{
+	struct rte_mbuf *mb;
+	uint16_t count, id;
+	uint64_t phys_addr;
+	struct qdma_h2c_desc *desc;
+	int avail, in_use;
+	uint16_t pkt_len;
+	uint16_t cidx = 0;
+	struct qdma_h2c_desc *tx_ring_st = NULL;
+#ifdef TEST_64B_DESC_BYPASS
+	int bypass_desc_sz_idx = qmda_get_desc_sz_idx(txq->bypass_desc_sz);
+
+	if (unlikely(txq->en_bypass &&
+			bypass_desc_sz_idx == SW_DESC_CNTXT_64B_BYPASS_DMA)) {
+		return qdma_xmit_64B_desc_bypass(txq, tx_pkts, nb_pkts);
+	}
+#endif
+
+	id = txq->tx_tail;
+	cidx = txq->wb_status->cidx;
+	PMD_DRV_LOG(DEBUG, "Xmit start on tx queue-id:%d, tail index:%d\n",
+			txq->queue_id, id);
+
+	/* Free transmitted mbufs back to pool */
+	reclaim_tx_mbuf(txq, cidx);
+
+	in_use = (int)txq->tx_tail - cidx;
+	if (in_use < 0)
+		in_use += (txq->nb_tx_desc - 1);
+
+	/* Make 1 less available, otherwise if we allow all descriptors
+	 * to be filled, when nb_pkts = nb_tx_desc - 1, pidx will be same
+	 * as old pidx and HW will treat this as no new descriptors were added.
+	 * Hence, DMA won't happen with new descriptors.
+	 */
+	avail = txq->nb_tx_desc - 2 - in_use;
+	if (!avail) {
+		PMD_DRV_LOG(DEBUG, "Tx queue full, in_use = %d", in_use);
+		return 0;
+	}
+
+	if (nb_pkts > avail)
+		nb_pkts = avail;
+
+	tx_ring_st = (struct qdma_h2c_desc *)txq->tx_ring;
+	for (count = 0; count < nb_pkts; count++) {
+		desc = (struct qdma_h2c_desc *)&tx_ring_st[id];
+
+		mb = tx_pkts[count];
+		txq->sw_ring[id] = mb;
+
+		phys_addr = mb->buf_physaddr + mb->data_off;
+
+		if (rte_pktmbuf_pkt_len(mb) !=
+				rte_pktmbuf_data_len(mb)) {
+			PMD_DRV_LOG(ERR, "Scatter buffers are not "
+					"supported");
+			break;
+		}
+		desc->len = rte_pktmbuf_data_len(mb);
+		pkt_len = rte_pktmbuf_data_len(mb);
+
+		desc->pld_len = pkt_len;
+		PMD_DRV_LOG(DEBUG, "xmit number of bytes:%d, count:%d ",
+				pkt_len, count);
+		desc->src_addr = phys_addr;
+		desc->flags = 0;
+		desc->cdh_flags = 0;
+		if (count == 0)
+			desc->flags |= S_H2C_DESC_F_SOP;
+		if ((count + 1) == nb_pkts)
+			desc->flags |= S_H2C_DESC_F_EOP;
+
+		txq->stats.pkts++;
+		txq->stats.bytes += pkt_len;
+
+		id++;
+		if (unlikely(id >= (txq->nb_tx_desc - 1)))
+			id -= (txq->nb_tx_desc - 1);
+	}
+
+	/* Make sure writes to the H2C descriptors are synchronized
+	 * before updating PIDX
+	 */
+	rte_wmb();
+
+	rte_spinlock_lock(&txq->pidx_update_lock);
+	txq->tx_tail = id;
+	txq->tx_desc_pend += count;
+
+	/* Send PIDX update only if pending desc is more than threshold
+	 * Saves frequent Hardware transactions
+	 */
+	if (txq->tx_desc_pend >= MIN_TX_PIDX_UPDATE_THRESHOLD) {
+		*txq->tx_pidx = txq->tx_tail;
+		txq->tx_desc_pend = 0;
+	}
+	rte_spinlock_unlock(&txq->pidx_update_lock);
+
+	PMD_DRV_LOG(DEBUG, " xmit completed with count:%d\n", count);
+
+	return count;
+}
+
+uint16_t qdma_xmit_pkts_mm(struct qdma_tx_queue *txq, struct rte_mbuf **tx_pkts,
+			uint16_t nb_pkts)
+{
+	struct rte_mbuf *mb;
+	uint32_t count, id;
+	uint64_t phys_addr;
+	struct qdma_mm_desc *desc;
+	int avail, in_use;
+	int ret;
+	struct qdma_mm_desc *tx_ring = (struct qdma_mm_desc *)txq->tx_ring;
+#ifdef TEST_64B_DESC_BYPASS
+	int bypass_desc_sz_idx = qmda_get_desc_sz_idx(txq->bypass_desc_sz);
+#endif
+
+	id = txq->tx_tail;
+	PMD_DRV_LOG(DEBUG, "Xmit start on tx queue-id:%d, tail index:%d\n",
+			txq->queue_id, id);
+
+#ifdef TEST_64B_DESC_BYPASS
+	if (unlikely(txq->en_bypass &&
+			bypass_desc_sz_idx == SW_DESC_CNTXT_64B_BYPASS_DMA)) {
+		PMD_DRV_LOG(DEBUG, "For MM mode, example design doesn't "
+				"support 64B bypass testing\n");
+		return 0;
+	}
+#endif
+	in_use = txq->tx_tail - txq->wb_status->cidx;
+	if (in_use < 0)
+		in_use += (txq->nb_tx_desc - 1);
+
+	/* Make 1 less available, otherwise if we allow all descriptors to be
+	 * filled, when nb_pkts = nb_tx_desc - 1, pidx will be same as old pidx
+	 * and HW will treat this as no new descriptors were added.
+	 * Hence, DMA won't happen with new descriptors.
+	 */
+	avail = txq->nb_tx_desc - 2 - in_use;
+	if (!avail) {
+		PMD_DRV_LOG(ERR, "Tx queue full, in_use = %d", in_use);
+		return 0;
+	}
+
+	if (nb_pkts > avail)
+		nb_pkts = avail;
+
+	// Set the xmit descriptors and control bits
+	for (count = 0; count < nb_pkts; count++) {
+		/* Free the n/w buffer associated with the descriptor 'id'
+		 * to mpool
+		 */
+		rte_pktmbuf_free(txq->sw_ring[id]);
+
+		/* see if there is something to receive */
+		desc = (struct qdma_mm_desc *)&tx_ring[id];
+
+		/* Set the descriptor control bits */
+		desc->dv = QDMA_DESC_VALID;
+		desc->sop = 0;
+		desc->eop = 0;
+		if ((count + 1) == nb_pkts)
+			desc->eop = QDMA_DESC_EOP;
+		if (count == 0)
+			desc->sop = QDMA_DESC_SOP;
+
+		mb = tx_pkts[count];
+		txq->sw_ring[id] = mb;
+
+		phys_addr = mb->buf_physaddr + mb->data_off;
+
+		desc->len = rte_pktmbuf_data_len(mb);
+
+		/*if (desc->len > (DMA_BRAM_SIZE / txq->num_queues))
+		 * desc->len = DMA_BRAM_SIZE / txq->num_queues;
+		 */
+
+		PMD_DRV_LOG(DEBUG, "xmit number of bytes:%d, count:%d ",
+				desc->len, count);
+		desc->src_addr = phys_addr;
+
+		desc->dst_addr = txq->ep_addr;
+
+		txq->ep_addr = (txq->ep_addr + desc->len) % DMA_BRAM_SIZE;
+		txq->tx_tail = (txq->tx_tail + 1) % (txq->nb_tx_desc - 1);
+		id = txq->tx_tail;
+	}
+
+	/* Make sure writes to the H2C descriptors are synchronized before
+	 * updating PIDX
+	 */
+	rte_wmb();
+
+	/* update pidx pointer */
+	if (count > 0)
+		*txq->tx_pidx = id;
+
+	ret = dma_wb_monitor(txq, DMA_TO_DEVICE, id);
+	if (ret) {
+		PMD_DRV_LOG(ERR, "DMA Engine write-back monitor "
+				"timeout error occurred\n");
+		return 0;
+	}
+
+	PMD_DRV_LOG(DEBUG, " xmit completed with count:%d", count);
+	return count;
+}
+/**
+ * DPDK callback for transmitting packets in burst.
+ *
+ * @param tx_queue
+ G*   Generic pointer to TX queue structure.
+ * @param[in] tx_pkts
+ *   Packets to transmit.
+ * @param nb_pkts
+ *   Number of packets in array.
+ *
+ * @return
+ *   Number of packets successfully transmitted (<= nb_pkts).
+ */
+uint16_t qdma_xmit_pkts(void *tx_queue, struct rte_mbuf **tx_pkts,
+			uint16_t nb_pkts)
+{
+	struct qdma_tx_queue *txq = tx_queue;
+	uint16_t count;
+
+	if (txq->status != RTE_ETH_QUEUE_STATE_STARTED)
+		return 0;
+
+	if (txq->st_mode)
+		count =	qdma_xmit_pkts_st(txq, tx_pkts, nb_pkts);
+	else
+		count =	qdma_xmit_pkts_mm(txq, tx_pkts, nb_pkts);
+
+	return count;
+}
diff --git a/QDMA/DPDK/drivers/net/qdma/qdma_user.h b/QDMA/DPDK/drivers/net/qdma/qdma_user.h
new file mode 100644
index 0000000..520216c
--- /dev/null
+++ b/QDMA/DPDK/drivers/net/qdma/qdma_user.h
@@ -0,0 +1,77 @@
+/*-
+ *   BSD LICENSE
+ *
+ *   Copyright(c) 2018 Xilinx, Inc. All rights reserved.
+ *
+ *   Redistribution and use in source and binary forms, with or without
+ *   modification, are permitted provided that the following conditions
+ *   are met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in
+ *       the documentation and/or other materials provided with the
+ *       distribution.
+ *     * Neither the name of the copyright holder nor the names of its
+ *       contributors may be used to endorse or promote products derived
+ *       from this software without specific prior written permission.
+ *
+ *   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ *   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ *   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ *   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ *   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ *   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ *   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ *   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef __QDMA_USER_H__
+#define __QDMA_USER_H__
+/**
+ * @file
+ * @brief This file contains example design/user logic controlled
+ * data structures
+ * The driver is specific to an example design, if the example design
+ * changes user controlled parameters, this file needs to be modified
+ * appropriately.
+ * Structures for Completion entry, Descriptor bypass can be added here.
+ */
+
+ /**
+  * C2H Completion entry structure
+  * This structure is specific for the example design.
+  * Processing of this ring happens in qdma_rxtx.c.
+  */
+struct __attribute__ ((packed)) c2h_cmpt_ring
+{
+	volatile uint32_t	data_frmt:1; /* For 2018.2 IP, this field
+					      * determines the Standard or User
+					      * format of completion entry
+					      */
+	volatile uint32_t	color:1;     /* This field inverts every time
+					      * PIDX wraps the completion ring
+					      */
+	volatile uint32_t	err:1;       /* Indicates that C2H engine
+					      * encountered a descriptor
+					      * error
+					      */
+	volatile uint32_t	desc_used:1;   /* Indicates that the completion
+						* packet consumes descriptor in
+						* C2H ring
+						*/
+	volatile uint32_t	length:16;     /* Indicates length of the data
+						* packet
+						*/
+	volatile uint32_t	user_rsv:4;    /* Reserved field */
+	volatile uint8_t	user_def[];    /* User logic defined data of
+						* length based on CMPT entry
+						* length
+						*/
+};
+
+#endif /* ifndef __QDMA_USER_H__ */
diff --git a/QDMA/DPDK/drivers/net/qdma/qdma_vf_ethdev.c b/QDMA/DPDK/drivers/net/qdma/qdma_vf_ethdev.c
new file mode 100644
index 0000000..198ae20
--- /dev/null
+++ b/QDMA/DPDK/drivers/net/qdma/qdma_vf_ethdev.c
@@ -0,0 +1,968 @@
+/*-
+ *   BSD LICENSE
+ *
+ *   Copyright(c) 2017-2018 Xilinx, Inc. All rights reserved.
+ *
+ *   Redistribution and use in source and binary forms, with or without
+ *   modification, are permitted provided that the following conditions
+ *   are met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in
+ *       the documentation and/or other materials provided with the
+ *       distribution.
+ *     * Neither the name of the copyright holder nor the names of its
+ *       contributors may be used to endorse or promote products derived
+ *       from this software without specific prior written permission.
+ *
+ *   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ *   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ *   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ *   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ *   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ *   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ *   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ *   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include <stdint.h>
+#include <stdbool.h>
+#include <sys/mman.h>
+#include <sys/fcntl.h>
+#include <rte_memzone.h>
+#include <rte_string_fns.h>
+#include <rte_ethdev_pci.h>
+#include <rte_malloc.h>
+#include <rte_dev.h>
+#include <rte_pci.h>
+#include <rte_ether.h>
+#include <rte_ethdev.h>
+#include <rte_cycles.h>
+#include <rte_alarm.h>
+#include <unistd.h>
+#include <string.h>
+#include <linux/pci.h>
+
+#include "qdma.h"
+#include "qdma_regs.h"
+#include "version.h"
+
+/*
+ * The set of PCI devices this driver supports
+ */
+static struct rte_pci_id qdma_vf_pci_id_tbl[] = {
+#define RTE_PCI_DEV_ID_DECL_XNIC(vend, dev) {RTE_PCI_DEVICE(vend, dev)},
+#ifndef PCI_VENDOR_ID_XILINX
+#define PCI_VENDOR_ID_XILINX 0x10ee
+#endif
+
+	/** Gen 1 VF */
+	/** PCIe lane width x1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa011)	/* VF on PF 0 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa111)	/* VF on PF 1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa211)	/* VF on PF 2 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa311)	/* VF on PF 3 */
+	/** PCIe lane width x4 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa014)	/* VF on PF 0 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa114)	/* VF on PF 1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa214)	/* VF on PF 2 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa314)	/* VF on PF 3 */
+	/** PCIe lane width x8 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa018)	/* VF on PF 0 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa118)	/* VF on PF 1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa218)	/* VF on PF 2 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa318)	/* VF on PF 3 */
+	/** PCIe lane width x16 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa01f)	/* VF on PF 0 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa11f)	/* VF on PF 1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa21f)	/* VF on PF 2 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa31f)	/* VF on PF 3 */
+
+	/** Gen 2 VF */
+	/** PCIe lane width x1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa021)	/* VF on PF 0 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa121)	/* VF on PF 1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa221)	/* VF on PF 2 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa321)	/* VF on PF 3 */
+	/** PCIe lane width x4 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa024)	/* VF on PF 0 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa124)	/* VF on PF 1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa224)	/* VF on PF 2 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa324)	/* VF on PF 3 */
+	/** PCIe lane width x8 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa028)	/* VF on PF 0 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa128)	/* VF on PF 1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa228)	/* VF on PF 2 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa328)	/* VF on PF 3 */
+	/** PCIe lane width x16 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa02f)	/* VF on PF 0 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa12f)	/* VF on PF 1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa22f)	/* VF on PF 2 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa32f)	/* VF on PF 3 */
+
+	/** Gen 3 VF */
+	/** PCIe lane width x1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa031)	/* VF on PF 0 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa131)	/* VF on PF 1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa231)	/* VF on PF 2 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa331)	/* VF on PF 3 */
+	/** PCIe lane width x4 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa034)	/* VF on PF 0 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa134)	/* VF on PF 1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa234)	/* VF on PF 2 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa334)	/* VF on PF 3 */
+	/** PCIe lane width x8 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa038)	/* VF on PF 0 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa138)	/* VF on PF 1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa238)	/* VF on PF 2 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa338)	/* VF on PF 3 */
+	/** PCIe lane width x16 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa03f)	/* VF on PF 0 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa13f)	/* VF on PF 1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa23f)	/* VF on PF 2 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa33f)	/* VF on PF 3 */
+
+	/** Gen 4 VF */
+	/** PCIe lane width x1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa041)	/* VF on PF 0 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa141)	/* VF on PF 1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa241)	/* VF on PF 2 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa341)	/* VF on PF 3 */
+	/** PCIe lane width x4 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa044)	/* VF on PF 0 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa144)	/* VF on PF 1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa244)	/* VF on PF 2 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa344)	/* VF on PF 3 */
+	/** PCIe lane width x8 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa048)	/* VF on PF 0 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa148)	/* VF on PF 1 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa248)	/* VF on PF 2 */
+	RTE_PCI_DEV_ID_DECL_XNIC(PCI_VENDOR_ID_XILINX, 0xa348)	/* VF on PF 3 */
+
+	{ .vendor_id = 0, /* sentinel */ },
+};
+
+static int qdma_vf_write_mbx(struct rte_eth_dev *dev,
+				struct qdma_mbox_data *send_msg)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	struct mbox_omsg *out_msg;
+	struct mbox_fsr *mbx_stat;
+	uint64_t bar_addr, reg_addr;
+	uint16_t i;
+
+	bar_addr = (uint64_t)qdma_dev->bar_addr[qdma_dev->config_bar_idx];
+	reg_addr = bar_addr + QDMA_TRQ_EXT_VF + QDMA_MBOX_FSR;
+
+	mbx_stat = (struct mbox_fsr *)(reg_addr);
+
+	i = MAILBOX_PROG_POLL_COUNT;
+	while (mbx_stat->omsg_stat && i) {
+		rte_delay_ms(MAILBOX_VF_MSG_DELAY);
+		i--;
+	}
+	if (!i)
+		return -1;
+	out_msg = (struct mbox_omsg *)(bar_addr + QDMA_TRQ_EXT_VF +
+							QDMA_MBOX_OMSG);
+
+	qdma_write_reg((uint64_t)&out_msg->omsg[0],
+			rte_cpu_to_le_32(send_msg->err << 24 |
+					  send_msg->filler << 20 |
+					  send_msg->debug_funid << 8 |
+					  send_msg->opcode));
+	for (i = 1; i < 32; i++)
+		qdma_write_reg((uint64_t)&out_msg->omsg[i],
+				rte_cpu_to_le_32(send_msg->data[i - 1]));
+
+	qdma_write_reg((uint64_t)(bar_addr + QDMA_TRQ_EXT_VF + QDMA_MBOX_FCMD),
+						QDMA_MBOX_CMD_SEND);
+
+	return 0;
+}
+
+static int check_outmsg_status(struct rte_eth_dev *dev)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	struct mbox_fsr *mbx_stat;
+	uint64_t bar_addr, reg_addr;
+	uint16_t i;
+
+	bar_addr = (uint64_t)qdma_dev->bar_addr[qdma_dev->config_bar_idx];
+	reg_addr = bar_addr + QDMA_TRQ_EXT_VF + QDMA_MBOX_FSR;
+
+	mbx_stat = (struct mbox_fsr *)(reg_addr);
+
+	i = MAILBOX_PROG_POLL_COUNT;
+	while (mbx_stat->omsg_stat && i) {
+		rte_delay_ms(MAILBOX_VF_MSG_DELAY);
+		i--;
+	}
+	if (!i) {
+		PMD_DRV_LOG(INFO, "VF-%d(DEVFN) did not receive ack from PF",
+				qdma_dev->pf);
+		return -1;
+	}
+	return 0;
+}
+
+static int qdma_vf_dev_start(struct rte_eth_dev *dev)
+{
+	struct qdma_tx_queue *txq;
+	struct qdma_rx_queue *rxq;
+	uint32_t qid;
+	int err;
+
+	PMD_DRV_LOG(INFO, "qdma_dev_start: Starting\n");
+
+	/* prepare descriptor rings for operation */
+	for (qid = 0; qid < dev->data->nb_tx_queues; qid++) {
+		txq = (struct qdma_tx_queue *)dev->data->tx_queues[qid];
+
+		/*Deferred Queues should not start with dev_start*/
+		if (!txq->tx_deferred_start) {
+			err = qdma_vf_dev_tx_queue_start(dev, qid);
+			if (err != 0)
+				return err;
+		}
+	}
+
+	for (qid = 0; qid < dev->data->nb_rx_queues; qid++) {
+		rxq = (struct qdma_rx_queue *)dev->data->rx_queues[qid];
+
+		/*Deferred Queues should not start with dev_start*/
+		if (!rxq->rx_deferred_start) {
+			err = qdma_vf_dev_rx_queue_start(dev, qid);
+			if (err != 0)
+				return err;
+		}
+	}
+	return 0;
+}
+
+static int qdma_pf_bye(struct rte_eth_dev *dev)
+{
+#ifdef RTE_LIBRTE_QDMA_DEBUG_DRIVER
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+
+	PMD_DRV_LOG(INFO, "VF-%d(DEVFN) received BYE message from PF",
+							qdma_dev->pf);
+#endif
+	_rte_eth_dev_callback_process(dev, RTE_ETH_EVENT_VF_MBOX, NULL, NULL);
+	return 0;
+}
+
+static void qdma_read_pf_msg(struct rte_eth_dev *dev)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	uint64_t bar_addr, reg_addr;
+	struct qdma_mbox_data recv_msg;
+	struct mbox_imsg *in_msg;
+	int32_t retval = -1;
+	uint32_t reg_val;
+	int i;
+
+	bar_addr = (uint64_t)qdma_dev->bar_addr[qdma_dev->config_bar_idx];
+	reg_addr = bar_addr + QDMA_TRQ_EXT_VF + QDMA_MBOX_IMSG;
+
+	in_msg = (struct mbox_imsg *)(reg_addr);
+
+	reg_val = qdma_read_reg((uint64_t)&in_msg->imsg[0]);
+
+	recv_msg.opcode = reg_val & 0xff;
+	recv_msg.debug_funid  = (reg_val >> 8) & 0xfff;
+	recv_msg.filler = (reg_val >> 20) & 0xf;
+	recv_msg.err    = (reg_val >> 24) & 0xff;
+
+	PMD_DRV_LOG(INFO, "VF-%d(DEVFN) received mbox message from PF %d",
+					qdma_dev->pf, recv_msg.debug_funid);
+	for (i = 1; i < 32; i++)
+		recv_msg.data[i - 1] = qdma_read_reg((uint64_t)&
+							in_msg->imsg[i]);
+
+	switch (recv_msg.opcode) {
+	case QDMA_MBOX_OPCD_BYE:
+		retval = qdma_pf_bye(dev);
+		break;
+	}
+	/* once the msg is handled ACK it */
+	if (!retval)
+		qdma_write_reg((bar_addr + QDMA_TRQ_EXT_VF + QDMA_MBOX_FCMD),
+							QDMA_MBOX_CMD_RECV);
+}
+
+static void qdma_check_pf_msg(void *arg)
+{
+	struct rte_eth_dev *dev = (struct rte_eth_dev *)arg;
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	uint64_t bar_addr, reg_addr;
+	struct mbox_fsr *mbx_stat;
+
+	if (!qdma_dev)
+		return;
+
+	bar_addr = (uint64_t)qdma_dev->bar_addr[qdma_dev->config_bar_idx];
+	reg_addr = bar_addr + QDMA_TRQ_EXT_VF + QDMA_MBOX_FSR;
+	mbx_stat = (struct mbox_fsr *)(reg_addr);
+
+	if (mbx_stat->imsg_stat == 1)
+		qdma_read_pf_msg(dev);
+	rte_eal_alarm_set(MBOX_POLL_FRQ, qdma_check_pf_msg, arg);
+}
+
+static int qdma_vf_dev_link_update(struct rte_eth_dev *dev,
+					__rte_unused int wait_to_complete)
+{
+	dev->data->dev_link.link_status = ETH_LINK_UP;
+	dev->data->dev_link.link_duplex = ETH_LINK_FULL_DUPLEX;
+	dev->data->dev_link.link_speed = ETH_SPEED_NUM_10G;
+
+	PMD_DRV_LOG(INFO, "Link update done\n");
+
+	return 0;
+}
+
+static void qdma_vf_dev_infos_get(__rte_unused struct rte_eth_dev *dev,
+					struct rte_eth_dev_info *dev_info)
+{
+	dev_info->max_rx_queues = QDMA_QUEUES_NUM_MAX;
+	dev_info->max_tx_queues = QDMA_QUEUES_NUM_MAX;
+	dev_info->min_rx_bufsize = QDMA_MIN_RXBUFF_SIZE;
+	dev_info->max_rx_pktlen = DMA_BRAM_SIZE;
+	dev_info->max_mac_addrs = 1;
+}
+
+static void qdma_vf_dev_stop(struct rte_eth_dev *dev)
+{
+#ifdef RTE_LIBRTE_QDMA_DEBUG_DRIVER
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+#endif
+	uint32_t qid;
+
+	/* reset driver's internal queue structures to default values */
+	PMD_DRV_LOG(INFO, "VF-%d(DEVFN) Stop H2C & C2H queues", qdma_dev->pf);
+	for (qid = 0; qid < dev->data->nb_tx_queues; qid++)
+		qdma_vf_dev_tx_queue_stop(dev, qid);
+	for (qid = 0; qid < dev->data->nb_rx_queues; qid++)
+		qdma_vf_dev_rx_queue_stop(dev, qid);
+}
+
+static void qdma_vf_dev_close(struct rte_eth_dev *dev)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	struct qdma_tx_queue *txq;
+	struct qdma_rx_queue *rxq;
+	struct qdma_mbox_data send_msg;
+	int ret = 0;
+	uint32_t qid;
+
+	PMD_DRV_LOG(INFO, "Closing all queues\n");
+
+	/* send MBOX Bye MSG for both TX and RX*/
+
+	memset(&send_msg, 0, sizeof(send_msg));
+	send_msg.opcode = QDMA_MBOX_OPCD_BYE;
+	send_msg.debug_funid = qdma_dev->pf;
+
+	ret = qdma_vf_write_mbx(dev, &send_msg);
+	if (ret != 0)
+		RTE_LOG(ERR, PMD, "VF-%d(DEVFN) Failed sending QBYE MSG",
+								qdma_dev->pf);
+	ret = check_outmsg_status(dev);
+	if (ret != 0)
+		RTE_LOG(ERR, PMD, "VF-%d(DEVFN) did not receive ack from PF",
+								qdma_dev->pf);
+
+	/* iterate over rx queues */
+	for (qid = 0; qid < dev->data->nb_rx_queues; ++qid) {
+		rxq = dev->data->rx_queues[qid];
+		if (rxq != NULL) {
+			PMD_DRV_LOG(INFO, "VF-%d(DEVFN) Remove C2H queue: %d",
+							qdma_dev->pf, qid);
+
+			if (rxq->sw_ring)
+				rte_free(rxq->sw_ring);
+//#ifdef QDMA_STREAM
+			if (rxq->st_mode) { /** if ST-mode **/
+				if (rxq->rx_cmpt_mz)
+					rte_memzone_free(rxq->rx_cmpt_mz);
+			}
+//#endif
+			if (rxq->rx_mz)
+				rte_memzone_free(rxq->rx_mz);
+			rte_free(rxq);
+			PMD_DRV_LOG(INFO, "VF-%d(DEVFN) C2H queue %d removed",
+							qdma_dev->pf, qid);
+		}
+	}
+	/* iterate over tx queues */
+	for (qid = 0; qid < dev->data->nb_tx_queues; ++qid) {
+		txq = dev->data->tx_queues[qid];
+		if (txq != NULL) {
+			PMD_DRV_LOG(INFO, "VF-%d(DEVFN) Remove H2C queue: %d",
+							qdma_dev->pf, qid);
+
+			if (txq->sw_ring)
+				rte_free(txq->sw_ring);
+			if (txq->tx_mz)
+				rte_memzone_free(txq->tx_mz);
+			rte_free(txq);
+			PMD_DRV_LOG(INFO, "VF-%d(DEVFN) H2C queue %d removed",
+							qdma_dev->pf, qid);
+		}
+	}
+}
+
+static int qdma_vf_dev_configure(struct rte_eth_dev *dev)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	struct qdma_mbox_data send_msg;
+	int32_t ret = 0;
+	uint32_t qid = 0;
+
+	/** FMAP configuration **/
+	qdma_dev->qsets_en = RTE_MAX(dev->data->nb_rx_queues,
+					dev->data->nb_tx_queues);
+
+	if (qdma_dev->queue_base + qdma_dev->qsets_en > qdma_dev->qsets_max) {
+		PMD_DRV_LOG(INFO, "VF-%d(DEVFN) Error: Number of Queues to be "
+				"configured are greater than the queues "
+				"supported by the hardware\n", qdma_dev->pf);
+		qdma_dev->qsets_en = 0;
+		return -1;
+	}
+
+	qdma_dev->q_info = rte_zmalloc("qinfo", sizeof(struct queue_info) *
+						qdma_dev->qsets_en, 0);
+	if (qdma_dev->q_info == NULL) {
+		PMD_DRV_LOG(INFO, "VF-%d fail to allocate queue info memory\n",
+								qdma_dev->pf);
+		return (-ENOMEM);
+	}
+
+	/* Initialize queue_modes to all 1's ( i.e. Streaming) */
+	for (qid = 0 ; qid < qdma_dev->qsets_en; qid++)
+		qdma_dev->q_info[qid].queue_mode = STREAMING_MODE;
+
+	for (qid = 0 ; qid < dev->data->nb_rx_queues; qid++) {
+		qdma_dev->q_info[qid].cmpt_desc_sz = qdma_dev->cmpt_desc_len;
+		qdma_dev->q_info[qid].rx_bypass_mode =
+						qdma_dev->c2h_bypass_mode;
+	}
+
+	for (qid = 0 ; qid < dev->data->nb_tx_queues; qid++)
+		qdma_dev->q_info[qid].tx_bypass_mode =
+						qdma_dev->h2c_bypass_mode;
+
+	memset(&send_msg, 0, sizeof(send_msg));
+
+	/* send hi msg to PF with queue-base and queue-max*/
+	send_msg.opcode = QDMA_MBOX_OPCD_HI;
+	send_msg.debug_funid = qdma_dev->pf;
+
+	send_msg.data[0] = qdma_dev->queue_base;
+	send_msg.data[1] = qdma_dev->qsets_en;
+
+	ret = qdma_vf_write_mbx(dev, &send_msg);
+	if (ret < 0) {
+		PMD_DRV_LOG(INFO, "VF-%d(DEVFN) Failed sending HI MSG",
+								qdma_dev->pf);
+		return ret;
+	}
+	ret = check_outmsg_status(dev);
+
+	return ret;
+}
+
+int qdma_vf_dev_tx_queue_start(struct rte_eth_dev *dev, uint16_t qid)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	struct qdma_tx_queue *txq;
+	struct qdma_mbox_data send_msg;
+	uint32_t queue_base =  qdma_dev->queue_base;
+	uint64_t phys_addr;
+	int err;
+
+	memset(&send_msg, 0, sizeof(send_msg));
+	send_msg.opcode = QDMA_MBOX_OPCD_QADD;
+	send_msg.debug_funid = qdma_dev->pf;
+	txq = (struct qdma_tx_queue *)dev->data->tx_queues[qid];
+	qdma_reset_tx_queue(txq);
+
+	phys_addr = (uint64_t)txq->tx_mz->phys_addr;
+	PMD_DRV_LOG(INFO, "VF-%d(DEVFN) Phys-addr for H2C queue-id:%d: "
+			"is Lo:0x%lx, Hi:0x%lx\n",
+			qdma_dev->pf, qid,
+			rte_cpu_to_le_32(phys_addr & MASK_32BIT),
+			rte_cpu_to_le_32(phys_addr >> 32));
+
+	/* send MBOX msg QADD for H2C*/
+	send_msg.data[0] = (qid + queue_base);
+	send_msg.data[1] = txq->st_mode;
+	send_msg.data[2] = 0;
+	send_msg.data[3] = txq->ringszidx;
+	send_msg.data[4] = 0;
+	send_msg.data[5] = 0;
+	send_msg.data[6] = 0;
+	send_msg.data[7] = 0;
+	send_msg.data[8] = rte_cpu_to_le_32(phys_addr & MASK_32BIT);
+	send_msg.data[9] = rte_cpu_to_le_32(phys_addr >> 32);
+	send_msg.data[15] = txq->en_bypass;
+	send_msg.data[16] = qmda_get_desc_sz_idx(txq->bypass_desc_sz);
+
+	err = qdma_vf_write_mbx(dev, &send_msg);
+	if (err != 0) {
+		PMD_DRV_LOG(INFO, "VF-%d(DEVFN) Failed sending H2C QADD MSG "
+				"for QID:%d", qdma_dev->pf, qid);
+		return err;
+	}
+	err = check_outmsg_status(dev);
+	if (err != 0)
+		return err;
+
+	qdma_start_tx_queue(txq);
+
+	dev->data->tx_queue_state[qid] = RTE_ETH_QUEUE_STATE_STARTED;
+	txq->status = RTE_ETH_QUEUE_STATE_STARTED;
+
+	return 0;
+}
+
+int qdma_vf_dev_rx_queue_start(struct rte_eth_dev *dev, uint16_t qid)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	struct qdma_rx_queue *rxq;
+	struct qdma_mbox_data send_msg;
+	uint32_t queue_base =  qdma_dev->queue_base;
+	uint64_t phys_addr, cmpt_phys_addr;
+	uint8_t en_pfetch, cmpt_desc_fmt;
+	int err;
+
+	memset(&send_msg, 0, sizeof(send_msg));
+	send_msg.opcode = QDMA_MBOX_OPCD_QADD;
+	send_msg.debug_funid = qdma_dev->pf;
+
+	rxq = (struct qdma_rx_queue *)dev->data->rx_queues[qid];
+	qdma_reset_rx_queue(rxq);
+
+	en_pfetch = (rxq->en_prefetch) ? 1 : 0;
+	switch (rxq->cmpt_desc_len) {
+	case CMPT_DESC_LEN_8B:
+		cmpt_desc_fmt = CMPT_CNTXT_DESC_SIZE_8B;
+		break;
+	case CMPT_DESC_LEN_16B:
+		cmpt_desc_fmt = CMPT_CNTXT_DESC_SIZE_16B;
+		break;
+	case CMPT_DESC_LEN_32B:
+		cmpt_desc_fmt = CMPT_CNTXT_DESC_SIZE_32B;
+		break;
+	case CMPT_DESC_LEN_64B:
+		cmpt_desc_fmt = CMPT_CNTXT_DESC_SIZE_64B;
+		break;
+	default:
+		cmpt_desc_fmt = CMPT_CNTXT_DESC_SIZE_8B;
+		break;
+	}
+
+	phys_addr = (uint64_t)rxq->rx_mz->phys_addr;
+	PMD_DRV_LOG(INFO, "VF-%d(DEVFN) Phys-addr for C2H queue-id:%d: "
+			"is Lo:0x%lx, Hi:0x%lx\n",
+			qdma_dev->pf, qid,
+			rte_cpu_to_le_32(phys_addr & MASK_32BIT),
+			rte_cpu_to_le_32(phys_addr >> 32));
+
+	if (rxq->st_mode)
+		cmpt_phys_addr = (uint64_t)rxq->rx_cmpt_mz->phys_addr;
+	else
+		cmpt_phys_addr = 0;
+
+	PMD_DRV_LOG(INFO, "VF-%d(DEVFN) C2H Completion queue Phys-addr "
+			"for queue-id:%d: is Lo:0x%lx, Hi:0x%lx\n",
+			qdma_dev->pf, qid,
+			rte_cpu_to_le_32(cmpt_phys_addr & MASK_32BIT),
+			rte_cpu_to_le_32(cmpt_phys_addr >> 32));
+	err = qdma_start_rx_queue(rxq);
+	if (err != 0)
+		return err;
+
+	/* Send Mbox Msg QADD for C2H */
+	send_msg.data[0] = (qid + queue_base);
+	send_msg.data[1] = rxq->st_mode;
+	send_msg.data[2] = 1;
+	send_msg.data[3] = rxq->ringszidx;
+	send_msg.data[4] = rxq->buffszidx;
+	send_msg.data[5] = rxq->threshidx;
+	send_msg.data[6] = rxq->timeridx;
+	send_msg.data[7] = rxq->triggermode;
+	send_msg.data[8] = rte_cpu_to_le_32(phys_addr & MASK_32BIT);
+	send_msg.data[9] = rte_cpu_to_le_32(phys_addr >> 32);
+	send_msg.data[10] = rte_cpu_to_le_32(cmpt_phys_addr & MASK_32BIT);
+	send_msg.data[11] = rte_cpu_to_le_32(cmpt_phys_addr >> 32);
+	send_msg.data[12] = rxq->cmpt_ringszidx;
+	send_msg.data[13] = en_pfetch;
+	send_msg.data[14] = cmpt_desc_fmt;
+	send_msg.data[15] = rxq->en_bypass;
+	send_msg.data[16] = qmda_get_desc_sz_idx(rxq->bypass_desc_sz);
+	send_msg.data[17] = rxq->en_bypass_prefetch;
+	send_msg.data[19] = rxq->dis_overflow_check;
+
+	err = qdma_vf_write_mbx(dev, &send_msg);
+	if (err != 0) {
+		PMD_DRV_LOG(INFO, "VF-%d(DEVFN) Failed sending C2H QADD MSG "
+				"for QID:%d", qdma_dev->pf, qid);
+		return err;
+	}
+	err = check_outmsg_status(dev);
+	if (err != 0)
+		return err;
+
+	if (rxq->st_mode) {
+		*rxq->rx_cidx = (0x09000000) | 0x0;
+		*rxq->rx_pidx = (rxq->nb_rx_desc - 2);
+	}
+
+	dev->data->rx_queue_state[qid] = RTE_ETH_QUEUE_STATE_STARTED;
+	rxq->status = RTE_ETH_QUEUE_STATE_STARTED;
+	return 0;
+}
+
+int qdma_vf_dev_rx_queue_stop(struct rte_eth_dev *dev, uint16_t qid)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	struct qdma_rx_queue *rxq;
+	struct qdma_mbox_data send_msg;
+	uint32_t queue_base =  qdma_dev->queue_base;
+	int i = 0, err = 0, cnt = 0;
+
+	rxq = (struct qdma_rx_queue *)dev->data->rx_queues[qid];
+
+	rxq->status = RTE_ETH_QUEUE_STATE_STOPPED;
+
+	/* Wait for queue to recv all packets. */
+	if (rxq->st_mode) {  /** ST-mode **/
+		while (rxq->wb_status->pidx != rxq->rx_cmpt_tail) {
+			usleep(10);
+			if (cnt++ > 10000)
+				break;
+		}
+	} else { /* MM mode */
+		while (rxq->wb_status->cidx != rxq->rx_tail) {
+			usleep(10);
+			if (cnt++ > 10000)
+				break;
+		}
+	}
+
+
+	memset(&send_msg, 0, sizeof(send_msg));
+	send_msg.opcode = QDMA_MBOX_OPCD_QDEL;
+	send_msg.debug_funid = qdma_dev->pf;
+	send_msg.data[0] = (qid + queue_base);
+	send_msg.data[1] = DMA_FROM_DEVICE;
+
+	err = qdma_vf_write_mbx(dev, &send_msg);
+	if (err != 0) {
+		RTE_LOG(ERR, PMD, "VF-%d(DEVFN) Failed sending RX QDEL MSG "
+				"for QID:%d", qdma_dev->pf, qid);
+		return err;
+	}
+
+	err = check_outmsg_status(dev);
+	if (err != 0) {
+		RTE_LOG(ERR, PMD, "VF-%d(DEVFN) did not receive ack from PF "
+			"for RX QDEL MSG for QID:%d", qdma_dev->pf, qid);
+		return err;
+	}
+
+	if (rxq->st_mode) {  /** ST-mode **/
+#ifdef DUMP_MEMPOOL_USAGE_STATS
+		PMD_DRV_LOG(INFO, "%s(): %d: queue id = %d, mbuf_avail_count = "
+				"%d, mbuf_in_use_count = %d",
+				__func__, __LINE__, rxq->queue_id,
+				rte_mempool_avail_count(rxq->mb_pool),
+				rte_mempool_in_use_count(rxq->mb_pool));
+#endif //DUMP_MEMPOOL_USAGE_STATS
+
+		for (i = 0; i < rxq->nb_rx_desc - 1; i++) {
+			rte_pktmbuf_free(rxq->sw_ring[i]);
+			rxq->sw_ring[i] = NULL;
+		}
+#ifdef DUMP_MEMPOOL_USAGE_STATS
+		PMD_DRV_LOG(INFO, "%s(): %d: queue id = %d, mbuf_avail_count = "
+				"%d, mbuf_in_use_count = %d",
+				__func__, __LINE__, rxq->queue_id,
+				rte_mempool_avail_count(rxq->mb_pool),
+				rte_mempool_in_use_count(rxq->mb_pool));
+#endif //DUMP_MEMPOOL_USAGE_STATS
+	}
+
+	qdma_reset_rx_queue(rxq);
+	dev->data->rx_queue_state[qid] = RTE_ETH_QUEUE_STATE_STOPPED;
+	return 0;
+}
+
+
+int qdma_vf_dev_tx_queue_stop(struct rte_eth_dev *dev, uint16_t qid)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	struct qdma_tx_queue *txq;
+	struct qdma_mbox_data send_msg;
+	uint32_t queue_base =  qdma_dev->queue_base;
+	int err = 0;
+	int i = 0, cnt = 0;
+
+	txq = (struct qdma_tx_queue *)dev->data->tx_queues[qid];
+
+	txq->status = RTE_ETH_QUEUE_STATE_STOPPED;
+	/* Wait for TXQ to send out all packets. */
+	while (txq->wb_status->cidx != txq->tx_tail) {
+		usleep(10);
+		if (cnt++ > 10000)
+			break;
+	}
+
+	memset(&send_msg, 0, sizeof(send_msg));
+	send_msg.opcode = QDMA_MBOX_OPCD_QDEL;
+	send_msg.debug_funid = qdma_dev->pf;
+	send_msg.data[0] = (qid + queue_base);
+	send_msg.data[1] = DMA_TO_DEVICE;
+
+	err = qdma_vf_write_mbx(dev, &send_msg);
+	if (err != 0) {
+		RTE_LOG(ERR, PMD, "VF-%d(DEVFN) Failed sending TX QDEL MSG "
+				"for QID:%d", qdma_dev->pf, qid);
+		return err;
+	}
+
+	err = check_outmsg_status(dev);
+	if (err != 0) {
+		RTE_LOG(ERR, PMD, "VF-%d(DEVFN) did not receive ack from PF "
+			"for TX QDEL MSG for QID:%d", qdma_dev->pf, qid);
+		return err;
+	}
+
+	qdma_reset_tx_queue(txq);
+
+	/* Free mbufs if any pending in the ring */
+	for (i = 0; i < txq->nb_tx_desc - 1; i++) {
+		rte_pktmbuf_free(txq->sw_ring[i]);
+		txq->sw_ring[i] = NULL;
+	}
+
+	dev->data->tx_queue_state[qid] = RTE_ETH_QUEUE_STATE_STOPPED;
+	return 0;
+}
+
+static struct eth_dev_ops qdma_vf_eth_dev_ops = {
+	.dev_configure        = qdma_vf_dev_configure,
+	.dev_infos_get        = qdma_vf_dev_infos_get,
+	.dev_start            = qdma_vf_dev_start,
+	.dev_stop             = qdma_vf_dev_stop,
+	.dev_close            = qdma_vf_dev_close,
+	.link_update          = qdma_vf_dev_link_update,
+	.rx_queue_setup       = qdma_dev_rx_queue_setup,
+	.tx_queue_setup       = qdma_dev_tx_queue_setup,
+	.rx_queue_release       = qdma_dev_rx_queue_release,
+	.tx_queue_release       = qdma_dev_tx_queue_release,
+	.rx_queue_start       = qdma_vf_dev_rx_queue_start,
+	.rx_queue_stop        = qdma_vf_dev_rx_queue_stop,
+	.tx_queue_start       = qdma_vf_dev_tx_queue_start,
+	.tx_queue_stop        = qdma_vf_dev_tx_queue_stop,
+};
+
+/**
+ * DPDK callback to register a PCI device.
+ *
+ * This function creates an Ethernet device for each port of a given
+ * PCI device.
+ *
+ * @param[in] dev
+ *   Pointer to Ethernet device structure.
+ *
+ * @return
+ *   0 on success, negative errno value on failure.
+ */
+static int eth_qdma_vf_dev_init(struct rte_eth_dev *dev)
+{
+	struct qdma_pci_dev *dma_priv;
+	uint8_t *baseaddr;
+	uint64_t bar_len;
+	int i, idx;
+	static bool once = true;
+	struct rte_pci_device *pci_dev;
+
+	/* sanity checks */
+	if (dev == NULL)
+		return -EINVAL;
+	if (dev->data == NULL)
+		return -EINVAL;
+	if (dev->data->dev_private == NULL)
+		return -EINVAL;
+
+	pci_dev = RTE_ETH_DEV_TO_PCI(dev);
+	if (pci_dev == NULL)
+		return -EINVAL;
+
+	/* for secondary processes, we don't initialise any further as primary
+	 * has already done this work.
+	 */
+	if (rte_eal_process_type() != RTE_PROC_PRIMARY) {
+		dev->dev_ops = &qdma_vf_eth_dev_ops;
+		return 0;
+	}
+
+	if (once) {
+		RTE_LOG(INFO, PMD, "QDMA PMD VERSION: %s\n", QDMA_PMD_VERSION);
+		once = false;
+	}
+
+	/* allocate space for a single Ethernet MAC address */
+	dev->data->mac_addrs = rte_zmalloc("qdma_vf", ETHER_ADDR_LEN * 1, 0);
+	if (dev->data->mac_addrs == NULL)
+		return -ENOMEM;
+
+	/* Copy some dummy Ethernet MAC address for XDMA device
+	 * This will change in real NIC device...
+	 */
+	for (i = 0; i < ETHER_ADDR_LEN; ++i)
+		dev->data->mac_addrs[0].addr_bytes[i] = 0x15 + i;
+
+	/* Init system & device */
+	dma_priv = (struct qdma_pci_dev *)dev->data->dev_private;
+	dma_priv->pf = PCI_DEVFN(pci_dev->addr.devid, pci_dev->addr.function);
+	dma_priv->is_vf = 1;
+
+	dma_priv->qsets_max = QDMA_QUEUES_NUM_MAX;
+	dma_priv->queue_base = DEFAULT_QUEUE_BASE;
+	dma_priv->timer_count = DEFAULT_TIMER_CNT_TRIG_MODE_TIMER;
+
+	/* Setting default Mode to TRIG_MODE_USER_TIMER_COUNT */
+	dma_priv->trigger_mode = TRIG_MODE_USER_TIMER_COUNT;
+	if (dma_priv->trigger_mode == TRIG_MODE_USER_TIMER_COUNT)
+		dma_priv->timer_count = DEFAULT_TIMER_CNT_TRIG_MODE_COUNT_TIMER;
+
+	/* !! FIXME default to enabled for everything.
+	 *
+	 * Currently the registers are not available for VFs, so
+	 * setting them as enabled.
+	 */
+	dma_priv->st_mode_en = 1;
+	dma_priv->mm_mode_en = 1;
+
+	dma_priv->en_desc_prefetch = 0; //Keep prefetch default to 0
+	dma_priv->cmpt_desc_len = DEFAULT_QDMA_CMPT_DESC_LEN;
+	dma_priv->c2h_bypass_mode = C2H_BYPASS_MODE_NONE;
+	dma_priv->h2c_bypass_mode = 0;
+
+	dev->dev_ops = &qdma_vf_eth_dev_ops;
+	dev->rx_pkt_burst = &qdma_recv_pkts;
+	dev->tx_pkt_burst = &qdma_xmit_pkts;
+
+	dma_priv->config_bar_idx = DEFAULT_VF_CONFIG_BAR;
+	dma_priv->bypass_bar_idx = BAR_ID_INVALID;
+	dma_priv->user_bar_idx = BAR_ID_INVALID;
+
+	if (qdma_check_kvargs(dev->device->devargs, dma_priv)) {
+		PMD_DRV_LOG(INFO, "devargs failed\n");
+		rte_free(dev->data->mac_addrs);
+		return -EINVAL;
+	}
+
+	idx = qdma_identify_bars(dev);
+	if (idx < 0) {
+		rte_free(dev->data->mac_addrs);
+		return -EINVAL;
+	}
+
+	PMD_DRV_LOG(INFO, "VF-%d(DEVFN) QDMA device driver probe:",
+								dma_priv->pf);
+
+	idx = qdma_get_hw_version(dev);
+	if (idx < 0) {
+		rte_free(dev->data->mac_addrs);
+		return -EINVAL;
+	}
+
+	baseaddr = (uint8_t *)
+			pci_dev->mem_resource[dma_priv->config_bar_idx].addr;
+	bar_len = pci_dev->mem_resource[dma_priv->config_bar_idx].len;
+
+	dma_priv->bar_addr[dma_priv->config_bar_idx] = baseaddr;
+	dma_priv->bar_len[dma_priv->config_bar_idx] = bar_len;
+
+	if (dma_priv->user_bar_idx >= 0) {
+		baseaddr = (uint8_t *)
+			     pci_dev->mem_resource[dma_priv->user_bar_idx].addr;
+		bar_len = pci_dev->mem_resource[dma_priv->user_bar_idx].len;
+		dma_priv->bar_addr[dma_priv->user_bar_idx] = baseaddr;
+		dma_priv->bar_len[dma_priv->user_bar_idx] = bar_len;
+	}
+	rte_eal_alarm_set(MBOX_POLL_FRQ, qdma_check_pf_msg, (void *)dev);
+	return 0;
+}
+
+/**
+ * DPDK callback to deregister PCI device.
+ *
+ * @param[in] dev
+ *   Pointer to Ethernet device structure.
+ *
+ * @return
+ *   0 on success, negative errno value on failure.
+ */
+static int eth_qdma_vf_dev_uninit(struct rte_eth_dev *dev)
+{
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+
+	/* only uninitialize in the primary process */
+	if (rte_eal_process_type() != RTE_PROC_PRIMARY)
+		return -EPERM;
+	/*Cancel pending polls*/
+	rte_eal_alarm_cancel(qdma_check_pf_msg, (void *)dev);
+	dev->dev_ops = NULL;
+	dev->rx_pkt_burst = NULL;
+	dev->tx_pkt_burst = NULL;
+	dev->data->nb_rx_queues = 0;
+	dev->data->nb_tx_queues = 0;
+
+	if (dev->data->mac_addrs != NULL) {
+		rte_free(dev->data->mac_addrs);
+		dev->data->mac_addrs = NULL;
+	}
+
+	if (qdma_dev->q_info != NULL) {
+		rte_free(qdma_dev->q_info);
+		qdma_dev->q_info = NULL;
+	}
+
+	return 0;
+}
+
+static int eth_qdma_vf_pci_probe(struct rte_pci_driver *pci_drv __rte_unused,
+					struct rte_pci_device *pci_dev)
+{
+	return rte_eth_dev_pci_generic_probe(pci_dev,
+						sizeof(struct qdma_pci_dev),
+						eth_qdma_vf_dev_init);
+}
+
+/* Detach a ethdev interface */
+static int eth_qdma_vf_pci_remove(struct rte_pci_device *pci_dev)
+{
+	return rte_eth_dev_pci_generic_remove(pci_dev, eth_qdma_vf_dev_uninit);
+}
+
+static struct rte_pci_driver rte_qdma_vf_pmd = {
+	.id_table = qdma_vf_pci_id_tbl,
+	.drv_flags = RTE_PCI_DRV_NEED_MAPPING,
+	.probe = eth_qdma_vf_pci_probe,
+	.remove = eth_qdma_vf_pci_remove,
+};
+
+RTE_PMD_REGISTER_PCI(net_qdma_vf, rte_qdma_vf_pmd);
+RTE_PMD_REGISTER_PCI_TABLE(net_qdma_vf, qdma_vf_pci_id_tbl);
diff --git a/QDMA/DPDK/drivers/net/qdma/qdma_xdebug.c b/QDMA/DPDK/drivers/net/qdma/qdma_xdebug.c
new file mode 100644
index 0000000..4db917f
--- /dev/null
+++ b/QDMA/DPDK/drivers/net/qdma/qdma_xdebug.c
@@ -0,0 +1,1113 @@
+/*
+ *   BSD LICENSE
+ *
+ *   Copyright(c) 2017-2018 Xilinx, Inc. All rights reserved.
+ *
+ *   Redistribution and use in source and binary forms, with or without
+ *   modification, are permitted provided that the following conditions
+ *   are met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in
+ *       the documentation and/or other materials provided with the
+ *       distribution.
+ *     * Neither the name of the copyright holder nor the names of its
+ *       contributors may be used to endorse or promote products derived
+ *       from this software without specific prior written permission.
+ *
+ *   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ *   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ *   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ *   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ *   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ *   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ *   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ *   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include <stdint.h>
+#include <sys/mman.h>
+#include <sys/fcntl.h>
+#include <rte_memzone.h>
+#include <rte_string_fns.h>
+#include <rte_ethdev_pci.h>
+#include <rte_malloc.h>
+#include <rte_dev.h>
+#include <rte_pci.h>
+#include <rte_ether.h>
+#include <rte_ethdev.h>
+#include <rte_cycles.h>
+#include <unistd.h>
+#include <string.h>
+#include <rte_hexdump.h>
+
+#include "qdma.h"
+#include "qdma_export.h"
+#include "qdma_regs.h"
+
+union __attribute__ ((packed)) h2c_c2h_ctxt
+{
+	struct  __attribute__ ((packed))  ctxt_data
+	{
+		uint32_t data[5];
+	} c_data;
+	struct  __attribute__ ((packed)) ctxt_fields
+	{
+		uint16_t pidx;
+
+		uint16_t irq_arm:1;
+		uint16_t fnc_id:8;
+		uint16_t rsv0:7;
+
+		uint16_t qen:1;
+		uint16_t fcrd_en:1;
+		uint16_t wbi_chk:1;
+		uint16_t wbi_intvl_en:1;
+		uint16_t at:1;
+		uint16_t fetch_max:3;
+		uint16_t rsv1:4;
+		uint16_t rng_sz:4;
+
+		uint16_t dsc_sz:2;
+		uint16_t byp:1;
+		uint16_t mm_chn:1;
+		uint16_t wbk_en:1;
+		uint16_t irq_en:1;
+		uint16_t port_id:3;
+		uint16_t irq_no_last:1;
+		uint16_t err:2;
+		uint16_t err_wb_sent:1;
+		uint16_t irq_req:1;
+		uint16_t mrkr_dis:1;
+		uint16_t is_mm:1;
+
+		uint64_t dsc_base;
+
+		uint16_t vec:10;
+		uint16_t int_aggr:1;
+	} c_fields;
+};
+
+union __attribute__ ((packed)) c2h_cmpt_ctxt
+{
+	struct  __attribute__ ((packed))  c2h_cmpt_data
+	{
+		uint32_t data[5];
+	} c_data;
+	struct  __attribute__ ((packed)) c2h_cmpt_fields
+	{
+		uint32_t en_stat_desc:1;
+		uint32_t en_int:1;
+		uint32_t trig_mode:3;
+		uint32_t fnc_id:8;
+		uint32_t rsv0:4;
+		uint32_t count_idx:4;
+		uint32_t timer_idx:4;
+		uint32_t int_st:2;
+		uint32_t color:1;
+		uint32_t qsize_idx:4;
+
+		uint64_t rsv1:6;
+		uint64_t baddr:52;
+		uint64_t desc_sz:2;
+		uint64_t pidx_l:4;
+
+		uint32_t pidx_h:12;
+		uint32_t cidx:16;
+		uint32_t valid:1;
+		uint32_t err:2;
+		uint32_t user_trig_pend:1;
+
+		uint32_t timer_running:1;
+		uint32_t full_upd:1;
+		uint32_t ovf_chk_dis:1;
+		uint32_t at:1;
+		uint32_t vec:11;
+		uint32_t int_aggr:1;
+		uint32_t rsv2:17;
+	} c_fields;
+};
+
+union __attribute__ ((packed)) h2c_c2h_hw_ctxt
+{
+	struct  __attribute__ ((packed))  hw_ctxt_data
+	{
+		uint32_t data[2];
+	} c_data;
+	struct  __attribute__ ((packed)) hw_ctxt_fields
+	{
+		uint16_t cidx;
+		uint16_t crd_use;
+
+		uint16_t rsv0:8;
+		uint16_t dsc_pnd:1;
+		uint16_t idl_stp_b:1;
+		uint16_t evt_pnd:1;
+		uint16_t fetch_pnd:4;
+		uint16_t rsv1:1;
+
+	} c_fields;
+};
+
+union __attribute__ ((packed)) prefetch_ctxt
+{
+	struct __attribute__ ((packed)) pref_ctxt_data
+	{
+		uint32_t data[2];
+	} c_data;
+
+	struct __attribute__ ((packed)) pref_ctxt_fields
+	{
+		uint64_t bypass:1;
+		uint64_t buf_sz_idx:4;
+		uint64_t port_id:3;
+		uint64_t rsvd:18;
+		uint64_t err:1;
+		uint64_t pfch_en:1;
+		uint64_t pfch:1;
+		uint64_t sw_crdt:16;
+		uint64_t valid:1;
+	} c_fields;
+};
+
+#define xdebug_info(x, args...) rte_log(RTE_LOG_INFO, RTE_LOGTYPE_USER1,\
+					## args)
+
+static void print_header(const char *str)
+{
+	xdebug_info(adap, "\n\n%s\n\n", str);
+}
+
+static int qdma_struct_dump(uint8_t port_id, uint16_t queue)
+{
+	struct rte_eth_dev *dev = &rte_eth_devices[port_id];
+
+	if (queue >= dev->data->nb_rx_queues) {
+		PMD_DRV_LOG(INFO, " RX queue_id=%d not configured\n", queue);
+	} else {
+		struct qdma_rx_queue *rx_q =
+			(struct qdma_rx_queue *)dev->data->rx_queues[queue];
+
+		if(rx_q) {
+			print_header(" ***********RX Queue struct********** ");
+			xdebug_info(dev, "\t\t wb_pidx             :%x\n",
+					rx_q->wb_status->pidx);
+			xdebug_info(dev, "\t\t wb_cidx             :%x\n",
+					rx_q->wb_status->cidx);
+			xdebug_info(dev, "\t\t rx_pidx             :%x\n",
+					*rx_q->rx_pidx);
+			xdebug_info(dev, "\t\t rx_cidx             :%x\n",
+					*rx_q->rx_cidx);
+			xdebug_info(dev, "\t\t rx_tail             :%x\n",
+					rx_q->rx_tail);
+			xdebug_info(dev, "\t\t c2h_pidx            :%x\n",
+					rx_q->c2h_pidx);
+			xdebug_info(dev, "\t\t rx_cmpt_tail        :%x\n",
+					rx_q->rx_cmpt_tail);
+			xdebug_info(dev, "\t\t cmpt_desc_len       :%x\n",
+					rx_q->cmpt_desc_len);
+			xdebug_info(dev, "\t\t rx_buff_size        :%x\n",
+					rx_q->rx_buff_size);
+			xdebug_info(dev, "\t\t nb_rx_desc          :%x\n",
+					rx_q->nb_rx_desc);
+			xdebug_info(dev, "\t\t nb_rx_cmpt_desc     :%x\n",
+					rx_q->nb_rx_cmpt_desc);
+			xdebug_info(dev, "\t\t ep_addr             :%x\n",
+					rx_q->ep_addr);
+			xdebug_info(dev, "\t\t st_mode             :%x\n",
+					rx_q->st_mode);
+			xdebug_info(dev, "\t\t rx_deferred_start   :%x\n",
+					rx_q->rx_deferred_start);
+			xdebug_info(dev, "\t\t en_prefetch         :%x\n",
+					rx_q->en_prefetch);
+			xdebug_info(dev, "\t\t en_bypass           :%x\n",
+					rx_q->en_bypass);
+			xdebug_info(dev, "\t\t dump_immediate_data :%x\n",
+					rx_q->dump_immediate_data);
+			xdebug_info(dev, "\t\t en_bypass_prefetch  :%x\n",
+					rx_q->en_bypass_prefetch);
+			xdebug_info(dev, "\t\t dis_overflow_check  :%x\n",
+					rx_q->dis_overflow_check);
+			xdebug_info(dev, "\t\t bypass_desc_sz      :%x\n",
+					rx_q->bypass_desc_sz);
+			xdebug_info(dev, "\t\t ringszidx           :%x\n",
+					rx_q->ringszidx);
+			xdebug_info(dev, "\t\t cmpt_ringszidx      :%x\n",
+					rx_q->cmpt_ringszidx);
+			xdebug_info(dev, "\t\t buffszidx           :%x\n",
+					rx_q->buffszidx);
+			xdebug_info(dev, "\t\t threshidx           :%x\n",
+					rx_q->threshidx);
+			xdebug_info(dev, "\t\t timeridx            :%x\n",
+					rx_q->timeridx);
+			xdebug_info(dev, "\t\t triggermode         :%x\n",
+					rx_q->triggermode);
+		}
+	}
+
+	if (queue >= dev->data->nb_tx_queues) {
+		PMD_DRV_LOG(INFO, " TX queue_id=%d not configured\n", queue);
+	} else {
+		struct qdma_tx_queue *tx_q =
+			(struct qdma_tx_queue *)dev->data->tx_queues[queue];
+
+		if(tx_q) {
+			print_header("***********TX Queue struct************");
+			xdebug_info(dev, "\t\t wb_pidx             :%x\n",
+					tx_q->wb_status->pidx);
+			xdebug_info(dev, "\t\t wb_cidx             :%x\n",
+					tx_q->wb_status->cidx);
+			xdebug_info(dev, "\t\t tx_pidx             :%x\n",
+					*tx_q->tx_pidx);
+			xdebug_info(dev, "\t\t tx_tail             :%x\n",
+					tx_q->tx_tail);
+			xdebug_info(dev, "\t\t tx_fl_tail          :%x\n",
+					tx_q->tx_fl_tail);
+			xdebug_info(dev, "\t\t tx_desc_pend        :%x\n",
+					tx_q->tx_desc_pend);
+			xdebug_info(dev, "\t\t nb_tx_desc          :%x\n",
+					tx_q->nb_tx_desc);
+			xdebug_info(dev, "\t\t st_mode             :%x\n",
+					tx_q->st_mode);
+			xdebug_info(dev, "\t\t tx_deferred_start   :%x\n",
+					tx_q->tx_deferred_start);
+			xdebug_info(dev, "\t\t en_bypass           :%x\n",
+					tx_q->en_bypass);
+			xdebug_info(dev, "\t\t bypass_desc_sz      :%x\n",
+					tx_q->bypass_desc_sz);
+			xdebug_info(dev, "\t\t func_id             :%x\n",
+					tx_q->func_id);
+			xdebug_info(dev, "\t\t port_id             :%x\n",
+					tx_q->port_id);
+			xdebug_info(dev, "\t\t ringszidx           :%x\n",
+					tx_q->ringszidx);
+			xdebug_info(dev, "\t\t ep_addr             :%x\n",
+					tx_q->ep_addr);
+		}
+	}
+	return 0;
+}
+
+static int qdma_csr_dump(void)
+{
+	struct rte_eth_dev *dev;
+	struct qdma_pci_dev *qdma_dev;
+	uint64_t bar_addr;
+	uint32_t reg_val;
+
+	if (rte_eth_dev_count() < 1)
+		return -1;
+
+	dev = &rte_eth_devices[0];
+	qdma_dev = dev->data->dev_private;
+	bar_addr = (uint64_t)qdma_dev->bar_addr[qdma_dev->config_bar_idx];
+
+	xdebug_info(dev, "FPGA Registers\n--------------\n");
+	xdebug_info(dev, "NAME                               offset       "
+			"description               register-Value\n");
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0x0));
+	xdebug_info(dev, "FPGA_VER                           0x00000000   "
+			"FPGA Version              %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0x204));
+	xdebug_info(dev, "QDMA_GLBL_RNG_SZ_A[0]              0x00000204   "
+			"Ring size index 0         %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0x208));
+	xdebug_info(dev, "QDMA_GLBL_RNG_SZ_A[1]              0x00000208   "
+			"Ring size index 1         %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0x20c));
+	xdebug_info(dev, "QDMA_GLBL_RNG_SZ_A[2]              0x0000020c   "
+			"Ring size index 2         %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0x210));
+	xdebug_info(dev, "QDMA_GLBL_RNG_SZ_A[3]              0x00000210   "
+			"Ring size index 3         %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0x214));
+	xdebug_info(dev, "QDMA_GLBL_RNG_SZ_A[4]              0x00000214   "
+			"Ring size index 4         %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0x218));
+	xdebug_info(dev, "QDMA_GLBL_RNG_SZ_A[5]              0x00000218   "
+			"Ring size index 5         %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0x21c));
+	xdebug_info(dev, "QDMA_GLBL_RNG_SZ_A[6]              0x0000021c   "
+			"Ring size index 6         %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0x220));
+	xdebug_info(dev, "QDMA_GLBL_RNG_SZ_A[7]              0x00000220   "
+			"Ring size index 7         %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0x224));
+	xdebug_info(dev, "QDMA_GLBL_RNG_SZ_A[8]              0x00000224   "
+			"Ring size index 8         %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0x228));
+	xdebug_info(dev, "QDMA_GLBL_RNG_SZ_A[9]              0x00000228   "
+			"Ring size index 9         %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0x22c));
+	xdebug_info(dev, "QDMA_GLBL_RNG_SZ_A[10]             0x0000022c   "
+			"Ring size index 10        %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0x230));
+	xdebug_info(dev, "QDMA_GLBL_RNG_SZ_A[11]             0x00000230   "
+			"Ring size index 11        %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0x234));
+	xdebug_info(dev, "QDMA_GLBL_RNG_SZ_A[12]             0x00000234   "
+			"Ring size index 12        %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0x238));
+	xdebug_info(dev, "QDMA_GLBL_RNG_SZ_A[13]             0x00000238   "
+			"Ring size index 13        %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0x23c));
+	xdebug_info(dev, "QDMA_GLBL_RNG_SZ_A[14]             0x0000023c   "
+			"Ring size index 14        %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0x240));
+	xdebug_info(dev, "QDMA_GLBL_RNG_SZ_A[15]             0x00000240   "
+			"Ring size index 15        %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0x248));
+	xdebug_info(dev, "QDMA_GLBL_ERR_STAT                 0x00000248   "
+			"Global error status       %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0x24c));
+	xdebug_info(dev, "QDMA_GLBL_ERR_MASK                 0x0000024c   "
+			"Global error mask         %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0x250));
+	xdebug_info(dev, "QDMA_GLBL_DSC_CFG                  0x00000250   "
+			"Global Desc configuration %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0x254));
+	xdebug_info(dev, "QDMA_GLBL_DSC_ERR_STS              0x00000254   "
+			"Global Desc error status  %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0x258));
+	xdebug_info(dev, "QDMA_GLBL_DSC_ERR_MSK              0x00000258   "
+			"Global Desc error Mask    %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0x25c));
+	xdebug_info(dev, "QDMA_GLBL_DSC_ERR_LOG0             0x0000025c   "
+			"Global Desc error log0    %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0x260));
+	xdebug_info(dev, "QDMA_GLBL_DSC_ERR_LOG1             0x00000260   "
+			"Global Desc error log1    %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0x264));
+	xdebug_info(dev, "QDMA_GLBL_TRQ_ERR_STS              0x00000264   "
+			"Glbl target error status  %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0x268));
+	xdebug_info(dev, "QDMA_GLBL_TRQ_ERR_MSK              0x00000268   "
+			"Glbl target error Mask    %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0x26c));
+	xdebug_info(dev, "QDMA_GLBL_TRQ_ERR_LOG              0x0000026c   "
+			"Register access space     %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0x400));
+	xdebug_info(dev, "QDMA_TRQ_SEL_FMAP[0]               0x00000400   "
+			"FMAP target index-0       %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0x404));
+	xdebug_info(dev, "QDMA_TRQ_SEL_FMAP[1]               0x00000404   "
+			"FMAP target index-1       %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0xa88));
+	xdebug_info(dev, "QDMA_C2H_STAT_AXIS_C2H_ACPTD       0x00000a88   "
+			"C2H pkts accepted         %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0xa8c));
+	xdebug_info(dev, "QDMA_C2H_STAT_AXIS_CMPT_ACPTD      0x00000a8c   "
+			"C2H CMPT pkts accepted    %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0xa90));
+	xdebug_info(dev, "QDMA_C2H_STAT_DESC_RSP_PKT_ACPTD   0x00000a90   "
+			"desc rsp pkts accepted    %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0xa94));
+	xdebug_info(dev, "QDMA_C2H_STAT_AXIS_PKG_CMP         0x00000a94   "
+			"C2H pkts completed        %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0xa98));
+	xdebug_info(dev, "QDMA_C2H_STAT_DESC_RSP_ACPTD       0x00000a98   "
+			"dsc rsp pkts accepted     %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0xa9c));
+	xdebug_info(dev, "QDMA_C2H_STAT_DESC_RSP_CMP D       0x00000a9c   "
+			"dsc rsp pkts completed    %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0xaa0));
+	xdebug_info(dev, "QDMA_C2H_STAT_WRQ_OUT              0x00000aa0   "
+			"Number of WRQ             %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0xaa4));
+	xdebug_info(dev, "QDMA_C2H_STAT_WPL_REN_ACPTD        0x00000aa4   "
+			"WPL REN accepted          %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0xaf0));
+	xdebug_info(dev, "QDMA_GLBL_ERR_STAT                 0x00000af0   "
+			"C2H error status          %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0xaf4));
+	xdebug_info(dev, "QDMA_GLBL_ERR_MASK                 0x00000af4   "
+			"C2H error Mask            %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0xaf8));
+	xdebug_info(dev, "QDMA_C2H_FATAL_ERR_STAT            0x00000af8   "
+			"C2H fatal error status    %x\n", reg_val);
+	reg_val = qdma_read_reg((uint64_t)(bar_addr + 0xafc));
+	xdebug_info(dev, "QDMA_C2H_FATAL_ERR_MSK             0x00000afc   "
+			"C2H fatal error Mask      %x\n", reg_val);
+
+	return 0;
+}
+
+static int qdma_context_dump(uint8_t port_id, uint16_t queue)
+{
+	struct rte_eth_dev *dev = &rte_eth_devices[port_id];
+	struct qdma_pci_dev *qdma_dev = dev->data->dev_private;
+	struct queue_ind_prg *q_regs;
+	uint32_t reg_val, ctxt_sel;
+	uint64_t bar_addr;
+	uint16_t flag, i;
+	uint16_t qid = qdma_dev->queue_base + queue;
+
+	union h2c_c2h_ctxt q_ctxt;
+	union c2h_cmpt_ctxt c2h_cmpt;
+	union h2c_c2h_hw_ctxt hw_ctxt;
+	union prefetch_ctxt pref_ctxt;
+
+	bar_addr = (uint64_t)qdma_dev->bar_addr[qdma_dev->config_bar_idx];
+	q_regs = (struct queue_ind_prg *)(bar_addr + QDMA_TRQ_SEL_IND +
+			QDMA_IND_Q_PRG_OFF);
+
+	qdma_write_reg((uint64_t)&q_regs->ctxt_mask[0], 0xffffffff);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_mask[1], 0xffffffff);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_mask[2], 0xffffffff);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_mask[3], 0xffffffff);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_mask[4], 0xffffffff);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_mask[5], 0xffffffff);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_mask[6], 0xffffffff);
+	qdma_write_reg((uint64_t)&q_regs->ctxt_mask[7], 0xffffffff);
+
+	if (queue >= dev->data->nb_rx_queues) {
+		PMD_DRV_LOG(INFO, " RX queue_id=%d not configured\n", queue);
+	} else {
+		print_header(" *************C2H Queue Contexts************** ");
+		/* SW context */
+		ctxt_sel = (QDMA_CTXT_SEL_DESC_SW_C2H << CTXT_SEL_SHIFT_B) |
+				(qid << QID_SHIFT_B) |
+				(QDMA_CTXT_CMD_RD << OP_CODE_SHIFT_B);
+		qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+
+		flag = 1;
+		i = CONTEXT_PROG_POLL_COUNT;
+		while (flag && i) {
+			reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_cmd);
+			PMD_DRV_LOG(DEBUG, " Read cmd for queue-id:%d: "
+					"reg_val:%x\n", qid, reg_val);
+			flag = reg_val & BUSY_BIT_MSK;
+			rte_delay_ms(CONTEXT_PROG_DELAY);
+			i--;
+		}
+		if (flag) {
+			PMD_DRV_LOG(ERR, "Error: Busy on queue-id:%d: "
+					"initailization with cmd reg_val:%x\n",
+					qid, reg_val);
+			return -1;
+		}
+
+		for (i = 0; i < 5; i++) {
+			reg_val = qdma_read_reg((uint64_t)&
+					q_regs->ctxt_data[i]);
+			q_ctxt.c_data.data[i] = reg_val;
+		}
+
+		xdebug_info(qdma_dev, "Q-id: %d, \t SW                  "
+				":0x%x  0x%x  0x%x  0x%x 0x%x\n",
+				qid, q_ctxt.c_data.data[4],
+				q_ctxt.c_data.data[3], q_ctxt.c_data.data[2],
+				q_ctxt.c_data.data[1], q_ctxt.c_data.data[0]);
+		xdebug_info(qdma_dev, "\t\t int_aggr            :%x\n",
+				q_ctxt.c_fields.int_aggr);
+		xdebug_info(qdma_dev, "\t\t vec                 :%x\n",
+				q_ctxt.c_fields.vec);
+		xdebug_info(qdma_dev, "\t\t Base-addr           :%lx\n",
+				q_ctxt.c_fields.dsc_base);
+		xdebug_info(qdma_dev, "\t\t is_mm               :%x\n",
+				q_ctxt.c_fields.is_mm);
+		xdebug_info(qdma_dev, "\t\t mark_dis            :%x\n",
+				q_ctxt.c_fields.mrkr_dis);
+		xdebug_info(qdma_dev, "\t\t irq_req             :%x\n",
+				q_ctxt.c_fields.irq_req);
+		xdebug_info(qdma_dev, "\t\t err-cmpt-sent       :%x\n",
+				q_ctxt.c_fields.err_wb_sent);
+		xdebug_info(qdma_dev, "\t\t Error status        :%x\n",
+				q_ctxt.c_fields.err);
+		xdebug_info(qdma_dev, "\t\t irq_no_last         :%x\n",
+				q_ctxt.c_fields.irq_no_last);
+		xdebug_info(qdma_dev, "\t\t port-id             :%x\n",
+				q_ctxt.c_fields.port_id);
+		xdebug_info(qdma_dev, "\t\t irq-enable          :%x\n",
+				q_ctxt.c_fields.irq_en);
+		xdebug_info(qdma_dev, "\t\t write-back enable   :%x\n",
+				q_ctxt.c_fields.wbk_en);
+		xdebug_info(qdma_dev, "\t\t mm-channel-id       :%x\n",
+				q_ctxt.c_fields.mm_chn);
+		xdebug_info(qdma_dev, "\t\t bypass              :%x\n",
+				q_ctxt.c_fields.byp);
+		xdebug_info(qdma_dev, "\t\t desc-size index     :%x\n",
+				q_ctxt.c_fields.dsc_sz);
+		xdebug_info(qdma_dev, "\t\t ring-size index     :%x\n",
+				q_ctxt.c_fields.rng_sz);
+		xdebug_info(qdma_dev, "\t\t reserved            :%x\n",
+				q_ctxt.c_fields.rsv1);
+		xdebug_info(qdma_dev, "\t\t fetch_max           :%x\n",
+				q_ctxt.c_fields.fetch_max);
+		xdebug_info(qdma_dev, "\t\t at                  :%x\n",
+				q_ctxt.c_fields.at);
+		xdebug_info(qdma_dev, "\t\t wbi_intvl_en        :%x\n",
+				q_ctxt.c_fields.wbi_intvl_en);
+		xdebug_info(qdma_dev, "\t\t wbi_chk             :%x\n",
+				q_ctxt.c_fields.wbi_chk);
+		xdebug_info(qdma_dev, "\t\t fetch credits       :%x\n",
+				q_ctxt.c_fields.fcrd_en);
+		xdebug_info(qdma_dev, "\t\t queue-enable        :%x\n",
+				q_ctxt.c_fields.qen);
+		xdebug_info(qdma_dev, "\t\t reserved            :%x\n",
+				q_ctxt.c_fields.rsv0);
+		xdebug_info(qdma_dev, "\t\t function-id         :%x\n",
+				q_ctxt.c_fields.fnc_id);
+		xdebug_info(qdma_dev, "\t\t irq_arm             :%x\n",
+				q_ctxt.c_fields.irq_arm);
+		xdebug_info(qdma_dev, "\t\t producer-index      :%x\n\n",
+				q_ctxt.c_fields.pidx);
+
+		/* c2h cmpt context */
+		ctxt_sel = (QDMA_CTXT_SEL_DESC_CMPT << CTXT_SEL_SHIFT_B) |
+				(qid << QID_SHIFT_B) |
+				(QDMA_CTXT_CMD_RD << OP_CODE_SHIFT_B);
+		qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+
+		flag = 1;
+		i = CONTEXT_PROG_POLL_COUNT;
+		while (flag && i) {
+			reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_cmd);
+			PMD_DRV_LOG(DEBUG, " Read cmd for queue-id:%d: "
+					"reg_val:%x\n", qid, reg_val);
+			flag = reg_val & BUSY_BIT_MSK;
+			rte_delay_ms(CONTEXT_PROG_DELAY);
+			i--;
+		}
+		if (flag) {
+			PMD_DRV_LOG(ERR, "Error: Busy on queue-id:%d: "
+					"initailization with cmd reg_val:%x\n",
+					qid, reg_val);
+			return -1;
+		}
+
+		for (i = 0; i < 5; i++) {
+			reg_val = qdma_read_reg((uint64_t)&
+					q_regs->ctxt_data[i]);
+			c2h_cmpt.c_data.data[i] = reg_val;
+		}
+
+		xdebug_info(qdma_dev, "Q-id: %d, \t C2H-CMPT             "
+				":0x%x  0x%x  0x%x  0x%x 0x%x\n",
+				qid, c2h_cmpt.c_data.data[4],
+				c2h_cmpt.c_data.data[3],
+				c2h_cmpt.c_data.data[2],
+				c2h_cmpt.c_data.data[1],
+				c2h_cmpt.c_data.data[0]);
+
+		xdebug_info(qdma_dev, "\t\t reserved            :%x\n",
+				c2h_cmpt.c_fields.rsv2);
+		xdebug_info(qdma_dev, "\t\t intr aggr           :%x\n",
+				c2h_cmpt.c_fields.int_aggr);
+		xdebug_info(qdma_dev, "\t\t atc                 :%x\n",
+				c2h_cmpt.c_fields.at);
+		xdebug_info(qdma_dev, "\t\t Overflow Chk Disable:%x\n",
+				c2h_cmpt.c_fields.ovf_chk_dis);
+		xdebug_info(qdma_dev, "\t\t Full Update         :%x\n",
+				c2h_cmpt.c_fields.full_upd);
+		xdebug_info(qdma_dev, "\t\t timer_running       :%x\n",
+				c2h_cmpt.c_fields.timer_running);
+		xdebug_info(qdma_dev, "\t\t user_trig_pend      :%x\n",
+				c2h_cmpt.c_fields.user_trig_pend);
+		xdebug_info(qdma_dev, "\t\t error status d      :%x\n",
+				c2h_cmpt.c_fields.err);
+		xdebug_info(qdma_dev, "\t\t valid               :%x\n",
+				c2h_cmpt.c_fields.valid);
+		xdebug_info(qdma_dev, "\t\t consumer-index      :%x\n",
+				c2h_cmpt.c_fields.cidx);
+		xdebug_info(qdma_dev, "\t\t producer-index      :%x\n",
+				(c2h_cmpt.c_fields.pidx_h << 4 |
+				 c2h_cmpt.c_fields.pidx_l));
+		xdebug_info(qdma_dev, "\t\t desc-size           :%x\n",
+				c2h_cmpt.c_fields.desc_sz);
+		xdebug_info(qdma_dev, "\t\t baddr(4K/22 bits)   :%lx\n",
+				(unsigned long int)c2h_cmpt.c_fields.baddr);
+		xdebug_info(qdma_dev, "\t\t size-index          :%x\n",
+				c2h_cmpt.c_fields.qsize_idx);
+		xdebug_info(qdma_dev, "\t\t color               :%x\n",
+				c2h_cmpt.c_fields.color);
+		xdebug_info(qdma_dev, "\t\t interrupt-state     :%x\n",
+				c2h_cmpt.c_fields.int_st);
+		xdebug_info(qdma_dev, "\t\t timer-index         :%x\n",
+				c2h_cmpt.c_fields.timer_idx);
+		xdebug_info(qdma_dev, "\t\t counter-index       :%x\n",
+				c2h_cmpt.c_fields.count_idx);
+		xdebug_info(qdma_dev, "\t\t function-id         :%x\n",
+				c2h_cmpt.c_fields.fnc_id);
+		xdebug_info(qdma_dev, "\t\t trigger-mode        :%x\n",
+				c2h_cmpt.c_fields.trig_mode);
+		xdebug_info(qdma_dev, "\t\t cause interrupt     :%x\n",
+				c2h_cmpt.c_fields.en_int);
+		xdebug_info(qdma_dev, "\t\t cause status descwr :%x\n\n",
+				c2h_cmpt.c_fields.en_stat_desc);
+
+		/* pfch context */
+		ctxt_sel = (QDMA_CTXT_SEL_PFTCH << CTXT_SEL_SHIFT_B) |
+				(qid << QID_SHIFT_B) |
+				(QDMA_CTXT_CMD_RD << OP_CODE_SHIFT_B);
+		qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+
+		flag = 1;
+		i = CONTEXT_PROG_POLL_COUNT;
+		while (flag && i) {
+			reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_cmd);
+			PMD_DRV_LOG(DEBUG, " Read cmd for queue-id:%d: "
+					"reg_val:%x\n", qid, reg_val);
+			flag = reg_val & BUSY_BIT_MSK;
+			rte_delay_ms(CONTEXT_PROG_DELAY);
+			i--;
+		}
+		if (flag) {
+			PMD_DRV_LOG(ERR, "Error: Busy on queue-id:%d: "
+					"initailization with cmd reg_val:%x\n",
+					qid, reg_val);
+			return -1;
+		}
+
+		for (i = 0; i < 2; i++) {
+			reg_val = qdma_read_reg((uint64_t)&
+					q_regs->ctxt_data[i]);
+			pref_ctxt.c_data.data[i] = reg_val;
+		}
+
+		xdebug_info(qdma_dev, "Q-id: %d, \t PFCH                "
+				":0x%x  0x%x\n",
+				qid, c2h_cmpt.c_data.data[1],
+				c2h_cmpt.c_data.data[0]);
+		xdebug_info(qdma_dev, "\t\t valid               :%x\n",
+				pref_ctxt.c_fields.valid);
+		xdebug_info(qdma_dev, "\t\t software credit     :%x\n",
+				pref_ctxt.c_fields.sw_crdt);
+		xdebug_info(qdma_dev, "\t\t queue is in prefetch:%x\n",
+				pref_ctxt.c_fields.pfch);
+		xdebug_info(qdma_dev, "\t\t enable prefetch     :%x\n",
+				pref_ctxt.c_fields.pfch_en);
+		xdebug_info(qdma_dev, "\t\t error               :%x\n",
+				pref_ctxt.c_fields.err);
+		xdebug_info(qdma_dev, "\t\t port ID             :%x\n",
+				pref_ctxt.c_fields.port_id);
+		xdebug_info(qdma_dev, "\t\t buffer size index   :%x\n",
+				pref_ctxt.c_fields.buf_sz_idx);
+		xdebug_info(qdma_dev, "\t\t C2H in bypass mode  :%x\n\n",
+				pref_ctxt.c_fields.bypass);
+
+		/* hwc c2h context */
+		ctxt_sel = (QDMA_CTXT_SEL_DESC_HW_C2H << CTXT_SEL_SHIFT_B) |
+				(qid << QID_SHIFT_B) |
+				(QDMA_CTXT_CMD_RD << OP_CODE_SHIFT_B);
+		qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+
+		flag = 1;
+		i = CONTEXT_PROG_POLL_COUNT;
+		while (flag && i) {
+			reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_cmd);
+			PMD_DRV_LOG(DEBUG, " Read cmd for queue-id:%d: "
+					"reg_val:%x\n", qid, reg_val);
+			flag = reg_val & BUSY_BIT_MSK;
+			rte_delay_ms(CONTEXT_PROG_DELAY);
+			i--;
+		}
+		if (flag) {
+			PMD_DRV_LOG(ERR, "Error: Busy on queue-id:%d: "
+					"initailization with cmd reg_val:%x\n",
+					qid, reg_val);
+			return -1;
+		}
+
+		for (i = 0; i < 2; i++) {
+			reg_val = qdma_read_reg((uint64_t)&
+					q_regs->ctxt_data[i]);
+			hw_ctxt.c_data.data[i] = reg_val;
+		}
+
+		xdebug_info(qdma_dev, "Q-id: %d, \t HW                  "
+				":0x%x  0x%x\n",
+				qid, hw_ctxt.c_data.data[1],
+				hw_ctxt.c_data.data[0]);
+		xdebug_info(qdma_dev, "\t\t reserved            :%x\n",
+				hw_ctxt.c_fields.rsv1);
+		xdebug_info(qdma_dev, "\t\t fetch pending       :%x\n",
+				hw_ctxt.c_fields.fetch_pnd);
+		xdebug_info(qdma_dev, "\t\t event pending       :%x\n",
+				hw_ctxt.c_fields.evt_pnd);
+		xdebug_info(qdma_dev, "\t\t Q-inval/no desc pend:%x\n",
+				hw_ctxt.c_fields.idl_stp_b);
+		xdebug_info(qdma_dev, "\t\t descriptor pending  :%x\n",
+				hw_ctxt.c_fields.dsc_pnd);
+		xdebug_info(qdma_dev, "\t\t reserved            :%x\n",
+				hw_ctxt.c_fields.rsv0);
+		xdebug_info(qdma_dev, "\t\t credit-use          :%x\n",
+				hw_ctxt.c_fields.crd_use);
+		xdebug_info(qdma_dev, "\t\t consumer-index      :%x\n\n",
+				hw_ctxt.c_fields.cidx);
+	}
+
+	if (queue >= dev->data->nb_tx_queues) {
+		PMD_DRV_LOG(INFO, " TX queue_id=%d not configured\n", queue);
+	} else {
+		print_header(" *************H2C Queue Contexts************** ");
+		/* SW context */
+		ctxt_sel = (QDMA_CTXT_SEL_DESC_SW_H2C << CTXT_SEL_SHIFT_B) |
+				(qid << QID_SHIFT_B) |
+				(QDMA_CTXT_CMD_RD << OP_CODE_SHIFT_B);
+		qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+
+		flag = 1;
+		i = CONTEXT_PROG_POLL_COUNT;
+		while (flag && i) {
+			reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_cmd);
+			PMD_DRV_LOG(DEBUG, " Read cmd for queue-id:%d: "
+					"reg_val:%x\n", qid, reg_val);
+			flag = reg_val & BUSY_BIT_MSK;
+			rte_delay_ms(CONTEXT_PROG_DELAY);
+			i--;
+		}
+		if (flag) {
+			PMD_DRV_LOG(ERR, "Error: Busy on queue-id:%d: "
+					"initailization with cmd reg_val:%x\n",
+					qid, reg_val);
+			return -1;
+		}
+
+		for (i = 0; i < 5; i++) {
+			reg_val = qdma_read_reg((uint64_t)&
+					q_regs->ctxt_data[i]);
+			q_ctxt.c_data.data[i] = reg_val;
+		}
+
+		xdebug_info(qdma_dev, "Q-id: %d, \t SW                  "
+				":0x%x  0x%x  0x%x  0x%x 0x%x\n",
+				qid, q_ctxt.c_data.data[4],
+				q_ctxt.c_data.data[3], q_ctxt.c_data.data[2],
+				q_ctxt.c_data.data[1], q_ctxt.c_data.data[0]);
+		xdebug_info(qdma_dev, "\t\t int_aggr            :%x\n",
+				q_ctxt.c_fields.int_aggr);
+		xdebug_info(qdma_dev, "\t\t vec                 :%x\n",
+				q_ctxt.c_fields.vec);
+		xdebug_info(qdma_dev, "\t\t Base-addr           :%lx\n",
+				q_ctxt.c_fields.dsc_base);
+		xdebug_info(qdma_dev, "\t\t is_mm               :%x\n",
+				q_ctxt.c_fields.is_mm);
+		xdebug_info(qdma_dev, "\t\t mark_dis            :%x\n",
+				q_ctxt.c_fields.mrkr_dis);
+		xdebug_info(qdma_dev, "\t\t irq_req             :%x\n",
+				q_ctxt.c_fields.irq_req);
+		xdebug_info(qdma_dev, "\t\t err-cmpt-sent       :%x\n",
+				q_ctxt.c_fields.err_wb_sent);
+		xdebug_info(qdma_dev, "\t\t Error status        :%x\n",
+				q_ctxt.c_fields.err);
+		xdebug_info(qdma_dev, "\t\t irq_no_last         :%x\n",
+				q_ctxt.c_fields.irq_no_last);
+		xdebug_info(qdma_dev, "\t\t port-id             :%x\n",
+				q_ctxt.c_fields.port_id);
+		xdebug_info(qdma_dev, "\t\t irq-enable          :%x\n",
+				q_ctxt.c_fields.irq_en);
+		xdebug_info(qdma_dev, "\t\t write-back enable   :%x\n",
+				q_ctxt.c_fields.wbk_en);
+		xdebug_info(qdma_dev, "\t\t mm-channel-id       :%x\n",
+				q_ctxt.c_fields.mm_chn);
+		xdebug_info(qdma_dev, "\t\t bypass              :%x\n",
+				q_ctxt.c_fields.byp);
+		xdebug_info(qdma_dev, "\t\t desc-size index     :%x\n",
+				q_ctxt.c_fields.dsc_sz);
+		xdebug_info(qdma_dev, "\t\t ring-size index     :%x\n",
+				q_ctxt.c_fields.rng_sz);
+		xdebug_info(qdma_dev, "\t\t reserved            :%x\n",
+				q_ctxt.c_fields.rsv1);
+		xdebug_info(qdma_dev, "\t\t fetch_max           :%x\n",
+				q_ctxt.c_fields.fetch_max);
+		xdebug_info(qdma_dev, "\t\t at                  :%x\n",
+				q_ctxt.c_fields.at);
+		xdebug_info(qdma_dev, "\t\t wbi_intvl_en        :%x\n",
+				q_ctxt.c_fields.wbi_intvl_en);
+		xdebug_info(qdma_dev, "\t\t wbi_chk             :%x\n",
+				q_ctxt.c_fields.wbi_chk);
+		xdebug_info(qdma_dev, "\t\t fetch credits       :%x\n",
+				q_ctxt.c_fields.fcrd_en);
+		xdebug_info(qdma_dev, "\t\t queue-enable        :%x\n",
+				q_ctxt.c_fields.qen);
+		xdebug_info(qdma_dev, "\t\t reserved            :%x\n",
+				q_ctxt.c_fields.rsv0);
+		xdebug_info(qdma_dev, "\t\t function-id         :%x\n",
+				q_ctxt.c_fields.fnc_id);
+		xdebug_info(qdma_dev, "\t\t irq_arm             :%x\n",
+				q_ctxt.c_fields.irq_arm);
+		xdebug_info(qdma_dev, "\t\t producer-index      :%x\n\n",
+				q_ctxt.c_fields.pidx);
+
+		/* hwc h2c context */
+		ctxt_sel = (QDMA_CTXT_SEL_DESC_HW_H2C << CTXT_SEL_SHIFT_B) |
+				(qid << QID_SHIFT_B) |
+				(QDMA_CTXT_CMD_RD << OP_CODE_SHIFT_B);
+		qdma_write_reg((uint64_t)&q_regs->ctxt_cmd, ctxt_sel);
+
+		flag = 1;
+		i = CONTEXT_PROG_POLL_COUNT;
+		while (flag && i) {
+			reg_val = qdma_read_reg((uint64_t)&q_regs->ctxt_cmd);
+			PMD_DRV_LOG(DEBUG, " Read cmd for queue-id:%d: "
+					"reg_val:%x\n", qid, reg_val);
+			flag = reg_val & BUSY_BIT_MSK;
+			rte_delay_ms(CONTEXT_PROG_DELAY);
+			i--;
+		}
+		if (flag) {
+			PMD_DRV_LOG(ERR, "Error: Busy on queue-id:%d: "
+					"initailization with cmd reg_val:%x\n",
+					qid, reg_val);
+			return -1;
+		}
+
+		for (i = 0; i < 2; i++) {
+			reg_val = qdma_read_reg((uint64_t)&
+					q_regs->ctxt_data[i]);
+			hw_ctxt.c_data.data[i] = reg_val;
+		}
+
+		xdebug_info(qdma_dev, "Q-id: %d, \t HW                  "
+				":0x%x  0x%x\n",
+				qid, hw_ctxt.c_data.data[1],
+				hw_ctxt.c_data.data[0]);
+		xdebug_info(qdma_dev, "\t\t reserved            :%x\n",
+				hw_ctxt.c_fields.rsv1);
+		xdebug_info(qdma_dev, "\t\t fetch pending       :%x\n",
+				hw_ctxt.c_fields.fetch_pnd);
+		xdebug_info(qdma_dev, "\t\t event pending       :%x\n",
+				hw_ctxt.c_fields.evt_pnd);
+		xdebug_info(qdma_dev, "\t\t Q-inval/no desc pend:%x\n",
+				hw_ctxt.c_fields.idl_stp_b);
+		xdebug_info(qdma_dev, "\t\t descriptor pending  :%x\n",
+				hw_ctxt.c_fields.dsc_pnd);
+		xdebug_info(qdma_dev, "\t\t reserved            :%x\n",
+				hw_ctxt.c_fields.rsv0);
+		xdebug_info(qdma_dev, "\t\t credit-use          :%x\n",
+				hw_ctxt.c_fields.crd_use);
+		xdebug_info(qdma_dev, "\t\t consumer-index      :%x\n\n",
+				hw_ctxt.c_fields.cidx);
+	}
+
+	return 0;
+}
+static int qdma_queue_desc_dump(uint8_t port_id,
+				struct rte_xdebug_desc_param *param)
+{
+	struct rte_eth_dev *dev = &rte_eth_devices[port_id];
+	int x;
+	struct qdma_rx_queue *rxq;
+	struct qdma_tx_queue *txq;
+	char str[50];
+
+	switch (param->type) {
+	case ETH_XDEBUG_DESC_C2H:
+
+		if (param->queue >= dev->data->nb_rx_queues) {
+			PMD_DRV_LOG(INFO, "queue_id=%d not configured",
+					param->queue);
+			return -1;
+		}
+
+		rxq = (struct qdma_rx_queue *)
+			dev->data->rx_queues[param->queue];
+
+		if(rxq) {
+			if (rxq->status != RTE_ETH_QUEUE_STATE_STARTED) {
+				printf("Queue_id %d is not yet started\n",
+						param->queue);
+				return -1;
+			}
+
+			if (param->start < 0 || param->start > rxq->nb_rx_desc)
+				param->start = 0;
+			if (param->end <= param->start ||
+					param->end > rxq->nb_rx_desc)
+				param->end = rxq->nb_rx_desc;
+
+			if (rxq->st_mode) {
+				struct qdma_c2h_desc *rx_ring_st =
+					(struct qdma_c2h_desc *)rxq->rx_ring;
+
+				printf("\n===== C2H ring descriptors=====\n");
+				for (x = param->start; x < param->end; x++) {
+					struct qdma_c2h_desc *rx_st =
+						&rx_ring_st[x];
+					sprintf(str, "\nDescriptor ID %d\t", x);
+					rte_hexdump(stdout, str,
+						(const void *)rx_st,
+						sizeof(struct qdma_c2h_desc));
+				}
+			} else {
+				struct qdma_mm_desc *rx_ring_mm =
+					(struct qdma_mm_desc *)rxq->rx_ring;
+				printf("\n====== C2H ring descriptors======\n");
+				for (x = param->start; x < param->end; x++) {
+					sprintf(str, "\nDescriptor ID %d\t", x);
+					rte_hexdump(stdout, str,
+						(const void *)&rx_ring_mm[x],
+						sizeof(struct qdma_mm_desc));
+				}
+			}
+		}
+		break;
+	case ETH_XDEBUG_DESC_CMPT:
+
+		if (param->queue >= dev->data->nb_rx_queues) {
+			PMD_DRV_LOG(INFO, "queue_id=%d not configured",
+					param->queue);
+			return -1;
+		}
+
+		rxq = (struct qdma_rx_queue *)
+			dev->data->rx_queues[param->queue];
+
+		if(rxq) {
+			if (rxq->status != RTE_ETH_QUEUE_STATE_STARTED) {
+				printf("Queue_id %d is not yet started\n",
+						param->queue);
+				return -1;
+			}
+
+			if (param->start < 0 ||
+					param->start > rxq->nb_rx_cmpt_desc)
+				param->start = 0;
+			if (param->end <= param->start ||
+					param->end > rxq->nb_rx_cmpt_desc)
+				param->end = rxq->nb_rx_cmpt_desc;
+
+			if (!rxq->st_mode) {
+				printf("Queue_id %d is not initialized "
+					"in Stream mode\n", param->queue);
+				return -1;
+			}
+
+			printf("\n===== CMPT ring descriptors=====\n");
+			for (x = param->start; x < param->end; x++) {
+				uint32_t *cmpt_ring = (uint32_t *)
+					((uint64_t)(rxq->cmpt_ring) +
+					((uint64_t)x * rxq->cmpt_desc_len));
+				sprintf(str, "\nDescriptor ID %d\t", x);
+				rte_hexdump(stdout, str,
+						(const void *)cmpt_ring,
+						rxq->cmpt_desc_len);
+			}
+		}
+		break;
+	case ETH_XDEBUG_DESC_H2C:
+
+		if (param->queue >= dev->data->nb_tx_queues) {
+			PMD_DRV_LOG(INFO, "queue_id=%d not configured",
+					param->queue);
+			return -1;
+		}
+
+		txq = (struct qdma_tx_queue *)
+			dev->data->tx_queues[param->queue];
+
+		if(txq) {
+			if (txq->status != RTE_ETH_QUEUE_STATE_STARTED) {
+				printf("Queue_id %d is not yet started\n",
+						param->queue);
+				return -1;
+			}
+
+			if (param->start < 0 || param->start > txq->nb_tx_desc)
+				param->start = 0;
+			if (param->end <= param->start ||
+					param->end > txq->nb_tx_desc)
+				param->end = txq->nb_tx_desc;
+
+			if (txq->st_mode) {
+				struct qdma_h2c_desc *qdma_h2c_ring =
+					(struct qdma_h2c_desc *)txq->tx_ring;
+				printf("\n====== H2C ring descriptors=====\n");
+				for (x = param->start; x < param->end; x++) {
+					sprintf(str, "\nDescriptor ID %d\t", x);
+					rte_hexdump(stdout, str,
+						(const void *)&qdma_h2c_ring[x],
+						sizeof(struct qdma_h2c_desc));
+				}
+			} else {
+				struct qdma_mm_desc *tx_ring_mm =
+					(struct qdma_mm_desc *)txq->tx_ring;
+				printf("\n===== H2C ring descriptors=====\n");
+				for (x = param->start; x < param->end; x++) {
+					sprintf(str, "\nDescriptor ID %d\t", x);
+					rte_hexdump(stdout, str,
+						(const void *)&tx_ring_mm[x],
+						sizeof(struct qdma_mm_desc));
+				}
+			}
+		}
+		break;
+	default:
+		printf("Invalid ring selected\n");
+		break;
+	}
+	return 0;
+}
+
+int qdma_xdebug(uint8_t port_id, enum rte_xdebug_type type,
+		void *params)
+{
+	int err = -ENOTSUP;
+
+	switch (type) {
+	case ETH_XDEBUG_QDMA_GLOBAL_CSR:
+		err = qdma_csr_dump();
+		if (err) {
+			xdebug_info(adap, "Error dumping Global registers\n");
+			return err;
+		}
+		break;
+	case ETH_XDEBUG_QUEUE_CONTEXT:
+
+		if (!params) {
+			printf("QID required for Queue context dump\n");
+			return -1;
+		}
+
+		err = qdma_context_dump(port_id, *(uint16_t *)params);
+		if (err) {
+			xdebug_info(adap, "Error dumping %d: %d\n",
+					*(int *)params, err);
+			return err;
+		}
+		break;
+
+	case ETH_XDEBUG_QUEUE_STRUCT:
+
+		if (!params) {
+			printf("QID required for Queue Structure dump\n");
+			return -1;
+		}
+
+		err = qdma_struct_dump(port_id, *(uint16_t *)params);
+		if (err) {
+			xdebug_info(adap, "Error dumping %d: %d\n",
+					*(int *)params, err);
+			return err;
+		}
+		break;
+
+	case ETH_XDEBUG_QUEUE_DESC_DUMP:
+
+		if (!params) {
+			printf("Params required for Queue descriptor dump\n");
+			return -1;
+		}
+
+		err = qdma_queue_desc_dump(port_id,
+				(struct rte_xdebug_desc_param *)params);
+		if (err) {
+			xdebug_info(adap, "Error dumping %d: %d\n",
+					*(int *)params, err);
+			return err;
+		}
+		break;
+
+	default:
+		xdebug_info(adap, "Unsupported type\n");
+		return err;
+	}
+
+	return 0;
+}
diff --git a/QDMA/DPDK/drivers/net/qdma/rte_pmd_qdma_version.map b/QDMA/DPDK/drivers/net/qdma/rte_pmd_qdma_version.map
new file mode 100644
index 0000000..a753031
--- /dev/null
+++ b/QDMA/DPDK/drivers/net/qdma/rte_pmd_qdma_version.map
@@ -0,0 +1,3 @@
+DPDK_17.11 {
+	local: *;
+};
diff --git a/QDMA/DPDK/drivers/net/qdma/version.h b/QDMA/DPDK/drivers/net/qdma/version.h
new file mode 100644
index 0000000..2b1ef02
--- /dev/null
+++ b/QDMA/DPDK/drivers/net/qdma/version.h
@@ -0,0 +1,51 @@
+/*-
+ *   BSD LICENSE
+ *
+ *   Copyright(c) 2017-2018 Xilinx, Inc. All rights reserved.
+ *
+ *   Redistribution and use in source and binary forms, with or without
+ *   modification, are permitted provided that the following conditions
+ *   are met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in
+ *       the documentation and/or other materials provided with the
+ *       distribution.
+ *     * Neither the name of the copyright holder nor the names of its
+ *       contributors may be used to endorse or promote products derived
+ *       from this software without specific prior written permission.
+ *
+ *   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ *   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ *   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ *   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ *   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ *   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ *   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ *   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef __QDMA_VERSION_H__
+#define __QDMA_VERSION_H__
+
+#define qdma_stringify1(x...)	#x
+#define qdma_stringify(x...)	qdma_stringify1(x)
+
+#define QDMA_PMD_MAJOR		2018
+#define QDMA_PMD_MINOR		3
+#define QDMA_PMD_PATCHLEVEL	19
+
+#define QDMA_PMD_VERSION      \
+	qdma_stringify(QDMA_PMD_MAJOR) "." \
+	qdma_stringify(QDMA_PMD_MINOR) "." \
+	qdma_stringify(QDMA_PMD_PATCHLEVEL)
+
+#define QDMA_PMD_VERSION_NUMBER  \
+	((QDMA_PMD_MAJOR) * 1000 + (QDMA_PMD_MINOR) * 100 + QDMA_PMD_PATCHLEVEL)
+
+#endif /* ifndef __QDMA_VERSION_H__ */
diff --git a/QDMA/DPDK/examples/qdma_testapp/Makefile b/QDMA/DPDK/examples/qdma_testapp/Makefile
new file mode 100644
index 0000000..6b619e0
--- /dev/null
+++ b/QDMA/DPDK/examples/qdma_testapp/Makefile
@@ -0,0 +1,55 @@
+#   BSD LICENSE
+#
+#   Copyright(c) 2017-2018 Xilinx, Inc. All rights reserved.
+#
+#   Redistribution and use in source and binary forms, with or without
+#   modification, are permitted provided that the following conditions
+#   are met:
+#
+#     * Redistributions of source code must retain the above copyright
+#       notice, this list of conditions and the following disclaimer.
+#     * Redistributions in binary form must reproduce the above copyright
+#       notice, this list of conditions and the following disclaimer in
+#       the documentation and/or other materials provided with the
+#       distribution.
+#     * Neither the name of the copyright holder nor the names of its
+#       contributors may be used to endorse or promote products derived
+#       from this software without specific prior written permission.
+#
+#   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+#   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+#   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+#   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+#   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+#   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+#   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+#   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+#   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+#   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+#   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ifeq ($(RTE_SDK),)
+$(error "Please define RTE_SDK environment variable")
+endif
+
+# Default target, can be overriden by command line or environment
+RTE_TARGET ?= x86_64-native-linuxapp-gcc
+
+#Default BRAM size is set to 512K
+#if modified the BRAM_SIZE, the same need to be set to the driver Makefile
+BRAM_SIZE ?= 524288
+include $(RTE_SDK)/mk/rte.vars.mk
+
+# binary name
+APP = qdma_testapp
+
+# all source are stored in SRCS-y
+SRCS-y := testapp.c pcierw.c commands.c
+
+CFLAGS += -O3 -DDPDK=1 -DBRAM_SIZE=$(BRAM_SIZE)
+CFLAGS += $(WERROR_FLAGS)
+
+# PERF benchmarking may be enabled by uncommenting following
+#CFLAGS += -DPERF_BENCHMARK
+
+include $(RTE_SDK)/mk/rte.extapp.mk
diff --git a/QDMA/DPDK/examples/qdma_testapp/commands.c b/QDMA/DPDK/examples/qdma_testapp/commands.c
new file mode 100644
index 0000000..5ddd581
--- /dev/null
+++ b/QDMA/DPDK/examples/qdma_testapp/commands.c
@@ -0,0 +1,1532 @@
+/*-
+ *   BSD LICENSE
+ *
+ *   Copyright(c) 2017-2018 Xilinx, Inc. All rights reserved.
+ *
+ *   Redistribution and use in source and binary forms, with or without
+ *   modification, are permitted provided that the following conditions
+ *   are met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in
+ *       the documentation and/or other materials provided with the
+ *       distribution.
+ *     * Neither the name of the copyright holder nor the names of its
+ *       contributors may be used to endorse or promote products derived
+ *       from this software without specific prior written permission.
+ *
+ *   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ *   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ *   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ *   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ *   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ *   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ *   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ *   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/*-
+ *   BSD LICENSE
+ *
+ *   Copyright(c) 2010-2014 Intel Corporation. All rights reserved.
+ *   All rights reserved.
+ *
+ *   Redistribution and use in source and binary forms, with or without
+ *   modification, are permitted provided that the following conditions
+ *   are met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in
+ *       the documentation and/or other materials provided with the
+ *       distribution.
+ *     * Neither the name of Intel Corporation nor the names of its
+ *       contributors may be used to endorse or promote products derived
+ *       from this software without specific prior written permission.
+ *
+ *   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ *   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ *   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ *   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ *   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ *   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ *   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ *   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/*
+ * Copyright (c) 2009, Olivier MATZ <zer0@droids-corp.org>
+ * All rights reserved.
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in the
+ *       documentation and/or other materials provided with the distribution.
+ *     * Neither the name of the University of California, Berkeley nor the
+ *       names of its contributors may be used to endorse or promote products
+ *       derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL THE REGENTS AND CONTRIBUTORS BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include <stdio.h>
+#include <stdint.h>
+#include <string.h>
+#include <stdlib.h>
+#include <unistd.h>
+#include <stdarg.h>
+#include <errno.h>
+#include <netinet/in.h>
+#include <termios.h>
+#ifndef __linux__
+#include <net/socket.h>
+#endif
+
+#include <cmdline_rdline.h>
+#include <cmdline_parse.h>
+#include <cmdline_parse_ipaddr.h>
+#include <cmdline_parse_num.h>
+#include <cmdline_parse_string.h>
+#include <cmdline.h>
+
+#include <rte_string_fns.h>
+#include <rte_ethdev.h>
+#include <fcntl.h>
+
+#include "parse_obj_list.h"
+#include "pcierw.h"
+#include "commands.h"
+#include "qdma_regs.h"
+#include "testapp.h"
+#include "../../drivers/net/qdma/qdma.h"
+
+/* Command help */
+struct cmd_help_result {
+	cmdline_fixed_string_t help;
+};
+
+static void cmd_help_parsed(__attribute__((unused)) void *parsed_result,
+						struct cmdline *cl,
+					__attribute__((unused)) void *data)
+{
+	cmdline_printf(cl,
+			"Demo example of command line interface in RTE\n\n"
+			"This is a readline-like interface that can be "
+			"used to\n debug your RTE application.\n\n"
+			"Supported Commands:\n"
+			"\tport_init            <port-id> <queue-id base> "
+						"<num-queues> <st-queues> "
+						"<ring-depth> <pkt-buff-size> "
+					    	"    :port-initailization\n"
+			"\tport_close           <port-id> "
+			":port-close\n"
+			"\treg_read             <port-id> <bar-num> <address> "
+			":Reads Specified Register\n"
+			"\treg_write            <port-id> <bar-num> <address> "
+						"<value>    "
+			":Writes Specified Register\n"
+			"\tdma_to_device        <port-id> <num-queues> "
+						"<input-filename> "
+			"<dst_addr> <size> <iterations>   "
+			":To Transmit\n"
+			"\tdma_from_device      <port-id> <num-queues> "
+						"<output-filename> "
+			"<src_addr> <size> <iterations>  "
+			":To Receive\n"
+			"\treg_dump             <port-id>  "
+			":To dump all the valid registers\n"
+			"\tqueue_dump           <port-id> <queue-id>  "
+			":To dump the queue-context of a queue-number\n"
+			"\tdesc_dump            <port-id> <queue-id>  "
+			":To dump the descriptor-fields of a "
+			"queue-number\n"
+			"\tload_cmds            <file-name> "
+			":To execute the list of commands from file\n"
+			"\thelp\n"
+			"\tCtrl-d                           "
+			": To quit from this command-line type Ctrl+d\n"
+			"\n");
+}
+
+cmdline_parse_token_string_t cmd_help_help =
+	TOKEN_STRING_INITIALIZER(struct cmd_help_result, help, "help");
+
+cmdline_parse_inst_t cmd_help = {
+	.f = cmd_help_parsed,  /* function to call */
+	.data = NULL,      /* 2nd arg of func */
+	.help_str = "show help",
+	.tokens = {        /* token list, NULL terminated */
+		(void *)&cmd_help_help,
+		NULL,
+	},
+};
+
+struct cmd_obj_port_init_result {
+	cmdline_fixed_string_t action;
+	cmdline_fixed_string_t port_id;
+	cmdline_fixed_string_t queue_base;
+	cmdline_fixed_string_t num_queues;
+	cmdline_fixed_string_t st_queues;
+	cmdline_fixed_string_t nb_descs;
+	cmdline_fixed_string_t buff_size;
+};
+
+static void cmd_obj_port_init_parsed(void *parsed_result,
+			       struct cmdline *cl,
+			       __attribute__((unused)) void *data)
+{
+	struct cmd_obj_port_init_result *res = parsed_result;
+
+	cmdline_printf(cl, "Port-init Port:%s, num-queues:%s, st-queues: %s\n",
+			res->port_id, res->num_queues, res->st_queues);
+
+	int port_id = atoi(res->port_id);
+	if (pinfo[port_id].num_queues) {
+		cmdline_printf(cl, "Error: port-id:%d already initialized\n"
+				"To re-initialize please close the port\n",
+				port_id);
+		return;
+	}
+
+	int num_queues   = atoi(res->num_queues);
+	int queue_base   = atoi(res->queue_base);
+	int st_queues   = atoi(res->st_queues);
+	int nb_descs	= atoi(res->nb_descs);
+	int buff_size	= atoi(res->buff_size);
+
+	if ((num_queues < 1) || (queue_base + num_queues > MAX_NUM_QUEUES)) {
+		cmdline_printf(cl, "Error: please enter valid number of queues,"
+				"entered: %d max allowed: %d\n",
+				num_queues, MAX_NUM_QUEUES);
+		return;
+	}
+
+	if (port_id >= num_ports) {
+		cmdline_printf(cl, "Error: please enter valid port number: "
+				"%d\n", port_id);
+		return;
+	}
+	{
+		int result = port_init(port_id, queue_base, num_queues,
+					st_queues, nb_descs, buff_size);
+
+		if (result < 0)
+			cmdline_printf(cl, "Error: Port initialization on "
+					"port-id:%d failed\n", port_id);
+		else
+			cmdline_printf(cl, "Port initialization done "
+					"successfully on port-id:%d\n",
+					port_id);
+	}
+}
+
+cmdline_parse_token_string_t cmd_obj_action_port_init =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_port_init_result, action,
+					"port_init");
+cmdline_parse_token_string_t cmd_obj_port_init_port_id =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_port_init_result, port_id,
+					NULL);
+cmdline_parse_token_string_t cmd_obj_port_init_queue_base =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_port_init_result, queue_base,
+					NULL);
+cmdline_parse_token_string_t cmd_obj_port_init_num_queues =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_port_init_result, num_queues,
+					NULL);
+cmdline_parse_token_string_t cmd_obj_port_init_st_queues =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_port_init_result, st_queues,
+					NULL);
+cmdline_parse_token_string_t cmd_obj_port_init_nb_descs =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_port_init_result, nb_descs,
+					NULL);
+cmdline_parse_token_string_t cmd_obj_port_init_buff_size =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_port_init_result, buff_size,
+					NULL);
+
+cmdline_parse_inst_t cmd_obj_port_init = {
+	.f = cmd_obj_port_init_parsed,  /* function to call */
+	.data = NULL,      /* 2nd arg of func */
+	.help_str = "port_init  port-id queue-id-base num-queues st-queues "
+			"queue-ring-size buffer-size",
+	.tokens = {        /* token list, NULL terminated */
+		(void *)&cmd_obj_action_port_init,
+		(void *)&cmd_obj_port_init_port_id,
+		(void *)&cmd_obj_port_init_queue_base,
+		(void *)&cmd_obj_port_init_num_queues,
+		(void *)&cmd_obj_port_init_st_queues,
+		(void *)&cmd_obj_port_init_nb_descs,
+		(void *)&cmd_obj_port_init_buff_size,
+		NULL,
+	},
+
+};
+
+/* Command port-close */
+struct cmd_obj_port_close_result {
+	cmdline_fixed_string_t action;
+	cmdline_fixed_string_t port_id;
+};
+
+static void cmd_obj_port_close_parsed(void *parsed_result,
+			       struct cmdline *cl,
+			       __attribute__((unused)) void *data)
+{
+	struct cmd_obj_port_close_result *res = parsed_result;
+
+	cmdline_printf(cl, "Port-close on Port-id:%s\n", res->port_id);
+
+	int port_id = atoi(res->port_id);
+	if (pinfo[port_id].num_queues == 0) {
+		cmdline_printf(cl, "Error: port-id:%d already closed\n",
+				port_id);
+		return;
+	}
+
+	if (port_id >= num_ports) {
+		cmdline_printf(cl, "Error: please enter valid port "
+					"number: %d\n", port_id);
+		return;
+	}
+	{
+		port_close(port_id);
+		pinfo[port_id].num_queues = 0;
+		cmdline_printf(cl, "Port-id:%d closed successfully\n", port_id);
+	}
+}
+
+cmdline_parse_token_string_t cmd_obj_action_port_close =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_port_close_result, action,
+					"port_close");
+cmdline_parse_token_string_t cmd_obj_port_close_port_id =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_port_close_result, port_id,
+					NULL);
+
+cmdline_parse_inst_t cmd_obj_port_close = {
+	.f = cmd_obj_port_close_parsed,  /* function to call */
+	.data = NULL,      /* 2nd arg of func */
+	.help_str = "port_close  port-id ",
+	.tokens = {        /* token list, NULL terminated */
+		(void *)&cmd_obj_action_port_close,
+		(void *)&cmd_obj_port_close_port_id,
+		NULL,
+	},
+
+};
+
+/* Command Read addr */
+struct cmd_obj_reg_read_result {
+	cmdline_fixed_string_t action;
+	cmdline_fixed_string_t port_id;
+	cmdline_fixed_string_t bar_id;
+	cmdline_fixed_string_t addr;
+};
+
+static void cmd_obj_reg_read_parsed(void *parsed_result,
+			       struct cmdline *cl,
+			       __attribute__((unused)) void *data)
+{
+	struct cmd_obj_reg_read_result *res = parsed_result;
+
+	cmdline_printf(cl, "Read Port:%s, BAR-index:%s, Address:%s\n\n",
+				res->port_id, res->bar_id, res->addr);
+
+	int addr   = strtol(res->addr, NULL, 16);
+
+	if (addr % 4) {
+		cmdline_printf(cl, "ERROR: Read address must aligned to "
+					"a 4-byte boundary.\n\n");
+	} else {
+		int port_id = atoi(res->port_id);
+		int bar_id = atoi(res->bar_id);
+		if (port_id >= num_ports) {
+			cmdline_printf(cl, "Error: port-id:%d not supported\n "
+					"Please enter valid port-id\n",
+					port_id);
+			return;
+		}
+		int result = PciRead(bar_id, addr, port_id);
+
+		cmdline_printf(cl, "Read (%d:0x%08x) = 0x%08x\n",
+				port_id, addr, result);
+	}
+}
+
+cmdline_parse_token_string_t cmd_obj_action_reg_read =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_reg_read_result, action,
+					"reg_read");
+cmdline_parse_token_string_t cmd_obj_reg_read_port_id =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_reg_read_result, port_id, NULL);
+cmdline_parse_token_string_t cmd_obj_reg_read_bar_id =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_reg_read_result, bar_id, NULL);
+cmdline_parse_token_string_t cmd_obj_reg_read_addr =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_reg_read_result, addr, NULL);
+
+cmdline_parse_inst_t cmd_obj_reg_read = {
+	.f = cmd_obj_reg_read_parsed,  /* function to call */
+	.data = NULL,      /* 2nd arg of func */
+	.help_str = "reg_read port-id bar-id address",
+	.tokens = {        /* token list, NULL terminated */
+		(void *)&cmd_obj_action_reg_read,
+		(void *)&cmd_obj_reg_read_port_id,
+		(void *)&cmd_obj_reg_read_bar_id,
+		(void *)&cmd_obj_reg_read_addr,
+		NULL,
+	},
+
+};
+
+/* Command Write addr */
+struct cmd_obj_reg_write_result {
+	cmdline_fixed_string_t action;
+	cmdline_fixed_string_t port_id;
+	cmdline_fixed_string_t bar_id;
+	cmdline_fixed_string_t address;
+	cmdline_fixed_string_t value;
+};
+
+static void cmd_obj_reg_write_parsed(void *parsed_result,
+			       struct cmdline *cl,
+			       __attribute__((unused)) void *data)
+{
+	struct cmd_obj_reg_write_result *res = parsed_result;
+
+	cmdline_printf(cl, "Write Port:%s, Address:%s, Value:%s\n",
+			res->port_id, res->address, res->value);
+
+	int bar_id = atoi(res->bar_id);
+	int port_id = atoi(res->port_id);
+	int addr   = strtol(res->address, NULL, 16);
+	if (port_id >= num_ports) {
+		cmdline_printf(cl, "Error: port-id:%d not supported\n "
+				"Please enter valid port-id\n", port_id);
+		return;
+	}
+	if (addr % 4) {
+		cmdline_printf(cl, "ERROR: Write address must aligned to a "
+				"4-byte boundary.\n\n");
+	} else{
+		int value  = strtol(res->value, NULL, 16);
+		PciWrite(bar_id, addr, value, port_id);
+		int result = PciRead(bar_id, addr, port_id);
+		cmdline_printf(cl, "Read (%d:0x%08x) = 0x%08x\n", port_id, addr,
+				result);
+	}
+}
+
+cmdline_parse_token_string_t cmd_obj_action_reg_write =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_reg_write_result, action,
+								"reg_write");
+cmdline_parse_token_string_t cmd_obj_reg_write_port_id =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_reg_write_result, port_id,
+					NULL);
+cmdline_parse_token_string_t cmd_obj_reg_write_bar_id =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_reg_write_result, bar_id, NULL);
+cmdline_parse_token_string_t cmd_obj_reg_write_address =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_reg_write_result, address,
+					NULL);
+cmdline_parse_token_string_t cmd_obj_reg_write_value =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_reg_write_result, value, NULL);
+
+cmdline_parse_inst_t cmd_obj_reg_write = {
+	.f = cmd_obj_reg_write_parsed,  /* function to call */
+	.data = NULL,      /* 2nd arg of func */
+	.help_str = "reg_write port-id bar-id address value",
+	.tokens = {        /* token list, NULL terminated */
+		(void *)&cmd_obj_action_reg_write,
+		(void *)&cmd_obj_reg_write_port_id,
+		(void *)&cmd_obj_reg_write_bar_id,
+		(void *)&cmd_obj_reg_write_address,
+		(void *)&cmd_obj_reg_write_value,
+		NULL,
+	},
+
+};
+
+/* Command do-xmit */
+struct cmd_obj_dma_to_device_result {
+	cmdline_fixed_string_t action;
+	cmdline_fixed_string_t port_id;
+	cmdline_fixed_string_t queues;
+	cmdline_fixed_string_t filename;
+	cmdline_fixed_string_t dst_addr;
+	cmdline_fixed_string_t size;
+	cmdline_fixed_string_t loops;
+};
+
+static void cmd_obj_dma_to_device_parsed(void *parsed_result,
+			       struct cmdline *cl,
+			       __attribute__((unused)) void *data)
+{
+	struct cmd_obj_dma_to_device_result *res = parsed_result;
+	int i, ifd, tot_num_desc, offset, size, r_size = 0, total_size = 0;
+	int ld_size = 0, loop = 0, ret, j, zbyte = 0, user_bar_idx;
+	off_t ret_val;
+	int port_id = 0, num_queues = 0, input_size = 0, num_loops = 0;
+	int dst_addr = 0;
+	uint32_t regval = 0;
+	unsigned int q_data_size = 0;
+
+	cmdline_printf(cl, "xmit on Port:%s, filename:%s, num-queues:%s\n\n",
+				res->port_id, res->filename, res->queues);
+
+	ifd = open(res->filename, O_RDWR);
+	if (ifd < 0) {
+		cmdline_printf(cl, "Error: Invalid filename: %s\n",
+					res->filename);
+		return;
+	}
+
+	{
+		port_id = atoi(res->port_id);
+		if (port_id >= num_ports) {
+			cmdline_printf(cl, "Error: port-id:%d not supported\n "
+						"Please enter valid port-id\n",
+						port_id);
+			close(ifd);
+			return;
+		}
+		num_queues = atoi(res->queues);
+		if ((unsigned int)num_queues > pinfo[port_id].num_queues) {
+			cmdline_printf(cl, "Error: num-queues:%d are more than "
+					"the configured queues:%d,\n "
+					"Please enter valid number of queues\n",
+					num_queues, pinfo[port_id].num_queues);
+			close(ifd);
+			return;
+		}
+		if (num_queues == 0) {
+			cmdline_printf(cl, "Error: Please enter valid number "
+						"of queues\n");
+			close(ifd);
+			return;
+		}
+		user_bar_idx = pinfo[port_id].user_bar_idx;
+		regval = PciRead(user_bar_idx, C2H_CONTROL_REG, port_id);
+
+		input_size = atoi(res->size);
+		num_loops = atoi(res->loops);
+		dst_addr = atoi(res->dst_addr);
+
+#ifndef PERF_BENCHMARK
+		if (dst_addr + input_size > BRAM_SIZE) {
+			cmdline_printf(cl, "Error: (dst_addr %d + input size "
+					"%d) shall be less than "
+					"BRAM_SIZE %d.\n", dst_addr,
+					input_size, BRAM_SIZE);
+			close(ifd);
+			return;
+		}
+#endif
+		/* For zero-byte transfers, HW expects a
+		 * buffer of length 4kb and with desc->len as 0.
+		 */
+		if (input_size == 0) {
+			if ((unsigned int)num_queues <=
+					pinfo[port_id].st_queues) {
+				zbyte = 1;
+			} else {
+				cmdline_printf(cl, "Error: Zero-length support "
+						"is for queues with ST-mode "
+						"only\n");
+				close(ifd);
+				return;
+			}
+		}
+
+		if (input_size % num_queues) {
+			size = input_size / num_queues;
+			r_size = input_size % num_queues;
+		} else
+			size = input_size / num_queues;
+
+		do {
+			total_size = input_size;
+			/* transmit data on the number of Queues configured
+			 * from the input file
+			 */
+			for (i = 0, j = 0; i < num_queues; i++, j++) {
+
+				if (total_size == 0)
+					q_data_size = pinfo[port_id].buff_size;
+				else if (total_size == (r_size + size)) {
+					q_data_size = total_size;
+					total_size -= total_size;
+				} else {
+					q_data_size = size;
+					total_size -= size;
+				}
+
+				if (q_data_size >= pinfo[port_id].buff_size) {
+					if (q_data_size %
+						pinfo[port_id].buff_size) {
+						tot_num_desc = (q_data_size /
+						pinfo[port_id].buff_size) + 1;
+						ld_size = q_data_size %
+						pinfo[port_id].buff_size;
+					} else
+						tot_num_desc = (q_data_size /
+						pinfo[port_id].buff_size);
+				} else {
+					tot_num_desc = 1;
+					ld_size = q_data_size %
+						    pinfo[port_id].buff_size;
+				}
+
+				if (port_id)
+					offset = (input_size/num_queues) * j;
+				else
+					offset = (input_size/num_queues) * i;
+
+				if ((unsigned int)i < (pinfo[port_id].st_queues)
+						&& !(regval & ST_LOOPBACK_EN))
+					ret_val = lseek(ifd, 0, SEEK_SET);
+				else
+					ret_val = lseek(ifd, offset, SEEK_SET);
+
+				if (ret_val == (off_t)-1) {
+					cmdline_printf(cl, "DMA-to-Device: "
+							"lseek func failed\n");
+					close(ifd);
+					return;
+				}
+
+#ifdef PERF_BENCHMARK
+				dst_addr = (dst_addr + (i * q_data_size)) %
+								BRAM_SIZE;
+#else
+				dst_addr = dst_addr + (i * q_data_size);
+#endif
+				ret =
+				update_queue_param(&rte_eth_devices[port_id], i,
+						     TX_DST_ADDRESS, dst_addr);
+				if (ret < 0) {
+					close(ifd);
+					return;
+				}
+
+				cmdline_printf(cl, "DMA-to-Device: with "
+						"input-size:%d, ld_size:%d,"
+						"tot_num_desc:%d\n",
+						input_size,  ld_size,
+						tot_num_desc);
+				ret = do_xmit(port_id, ifd, i, ld_size,
+						tot_num_desc, zbyte);
+				if (ret < 0) {
+					close(ifd);
+					return;
+				}
+			}
+			++loop;
+		} while (loop < num_loops);
+		close(ifd);
+	}
+	cmdline_printf(cl, "\n######## DMA transfer to device is completed "
+						"successfully #######\n");
+}
+
+cmdline_parse_token_string_t cmd_obj_action_dma_to_device =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_dma_to_device_result, action,
+							"dma_to_device");
+cmdline_parse_token_string_t cmd_obj_dma_to_device_port_id =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_dma_to_device_result, port_id,
+								NULL);
+cmdline_parse_token_string_t cmd_obj_dma_to_device_queues =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_dma_to_device_result, queues,
+								NULL);
+cmdline_parse_token_string_t cmd_obj_dma_to_device_filename =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_dma_to_device_result, filename,
+								NULL);
+cmdline_parse_token_string_t cmd_obj_dma_to_device_dst_addr =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_dma_to_device_result, dst_addr,
+								NULL);
+cmdline_parse_token_string_t cmd_obj_dma_to_device_size =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_dma_to_device_result, size,
+								NULL);
+cmdline_parse_token_string_t cmd_obj_dma_to_device_loops =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_dma_to_device_result, loops,
+								NULL);
+
+cmdline_parse_inst_t cmd_obj_dma_to_device = {
+	.f = cmd_obj_dma_to_device_parsed,  /* function to call */
+	.data = NULL,      /* 2nd arg of func */
+	.help_str = "dma_to_device port-id num-queues filename dst_addr "
+			"size loops",
+	.tokens = {        /* token list, NULL terminated */
+		(void *)&cmd_obj_action_dma_to_device,
+		(void *)&cmd_obj_dma_to_device_port_id,
+		(void *)&cmd_obj_dma_to_device_queues,
+		(void *)&cmd_obj_dma_to_device_filename,
+		(void *)&cmd_obj_dma_to_device_dst_addr,
+		(void *)&cmd_obj_dma_to_device_size,
+		(void *)&cmd_obj_dma_to_device_loops,
+		NULL,
+	},
+
+};
+
+/* Command do-recv */
+struct cmd_obj_dma_from_device_result {
+	cmdline_fixed_string_t action;
+	cmdline_fixed_string_t port_id;
+	cmdline_fixed_string_t queues;
+	cmdline_fixed_string_t filename;
+	cmdline_fixed_string_t src_addr;
+	cmdline_fixed_string_t size;
+	cmdline_fixed_string_t loops;
+};
+
+static void cmd_obj_dma_from_device_parsed(void *parsed_result,
+			       struct cmdline *cl,
+			       __attribute__((unused)) void *data)
+{
+	struct cmd_obj_dma_from_device_result *res = parsed_result;
+	int i, ofd, offset, size, total_size, r_size = 0;
+	int mm_tdesc, mm_ld_size = 0;
+	int loop = 0, ret, j;
+	off_t ret_val;
+	int port_id = 0, num_queues = 0, input_size = 0, num_loops = 0;
+	int src_addr = 0;
+	unsigned int q_data_size = 0;
+
+	cmdline_printf(cl, "recv on Port:%s, filename:%s\n",
+						res->port_id, res->filename);
+
+	ofd = open(res->filename, O_RDWR | O_CREAT | O_TRUNC | O_SYNC, 0666);
+	if (ofd < 0) {
+		cmdline_printf(cl, "Error: Invalid filename: %s\n",
+							res->filename);
+		return;
+	}
+
+	{
+		port_id = atoi(res->port_id);
+		if (port_id >= num_ports) {
+			cmdline_printf(cl, "Error: port-id:%d not supported\n "
+					"Please enter valid port-id\n",
+						port_id);
+			close(ofd);
+			return;
+		}
+		num_queues = atoi(res->queues);
+		if ((unsigned int)num_queues > pinfo[port_id].num_queues) {
+			cmdline_printf(cl, "Error: num-queues:%d are more than "
+					"the configured queues:%d,\n"
+					"Please enter valid number of queues\n",
+					num_queues, pinfo[port_id].num_queues);
+			close(ofd);
+			return;
+		}
+		if (num_queues == 0) {
+			cmdline_printf(cl, "Error: Please enter valid number "
+						"of queues\n");
+			close(ofd);
+			return;
+		}
+		input_size = atoi(res->size);
+		num_loops = atoi(res->loops);
+		src_addr = atoi(res->src_addr);
+#ifndef PERF_BENCHMARK
+		if (src_addr + input_size > BRAM_SIZE) {
+			cmdline_printf(cl, "Error: (src_addr %d + input "
+					"size %d) shall be less than "
+					"BRAM_SIZE %d.\n", src_addr,
+					input_size, BRAM_SIZE);
+			close(ofd);
+			return;
+		}
+#endif
+		/* Restrict C2H zerobyte support to ST-mode queues*/
+		if (input_size == 0) {
+			if ((unsigned int)num_queues >
+					pinfo[port_id].st_queues) {
+				cmdline_printf(cl, "Error: Zero-length support "
+					"is for queues with ST-mode only\n");
+				close(ofd);
+				return;
+			}
+		}
+
+		if (input_size % num_queues) {
+			size = input_size / num_queues;
+			r_size = input_size % num_queues;
+		} else
+			size = input_size / num_queues;
+
+		do {
+			total_size = input_size;
+			/* Transmit data on the number of Queues configured
+			 * from the input file
+			 */
+			for (i = 0, j = 0; i < num_queues; i++, j++) {
+
+				if (total_size == (r_size + size)) {
+					q_data_size = total_size;
+					total_size -= total_size;
+				} else {
+					q_data_size = size;
+					total_size -= size;
+				}
+
+				if (q_data_size >= pinfo[port_id].buff_size) {
+					if (q_data_size %
+						pinfo[port_id].buff_size) {
+						mm_tdesc = (q_data_size /
+						pinfo[port_id].buff_size) + 1;
+
+						mm_ld_size = q_data_size %
+						pinfo[port_id].buff_size;
+					} else
+						mm_tdesc = (q_data_size /
+						pinfo[port_id].buff_size);
+				} else {
+					mm_tdesc = 1;
+					mm_ld_size = q_data_size %
+						     pinfo[port_id].buff_size;
+				}
+
+				if (port_id)
+					offset = (input_size/num_queues) * j;
+				else
+					offset = (input_size/num_queues) * i;
+
+				ret_val = lseek(ofd, offset, SEEK_SET);
+				if (ret_val == (off_t)-1) {
+					cmdline_printf(cl, "DMA-to-Device: "
+							"lseek func failed\n");
+					close(ofd);
+					return;
+				}
+#ifdef PERF_BENCHMARK
+				src_addr = (src_addr + (i * q_data_size)) %
+							BRAM_SIZE;
+#else
+				src_addr = src_addr + (i * q_data_size);
+#endif
+				ret =
+				update_queue_param(&rte_eth_devices[port_id], i,
+						     RX_SRC_ADDRESS, src_addr);
+				if (ret < 0) {
+					close(ofd);
+					return;
+				}
+
+				cmdline_printf(cl, "DMA-from-Device: with "
+						"input-size:%d, ld_size:%d, "
+						"tot_num_desc:%d\n",
+						input_size,  mm_ld_size,
+						mm_tdesc);
+
+				if ((unsigned int)i <
+					(pinfo[port_id].st_queues))
+					ret = do_recv_st(port_id, ofd, i,
+								q_data_size);
+				else
+					ret = do_recv_mm(port_id, ofd, i,
+								mm_ld_size,
+								mm_tdesc);
+				if (ret < 0) {
+					close(ofd);
+					return;
+				}
+
+				ret_val = lseek(ofd, offset, SEEK_END);
+				if (ret_val == (off_t)-1) {
+					cmdline_printf(cl, "DMA-to-Device: "
+							"lseek func failed\n");
+					close(ofd);
+					return;
+				}
+			}
+			++loop;
+		} while (loop < num_loops);
+		close(ofd);
+	}
+	cmdline_printf(cl, "\n####### DMA transfer from device is completed "
+						"successfully #######\n");
+}
+
+cmdline_parse_token_string_t cmd_obj_action_dma_from_device =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_dma_from_device_result, action,
+						"dma_from_device");
+cmdline_parse_token_string_t cmd_obj_dma_from_device_port_id =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_dma_from_device_result, port_id,
+								NULL);
+cmdline_parse_token_string_t cmd_obj_dma_from_device_queues =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_dma_from_device_result, queues,
+								NULL);
+cmdline_parse_token_string_t cmd_obj_dma_from_device_filename =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_dma_from_device_result,
+							filename, NULL);
+cmdline_parse_token_string_t cmd_obj_dma_from_device_src_addr =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_dma_from_device_result,
+							src_addr, NULL);
+cmdline_parse_token_string_t cmd_obj_dma_from_device_size =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_dma_from_device_result, size,
+								NULL);
+cmdline_parse_token_string_t cmd_obj_dma_from_device_loops =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_dma_from_device_result, loops,
+								NULL);
+
+cmdline_parse_inst_t cmd_obj_dma_from_device = {
+	.f = cmd_obj_dma_from_device_parsed,  /* function to call */
+	.data = NULL,      /* 2nd arg of func */
+	.help_str = "dma_from_device port_id num-queues filename "
+				"src_addr size loops",
+	.tokens = {        /* token list, NULL terminated */
+		(void *)&cmd_obj_action_dma_from_device,
+		(void *)&cmd_obj_dma_from_device_port_id,
+		(void *)&cmd_obj_dma_from_device_queues,
+		(void *)&cmd_obj_dma_from_device_filename,
+		(void *)&cmd_obj_dma_from_device_src_addr,
+		(void *)&cmd_obj_dma_from_device_size,
+		(void *)&cmd_obj_dma_from_device_loops,
+		NULL,
+	},
+
+};
+
+/* Command reg_dump addr
+ * Register Name - Addr Structure & Values
+ */
+struct S_NAME_INT_PAIR {
+	cmdline_fixed_string_t name;
+	int                    offset;
+	cmdline_fixed_string_t desc;
+};
+
+struct S_NAME_INT_PAIR C_REG_LIST[] = {
+	// Build/Status Registers
+	{ "FPGA_VER                        ",       0x00000000,
+		"FPGA Version" },
+	/* Global Ring-size registers */
+	{ "QDMA_GLBL_RNG_SZ_A[0]           ",       0x00000204,
+		"Ring size index 0" },
+	{ "QDMA_GLBL_RNG_SZ_A[1]           ",       0x00000208,
+		"Ring size index 1" },
+	{ "QDMA_GLBL_RNG_SZ_A[2]           ",       0x0000020c,
+		"Ring size index 2" },
+	{ "QDMA_GLBL_RNG_SZ_A[3]           ",       0x00000210,
+		"Ring size index 3" },
+	{ "QDMA_GLBL_RNG_SZ_A[4]           ",       0x00000214,
+		"Ring size index 4" },
+	{ "QDMA_GLBL_RNG_SZ_A[5]           ",       0x00000218,
+		"Ring size index 5" },
+	{ "QDMA_GLBL_RNG_SZ_A[6]           ",       0x0000021c,
+		"Ring size index 6" },
+	{ "QDMA_GLBL_RNG_SZ_A[7]           ",       0x00000220,
+		"Ring size index 7" },
+	{ "QDMA_GLBL_RNG_SZ_A[8]           ",       0x00000224,
+		"Ring size index 8" },
+	{ "QDMA_GLBL_RNG_SZ_A[9]           ",       0x00000228,
+		"Ring size index 9" },
+	{ "QDMA_GLBL_RNG_SZ_A[10]          ",       0x0000022c,
+		"Ring size index 10" },
+	{ "QDMA_GLBL_RNG_SZ_A[11]          ",       0x00000230,
+		"Ring size index 11" },
+	{ "QDMA_GLBL_RNG_SZ_A[12]          ",       0x00000234,
+		"Ring size index 12" },
+	{ "QDMA_GLBL_RNG_SZ_A[13]          ",       0x00000238,
+		"Ring size index 13" },
+	{ "QDMA_GLBL_RNG_SZ_A[14]          ",       0x0000023c,
+		"Ring size index 14" },
+	{ "QDMA_GLBL_RNG_SZ_A[15]          ",       0x00000240,
+		"Ring size index 15" },
+	/* Global Error Status register */
+	{ "QDMA_GLBL_ERR_STAT              ",	0x00000248,
+		"Global error status" },
+	/*Global error mask register*/
+	{ "QDMA_GLBL_ERR_MASK              ",	0x0000024c,
+		"Global error mask" },
+	/* Global Write-back accumulation */
+	{ "QDMA_GLBL_WB_ACC                ",	0x00000250,
+		"Global Write-back accumulation" },
+	/* */
+	{ "QDMA_GLBL_DSC_ERR_STS           ",	0x00000254,
+		"Global Descriptor error status" },
+	/**/
+	{ "QDMA_GLBL_DSC_ERR_MSK          ",	0x00000258,
+		"Global Descriptor error mask" },
+	/**/
+	{ "QDMA_GLBL_DSC_ERR_LOG0          ",	0x0000025c,
+		"Global Descriptor error Log0" },
+	/**/
+	{ "QDMA_GLBL_DSC_ERR_LOG1          ",	0x00000260,
+		"Global Descriptor error Log1" },
+	/**/
+	{ "QDMA_GLBL_TRQ_ERR_STS           ",	0x00000264,
+		"Global target error status" },
+	/**/
+	{ "QDMA_GLBL_TRQ_ERR_MSK           ",	0x00000268,
+		"Global target error mask"},
+	/**/
+	{ "QDMA_GLBL_TRQ_ERR_LOG           ",	0x0000026c,
+		"Register access space, functio, address" },
+	/*Function-map registers*/
+	{ "QDMA_TRQ_SEL_FMAP[0]            ",	0x00000400,
+		"FMAP target index-0" },
+	{ "QDMA_TRQ_SEL_FMAP[1]            ",	0x00000404,
+		"FMAP target index-1" },
+	{ "QDMA_C2H_STAT_AXIS_C2H_ACPTD    ",	0x00000a88,
+		"Number of C2H pkts accepted" },
+	{ "QDMA_C2H_STAT_AXIS_CMPT_ACPTD    ",	0x00000a8c,
+		"Number of C2H CMPT pkts accepted" },
+	{ "QDMA_C2H_STAT_DESC_RSP_PKT_ACPTD",	0x00000a90,
+		"Number of desc rsp pkts accepted" },
+	{ "QDMA_C2H_STAT_AXIS_PKG_CMP      ",	0x00000a94,
+		"Number of C2H pkts accepted" },
+	{ "QDMA_C2H_STAT_DESC_RSP_ACPTD    ",	0x00000a98,
+		"Number of dsc rsp pkts accepted" },
+	{ "QDMA_C2H_STAT_DESC_RSP_CMP      ",	0x00000a9c,
+		"Number of dsc rsp pkts completed" },
+	{ "QDMA_C2H_STAT_WRQ_OUT           ",	0x00000aa0,
+		"Number of WRQ" },
+	{ "QDMA_C2H_STAT_WPL_REN_ACPTD     ",	0x00000aa4,
+		"Number of WPL REN accepted" },
+	{ "QDMA_C2H_STAT_TOT_WRQ_LEN       ",	0x00000aa8,
+		"Number of total WRQ len from C2H DMA write engine" },
+	{ "QDMA_C2H_STAT_TOT_WPL_LEN       ",	0x00000aac,
+		"Number of total WPL len from C2H DMA write engine" },
+	{ "QDMA_C2H_ERR_STAT               ",	0x00000af0,
+		"C2H error status" },
+	{ "QDMA_C2H_ERR_MASK               ",	0x00000af4,
+		"C2H error mask" },
+	{ "QDMA_C2H_FATAL_ERR_STAT         ",	0x00000af8,
+		"C2H fatal error status" },
+	{ "QDMA_C2H_FATAL_ERR_MSK          ",	0x00000afc,
+		"C2H fatal error mask" },
+	{ "QDMA_C2H_FATAL_ERR_MSK          ",	0x00000afc,
+		"C2H fatal error mask" },
+	// End Of Register List
+	{ "EndOfList",     -999,        "EndOfList" }
+};
+
+
+struct cmd_obj_reg_dump_result {
+	cmdline_fixed_string_t action;
+	cmdline_fixed_string_t port_id;
+};
+
+static void cmd_obj_reg_dump_parsed(void *parsed_result,
+			       struct cmdline *cl,
+			       __attribute__((unused)) void *data)
+{
+	struct cmd_obj_reg_dump_result *res = parsed_result;
+
+
+	int bar_id;
+	int port_id = atoi(res->port_id);
+	unsigned int i, reg_val;
+	i     = 0;
+
+	bar_id = pinfo[port_id].config_bar_idx;
+	if (bar_id < 0) {
+		cmdline_printf(cl, "Error: fetching QDMA config BAR-id "
+				"on port-id:%d not supported\n Please enter "
+				"valid port-id\n", port_id);
+		return;
+	}
+	cmdline_printf(cl, "Register dump on cofig BAR-id:%d with Port-id:%s\n",
+						bar_id, res->port_id);
+	if (port_id >= num_ports) {
+		cmdline_printf(cl, "Error: port-id:%d not supported\n "
+						"Please enter valid port-id\n",
+						port_id);
+		return;
+	}
+	cmdline_printf(cl, "FPGA Registers\n--------------\n");
+	cmdline_printf(cl, "\tName:\t Offset:\tDescription:\t "
+				"register-Value:\n--------------\n");
+	do {
+		cmdline_printf(cl, "%18s : 0x%08x : %s:",
+			       C_REG_LIST[i].name,
+			       C_REG_LIST[i].offset,
+			       C_REG_LIST[i].desc);
+		reg_val = PciRead(bar_id, C_REG_LIST[i].offset, port_id);
+		cmdline_printf(cl, "\tValue:0x%08x\n", reg_val);
+		i++;
+	} while (C_REG_LIST[i].offset != -999);
+}
+
+cmdline_parse_token_string_t cmd_obj_action_reg_dump =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_reg_dump_result, action,
+								"reg_dump");
+cmdline_parse_token_string_t cmd_obj_reg_dump_port_id =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_reg_dump_result, port_id, NULL);
+
+cmdline_parse_inst_t cmd_obj_reg_dump = {
+	.f = cmd_obj_reg_dump_parsed,  /* function to call */
+	.data = NULL,      /* 2nd arg of func */
+	.help_str = "reg_dump  port-id",
+	.tokens = {        /* token list, NULL terminated */
+		(void *)&cmd_obj_action_reg_dump,
+		(void *)&cmd_obj_reg_dump_port_id,
+		NULL,
+	},
+
+};
+
+/*Command queue-context dump*/
+
+#define QDMA_IND_CTXT_CMD_A	0x844
+
+void queue_context_dump(uint8_t bar_id, uint32_t qid, struct cmdline *cl)
+{
+	union h2c_c2h_ctxt q_ctxt;
+	union c2h_cmpt_ctxt c2h_cmpt;
+	union h2c_c2h_hw_ctxt hw_ctxt;
+	union prefetch_ctxt pref_ctxt;
+	uint32_t ctxt_sel, reg_val;
+	uint32_t base_offset, offset;
+	uint16_t i;
+	uint8_t port_id = 0;
+
+	base_offset = (QDMA_TRQ_SEL_IND + QDMA_IND_Q_PRG_OFF);
+
+	/** To read the H2C Queue **/
+	ctxt_sel = (QDMA_CTXT_SEL_DESC_SW_H2C<<CTXT_SEL_SHIFT_B) |
+				(qid<<QID_SHIFT_B) |
+				(QDMA_CTXT_CMD_RD<<OP_CODE_SHIFT_B);
+	PciWrite(bar_id, QDMA_IND_CTXT_CMD_A, ctxt_sel, port_id);
+
+	cmdline_printf(cl, "\nH2C context-data structure on queue-id:%d:\n",
+									qid);
+	for (i = 0; i < 5; i++) {
+		offset = base_offset + (i * 4);
+		reg_val = PciRead(bar_id, offset, port_id);
+		q_ctxt.c_data.data[i] = reg_val;
+	}
+	cmdline_printf(cl, "\t\t interrupt vector:%x\n",
+					q_ctxt.c_fields.int_vec);
+	cmdline_printf(cl, "\t\t interrupt aggregation:%x\n",
+						q_ctxt.c_fields.int_aggr);
+	cmdline_printf(cl, "\t\t Base-addr of Desc ring:%lx\n",
+						q_ctxt.c_fields.dsc_base);
+	cmdline_printf(cl, "\t\t is_mm:%x\n", q_ctxt.c_fields.is_mm);
+	cmdline_printf(cl, "\t\t mrkr_dis:%x\n", q_ctxt.c_fields.mrkr_dis);
+	cmdline_printf(cl, "\t\t irq_req:%x\n", q_ctxt.c_fields.irq_req);
+	cmdline_printf(cl, "\t\t err-wb-sent:%x\n",
+						q_ctxt.c_fields.err_wb_sent);
+	cmdline_printf(cl, "\t\t Error status:%x\n", q_ctxt.c_fields.err);
+	cmdline_printf(cl, "\t\t irq_no_last:%x\n",
+						q_ctxt.c_fields.irq_no_last);
+	cmdline_printf(cl, "\t\t port id:%x\n", q_ctxt.c_fields.port_id);
+	cmdline_printf(cl, "\t\t irq-enable:%x\n", q_ctxt.c_fields.irq_en);
+	cmdline_printf(cl, "\t\t write-back enable:%x\n",
+						q_ctxt.c_fields.wbk_en);
+	cmdline_printf(cl, "\t\t mm-channel-id:%x\n", q_ctxt.c_fields.mm_chn);
+	cmdline_printf(cl, "\t\t bypass:%x\n", q_ctxt.c_fields.byp);
+	cmdline_printf(cl, "\t\t desc-size index:%x\n", q_ctxt.c_fields.dsc_sz);
+	cmdline_printf(cl, "\t\t ring-size index:%x\n", q_ctxt.c_fields.rng_sz);
+	cmdline_printf(cl, "\t\t reserved:%x\n", q_ctxt.c_fields.rsv1);
+	cmdline_printf(cl, "\t\t fetch_max:%x\n", q_ctxt.c_fields.fetch_max);
+	cmdline_printf(cl, "\t\t address type of context :%x\n",
+							q_ctxt.c_fields.at);
+	cmdline_printf(cl, "\t\t wbi_acc_en:%x\n", q_ctxt.c_fields.wbi_acc_en);
+	cmdline_printf(cl, "\t\t wbi_chk:%x\n", q_ctxt.c_fields.wbi_chk);
+	cmdline_printf(cl, "\t\t fetch credits:%x\n", q_ctxt.c_fields.fcrd_en);
+	cmdline_printf(cl, "\t\t queue-enable:%x\n", q_ctxt.c_fields.qen);
+	cmdline_printf(cl, "\t\t reserved:%x\n", q_ctxt.c_fields.rsv0);
+	cmdline_printf(cl, "\t\t function-id:%x\n", q_ctxt.c_fields.fnc_id);
+	cmdline_printf(cl, "\t\t irq_ack:%x\n", q_ctxt.c_fields.irq_ack);
+	cmdline_printf(cl, "\t\t producer-index:0x%x\n", q_ctxt.c_fields.pidx);
+
+	cmdline_printf(cl, "\nH2C Hardware Descriptor context-data structure "
+						"on queue-id:%d:\n", qid);
+
+	ctxt_sel = (QDMA_CTXT_SEL_DESC_HW_H2C<<CTXT_SEL_SHIFT_B) |
+				(qid<<QID_SHIFT_B) |
+				(QDMA_CTXT_CMD_RD<<OP_CODE_SHIFT_B);
+	PciWrite(bar_id, QDMA_IND_CTXT_CMD_A, ctxt_sel, port_id);
+
+	for (i = 0; i < 2; i++) {
+		offset = base_offset + (i * 4);
+		reg_val = PciRead(bar_id, offset, port_id);
+		hw_ctxt.c_data.data[i] = reg_val;
+	}
+	cmdline_printf(cl, "\t\t reserved:0x%x\n", hw_ctxt.c_fields.rsvd1);
+	cmdline_printf(cl, "\t\t descriptor fetch pending:0x%x\n",
+						hw_ctxt.c_fields.fetch_pend);
+	cmdline_printf(cl, "\t\t event pending:0x%x\n",
+						hw_ctxt.c_fields.event_pend);
+	cmdline_printf(cl, "\t\t Queue invalid Or no descriptor pending:0x%x\n",
+						hw_ctxt.c_fields.idl_stp_b);
+	cmdline_printf(cl, "\t\t descriptor pending:0x%x\n",
+						hw_ctxt.c_fields.pnd);
+	cmdline_printf(cl, "\t\t reserved:0x%x\n", hw_ctxt.c_fields.rsvd0);
+	cmdline_printf(cl, "\t\t credit-use:0x%x\n", hw_ctxt.c_fields.crd_use);
+	cmdline_printf(cl, "\t\t consumer-index:0x%x\n", hw_ctxt.c_fields.cidx);
+
+	/** To read the C2H Queue **/
+	cmdline_printf(cl, "\nC2H context-data structure on queue-id:%d:\n",
+									qid);
+
+	ctxt_sel = (QDMA_CTXT_SEL_DESC_SW_C2H<<CTXT_SEL_SHIFT_B) |
+					(qid<<QID_SHIFT_B) |
+					(QDMA_CTXT_CMD_RD<<OP_CODE_SHIFT_B);
+	PciWrite(bar_id, QDMA_IND_CTXT_CMD_A, ctxt_sel, port_id);
+
+	for (i = 0; i < 5; i++) {
+		offset = base_offset + (i * 4);
+		reg_val = PciRead(bar_id, offset, port_id);
+		q_ctxt.c_data.data[i] = reg_val;
+	}
+	cmdline_printf(cl, "\t\t interrupt vector:%x\n",
+						q_ctxt.c_fields.int_vec);
+	cmdline_printf(cl, "\t\t interrupt aggregation:%x\n",
+						q_ctxt.c_fields.int_aggr);
+	cmdline_printf(cl, "\t\t Base-addr of Desc ring:%lx\n",
+						q_ctxt.c_fields.dsc_base);
+	cmdline_printf(cl, "\t\t is_mm:%x\n", q_ctxt.c_fields.is_mm);
+	cmdline_printf(cl, "\t\t mrkr_dis:%x\n", q_ctxt.c_fields.mrkr_dis);
+	cmdline_printf(cl, "\t\t irq_req:%x\n", q_ctxt.c_fields.irq_req);
+	cmdline_printf(cl, "\t\t err-wb-sent:%x\n",
+						q_ctxt.c_fields.err_wb_sent);
+	cmdline_printf(cl, "\t\t Error status:%x\n", q_ctxt.c_fields.err);
+	cmdline_printf(cl, "\t\t irq_no_last:%x\n",
+						q_ctxt.c_fields.irq_no_last);
+	cmdline_printf(cl, "\t\t port id:%x\n", q_ctxt.c_fields.port_id);
+	cmdline_printf(cl, "\t\t irq-enable:%x\n", q_ctxt.c_fields.irq_en);
+	cmdline_printf(cl, "\t\t write-back enable:%x\n",
+						q_ctxt.c_fields.wbk_en);
+	cmdline_printf(cl, "\t\t mm-channel-id:%x\n", q_ctxt.c_fields.mm_chn);
+	cmdline_printf(cl, "\t\t bypass:%x\n", q_ctxt.c_fields.byp);
+	cmdline_printf(cl, "\t\t desc-size index:%x\n",
+						q_ctxt.c_fields.dsc_sz);
+	cmdline_printf(cl, "\t\t ring-size index:%x\n",
+						q_ctxt.c_fields.rng_sz);
+	cmdline_printf(cl, "\t\t reserved:%x\n", q_ctxt.c_fields.rsv1);
+	cmdline_printf(cl, "\t\t fetch_max:%x\n", q_ctxt.c_fields.fetch_max);
+	cmdline_printf(cl, "\t\t address type of context :%x\n",
+						q_ctxt.c_fields.at);
+	cmdline_printf(cl, "\t\t wbi_acc_en:%x\n", q_ctxt.c_fields.wbi_acc_en);
+	cmdline_printf(cl, "\t\t wbi_chk:%x\n", q_ctxt.c_fields.wbi_chk);
+	cmdline_printf(cl, "\t\t fetch credits:%x\n", q_ctxt.c_fields.fcrd_en);
+	cmdline_printf(cl, "\t\t queue-enable:%x\n", q_ctxt.c_fields.qen);
+	cmdline_printf(cl, "\t\t reserved:%x\n", q_ctxt.c_fields.rsv0);
+	cmdline_printf(cl, "\t\t function-id:%x\n", q_ctxt.c_fields.fnc_id);
+	cmdline_printf(cl, "\t\t irq_ack:%x\n", q_ctxt.c_fields.irq_ack);
+	cmdline_printf(cl, "\t\t producer-index:0x%x\n", q_ctxt.c_fields.pidx);
+
+
+	/** C2H Completion context **/
+	cmdline_printf(cl, "\nC2H Completion context-data structure "
+						"on queue-id:%d:\n", qid);
+
+	ctxt_sel = (QDMA_CTXT_SEL_DESC_CMPT << CTXT_SEL_SHIFT_B) |
+		    (qid<<QID_SHIFT_B) | (QDMA_CTXT_CMD_RD<<OP_CODE_SHIFT_B);
+	PciWrite(bar_id, QDMA_IND_CTXT_CMD_A, ctxt_sel, port_id);
+
+	for (i = 0; i < 5; i++) {
+		offset = base_offset + (i * 4);
+		reg_val = PciRead(bar_id, offset, port_id);
+		c2h_cmpt.c_data.data[i] = reg_val;
+	}
+
+	cmdline_printf(cl, "\t\t at:%x\n", c2h_cmpt.c_fields.at);
+	cmdline_printf(cl, "\t\t ovf_chk_dis:%x\n",
+			c2h_cmpt.c_fields.ovf_chk_dis);
+	cmdline_printf(cl, "\t\t full_upd:%x\n", c2h_cmpt.c_fields.full_upd);
+	cmdline_printf(cl, "\t\t timer_run:%x\n", c2h_cmpt.c_fields.timer_run);
+	cmdline_printf(cl, "\t\t usr_trig_pend:%x\n",
+			c2h_cmpt.c_fields.usr_trig_pend);
+	cmdline_printf(cl, "\t\t err:%x\n", c2h_cmpt.c_fields.err);
+	cmdline_printf(cl, "\t\t valid:%x\n", c2h_cmpt.c_fields.valid);
+	cmdline_printf(cl, "\t\t consumer-index:0x%x\n",
+			c2h_cmpt.c_fields.cidx);
+	cmdline_printf(cl, "\t\t producer-index:0x%x\n",
+			c2h_cmpt.c_fields.pidx);
+	cmdline_printf(cl, "\t\t desc-size:%x\n", c2h_cmpt.c_fields.desc_sz);
+	cmdline_printf(cl, "\t\t cmpt-desc-base_h addr:0x%x\n",
+			(unsigned int)c2h_cmpt.c_fields.cmpt_dsc_base_h);
+	cmdline_printf(cl, "\t\t cmpt-desc-base_l addr:0x%x\n",
+			(unsigned int)c2h_cmpt.c_fields.cmpt_dsc_base_l);
+	cmdline_printf(cl, "\t\t size-index:%x\n", c2h_cmpt.c_fields.size);
+	cmdline_printf(cl, "\t\t color:%x\n", c2h_cmpt.c_fields.color);
+	cmdline_printf(cl, "\t\t interrupt-state:%x\n",
+			c2h_cmpt.c_fields.int_st);
+	cmdline_printf(cl, "\t\t timer-index:0x%x\n",
+			c2h_cmpt.c_fields.timer_idx);
+	cmdline_printf(cl, "\t\t counter-index:0x%x\n",
+			c2h_cmpt.c_fields.count_idx);
+	cmdline_printf(cl, "\t\t function-id:0x%x\n", c2h_cmpt.c_fields.fnc_id);
+	cmdline_printf(cl, "\t\t trigger-mode:0x%x\n",
+			c2h_cmpt.c_fields.trig_mode);
+	cmdline_printf(cl, "\t\t cause interrupt on completion:0x%x\n",
+			c2h_cmpt.c_fields.en_int);
+	cmdline_printf(cl, "\t\t cause status descriptor write on "
+			"completion:0x%x\n", c2h_cmpt.c_fields.en_stat_desc);
+
+	/* Prefetch Context */
+	cmdline_printf(cl, "\nPrefetch context-data structure on "
+			"queue-id:%d:\n", qid);
+
+	ctxt_sel = (QDMA_CTXT_SEL_PFTCH << CTXT_SEL_SHIFT_B) |
+			(qid << QID_SHIFT_B) |
+			(QDMA_CTXT_CMD_RD << OP_CODE_SHIFT_B);
+	PciWrite(bar_id, QDMA_IND_CTXT_CMD_A, ctxt_sel, port_id);
+
+	for (i = 0; i < 2; i++) {
+		offset = base_offset + (i * 4);
+		reg_val = PciRead(bar_id, offset, port_id);
+		pref_ctxt.c_data.data[i] = reg_val;
+	}
+	cmdline_printf(cl, "\t\t valid:0x%x\n", pref_ctxt.c_fields.valid);
+	cmdline_printf(cl, "\t\t software credit:0x%x\n",
+					pref_ctxt.c_fields.sw_crdt);
+	cmdline_printf(cl, "\t\t queue is in prefetch:0x%x\n",
+					pref_ctxt.c_fields.pfch);
+	cmdline_printf(cl, "\t\t enable prefetch:0x%x\n",
+					pref_ctxt.c_fields.pfch_en);
+	cmdline_printf(cl, "\t\t err:0x%x\n", pref_ctxt.c_fields.err);
+	cmdline_printf(cl, "\t\t rsvd:0x%x\n", pref_ctxt.c_fields.rsvd);
+	cmdline_printf(cl, "\t\t port ID:0x%x\n", pref_ctxt.c_fields.port_id);
+	cmdline_printf(cl, "\t\t buffer size index:0x%x\n",
+					pref_ctxt.c_fields.buf_sz_idx);
+	cmdline_printf(cl, "\t\t C2H is in bypass mode:0x%x\n",
+					pref_ctxt.c_fields.bypass);
+
+	/* C2H Hardware descriptor context */
+	cmdline_printf(cl, "\nC2H Hardware Descriptor context-data structure "
+						"on queue-id:%d:\n", qid);
+
+	ctxt_sel = (QDMA_CTXT_SEL_DESC_HW_C2H<<CTXT_SEL_SHIFT_B) |
+				(qid<<QID_SHIFT_B) |
+				(QDMA_CTXT_CMD_RD<<OP_CODE_SHIFT_B);
+	PciWrite(bar_id, QDMA_IND_CTXT_CMD_A, ctxt_sel, port_id);
+
+	for (i = 0; i < 2; i++) {
+		offset = base_offset + (i * 4);
+		reg_val = PciRead(bar_id, offset, port_id);
+		hw_ctxt.c_data.data[i] = reg_val;
+	}
+	cmdline_printf(cl, "\t\t reserved:0x%x\n", hw_ctxt.c_fields.rsvd1);
+	cmdline_printf(cl, "\t\t descriptor fetch pending:0x%x\n",
+						hw_ctxt.c_fields.fetch_pend);
+	cmdline_printf(cl, "\t\t event pending:0x%x\n",
+						hw_ctxt.c_fields.event_pend);
+	cmdline_printf(cl, "\t\t Queue invalid Or no descriptor pending:0x%x\n",
+						hw_ctxt.c_fields.idl_stp_b);
+	cmdline_printf(cl, "\t\t descriptor pending:0x%x\n",
+						hw_ctxt.c_fields.pnd);
+	cmdline_printf(cl, "\t\t reserved:0x%x\n", hw_ctxt.c_fields.rsvd0);
+	cmdline_printf(cl, "\t\t credit-use:0x%x\n", hw_ctxt.c_fields.crd_use);
+	cmdline_printf(cl, "\t\t consumer-index:0x%x\n", hw_ctxt.c_fields.cidx);
+}
+
+struct cmd_obj_queue_dump_result {
+	cmdline_fixed_string_t action;
+	cmdline_fixed_string_t port_id;
+	cmdline_fixed_string_t queue_id;
+};
+
+static void cmd_obj_queue_dump_parsed(void *parsed_result,
+			       struct cmdline *cl,
+			       __attribute__((unused)) void *data)
+{
+	struct cmd_obj_queue_dump_result *res = parsed_result;
+
+	cmdline_printf(cl, "queue-dump on Port:%s, queue-id:%s\n\n",
+						res->port_id, res->queue_id);
+
+	{
+		int port_id = atoi(res->port_id);
+		int qid = atoi(res->queue_id);
+		int bar_id = 0x0;
+
+		bar_id = pinfo[port_id].config_bar_idx;
+		if (bar_id < 0) {
+			cmdline_printf(cl, "Error: fetching QDMA config BAR-id "
+					"on port-id:%d not supported\n Please "
+					"enter valid port-id\n", port_id);
+			return;
+		}
+		if (port_id >= num_ports) {
+			cmdline_printf(cl, "Error: port-id:%d not supported\n "
+					"Please enter valid port-id\n",
+					port_id);
+			return;
+		}
+		if ((unsigned int)qid >= pinfo[port_id].num_queues) {
+			cmdline_printf(cl, "Error: queue-id:%d is greater than "
+					"the number of confgiured queues in "
+					"the port\n Please enter valid "
+					"queue-id\n", qid);
+			return;
+		}
+		qid = qid + pinfo[port_id].queue_base;
+		queue_context_dump(bar_id, qid, cl);
+
+	}
+}
+
+cmdline_parse_token_string_t cmd_obj_action_queue_dump =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_queue_dump_result, action,
+								"queue_dump");
+cmdline_parse_token_string_t cmd_obj_queue_dump_port_id =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_queue_dump_result, port_id,
+									NULL);
+cmdline_parse_token_string_t cmd_obj_queue_dump_queue_id =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_queue_dump_result, queue_id,
+									NULL);
+
+cmdline_parse_inst_t cmd_obj_queue_dump = {
+	.f = cmd_obj_queue_dump_parsed,  /* function to call */
+	.data = NULL,      /* 2nd arg of func */
+	.help_str = "queue_dump port-id queue_id",
+	.tokens = {        /* token list, NULL terminated */
+		(void *)&cmd_obj_action_queue_dump,
+		(void *)&cmd_obj_queue_dump_port_id,
+		(void *)&cmd_obj_queue_dump_queue_id,
+		NULL,
+	},
+
+};
+
+/* Command descriptor dump */
+
+struct cmd_obj_desc_dump_result {
+	cmdline_fixed_string_t action;
+	cmdline_fixed_string_t port_id;
+	cmdline_fixed_string_t queue_id;
+};
+
+static void cmd_obj_desc_dump_parsed(void *parsed_result,
+			       struct cmdline *cl,
+			       __attribute__((unused)) void *data)
+{
+	struct cmd_obj_desc_dump_result *res = parsed_result;
+
+	cmdline_printf(cl, "Descriptor-dump on Port:%s, queue-id:%s\n\n",
+						res->port_id, res->queue_id);
+	{
+		int port_id = atoi(res->port_id);
+		int qid = atoi(res->queue_id);
+		if (port_id >= num_ports) {
+			cmdline_printf(cl, "Error: port-id:%d not supported\n"
+					"Please enter valid port-id\n",
+					port_id);
+			return;
+		}
+		if ((unsigned int)qid >= pinfo[port_id].num_queues) {
+			cmdline_printf(cl, "Error: queue-id:%d is greater than "
+					"the number of confgiured queues in "
+					"the port\n Please enter valid "
+					"queue-id\n", qid);
+			return;
+		}
+		qdma_desc_dump(&rte_eth_devices[port_id], qid);
+	}
+}
+
+cmdline_parse_token_string_t cmd_obj_action_desc_dump =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_desc_dump_result, action,
+								"desc_dump");
+cmdline_parse_token_string_t cmd_obj_desc_dump_port_id =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_desc_dump_result, port_id,
+									NULL);
+cmdline_parse_token_string_t cmd_obj_desc_dump_queue_id =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_desc_dump_result, queue_id,
+									NULL);
+
+cmdline_parse_inst_t cmd_obj_desc_dump = {
+	.f = cmd_obj_desc_dump_parsed,  /* function to call */
+	.data = NULL,      /* 2nd arg of func */
+	.help_str = "desc_dump port-id queue_id",
+	.tokens = {        /* token list, NULL terminated */
+		(void *)&cmd_obj_action_desc_dump,
+		(void *)&cmd_obj_desc_dump_port_id,
+		(void *)&cmd_obj_desc_dump_queue_id,
+		NULL,
+	},
+
+};
+
+/*Command load commands from file */
+
+struct cmd_obj_load_cmds_result {
+	cmdline_fixed_string_t action;
+	cmdline_fixed_string_t filename;
+};
+
+static void cmd_obj_load_cmds_parsed(void *parsed_result,
+			       struct cmdline *cl,
+			       __attribute__((unused)) void *data)
+{
+	struct cmd_obj_load_cmds_result *res = parsed_result;
+	FILE *fp;
+	char buff[256];
+
+	cmdline_printf(cl, "load-cmds from file:%s\n\n", res->filename);
+	fp = fopen((const char *)res->filename, "r");
+	if (fp == NULL) {
+		cmdline_printf(cl, "Error: Invalid filename: %s\n",
+							res->filename);
+		return;
+	}
+
+	rdline_reset(&cl->rdl);
+	{
+		cmdline_in(cl, "\r", 1);
+		while (fgets(buff, sizeof(buff), fp))
+			cmdline_in(cl, buff, strlen(buff));
+
+		cmdline_in(cl, "\r", 1);
+	}
+	fclose(fp);
+}
+
+cmdline_parse_token_string_t cmd_obj_action_load_cmds =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_load_cmds_result, action,
+								"load_cmds");
+cmdline_parse_token_string_t cmd_obj_load_cmds_filename =
+	TOKEN_STRING_INITIALIZER(struct cmd_obj_load_cmds_result, filename,
+									NULL);
+
+cmdline_parse_inst_t cmd_obj_load_cmds = {
+	.f = cmd_obj_load_cmds_parsed,  /* function to call */
+	.data = NULL,      /* 2nd arg of func */
+	.help_str = "load_cmds file-name",
+	.tokens = {        /* token list, NULL terminated */
+		(void *)&cmd_obj_action_load_cmds,
+		(void *)&cmd_obj_load_cmds_filename,
+		NULL,
+	},
+
+};
+
+/* CONTEXT (list of instruction) */
+
+cmdline_parse_ctx_t main_ctx[] = {
+	(cmdline_parse_inst_t *)&cmd_obj_port_init,
+	(cmdline_parse_inst_t *)&cmd_obj_port_close,
+	(cmdline_parse_inst_t *)&cmd_obj_reg_read,
+	(cmdline_parse_inst_t *)&cmd_obj_reg_write,
+	(cmdline_parse_inst_t *)&cmd_obj_dma_to_device,
+	(cmdline_parse_inst_t *)&cmd_obj_dma_from_device,
+	(cmdline_parse_inst_t *)&cmd_obj_reg_dump,
+	(cmdline_parse_inst_t *)&cmd_obj_queue_dump,
+	(cmdline_parse_inst_t *)&cmd_obj_desc_dump,
+	(cmdline_parse_inst_t *)&cmd_obj_load_cmds,
+	(cmdline_parse_inst_t *)&cmd_help,
+	NULL,
+};
diff --git a/QDMA/DPDK/examples/qdma_testapp/commands.h b/QDMA/DPDK/examples/qdma_testapp/commands.h
new file mode 100644
index 0000000..4bae349
--- /dev/null
+++ b/QDMA/DPDK/examples/qdma_testapp/commands.h
@@ -0,0 +1,38 @@
+/*-
+ *   BSD LICENSE
+ *
+ *   Copyright(c) 2010-2014 Intel Corporation. All rights reserved.
+ *   All rights reserved.
+ *
+ *   Redistribution and use in source and binary forms, with or without
+ *   modification, are permitted provided that the following conditions
+ *   are met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in
+ *       the documentation and/or other materials provided with the
+ *       distribution.
+ *     * Neither the name of Intel Corporation nor the names of its
+ *       contributors may be used to endorse or promote products derived
+ *       from this software without specific prior written permission.
+ *
+ *   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ *   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ *   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ *   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ *   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ *   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ *   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ *   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef _COMMANDS_H_
+#define _COMMANDS_H_
+
+extern cmdline_parse_ctx_t main_ctx[];
+#endif /* _COMMANDS_H_ */
diff --git a/QDMA/DPDK/examples/qdma_testapp/parse_obj_list.c b/QDMA/DPDK/examples/qdma_testapp/parse_obj_list.c
new file mode 100644
index 0000000..66f4df0
--- /dev/null
+++ b/QDMA/DPDK/examples/qdma_testapp/parse_obj_list.c
@@ -0,0 +1,196 @@
+/*-
+ *   BSD LICENSE
+ *
+ *   Copyright(c) 2017-2018 Xilinx, Inc. All rights reserved.
+ *
+ *   Redistribution and use in source and binary forms, with or without
+ *   modification, are permitted provided that the following conditions
+ *   are met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in
+ *       the documentation and/or other materials provided with the
+ *       distribution.
+ *     * Neither the name of the copyright holder nor the names of its
+ *       contributors may be used to endorse or promote products derived
+ *       from this software without specific prior written permission.
+ *
+ *   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ *   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ *   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ *   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ *   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ *   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ *   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ *   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/*-
+ *   BSD LICENSE
+ *
+ *   Copyright(c) 2010-2014 Intel Corporation. All rights reserved.
+ *   All rights reserved.
+ *
+ *   Redistribution and use in source and binary forms, with or without
+ *   modification, are permitted provided that the following conditions
+ *   are met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in
+ *       the documentation and/or other materials provided with the
+ *       distribution.
+ *     * Neither the name of Intel Corporation nor the names of its
+ *       contributors may be used to endorse or promote products derived
+ *       from this software without specific prior written permission.
+ *
+ *   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ *   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ *   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ *   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ *   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ *   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ *   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ *   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/*
+ * Copyright (c) 2009, Olivier MATZ <zer0@droids-corp.org>
+ * All rights reserved.
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in the
+ *       documentation and/or other materials provided with the distribution.
+ *     * Neither the name of the University of California, Berkeley nor the
+ *       names of its contributors may be used to endorse or promote products
+ *       derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL THE REGENTS AND CONTRIBUTORS BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include <stdio.h>
+#include <inttypes.h>
+#include <stdarg.h>
+#include <errno.h>
+#include <ctype.h>
+#include <string.h>
+#include <netinet/in.h>
+
+#include <cmdline_parse.h>
+#include <cmdline_parse_ipaddr.h>
+
+#include <rte_string_fns.h>
+
+#include "parse_obj_list.h"
+
+/* This file is an example of extension of libcmdline. It provides an
+ * example of objects stored in a list
+ */
+
+struct cmdline_token_ops token_obj_list_ops = {
+	.parse = parse_obj_list,
+	.complete_get_nb = complete_get_nb_obj_list,
+	.complete_get_elt = complete_get_elt_obj_list,
+	.get_help = get_help_obj_list,
+};
+
+int
+parse_obj_list(cmdline_parse_token_hdr_t *tk, const char *buf, void *res,
+		unsigned int buf_len)
+{
+	struct token_obj_list *tk2 = (struct token_obj_list *)tk;
+	struct token_obj_list_data *tkd = &tk2->obj_list_data;
+	struct object *o;
+	unsigned int token_len = 0;
+
+	if (*buf == 0)
+		return -1;
+
+	while (!cmdline_isendoftoken(buf[token_len]))
+		token_len++;
+
+	SLIST_FOREACH(o, tkd->list, next) {
+		if (token_len != strnlen(o->name, OBJ_NAME_LEN_MAX))
+			continue;
+		if (strncmp(buf, o->name, token_len))
+			continue;
+		break;
+	}
+	if (!o) /* not found */
+		return -1;
+
+	/* store the address of object in structure */
+	if (res)
+		*(struct object **)res = o;
+
+	return token_len;
+}
+
+int complete_get_nb_obj_list(cmdline_parse_token_hdr_t *tk)
+{
+	struct token_obj_list *tk2 = (struct token_obj_list *)tk;
+	struct token_obj_list_data *tkd = &tk2->obj_list_data;
+	struct object *o;
+	int ret = 0;
+
+	SLIST_FOREACH(o, tkd->list, next) {
+		ret++;
+	}
+	return ret;
+}
+
+int complete_get_elt_obj_list(cmdline_parse_token_hdr_t *tk,
+			      int idx, char *dstbuf, unsigned int size)
+{
+	struct token_obj_list *tk2 = (struct token_obj_list *)tk;
+	struct token_obj_list_data *tkd = &tk2->obj_list_data;
+	struct object *o;
+	int i = 0;
+	unsigned int len;
+
+	SLIST_FOREACH(o, tkd->list, next) {
+		if (i++ == idx)
+			break;
+	}
+	if (!o)
+		return -1;
+
+	len = strnlen(o->name, OBJ_NAME_LEN_MAX);
+	if ((len + 1) > size)
+		return -1;
+
+	if (dstbuf)
+		snprintf(dstbuf, size, "%s", o->name);
+
+	return 0;
+}
+
+
+int get_help_obj_list(__attribute__((unused)) cmdline_parse_token_hdr_t *tk,
+		      char *dstbuf, unsigned int size)
+{
+	snprintf(dstbuf, size, "Obj-List");
+	return 0;
+}
diff --git a/QDMA/DPDK/examples/qdma_testapp/parse_obj_list.h b/QDMA/DPDK/examples/qdma_testapp/parse_obj_list.h
new file mode 100644
index 0000000..aa754ba
--- /dev/null
+++ b/QDMA/DPDK/examples/qdma_testapp/parse_obj_list.h
@@ -0,0 +1,146 @@
+/*-
+ *   BSD LICENSE
+ *
+ *   Copyright(c) 2017-2018 Xilinx, Inc. All rights reserved.
+ *
+ *   Redistribution and use in source and binary forms, with or without
+ *   modification, are permitted provided that the following conditions
+ *   are met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in
+ *       the documentation and/or other materials provided with the
+ *       distribution.
+ *     * Neither the name of the copyright holder nor the names of its
+ *       contributors may be used to endorse or promote products derived
+ *       from this software without specific prior written permission.
+ *
+ *   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ *   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ *   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ *   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ *   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ *   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ *   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ *   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/*-
+ *   BSD LICENSE
+ *
+ *   Copyright(c) 2010-2014 Intel Corporation. All rights reserved.
+ *   All rights reserved.
+ *
+ *   Redistribution and use in source and binary forms, with or without
+ *   modification, are permitted provided that the following conditions
+ *   are met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in
+ *       the documentation and/or other materials provided with the
+ *       distribution.
+ *     * Neither the name of Intel Corporation nor the names of its
+ *       contributors may be used to endorse or promote products derived
+ *       from this software without specific prior written permission.
+ *
+ *   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ *   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ *   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ *   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ *   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ *   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ *   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ *   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/*
+ * Copyright (c) 2009, Olivier MATZ <zer0@droids-corp.org>
+ * All rights reserved.
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in the
+ *       documentation and/or other materials provided with the distribution.
+ *     * Neither the name of the University of California, Berkeley nor the
+ *       names of its contributors may be used to endorse or promote products
+ *       derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL THE REGENTS AND CONTRIBUTORS BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef _PARSE_OBJ_LIST_H_
+#define _PARSE_OBJ_LIST_H_
+
+/* This file is an example of extension of libcmdline. It provides an
+ * example of objects stored in a list.
+ */
+
+#include <sys/queue.h>
+#include <cmdline_parse.h>
+
+#define OBJ_NAME_LEN_MAX 64
+
+struct object {
+	SLIST_ENTRY(object) next;
+	char name[OBJ_NAME_LEN_MAX];
+	cmdline_ipaddr_t ip;
+};
+
+/* define struct object_list */
+SLIST_HEAD(object_list, object);
+
+/* data is a pointer to a list */
+struct token_obj_list_data {
+	struct object_list *list;
+};
+
+struct token_obj_list {
+	struct cmdline_token_hdr hdr;
+	struct token_obj_list_data obj_list_data;
+};
+typedef struct token_obj_list parse_token_obj_list_t;
+
+extern struct cmdline_token_ops token_obj_list_ops;
+
+int parse_obj_list(cmdline_parse_token_hdr_t *tk, const char *srcbuf, void *res,
+			unsigned int buf_len);
+int complete_get_nb_obj_list(cmdline_parse_token_hdr_t *tk);
+int complete_get_elt_obj_list(cmdline_parse_token_hdr_t *tk, int idx,
+			      char *dstbuf, unsigned int size);
+int get_help_obj_list(cmdline_parse_token_hdr_t *tk, char *dstbuf,
+				unsigned int size);
+
+#define TOKEN_OBJ_LIST_INITIALIZER(structure, field, obj_list_ptr)  \
+{								    \
+	.hdr = {						    \
+		.ops = &token_obj_list_ops,			    \
+		.offset = offsetof(structure, field),		    \
+	},							    \
+		.obj_list_data = {				    \
+		.list = obj_list_ptr,				    \
+	},							    \
+}
+
+#endif /* _PARSE_OBJ_LIST_H_ */
diff --git a/QDMA/DPDK/examples/qdma_testapp/pcierw.c b/QDMA/DPDK/examples/qdma_testapp/pcierw.c
new file mode 100644
index 0000000..0e384dc
--- /dev/null
+++ b/QDMA/DPDK/examples/qdma_testapp/pcierw.c
@@ -0,0 +1,56 @@
+/*-
+ *   BSD LICENSE
+ *
+ *   Copyright(c) 2017-2018 Xilinx, Inc. All rights reserved.
+ *
+ *   Redistribution and use in source and binary forms, with or without
+ *   modification, are permitted provided that the following conditions
+ *   are met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in
+ *       the documentation and/or other materials provided with the
+ *       distribution.
+ *     * Neither the name of the copyright holder nor the names of its
+ *       contributors may be used to endorse or promote products derived
+ *       from this software without specific prior written permission.
+ *
+ *   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ *   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ *   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ *   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ *   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ *   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ *   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ *   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include <sys/ioctl.h>
+#include <net/if.h>
+#include <unistd.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <rte_ethdev.h>
+
+#include "pcierw.h"
+
+unsigned int PciRead(unsigned int Bar, unsigned int Offset, int portid)
+{
+
+	return qdma_pci_read_reg(&rte_eth_devices[portid], Bar, Offset);
+}
+
+
+void PciWrite(unsigned int Bar, unsigned int Offset, unsigned int RegVal,
+				int portid)
+{
+
+	qdma_pci_write_reg(&rte_eth_devices[portid], Bar, Offset, RegVal);
+
+}
diff --git a/QDMA/DPDK/examples/qdma_testapp/pcierw.h b/QDMA/DPDK/examples/qdma_testapp/pcierw.h
new file mode 100644
index 0000000..f4a7b2a
--- /dev/null
+++ b/QDMA/DPDK/examples/qdma_testapp/pcierw.h
@@ -0,0 +1,42 @@
+/*-
+ *   BSD LICENSE
+ *
+ *   Copyright(c) 2017-2018 Xilinx, Inc. All rights reserved.
+ *
+ *   Redistribution and use in source and binary forms, with or without
+ *   modification, are permitted provided that the following conditions
+ *   are met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in
+ *       the documentation and/or other materials provided with the
+ *       distribution.
+ *     * Neither the name of the copyright holder nor the names of its
+ *       contributors may be used to endorse or promote products derived
+ *       from this software without specific prior written permission.
+ *
+ *   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ *   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ *   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ *   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ *   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ *   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ *   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ *   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef __PCIERW_H__
+#define __PCIERW_H__
+
+unsigned int PciRead(unsigned int Bar, unsigned int Offset, int SockFD);
+void PciWrite(unsigned int Bar, unsigned int Offset, unsigned int RegVal,
+				int SockFD);
+void qdma_pci_write_reg(struct rte_eth_dev *dev, uint32_t bar, uint32_t reg,
+				uint32_t val);
+uint32_t qdma_pci_read_reg(struct rte_eth_dev *dev, uint32_t bar, uint32_t reg);
+#endif
diff --git a/QDMA/DPDK/examples/qdma_testapp/qdma_regs.h b/QDMA/DPDK/examples/qdma_testapp/qdma_regs.h
new file mode 100644
index 0000000..c8e0d07
--- /dev/null
+++ b/QDMA/DPDK/examples/qdma_testapp/qdma_regs.h
@@ -0,0 +1,235 @@
+/*-
+ *   BSD LICENSE
+ *
+ *   Copyright(c) 2017-2018 Xilinx, Inc. All rights reserved.
+ *
+ *   Redistribution and use in source and binary forms, with or without
+ *   modification, are permitted provided that the following conditions
+ *   are met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in
+ *       the documentation and/or other materials provided with the
+ *       distribution.
+ *     * Neither the name of the copyright holder nor the names of its
+ *       contributors may be used to endorse or promote products derived
+ *       from this software without specific prior written permission.
+ *
+ *   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ *   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ *   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ *   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ *   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ *   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ *   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ *   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/** Target definations **/
+#define QDMA_TRQ_SEL_GLBL	0x00000200
+#define QDMA_TRQ_SEL_FMAP	0x00000400
+#define QDMA_TRQ_SEL_IND	0x00000800
+#define QDMA_TRQ_SEL_C2H	0x00000A00
+#define QDMA_TRQ_SEL_H2H	0x00000E00
+#define QDMA_TRQ_SEL_C2H_MM0	0x00001000
+#define QDMA_TRQ_SEL_H2C_MM0	0x00001200
+#define QDMA_TRQ_SEL_QUEUE_PF	0x00006400
+
+#define QDMA_CONFIG_BLOCK_ID	0x1fd00000UL
+/** Global registers **/
+#define QDMA_GLBL_RING_SZ	0x04
+#define QDMA_GLBL_SCRATCH	0x44
+#define QDMA_GLBL_WB_ACC	0x50
+#define QDMA_RING_SZ_MSK	0x0000ffff
+#define QDMA_WB_ACC_MSK		0x00000007
+
+/** Fmap registers **/
+#define QID_BASE_MSK		(0x000007ff)
+#define QID_MAX_MSK		(0x003ff800)
+#define QID_MAX_SHIFT_B			(11)
+
+/** Queue Indirect programming commands **/
+
+#define QDMA_IND_Q_PRG_OFF	(0x4)
+
+#define QDMA_CTXT_CMD_CLR	(0)
+#define QDMA_CTXT_CMD_WR	(1)
+#define QDMA_CTXT_CMD_RD	(2)
+#define QDMA_CTXT_CMD_INV	(3)
+
+#define QDMA_CTXT_SEL_DESC_SW_C2H	(0)
+#define QDMA_CTXT_SEL_DESC_SW_H2C	(1)
+#define QDMA_CTXT_SEL_DESC_HW_C2H	(2)
+#define QDMA_CTXT_SEL_DESC_HW_H2C	(3)
+#define QDMA_CTXT_SEL_CR_C2H	(4)
+#define QDMA_CTXT_SEL_CR_H2C	(5)
+#define QDMA_CTXT_SEL_DESC_CMPT	(6)
+#define QDMA_CTXT_SEL_PFTCH	(7)
+
+#define QID_SHIFT_B		(7)
+#define OP_CODE_SHIFT_B		(5)
+#define CTXT_SEL_SHIFT_B	(1)
+#define BUSY_BIT_MSK		(1)
+
+#define WB_EN_SHIFT_B		(20)
+#define MM_CHAN_SHIFT_B		(19)
+#define MM_DESC_SZ_SHIFT_B	(17)
+#define ST_H2C_DESC_SZ_SHIFT_B	(16)
+#define DESC_RING_SZ_SHIFT_B	(12)
+#define ST_H2C_DESC_SZ_SHIFT_B	(16)
+#define MM_DESC_SZ_WB_SHIFT_B	(29)
+#define C2H_WB_CTXT_V_SHIFT_B	(24)
+
+/** C2H target registers **/
+#define QDMA_C2H_CNT_TH_BASE	0x40
+#define QDMA_C2H_BUF_SZ_BASE	0xB0
+
+/** PF Queue index registers */
+#define QDMA_H2C_PIDX_Q_OFF	(0x04)
+#define QDMA_C2H_PIDX_Q_OFF	(0x08)
+#define QDMA_SEL_CMPT_CIDX_Q_OFF (0x0c)
+
+
+/** QDMA Target registers **/
+#define QDMA_C2H_MM0_CONTROL	0x00000004
+#define QDMA_H2C_MM0_CONTROL	0x00000004
+#define QDMA_MM_CTRL_START	(1 << 0)
+
+/** QDMA Descriptor definations **/
+#define QDMA_DESC_SOP	0x1
+#define QDMA_DESC_EOP	0x1
+#define QDMA_DESC_VALID	0x1
+
+
+/** Queue Indirect programming registers **/
+struct __attribute__ ((packed)) q_ind_prg
+{
+	uint32_t ctxt_data[8];
+	uint32_t ctxt_mask[8];
+	uint32_t ctxt_cmd;
+};
+
+union __attribute__ ((packed)) h2c_c2h_ctxt
+{
+	struct  __attribute__ ((packed))  ctxt_data
+	{
+		uint32_t data[5];
+	} c_data;
+	struct  __attribute__ ((packed)) ctxt_fields
+	{
+		uint16_t pidx;
+		uint16_t irq_ack:1;
+		uint16_t fnc_id:8;
+		uint16_t rsv0:7;
+		uint16_t qen:1;
+		uint16_t fcrd_en:1;
+		uint16_t wbi_chk:1;
+		uint16_t wbi_acc_en:1;
+		uint16_t at:1;
+		uint16_t fetch_max:3;
+		uint16_t rsv1:4;
+		uint16_t rng_sz:4;
+		uint16_t dsc_sz:2;
+		uint16_t byp:1;
+		uint16_t mm_chn:1;
+		uint16_t wbk_en:1;
+		uint16_t irq_en:1;
+		uint16_t port_id:3;
+		uint16_t irq_no_last:1;
+		uint16_t err:2;
+		uint16_t err_wb_sent:1;
+		uint16_t irq_req:1;
+		uint16_t mrkr_dis:1;
+		uint16_t is_mm:1;
+		uint64_t dsc_base;
+		uint16_t int_vec:11;
+		uint16_t int_aggr:1;
+	} c_fields;
+};
+
+union __attribute__ ((packed)) c2h_cmpt_ctxt
+{
+	struct  __attribute__ ((packed))  c2h_cmpt_data
+	{
+		uint32_t data[5];
+	} c_data;
+	struct  __attribute__ ((packed)) c2h_cmpt_fields
+	{
+		uint32_t en_stat_desc:1;
+		uint32_t en_int:1;
+		uint32_t trig_mode:3;
+		uint32_t fnc_id:12;
+		uint32_t count_idx:4;
+		uint32_t timer_idx:4;
+		uint32_t int_st:2;
+		uint32_t color:1;
+		uint32_t size:4;
+		uint32_t cmpt_dsc_base_l;
+		uint32_t cmpt_dsc_base_h:26;
+		uint32_t desc_sz:2;
+		uint32_t pidx:16;
+		uint32_t cidx:16;
+		uint32_t valid:1;
+		uint32_t err:2;
+		uint32_t usr_trig_pend:1;
+		uint32_t timer_run:1;
+		uint32_t full_upd:1;
+		uint32_t ovf_chk_dis:1;
+		uint32_t at:1;
+	} c_fields;
+};
+
+union __attribute__ ((packed)) h2c_c2h_hw_ctxt
+{
+	struct  __attribute__ ((packed))  hw_ctxt_data
+	{
+		uint32_t data[2];
+	} c_data;
+	struct  __attribute__ ((packed)) hw_ctxt_fields
+	{
+		uint32_t cidx:16;
+		uint32_t crd_use:16;
+		uint32_t rsvd0:8;
+		uint32_t pnd:1;
+		uint32_t idl_stp_b:1;
+		uint32_t event_pend:1;
+		uint32_t fetch_pend:4;
+		uint32_t rsvd1:1;
+	} c_fields;
+};
+
+union __attribute__ ((packed)) prefetch_ctxt
+{
+	struct __attribute__ ((packed)) pref_ctxt_data
+	{
+		uint32_t data[2];
+	} c_data;
+
+	struct __attribute__ ((packed)) pref_ctxt_fields
+	{
+		uint8_t bypass:1;
+		uint8_t buf_sz_idx:4;
+		uint8_t port_id:3;
+		uint32_t rsvd:18;
+		uint8_t err:1;
+		uint8_t pfch_en:1;
+		uint8_t pfch:1;
+		uint16_t sw_crdt:16;
+		uint8_t valid:1;
+	} c_fields;
+};
+
+#define PIDX_MSK	(0)
+#define Q_STATUS_MSK	(0)
+#define Q_STATUS_EN_MSK (3)
+#define Q_STATUS_RST_MSK (1)
+#define WBI_CHK_MSK	(6)
+#define WBI_ACC_EN_MSK	(7)
+#define FUNC_ID_MSK	(8)
+#define RING_SZ_MSK	(16)
+#define DESC_SZ_MSK	(16)
diff --git a/QDMA/DPDK/examples/qdma_testapp/testapp.c b/QDMA/DPDK/examples/qdma_testapp/testapp.c
new file mode 100644
index 0000000..5ec7ca0
--- /dev/null
+++ b/QDMA/DPDK/examples/qdma_testapp/testapp.c
@@ -0,0 +1,795 @@
+/*-
+ *   BSD LICENSE
+ *
+ *   Copyright(c) 2017-2018 Xilinx, Inc. All rights reserved.
+ *
+ *   Redistribution and use in source and binary forms, with or without
+ *   modification, are permitted provided that the following conditions
+ *   are met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in
+ *       the documentation and/or other materials provided with the
+ *       distribution.
+ *     * Neither the name of the copyright holder nor the names of its
+ *       contributors may be used to endorse or promote products derived
+ *       from this software without specific prior written permission.
+ *
+ *   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ *   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ *   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ *   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ *   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ *   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ *   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ *   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include <stdio.h>
+#include <string.h> /**> memset */
+#include <signal.h>
+#include <termios.h>
+#include <rte_eal.h> /**> rte_eal_init */
+#include <rte_debug.h> /**> for rte_panic */
+#include <rte_ethdev.h> /**> rte_eth_rx_burst */
+#include <rte_errno.h> /**> rte_errno global var */
+#include <rte_memzone.h> /**> rte_memzone_dump */
+#include <rte_memcpy.h>
+#include <rte_malloc.h>
+#include <rte_cycles.h>
+#include <rte_log.h>
+#include <rte_string_fns.h>
+#include <cmdline_rdline.h>
+#include <cmdline_parse.h>
+#include <cmdline_socket.h>
+#include <cmdline.h>
+#include <time.h>  /** For SLEEP **/
+#include <getopt.h>
+#include <unistd.h>
+#include <fcntl.h>
+#include <rte_mbuf.h>
+
+#include "pcierw.h"
+#include "commands.h"
+#include "qdma_regs.h"
+#include "testapp.h"
+#include "../../drivers/net/qdma/qdma.h"
+
+int num_ports;
+char *filename;
+
+struct port_info pinfo[QDMA_MAX_PORTS];
+
+int do_recv_mm(int portid, int fd, int queueid, int ld_size, int tot_num_desc)
+{
+	struct rte_mbuf *pkts[NUM_RX_PKTS] = { NULL };
+	int nb_rx = 0, i = 0, ret = 0, num_pkts;
+	int tdesc;
+#ifdef PERF_BENCHMARK
+	uint64_t prev_tsc, cur_tsc, diff_tsc;
+#endif
+
+	if (tot_num_desc == 0) {
+		printf("Error: tot_num_desc : invalid value\n");
+		return -1;
+	}
+
+	printf("recv start num-desc: %d, with data-len: %d, "
+			"last-desc-size:%d\n",
+			tot_num_desc, pinfo[portid].buff_size, ld_size);
+	tdesc = tot_num_desc;
+	if (ld_size)
+		tdesc--;
+
+	while (tdesc) {
+		if (tdesc > NUM_RX_PKTS)
+			num_pkts = NUM_RX_PKTS;
+		else
+			num_pkts = tdesc;
+#ifdef PERF_BENCHMARK
+		prev_tsc = rte_rdtsc_precise();
+#endif
+		/* try to receive RX_BURST_SZ packets */
+		nb_rx = rte_eth_rx_burst(portid, queueid, pkts, num_pkts);
+
+#ifdef PERF_BENCHMARK
+		cur_tsc = rte_rdtsc_precise();
+		diff_tsc = cur_tsc - prev_tsc;
+#endif
+
+		if (nb_rx == 0) {
+			printf("Error: dma_from_device failed to "
+					"receive packets\n");
+			return -1;
+		}
+#ifdef PERF_BENCHMARK
+	   /* Calculate average operations processed per second */
+		double pkts_per_second = ((double)nb_rx * rte_get_tsc_hz() /
+							diff_tsc);
+
+		/* Calculate average throughput (Gbps) in bits per second */
+		double throughput_gbps = ((pkts_per_second *
+				pinfo[portid].buff_size) / 1000000000);
+		printf("Throughput GBps %lf\n", throughput_gbps);
+				printf("%16s%16s%16s%16s%16s%16s%16s\n\n",
+					"Buf Size", "Burst Size",
+					"pps", "Gbps", "freq", "Cycles",
+					"Cycles/Buf");
+
+			printf("%16u%16u%16.4lf%16.4lf%16 "
+					""PRIu64"%16"PRIu64"%16"PRIu64"\n",
+					pinfo[portid].buff_size,
+					nb_rx,
+					pkts_per_second,
+					throughput_gbps,
+					rte_get_tsc_hz(),
+					diff_tsc,
+					diff_tsc/nb_rx);
+#endif
+
+		for (i = 0; i < nb_rx; i++) {
+			struct rte_mbuf *mb = pkts[i];
+			ret = write(fd, rte_pktmbuf_mtod(mb, void*),
+						pinfo[portid].buff_size);
+			rte_pktmbuf_free(mb);
+#ifndef PERF_BENCHMARK
+			printf("recv count: %d, with data-len: %d\n", i, ret);
+#endif
+		}
+		tdesc = tdesc - nb_rx;
+	}
+	if (ld_size) {
+		struct rte_mbuf *mb;
+		nb_rx = rte_eth_rx_burst(portid, queueid, pkts, 1);
+		if (nb_rx != 0) {
+			mb = pkts[0];
+			ret = write(fd, rte_pktmbuf_mtod(mb, void*), ld_size);
+			rte_pktmbuf_free(mb);
+		}
+	}
+	fsync(fd);
+	printf("\nDMA received number of packets: %d, on queue-id:%d\n",
+							nb_rx, queueid);
+	return 0;
+}
+
+int do_recv_st(int portid, int fd, int queueid, int input_size)
+{
+	struct rte_mbuf *pkts[NUM_RX_PKTS] = { NULL };
+	int nb_rx = 0, i, ret = 0, tmp = 0, num_pkts, nb_pkts;
+	int reg_val, num_pkts_recv = 0;
+	int regval;
+	int user_bar_idx;
+	struct rte_mbuf *nxtmb;
+	int qbase = pinfo[portid].queue_base, diag;
+	unsigned int max_completion_size;
+	unsigned int max_rx_retry;
+
+#ifdef DUMP_MEMPOOL_USAGE_STATS
+	struct rte_mempool *mp;
+	mp = rte_mempool_lookup(pinfo[portid].mem_pool);
+
+	/* get the mempool from which to acquire buffers */
+	if (mp == NULL)
+		rte_exit(EXIT_FAILURE, "Could not find mempool with name %s\n",
+				pinfo[portid].mem_pool);
+#endif //DUMP_MEMPOOL_USAGE_STATS
+
+	user_bar_idx = pinfo[portid].user_bar_idx;
+	PciWrite(user_bar_idx, C2H_ST_QID_REG, (queueid + qbase), portid);
+
+	/* As per  hardware design a single completion will point to atmost
+	 * 7 descriptors. So If the size of the buffer in descriptor is 4KB ,
+	 * then a single completion which corresponds a packet can  give you
+	 * atmost 28KB data.
+	 *
+	 * As per this when testing sizes beyond 28KB, one needs to split it
+	 * up in chunks of 28KB, example : to test 56KB data size, set 28KB
+	 * as packet length in USER BAR 0x04 register and no of packets as 2
+	 * in user BAR 0x20 register this would give you completions or
+	 * packets, which needs to be combined as one in application.
+	 */
+
+	max_completion_size = pinfo[portid].buff_size * 7;
+
+	/* Calculate number of packets to receive and programming user bar */
+	if (input_size == 0) /* zerobyte support uses one descriptor */
+		num_pkts = 1;
+	else if (input_size % max_completion_size != 0)
+		num_pkts = input_size / max_completion_size + 1;
+	else
+		num_pkts = input_size / max_completion_size;
+
+	reg_val = PciRead(user_bar_idx, C2H_CONTROL_REG, portid);
+	reg_val &= C2H_CONTROL_REG_MASK;
+	if (!(reg_val & ST_LOOPBACK_EN)) {
+		PciWrite(user_bar_idx, C2H_PACKET_COUNT_REG, num_pkts, portid);
+
+		if (num_pkts > 1)
+			PciWrite(user_bar_idx, C2H_ST_LEN_REG,
+					max_completion_size, portid);
+		else
+			PciWrite(user_bar_idx, C2H_ST_LEN_REG, input_size,
+								portid);
+
+		regval = PciRead(user_bar_idx, C2H_PACKET_COUNT_REG, portid);
+		printf("BAR-%d is the QDMA C2H number of packets:0x%x,\n",
+				user_bar_idx, regval);
+	}
+
+	while (num_pkts) {
+		if (num_pkts > NUM_RX_PKTS)
+			nb_pkts = NUM_RX_PKTS;
+		else
+			nb_pkts = num_pkts;
+
+		max_rx_retry = RX_TX_MAX_RETRY;
+		/* Start the C2H Engine */
+		reg_val = PciRead(user_bar_idx, C2H_CONTROL_REG, portid);
+		reg_val &= C2H_CONTROL_REG_MASK;
+		if (!(reg_val & ST_LOOPBACK_EN)) {
+			reg_val |= ST_C2H_START_VAL;
+			PciWrite(user_bar_idx, C2H_CONTROL_REG, reg_val,
+								portid);
+		}
+		 /* Immediate data Enabled*/
+		if ((reg_val & ST_C2H_IMMEDIATE_DATA_EN)) {
+			/* payload received is zero for the immediate data case.
+			 * Therefore, no need to call the rx_burst function
+			 * again in this case and set the num_pkts to nb_rx
+			 * which is always Zero.
+			 */
+			diag = update_queue_param(&rte_eth_devices[portid],
+							queueid,
+							DUMP_IMMEDIATE_DATA, 1);
+			if (diag < 0)
+				rte_exit(EXIT_FAILURE, "updata_queue_param : "
+					  "Passing of DUMP_IMMEDIATE_DATA "
+						"failed\n");
+			nb_rx = rte_eth_rx_burst(portid, queueid, pkts,
+								nb_pkts);
+			num_pkts = num_pkts_recv = nb_rx;
+
+			/* Reset the queue's DUMP_IMMEDIATE_DATA mode */
+			diag = update_queue_param(&rte_eth_devices[portid],
+							queueid,
+							DUMP_IMMEDIATE_DATA, 0);
+			if (diag < 0)
+				rte_exit(EXIT_FAILURE, "updata_queue_param : "
+					  "Passing of DUMP_IMMEDIATE_DATA "
+					  "failed\n");
+		} else {
+			/* try to receive RX_BURST_SZ packets */
+
+			nb_rx = rte_eth_rx_burst(portid, queueid, pkts,
+							nb_pkts);
+			tmp = nb_rx;
+			while ((nb_rx < nb_pkts) && max_rx_retry) {
+				printf("Couldn't receive all the packets:  "
+						"Expected = %d Received = %d.\n"
+						"Calling rte_eth_rx_burst "
+						"again\n", nb_pkts, nb_rx);
+				nb_pkts -= nb_rx;
+				nb_rx = rte_eth_rx_burst(portid, queueid,
+								&pkts[tmp],
+								nb_pkts);
+				tmp += nb_rx;
+				max_rx_retry--;
+			}
+			num_pkts_recv = tmp;
+			if ((max_rx_retry == 0) && (num_pkts_recv == 0)) {
+				printf("ERROR: rte_eth_rx_burst failed for "
+						"port %d queue id %d\n",
+						portid, queueid);
+				break;
+			}
+		}
+
+		 /* Stop the C2H Engine */
+		reg_val = PciRead(user_bar_idx, C2H_CONTROL_REG, portid);
+		reg_val &= C2H_CONTROL_REG_MASK;
+		if (!(reg_val & ST_LOOPBACK_EN)) {
+			reg_val &= ~(ST_C2H_START_VAL);
+			PciWrite(user_bar_idx, C2H_CONTROL_REG, reg_val,
+					portid);
+		}
+
+#ifdef DUMP_MEMPOOL_USAGE_STATS
+		printf("%s(): %d: queue id = %d, mbuf_avail_count = %d, "
+				"mbuf_in_use_count = %d\n",
+				__func__, __LINE__, queueid,
+				rte_mempool_avail_count(mp),
+				rte_mempool_in_use_count(mp));
+#endif //DUMP_MEMPOOL_USAGE_STATS
+		for (i = 0; i < num_pkts_recv; i++) {
+			struct rte_mbuf *mb = pkts[i];
+			while (mb != NULL) {
+				ret += write(fd, rte_pktmbuf_mtod(mb, void*),
+						rte_pktmbuf_data_len(mb));
+				nxtmb = mb->next;
+				mb = nxtmb;
+			}
+
+			mb = pkts[i];
+			rte_pktmbuf_free(mb);
+			printf("recv count: %d, with data-len: %d\n", i, ret);
+			ret = 0;
+		}
+#ifdef DUMP_MEMPOOL_USAGE_STATS
+		printf("%s(): %d: queue id = %d, mbuf_avail_count = %d, "
+				"mbuf_in_use_count = %d, num_pkts_recv = %d\n",
+				__func__, __LINE__, queueid,
+				rte_mempool_avail_count(mp),
+				rte_mempool_in_use_count(mp), num_pkts_recv);
+#endif //DUMP_MEMPOOL_USAGE_STATS
+		num_pkts = num_pkts - num_pkts_recv;
+		printf("\nDMA received number of packets: %d, on queue-id:%d\n",
+				num_pkts_recv, queueid);
+	}
+
+	fsync(fd);
+	return 0;
+}
+
+int do_xmit(int portid, int fd, int queueid, int ld_size, int tot_num_desc,
+				int zbyte)
+{
+	struct rte_mempool *mp;
+	struct rte_mbuf *mb[NUM_RX_PKTS] = { NULL };
+	int ret = 0, nb_tx, i = 0, tdesc, num_pkts = 0, total_tx = 0, reg_val;
+	int tmp = 0, user_bar_idx;
+	int qbase = pinfo[portid].queue_base;
+	uint32_t max_tx_retry;
+
+#ifdef PERF_BENCHMARK
+	uint64_t prev_tsc, cur_tsc, diff_tsc;
+#endif
+	mp = rte_mempool_lookup(pinfo[portid].mem_pool);
+	/* get the mempool from which to acquire buffers */
+	if (mp == NULL)
+		rte_exit(EXIT_FAILURE, "Could not find mempool with name %s\n",
+				pinfo[portid].mem_pool);
+	tdesc = tot_num_desc;
+	user_bar_idx = pinfo[portid].user_bar_idx;
+
+	if (ld_size)
+		tdesc--;
+
+	while (tdesc) {
+		if (tdesc > NUM_RX_PKTS)
+			num_pkts = NUM_RX_PKTS;
+		else
+			num_pkts = tdesc;
+
+		max_tx_retry = RX_TX_MAX_RETRY;
+#ifdef DUMP_MEMPOOL_USAGE_STATS
+		printf("%s(): %d: queue id %d, mbuf_avail_count = %d, "
+				"mbuf_in_use_count = %d",
+				__func__, __LINE__, queueid,
+				rte_mempool_avail_count(mp),
+				rte_mempool_in_use_count(mp));
+#endif //DUMP_MEMPOOL_USAGE_STATS
+		for (i = 0; i < num_pkts; i++) {
+			mb[i] = rte_pktmbuf_alloc(mp);
+			if (mb[i] == NULL)
+				rte_exit(EXIT_FAILURE, " #####Cannot "
+						"allocate mbuf packet\n");
+
+			if (!zbyte)
+				ret = read(fd, rte_pktmbuf_mtod(mb[i], void *),
+						pinfo[portid].buff_size);
+			if (ret < 0) {
+				printf("Error: Could not the read "
+						"input-file\n");
+				return -1;
+			}
+			mb[i]->nb_segs = 1;
+			mb[i]->next = NULL;
+			rte_pktmbuf_data_len(mb[i]) = (uint16_t)ret;
+			rte_pktmbuf_pkt_len(mb[i])  = (uint16_t)ret;
+		}
+
+#ifdef DUMP_MEMPOOL_USAGE_STATS
+		printf("%s(): %d: queue id %d, mbuf_avail_count = %d, "
+				"mbuf_in_use_count = %d, num_pkts_tx = %d",
+				__func__, __LINE__, queueid,
+				rte_mempool_avail_count(mp),
+				rte_mempool_in_use_count(mp), num_pkts);
+#endif //DUMP_MEMPOOL_USAGE_STATS
+
+		total_tx = num_pkts;
+		PciWrite(user_bar_idx, C2H_ST_QID_REG, (queueid + qbase),
+				portid);
+		/* try to transmit TX_BURST_SZ packets */
+
+#ifdef PERF_BENCHMARK
+		prev_tsc = rte_rdtsc_precise();
+#endif
+		nb_tx = rte_eth_tx_burst(portid, queueid, mb, num_pkts);
+#ifdef PERF_BENCHMARK
+		cur_tsc = rte_rdtsc_precise();
+		diff_tsc = cur_tsc - prev_tsc;
+	   /* Calculate average operations processed per second */
+		double pkts_per_second = ((double)nb_tx * rte_get_tsc_hz() /
+								diff_tsc);
+
+		/* Calculate average throughput (Gbps) in bits per second */
+		double throughput_gbps = ((pkts_per_second *
+				pinfo[portid].buff_size) / 1000000000);
+		printf("Throughput GBps %lf\n", throughput_gbps);
+				printf("%12s%12s%12s%12s%12s%12s%12s\n\n",
+					"Buf Size", "Burst Size",
+					"pps", "Gbps", "freq", "Cycles",
+					"Cycles/Buf");
+
+			printf("%12u%12u%12.4lf%12.4lf%12"
+					""PRIu64"%12"PRIu64"%12"PRIu64"\n",
+					pinfo[portid].buff_size,
+					nb_tx,
+					pkts_per_second,
+					throughput_gbps,
+					rte_get_tsc_hz(),
+					diff_tsc,
+					diff_tsc/nb_tx);
+#endif
+		tmp = nb_tx;
+		while ((nb_tx < num_pkts) && max_tx_retry) {
+			printf("Couldn't transmit all the packets:  Expected = %d "
+					"Transmitted = %d.\n"
+					"Calling rte_eth_tx_burst again\n",
+					num_pkts, nb_tx);
+			num_pkts -= nb_tx;
+			nb_tx = rte_eth_tx_burst(portid, queueid, &mb[tmp],
+					num_pkts);
+			tmp += nb_tx;
+			max_tx_retry--;
+		}
+
+		if ((max_tx_retry == 0)) {
+			for (i = tmp; i < total_tx; i++)
+				rte_pktmbuf_free(mb[i]);
+			if (tmp == 0) {
+				printf("ERROR: rte_eth_tx_burst failed "
+						"for port %d queue %d\n",
+						portid, queueid);
+				break;
+			}
+		}
+
+		tdesc = tdesc - tmp;
+		printf("\nDMA transmitted number of packets: %d, "
+				"on Queue-id:%d\n",
+				tmp, queueid);
+	}
+
+	if (ld_size) {
+		mb[0] = rte_pktmbuf_alloc(mp);
+		if (mb[0] == NULL) {
+			rte_exit(EXIT_FAILURE, " #####Cannot allocate mbuf "
+								"packet\n");
+		}
+		ret = read(fd, rte_pktmbuf_mtod(mb[0], void *), ld_size);
+		if (ret < 0) {
+			printf("Error: Could not read the input-file\n");
+			return -1;
+		}
+		mb[0]->nb_segs = 1;
+		mb[0]->next = NULL;
+		rte_pktmbuf_data_len(mb[0]) = (uint16_t)ret;
+		rte_pktmbuf_pkt_len(mb[0])  = (uint16_t)ret;
+
+		nb_tx = rte_eth_tx_burst(portid, queueid, mb, 1);
+		if (nb_tx == 0)
+			rte_pktmbuf_free(mb[0]);
+	}
+
+	reg_val = PciRead(user_bar_idx, C2H_CONTROL_REG, portid);
+	reg_val &= C2H_CONTROL_REG_MASK;
+	if (!(reg_val & ST_LOOPBACK_EN)) {
+		reg_val = PciRead(user_bar_idx, H2C_STATUS_REG, portid);
+		printf("BAR-%d is the QDMA H2C transfer match: 0x%x,\n",
+			user_bar_idx, reg_val);
+
+		/** TO clear H2C DMA write **/
+		PciWrite(user_bar_idx, H2C_CONTROL_REG, 0x1, portid);
+	}
+
+	return 0;
+}
+
+void port_close(int port_id)
+{
+	struct rte_mempool *mp;
+
+	rte_eth_dev_stop(port_id);
+	rte_eth_dev_close(port_id);
+	mp = rte_mempool_lookup(pinfo[port_id].mem_pool);
+
+	if (mp != NULL)
+		rte_mempool_free(mp);
+}
+
+static int mbox_event_callback(uint16_t portid,
+				enum rte_eth_event_type type __rte_unused,
+				void *param __rte_unused, void *ret_param)
+{
+	RTE_SET_USED(ret_param);
+	printf("%s is received\n", __func__);
+	pinfo[portid].num_queues = 0;
+	port_close(portid);
+	return 0;
+}
+
+static struct option const long_opts[] = {
+{"filename", 1, 0, 0},
+{NULL, 0, 0, 0}
+};
+
+int parse_cmdline(int argc, char **argv)
+{
+	int cmd_opt;
+	int option_index;
+	char **argvopt;
+
+	argvopt = argv;
+	while ((cmd_opt = getopt_long(argc, argvopt, "c:n:b:w", long_opts,
+						&option_index)) != EOF) {
+		switch (cmd_opt) {
+		case 'c':
+			/* eal option */
+			break;
+		case 'n':
+			/* eal option */
+			break;
+		case 'b':
+			/* eal option */
+			break;
+		case 'w':
+			/* eal option */
+			break;
+		case 0:
+			if (!strncmp(long_opts[option_index].name,
+						"filename",
+						sizeof("filename"))) {
+
+				filename = optarg;
+			}
+			break;
+		default:
+			printf("please pass valid parameters as follows:\n");
+			return -1;
+		}
+	}
+	return 0;
+}
+
+int port_init(int portid, int queue_base, int num_queues, int st_queues,
+				int nb_descs, int buff_size)
+{
+	struct rte_mempool *mbuf_pool;
+	struct rte_eth_conf	    port_conf;
+	struct rte_eth_txconf       tx_conf;
+	struct rte_eth_rxconf       rx_conf;
+	int                         diag, x;
+	uint32_t		    nb_buff;
+
+	printf("Setting up port :%d.\n", portid);
+	printf("Setting up queue-base :%d.\n", queue_base);
+
+	snprintf(pinfo[portid].mem_pool, RTE_MEMPOOL_NAMESIZE,
+			MBUF_POOL_NAME_PORT, portid);
+
+	/* Mbuf packet pool */
+	nb_buff = ((nb_descs) * num_queues * 2);
+
+	/* NUM_RX_PKTS should be added to every queue as that many descriptors
+	 * can be pending with application after Rx processing but before
+	 * consumed by application or sent to Tx
+	 */
+	nb_buff += ((NUM_RX_PKTS) * num_queues);
+
+	mbuf_pool = rte_pktmbuf_pool_create(pinfo[portid].mem_pool, nb_buff,
+			MP_CACHE_SZ, 0, buff_size +
+			RTE_PKTMBUF_HEADROOM,
+			rte_socket_id());
+
+	if (mbuf_pool == NULL)
+		rte_exit(EXIT_FAILURE, " Cannot create mbuf pkt-pool\n");
+#ifdef DUMP_MEMPOOL_USAGE_STATS
+	printf("%s(): %d: mpool = %p, mbuf_avail_count = %d,"
+			" mbuf_in_use_count = %d,"
+			"nb_buff = %d\n", __func__, __LINE__, mbuf_pool,
+			rte_mempool_avail_count(mbuf_pool),
+			rte_mempool_in_use_count(mbuf_pool), nb_buff);
+#endif //DUMP_MEMPOOL_USAGE_STATS
+
+	/*
+	 * Make sure the port is configured.  Zero everything and
+	 * hope for sane defaults
+	 */
+	memset(&port_conf, 0x0, sizeof(struct rte_eth_conf));
+	memset(&tx_conf, 0x0, sizeof(struct rte_eth_txconf));
+	memset(&rx_conf, 0x0, sizeof(struct rte_eth_rxconf));
+	diag = get_param(&rte_eth_devices[portid], CONFIG_BAR,
+			&(pinfo[portid].config_bar_idx));
+
+	if (diag < 0)
+		rte_exit(EXIT_FAILURE, "get_param : CONFIG_BAR failed\n");
+	diag = get_param(&rte_eth_devices[portid], USER_BAR,
+			&(pinfo[portid].user_bar_idx));
+	if ((diag < 0) || (pinfo[portid].user_bar_idx < 0))
+		rte_exit(EXIT_FAILURE, "get_param : USER_BAR failed\n");
+	diag = get_param(&rte_eth_devices[portid], BYPASS_BAR,
+			&(pinfo[portid].bypass_bar_idx));
+	if ((diag < 0) || (pinfo[portid].bypass_bar_idx < 0))
+		printf("get_param : BYPASS_BAR is failed\n");
+
+	printf("QDMA Config bar idx: %d\n", pinfo[portid].config_bar_idx);
+	printf("QDMA User bar idx: %d\n", pinfo[portid].user_bar_idx);
+	printf("QDMA Bypass bar idx: %d\n", pinfo[portid].bypass_bar_idx);
+
+	diag = update_param(&rte_eth_devices[portid], QUEUE_BASE, queue_base);
+	if (diag < 0)
+		rte_exit(EXIT_FAILURE, "updata_param : Passing of "
+				"QUEUE_BASE failed\n");
+
+	/* configure the device to use # queues */
+	diag = rte_eth_dev_configure(portid, num_queues, num_queues,
+			&port_conf);
+	if (diag < 0)
+		rte_exit(EXIT_FAILURE, "Cannot configure port %d (err=%d)\n",
+				portid, diag);
+
+	pinfo[portid].queue_base = queue_base;
+	pinfo[portid].num_queues = num_queues;
+	pinfo[portid].st_queues = st_queues;
+	pinfo[portid].buff_size = buff_size;
+
+	for (x = 0; x < num_queues; x++) {
+		if (x < st_queues) {
+			diag = update_queue_param(&rte_eth_devices[portid], x,
+					QUEUE_MODE, 1);
+			if (diag < 0)
+				rte_exit(EXIT_FAILURE, "updata_queue_param : "
+						"Passing of QUEUE_MODE "
+						"failed\n");
+		} else {
+			update_queue_param(&rte_eth_devices[portid], x,
+					QUEUE_MODE, 0);
+			if (diag < 0)
+				rte_exit(EXIT_FAILURE, "updata_queue_param : "
+						"Passing of QUEUE_MODE "
+						"failed\n");
+		}
+
+		diag = rte_eth_tx_queue_setup(portid, x, nb_descs, 0,
+				&tx_conf);
+		if (diag < 0)
+			rte_exit(EXIT_FAILURE, "Cannot setup port %d "
+					"TX Queue id:%d "
+					"(err=%d)\n", portid, x, diag);
+		diag = rte_eth_rx_queue_setup(portid, x, nb_descs, 0,
+				&rx_conf, mbuf_pool);
+		if (diag < 0)
+			rte_exit(EXIT_FAILURE, "Cannot setup port %d "
+					"RX Queue 0 (err=%d)\n", portid, diag);
+	}
+
+	diag = rte_eth_dev_start(portid);
+	if (diag < 0)
+		rte_exit(EXIT_FAILURE, "Cannot start port %d (err=%d)\n",
+				portid, diag);
+
+	rte_eth_dev_callback_register((uint16_t)portid, RTE_ETH_EVENT_VF_MBOX,
+			mbox_event_callback, NULL);
+
+	return 0;
+}
+
+static inline void do_sanity_checks(void)
+{
+#if (!defined(RTE_LIBRTE_QDMA_PMD))
+	rte_exit(EXIT_FAILURE, "CONFIG_RTE_LIBRTE_QDMA_PMD must be set "
+			"to 'Y' in the .config file\n");
+#endif /* RTE_LIBRTE_XDMA_PMD */
+
+}
+
+
+void load_file_cmds(struct cmdline *cl)
+{
+	FILE *fp;
+	char buff[256];
+
+	cmdline_printf(cl, "load commands from file:%s\n\n", filename);
+	fp = fopen((const char *)filename, "r");
+	if (fp == NULL) {
+		cmdline_printf(cl, "Error: Invalid filename: %s\n", filename);
+		return;
+	}
+
+	rdline_reset(&cl->rdl);
+	{
+		cmdline_in(cl, "\r", 1);
+		while (fgets(buff, sizeof(buff), fp))
+			cmdline_in(cl, buff, strlen(buff));
+
+		cmdline_in(cl, "\r", 1);
+	}
+	fclose(fp);
+
+}
+
+/** XDMA DPDK testapp */
+
+int main(int argc, char **argv)
+{
+	int port_id   = 0;
+	int ret = 0;
+	const struct rte_memzone *mz = 0;
+	struct cmdline *cl;
+	char name[RTE_ETH_NAME_MAX_LEN];
+
+	/* Make sure the port is configured.  Zero everything and
+	 * hope for same defaults
+	 */
+
+	printf("QDMA testapp rte eal init...\n");
+
+	/* Make sure things are initialized ... */
+	ret = rte_eal_init(argc, argv);
+	if (ret < 0)
+		rte_exit(EXIT_FAILURE, "Error with EAL initialization\n");
+	rte_log_set_global_level(RTE_LOG_DEBUG);
+
+	printf("Ethernet Device Count: %d\n", (int)rte_eth_dev_count());
+	printf("Logical Core Count: %d\n", rte_lcore_count());
+
+	num_ports = rte_eth_dev_count();
+	if (num_ports < 1)
+		rte_exit(EXIT_FAILURE, "No Ethernet devices found."
+			" Try updating the FPGA image.\n");
+
+#if 1
+	ret = parse_cmdline(argc, argv);
+	if (ret < 0)
+		rte_exit(EXIT_FAILURE, "Invalid argument\n");
+#endif
+
+	/* Make sure things are defined ... */
+	do_sanity_checks();
+
+	mz = rte_memzone_reserve_aligned("eth_devices", RTE_MAX_ETHPORTS *
+					  sizeof(*rte_eth_devices), 0, 0, 4096);
+
+	memcpy(mz->addr, &rte_eth_devices[0], RTE_MAX_ETHPORTS *
+					sizeof(*rte_eth_devices));
+
+	cl = cmdline_stdin_new(main_ctx, "xilinx-app> ");
+	if (cl == NULL)
+		rte_panic("Cannot create cmdline instance\n");
+
+	/* if input commands file exists, then load commands from the file */
+	if (filename != NULL) {
+		load_file_cmds(cl);
+		rte_delay_ms(100);
+	} else
+		cmdline_interact(cl);
+	for (port_id = 0; port_id < num_ports; port_id++) {
+		if (pinfo[port_id].num_queues)
+			port_close(port_id);
+
+		/*Detach the port, it will invoke device remove/uninit */
+		if (rte_eth_dev_detach(port_id, name))
+			printf("Failed to detach port '%s'\n", name);
+	}
+	cmdline_stdin_exit(cl);
+
+	rte_delay_ms(5000);
+	return 0;
+}
diff --git a/QDMA/DPDK/examples/qdma_testapp/testapp.h b/QDMA/DPDK/examples/qdma_testapp/testapp.h
new file mode 100644
index 0000000..167a169
--- /dev/null
+++ b/QDMA/DPDK/examples/qdma_testapp/testapp.h
@@ -0,0 +1,86 @@
+/*-
+ *   BSD LICENSE
+ *
+ *   Copyright(c) 2017-2018 Xilinx, Inc. All rights reserved.
+ *
+ *   Redistribution and use in source and binary forms, with or without
+ *   modification, are permitted provided that the following conditions
+ *   are met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in
+ *       the documentation and/or other materials provided with the
+ *       distribution.
+ *     * Neither the name of the copyright holder nor the names of its
+ *       contributors may be used to endorse or promote products derived
+ *       from this software without specific prior written permission.
+ *
+ *   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ *   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ *   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ *   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ *   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ *   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ *   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ *   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#define QDMA_MAX_PORTS	256
+
+#define PORT_0 0
+
+#define NUM_DESC_PER_RING 1024
+#ifdef PERF_BENCHMARK
+#define NUM_RX_PKTS (NUM_DESC_PER_RING - 2)
+#else
+#define NUM_RX_PKTS 32
+#endif
+#define MAX_NUM_QUEUES 2048
+#define DEFAULT_NUM_QUEUES 64
+#define RX_TX_MAX_RETRY			1000
+
+#define MP_CACHE_SZ     512
+
+#define MBUF_POOL_NAME_PORT   "mbuf_pool_%d"
+
+/* User bar registers */
+#define C2H_ST_QID_REG    0x0
+#define C2H_ST_LEN_REG    0x4
+#define C2H_CONTROL_REG              0x8
+#define ST_LOOPBACK_EN               0x1
+#define ST_C2H_START_VAL             0x2
+#define ST_C2H_IMMEDIATE_DATA_EN     0x4
+#define C2H_CONTROL_REG_MASK         0xF
+#define H2C_CONTROL_REG    0xC
+#define H2C_STATUS_REG    0x10
+#define C2H_PACKET_COUNT_REG    0x20
+
+extern int num_ports;
+
+struct port_info {
+	int config_bar_idx;
+	int user_bar_idx;
+	int bypass_bar_idx;
+	unsigned int queue_base;
+	unsigned int num_queues;
+	unsigned int st_queues;
+	unsigned int buff_size;
+	char mem_pool[RTE_MEMPOOL_NAMESIZE];
+};
+
+extern struct port_info pinfo[QDMA_MAX_PORTS];
+int port_init(int portid, int queue_base, int num_queues, int st_queues,
+				int nb_descs, int buff_size);
+int do_recv_st(int portid, int fd, int queueid, int input_size);
+int do_recv_mm(int portid, int fd, int queueid, int size, int tot_num_desc);
+int do_xmit(int portid, int fd, int queueid, int size, int nb_desc, int zbyte);
+void load_file_cmds(struct cmdline *cl);
+void port_close(int port_id);
+void qdma_desc_dump(struct rte_eth_dev *dev, uint32_t qid);
+void queue_context_dump(uint8_t bar_id, uint32_t qid, struct cmdline *cl);
+int parse_cmdline(int argc, char **argv);
diff --git a/QDMA/DPDK/tools/0001-PKTGEN-3.4.7-Patch-to-add-Jumbo-packet-support.patch b/QDMA/DPDK/tools/0001-PKTGEN-3.4.7-Patch-to-add-Jumbo-packet-support.patch
new file mode 100644
index 0000000..39f83bf
--- /dev/null
+++ b/QDMA/DPDK/tools/0001-PKTGEN-3.4.7-Patch-to-add-Jumbo-packet-support.patch
@@ -0,0 +1,302 @@
+From ccc6a165e55b121ee39536c279af38e9866f3f68 Mon Sep 17 00:00:00 2001
+From: Nikhil Agarwal <nagarwal@xilinx.com>
+Date: Tue, 21 Aug 2018 00:24:51 -0600
+Subject: [PATCH] PKTGEN-3.4.5: Patch to add Jumbo packet support.
+
+This patch include:
+1. Jumbo frame support for Pktgen.
+2. Increase default number of RX_DESC to 2K.
+3. Disable RX classification.
+
+Signed-off-by: Kumar Sanghvi <kumars@xilinx.com>
+Signed-off-by: Nikhil Agarwal <nagarwal@xilinx.com>
+---
+ app/pktgen-cmds.c      | 15 +++++++++++----
+ app/pktgen-constants.h |  3 ++-
+ app/pktgen-main.c      |  7 ++++++-
+ app/pktgen-port-cfg.c  | 14 ++++++++------
+ app/pktgen-range.c     |  3 ++-
+ app/pktgen.c           | 21 +++++++++++++++------
+ app/pktgen.h           |  4 +++-
+ 7 files changed, 47 insertions(+), 20 deletions(-)
+
+diff --git a/app/pktgen-cmds.c b/app/pktgen-cmds.c
+index 66ea98a..be97d35 100644
+--- a/app/pktgen-cmds.c
++++ b/app/pktgen-cmds.c
+@@ -2443,6 +2443,10 @@ debug_set_tx_cycles(port_info_t *info, uint32_t cycles)
+ void
+ single_set_pkt_size(port_info_t *info, uint16_t size)
+ {
++	uint16_t pktsize = (pktgen.flags & MTU9K_SUPPORT_FLAG) ?
++			   MAX_PKT_SIZE:
++			   (ETHER_MAX_LEN - ETHER_CRC_LEN);
++
+ 	pkt_seq_t * pkt = &info->seq_pkt[SINGLE_PKT];
+ 
+ 	if (size < FCS_SIZE)
+@@ -2452,8 +2456,8 @@ single_set_pkt_size(port_info_t *info, uint16_t size)
+ 		if ( (size - FCS_SIZE) < MIN_PKT_SIZE)
+ 			size = (MIN_PKT_SIZE + FCS_SIZE);
+ 	}
+-	if ( (size - FCS_SIZE) > MAX_PKT_SIZE)
+-		size = MAX_PKT_SIZE + FCS_SIZE;
++	if ( (size - FCS_SIZE) > pktsize)
++		size = pktsize + FCS_SIZE;
+ 
+ 	if ((pkt->ethType == ETHER_TYPE_IPv6) && (size < (MIN_v6_PKT_SIZE + FCS_SIZE)))
+ 		size = MIN_v6_PKT_SIZE + FCS_SIZE;
+@@ -3007,6 +3011,9 @@ range_set_cos_id(port_info_t *info, char *what, uint8_t id)
+ void
+ range_set_pkt_size(port_info_t *info, char *what, uint16_t size)
+ {
++	uint32_t pktsize = (pktgen.flags & MTU9K_SUPPORT_FLAG) ?
++			   MAX_9K_SIZE : ETHER_MAX_LEN;
++
+ 	if (!strcmp(what, "inc") || !strcmp(what, "increment")) {
+ 		if (size > ETHER_MIN_LEN)
+ 			size = ETHER_MIN_LEN;
+@@ -3015,8 +3022,8 @@ range_set_pkt_size(port_info_t *info, char *what, uint16_t size)
+ 	} else {
+ 		if (size < ETHER_MIN_LEN)
+ 			size = MIN_PKT_SIZE;
+-		else if (size > ETHER_MAX_LEN)
+-			size = MAX_PKT_SIZE;
++		else if (size > pktsize)
++			size = pktsize;
+ 		else
+ 			size -= FCS_SIZE;
+ 
+diff --git a/app/pktgen-constants.h b/app/pktgen-constants.h
+index 1dc7c1a..bd5ce07 100644
+--- a/app/pktgen-constants.h
++++ b/app/pktgen-constants.h
+@@ -17,7 +17,7 @@ extern "C" {
+ enum {
+ 	DEFAULT_PKT_BURST       = 64,	/* Increasing this number consumes memory very fast */
+ #ifdef RTE_LIBRTE_VMXNET3_PMD
+-	DEFAULT_RX_DESC         = (DEFAULT_PKT_BURST * 8 * 2),
++	DEFAULT_RX_DESC         = (DEFAULT_PKT_BURST * 8 * 2 * 2),
+ 	DEFAULT_TX_DESC         = DEFAULT_RX_DESC * 2,
+ #else
+ 	DEFAULT_RX_DESC         = (DEFAULT_PKT_BURST * 8),
+@@ -30,6 +30,7 @@ enum {
+ 
+ 	DEFAULT_PRIV_SIZE       = 0,
+ 	MBUF_SIZE		= RTE_MBUF_DEFAULT_BUF_SIZE + DEFAULT_PRIV_SIZE, /* See: http://dpdk.org/dev/patchwork/patch/4479/ */
++	MBUF_9K_SIZE		= 9018 + RTE_PKTMBUF_HEADROOM + DEFAULT_PRIV_SIZE,
+ 
+ 	NUM_Q                   = 8,	/**< Number of cores per port. */
+ };
+diff --git a/app/pktgen-main.c b/app/pktgen-main.c
+index 8a10156..3ed1978 100644
+--- a/app/pktgen-main.c
++++ b/app/pktgen-main.c
+@@ -161,7 +161,7 @@ pktgen_parse_args(int argc, char **argv)
+ 	for (opt = 0; opt < argc; opt++)
+ 		pktgen.argv[opt] = strdup(argv[opt]);
+ 
+-	while ((opt = getopt_long(argc, argvopt, "p:m:f:l:s:g:hPNGT",
++	while ((opt = getopt_long(argc, argvopt, "p:m:f:l:s:g:hPNGT9",
+ 				  lgopts, &option_index)) != EOF)
+ 		switch (opt) {
+ 		case 'p':
+@@ -239,6 +239,11 @@ pktgen_parse_args(int argc, char **argv)
+ 			pktgen_usage(prgname);
+ 			return -1;
+ 
++		case '9': /* MTU 9K support */
++			pktgen_log_info("%s: case 9... \n", __func__);
++			pktgen.flags    |= MTU9K_SUPPORT_FLAG;
++			break;
++
+ 		case 0:	/* crc-strip for all ports */
+ 			pktgen_set_hw_strip_crc(1);
+ 			break;
+diff --git a/app/pktgen-port-cfg.c b/app/pktgen-port-cfg.c
+index f53d0ec..8b9d478 100644
+--- a/app/pktgen-port-cfg.c
++++ b/app/pktgen-port-cfg.c
+@@ -91,6 +91,8 @@ pktgen_mbuf_pool_create(const char *type, uint8_t pid, uint8_t queue_id,
+ 			uint32_t nb_mbufs, int socket_id, int cache_size){
+ 	struct rte_mempool *mp;
+ 	char name[RTE_MEMZONE_NAMESIZE];
++	uint16_t mbuf_sz = (pktgen.flags & MTU9K_SUPPORT_FLAG) ?
++			   MBUF_9K_SIZE : MBUF_SIZE;
+ 
+ 	snprintf(name, sizeof(name), "%-12s%u:%u", type, pid, queue_id);
+ 	pktgen_log_info(
+@@ -98,23 +100,23 @@ pktgen_mbuf_pool_create(const char *type, uint8_t pid, uint8_t queue_id,
+ 		16,
+ 		name,
+ 		nb_mbufs,
+-		MBUF_SIZE,
++		mbuf_sz,
+ 		sizeof(struct rte_mbuf),
+ 		sizeof(struct rte_mempool),
+-		(((nb_mbufs * (MBUF_SIZE + sizeof(struct rte_mbuf)) +
++		(((nb_mbufs * (mbuf_sz + sizeof(struct rte_mbuf)) +
+ 		   sizeof(struct rte_mempool))) + 1023) / 1024,
+ 		RTE_PKTMBUF_HEADROOM,
+ 		RTE_MBUF_DEFAULT_BUF_SIZE);
+ 	pktgen.mem_used += ((nb_mbufs *
+-		(MBUF_SIZE + sizeof(struct rte_mbuf)) +
++		(mbuf_sz + sizeof(struct rte_mbuf)) +
+ 		sizeof(struct rte_mempool)));
+ 	pktgen.total_mem_used += ((nb_mbufs *
+-		(MBUF_SIZE + sizeof(struct rte_mbuf)) +
++		(mbuf_sz + sizeof(struct rte_mbuf)) +
+ 		sizeof(struct rte_mempool)));
+ 
+ 	/* create the mbuf pool */
+ 	mp = rte_pktmbuf_pool_create(name, nb_mbufs, cache_size,
+-		DEFAULT_PRIV_SIZE, MBUF_SIZE, socket_id);
++		DEFAULT_PRIV_SIZE, mbuf_sz, socket_id);
+ 	if (mp == NULL)
+ 		pktgen_log_panic(
+ 			"Cannot create mbuf pool (%s) port %d, queue %d, nb_mbufs %d, socket_id %d: %s",
+@@ -250,7 +252,7 @@ pktgen_config_ports(void)
+ 	pktgen_log_info(
+ 		"Configuring %d ports, MBUF Size %d, MBUF Cache Size %d",
+ 		pktgen.nb_ports,
+-		MBUF_SIZE,
++		(pktgen.flags & MTU9K_SUPPORT_FLAG) ? MBUF_9K_SIZE : MBUF_SIZE,
+ 		MBUF_CACHE_SIZE);
+ 
+ 	/* For each lcore setup each port that is handled by that lcore. */
+diff --git a/app/pktgen-range.c b/app/pktgen-range.c
+index e59ae01..36b5924 100644
+--- a/app/pktgen-range.c
++++ b/app/pktgen-range.c
+@@ -568,7 +568,8 @@ pktgen_range_setup(port_info_t *info)
+ 	range->pkt_size     = MIN_PKT_SIZE;
+ 	range->pkt_size_inc = 0;
+ 	range->pkt_size_min = MIN_PKT_SIZE;
+-	range->pkt_size_max = MAX_PKT_SIZE;
++	range->pkt_size_max = (pktgen.flags & MTU9K_SUPPORT_FLAG) ?
++			      MAX_PKT_SIZE : (ETHER_MAX_LEN - ETHER_CRC_LEN);
+ 
+ 	info->seq_pkt[RANGE_PKT].pktSize = MIN_PKT_SIZE;
+ 
+diff --git a/app/pktgen.c b/app/pktgen.c
+index dd1a93a..68579b1 100644
+--- a/app/pktgen.c
++++ b/app/pktgen.c
+@@ -273,7 +273,7 @@ _send_burst_fast(port_info_t *info, uint16_t qid)
+ 
+ 	pkts    = mtab->m_table;
+ 
+-	retry = 100;
++	retry = 100000;
+ 	if (rte_atomic32_read(&info->port_flags) & PROCESS_TX_TAP_PKTS)
+ 		while (cnt && retry) {
+ 			ret = rte_eth_tx_burst(info->pid, qid, pkts, cnt);
+@@ -294,6 +294,8 @@ _send_burst_fast(port_info_t *info, uint16_t qid)
+ 			if (!ret)
+ 				retry--;
+ 		}
++	if(cnt)
++		rte_pktmbuf_free_bulk(pkts, cnt);
+ }
+ 
+ /**************************************************************************//**
+@@ -880,6 +882,9 @@ pktgen_setup_cb(struct rte_mempool *mp,
+ 	port_info_t *info;
+ 	pkt_seq_t *pkt;
+ 	uint16_t qid;
++	uint32_t pktsize = (pktgen.flags & MTU9K_SUPPORT_FLAG) ?
++			   MAX_PKT_SIZE:
++			   (ETHER_MAX_LEN - ETHER_CRC_LEN);
+ 
+ 	info = data->info;
+ 	qid = data->qid;
+@@ -898,7 +903,7 @@ pktgen_setup_cb(struct rte_mempool *mp,
+ 		pktgen_packet_ctor(info, SINGLE_PKT, -1);
+ 
+ 		rte_memcpy((uint8_t *)m->buf_addr + m->data_off,
+-			   (uint8_t *)&pkt->hdr, MAX_PKT_SIZE);
++			   (uint8_t *)&pkt->hdr, pktsize);
+ 
+ 		m->pkt_len  = pkt->pktSize;
+ 		m->data_len = pkt->pktSize;
+@@ -907,7 +912,7 @@ pktgen_setup_cb(struct rte_mempool *mp,
+ 		pktgen_packet_ctor(info, RANGE_PKT, -1);
+ 
+ 		rte_memcpy((uint8_t *)m->buf_addr + m->data_off,
+-			   (uint8_t *)&pkt->hdr, MAX_PKT_SIZE);
++			   (uint8_t *)&pkt->hdr, pktsize);
+ 
+ 		m->pkt_len  = pkt->pktSize;
+ 		m->data_len = pkt->pktSize;
+@@ -925,7 +930,7 @@ pktgen_setup_cb(struct rte_mempool *mp,
+ 					pktgen_packet_ctor(info, info->seqIdx, -1);
+ 
+ 					rte_memcpy((uint8_t *)m->buf_addr + m->data_off,
+-						   (uint8_t *)&pkt->hdr, MAX_PKT_SIZE);
++						   (uint8_t *)&pkt->hdr, pktsize);
+ 					m->pkt_len  = pkt->pktSize;
+ 					m->data_len = pkt->pktSize;
+ 					pkt = &info->seq_pkt[info->seqIdx];
+@@ -937,7 +942,7 @@ pktgen_setup_cb(struct rte_mempool *mp,
+ 			pktgen_packet_ctor(info, info->seqIdx, -1);
+ 
+ 			rte_memcpy((uint8_t *)m->buf_addr + m->data_off,
+-				   (uint8_t *)&pkt->hdr, MAX_PKT_SIZE);
++				   (uint8_t *)&pkt->hdr, pktsize);
+ 
+ 			m->pkt_len  = pkt->pktSize;
+ 			m->data_len = pkt->pktSize;
+@@ -1121,7 +1126,7 @@ pktgen_main_receive(port_info_t *info,
+ {
+ 	uint8_t pid;
+ 	uint16_t qid, nb_rx;
+-	capture_t *capture;
++	__rte_unused capture_t *capture;
+ 
+ 	pid = info->pid;
+ 	qid = get_rxque(pktgen.l2p, lid, pid);
+@@ -1133,7 +1138,10 @@ pktgen_main_receive(port_info_t *info,
+ 		return;
+ 
+ 	info->q[qid].rx_cnt += nb_rx;
++	info->sizes._64 += nb_rx;
+ 
++	rte_pktmbuf_free_bulk(pkts_burst, nb_rx);
++#if 0
+ 	pktgen_recv_latency(info, pkts_burst, nb_rx);
+ 
+ 	/* packets are not freed in the next call. */
+@@ -1150,6 +1158,7 @@ pktgen_main_receive(port_info_t *info,
+ 	}
+ 
+ 	rte_pktmbuf_free_bulk(pkts_burst, nb_rx);
++#endif
+ }
+ 
+ static void
+diff --git a/app/pktgen.h b/app/pktgen.h
+index f830c81..892875e 100644
+--- a/app/pktgen.h
++++ b/app/pktgen.h
+@@ -219,8 +219,9 @@ enum {
+ 	INTER_FRAME_GAP         = 12,	/**< in bytes */
+ 	PKT_PREAMBLE_SIZE       = 8,	/**< in bytes */
+ 	FCS_SIZE                = 4,	/**< in bytes */
++	MAX_9K_SIZE		= 9018,
+ 	MIN_PKT_SIZE            = (ETHER_MIN_LEN - FCS_SIZE),
+-	MAX_PKT_SIZE            = (ETHER_MAX_LEN - FCS_SIZE),
++	MAX_PKT_SIZE            = (MAX_9K_SIZE - FCS_SIZE),
+ 	MIN_v6_PKT_SIZE         = (78 - FCS_SIZE),
+ 
+ 	MAX_RX_QUEUES           = 16,	/**< RX Queues per port */
+@@ -314,6 +315,7 @@ enum {						/* Pktgen flags bits */
+ 	BLINK_PORTS_FLAG        = (1 << 10),	/**< Blink the port leds */
+ 	ENABLE_THEME_FLAG       = (1 << 11),	/**< Enable theme or color support */
+ 
++	MTU9K_SUPPORT_FLAG	= (1 << 15),	/**< MTU 9K support */
+ 	CONFIG_PAGE_FLAG        = (1 << 16),	/**< Display the configure page */
+ 	SEQUENCE_PAGE_FLAG      = (1 << 17),	/**< Display the Packet sequence page */
+ 	RANGE_PAGE_FLAG         = (1 << 18),	/**< Display the range page */
+-- 
+2.7.4
+
diff --git a/QDMA/DPDK/tools/README.txt b/QDMA/DPDK/tools/README.txt
new file mode 100644
index 0000000..d28800d
--- /dev/null
+++ b/QDMA/DPDK/tools/README.txt
@@ -0,0 +1,7 @@
+0001-PKTGEN-3.4.5-Patch-to-add-Jumbo-packet-support.patch is the patch file
+over dpdk-pktgen v3.4.7 that extends dpdk-pktgen application to handle packets
+with packet sizes more than 1518 bytes and it disables the packet size
+classification logic in dpdk-pktgen to remove application overhead in 
+performance measurement.
+
+This patch is used for performance testing with dpdk-pktgen application.
diff --git a/LICENSE b/QDMA/linux-kernel/COPYING
similarity index 95%
rename from LICENSE
rename to QDMA/linux-kernel/COPYING
index d159169..3912109 100644
--- a/LICENSE
+++ b/QDMA/linux-kernel/COPYING
@@ -1,12 +1,12 @@
-                    GNU GENERAL PUBLIC LICENSE
-                       Version 2, June 1991
+		    GNU GENERAL PUBLIC LICENSE
+		       Version 2, June 1991
 
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+                       51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  Everyone is permitted to copy and distribute verbatim copies
  of this license document, but changing it is not allowed.
 
-                            Preamble
+			    Preamble
 
   The licenses for most software are designed to take away your
 freedom to share and change it.  By contrast, the GNU General Public
@@ -15,7 +15,7 @@ software--to make sure the software is free for all its users.  This
 General Public License applies to most of the Free Software
 Foundation's software and to any other program whose authors commit to
 using it.  (Some other Free Software Foundation software is covered by
-the GNU Lesser General Public License instead.)  You can apply it to
+the GNU Library General Public License instead.)  You can apply it to
 your programs, too.
 
   When we speak of free software, we are referring to freedom, not
@@ -55,8 +55,8 @@ patent must be licensed for everyone's free use or not licensed at all.
 
   The precise terms and conditions for copying, distribution and
 modification follow.
-
-                    GNU GENERAL PUBLIC LICENSE
+
+		    GNU GENERAL PUBLIC LICENSE
    TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
 
   0. This License applies to any program or other work which contains
@@ -110,7 +110,7 @@ above, provided that you also meet all of these conditions:
     License.  (Exception: if the Program itself is interactive but
     does not normally print such an announcement, your work based on
     the Program is not required to print an announcement.)
-
+
 These requirements apply to the modified work as a whole.  If
 identifiable sections of that work are not derived from the Program,
 and can be reasonably considered independent and separate works in
@@ -168,7 +168,7 @@ access to copy from a designated place, then offering equivalent
 access to copy the source code from the same place counts as
 distribution of the source code, even though third parties are not
 compelled to copy the source along with the object code.
-
+
   4. You may not copy, modify, sublicense, or distribute the Program
 except as expressly provided under this License.  Any attempt
 otherwise to copy, modify, sublicense or distribute the Program is
@@ -225,7 +225,7 @@ impose that choice.
 
 This section is intended to make thoroughly clear what is believed to
 be a consequence of the rest of this License.
-
+
   8. If the distribution and/or use of the Program is restricted in
 certain countries either by patents or by copyrighted interfaces, the
 original copyright holder who places the Program under this License
@@ -255,7 +255,7 @@ make exceptions for this.  Our decision will be guided by the two goals
 of preserving the free status of all derivatives of our free software and
 of promoting the sharing and reuse of software generally.
 
-                            NO WARRANTY
+			    NO WARRANTY
 
   11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
 FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
@@ -277,9 +277,9 @@ YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
 PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
 POSSIBILITY OF SUCH DAMAGES.
 
-                     END OF TERMS AND CONDITIONS
-
-            How to Apply These Terms to Your New Programs
+		     END OF TERMS AND CONDITIONS
+
+	    How to Apply These Terms to Your New Programs
 
   If you develop a new program, and you want it to be of the greatest
 possible use to the public, the best way to achieve this is to make it
@@ -303,9 +303,10 @@ the "copyright" line and a pointer to where the full notice is found.
     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     GNU General Public License for more details.
 
-    You should have received a copy of the GNU General Public License along
-    with this program; if not, write to the Free Software Foundation, Inc.,
-    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+    You should have received a copy of the GNU General Public License
+    along with this program; if not, write to the Free Software
+    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+
 
 Also add information on how to contact you by electronic and paper mail.
 
@@ -335,5 +336,5 @@ necessary.  Here is a sample; alter the names:
 This General Public License does not permit incorporating your program into
 proprietary programs.  If your program is a subroutine library, you may
 consider it more useful to permit linking proprietary applications with the
-library.  If this is what you want to do, use the GNU Lesser General
+library.  If this is what you want to do, use the GNU Library General
 Public License instead of this License.
diff --git a/QDMA/linux-kernel/LICENSE b/QDMA/linux-kernel/LICENSE
new file mode 100644
index 0000000..703e647
--- /dev/null
+++ b/QDMA/linux-kernel/LICENSE
@@ -0,0 +1,30 @@
+BSD License
+
+For Xilinx DMA IP software
+
+Copyright (c) 2016-present, Xilinx, Inc. All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+ * Redistributions of source code must retain the above copyright notice, this
+   list of conditions and the following disclaimer.
+
+ * Redistributions in binary form must reproduce the above copyright notice,
+   this list of conditions and the following disclaimer in the documentation
+   and/or other materials provided with the distribution.
+
+ * Neither the name Xilinx nor the names of its contributors may be used to
+   endorse or promote products derived from this software without specific
+   prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
+ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/QDMA/linux-kernel/Makefile b/QDMA/linux-kernel/Makefile
new file mode 100644
index 0000000..40a2cfe
--- /dev/null
+++ b/QDMA/linux-kernel/Makefile
@@ -0,0 +1,307 @@
+SHELL = /bin/bash
+
+#
+# makefile parameters:
+# - KDIR/KSRC/KOBJ=, optional
+# - install_path=,			override all install directories
+# - kernel_install_path=,	override install directory for kernel module
+# - dev_install_path=,		override install directory for development headers
+# - user_install_path=,		override install directory for applications
+# - conf_install_path=,		override install directory for config files
+# - udev_install_path=,		override install directory for udev rules
+# - docs_install_path=,		override install directory for man pages
+#
+# - enable_cmpt_immediate_data=<0|1>	enable immediate data in writeback desc.
+# - disable_st_c2h_completion=<0|1>	disable completion
+#
+
+# Define grep error output to NULL, since -s is not portable.
+grep = grep 2>/dev/null
+
+# ALL subdirectories
+ALLSUBDIRS := drv
+DRIVER_SRC_DIR := drv
+
+# subdirectories to be build
+SUBDIRS := $(ALLSUBDIRS)
+
+# Honor the -s (silent) make option.
+verbose := $(if $(filter s,$(MAKEFLAGS)),,-v)
+
+# Define paths.
+srcdir := $(shell pwd)
+topdir := $(shell cd $(srcdir)/.. && pwd)
+build_dir := $(srcdir)/build
+
+kernel_check = 1
+distro_check = 1
+
+ifeq ($(filter clean,$(MAKECMDGOALS)),clean)
+  kernel_check = 0
+  distro_check = 0
+endif
+
+ifeq ($(filter uninstall,$(MAKECMDGOALS)),uninstall)
+  distro_check = 0
+endif
+
+ifeq ($(kernel_check),1)
+  include make/kernel_check.mk
+
+  ifeq ($(distro_check),1)
+    include make/distro_check.mk
+  endif
+endif
+
+ifneq ($(wildcard $(KINC)/linux/kconfig.h),)
+  FLAGS += -DKERNEL_HAS_KCONFIG_H
+endif
+ifneq ($(wildcard $(KINC)/linux/export.h),)
+  FLAGS += -DKERNEL_HAS_EXPORT_H
+endif
+
+# Debug flags.
+ifeq ($(DEBUG),1)
+  FLAGS += -g -DDEBUG
+endif
+
+# Debugfs flags
+ifneq ($(DEBUGFS),0)
+  FLAGS += -DDEBUGFS
+endif
+
+# LOOPBACK flags.
+ifeq ($(LOOPBACK),1)
+  FLAGS += -DLOOPBACK_TEST
+endif
+
+ifeq ($(DEBUG_THREADS),1)
+  FLAGS += -DDEBUG -DDEBUG_THREADS
+endif
+ 
+ifeq ($(enable_cmpt_immediate_data),1)
+	FLAGS += -DXNL_IMM_DATA_EN
+endif
+
+ifeq ($(disable_st_c2h_completion),1)
+	FLAGS += -DXMP_DISABLE_ST_C2H_CMPL
+endif
+
+# LOOPBACK flags.
+ifeq ($(TEST_64B_DESC_BYPASS),1)
+  FLAGS += -DTEST_64B_DESC_BYPASS_FEATURE
+endif
+
+ifeq ($(ERR_DEBUG),1)
+  EXTRA_FLAGS += -DERR_DEBUG
+#  FLAGS += -DERR_DEBUG
+  export EXTRA_FLAGS
+endif
+
+# Don't allow ARCH to overwrite the modified variable when passed to
+# the sub-makes.
+MAKEOVERRIDES := $(filter-out ARCH=%,$(MAKEOVERRIDES))
+# Don't allow CFLAGS/EXTRA_CFLAGS to clobber definitions in sub-make.
+MAKEOVERRIDES := $(filter-out CFLAGS=%,$(MAKEOVERRIDES))
+MAKEOVERRIDES := $(filter-out EXTRA_CFLAGS=%,$(MAKEOVERRIDES))
+
+# Exports.
+export grep
+export srcdir
+export topdir
+export build_dir
+export KERNELRELEASE
+export KSRC
+export KOBJ
+export KINC
+# arm64 specific fix to include <ksrc>/arch/<karch> folder properly.
+# This hack is motivated by the RHEL7.X/CentOS7.X release where the
+# uname Architecture is indicated as "aarch64" but the real Architecture
+# source directory is "arm64"
+ifeq ($(ARCH),aarch64)
+  ifeq ($(wildcard $(KOBJ)/arch/$(ARCH)/Makefile),)
+    override MAKECMDGOALS = $(MAKECMDGOALS) "ARCH=arm64"
+  else
+    export ARCH
+  endif
+else
+  export ARCH
+endif
+export FLAGS
+#export FLAGS += $(CFLAGS) $(EXTRA_CFLAGS) $(CPPFLAGS)
+export verbose
+export utsrelease
+export kversions
+export kseries
+export modulesymfile
+
+export enable_xvc
+
+# evaluate install paths
+ifeq ($(install_path),)
+	# defaults
+	kernel_install_path ?= $(PREFIX)/lib/modules/$(utsrelease)/updates/kernel/drivers/qdma
+	dev_install_path ?= /usr/local/include/qdma
+	user_install_path ?= /usr/local/sbin
+	conf_install_path ?= /etc/xilinx-dma
+	udev_install_path ?= /etc/udev/rules.d
+	docs_install_path ?= /usr/share/man/man8
+else # bundled install
+	kernel_install_path ?= $(install_path)/modules
+	dev_install_path ?= $(install_path)/include/qdma
+	user_install_path ?= $(install_path)/bin
+	conf_install_path ?= $(install_path)/etc
+	udev_install_path ?= $(install_path)/etc
+	docs_install_path ?= $(install_path)/doc
+endif
+
+$(shell rm -f $(srcdir)/drv/libqdma; ln -fs $(srcdir)/libqdma $(srcdir)/drv;)
+
+.PHONY: eval.mak
+
+.PHONY: default
+default: user tools mod_pf mod_vf post
+
+.PHONY: pf 
+pf: user mod_pf
+
+.PHONY: vf 
+vf: user mod_vf
+
+.PHONY: mods
+mod: mod_pf mod_vf 
+
+.PHONY: install
+install: install-mods install-user install-etc install-dev
+
+.PHONY: uninstall
+uninstall: uninstall-mod uninstall-user uninstall-dev
+
+.PHONY: user
+user:
+	@echo "#######################";
+	@echo "####  user        ####";
+	@echo "#######################";
+	$(MAKE) -C user
+
+.PHONY: tools
+tools:
+	@echo "#######################";
+	@echo "####  tools        ####";
+	@echo "#######################";
+	$(MAKE) -C tools
+
+.PHONY: mod_pf
+mod_pf:
+	@if [ -n "$(verbose)" ]; then \
+	   echo "#######################";\
+	   printf "#### PF %-8s%5s####\n" $(DRIVER_SRC_DIR);\
+	   echo "#######################";\
+	 fi;
+	@drvdir=$(shell pwd)/$(DRIVER_SRC_DIR) $(MAKE) VF=0 -C $(DRIVER_SRC_DIR);
+
+.PHONY: mod_vf
+mod_vf:
+	@if [ -n "$(verbose)" ]; then \
+	   echo "#######################";\
+	   printf "#### VF %-8s%5s####\n" $(DRIVER_SRC_DIR);\
+	   echo "#######################";\
+	 fi;
+	@drvdir=$(shell pwd)/$(DRIVER_SRC_DIR) $(MAKE) VF=1 -C $(DRIVER_SRC_DIR);
+
+.PHONY: post
+post:
+	@if [ -n "$(post_msg)" ]; then \
+	   echo -e "\nWARNING:\n $(post_msg)";\
+	 fi;
+
+.PHONY: clean
+clean:
+	@echo "#######################";
+	@echo "####  user         ####";
+	@echo "#######################";
+	$(MAKE) -C user clean;
+	@echo "#######################";
+	@echo "####  tools        ####";
+	@echo "#######################";
+	$(MAKE) -C tools clean;
+	@for dir in $(ALLSUBDIRS); do \
+	   echo "#######################";\
+	   printf "####  %-8s%5s####\n" $$dir;\
+	   echo "#######################";\
+	  drvdir=$(shell pwd)/$$dir $(MAKE) -C $$dir clean;\
+	done;
+	@-/bin/rm -f *.symvers eval.mak 2>/dev/null;
+
+.PHONY: install-mods
+install-mods:
+	@echo "installing kernel modules to $(kernel_install_path) ..."
+	@mkdir -p -m 755 $(kernel_install_path)
+	@install -v -m 644 $(build_dir)/*.ko $(kernel_install_path)
+	@depmod -a || true
+
+
+.PHONY: install-user
+install-user:
+	@echo "installing user tools to $(user_install_path) ..."
+	@mkdir -p -m 755 $(user_install_path)
+	@install -v -m 755 build/dmactl* $(user_install_path)
+	@install -v -m 755 tools/dma_from_device $(user_install_path)
+	@install -v -m 755 tools/dma_to_device $(user_install_path)
+	@install -v -m 755 tools/dmautils $(user_install_path)
+	@echo "MAN PAGES:"
+	@mkdir -p -m 755 $(docs_install_path)
+	@install -v -m 644 docs/dmactl.8.gz $(docs_install_path)
+
+.PHONY: install-dev
+install-dev:
+	@echo "installing development headers to $(dev_install_path) ..."
+	@mkdir -p -m 755 $(dev_install_path)
+	@install -v -m 755 include/* $(dev_install_path)
+
+.PHONY: install-etc
+install-etc:
+	@echo "install Xilinx DMA udev rules:"
+	@mkdir -p -m 755 $(udev_install_path)
+	@if [ ! -d "$(udev_install_path)/30-qdma.rules" ]; then \
+		install -v -m 644 etc/30-qdma.rules $(udev_install_path); \
+	fi;
+
+.PHONY: uninstall-mod
+uninstall-mod:
+	@echo "Un-installing $(kernel_install_path) ..."
+	@/bin/rm -rf $(kernel_install_path)/*
+	@depmod -a
+
+.PHONY: uninstall-user
+uninstall-user:
+	@echo "Un-installing user tools under $(user_install_path) ..."
+	@/bin/rm -f $(user_install_path)/dmactl
+	@/bin/rm -f $(user_install_path)/dma_from_device
+	@/bin/rm -f $(user_install_path)/dma_to_device
+	@/bin/rm -f $(user_install_path)/dmautils
+
+.PHONY: uninstall-dev
+uninstall-dev:
+	@echo "Un-installing development headers under $(dev_install_path) ..."
+	@/bin/rm -r $(dev_install_path)
+
+.PHONY: help
+help:
+	@echo "Build Targets:";\
+	 echo " install             - Installs all compiled drivers.";\
+	 echo " uninstall           - Uninstalls drivers.";\
+	 echo " clean               - Removes all generated files.";\
+	 echo;\
+	 echo "Build Options:";\
+	 echo " KOBJ=<path>         - Kernel build (object) path.";\
+	 echo " KSRC=<path>         - Kernel source path.";\
+	 echo "                     - Note: When using KSRC or KOBJ, both";\
+	 echo "                             variables must be specified.";\
+	 echo " KDIR=<path>         - Kernel build and source path. Shortcut";\
+	 echo "                       for KOBJ=KSRC=<path>.";\
+	 echo " kernel_install_path=<path>";\
+	 echo "                     - kernel module install path.";\
+	 echo " user_install_path=<path>";\
+	 echo "                     - user cli tool install path.";\
+	 ech_;
diff --git a/QDMA/linux-kernel/README b/QDMA/linux-kernel/README
new file mode 120000
index 0000000..a90f4af
--- /dev/null
+++ b/QDMA/linux-kernel/README
@@ -0,0 +1 @@
+docs/README
\ No newline at end of file
diff --git a/QDMA/linux-kernel/RELEASE b/QDMA/linux-kernel/RELEASE
new file mode 100644
index 0000000..f9cce48
--- /dev/null
+++ b/QDMA/linux-kernel/RELEASE
@@ -0,0 +1,72 @@
+Release: 2018.3
+===========================
+
+NOTE:
+	This release is based on the 2018.3 QDMA design
+
+	Performance benchmark numbers are captured in perforamcne report
+	for this version of driver and released along with the driver package
+
+	QDMA Linux driver is supported in auto mode by default
+	(refer to 2018.3 Features below for more details on auto mode)
+	
+	QDMA 2018.3 Linux driver is not backaward compatible with 2018.2 IP
+
+
+DRIVER LIMITATIONS:
+===================
+- Driver compilation on Fedora 28 with gcc8.1 results compilation warnings
+
+SUPPORTED FEATURES:
+===================
+- Support for both the AXI4 Memory Mapped(MM) and AXI4 Streaming(ST) Interfaces
+- 2048 Queue Sets
+	- 2048 H2C Descriptor Rings
+	- 2048 C2H Descriptor Rings
+	- 2048 C2H Completion Rings
+- Supports Polling Mode
+- Interrupts
+	- 2048 MSI-X Vectors
+	- Up to 8 MSI-X per Function
+	- Interrupt Aggregation
+	- User Interrupts
+	- Error Interrupts
+- C2H Stream Completion queue entry coalescing
+- Supports SR-IOV with upto 4 Physical Functions(PF) and 252 Virtual Functions(VF)
+- Allows only Privileged/Physical functions to program the contexts & registers
+- Function Level Reset(FLR) Support
+- Mailbox Support
+- Descriptor bypass(8,16,32 descriptor sizes)
+- Descriptor Prefetching
+- Asynchronous and Synchronous IO support
+- ST H2C to C2H and C2H to H2C loopback support
+- Driver configuration through sysfs
+- Zero byte transfer support
+- Dynamic queue configuration
+- Dynamic driver configuration
+
+2018.3 Features:
+- Auto mode support for PF & VF driver
+	- MM and ST H2C requests are services in poll mode
+	- ST C2H is services in Interrupt Aggregation mode
+- Support 64B descriptor format in byapss mode
+- Support for Completion queue descriptors of 64 bytes size
+- Support flexible BAR mapping for QDMA configuration register space
+- Indirect programming of FMAP registers
+- Support disabling overflow check in completion ring
+- Version for SW and HW
+- ECC Support
+- Flexible interrupt allocation between PF/VF 
+- Greater than 32 vectors per function
+- Legacy Interrupt Support
+- VF driver support in direct and indirect interrupt mode
+
+
+KNOWN ISSUES:
+=============
+- Occasionally, C2H completions are not observed when 
+	payload and immediate data transfers are combined
+- In the Host only mode, When VFs are loaded in mixed interrupt mode(i.e
+	some VFs are in direct interrupt mode and some VFs are in indirect
+	interrupt mode),C2H completions are not observed for the VF with direct
+	mode interrupt which follows a VF with indirect interrupt mode
diff --git a/QDMA/linux-kernel/docs/Doxyfile b/QDMA/linux-kernel/docs/Doxyfile
new file mode 100644
index 0000000..fbf5b44
--- /dev/null
+++ b/QDMA/linux-kernel/docs/Doxyfile
@@ -0,0 +1,2443 @@
+# Doxyfile 1.8.11
+
+# This file describes the settings to be used by the documentation system
+# doxygen (www.doxygen.org) for a project.
+#
+# All text after a double hash (##) is considered a comment and is placed in
+# front of the TAG it is preceding.
+#
+# All text after a single hash (#) is considered a comment and will be ignored.
+# The format is:
+# TAG = value [value, ...]
+# For lists, items can also be appended using:
+# TAG += value [value, ...]
+# Values that contain spaces should be placed between quotes (\" \").
+
+#---------------------------------------------------------------------------
+# Project related configuration options
+#---------------------------------------------------------------------------
+
+# This tag specifies the encoding used for all characters in the config file
+# that follow. The default is UTF-8 which is also the encoding used for all text
+# before the first occurrence of this tag. Doxygen uses libiconv (or the iconv
+# built into libc) for the transcoding. See http://www.gnu.org/software/libiconv
+# for the list of possible encodings.
+# The default value is: UTF-8.
+
+DOXYFILE_ENCODING      = UTF-8
+
+# The PROJECT_NAME tag is a single word (or a sequence of words surrounded by
+# double-quotes, unless you are using Doxywizard) that should identify the
+# project for which the documentation is generated. This name is used in the
+# title of most generated pages and in a few other places.
+# The default value is: My Project.
+
+PROJECT_NAME           = "Linux QDMA Driver"
+
+# The PROJECT_NUMBER tag can be used to enter a project or revision number. This
+# could be handy for archiving the generated documentation or if some version
+# control system is used.
+
+PROJECT_NUMBER         = 2000-0142
+
+# Using the PROJECT_BRIEF tag one can provide an optional one line description
+# for a project that appears at the top of each page and should give viewer a
+# quick idea about the purpose of the project. Keep the description short.
+
+PROJECT_BRIEF          = API
+
+# With the PROJECT_LOGO tag one can specify a logo or an icon that is included
+# in the documentation. The maximum height of the logo should not exceed 55
+# pixels and the maximum width should not exceed 200 pixels. Doxygen will copy
+# the logo to the output directory.
+
+PROJECT_LOGO           = 
+
+# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path
+# into which the generated documentation will be written. If a relative path is
+# entered, it will be relative to the location where doxygen was started. If
+# left blank the current directory will be used.
+
+OUTPUT_DIRECTORY       = qdma
+
+# If the CREATE_SUBDIRS tag is set to YES then doxygen will create 4096 sub-
+# directories (in 2 levels) under the output directory of each output format and
+# will distribute the generated files over these directories. Enabling this
+# option can be useful when feeding doxygen a huge amount of source files, where
+# putting all generated files in the same directory would otherwise causes
+# performance problems for the file system.
+# The default value is: NO.
+
+CREATE_SUBDIRS         = NO
+
+# If the ALLOW_UNICODE_NAMES tag is set to YES, doxygen will allow non-ASCII
+# characters to appear in the names of generated files. If set to NO, non-ASCII
+# characters will be escaped, for example _xE3_x81_x84 will be used for Unicode
+# U+3044.
+# The default value is: NO.
+
+ALLOW_UNICODE_NAMES    = NO
+
+# The OUTPUT_LANGUAGE tag is used to specify the language in which all
+# documentation generated by doxygen is written. Doxygen will use this
+# information to generate all constant output in the proper language.
+# Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Catalan, Chinese,
+# Chinese-Traditional, Croatian, Czech, Danish, Dutch, English (United States),
+# Esperanto, Farsi (Persian), Finnish, French, German, Greek, Hungarian,
+# Indonesian, Italian, Japanese, Japanese-en (Japanese with English messages),
+# Korean, Korean-en (Korean with English messages), Latvian, Lithuanian,
+# Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese, Romanian, Russian,
+# Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish, Swedish, Turkish,
+# Ukrainian and Vietnamese.
+# The default value is: English.
+
+OUTPUT_LANGUAGE        = English
+
+# If the BRIEF_MEMBER_DESC tag is set to YES, doxygen will include brief member
+# descriptions after the members that are listed in the file and class
+# documentation (similar to Javadoc). Set to NO to disable this.
+# The default value is: YES.
+
+BRIEF_MEMBER_DESC      = NO
+
+# If the REPEAT_BRIEF tag is set to YES, doxygen will prepend the brief
+# description of a member or function before the detailed description
+#
+# Note: If both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
+# brief descriptions will be completely suppressed.
+# The default value is: YES.
+
+REPEAT_BRIEF           = YES
+
+# This tag implements a quasi-intelligent brief description abbreviator that is
+# used to form the text in various listings. Each string in this list, if found
+# as the leading text of the brief description, will be stripped from the text
+# and the result, after processing the whole list, is used as the annotated
+# text. Otherwise, the brief description is used as-is. If left blank, the
+# following values are used ($name is automatically replaced with the name of
+# the entity):The $name class, The $name widget, The $name file, is, provides,
+# specifies, contains, represents, a, an and the.
+
+ABBREVIATE_BRIEF       = "The $name class" \
+                         "The $name widget" \
+                         "The $name file" \
+                         is \
+                         provides \
+                         specifies \
+                         contains \
+                         represents \
+                         a \
+                         an \
+                         the
+
+# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
+# doxygen will generate a detailed section even if there is only a brief
+# description.
+# The default value is: NO.
+
+ALWAYS_DETAILED_SEC    = NO
+
+# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all
+# inherited members of a class in the documentation of that class as if those
+# members were ordinary class members. Constructors, destructors and assignment
+# operators of the base classes will not be shown.
+# The default value is: NO.
+
+INLINE_INHERITED_MEMB  = NO
+
+# If the FULL_PATH_NAMES tag is set to YES, doxygen will prepend the full path
+# before files name in the file list and in the header files. If set to NO the
+# shortest path that makes the file name unique will be used
+# The default value is: YES.
+
+FULL_PATH_NAMES        = NO
+
+# The STRIP_FROM_PATH tag can be used to strip a user-defined part of the path.
+# Stripping is only done if one of the specified strings matches the left-hand
+# part of the path. The tag can be used to show relative paths in the file list.
+# If left blank the directory from which doxygen is run is used as the path to
+# strip.
+#
+# Note that you can specify absolute paths here, but also relative paths, which
+# will be relative from the directory where doxygen is started.
+# This tag requires that the tag FULL_PATH_NAMES is set to YES.
+
+STRIP_FROM_PATH        = 
+
+# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the
+# path mentioned in the documentation of a class, which tells the reader which
+# header file to include in order to use a class. If left blank only the name of
+# the header file containing the class definition is used. Otherwise one should
+# specify the list of include paths that are normally passed to the compiler
+# using the -I flag.
+
+STRIP_FROM_INC_PATH    = 
+
+# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but
+# less readable) file names. This can be useful is your file systems doesn't
+# support long names like on DOS, Mac, or CD-ROM.
+# The default value is: NO.
+
+SHORT_NAMES            = NO
+
+# If the JAVADOC_AUTOBRIEF tag is set to YES then doxygen will interpret the
+# first line (until the first dot) of a Javadoc-style comment as the brief
+# description. If set to NO, the Javadoc-style will behave just like regular Qt-
+# style comments (thus requiring an explicit @brief command for a brief
+# description.)
+# The default value is: NO.
+
+JAVADOC_AUTOBRIEF      = NO
+
+# If the QT_AUTOBRIEF tag is set to YES then doxygen will interpret the first
+# line (until the first dot) of a Qt-style comment as the brief description. If
+# set to NO, the Qt-style will behave just like regular Qt-style comments (thus
+# requiring an explicit \brief command for a brief description.)
+# The default value is: NO.
+
+QT_AUTOBRIEF           = NO
+
+# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make doxygen treat a
+# multi-line C++ special comment block (i.e. a block of //! or /// comments) as
+# a brief description. This used to be the default behavior. The new default is
+# to treat a multi-line C++ comment block as a detailed description. Set this
+# tag to YES if you prefer the old behavior instead.
+#
+# Note that setting this tag to YES also means that rational rose comments are
+# not recognized any more.
+# The default value is: NO.
+
+MULTILINE_CPP_IS_BRIEF = NO
+
+# If the INHERIT_DOCS tag is set to YES then an undocumented member inherits the
+# documentation from any documented member that it re-implements.
+# The default value is: YES.
+
+INHERIT_DOCS           = YES
+
+# If the SEPARATE_MEMBER_PAGES tag is set to YES then doxygen will produce a new
+# page for each member. If set to NO, the documentation of a member will be part
+# of the file/class/namespace that contains it.
+# The default value is: NO.
+
+SEPARATE_MEMBER_PAGES  = NO
+
+# The TAB_SIZE tag can be used to set the number of spaces in a tab. Doxygen
+# uses this value to replace tabs by spaces in code fragments.
+# Minimum value: 1, maximum value: 16, default value: 4.
+
+TAB_SIZE               = 4
+
+# This tag can be used to specify a number of aliases that act as commands in
+# the documentation. An alias has the form:
+# name=value
+# For example adding
+# "sideeffect=@par Side Effects:\n"
+# will allow you to put the command \sideeffect (or @sideeffect) in the
+# documentation, which will result in a user-defined paragraph with heading
+# "Side Effects:". You can put \n's in the value part of an alias to insert
+# newlines.
+
+ALIASES                = 
+
+# This tag can be used to specify a number of word-keyword mappings (TCL only).
+# A mapping has the form "name=value". For example adding "class=itcl::class"
+# will allow you to use the command class in the itcl::class meaning.
+
+TCL_SUBST              = 
+
+# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources
+# only. Doxygen will then generate output that is more tailored for C. For
+# instance, some of the names that are used will be different. The list of all
+# members will be omitted, etc.
+# The default value is: NO.
+
+OPTIMIZE_OUTPUT_FOR_C  = YES
+
+# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java or
+# Python sources only. Doxygen will then generate output that is more tailored
+# for that language. For instance, namespaces will be presented as packages,
+# qualified scopes will look different, etc.
+# The default value is: NO.
+
+OPTIMIZE_OUTPUT_JAVA   = NO
+
+# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran
+# sources. Doxygen will then generate output that is tailored for Fortran.
+# The default value is: NO.
+
+OPTIMIZE_FOR_FORTRAN   = NO
+
+# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL
+# sources. Doxygen will then generate output that is tailored for VHDL.
+# The default value is: NO.
+
+OPTIMIZE_OUTPUT_VHDL   = NO
+
+# Doxygen selects the parser to use depending on the extension of the files it
+# parses. With this tag you can assign which parser to use for a given
+# extension. Doxygen has a built-in mapping, but you can override or extend it
+# using this tag. The format is ext=language, where ext is a file extension, and
+# language is one of the parsers supported by doxygen: IDL, Java, Javascript,
+# C#, C, C++, D, PHP, Objective-C, Python, Fortran (fixed format Fortran:
+# FortranFixed, free formatted Fortran: FortranFree, unknown formatted Fortran:
+# Fortran. In the later case the parser tries to guess whether the code is fixed
+# or free formatted code, this is the default for Fortran type files), VHDL. For
+# instance to make doxygen treat .inc files as Fortran files (default is PHP),
+# and .f files as C (default is Fortran), use: inc=Fortran f=C.
+#
+# Note: For files without extension you can use no_extension as a placeholder.
+#
+# Note that for custom extensions you also need to set FILE_PATTERNS otherwise
+# the files are not read by doxygen.
+
+EXTENSION_MAPPING      = 
+
+# If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments
+# according to the Markdown format, which allows for more readable
+# documentation. See http://daringfireball.net/projects/markdown/ for details.
+# The output of markdown processing is further processed by doxygen, so you can
+# mix doxygen, HTML, and XML commands with Markdown formatting. Disable only in
+# case of backward compatibilities issues.
+# The default value is: YES.
+
+MARKDOWN_SUPPORT       = YES
+
+# When enabled doxygen tries to link words that correspond to documented
+# classes, or namespaces to their corresponding documentation. Such a link can
+# be prevented in individual cases by putting a % sign in front of the word or
+# globally by setting AUTOLINK_SUPPORT to NO.
+# The default value is: YES.
+
+AUTOLINK_SUPPORT       = YES
+
+# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want
+# to include (a tag file for) the STL sources as input, then you should set this
+# tag to YES in order to let doxygen match functions declarations and
+# definitions whose arguments contain STL classes (e.g. func(std::string);
+# versus func(std::string) {}). This also make the inheritance and collaboration
+# diagrams that involve STL classes more complete and accurate.
+# The default value is: NO.
+
+BUILTIN_STL_SUPPORT    = NO
+
+# If you use Microsoft's C++/CLI language, you should set this option to YES to
+# enable parsing support.
+# The default value is: NO.
+
+CPP_CLI_SUPPORT        = NO
+
+# Set the SIP_SUPPORT tag to YES if your project consists of sip (see:
+# http://www.riverbankcomputing.co.uk/software/sip/intro) sources only. Doxygen
+# will parse them like normal C++ but will assume all classes use public instead
+# of private inheritance when no explicit protection keyword is present.
+# The default value is: NO.
+
+SIP_SUPPORT            = NO
+
+# For Microsoft's IDL there are propget and propput attributes to indicate
+# getter and setter methods for a property. Setting this option to YES will make
+# doxygen to replace the get and set methods by a property in the documentation.
+# This will only work if the methods are indeed getting or setting a simple
+# type. If this is not the case, or you want to show the methods anyway, you
+# should set this option to NO.
+# The default value is: YES.
+
+IDL_PROPERTY_SUPPORT   = YES
+
+# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
+# tag is set to YES then doxygen will reuse the documentation of the first
+# member in the group (if any) for the other members of the group. By default
+# all members of a group must be documented explicitly.
+# The default value is: NO.
+
+DISTRIBUTE_GROUP_DOC   = NO
+
+# If one adds a struct or class to a group and this option is enabled, then also
+# any nested class or struct is added to the same group. By default this option
+# is disabled and one has to add nested compounds explicitly via \ingroup.
+# The default value is: NO.
+
+GROUP_NESTED_COMPOUNDS = NO
+
+# Set the SUBGROUPING tag to YES to allow class member groups of the same type
+# (for instance a group of public functions) to be put as a subgroup of that
+# type (e.g. under the Public Functions section). Set it to NO to prevent
+# subgrouping. Alternatively, this can be done per class using the
+# \nosubgrouping command.
+# The default value is: YES.
+
+SUBGROUPING            = YES
+
+# When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and unions
+# are shown inside the group in which they are included (e.g. using \ingroup)
+# instead of on a separate page (for HTML and Man pages) or section (for LaTeX
+# and RTF).
+#
+# Note that this feature does not work in combination with
+# SEPARATE_MEMBER_PAGES.
+# The default value is: NO.
+
+INLINE_GROUPED_CLASSES = NO
+
+# When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and unions
+# with only public data fields or simple typedef fields will be shown inline in
+# the documentation of the scope in which they are defined (i.e. file,
+# namespace, or group documentation), provided this scope is documented. If set
+# to NO, structs, classes, and unions are shown on a separate page (for HTML and
+# Man pages) or section (for LaTeX and RTF).
+# The default value is: NO.
+
+INLINE_SIMPLE_STRUCTS  = NO
+
+# When TYPEDEF_HIDES_STRUCT tag is enabled, a typedef of a struct, union, or
+# enum is documented as struct, union, or enum with the name of the typedef. So
+# typedef struct TypeS {} TypeT, will appear in the documentation as a struct
+# with name TypeT. When disabled the typedef will appear as a member of a file,
+# namespace, or class. And the struct will be named TypeS. This can typically be
+# useful for C code in case the coding convention dictates that all compound
+# types are typedef'ed and only the typedef is referenced, never the tag name.
+# The default value is: NO.
+
+TYPEDEF_HIDES_STRUCT   = NO
+
+# The size of the symbol lookup cache can be set using LOOKUP_CACHE_SIZE. This
+# cache is used to resolve symbols given their name and scope. Since this can be
+# an expensive process and often the same symbol appears multiple times in the
+# code, doxygen keeps a cache of pre-resolved symbols. If the cache is too small
+# doxygen will become slower. If the cache is too large, memory is wasted. The
+# cache size is given by this formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range
+# is 0..9, the default is 0, corresponding to a cache size of 2^16=65536
+# symbols. At the end of a run doxygen will report the cache usage and suggest
+# the optimal cache size from a speed point of view.
+# Minimum value: 0, maximum value: 9, default value: 0.
+
+LOOKUP_CACHE_SIZE      = 0
+
+#---------------------------------------------------------------------------
+# Build related configuration options
+#---------------------------------------------------------------------------
+
+# If the EXTRACT_ALL tag is set to YES, doxygen will assume all entities in
+# documentation are documented, even if no documentation was available. Private
+# class members and static file members will be hidden unless the
+# EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES.
+# Note: This will also disable the warnings about undocumented members that are
+# normally produced when WARNINGS is set to YES.
+# The default value is: NO.
+
+EXTRACT_ALL            = NO
+
+# If the EXTRACT_PRIVATE tag is set to YES, all private members of a class will
+# be included in the documentation.
+# The default value is: NO.
+
+EXTRACT_PRIVATE        = NO
+
+# If the EXTRACT_PACKAGE tag is set to YES, all members with package or internal
+# scope will be included in the documentation.
+# The default value is: NO.
+
+EXTRACT_PACKAGE        = NO
+
+# If the EXTRACT_STATIC tag is set to YES, all static members of a file will be
+# included in the documentation.
+# The default value is: NO.
+
+EXTRACT_STATIC         = NO
+
+# If the EXTRACT_LOCAL_CLASSES tag is set to YES, classes (and structs) defined
+# locally in source files will be included in the documentation. If set to NO,
+# only classes defined in header files are included. Does not have any effect
+# for Java sources.
+# The default value is: YES.
+
+EXTRACT_LOCAL_CLASSES  = YES
+
+# This flag is only useful for Objective-C code. If set to YES, local methods,
+# which are defined in the implementation section but not in the interface are
+# included in the documentation. If set to NO, only methods in the interface are
+# included.
+# The default value is: NO.
+
+EXTRACT_LOCAL_METHODS  = NO
+
+# If this flag is set to YES, the members of anonymous namespaces will be
+# extracted and appear in the documentation as a namespace called
+# 'anonymous_namespace{file}', where file will be replaced with the base name of
+# the file that contains the anonymous namespace. By default anonymous namespace
+# are hidden.
+# The default value is: NO.
+
+EXTRACT_ANON_NSPACES   = NO
+
+# If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all
+# undocumented members inside documented classes or files. If set to NO these
+# members will be included in the various overviews, but no documentation
+# section is generated. This option has no effect if EXTRACT_ALL is enabled.
+# The default value is: NO.
+
+HIDE_UNDOC_MEMBERS     = NO
+
+# If the HIDE_UNDOC_CLASSES tag is set to YES, doxygen will hide all
+# undocumented classes that are normally visible in the class hierarchy. If set
+# to NO, these classes will be included in the various overviews. This option
+# has no effect if EXTRACT_ALL is enabled.
+# The default value is: NO.
+
+HIDE_UNDOC_CLASSES     = NO
+
+# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend
+# (class|struct|union) declarations. If set to NO, these declarations will be
+# included in the documentation.
+# The default value is: NO.
+
+HIDE_FRIEND_COMPOUNDS  = NO
+
+# If the HIDE_IN_BODY_DOCS tag is set to YES, doxygen will hide any
+# documentation blocks found inside the body of a function. If set to NO, these
+# blocks will be appended to the function's detailed documentation block.
+# The default value is: NO.
+
+HIDE_IN_BODY_DOCS      = NO
+
+# The INTERNAL_DOCS tag determines if documentation that is typed after a
+# \internal command is included. If the tag is set to NO then the documentation
+# will be excluded. Set it to YES to include the internal documentation.
+# The default value is: NO.
+
+INTERNAL_DOCS          = NO
+
+# If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file
+# names in lower-case letters. If set to YES, upper-case letters are also
+# allowed. This is useful if you have classes or files whose names only differ
+# in case and if your file system supports case sensitive file names. Windows
+# and Mac users are advised to set this option to NO.
+# The default value is: system dependent.
+
+CASE_SENSE_NAMES       = NO
+
+# If the HIDE_SCOPE_NAMES tag is set to NO then doxygen will show members with
+# their full class and namespace scopes in the documentation. If set to YES, the
+# scope will be hidden.
+# The default value is: NO.
+
+HIDE_SCOPE_NAMES       = NO
+
+# If the HIDE_COMPOUND_REFERENCE tag is set to NO (default) then doxygen will
+# append additional text to a page's title, such as Class Reference. If set to
+# YES the compound reference will be hidden.
+# The default value is: NO.
+
+HIDE_COMPOUND_REFERENCE= NO
+
+# If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of
+# the files that are included by a file in the documentation of that file.
+# The default value is: YES.
+
+SHOW_INCLUDE_FILES     = YES
+
+# If the SHOW_GROUPED_MEMB_INC tag is set to YES then Doxygen will add for each
+# grouped member an include statement to the documentation, telling the reader
+# which file to include in order to use the member.
+# The default value is: NO.
+
+SHOW_GROUPED_MEMB_INC  = NO
+
+# If the FORCE_LOCAL_INCLUDES tag is set to YES then doxygen will list include
+# files with double quotes in the documentation rather than with sharp brackets.
+# The default value is: NO.
+
+FORCE_LOCAL_INCLUDES   = NO
+
+# If the INLINE_INFO tag is set to YES then a tag [inline] is inserted in the
+# documentation for inline members.
+# The default value is: YES.
+
+INLINE_INFO            = YES
+
+# If the SORT_MEMBER_DOCS tag is set to YES then doxygen will sort the
+# (detailed) documentation of file and class members alphabetically by member
+# name. If set to NO, the members will appear in declaration order.
+# The default value is: YES.
+
+SORT_MEMBER_DOCS       = NO
+
+# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief
+# descriptions of file, namespace and class members alphabetically by member
+# name. If set to NO, the members will appear in declaration order. Note that
+# this will also influence the order of the classes in the class list.
+# The default value is: NO.
+
+SORT_BRIEF_DOCS        = NO
+
+# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the
+# (brief and detailed) documentation of class members so that constructors and
+# destructors are listed first. If set to NO the constructors will appear in the
+# respective orders defined by SORT_BRIEF_DOCS and SORT_MEMBER_DOCS.
+# Note: If SORT_BRIEF_DOCS is set to NO this option is ignored for sorting brief
+# member documentation.
+# Note: If SORT_MEMBER_DOCS is set to NO this option is ignored for sorting
+# detailed member documentation.
+# The default value is: NO.
+
+SORT_MEMBERS_CTORS_1ST = NO
+
+# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the hierarchy
+# of group names into alphabetical order. If set to NO the group names will
+# appear in their defined order.
+# The default value is: NO.
+
+SORT_GROUP_NAMES       = NO
+
+# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be sorted by
+# fully-qualified names, including namespaces. If set to NO, the class list will
+# be sorted only by class name, not including the namespace part.
+# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
+# Note: This option applies only to the class list, not to the alphabetical
+# list.
+# The default value is: NO.
+
+SORT_BY_SCOPE_NAME     = NO
+
+# If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to do proper
+# type resolution of all parameters of a function it will reject a match between
+# the prototype and the implementation of a member function even if there is
+# only one candidate or it is obvious which candidate to choose by doing a
+# simple string match. By disabling STRICT_PROTO_MATCHING doxygen will still
+# accept a match between prototype and implementation in such cases.
+# The default value is: NO.
+
+STRICT_PROTO_MATCHING  = NO
+
+# The GENERATE_TODOLIST tag can be used to enable (YES) or disable (NO) the todo
+# list. This list is created by putting \todo commands in the documentation.
+# The default value is: YES.
+
+GENERATE_TODOLIST      = YES
+
+# The GENERATE_TESTLIST tag can be used to enable (YES) or disable (NO) the test
+# list. This list is created by putting \test commands in the documentation.
+# The default value is: YES.
+
+GENERATE_TESTLIST      = YES
+
+# The GENERATE_BUGLIST tag can be used to enable (YES) or disable (NO) the bug
+# list. This list is created by putting \bug commands in the documentation.
+# The default value is: YES.
+
+GENERATE_BUGLIST       = YES
+
+# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or disable (NO)
+# the deprecated list. This list is created by putting \deprecated commands in
+# the documentation.
+# The default value is: YES.
+
+GENERATE_DEPRECATEDLIST= YES
+
+# The ENABLED_SECTIONS tag can be used to enable conditional documentation
+# sections, marked by \if <section_label> ... \endif and \cond <section_label>
+# ... \endcond blocks.
+
+ENABLED_SECTIONS       = 
+
+# The MAX_INITIALIZER_LINES tag determines the maximum number of lines that the
+# initial value of a variable or macro / define can have for it to appear in the
+# documentation. If the initializer consists of more lines than specified here
+# it will be hidden. Use a value of 0 to hide initializers completely. The
+# appearance of the value of individual variables and macros / defines can be
+# controlled using \showinitializer or \hideinitializer command in the
+# documentation regardless of this setting.
+# Minimum value: 0, maximum value: 10000, default value: 30.
+
+MAX_INITIALIZER_LINES  = 30
+
+# Set the SHOW_USED_FILES tag to NO to disable the list of files generated at
+# the bottom of the documentation of classes and structs. If set to YES, the
+# list will mention the files that were used to generate the documentation.
+# The default value is: YES.
+
+SHOW_USED_FILES        = YES
+
+# Set the SHOW_FILES tag to NO to disable the generation of the Files page. This
+# will remove the Files entry from the Quick Index and from the Folder Tree View
+# (if specified).
+# The default value is: YES.
+
+SHOW_FILES             = YES
+
+# Set the SHOW_NAMESPACES tag to NO to disable the generation of the Namespaces
+# page. This will remove the Namespaces entry from the Quick Index and from the
+# Folder Tree View (if specified).
+# The default value is: YES.
+
+SHOW_NAMESPACES        = NO
+
+# The FILE_VERSION_FILTER tag can be used to specify a program or script that
+# doxygen should invoke to get the current version for each file (typically from
+# the version control system). Doxygen will invoke the program by executing (via
+# popen()) the command command input-file, where command is the value of the
+# FILE_VERSION_FILTER tag, and input-file is the name of an input file provided
+# by doxygen. Whatever the program writes to standard output is used as the file
+# version. For an example see the documentation.
+
+FILE_VERSION_FILTER    = 
+
+# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed
+# by doxygen. The layout file controls the global structure of the generated
+# output files in an output format independent way. To create the layout file
+# that represents doxygen's defaults, run doxygen with the -l option. You can
+# optionally specify a file name after the option, if omitted DoxygenLayout.xml
+# will be used as the name of the layout file.
+#
+# Note that if you run doxygen from a directory containing a file called
+# DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE
+# tag is left empty.
+
+LAYOUT_FILE            = 
+
+# The CITE_BIB_FILES tag can be used to specify one or more bib files containing
+# the reference definitions. This must be a list of .bib files. The .bib
+# extension is automatically appended if omitted. This requires the bibtex tool
+# to be installed. See also http://en.wikipedia.org/wiki/BibTeX for more info.
+# For LaTeX the style of the bibliography can be controlled using
+# LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the
+# search path. See also \cite for info how to create references.
+
+CITE_BIB_FILES         = 
+
+#---------------------------------------------------------------------------
+# Configuration options related to warning and progress messages
+#---------------------------------------------------------------------------
+
+# The QUIET tag can be used to turn on/off the messages that are generated to
+# standard output by doxygen. If QUIET is set to YES this implies that the
+# messages are off.
+# The default value is: NO.
+
+QUIET                  = NO
+
+# The WARNINGS tag can be used to turn on/off the warning messages that are
+# generated to standard error (stderr) by doxygen. If WARNINGS is set to YES
+# this implies that the warnings are on.
+#
+# Tip: Turn warnings on while writing the documentation.
+# The default value is: YES.
+
+WARNINGS               = YES
+
+# If the WARN_IF_UNDOCUMENTED tag is set to YES then doxygen will generate
+# warnings for undocumented members. If EXTRACT_ALL is set to YES then this flag
+# will automatically be disabled.
+# The default value is: YES.
+
+WARN_IF_UNDOCUMENTED   = YES
+
+# If the WARN_IF_DOC_ERROR tag is set to YES, doxygen will generate warnings for
+# potential errors in the documentation, such as not documenting some parameters
+# in a documented function, or documenting parameters that don't exist or using
+# markup commands wrongly.
+# The default value is: YES.
+
+WARN_IF_DOC_ERROR      = YES
+
+# This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that
+# are documented, but have no documentation for their parameters or return
+# value. If set to NO, doxygen will only warn about wrong or incomplete
+# parameter documentation, but not about the absence of documentation.
+# The default value is: NO.
+
+WARN_NO_PARAMDOC       = NO
+
+# If the WARN_AS_ERROR tag is set to YES then doxygen will immediately stop when
+# a warning is encountered.
+# The default value is: NO.
+
+WARN_AS_ERROR          = NO
+
+# The WARN_FORMAT tag determines the format of the warning messages that doxygen
+# can produce. The string should contain the $file, $line, and $text tags, which
+# will be replaced by the file and line number from which the warning originated
+# and the warning text. Optionally the format may contain $version, which will
+# be replaced by the version of the file (if it could be obtained via
+# FILE_VERSION_FILTER)
+# The default value is: $file:$line: $text.
+
+WARN_FORMAT            = "$file:$line: $text"
+
+# The WARN_LOGFILE tag can be used to specify a file to which warning and error
+# messages should be written. If left blank the output is written to standard
+# error (stderr).
+
+WARN_LOGFILE           = 
+
+#---------------------------------------------------------------------------
+# Configuration options related to the input files
+#---------------------------------------------------------------------------
+
+# The INPUT tag is used to specify the files and/or directories that contain
+# documented source files. You may enter file names like myfile.cpp or
+# directories like /usr/src/myproject. Separate the files or directories with
+# spaces. See also FILE_PATTERNS and EXTENSION_MAPPING
+# Note: If this tag is empty the current directory is searched.
+
+INPUT                  = ../
+
+# This tag can be used to specify the character encoding of the source files
+# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
+# libiconv (or the iconv built into libc) for the transcoding. See the libiconv
+# documentation (see: http://www.gnu.org/software/libiconv) for the list of
+# possible encodings.
+# The default value is: UTF-8.
+
+INPUT_ENCODING         = UTF-8
+
+# If the value of the INPUT tag contains directories, you can use the
+# FILE_PATTERNS tag to specify one or more wildcard patterns (like *.cpp and
+# *.h) to filter out the source-files in the directories.
+#
+# Note that for custom extensions or not directly supported extensions you also
+# need to set EXTENSION_MAPPING for the extension otherwise the files are not
+# read by doxygen.
+#
+# If left blank the following patterns are tested:*.c, *.cc, *.cxx, *.cpp,
+# *.c++, *.java, *.ii, *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h,
+# *.hh, *.hxx, *.hpp, *.h++, *.cs, *.d, *.php, *.php4, *.php5, *.phtml, *.inc,
+# *.m, *.markdown, *.md, *.mm, *.dox, *.py, *.pyw, *.f90, *.f, *.for, *.tcl,
+# *.vhd, *.vhdl, *.ucf, *.qsf, *.as and *.js.
+
+FILE_PATTERNS          = *.h
+
+# The RECURSIVE tag can be used to specify whether or not subdirectories should
+# be searched for input files as well.
+# The default value is: NO.
+
+RECURSIVE              = YES
+
+# The EXCLUDE tag can be used to specify files and/or directories that should be
+# excluded from the INPUT source files. This way you can easily exclude a
+# subdirectory from a directory tree whose root is specified with the INPUT tag.
+#
+# Note that relative paths are relative to the directory from which doxygen is
+# run.
+
+EXCLUDE                = 
+
+# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or
+# directories that are symbolic links (a Unix file system feature) are excluded
+# from the input.
+# The default value is: NO.
+
+EXCLUDE_SYMLINKS       = NO
+
+# If the value of the INPUT tag contains directories, you can use the
+# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
+# certain files from those directories.
+#
+# Note that the wildcards are matched against the file with absolute path, so to
+# exclude all test directories for example use the pattern */test/*
+
+EXCLUDE_PATTERNS       = */apps/* \
+                         */build/* \
+                         */etc/* \
+                         */example/* \
+                         */scripts/* \
+                         */user/* \
+                         */tools/*
+
+# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names
+# (namespaces, classes, functions, etc.) that should be excluded from the
+# output. The symbol name can be a fully qualified name, a word, or if the
+# wildcard * is used, a substring. Examples: ANamespace, AClass,
+# AClass::ANamespace, ANamespace::*Test
+#
+# Note that the wildcards are matched against the file with absolute path, so to
+# exclude all test directories use the pattern */test/*
+
+EXCLUDE_SYMBOLS        = 
+
+# The EXAMPLE_PATH tag can be used to specify one or more files or directories
+# that contain example code fragments that are included (see the \include
+# command).
+
+EXAMPLE_PATH           = 
+
+# If the value of the EXAMPLE_PATH tag contains directories, you can use the
+# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and
+# *.h) to filter out the source-files in the directories. If left blank all
+# files are included.
+
+EXAMPLE_PATTERNS       = *
+
+# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
+# searched for input files to be used with the \include or \dontinclude commands
+# irrespective of the value of the RECURSIVE tag.
+# The default value is: NO.
+
+EXAMPLE_RECURSIVE      = NO
+
+# The IMAGE_PATH tag can be used to specify one or more files or directories
+# that contain images that are to be included in the documentation (see the
+# \image command).
+
+IMAGE_PATH             = 
+
+# The INPUT_FILTER tag can be used to specify a program that doxygen should
+# invoke to filter for each input file. Doxygen will invoke the filter program
+# by executing (via popen()) the command:
+#
+# <filter> <input-file>
+#
+# where <filter> is the value of the INPUT_FILTER tag, and <input-file> is the
+# name of an input file. Doxygen will then use the output that the filter
+# program writes to standard output. If FILTER_PATTERNS is specified, this tag
+# will be ignored.
+#
+# Note that the filter must not add or remove lines; it is applied before the
+# code is scanned, but not when the output code is generated. If lines are added
+# or removed, the anchors will not be placed correctly.
+#
+# Note that for custom extensions or not directly supported extensions you also
+# need to set EXTENSION_MAPPING for the extension otherwise the files are not
+# properly processed by doxygen.
+
+INPUT_FILTER           = 
+
+# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern
+# basis. Doxygen will compare the file name with each pattern and apply the
+# filter if there is a match. The filters are a list of the form: pattern=filter
+# (like *.cpp=my_cpp_filter). See INPUT_FILTER for further information on how
+# filters are used. If the FILTER_PATTERNS tag is empty or if none of the
+# patterns match the file name, INPUT_FILTER is applied.
+#
+# Note that for custom extensions or not directly supported extensions you also
+# need to set EXTENSION_MAPPING for the extension otherwise the files are not
+# properly processed by doxygen.
+
+FILTER_PATTERNS        = 
+
+# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
+# INPUT_FILTER) will also be used to filter the input files that are used for
+# producing the source files to browse (i.e. when SOURCE_BROWSER is set to YES).
+# The default value is: NO.
+
+FILTER_SOURCE_FILES    = NO
+
+# The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file
+# pattern. A pattern will override the setting for FILTER_PATTERN (if any) and
+# it is also possible to disable source filtering for a specific pattern using
+# *.ext= (so without naming a filter).
+# This tag requires that the tag FILTER_SOURCE_FILES is set to YES.
+
+FILTER_SOURCE_PATTERNS = 
+
+# If the USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that
+# is part of the input, its contents will be placed on the main page
+# (index.html). This can be useful if you have a project on for instance GitHub
+# and want to reuse the introduction page also for the doxygen output.
+
+USE_MDFILE_AS_MAINPAGE = 
+
+#---------------------------------------------------------------------------
+# Configuration options related to source browsing
+#---------------------------------------------------------------------------
+
+# If the SOURCE_BROWSER tag is set to YES then a list of source files will be
+# generated. Documented entities will be cross-referenced with these sources.
+#
+# Note: To get rid of all source code in the generated output, make sure that
+# also VERBATIM_HEADERS is set to NO.
+# The default value is: NO.
+
+SOURCE_BROWSER         = NO
+
+# Setting the INLINE_SOURCES tag to YES will include the body of functions,
+# classes and enums directly into the documentation.
+# The default value is: NO.
+
+INLINE_SOURCES         = NO
+
+# Setting the STRIP_CODE_COMMENTS tag to YES will instruct doxygen to hide any
+# special comment blocks from generated source code fragments. Normal C, C++ and
+# Fortran comments will always remain visible.
+# The default value is: YES.
+
+STRIP_CODE_COMMENTS    = YES
+
+# If the REFERENCED_BY_RELATION tag is set to YES then for each documented
+# function all documented functions referencing it will be listed.
+# The default value is: NO.
+
+REFERENCED_BY_RELATION = NO
+
+# If the REFERENCES_RELATION tag is set to YES then for each documented function
+# all documented entities called/used by that function will be listed.
+# The default value is: NO.
+
+REFERENCES_RELATION    = NO
+
+# If the REFERENCES_LINK_SOURCE tag is set to YES and SOURCE_BROWSER tag is set
+# to YES then the hyperlinks from functions in REFERENCES_RELATION and
+# REFERENCED_BY_RELATION lists will link to the source code. Otherwise they will
+# link to the documentation.
+# The default value is: YES.
+
+REFERENCES_LINK_SOURCE = YES
+
+# If SOURCE_TOOLTIPS is enabled (the default) then hovering a hyperlink in the
+# source code will show a tooltip with additional information such as prototype,
+# brief description and links to the definition and documentation. Since this
+# will make the HTML file larger and loading of large files a bit slower, you
+# can opt to disable this feature.
+# The default value is: YES.
+# This tag requires that the tag SOURCE_BROWSER is set to YES.
+
+SOURCE_TOOLTIPS        = YES
+
+# If the USE_HTAGS tag is set to YES then the references to source code will
+# point to the HTML generated by the htags(1) tool instead of doxygen built-in
+# source browser. The htags tool is part of GNU's global source tagging system
+# (see http://www.gnu.org/software/global/global.html). You will need version
+# 4.8.6 or higher.
+#
+# To use it do the following:
+# - Install the latest version of global
+# - Enable SOURCE_BROWSER and USE_HTAGS in the config file
+# - Make sure the INPUT points to the root of the source tree
+# - Run doxygen as normal
+#
+# Doxygen will invoke htags (and that will in turn invoke gtags), so these
+# tools must be available from the command line (i.e. in the search path).
+#
+# The result: instead of the source browser generated by doxygen, the links to
+# source code will now point to the output of htags.
+# The default value is: NO.
+# This tag requires that the tag SOURCE_BROWSER is set to YES.
+
+USE_HTAGS              = NO
+
+# If the VERBATIM_HEADERS tag is set the YES then doxygen will generate a
+# verbatim copy of the header file for each class for which an include is
+# specified. Set to NO to disable this.
+# See also: Section \class.
+# The default value is: YES.
+
+VERBATIM_HEADERS       = YES
+
+# If the CLANG_ASSISTED_PARSING tag is set to YES then doxygen will use the
+# clang parser (see: http://clang.llvm.org/) for more accurate parsing at the
+# cost of reduced performance. This can be particularly helpful with template
+# rich C++ code for which doxygen's built-in parser lacks the necessary type
+# information.
+# Note: The availability of this option depends on whether or not doxygen was
+# generated with the -Duse-libclang=ON option for CMake.
+# The default value is: NO.
+
+CLANG_ASSISTED_PARSING = NO
+
+# If clang assisted parsing is enabled you can provide the compiler with command
+# line options that you would normally use when invoking the compiler. Note that
+# the include paths will already be set by doxygen for the files and directories
+# specified with INPUT and INCLUDE_PATH.
+# This tag requires that the tag CLANG_ASSISTED_PARSING is set to YES.
+
+CLANG_OPTIONS          = 
+
+#---------------------------------------------------------------------------
+# Configuration options related to the alphabetical class index
+#---------------------------------------------------------------------------
+
+# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index of all
+# compounds will be generated. Enable this if the project contains a lot of
+# classes, structs, unions or interfaces.
+# The default value is: YES.
+
+ALPHABETICAL_INDEX     = YES
+
+# The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in
+# which the alphabetical index list will be split.
+# Minimum value: 1, maximum value: 20, default value: 5.
+# This tag requires that the tag ALPHABETICAL_INDEX is set to YES.
+
+COLS_IN_ALPHA_INDEX    = 5
+
+# In case all classes in a project start with a common prefix, all classes will
+# be put under the same header in the alphabetical index. The IGNORE_PREFIX tag
+# can be used to specify a prefix (or a list of prefixes) that should be ignored
+# while generating the index headers.
+# This tag requires that the tag ALPHABETICAL_INDEX is set to YES.
+
+IGNORE_PREFIX          = 
+
+#---------------------------------------------------------------------------
+# Configuration options related to the HTML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_HTML tag is set to YES, doxygen will generate HTML output
+# The default value is: YES.
+
+GENERATE_HTML          = NO
+
+# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it.
+# The default directory is: html.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_OUTPUT            = html
+
+# The HTML_FILE_EXTENSION tag can be used to specify the file extension for each
+# generated HTML page (for example: .htm, .php, .asp).
+# The default value is: .html.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_FILE_EXTENSION    = .html
+
+# The HTML_HEADER tag can be used to specify a user-defined HTML header file for
+# each generated HTML page. If the tag is left blank doxygen will generate a
+# standard header.
+#
+# To get valid HTML the header file that includes any scripts and style sheets
+# that doxygen needs, which is dependent on the configuration options used (e.g.
+# the setting GENERATE_TREEVIEW). It is highly recommended to start with a
+# default header using
+# doxygen -w html new_header.html new_footer.html new_stylesheet.css
+# YourConfigFile
+# and then modify the file new_header.html. See also section "Doxygen usage"
+# for information on how to generate the default header that doxygen normally
+# uses.
+# Note: The header is subject to change so you typically have to regenerate the
+# default header when upgrading to a newer version of doxygen. For a description
+# of the possible markers and block names see the documentation.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_HEADER            = 
+
+# The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each
+# generated HTML page. If the tag is left blank doxygen will generate a standard
+# footer. See HTML_HEADER for more information on how to generate a default
+# footer and what special commands can be used inside the footer. See also
+# section "Doxygen usage" for information on how to generate the default footer
+# that doxygen normally uses.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_FOOTER            = 
+
+# The HTML_STYLESHEET tag can be used to specify a user-defined cascading style
+# sheet that is used by each HTML page. It can be used to fine-tune the look of
+# the HTML output. If left blank doxygen will generate a default style sheet.
+# See also section "Doxygen usage" for information on how to generate the style
+# sheet that doxygen normally uses.
+# Note: It is recommended to use HTML_EXTRA_STYLESHEET instead of this tag, as
+# it is more robust and this tag (HTML_STYLESHEET) will in the future become
+# obsolete.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_STYLESHEET        = 
+
+# The HTML_EXTRA_STYLESHEET tag can be used to specify additional user-defined
+# cascading style sheets that are included after the standard style sheets
+# created by doxygen. Using this option one can overrule certain style aspects.
+# This is preferred over using HTML_STYLESHEET since it does not replace the
+# standard style sheet and is therefore more robust against future updates.
+# Doxygen will copy the style sheet files to the output directory.
+# Note: The order of the extra style sheet files is of importance (e.g. the last
+# style sheet in the list overrules the setting of the previous ones in the
+# list). For an example see the documentation.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_EXTRA_STYLESHEET  = 
+
+# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or
+# other source files which should be copied to the HTML output directory. Note
+# that these files will be copied to the base HTML output directory. Use the
+# $relpath^ marker in the HTML_HEADER and/or HTML_FOOTER files to load these
+# files. In the HTML_STYLESHEET file, use the file name only. Also note that the
+# files will be copied as-is; there are no commands or markers available.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_EXTRA_FILES       = 
+
+# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen
+# will adjust the colors in the style sheet and background images according to
+# this color. Hue is specified as an angle on a colorwheel, see
+# http://en.wikipedia.org/wiki/Hue for more information. For instance the value
+# 0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300
+# purple, and 360 is red again.
+# Minimum value: 0, maximum value: 359, default value: 220.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_COLORSTYLE_HUE    = 220
+
+# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of the colors
+# in the HTML output. For a value of 0 the output will use grayscales only. A
+# value of 255 will produce the most vivid colors.
+# Minimum value: 0, maximum value: 255, default value: 100.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_COLORSTYLE_SAT    = 100
+
+# The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to the
+# luminance component of the colors in the HTML output. Values below 100
+# gradually make the output lighter, whereas values above 100 make the output
+# darker. The value divided by 100 is the actual gamma applied, so 80 represents
+# a gamma of 0.8, The value 220 represents a gamma of 2.2, and 100 does not
+# change the gamma.
+# Minimum value: 40, maximum value: 240, default value: 80.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_COLORSTYLE_GAMMA  = 80
+
+# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML
+# page will contain the date and time when the page was generated. Setting this
+# to YES can help to show when doxygen was last run and thus if the
+# documentation is up to date.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_TIMESTAMP         = NO
+
+# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
+# documentation will contain sections that can be hidden and shown after the
+# page has loaded.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_DYNAMIC_SECTIONS  = NO
+
+# With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries
+# shown in the various tree structured indices initially; the user can expand
+# and collapse entries dynamically later on. Doxygen will expand the tree to
+# such a level that at most the specified number of entries are visible (unless
+# a fully collapsed tree already exceeds this amount). So setting the number of
+# entries 1 will produce a full collapsed tree by default. 0 is a special value
+# representing an infinite number of entries and will result in a full expanded
+# tree by default.
+# Minimum value: 0, maximum value: 9999, default value: 100.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_INDEX_NUM_ENTRIES = 100
+
+# If the GENERATE_DOCSET tag is set to YES, additional index files will be
+# generated that can be used as input for Apple's Xcode 3 integrated development
+# environment (see: http://developer.apple.com/tools/xcode/), introduced with
+# OSX 10.5 (Leopard). To create a documentation set, doxygen will generate a
+# Makefile in the HTML output directory. Running make will produce the docset in
+# that directory and running make install will install the docset in
+# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at
+# startup. See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html
+# for more information.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_DOCSET        = NO
+
+# This tag determines the name of the docset feed. A documentation feed provides
+# an umbrella under which multiple documentation sets from a single provider
+# (such as a company or product suite) can be grouped.
+# The default value is: Doxygen generated docs.
+# This tag requires that the tag GENERATE_DOCSET is set to YES.
+
+DOCSET_FEEDNAME        = "Doxygen generated docs"
+
+# This tag specifies a string that should uniquely identify the documentation
+# set bundle. This should be a reverse domain-name style string, e.g.
+# com.mycompany.MyDocSet. Doxygen will append .docset to the name.
+# The default value is: org.doxygen.Project.
+# This tag requires that the tag GENERATE_DOCSET is set to YES.
+
+DOCSET_BUNDLE_ID       = org.doxygen.Project
+
+# The DOCSET_PUBLISHER_ID tag specifies a string that should uniquely identify
+# the documentation publisher. This should be a reverse domain-name style
+# string, e.g. com.mycompany.MyDocSet.documentation.
+# The default value is: org.doxygen.Publisher.
+# This tag requires that the tag GENERATE_DOCSET is set to YES.
+
+DOCSET_PUBLISHER_ID    = org.doxygen.Publisher
+
+# The DOCSET_PUBLISHER_NAME tag identifies the documentation publisher.
+# The default value is: Publisher.
+# This tag requires that the tag GENERATE_DOCSET is set to YES.
+
+DOCSET_PUBLISHER_NAME  = Publisher
+
+# If the GENERATE_HTMLHELP tag is set to YES then doxygen generates three
+# additional HTML index files: index.hhp, index.hhc, and index.hhk. The
+# index.hhp is a project file that can be read by Microsoft's HTML Help Workshop
+# (see: http://www.microsoft.com/en-us/download/details.aspx?id=21138) on
+# Windows.
+#
+# The HTML Help Workshop contains a compiler that can convert all HTML output
+# generated by doxygen into a single compiled HTML file (.chm). Compiled HTML
+# files are now used as the Windows 98 help format, and will replace the old
+# Windows help format (.hlp) on all Windows platforms in the future. Compressed
+# HTML files also contain an index, a table of contents, and you can search for
+# words in the documentation. The HTML workshop also contains a viewer for
+# compressed HTML files.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_HTMLHELP      = NO
+
+# The CHM_FILE tag can be used to specify the file name of the resulting .chm
+# file. You can add a path in front of the file if the result should not be
+# written to the html output directory.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+CHM_FILE               = 
+
+# The HHC_LOCATION tag can be used to specify the location (absolute path
+# including file name) of the HTML help compiler (hhc.exe). If non-empty,
+# doxygen will try to run the HTML help compiler on the generated index.hhp.
+# The file has to be specified with full path.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+HHC_LOCATION           = 
+
+# The GENERATE_CHI flag controls if a separate .chi index file is generated
+# (YES) or that it should be included in the master .chm file (NO).
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+GENERATE_CHI           = NO
+
+# The CHM_INDEX_ENCODING is used to encode HtmlHelp index (hhk), content (hhc)
+# and project file content.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+CHM_INDEX_ENCODING     = 
+
+# The BINARY_TOC flag controls whether a binary table of contents is generated
+# (YES) or a normal table of contents (NO) in the .chm file. Furthermore it
+# enables the Previous and Next buttons.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+BINARY_TOC             = NO
+
+# The TOC_EXPAND flag can be set to YES to add extra items for group members to
+# the table of contents of the HTML help documentation and to the tree view.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+TOC_EXPAND             = NO
+
+# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and
+# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated that
+# can be used as input for Qt's qhelpgenerator to generate a Qt Compressed Help
+# (.qch) of the generated HTML documentation.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_QHP           = NO
+
+# If the QHG_LOCATION tag is specified, the QCH_FILE tag can be used to specify
+# the file name of the resulting .qch file. The path specified is relative to
+# the HTML output folder.
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QCH_FILE               = 
+
+# The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help
+# Project output. For more information please see Qt Help Project / Namespace
+# (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#namespace).
+# The default value is: org.doxygen.Project.
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHP_NAMESPACE          = org.doxygen.Project
+
+# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt
+# Help Project output. For more information please see Qt Help Project / Virtual
+# Folders (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#virtual-
+# folders).
+# The default value is: doc.
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHP_VIRTUAL_FOLDER     = doc
+
+# If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom
+# filter to add. For more information please see Qt Help Project / Custom
+# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom-
+# filters).
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHP_CUST_FILTER_NAME   = 
+
+# The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the
+# custom filter to add. For more information please see Qt Help Project / Custom
+# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom-
+# filters).
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHP_CUST_FILTER_ATTRS  = 
+
+# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this
+# project's filter section matches. Qt Help Project / Filter Attributes (see:
+# http://qt-project.org/doc/qt-4.8/qthelpproject.html#filter-attributes).
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHP_SECT_FILTER_ATTRS  = 
+
+# The QHG_LOCATION tag can be used to specify the location of Qt's
+# qhelpgenerator. If non-empty doxygen will try to run qhelpgenerator on the
+# generated .qhp file.
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHG_LOCATION           = 
+
+# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files will be
+# generated, together with the HTML files, they form an Eclipse help plugin. To
+# install this plugin and make it available under the help contents menu in
+# Eclipse, the contents of the directory containing the HTML and XML files needs
+# to be copied into the plugins directory of eclipse. The name of the directory
+# within the plugins directory should be the same as the ECLIPSE_DOC_ID value.
+# After copying Eclipse needs to be restarted before the help appears.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_ECLIPSEHELP   = NO
+
+# A unique identifier for the Eclipse help plugin. When installing the plugin
+# the directory name containing the HTML and XML files should also have this
+# name. Each documentation set should have its own identifier.
+# The default value is: org.doxygen.Project.
+# This tag requires that the tag GENERATE_ECLIPSEHELP is set to YES.
+
+ECLIPSE_DOC_ID         = org.doxygen.Project
+
+# If you want full control over the layout of the generated HTML pages it might
+# be necessary to disable the index and replace it with your own. The
+# DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs) at top
+# of each HTML page. A value of NO enables the index and the value YES disables
+# it. Since the tabs in the index contain the same information as the navigation
+# tree, you can set this option to YES if you also set GENERATE_TREEVIEW to YES.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+DISABLE_INDEX          = NO
+
+# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index
+# structure should be generated to display hierarchical information. If the tag
+# value is set to YES, a side panel will be generated containing a tree-like
+# index structure (just like the one that is generated for HTML Help). For this
+# to work a browser that supports JavaScript, DHTML, CSS and frames is required
+# (i.e. any modern browser). Windows users are probably better off using the
+# HTML help feature. Via custom style sheets (see HTML_EXTRA_STYLESHEET) one can
+# further fine-tune the look of the index. As an example, the default style
+# sheet generated by doxygen has an example that shows how to put an image at
+# the root of the tree instead of the PROJECT_NAME. Since the tree basically has
+# the same information as the tab index, you could consider setting
+# DISABLE_INDEX to YES when enabling this option.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_TREEVIEW      = YES
+
+# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that
+# doxygen will group on one line in the generated HTML documentation.
+#
+# Note that a value of 0 will completely suppress the enum values from appearing
+# in the overview section.
+# Minimum value: 0, maximum value: 20, default value: 4.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+ENUM_VALUES_PER_LINE   = 1
+
+# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be used
+# to set the initial width (in pixels) of the frame in which the tree is shown.
+# Minimum value: 0, maximum value: 1500, default value: 250.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+TREEVIEW_WIDTH         = 250
+
+# If the EXT_LINKS_IN_WINDOW option is set to YES, doxygen will open links to
+# external symbols imported via tag files in a separate window.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+EXT_LINKS_IN_WINDOW    = NO
+
+# Use this tag to change the font size of LaTeX formulas included as images in
+# the HTML documentation. When you change the font size after a successful
+# doxygen run you need to manually remove any form_*.png images from the HTML
+# output directory to force them to be regenerated.
+# Minimum value: 8, maximum value: 50, default value: 10.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+FORMULA_FONTSIZE       = 10
+
+# Use the FORMULA_TRANPARENT tag to determine whether or not the images
+# generated for formulas are transparent PNGs. Transparent PNGs are not
+# supported properly for IE 6.0, but are supported on all modern browsers.
+#
+# Note that when changing this option you need to delete any form_*.png files in
+# the HTML output directory before the changes have effect.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+FORMULA_TRANSPARENT    = YES
+
+# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see
+# http://www.mathjax.org) which uses client side Javascript for the rendering
+# instead of using pre-rendered bitmaps. Use this if you do not have LaTeX
+# installed or if you want to formulas look prettier in the HTML output. When
+# enabled you may also need to install MathJax separately and configure the path
+# to it using the MATHJAX_RELPATH option.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+USE_MATHJAX            = NO
+
+# When MathJax is enabled you can set the default output format to be used for
+# the MathJax output. See the MathJax site (see:
+# http://docs.mathjax.org/en/latest/output.html) for more details.
+# Possible values are: HTML-CSS (which is slower, but has the best
+# compatibility), NativeMML (i.e. MathML) and SVG.
+# The default value is: HTML-CSS.
+# This tag requires that the tag USE_MATHJAX is set to YES.
+
+MATHJAX_FORMAT         = HTML-CSS
+
+# When MathJax is enabled you need to specify the location relative to the HTML
+# output directory using the MATHJAX_RELPATH option. The destination directory
+# should contain the MathJax.js script. For instance, if the mathjax directory
+# is located at the same level as the HTML output directory, then
+# MATHJAX_RELPATH should be ../mathjax. The default value points to the MathJax
+# Content Delivery Network so you can quickly see the result without installing
+# MathJax. However, it is strongly recommended to install a local copy of
+# MathJax from http://www.mathjax.org before deployment.
+# The default value is: http://cdn.mathjax.org/mathjax/latest.
+# This tag requires that the tag USE_MATHJAX is set to YES.
+
+MATHJAX_RELPATH        = http://cdn.mathjax.org/mathjax/latest
+
+# The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax
+# extension names that should be enabled during MathJax rendering. For example
+# MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols
+# This tag requires that the tag USE_MATHJAX is set to YES.
+
+MATHJAX_EXTENSIONS     = 
+
+# The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces
+# of code that will be used on startup of the MathJax code. See the MathJax site
+# (see: http://docs.mathjax.org/en/latest/output.html) for more details. For an
+# example see the documentation.
+# This tag requires that the tag USE_MATHJAX is set to YES.
+
+MATHJAX_CODEFILE       = 
+
+# When the SEARCHENGINE tag is enabled doxygen will generate a search box for
+# the HTML output. The underlying search engine uses javascript and DHTML and
+# should work on any modern browser. Note that when using HTML help
+# (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets (GENERATE_DOCSET)
+# there is already a search function so this one should typically be disabled.
+# For large projects the javascript based search engine can be slow, then
+# enabling SERVER_BASED_SEARCH may provide a better solution. It is possible to
+# search using the keyboard; to jump to the search box use <access key> + S
+# (what the <access key> is depends on the OS and browser, but it is typically
+# <CTRL>, <ALT>/<option>, or both). Inside the search box use the <cursor down
+# key> to jump into the search results window, the results can be navigated
+# using the <cursor keys>. Press <Enter> to select an item or <escape> to cancel
+# the search. The filter options can be selected when the cursor is inside the
+# search box by pressing <Shift>+<cursor down>. Also here use the <cursor keys>
+# to select a filter and <Enter> or <escape> to activate or cancel the filter
+# option.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+SEARCHENGINE           = YES
+
+# When the SERVER_BASED_SEARCH tag is enabled the search engine will be
+# implemented using a web server instead of a web client using Javascript. There
+# are two flavors of web server based searching depending on the EXTERNAL_SEARCH
+# setting. When disabled, doxygen will generate a PHP script for searching and
+# an index file used by the script. When EXTERNAL_SEARCH is enabled the indexing
+# and searching needs to be provided by external tools. See the section
+# "External Indexing and Searching" for details.
+# The default value is: NO.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+SERVER_BASED_SEARCH    = NO
+
+# When EXTERNAL_SEARCH tag is enabled doxygen will no longer generate the PHP
+# script for searching. Instead the search results are written to an XML file
+# which needs to be processed by an external indexer. Doxygen will invoke an
+# external search engine pointed to by the SEARCHENGINE_URL option to obtain the
+# search results.
+#
+# Doxygen ships with an example indexer (doxyindexer) and search engine
+# (doxysearch.cgi) which are based on the open source search engine library
+# Xapian (see: http://xapian.org/).
+#
+# See the section "External Indexing and Searching" for details.
+# The default value is: NO.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+EXTERNAL_SEARCH        = YES
+
+# The SEARCHENGINE_URL should point to a search engine hosted by a web server
+# which will return the search results when EXTERNAL_SEARCH is enabled.
+#
+# Doxygen ships with an example indexer (doxyindexer) and search engine
+# (doxysearch.cgi) which are based on the open source search engine library
+# Xapian (see: http://xapian.org/). See the section "External Indexing and
+# Searching" for details.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+SEARCHENGINE_URL       = 
+
+# When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the unindexed
+# search data is written to a file for indexing by an external tool. With the
+# SEARCHDATA_FILE tag the name of this file can be specified.
+# The default file is: searchdata.xml.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+SEARCHDATA_FILE        = searchdata.xml
+
+# When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the
+# EXTERNAL_SEARCH_ID tag can be used as an identifier for the project. This is
+# useful in combination with EXTRA_SEARCH_MAPPINGS to search through multiple
+# projects and redirect the results back to the right project.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+EXTERNAL_SEARCH_ID     = 
+
+# The EXTRA_SEARCH_MAPPINGS tag can be used to enable searching through doxygen
+# projects other than the one defined by this configuration file, but that are
+# all added to the same external search index. Each project needs to have a
+# unique id set via EXTERNAL_SEARCH_ID. The search mapping then maps the id of
+# to a relative location where the documentation can be found. The format is:
+# EXTRA_SEARCH_MAPPINGS = tagname1=loc1 tagname2=loc2 ...
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+EXTRA_SEARCH_MAPPINGS  = 
+
+#---------------------------------------------------------------------------
+# Configuration options related to the LaTeX output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_LATEX tag is set to YES, doxygen will generate LaTeX output.
+# The default value is: YES.
+
+GENERATE_LATEX         = YES
+
+# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it.
+# The default directory is: latex.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_OUTPUT           = latex
+
+# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
+# invoked.
+#
+# Note that when enabling USE_PDFLATEX this option is only used for generating
+# bitmaps for formulas in the HTML output, but not in the Makefile that is
+# written to the output directory.
+# The default file is: latex.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_CMD_NAME         = latex
+
+# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to generate
+# index for LaTeX.
+# The default file is: makeindex.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+MAKEINDEX_CMD_NAME     = makeindex
+
+# If the COMPACT_LATEX tag is set to YES, doxygen generates more compact LaTeX
+# documents. This may be useful for small projects and may help to save some
+# trees in general.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+COMPACT_LATEX          = NO
+
+# The PAPER_TYPE tag can be used to set the paper type that is used by the
+# printer.
+# Possible values are: a4 (210 x 297 mm), letter (8.5 x 11 inches), legal (8.5 x
+# 14 inches) and executive (7.25 x 10.5 inches).
+# The default value is: a4.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+PAPER_TYPE             = a4
+
+# The EXTRA_PACKAGES tag can be used to specify one or more LaTeX package names
+# that should be included in the LaTeX output. The package can be specified just
+# by its name or with the correct syntax as to be used with the LaTeX
+# \usepackage command. To get the times font for instance you can specify :
+# EXTRA_PACKAGES=times or EXTRA_PACKAGES={times}
+# To use the option intlimits with the amsmath package you can specify:
+# EXTRA_PACKAGES=[intlimits]{amsmath}
+# If left blank no extra packages will be included.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+EXTRA_PACKAGES         = 
+
+# The LATEX_HEADER tag can be used to specify a personal LaTeX header for the
+# generated LaTeX document. The header should contain everything until the first
+# chapter. If it is left blank doxygen will generate a standard header. See
+# section "Doxygen usage" for information on how to let doxygen write the
+# default header to a separate file.
+#
+# Note: Only use a user-defined header if you know what you are doing! The
+# following commands have a special meaning inside the header: $title,
+# $datetime, $date, $doxygenversion, $projectname, $projectnumber,
+# $projectbrief, $projectlogo. Doxygen will replace $title with the empty
+# string, for the replacement values of the other commands the user is referred
+# to HTML_HEADER.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_HEADER           = 
+
+# The LATEX_FOOTER tag can be used to specify a personal LaTeX footer for the
+# generated LaTeX document. The footer should contain everything after the last
+# chapter. If it is left blank doxygen will generate a standard footer. See
+# LATEX_HEADER for more information on how to generate a default footer and what
+# special commands can be used inside the footer.
+#
+# Note: Only use a user-defined footer if you know what you are doing!
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_FOOTER           = 
+
+# The LATEX_EXTRA_STYLESHEET tag can be used to specify additional user-defined
+# LaTeX style sheets that are included after the standard style sheets created
+# by doxygen. Using this option one can overrule certain style aspects. Doxygen
+# will copy the style sheet files to the output directory.
+# Note: The order of the extra style sheet files is of importance (e.g. the last
+# style sheet in the list overrules the setting of the previous ones in the
+# list).
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_EXTRA_STYLESHEET = 
+
+# The LATEX_EXTRA_FILES tag can be used to specify one or more extra images or
+# other source files which should be copied to the LATEX_OUTPUT output
+# directory. Note that the files will be copied as-is; there are no commands or
+# markers available.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_EXTRA_FILES      = 
+
+# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated is
+# prepared for conversion to PDF (using ps2pdf or pdflatex). The PDF file will
+# contain links (just like the HTML output) instead of page references. This
+# makes the output suitable for online browsing using a PDF viewer.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+PDF_HYPERLINKS         = YES
+
+# If the USE_PDFLATEX tag is set to YES, doxygen will use pdflatex to generate
+# the PDF file directly from the LaTeX files. Set this option to YES, to get a
+# higher quality PDF documentation.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+USE_PDFLATEX           = YES
+
+# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \batchmode
+# command to the generated LaTeX files. This will instruct LaTeX to keep running
+# if errors occur, instead of asking the user for help. This option is also used
+# when generating formulas in HTML.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_BATCHMODE        = NO
+
+# If the LATEX_HIDE_INDICES tag is set to YES then doxygen will not include the
+# index chapters (such as File Index, Compound Index, etc.) in the output.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_HIDE_INDICES     = NO
+
+# If the LATEX_SOURCE_CODE tag is set to YES then doxygen will include source
+# code with syntax highlighting in the LaTeX output.
+#
+# Note that which sources are shown also depends on other settings such as
+# SOURCE_BROWSER.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_SOURCE_CODE      = NO
+
+# The LATEX_BIB_STYLE tag can be used to specify the style to use for the
+# bibliography, e.g. plainnat, or ieeetr. See
+# http://en.wikipedia.org/wiki/BibTeX and \cite for more info.
+# The default value is: plain.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_BIB_STYLE        = plain
+
+# If the LATEX_TIMESTAMP tag is set to YES then the footer of each generated
+# page will contain the date and time when the page was generated. Setting this
+# to NO can help when comparing the output of multiple runs.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_TIMESTAMP        = NO
+
+#---------------------------------------------------------------------------
+# Configuration options related to the RTF output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_RTF tag is set to YES, doxygen will generate RTF output. The
+# RTF output is optimized for Word 97 and may not look too pretty with other RTF
+# readers/editors.
+# The default value is: NO.
+
+GENERATE_RTF           = NO
+
+# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it.
+# The default directory is: rtf.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+RTF_OUTPUT             = rtf
+
+# If the COMPACT_RTF tag is set to YES, doxygen generates more compact RTF
+# documents. This may be useful for small projects and may help to save some
+# trees in general.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+COMPACT_RTF            = YES
+
+# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated will
+# contain hyperlink fields. The RTF file will contain links (just like the HTML
+# output) instead of page references. This makes the output suitable for online
+# browsing using Word or some other Word compatible readers that support those
+# fields.
+#
+# Note: WordPad (write) and others do not support links.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+RTF_HYPERLINKS         = NO
+
+# Load stylesheet definitions from file. Syntax is similar to doxygen's config
+# file, i.e. a series of assignments. You only have to provide replacements,
+# missing definitions are set to their default value.
+#
+# See also section "Doxygen usage" for information on how to generate the
+# default style sheet that doxygen normally uses.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+RTF_STYLESHEET_FILE    = 
+
+# Set optional variables used in the generation of an RTF document. Syntax is
+# similar to doxygen's config file. A template extensions file can be generated
+# using doxygen -e rtf extensionFile.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+RTF_EXTENSIONS_FILE    = 
+
+# If the RTF_SOURCE_CODE tag is set to YES then doxygen will include source code
+# with syntax highlighting in the RTF output.
+#
+# Note that which sources are shown also depends on other settings such as
+# SOURCE_BROWSER.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+RTF_SOURCE_CODE        = NO
+
+#---------------------------------------------------------------------------
+# Configuration options related to the man page output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_MAN tag is set to YES, doxygen will generate man pages for
+# classes and files.
+# The default value is: NO.
+
+GENERATE_MAN           = NO
+
+# The MAN_OUTPUT tag is used to specify where the man pages will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it. A directory man3 will be created inside the directory specified by
+# MAN_OUTPUT.
+# The default directory is: man.
+# This tag requires that the tag GENERATE_MAN is set to YES.
+
+MAN_OUTPUT             = man
+
+# The MAN_EXTENSION tag determines the extension that is added to the generated
+# man pages. In case the manual section does not start with a number, the number
+# 3 is prepended. The dot (.) at the beginning of the MAN_EXTENSION tag is
+# optional.
+# The default value is: .3.
+# This tag requires that the tag GENERATE_MAN is set to YES.
+
+MAN_EXTENSION          = .3
+
+# The MAN_SUBDIR tag determines the name of the directory created within
+# MAN_OUTPUT in which the man pages are placed. If defaults to man followed by
+# MAN_EXTENSION with the initial . removed.
+# This tag requires that the tag GENERATE_MAN is set to YES.
+
+MAN_SUBDIR             = 
+
+# If the MAN_LINKS tag is set to YES and doxygen generates man output, then it
+# will generate one additional man file for each entity documented in the real
+# man page(s). These additional files only source the real man page, but without
+# them the man command would be unable to find the correct page.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_MAN is set to YES.
+
+MAN_LINKS              = NO
+
+#---------------------------------------------------------------------------
+# Configuration options related to the XML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_XML tag is set to YES, doxygen will generate an XML file that
+# captures the structure of the code including all documentation.
+# The default value is: NO.
+
+GENERATE_XML           = NO
+
+# The XML_OUTPUT tag is used to specify where the XML pages will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it.
+# The default directory is: xml.
+# This tag requires that the tag GENERATE_XML is set to YES.
+
+XML_OUTPUT             = xml
+
+# If the XML_PROGRAMLISTING tag is set to YES, doxygen will dump the program
+# listings (including syntax highlighting and cross-referencing information) to
+# the XML output. Note that enabling this will significantly increase the size
+# of the XML output.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_XML is set to YES.
+
+XML_PROGRAMLISTING     = YES
+
+#---------------------------------------------------------------------------
+# Configuration options related to the DOCBOOK output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_DOCBOOK tag is set to YES, doxygen will generate Docbook files
+# that can be used to generate PDF.
+# The default value is: NO.
+
+GENERATE_DOCBOOK       = NO
+
+# The DOCBOOK_OUTPUT tag is used to specify where the Docbook pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be put in
+# front of it.
+# The default directory is: docbook.
+# This tag requires that the tag GENERATE_DOCBOOK is set to YES.
+
+DOCBOOK_OUTPUT         = docbook
+
+# If the DOCBOOK_PROGRAMLISTING tag is set to YES, doxygen will include the
+# program listings (including syntax highlighting and cross-referencing
+# information) to the DOCBOOK output. Note that enabling this will significantly
+# increase the size of the DOCBOOK output.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_DOCBOOK is set to YES.
+
+DOCBOOK_PROGRAMLISTING = NO
+
+#---------------------------------------------------------------------------
+# Configuration options for the AutoGen Definitions output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_AUTOGEN_DEF tag is set to YES, doxygen will generate an
+# AutoGen Definitions (see http://autogen.sf.net) file that captures the
+# structure of the code including all documentation. Note that this feature is
+# still experimental and incomplete at the moment.
+# The default value is: NO.
+
+GENERATE_AUTOGEN_DEF   = NO
+
+#---------------------------------------------------------------------------
+# Configuration options related to the Perl module output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_PERLMOD tag is set to YES, doxygen will generate a Perl module
+# file that captures the structure of the code including all documentation.
+#
+# Note that this feature is still experimental and incomplete at the moment.
+# The default value is: NO.
+
+GENERATE_PERLMOD       = NO
+
+# If the PERLMOD_LATEX tag is set to YES, doxygen will generate the necessary
+# Makefile rules, Perl scripts and LaTeX code to be able to generate PDF and DVI
+# output from the Perl module output.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_PERLMOD is set to YES.
+
+PERLMOD_LATEX          = NO
+
+# If the PERLMOD_PRETTY tag is set to YES, the Perl module output will be nicely
+# formatted so it can be parsed by a human reader. This is useful if you want to
+# understand what is going on. On the other hand, if this tag is set to NO, the
+# size of the Perl module output will be much smaller and Perl will parse it
+# just the same.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_PERLMOD is set to YES.
+
+PERLMOD_PRETTY         = YES
+
+# The names of the make variables in the generated doxyrules.make file are
+# prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. This is useful
+# so different doxyrules.make files included by the same Makefile don't
+# overwrite each other's variables.
+# This tag requires that the tag GENERATE_PERLMOD is set to YES.
+
+PERLMOD_MAKEVAR_PREFIX = 
+
+#---------------------------------------------------------------------------
+# Configuration options related to the preprocessor
+#---------------------------------------------------------------------------
+
+# If the ENABLE_PREPROCESSING tag is set to YES, doxygen will evaluate all
+# C-preprocessor directives found in the sources and include files.
+# The default value is: YES.
+
+ENABLE_PREPROCESSING   = YES
+
+# If the MACRO_EXPANSION tag is set to YES, doxygen will expand all macro names
+# in the source code. If set to NO, only conditional compilation will be
+# performed. Macro expansion can be done in a controlled way by setting
+# EXPAND_ONLY_PREDEF to YES.
+# The default value is: NO.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+MACRO_EXPANSION        = NO
+
+# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES then
+# the macro expansion is limited to the macros specified with the PREDEFINED and
+# EXPAND_AS_DEFINED tags.
+# The default value is: NO.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+EXPAND_ONLY_PREDEF     = NO
+
+# If the SEARCH_INCLUDES tag is set to YES, the include files in the
+# INCLUDE_PATH will be searched if a #include is found.
+# The default value is: YES.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+SEARCH_INCLUDES        = YES
+
+# The INCLUDE_PATH tag can be used to specify one or more directories that
+# contain include files that are not input files but should be processed by the
+# preprocessor.
+# This tag requires that the tag SEARCH_INCLUDES is set to YES.
+
+INCLUDE_PATH           = 
+
+# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
+# patterns (like *.h and *.hpp) to filter out the header-files in the
+# directories. If left blank, the patterns specified with FILE_PATTERNS will be
+# used.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+INCLUDE_FILE_PATTERNS  = 
+
+# The PREDEFINED tag can be used to specify one or more macro names that are
+# defined before the preprocessor is started (similar to the -D option of e.g.
+# gcc). The argument of the tag is a list of macros of the form: name or
+# name=definition (no spaces). If the definition and the "=" are omitted, "=1"
+# is assumed. To prevent a macro definition from being undefined via #undef or
+# recursively expanded use the := operator instead of the = operator.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+PREDEFINED             = 
+
+# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this
+# tag can be used to specify a list of macro names that should be expanded. The
+# macro definition that is found in the sources will be used. Use the PREDEFINED
+# tag if you want to use a different macro definition that overrules the
+# definition found in the source code.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+EXPAND_AS_DEFINED      = 
+
+# If the SKIP_FUNCTION_MACROS tag is set to YES then doxygen's preprocessor will
+# remove all references to function-like macros that are alone on a line, have
+# an all uppercase name, and do not end with a semicolon. Such function macros
+# are typically used for boiler-plate code, and will confuse the parser if not
+# removed.
+# The default value is: YES.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+SKIP_FUNCTION_MACROS   = YES
+
+#---------------------------------------------------------------------------
+# Configuration options related to external references
+#---------------------------------------------------------------------------
+
+# The TAGFILES tag can be used to specify one or more tag files. For each tag
+# file the location of the external documentation should be added. The format of
+# a tag file without this location is as follows:
+# TAGFILES = file1 file2 ...
+# Adding location for the tag files is done as follows:
+# TAGFILES = file1=loc1 "file2 = loc2" ...
+# where loc1 and loc2 can be relative or absolute paths or URLs. See the
+# section "Linking to external documentation" for more information about the use
+# of tag files.
+# Note: Each tag file must have a unique name (where the name does NOT include
+# the path). If a tag file is not located in the directory in which doxygen is
+# run, you must also specify the path to the tagfile here.
+
+TAGFILES               = 
+
+# When a file name is specified after GENERATE_TAGFILE, doxygen will create a
+# tag file that is based on the input files it reads. See section "Linking to
+# external documentation" for more information about the usage of tag files.
+
+GENERATE_TAGFILE       = 
+
+# If the ALLEXTERNALS tag is set to YES, all external class will be listed in
+# the class index. If set to NO, only the inherited external classes will be
+# listed.
+# The default value is: NO.
+
+ALLEXTERNALS           = NO
+
+# If the EXTERNAL_GROUPS tag is set to YES, all external groups will be listed
+# in the modules index. If set to NO, only the current project's groups will be
+# listed.
+# The default value is: YES.
+
+EXTERNAL_GROUPS        = YES
+
+# If the EXTERNAL_PAGES tag is set to YES, all external pages will be listed in
+# the related pages index. If set to NO, only the current project's pages will
+# be listed.
+# The default value is: YES.
+
+EXTERNAL_PAGES         = YES
+
+# The PERL_PATH should be the absolute path and name of the perl script
+# interpreter (i.e. the result of 'which perl').
+# The default file (with absolute path) is: /usr/bin/perl.
+
+PERL_PATH              = /usr/bin/perl
+
+#---------------------------------------------------------------------------
+# Configuration options related to the dot tool
+#---------------------------------------------------------------------------
+
+# If the CLASS_DIAGRAMS tag is set to YES, doxygen will generate a class diagram
+# (in HTML and LaTeX) for classes with base or super classes. Setting the tag to
+# NO turns the diagrams off. Note that this option also works with HAVE_DOT
+# disabled, but it is recommended to install and use dot, since it yields more
+# powerful graphs.
+# The default value is: YES.
+
+CLASS_DIAGRAMS         = YES
+
+# You can define message sequence charts within doxygen comments using the \msc
+# command. Doxygen will then run the mscgen tool (see:
+# http://www.mcternan.me.uk/mscgen/)) to produce the chart and insert it in the
+# documentation. The MSCGEN_PATH tag allows you to specify the directory where
+# the mscgen tool resides. If left empty the tool is assumed to be found in the
+# default search path.
+
+MSCGEN_PATH            = 
+
+# You can include diagrams made with dia in doxygen documentation. Doxygen will
+# then run dia to produce the diagram and insert it in the documentation. The
+# DIA_PATH tag allows you to specify the directory where the dia binary resides.
+# If left empty dia is assumed to be found in the default search path.
+
+DIA_PATH               = 
+
+# If set to YES the inheritance and collaboration graphs will hide inheritance
+# and usage relations if the target is undocumented or is not a class.
+# The default value is: YES.
+
+HIDE_UNDOC_RELATIONS   = YES
+
+# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
+# available from the path. This tool is part of Graphviz (see:
+# http://www.graphviz.org/), a graph visualization toolkit from AT&T and Lucent
+# Bell Labs. The other options in this section have no effect if this option is
+# set to NO
+# The default value is: YES.
+
+HAVE_DOT               = NO
+
+# The DOT_NUM_THREADS specifies the number of dot invocations doxygen is allowed
+# to run in parallel. When set to 0 doxygen will base this on the number of
+# processors available in the system. You can set it explicitly to a value
+# larger than 0 to get control over the balance between CPU load and processing
+# speed.
+# Minimum value: 0, maximum value: 32, default value: 0.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_NUM_THREADS        = 0
+
+# When you want a differently looking font in the dot files that doxygen
+# generates you can specify the font name using DOT_FONTNAME. You need to make
+# sure dot is able to find the font, which can be done by putting it in a
+# standard location or by setting the DOTFONTPATH environment variable or by
+# setting DOT_FONTPATH to the directory containing the font.
+# The default value is: Helvetica.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_FONTNAME           = Helvetica
+
+# The DOT_FONTSIZE tag can be used to set the size (in points) of the font of
+# dot graphs.
+# Minimum value: 4, maximum value: 24, default value: 10.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_FONTSIZE           = 10
+
+# By default doxygen will tell dot to use the default font as specified with
+# DOT_FONTNAME. If you specify a different font using DOT_FONTNAME you can set
+# the path where dot can find it using this tag.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_FONTPATH           = 
+
+# If the CLASS_GRAPH tag is set to YES then doxygen will generate a graph for
+# each documented class showing the direct and indirect inheritance relations.
+# Setting this tag to YES will force the CLASS_DIAGRAMS tag to NO.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+CLASS_GRAPH            = YES
+
+# If the COLLABORATION_GRAPH tag is set to YES then doxygen will generate a
+# graph for each documented class showing the direct and indirect implementation
+# dependencies (inheritance, containment, and class references variables) of the
+# class with other documented classes.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+COLLABORATION_GRAPH    = YES
+
+# If the GROUP_GRAPHS tag is set to YES then doxygen will generate a graph for
+# groups, showing the direct groups dependencies.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+GROUP_GRAPHS           = YES
+
+# If the UML_LOOK tag is set to YES, doxygen will generate inheritance and
+# collaboration diagrams in a style similar to the OMG's Unified Modeling
+# Language.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+UML_LOOK               = NO
+
+# If the UML_LOOK tag is enabled, the fields and methods are shown inside the
+# class node. If there are many fields or methods and many nodes the graph may
+# become too big to be useful. The UML_LIMIT_NUM_FIELDS threshold limits the
+# number of items for each type to make the size more manageable. Set this to 0
+# for no limit. Note that the threshold may be exceeded by 50% before the limit
+# is enforced. So when you set the threshold to 10, up to 15 fields may appear,
+# but if the number exceeds 15, the total amount of fields shown is limited to
+# 10.
+# Minimum value: 0, maximum value: 100, default value: 10.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+UML_LIMIT_NUM_FIELDS   = 10
+
+# If the TEMPLATE_RELATIONS tag is set to YES then the inheritance and
+# collaboration graphs will show the relations between templates and their
+# instances.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+TEMPLATE_RELATIONS     = NO
+
+# If the INCLUDE_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are set to
+# YES then doxygen will generate a graph for each documented file showing the
+# direct and indirect include dependencies of the file with other documented
+# files.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+INCLUDE_GRAPH          = YES
+
+# If the INCLUDED_BY_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are
+# set to YES then doxygen will generate a graph for each documented file showing
+# the direct and indirect include dependencies of the file with other documented
+# files.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+INCLUDED_BY_GRAPH      = YES
+
+# If the CALL_GRAPH tag is set to YES then doxygen will generate a call
+# dependency graph for every global function or class method.
+#
+# Note that enabling this option will significantly increase the time of a run.
+# So in most cases it will be better to enable call graphs for selected
+# functions only using the \callgraph command. Disabling a call graph can be
+# accomplished by means of the command \hidecallgraph.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+CALL_GRAPH             = NO
+
+# If the CALLER_GRAPH tag is set to YES then doxygen will generate a caller
+# dependency graph for every global function or class method.
+#
+# Note that enabling this option will significantly increase the time of a run.
+# So in most cases it will be better to enable caller graphs for selected
+# functions only using the \callergraph command. Disabling a caller graph can be
+# accomplished by means of the command \hidecallergraph.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+CALLER_GRAPH           = NO
+
+# If the GRAPHICAL_HIERARCHY tag is set to YES then doxygen will graphical
+# hierarchy of all classes instead of a textual one.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+GRAPHICAL_HIERARCHY    = YES
+
+# If the DIRECTORY_GRAPH tag is set to YES then doxygen will show the
+# dependencies a directory has on other directories in a graphical way. The
+# dependency relations are determined by the #include relations between the
+# files in the directories.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DIRECTORY_GRAPH        = YES
+
+# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
+# generated by dot. For an explanation of the image formats see the section
+# output formats in the documentation of the dot tool (Graphviz (see:
+# http://www.graphviz.org/)).
+# Note: If you choose svg you need to set HTML_FILE_EXTENSION to xhtml in order
+# to make the SVG files visible in IE 9+ (other browsers do not have this
+# requirement).
+# Possible values are: png, png:cairo, png:cairo:cairo, png:cairo:gd, png:gd,
+# png:gd:gd, jpg, jpg:cairo, jpg:cairo:gd, jpg:gd, jpg:gd:gd, gif, gif:cairo,
+# gif:cairo:gd, gif:gd, gif:gd:gd, svg, png:gd, png:gd:gd, png:cairo,
+# png:cairo:gd, png:cairo:cairo, png:cairo:gdiplus, png:gdiplus and
+# png:gdiplus:gdiplus.
+# The default value is: png.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_IMAGE_FORMAT       = png
+
+# If DOT_IMAGE_FORMAT is set to svg, then this option can be set to YES to
+# enable generation of interactive SVG images that allow zooming and panning.
+#
+# Note that this requires a modern browser other than Internet Explorer. Tested
+# and working are Firefox, Chrome, Safari, and Opera.
+# Note: For IE 9+ you need to set HTML_FILE_EXTENSION to xhtml in order to make
+# the SVG files visible. Older versions of IE do not have SVG support.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+INTERACTIVE_SVG        = NO
+
+# The DOT_PATH tag can be used to specify the path where the dot tool can be
+# found. If left blank, it is assumed the dot tool can be found in the path.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_PATH               = 
+
+# The DOTFILE_DIRS tag can be used to specify one or more directories that
+# contain dot files that are included in the documentation (see the \dotfile
+# command).
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOTFILE_DIRS           = 
+
+# The MSCFILE_DIRS tag can be used to specify one or more directories that
+# contain msc files that are included in the documentation (see the \mscfile
+# command).
+
+MSCFILE_DIRS           = 
+
+# The DIAFILE_DIRS tag can be used to specify one or more directories that
+# contain dia files that are included in the documentation (see the \diafile
+# command).
+
+DIAFILE_DIRS           = 
+
+# When using plantuml, the PLANTUML_JAR_PATH tag should be used to specify the
+# path where java can find the plantuml.jar file. If left blank, it is assumed
+# PlantUML is not used or called during a preprocessing step. Doxygen will
+# generate a warning when it encounters a \startuml command in this case and
+# will not generate output for the diagram.
+
+PLANTUML_JAR_PATH      = 
+
+# When using plantuml, the specified paths are searched for files specified by
+# the !include statement in a plantuml block.
+
+PLANTUML_INCLUDE_PATH  = 
+
+# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of nodes
+# that will be shown in the graph. If the number of nodes in a graph becomes
+# larger than this value, doxygen will truncate the graph, which is visualized
+# by representing a node as a red box. Note that doxygen if the number of direct
+# children of the root node in a graph is already larger than
+# DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note that
+# the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH.
+# Minimum value: 0, maximum value: 10000, default value: 50.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_GRAPH_MAX_NODES    = 50
+
+# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the graphs
+# generated by dot. A depth value of 3 means that only nodes reachable from the
+# root by following a path via at most 3 edges will be shown. Nodes that lay
+# further from the root node will be omitted. Note that setting this option to 1
+# or 2 may greatly reduce the computation time needed for large code bases. Also
+# note that the size of a graph can be further restricted by
+# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction.
+# Minimum value: 0, maximum value: 1000, default value: 0.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+MAX_DOT_GRAPH_DEPTH    = 0
+
+# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent
+# background. This is disabled by default, because dot on Windows does not seem
+# to support this out of the box.
+#
+# Warning: Depending on the platform used, enabling this option may lead to
+# badly anti-aliased labels on the edges of a graph (i.e. they become hard to
+# read).
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_TRANSPARENT        = NO
+
+# Set the DOT_MULTI_TARGETS tag to YES to allow dot to generate multiple output
+# files in one run (i.e. multiple -o and -T options on the command line). This
+# makes dot run faster, but since only newer versions of dot (>1.8.10) support
+# this, this feature is disabled by default.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_MULTI_TARGETS      = NO
+
+# If the GENERATE_LEGEND tag is set to YES doxygen will generate a legend page
+# explaining the meaning of the various boxes and arrows in the dot generated
+# graphs.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+GENERATE_LEGEND        = YES
+
+# If the DOT_CLEANUP tag is set to YES, doxygen will remove the intermediate dot
+# files that are used to generate the various graphs.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_CLEANUP            = YES
diff --git a/QDMA/linux-kernel/docs/QDMA_Driver_APIs.pdf b/QDMA/linux-kernel/docs/QDMA_Driver_APIs.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..2067210305a69349a653958acf90c91520b2ed25
GIT binary patch
literal 660344
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%0DdGe|+*TpY99F@61ka
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%0DXg{`_v2zgJhf|6f{v
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
E01g&QtpET3

literal 0
HcmV?d00001

diff --git a/QDMA/linux-kernel/docs/README b/QDMA/linux-kernel/docs/README
new file mode 100644
index 0000000..a4b9e64
--- /dev/null
+++ b/QDMA/linux-kernel/docs/README
@@ -0,0 +1,267 @@
+###############################################################################
+
+                 Xilinx QDMA Software README
+
+###############################################################################
+
+
+_____________________________________________________________________________
+Contents
+
+1.   Installation
+     1.1   Compiling the QDMA Software
+     1.2   Installing the compiled binaries
+     1.3   Loading the Kernel module
+2    Configuration
+     2.1   Configuring Queues
+3.   Xilinx "dmactl" Command-line Utility
+     3.1   Using dmactl for query the QDMA devices/functions
+     3.2   Using dmactl for Queue control
+4.   QDMA test script
+     Sample scripts to run simple MM and ST transfers 
+_____________________________________________________________________________
+
+1. Installation:
+
+  1.1 Compiling the QDMA Software:
+  --------------------------------
+
+  In order to compile the Xilinx QDMA software, a configured and compiled
+  Linux kernel source tree is required. The source tree may be only compiled
+  header files, or a complete tree. The source tree needs to be configured
+  and the header files need to be compiled. And, the Linux kernel must be
+  configured to use  modules.
+
+  Additionally, the /lib/modules must have been set up for this particular
+  kernel
+  (i.e. "make modules_install" has been run with the Linux kernel source tree).
+
+  a.	QDMA Linux Kernel Driver is available in Xilinx github at 
+		https://github.com/Xilinx/dma_ip_drivers/QDMA/linux-kernel
+
+  b.	Compile the Xilinx QDMA Linux driver:
+
+  	[xilinx@]# make
+
+	a sub-directory build/ will be created as a result of running "make".
+
+	By default, both PF driver (qdma.ko) and VF driver (qdma_vf.ko) will
+	be compiled.
+
+	If only PF driver is desired:
+  	[xilinx@]# make pf
+
+	If only VF driver is desired:
+  	[xilinx@]# make vf
+
+  1.2 Installing the compiled binaries:
+  -------------------------------------
+
+  To install the QDMA software, the installer must be the root user, then
+  run "make install".
+
+  [xilinx@]# make install
+
+  The QDMA module will be installed in the
+  /lib/modules/<linux_kernel_version>/updates/kernel/drivers/qdma directory.
+
+  The dmactl tool will be installed in /user/local/sbin.
+
+  Example application software to issue DMA requests:
+  dma_to_device for H2C queues and 
+  dma_from_device for C2H queues
+  will be installed in /user/local/sbin.
+
+
+  1.3 Loading the Kernel module:
+  --------------------------------
+
+  Kernel module cane be loaded in following different modes
+  0 - Auto Mode, driver decides to process the request in poll or interrupt mode
+  1 - Poll Mode
+  2 - Direct Interrupt Mode
+  3 - Interrupt Aggregation Mode or Indirect Interrupt Mode
+  4 - Legacy Interrupt Mode
+
+  To load the module in poll mode run modprobe as follows:
+
+  [root@]# modprobe qdma mode=1
+
+  Or on a VM:
+  [root@]# modprobe qdma_vf
+
+  To load the module in direct interrupt mode run modprobe as follows:
+
+  [root@]# modprobe qdma mode=2
+
+  To load the module in indirect interrupt mode run modprobe as follows:
+
+  [root@]# modprobe qdma mode=3
+  
+  To set a master pf other than the first pf, load the module as follows:
+
+  [root@]# modprobe qdma master_pf=0x<bbddf>
+
+  Note:<bbddf> can figured out for a pf from 'lspci' output 
+        bb - bus number
+        dd - device number
+         f -  function number
+  
+  Now the QDMA software is ready for use.
+
+2. Configuration
+
+  2.1 Configuring Queues
+  -------------------------------------
+
+  To configure a QDMA queue, there are three minimum required parameters
+  (in the form of key value pairs) needed to be configured.
+
+       idx <N>:	        The 0-based queue index on the function.
+       mode <mm | st>:  queue mode, default to "mm"
+       dir <h2c | c2h>: queue direction, default to "h2c"
+
+  - "idx" is a 0-based unique index on the function.
+    *With the 2018.2 release, the range is
+	0 ~ (512 - 8 * total # of VFs) on a physical function and
+	0 ~ 7 on a virtual function
+
+  - "mode" is the operation mode of the queue.
+	It is either memory mapped (mm) or streaming mode (st)
+
+  - "dir" is the direction of the queue.
+	It is either host to card (h2c) or card to host (c2h).
+
+  A h2c queue and a c2h queue can share the same index. In other word, a index
+  represents a pair of queues: one on h2c direction and the other on the c2h
+  direction.
+
+
+3. Xilinx "dmactl" Command-line Configuration Utility:
+
+  The Xilinx QDMA control tool, dmactl, is a Command Line utility
+  which is installed in /usr/local/sbin/ and allows administration of the
+  Xilinx QDMA queues. It can perform the following functions:
+
+  - query the qdma functions/devices the driver has bind into.
+
+  - list all of the queues on a device/function
+  - add/configure a new queues on a device/function
+  - start an already added/configured queue (i.e., bring the queue online)
+  - stop an started queue (i.e., bring the queue offline)
+  - delete an already added/configured queue
+
+  register access:
+  - read a register
+  - write a register
+  - dump the qdma config bar and user bar registers
+
+  debug helper
+  - display a queue's configuration parameters
+  - display a queue's descriptor ring entries
+  - display a ch2 queue's completion ring entries
+  - display the interrupt ring entries in indirect interrupt mode
+
+  Apart from the above basic commands, there are various other commands
+  available in dmactl to add/start/stop/del list of queues at the same time
+
+  For help run:
+    dmactl -h
+       (or)
+    man dmactl
+
+
+  3.1 Using dmactl for query the QDMA devices/functions
+  -------------------------------------
+
+  Please refer User Guide/dmactl man page to find all options and parameters
+  available.
+
+    1. Get the list of devices the driver has bind with
+
+      [root@]# dmactl dev list
+
+	qdma06000	0000:06:00.0	max QP: 32
+	qdma06001	0000:06:00.1	max QP: 32
+
+      The above example output shows 2 QDMA functions/devices.
+      one is at pci BDF: 06:00.0
+      the other is at pci BDF: 06:00.1
+
+
+  3.2 Using dmactl for Queue control
+  -------------------------------------
+
+  Please refer User Guide to find all options and parameters available.
+
+    a. Add/Configure a queue
+
+      To add a MM H2C queue on qdma06000 in the above example:
+
+      [root@]# dmactl qdma06000 q add idx 0 mode mm dir h2c
+
+      *A character device /dev/qdma06000-MM-0 would be created.
+
+      To add a MM C2H queue on qdma06000:
+
+      [root@]# dmactl qdma06000 q add idx 0 mode mm dir c2h
+
+      *A character device /dev/qdma06000-MM-0 would be created.
+
+    b. Start an added queue
+
+      To start the MM H2C queue on qdma06000 added in the previous example:
+
+      [root@]# dmactl qdma06000 q start idx 0 dir h2c
+
+      *After the queue is started the normal read and write operation can be
+       performed on the character device /dev/qdma06000-MM-0.
+
+      To start the MM C2H queue on qdma06000 added in the previous example:
+
+      [root@]# dmactl qdma06000 q start idx 0 dir c2h
+
+      *After the queue is started the normal read and write operation can be
+       performed on the character device /dev/qdma06000-MM-0.
+
+    c. Stop a queue
+
+      [root@]# dmactl qdma06000 q start idx 0 dir h2c
+      [root@]# dmactl qdma06000 q start idx 0 dir c2h
+
+
+    d. Delete a queue
+
+      [root@]# dmactl qdma06000 q del idx 0 dir h2c
+      [root@]# dmactl qdma06000 q del idx 0 dir c2h
+
+
+4. QDMA test script
+
+    Test scripts are in scripts/ directory
+
+    To use the scripts in this directory, "make" and "make install" must be run
+    install the dma_from_device and dma_to_device applications.
+
+    qdma_run_test.sh 
+	The script does the following dma operations:
+
+    	PF AXI-MM :     H2C/C2H AXI-MM transfer and check for data correctness.
+	PF AXI-ST-H2C : H2C AXI-ST transfer and read data register on user side
+  		        to check if the data if correct.
+	PF AXI-ST-C2H : C2H AXI-St transfer and check data for correctness.
+
+	All the above transfers are done for 4 [0 to 3] Queues.
+
+    qdma_run_test_mm_vf.sh
+    	VF AXI-MM : Script runs H2C/C2H AXI-MM transfer and check for data
+		    correctness.
+
+	All the above transfers are done for 4 [0 to 3] Queues.
+
+    qdma_run_test_st_vf.sh
+	VF AXI-ST-H2C : H2C AXI-ST transfer and read data register on user side
+	  	        to check if the data if correct.
+	VF AXI-ST-C2H : C2H AXI-St transfer and check data for correctness.
+
+	All the above transfers are done for 4 [0 to 3] Queues.
diff --git a/QDMA/linux-kernel/docs/dmactl.8.gz b/QDMA/linux-kernel/docs/dmactl.8.gz
new file mode 100644
index 0000000000000000000000000000000000000000..b55007269369e7d42a69f4e8bdfd3e318f302085
GIT binary patch
literal 2164
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
BFT(%;

literal 0
HcmV?d00001

diff --git a/QDMA/linux-kernel/docs/linux_qdma_driver_user_guide.pdf b/QDMA/linux-kernel/docs/linux_qdma_driver_user_guide.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..813d82a5e87104f09803f9a51bce12033809de4f
GIT binary patch
literal 924396
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%0AFf<|url+(%IpKdmk$PC
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%0AkPod5nw<jcvrd2PG+J{}I4F8}c5i<67*Ed6EE
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

literal 0
HcmV?d00001

diff --git a/QDMA/linux-kernel/drv/.cache.mk b/QDMA/linux-kernel/drv/.cache.mk
new file mode 100644
index 0000000..938e7a5
--- /dev/null
+++ b/QDMA/linux-kernel/drv/.cache.mk
@@ -0,0 +1,63 @@
+__cached_gcc_-v_2>&1_|_grep_-q_"clang_version"_&&_echo_clang_||_echo_gcc := gcc
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-mretpoline-external-thunk_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-mretpoline-external-thunk";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := 
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-mindirect-branch_thunk-extern_-mindirect-branch-register_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-mindirect-branch_thunk-extern_-mindirect-branch-register";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -mindirect-branch=thunk-extern -mindirect-branch-register
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-fno-PIE";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -fno-PIE
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-fno-PIE_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-fno-PIE";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -fno-PIE
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if___gcc_-Werror_-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-Wmaybe-uninitialized_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-Wno-maybe-uninitialized";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -Wno-maybe-uninitialized
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE__-mpreferred-stack-boundary_4_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"_-mpreferred-stack-boundary_4";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -mpreferred-stack-boundary=4
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE__-m16_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"_-m16";_else_echo_"_-m32_-Wa_./arch/x86/boot/code16gcc.h";_fi;_rm_-f_"_TMP"_"_TMPO" := -m16
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-m16_-g_-Os_-D__KERNEL___-DDISABLE_BRANCH_PROFILING_-Wall_-Wstrict-prototypes_-march_i386_-mregparm_3_-fno-strict-aliasing_-fomit-frame-pointer_-fno-pic_-mno-mmx_-mno-sse__-ffreestanding_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"_-ffreestanding";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -ffreestanding
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-m16_-g_-Os_-D__KERNEL___-DDISABLE_BRANCH_PROFILING_-Wall_-Wstrict-prototypes_-march_i386_-mregparm_3_-fno-strict-aliasing_-fomit-frame-pointer_-fno-pic_-mno-mmx_-mno-sse_-ffreestanding__-fno-stack-protector_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"_-fno-stack-protector";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -fno-stack-protector
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-m16_-g_-Os_-D__KERNEL___-DDISABLE_BRANCH_PROFILING_-Wall_-Wstrict-prototypes_-march_i386_-mregparm_3_-fno-strict-aliasing_-fomit-frame-pointer_-fno-pic_-mno-mmx_-mno-sse_-ffreestanding_-fno-stack-protector__-mpreferred-stack-boundary_2_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"_-mpreferred-stack-boundary_2";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -mpreferred-stack-boundary=2
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-mno-avx";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -mno-avx
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-falign-jumps_1";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -falign-jumps=1
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-falign-loops_1";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -falign-loops=1
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-mno-80387";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -mno-80387
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-mno-fp-ret-in-387";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -mno-fp-ret-in-387
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-mpreferred-stack-boundary_3";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -mpreferred-stack-boundary=3
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-mskip-rax-setup_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-mskip-rax-setup";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -mskip-rax-setup
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-mskip-rax-setup_-mtune_generic_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-mtune_generic";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -mtune=generic
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-mskip-rax-setup_-mtune_generic_-mno-red-zone_-mcmodel_kernel_-funit-at-a-time_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-funit-at-a-time";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -funit-at-a-time
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if___gcc_-Werror_-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-mskip-rax-setup_-mtune_generic_-mno-red-zone_-mcmodel_kernel_-funit-at-a-time_-DCONFIG_X86_X32_ABI__-mfentry_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"y";_else_echo_"n";_fi;_rm_-f_"_TMP"_"_TMPO" := y
+__cached_/bin/bash_./scripts/gcc-version.sh_-p_gcc := 070300
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if___printf_"%b_n"_".cfi_startproc_n.cfi_rel_offset_rsp_0_n.cfi_endproc"_|_gcc_-D__ASSEMBLY___-fno-PIE_-m64_-DCONFIG_X86_X32_ABI_-c_-x_assembler_-o_"_TMP"_-__>/dev/null_2>&1;_then_echo_"-DCONFIG_AS_CFI_1";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -DCONFIG_AS_CFI=1
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if___printf_"%b_n"_".cfi_startproc_n.cfi_signal_frame_n.cfi_endproc"_|_gcc_-D__ASSEMBLY___-fno-PIE_-m64_-DCONFIG_X86_X32_ABI_-c_-x_assembler_-o_"_TMP"_-__>/dev/null_2>&1;_then_echo_"-DCONFIG_AS_CFI_SIGNAL_FRAME_1";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -DCONFIG_AS_CFI_SIGNAL_FRAME=1
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if___printf_"%b_n"_".cfi_sections_.debug_frame"_|_gcc_-D__ASSEMBLY___-fno-PIE_-m64_-DCONFIG_X86_X32_ABI_-c_-x_assembler_-o_"_TMP"_-__>/dev/null_2>&1;_then_echo_"-DCONFIG_AS_CFI_SECTIONS_1";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -DCONFIG_AS_CFI_SECTIONS=1
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if___printf_"%b_n"_"fxsaveq__%rax_"_|_gcc_-D__ASSEMBLY___-fno-PIE_-m64_-DCONFIG_X86_X32_ABI_-c_-x_assembler_-o_"_TMP"_-__>/dev/null_2>&1;_then_echo_"-DCONFIG_AS_FXSAVEQ_1";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -DCONFIG_AS_FXSAVEQ=1
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if___printf_"%b_n"_"pshufb_%xmm0_%xmm0"_|_gcc_-D__ASSEMBLY___-fno-PIE_-m64_-DCONFIG_X86_X32_ABI_-c_-x_assembler_-o_"_TMP"_-__>/dev/null_2>&1;_then_echo_"-DCONFIG_AS_SSSE3_1";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -DCONFIG_AS_SSSE3=1
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if___printf_"%b_n"_"crc32l_%eax_%eax"_|_gcc_-D__ASSEMBLY___-fno-PIE_-m64_-DCONFIG_X86_X32_ABI_-c_-x_assembler_-o_"_TMP"_-__>/dev/null_2>&1;_then_echo_"-DCONFIG_AS_CRC32_1";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -DCONFIG_AS_CRC32=1
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if___printf_"%b_n"_"vxorps_%ymm0_%ymm1_%ymm2"_|_gcc_-D__ASSEMBLY___-fno-PIE_-m64_-DCONFIG_X86_X32_ABI_-c_-x_assembler_-o_"_TMP"_-__>/dev/null_2>&1;_then_echo_"-DCONFIG_AS_AVX_1";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -DCONFIG_AS_AVX=1
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if___printf_"%b_n"_"vpbroadcastb_%xmm0_%ymm1"_|_gcc_-D__ASSEMBLY___-fno-PIE_-m64_-DCONFIG_X86_X32_ABI_-c_-x_assembler_-o_"_TMP"_-__>/dev/null_2>&1;_then_echo_"-DCONFIG_AS_AVX2_1";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -DCONFIG_AS_AVX2=1
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if___printf_"%b_n"_"vpmovm2b_%k1_%zmm5"_|_gcc_-D__ASSEMBLY___-fno-PIE_-m64_-DCONFIG_X86_X32_ABI_-c_-x_assembler_-o_"_TMP"_-__>/dev/null_2>&1;_then_echo_"-DCONFIG_AS_AVX512_1";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -DCONFIG_AS_AVX512=1
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if___printf_"%b_n"_"sha1msg1_%xmm0_%xmm1"_|_gcc_-D__ASSEMBLY___-fno-PIE_-m64_-DCONFIG_X86_X32_ABI_-c_-x_assembler_-o_"_TMP"_-__>/dev/null_2>&1;_then_echo_"-DCONFIG_AS_SHA1_NI_1";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -DCONFIG_AS_SHA1_NI=1
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if___printf_"%b_n"_"sha256msg1_%xmm0_%xmm1"_|_gcc_-D__ASSEMBLY___-fno-PIE_-m64_-DCONFIG_X86_X32_ABI_-c_-x_assembler_-o_"_TMP"_-__>/dev/null_2>&1;_then_echo_"-DCONFIG_AS_SHA256_NI_1";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -DCONFIG_AS_SHA256_NI=1
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if___gcc_-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-mskip-rax-setup_-mtune_generic_-mno-red-zone_-mcmodel_kernel_-funit-at-a-time_-DCONFIG_X86_X32_ABI_-DCONFIG_AS_CFI_1_-DCONFIG_AS_CFI_SIGNAL_FRAME_1_-DCONFIG_AS_CFI_SECTIONS_1_-DCONFIG_AS_FXSAVEQ_1_-DCONFIG_AS_SSSE3_1_-DCONFIG_AS_CRC32_1_-DCONFIG_AS_AVX_1_-DCONFIG_AS_AVX2_1_-DCONFIG_AS_AVX512_1_-DCONFIG_AS_SHA1_NI_1_-DCONFIG_AS_SHA256_NI_1_-x_c_/dev/null_-c_-o_"_TMPO";_ld_-m_elf_x86_64__-z_max-page-size_0x200000_"_TMPO"_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"_-z_max-page-size_0x200000";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -z max-page-size=0x200000
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-mskip-rax-setup_-mtune_generic_-mno-red-zone_-mcmodel_kernel_-funit-at-a-time_-DCONFIG_X86_X32_ABI_-DCONFIG_AS_CFI_1_-DCONFIG_AS_CFI_SIGNAL_FRAME_1_-DCONFIG_AS_CFI_SECTIONS_1_-DCONFIG_AS_FXSAVEQ_1_-DCONFIG_AS_SSSE3_1_-DCONFIG_AS_CRC32_1_-DCONFIG_AS_AVX_1_-DCONFIG_AS_AVX2_1_-DCONFIG_AS_AVX512_1_-DCONFIG_AS_SHA1_NI_1_-DCONFIG_AS_SHA256_NI_1_-pipe_-Wno-sign-compare_-fno-asynchronous-unwind-tables_-mindirect-branch_thunk-extern_-mindirect-branch-register_-DRETPOLINE_-fno-delete-null-pointer-checks_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-fno-delete-null-pointer-checks";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -fno-delete-null-pointer-checks
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if___gcc_-Werror_-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-mskip-rax-setup_-mtune_generic_-mno-red-zone_-mcmodel_kernel_-funit-at-a-time_-DCONFIG_X86_X32_ABI_-DCONFIG_AS_CFI_1_-DCONFIG_AS_CFI_SIGNAL_FRAME_1_-DCONFIG_AS_CFI_SECTIONS_1_-DCONFIG_AS_FXSAVEQ_1_-DCONFIG_AS_SSSE3_1_-DCONFIG_AS_CRC32_1_-DCONFIG_AS_AVX_1_-DCONFIG_AS_AVX2_1_-DCONFIG_AS_AVX512_1_-DCONFIG_AS_SHA1_NI_1_-DCONFIG_AS_SHA256_NI_1_-pipe_-Wno-sign-compare_-fno-asynchronous-unwind-tables_-mindirect-branch_thunk-extern_-mindirect-branch-register_-DRETPOLINE_-fno-delete-null-pointer-checks_-Wframe-address_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-Wno-frame-address";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -Wno-frame-address
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if___gcc_-Werror_-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-mskip-rax-setup_-mtune_generic_-mno-red-zone_-mcmodel_kernel_-funit-at-a-time_-DCONFIG_X86_X32_ABI_-DCONFIG_AS_CFI_1_-DCONFIG_AS_CFI_SIGNAL_FRAME_1_-DCONFIG_AS_CFI_SECTIONS_1_-DCONFIG_AS_FXSAVEQ_1_-DCONFIG_AS_SSSE3_1_-DCONFIG_AS_CRC32_1_-DCONFIG_AS_AVX_1_-DCONFIG_AS_AVX2_1_-DCONFIG_AS_AVX512_1_-DCONFIG_AS_SHA1_NI_1_-DCONFIG_AS_SHA256_NI_1_-pipe_-Wno-sign-compare_-fno-asynchronous-unwind-tables_-mindirect-branch_thunk-extern_-mindirect-branch-register_-DRETPOLINE_-fno-delete-null-pointer-checks_-Wno-frame-address_-Wformat-truncation_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-Wno-format-truncation";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -Wno-format-truncation
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if___gcc_-Werror_-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-mskip-rax-setup_-mtune_generic_-mno-red-zone_-mcmodel_kernel_-funit-at-a-time_-DCONFIG_X86_X32_ABI_-DCONFIG_AS_CFI_1_-DCONFIG_AS_CFI_SIGNAL_FRAME_1_-DCONFIG_AS_CFI_SECTIONS_1_-DCONFIG_AS_FXSAVEQ_1_-DCONFIG_AS_SSSE3_1_-DCONFIG_AS_CRC32_1_-DCONFIG_AS_AVX_1_-DCONFIG_AS_AVX2_1_-DCONFIG_AS_AVX512_1_-DCONFIG_AS_SHA1_NI_1_-DCONFIG_AS_SHA256_NI_1_-pipe_-Wno-sign-compare_-fno-asynchronous-unwind-tables_-mindirect-branch_thunk-extern_-mindirect-branch-register_-DRETPOLINE_-fno-delete-null-pointer-checks_-Wno-frame-address_-Wno-format-truncation_-Wformat-overflow_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-Wno-format-overflow";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -Wno-format-overflow
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if___gcc_-Werror_-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-mskip-rax-setup_-mtune_generic_-mno-red-zone_-mcmodel_kernel_-funit-at-a-time_-DCONFIG_X86_X32_ABI_-DCONFIG_AS_CFI_1_-DCONFIG_AS_CFI_SIGNAL_FRAME_1_-DCONFIG_AS_CFI_SECTIONS_1_-DCONFIG_AS_FXSAVEQ_1_-DCONFIG_AS_SSSE3_1_-DCONFIG_AS_CRC32_1_-DCONFIG_AS_AVX_1_-DCONFIG_AS_AVX2_1_-DCONFIG_AS_AVX512_1_-DCONFIG_AS_SHA1_NI_1_-DCONFIG_AS_SHA256_NI_1_-pipe_-Wno-sign-compare_-fno-asynchronous-unwind-tables_-mindirect-branch_thunk-extern_-mindirect-branch-register_-DRETPOLINE_-fno-delete-null-pointer-checks_-Wno-frame-address_-Wno-format-truncation_-Wno-format-overflow_-Wint-in-bool-context_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-Wno-int-in-bool-context";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -Wno-int-in-bool-context
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if___gcc_-Werror_-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-mskip-rax-setup_-mtune_generic_-mno-red-zone_-mcmodel_kernel_-funit-at-a-time_-DCONFIG_X86_X32_ABI_-DCONFIG_AS_CFI_1_-DCONFIG_AS_CFI_SIGNAL_FRAME_1_-DCONFIG_AS_CFI_SECTIONS_1_-DCONFIG_AS_FXSAVEQ_1_-DCONFIG_AS_SSSE3_1_-DCONFIG_AS_CRC32_1_-DCONFIG_AS_AVX_1_-DCONFIG_AS_AVX2_1_-DCONFIG_AS_AVX512_1_-DCONFIG_AS_SHA1_NI_1_-DCONFIG_AS_SHA256_NI_1_-pipe_-Wno-sign-compare_-fno-asynchronous-unwind-tables_-mindirect-branch_thunk-extern_-mindirect-branch-register_-DRETPOLINE_-fno-delete-null-pointer-checks_-Wno-frame-address_-Wno-format-truncation_-Wno-format-overflow_-Wno-int-in-bool-context_-O2_-Wmaybe-uninitialized_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-Wno-maybe-uninitialized";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -Wno-maybe-uninitialized
+__cached_/bin/bash_./scripts/gcc-version.sh_gcc := 0703
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-mskip-rax-setup_-mtune_generic_-mno-red-zone_-mcmodel_kernel_-funit-at-a-time_-DCONFIG_X86_X32_ABI_-DCONFIG_AS_CFI_1_-DCONFIG_AS_CFI_SIGNAL_FRAME_1_-DCONFIG_AS_CFI_SECTIONS_1_-DCONFIG_AS_FXSAVEQ_1_-DCONFIG_AS_SSSE3_1_-DCONFIG_AS_CRC32_1_-DCONFIG_AS_AVX_1_-DCONFIG_AS_AVX2_1_-DCONFIG_AS_AVX512_1_-DCONFIG_AS_SHA1_NI_1_-DCONFIG_AS_SHA256_NI_1_-pipe_-Wno-sign-compare_-fno-asynchronous-unwind-tables_-mindirect-branch_thunk-extern_-mindirect-branch-register_-DRETPOLINE_-fno-delete-null-pointer-checks_-Wno-frame-address_-Wno-format-truncation_-Wno-format-overflow_-Wno-int-in-bool-context_-O2_--param_allow-store-data-races_0_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"--param_allow-store-data-races_0";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := --param=allow-store-data-races=0
+__cached_/bin/bash_./scripts/gcc-goto.sh_gcc_-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-mskip-rax-setup_-mtune_generic_-mno-red-zone_-mcmodel_kernel_-funit-at-a-time_-DCONFIG_X86_X32_ABI_-DCONFIG_AS_CFI_1_-DCONFIG_AS_CFI_SIGNAL_FRAME_1_-DCONFIG_AS_CFI_SECTIONS_1_-DCONFIG_AS_FXSAVEQ_1_-DCONFIG_AS_SSSE3_1_-DCONFIG_AS_CRC32_1_-DCONFIG_AS_AVX_1_-DCONFIG_AS_AVX2_1_-DCONFIG_AS_AVX512_1_-DCONFIG_AS_SHA1_NI_1_-DCONFIG_AS_SHA256_NI_1_-pipe_-Wno-sign-compare_-fno-asynchronous-unwind-tables_-mindirect-branch_thunk-extern_-mindirect-branch-register_-DRETPOLINE_-fno-delete-null-pointer-checks_-Wno-frame-address_-Wno-format-truncation_-Wno-format-overflow_-Wno-int-in-bool-context_-O2__--param_allow-store-data-races_0 := y
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-mskip-rax-setup_-mtune_generic_-mno-red-zone_-mcmodel_kernel_-funit-at-a-time_-DCONFIG_X86_X32_ABI_-DCONFIG_AS_CFI_1_-DCONFIG_AS_CFI_SIGNAL_FRAME_1_-DCONFIG_AS_CFI_SECTIONS_1_-DCONFIG_AS_FXSAVEQ_1_-DCONFIG_AS_SSSE3_1_-DCONFIG_AS_CRC32_1_-DCONFIG_AS_AVX_1_-DCONFIG_AS_AVX2_1_-DCONFIG_AS_AVX512_1_-DCONFIG_AS_SHA1_NI_1_-DCONFIG_AS_SHA256_NI_1_-pipe_-Wno-sign-compare_-fno-asynchronous-unwind-tables_-mindirect-branch_thunk-extern_-mindirect-branch-register_-DRETPOLINE_-fno-delete-null-pointer-checks_-Wno-frame-address_-Wno-format-truncation_-Wno-format-overflow_-Wno-int-in-bool-context_-O2_--param_allow-store-data-races_0_-DCC_HAVE_ASM_GOTO_-Wframe-larger-than_1024_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-Wframe-larger-than_1024";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -Wframe-larger-than=1024
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if___gcc_-Werror_-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-mskip-rax-setup_-mtune_generic_-mno-red-zone_-mcmodel_kernel_-funit-at-a-time_-DCONFIG_X86_X32_ABI_-DCONFIG_AS_CFI_1_-DCONFIG_AS_CFI_SIGNAL_FRAME_1_-DCONFIG_AS_CFI_SECTIONS_1_-DCONFIG_AS_FXSAVEQ_1_-DCONFIG_AS_SSSE3_1_-DCONFIG_AS_CRC32_1_-DCONFIG_AS_AVX_1_-DCONFIG_AS_AVX2_1_-DCONFIG_AS_AVX512_1_-DCONFIG_AS_SHA1_NI_1_-DCONFIG_AS_SHA256_NI_1_-pipe_-Wno-sign-compare_-fno-asynchronous-unwind-tables_-mindirect-branch_thunk-extern_-mindirect-branch-register_-DRETPOLINE_-fno-delete-null-pointer-checks_-Wno-frame-address_-Wno-format-truncation_-Wno-format-overflow_-Wno-int-in-bool-context_-O2_--param_allow-store-data-races_0_-DCC_HAVE_ASM_GOTO_-Wframe-larger-than_1024_-fstack-protector-strong_-Wunused-but-set-variable_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-Wno-unused-but-set-variable";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -Wno-unused-but-set-variable
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if___gcc_-Werror_-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-mskip-rax-setup_-mtune_generic_-mno-red-zone_-mcmodel_kernel_-funit-at-a-time_-DCONFIG_X86_X32_ABI_-DCONFIG_AS_CFI_1_-DCONFIG_AS_CFI_SIGNAL_FRAME_1_-DCONFIG_AS_CFI_SECTIONS_1_-DCONFIG_AS_FXSAVEQ_1_-DCONFIG_AS_SSSE3_1_-DCONFIG_AS_CRC32_1_-DCONFIG_AS_AVX_1_-DCONFIG_AS_AVX2_1_-DCONFIG_AS_AVX512_1_-DCONFIG_AS_SHA1_NI_1_-DCONFIG_AS_SHA256_NI_1_-pipe_-Wno-sign-compare_-fno-asynchronous-unwind-tables_-mindirect-branch_thunk-extern_-mindirect-branch-register_-DRETPOLINE_-fno-delete-null-pointer-checks_-Wno-frame-address_-Wno-format-truncation_-Wno-format-overflow_-Wno-int-in-bool-context_-O2_--param_allow-store-data-races_0_-DCC_HAVE_ASM_GOTO_-Wframe-larger-than_1024_-fstack-protector-strong_-Wno-unused-but-set-variable_-Wunused-const-variable_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-Wno-unused-const-variable";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -Wno-unused-const-variable
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-mskip-rax-setup_-mtune_generic_-mno-red-zone_-mcmodel_kernel_-funit-at-a-time_-DCONFIG_X86_X32_ABI_-DCONFIG_AS_CFI_1_-DCONFIG_AS_CFI_SIGNAL_FRAME_1_-DCONFIG_AS_CFI_SECTIONS_1_-DCONFIG_AS_FXSAVEQ_1_-DCONFIG_AS_SSSE3_1_-DCONFIG_AS_CRC32_1_-DCONFIG_AS_AVX_1_-DCONFIG_AS_AVX2_1_-DCONFIG_AS_AVX512_1_-DCONFIG_AS_SHA1_NI_1_-DCONFIG_AS_SHA256_NI_1_-pipe_-Wno-sign-compare_-fno-asynchronous-unwind-tables_-mindirect-branch_thunk-extern_-mindirect-branch-register_-DRETPOLINE_-fno-delete-null-pointer-checks_-Wno-frame-address_-Wno-format-truncation_-Wno-format-overflow_-Wno-int-in-bool-context_-O2_--param_allow-store-data-races_0_-DCC_HAVE_ASM_GOTO_-Wframe-larger-than_1024_-fstack-protector-strong_-Wno-unused-but-set-variable_-Wno-unused-const-variable_-fno-omit-frame-pointer_-fno-optimize-sibling-calls__-fno-var-tracking-assignments_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"_-fno-var-tracking-assignments";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -fno-var-tracking-assignments
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-mskip-rax-setup_-mtune_generic_-mno-red-zone_-mcmodel_kernel_-funit-at-a-time_-DCONFIG_X86_X32_ABI_-DCONFIG_AS_CFI_1_-DCONFIG_AS_CFI_SIGNAL_FRAME_1_-DCONFIG_AS_CFI_SECTIONS_1_-DCONFIG_AS_FXSAVEQ_1_-DCONFIG_AS_SSSE3_1_-DCONFIG_AS_CRC32_1_-DCONFIG_AS_AVX_1_-DCONFIG_AS_AVX2_1_-DCONFIG_AS_AVX512_1_-DCONFIG_AS_SHA1_NI_1_-DCONFIG_AS_SHA256_NI_1_-pipe_-Wno-sign-compare_-fno-asynchronous-unwind-tables_-mindirect-branch_thunk-extern_-mindirect-branch-register_-DRETPOLINE_-fno-delete-null-pointer-checks_-Wno-frame-address_-Wno-format-truncation_-Wno-format-overflow_-Wno-int-in-bool-context_-O2_--param_allow-store-data-races_0_-DCC_HAVE_ASM_GOTO_-Wframe-larger-than_1024_-fstack-protector-strong_-Wno-unused-but-set-variable_-Wno-unused-const-variable_-fno-omit-frame-pointer_-fno-optimize-sibling-calls_-fno-var-tracking-assignments__-mfentry_-DCC_USING_FENTRY_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"_-mfentry_-DCC_USING_FENTRY";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -mfentry -DCC_USING_FENTRY
+__cached_gcc_-print-file-name_include := /usr/lib/gcc/x86_64-linux-gnu/7/include
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-mskip-rax-setup_-mtune_generic_-mno-red-zone_-mcmodel_kernel_-funit-at-a-time_-DCONFIG_X86_X32_ABI_-DCONFIG_AS_CFI_1_-DCONFIG_AS_CFI_SIGNAL_FRAME_1_-DCONFIG_AS_CFI_SECTIONS_1_-DCONFIG_AS_FXSAVEQ_1_-DCONFIG_AS_SSSE3_1_-DCONFIG_AS_CRC32_1_-DCONFIG_AS_AVX_1_-DCONFIG_AS_AVX2_1_-DCONFIG_AS_AVX512_1_-DCONFIG_AS_SHA1_NI_1_-DCONFIG_AS_SHA256_NI_1_-pipe_-Wno-sign-compare_-fno-asynchronous-unwind-tables_-mindirect-branch_thunk-extern_-mindirect-branch-register_-DRETPOLINE_-fno-delete-null-pointer-checks_-Wno-frame-address_-Wno-format-truncation_-Wno-format-overflow_-Wno-int-in-bool-context_-O2_--param_allow-store-data-races_0_-DCC_HAVE_ASM_GOTO_-Wframe-larger-than_1024_-fstack-protector-strong_-Wno-unused-but-set-variable_-Wno-unused-const-variable_-fno-omit-frame-pointer_-fno-optimize-sibling-calls_-fno-var-tracking-assignments_-pg_-mfentry_-DCC_USING_FENTRY_-Wdeclaration-after-statement_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-Wdeclaration-after-statement";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -Wdeclaration-after-statement
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if___gcc_-Werror_-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-mskip-rax-setup_-mtune_generic_-mno-red-zone_-mcmodel_kernel_-funit-at-a-time_-DCONFIG_X86_X32_ABI_-DCONFIG_AS_CFI_1_-DCONFIG_AS_CFI_SIGNAL_FRAME_1_-DCONFIG_AS_CFI_SECTIONS_1_-DCONFIG_AS_FXSAVEQ_1_-DCONFIG_AS_SSSE3_1_-DCONFIG_AS_CRC32_1_-DCONFIG_AS_AVX_1_-DCONFIG_AS_AVX2_1_-DCONFIG_AS_AVX512_1_-DCONFIG_AS_SHA1_NI_1_-DCONFIG_AS_SHA256_NI_1_-pipe_-Wno-sign-compare_-fno-asynchronous-unwind-tables_-mindirect-branch_thunk-extern_-mindirect-branch-register_-DRETPOLINE_-fno-delete-null-pointer-checks_-Wno-frame-address_-Wno-format-truncation_-Wno-format-overflow_-Wno-int-in-bool-context_-O2_--param_allow-store-data-races_0_-DCC_HAVE_ASM_GOTO_-Wframe-larger-than_1024_-fstack-protector-strong_-Wno-unused-but-set-variable_-Wno-unused-const-variable_-fno-omit-frame-pointer_-fno-optimize-sibling-calls_-fno-var-tracking-assignments_-pg_-mfentry_-DCC_USING_FENTRY_-Wdeclaration-after-statement_-Wpointer-sign_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-Wno-pointer-sign";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -Wno-pointer-sign
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-mskip-rax-setup_-mtune_generic_-mno-red-zone_-mcmodel_kernel_-funit-at-a-time_-DCONFIG_X86_X32_ABI_-DCONFIG_AS_CFI_1_-DCONFIG_AS_CFI_SIGNAL_FRAME_1_-DCONFIG_AS_CFI_SECTIONS_1_-DCONFIG_AS_FXSAVEQ_1_-DCONFIG_AS_SSSE3_1_-DCONFIG_AS_CRC32_1_-DCONFIG_AS_AVX_1_-DCONFIG_AS_AVX2_1_-DCONFIG_AS_AVX512_1_-DCONFIG_AS_SHA1_NI_1_-DCONFIG_AS_SHA256_NI_1_-pipe_-Wno-sign-compare_-fno-asynchronous-unwind-tables_-mindirect-branch_thunk-extern_-mindirect-branch-register_-DRETPOLINE_-fno-delete-null-pointer-checks_-Wno-frame-address_-Wno-format-truncation_-Wno-format-overflow_-Wno-int-in-bool-context_-O2_--param_allow-store-data-races_0_-DCC_HAVE_ASM_GOTO_-Wframe-larger-than_1024_-fstack-protector-strong_-Wno-unused-but-set-variable_-Wno-unused-const-variable_-fno-omit-frame-pointer_-fno-optimize-sibling-calls_-fno-var-tracking-assignments_-pg_-mfentry_-DCC_USING_FENTRY_-Wdeclaration-after-statement_-Wno-pointer-sign_-fno-strict-overflow_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-fno-strict-overflow";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -fno-strict-overflow
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-mskip-rax-setup_-mtune_generic_-mno-red-zone_-mcmodel_kernel_-funit-at-a-time_-DCONFIG_X86_X32_ABI_-DCONFIG_AS_CFI_1_-DCONFIG_AS_CFI_SIGNAL_FRAME_1_-DCONFIG_AS_CFI_SECTIONS_1_-DCONFIG_AS_FXSAVEQ_1_-DCONFIG_AS_SSSE3_1_-DCONFIG_AS_CRC32_1_-DCONFIG_AS_AVX_1_-DCONFIG_AS_AVX2_1_-DCONFIG_AS_AVX512_1_-DCONFIG_AS_SHA1_NI_1_-DCONFIG_AS_SHA256_NI_1_-pipe_-Wno-sign-compare_-fno-asynchronous-unwind-tables_-mindirect-branch_thunk-extern_-mindirect-branch-register_-DRETPOLINE_-fno-delete-null-pointer-checks_-Wno-frame-address_-Wno-format-truncation_-Wno-format-overflow_-Wno-int-in-bool-context_-O2_--param_allow-store-data-races_0_-DCC_HAVE_ASM_GOTO_-Wframe-larger-than_1024_-fstack-protector-strong_-Wno-unused-but-set-variable_-Wno-unused-const-variable_-fno-omit-frame-pointer_-fno-optimize-sibling-calls_-fno-var-tracking-assignments_-pg_-mfentry_-DCC_USING_FENTRY_-Wdeclaration-after-statement_-Wno-pointer-sign_-fno-strict-overflow_-fno-merge-all-constants_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-fno-merge-all-constants";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -fno-merge-all-constants
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-mskip-rax-setup_-mtune_generic_-mno-red-zone_-mcmodel_kernel_-funit-at-a-time_-DCONFIG_X86_X32_ABI_-DCONFIG_AS_CFI_1_-DCONFIG_AS_CFI_SIGNAL_FRAME_1_-DCONFIG_AS_CFI_SECTIONS_1_-DCONFIG_AS_FXSAVEQ_1_-DCONFIG_AS_SSSE3_1_-DCONFIG_AS_CRC32_1_-DCONFIG_AS_AVX_1_-DCONFIG_AS_AVX2_1_-DCONFIG_AS_AVX512_1_-DCONFIG_AS_SHA1_NI_1_-DCONFIG_AS_SHA256_NI_1_-pipe_-Wno-sign-compare_-fno-asynchronous-unwind-tables_-mindirect-branch_thunk-extern_-mindirect-branch-register_-DRETPOLINE_-fno-delete-null-pointer-checks_-Wno-frame-address_-Wno-format-truncation_-Wno-format-overflow_-Wno-int-in-bool-context_-O2_--param_allow-store-data-races_0_-DCC_HAVE_ASM_GOTO_-Wframe-larger-than_1024_-fstack-protector-strong_-Wno-unused-but-set-variable_-Wno-unused-const-variable_-fno-omit-frame-pointer_-fno-optimize-sibling-calls_-fno-var-tracking-assignments_-pg_-mfentry_-DCC_USING_FENTRY_-Wdeclaration-after-statement_-Wno-pointer-sign_-fno-strict-overflow_-fno-merge-all-constants_-fmerge-constants_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-fmerge-constants";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -fmerge-constants
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-mskip-rax-setup_-mtune_generic_-mno-red-zone_-mcmodel_kernel_-funit-at-a-time_-DCONFIG_X86_X32_ABI_-DCONFIG_AS_CFI_1_-DCONFIG_AS_CFI_SIGNAL_FRAME_1_-DCONFIG_AS_CFI_SECTIONS_1_-DCONFIG_AS_FXSAVEQ_1_-DCONFIG_AS_SSSE3_1_-DCONFIG_AS_CRC32_1_-DCONFIG_AS_AVX_1_-DCONFIG_AS_AVX2_1_-DCONFIG_AS_AVX512_1_-DCONFIG_AS_SHA1_NI_1_-DCONFIG_AS_SHA256_NI_1_-pipe_-Wno-sign-compare_-fno-asynchronous-unwind-tables_-mindirect-branch_thunk-extern_-mindirect-branch-register_-DRETPOLINE_-fno-delete-null-pointer-checks_-Wno-frame-address_-Wno-format-truncation_-Wno-format-overflow_-Wno-int-in-bool-context_-O2_--param_allow-store-data-races_0_-DCC_HAVE_ASM_GOTO_-Wframe-larger-than_1024_-fstack-protector-strong_-Wno-unused-but-set-variable_-Wno-unused-const-variable_-fno-omit-frame-pointer_-fno-optimize-sibling-calls_-fno-var-tracking-assignments_-pg_-mfentry_-DCC_USING_FENTRY_-Wdeclaration-after-statement_-Wno-pointer-sign_-fno-strict-overflow_-fno-merge-all-constants_-fmerge-constants_-fno-stack-check_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-fno-stack-check";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -fno-stack-check
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-mskip-rax-setup_-mtune_generic_-mno-red-zone_-mcmodel_kernel_-funit-at-a-time_-DCONFIG_X86_X32_ABI_-DCONFIG_AS_CFI_1_-DCONFIG_AS_CFI_SIGNAL_FRAME_1_-DCONFIG_AS_CFI_SECTIONS_1_-DCONFIG_AS_FXSAVEQ_1_-DCONFIG_AS_SSSE3_1_-DCONFIG_AS_CRC32_1_-DCONFIG_AS_AVX_1_-DCONFIG_AS_AVX2_1_-DCONFIG_AS_AVX512_1_-DCONFIG_AS_SHA1_NI_1_-DCONFIG_AS_SHA256_NI_1_-pipe_-Wno-sign-compare_-fno-asynchronous-unwind-tables_-mindirect-branch_thunk-extern_-mindirect-branch-register_-DRETPOLINE_-fno-delete-null-pointer-checks_-Wno-frame-address_-Wno-format-truncation_-Wno-format-overflow_-Wno-int-in-bool-context_-O2_--param_allow-store-data-races_0_-DCC_HAVE_ASM_GOTO_-Wframe-larger-than_1024_-fstack-protector-strong_-Wno-unused-but-set-variable_-Wno-unused-const-variable_-fno-omit-frame-pointer_-fno-optimize-sibling-calls_-fno-var-tracking-assignments_-pg_-mfentry_-DCC_USING_FENTRY_-Wdeclaration-after-statement_-Wno-pointer-sign_-fno-strict-overflow_-fno-merge-all-constants_-fmerge-constants_-fno-stack-check_-fconserve-stack_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-fconserve-stack";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -fconserve-stack
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-mskip-rax-setup_-mtune_generic_-mno-red-zone_-mcmodel_kernel_-funit-at-a-time_-DCONFIG_X86_X32_ABI_-DCONFIG_AS_CFI_1_-DCONFIG_AS_CFI_SIGNAL_FRAME_1_-DCONFIG_AS_CFI_SECTIONS_1_-DCONFIG_AS_FXSAVEQ_1_-DCONFIG_AS_SSSE3_1_-DCONFIG_AS_CRC32_1_-DCONFIG_AS_AVX_1_-DCONFIG_AS_AVX2_1_-DCONFIG_AS_AVX512_1_-DCONFIG_AS_SHA1_NI_1_-DCONFIG_AS_SHA256_NI_1_-pipe_-Wno-sign-compare_-fno-asynchronous-unwind-tables_-mindirect-branch_thunk-extern_-mindirect-branch-register_-DRETPOLINE_-fno-delete-null-pointer-checks_-Wno-frame-address_-Wno-format-truncation_-Wno-format-overflow_-Wno-int-in-bool-context_-O2_--param_allow-store-data-races_0_-DCC_HAVE_ASM_GOTO_-Wframe-larger-than_1024_-fstack-protector-strong_-Wno-unused-but-set-variable_-Wno-unused-const-variable_-fno-omit-frame-pointer_-fno-optimize-sibling-calls_-fno-var-tracking-assignments_-pg_-mfentry_-DCC_USING_FENTRY_-Wdeclaration-after-statement_-Wno-pointer-sign_-fno-strict-overflow_-fno-merge-all-constants_-fmerge-constants_-fno-stack-check_-fconserve-stack_-Werror_implicit-int_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-Werror_implicit-int";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -Werror=implicit-int
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-mskip-rax-setup_-mtune_generic_-mno-red-zone_-mcmodel_kernel_-funit-at-a-time_-DCONFIG_X86_X32_ABI_-DCONFIG_AS_CFI_1_-DCONFIG_AS_CFI_SIGNAL_FRAME_1_-DCONFIG_AS_CFI_SECTIONS_1_-DCONFIG_AS_FXSAVEQ_1_-DCONFIG_AS_SSSE3_1_-DCONFIG_AS_CRC32_1_-DCONFIG_AS_AVX_1_-DCONFIG_AS_AVX2_1_-DCONFIG_AS_AVX512_1_-DCONFIG_AS_SHA1_NI_1_-DCONFIG_AS_SHA256_NI_1_-pipe_-Wno-sign-compare_-fno-asynchronous-unwind-tables_-mindirect-branch_thunk-extern_-mindirect-branch-register_-DRETPOLINE_-fno-delete-null-pointer-checks_-Wno-frame-address_-Wno-format-truncation_-Wno-format-overflow_-Wno-int-in-bool-context_-O2_--param_allow-store-data-races_0_-DCC_HAVE_ASM_GOTO_-Wframe-larger-than_1024_-fstack-protector-strong_-Wno-unused-but-set-variable_-Wno-unused-const-variable_-fno-omit-frame-pointer_-fno-optimize-sibling-calls_-fno-var-tracking-assignments_-pg_-mfentry_-DCC_USING_FENTRY_-Wdeclaration-after-statement_-Wno-pointer-sign_-fno-strict-overflow_-fno-merge-all-constants_-fmerge-constants_-fno-stack-check_-fconserve-stack_-Werror_implicit-int_-Werror_strict-prototypes_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-Werror_strict-prototypes";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -Werror=strict-prototypes
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-mskip-rax-setup_-mtune_generic_-mno-red-zone_-mcmodel_kernel_-funit-at-a-time_-DCONFIG_X86_X32_ABI_-DCONFIG_AS_CFI_1_-DCONFIG_AS_CFI_SIGNAL_FRAME_1_-DCONFIG_AS_CFI_SECTIONS_1_-DCONFIG_AS_FXSAVEQ_1_-DCONFIG_AS_SSSE3_1_-DCONFIG_AS_CRC32_1_-DCONFIG_AS_AVX_1_-DCONFIG_AS_AVX2_1_-DCONFIG_AS_AVX512_1_-DCONFIG_AS_SHA1_NI_1_-DCONFIG_AS_SHA256_NI_1_-pipe_-Wno-sign-compare_-fno-asynchronous-unwind-tables_-mindirect-branch_thunk-extern_-mindirect-branch-register_-DRETPOLINE_-fno-delete-null-pointer-checks_-Wno-frame-address_-Wno-format-truncation_-Wno-format-overflow_-Wno-int-in-bool-context_-O2_--param_allow-store-data-races_0_-DCC_HAVE_ASM_GOTO_-Wframe-larger-than_1024_-fstack-protector-strong_-Wno-unused-but-set-variable_-Wno-unused-const-variable_-fno-omit-frame-pointer_-fno-optimize-sibling-calls_-fno-var-tracking-assignments_-pg_-mfentry_-DCC_USING_FENTRY_-Wdeclaration-after-statement_-Wno-pointer-sign_-fno-strict-overflow_-fno-merge-all-constants_-fmerge-constants_-fno-stack-check_-fconserve-stack_-Werror_implicit-int_-Werror_strict-prototypes_-Werror_date-time_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-Werror_date-time";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -Werror=date-time
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-mskip-rax-setup_-mtune_generic_-mno-red-zone_-mcmodel_kernel_-funit-at-a-time_-DCONFIG_X86_X32_ABI_-DCONFIG_AS_CFI_1_-DCONFIG_AS_CFI_SIGNAL_FRAME_1_-DCONFIG_AS_CFI_SECTIONS_1_-DCONFIG_AS_FXSAVEQ_1_-DCONFIG_AS_SSSE3_1_-DCONFIG_AS_CRC32_1_-DCONFIG_AS_AVX_1_-DCONFIG_AS_AVX2_1_-DCONFIG_AS_AVX512_1_-DCONFIG_AS_SHA1_NI_1_-DCONFIG_AS_SHA256_NI_1_-pipe_-Wno-sign-compare_-fno-asynchronous-unwind-tables_-mindirect-branch_thunk-extern_-mindirect-branch-register_-DRETPOLINE_-fno-delete-null-pointer-checks_-Wno-frame-address_-Wno-format-truncation_-Wno-format-overflow_-Wno-int-in-bool-context_-O2_--param_allow-store-data-races_0_-DCC_HAVE_ASM_GOTO_-Wframe-larger-than_1024_-fstack-protector-strong_-Wno-unused-but-set-variable_-Wno-unused-const-variable_-fno-omit-frame-pointer_-fno-optimize-sibling-calls_-fno-var-tracking-assignments_-pg_-mfentry_-DCC_USING_FENTRY_-Wdeclaration-after-statement_-Wno-pointer-sign_-fno-strict-overflow_-fno-merge-all-constants_-fmerge-constants_-fno-stack-check_-fconserve-stack_-Werror_implicit-int_-Werror_strict-prototypes_-Werror_date-time_-Werror_incompatible-pointer-types_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-Werror_incompatible-pointer-types";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -Werror=incompatible-pointer-types
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if____gcc_-Werror__-D__KERNEL___-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-mskip-rax-setup_-mtune_generic_-mno-red-zone_-mcmodel_kernel_-funit-at-a-time_-DCONFIG_X86_X32_ABI_-DCONFIG_AS_CFI_1_-DCONFIG_AS_CFI_SIGNAL_FRAME_1_-DCONFIG_AS_CFI_SECTIONS_1_-DCONFIG_AS_FXSAVEQ_1_-DCONFIG_AS_SSSE3_1_-DCONFIG_AS_CRC32_1_-DCONFIG_AS_AVX_1_-DCONFIG_AS_AVX2_1_-DCONFIG_AS_AVX512_1_-DCONFIG_AS_SHA1_NI_1_-DCONFIG_AS_SHA256_NI_1_-pipe_-Wno-sign-compare_-fno-asynchronous-unwind-tables_-mindirect-branch_thunk-extern_-mindirect-branch-register_-DRETPOLINE_-fno-delete-null-pointer-checks_-Wno-frame-address_-Wno-format-truncation_-Wno-format-overflow_-Wno-int-in-bool-context_-O2_--param_allow-store-data-races_0_-DCC_HAVE_ASM_GOTO_-Wframe-larger-than_1024_-fstack-protector-strong_-Wno-unused-but-set-variable_-Wno-unused-const-variable_-fno-omit-frame-pointer_-fno-optimize-sibling-calls_-fno-var-tracking-assignments_-pg_-mfentry_-DCC_USING_FENTRY_-Wdeclaration-after-statement_-Wno-pointer-sign_-fno-strict-overflow_-fno-merge-all-constants_-fmerge-constants_-fno-stack-check_-fconserve-stack_-Werror_implicit-int_-Werror_strict-prototypes_-Werror_date-time_-Werror_incompatible-pointer-types_-Werror_designated-init_-c_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"-Werror_designated-init";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -Werror=designated-init
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if___ar_rcD_"_TMP"__>/dev/null_2>&1;_then_echo_"D";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := D
+__cached_set_-e;_TMP_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.tmp";_TMPO_"/home/karenx/MY_SYSPRO/GIT/dma_ip_drivers.git/QDMA/linux-kernel/drv/.__.o";_if___gcc__-Wl_--build-id_-D__KERNEL_____-Wall_-Wundef_-Wstrict-prototypes_-Wno-trigraphs_-fno-strict-aliasing_-fno-common_-fshort-wchar_-Werror-implicit-function-declaration_-Wno-format-security_-std_gnu89_-fno-PIE_-mno-sse_-mno-mmx_-mno-sse2_-mno-3dnow_-mno-avx_-m64_-falign-jumps_1_-falign-loops_1_-mno-80387_-mno-fp-ret-in-387_-mpreferred-stack-boundary_3_-mskip-rax-setup_-mtune_generic_-mno-red-zone_-mcmodel_kernel_-funit-at-a-time_-DCONFIG_X86_X32_ABI_-DCONFIG_AS_CFI_1_-DCONFIG_AS_CFI_SIGNAL_FRAME_1_-DCONFIG_AS_CFI_SECTIONS_1_-DCONFIG_AS_FXSAVEQ_1_-DCONFIG_AS_SSSE3_1_-DCONFIG_AS_CRC32_1_-DCONFIG_AS_AVX_1_-DCONFIG_AS_AVX2_1_-DCONFIG_AS_AVX512_1_-DCONFIG_AS_SHA1_NI_1_-DCONFIG_AS_SHA256_NI_1_-pipe_-Wno-sign-compare_-fno-asynchronous-unwind-tables_-mindirect-branch_thunk-extern_-mindirect-branch-register_-DRETPOLINE_-fno-delete-null-pointer-checks_-Wno-frame-address_-Wno-format-truncation_-Wno-format-overflow_-Wno-int-in-bool-context_-O2_--param_allow-store-data-races_0_-DCC_HAVE_ASM_GOTO_-Wframe-larger-than_1024_-fstack-protector-strong_-Wno-unused-but-set-variable_-Wno-unused-const-variable_-fno-omit-frame-pointer_-fno-optimize-sibling-calls_-fno-var-tracking-assignments_-pg_-mfentry_-DCC_USING_FENTRY_-Wdeclaration-after-statement_-Wno-pointer-sign_-fno-strict-overflow_-fno-merge-all-constants_-fmerge-constants_-fno-stack-check_-fconserve-stack_-Werror_implicit-int_-Werror_strict-prototypes_-Werror_date-time_-Werror_incompatible-pointer-types_-Werror_designated-init_-nostdlib_-x_c_/dev/null_-o_"_TMP"__>/dev/null_2>&1;_then_echo_"_-Wl_--build-id";_else_echo_"";_fi;_rm_-f_"_TMP"_"_TMPO" := -Wl,--build-id
diff --git a/QDMA/linux-kernel/drv/Makefile b/QDMA/linux-kernel/drv/Makefile
new file mode 100644
index 0000000..b85c19b
--- /dev/null
+++ b/QDMA/linux-kernel/drv/Makefile
@@ -0,0 +1,83 @@
+SHELL = /bin/bash
+
+# The top-level makefile defines required variables and flags.
+ifneq ($(shell [[ $(MAKELEVEL) -ge 1 ]] && echo 1),1)
+  $(error Please use the top-level Makefile to build this driver)
+endif
+
+ifneq ($(wildcard /etc/lsb-release),)
+  ifneq ($(shell $(grep) "Ubuntu" /etc/lsb-release),)
+    FLAGS += -DUBUNTU_VERSION_CODE
+  endif
+endif
+
+include $(srcdir)/make/common_flags.mk
+
+$(info srcdir = $(srcdir).)
+$(info KSRC = $(KSRC).)
+$(info VF = $(VF).)
+
+MOD_NAME := qdma$(PFVF_TYPE)
+
+EXTRA_CFLAGS += -DLINUX -D__KERNEL__ -DMODULE -O2 -pipe -Wall -Werror
+EXTRA_CFLAGS += $(FLAGS) $(CPPFLAGS) $(EXTRA_FLAGS)
+EXTRA_CFLAGS += -I$(srcdir)/include
+EXTRA_CFLAGS += -I$(KSRC)/include
+EXTRA_CFLAGS += -I.
+
+# linux >= 3.13 genl_ops become part of the genl_family. And although
+# genl_register_family_with_ops() is still retained until kernel 4.10,
+# its prototype changed from a extern function to a define.
+#
+ifneq ($(shell $(grep) -c 'int genl_register_family_with_ops' $(KINC)/net/genetlink.h),0) 
+  ccflags-y += -D__GENL_REG_FAMILY_OPS_FUNC__
+endif
+
+# linux <= 3.13 pci_msix_vec_count is not defined.
+#
+ifeq ($(shell $(grep) -c 'int pci_msix_vec_count' $(KINC)/linux/pci.h),0) 
+  ccflags-y += -D__PCI_MSI_VEC_COUNT__
+endif
+
+# linux < 3.13 list_next_entry is not defined.
+#
+ifeq ($(shell $(grep) -c 'list_next_entry' $(KINC)/linux/list.h),0) 
+  ccflags-y += -D__LIST_NEXT_ENTRY__
+endif
+
+# linux < 3.18.13 READ_ONCE is not defined.
+#
+ifneq ($(shell $(grep) -c 'READ_ONCE' $(KINC)/linux/compiler.h),0) 
+  ccflags-y += -D__READ_ONCE_DEFINED__
+endif
+
+$(info EXTRA_FLAGS = $(EXTRA_FLAGS).)
+$(info ccflags-y = $(ccflags-y).)
+#EXTRA_CFLAGS += -DDEBUG
+
+ifneq ($(modulesymfile),)
+  override symverfile = symverfile="$(topdir)/$(modulesymfile) \
+					-o $(drvdir)/$(modulesymfile)"
+else
+  override symverfile =
+endif
+
+ifneq ($(SUBDIRS),)
+  BASE_OBJS := $(patsubst $(SUBDIRS)/%.c,%.o,$(wildcard $(SUBDIRS)/*.c $(SUBDIRS)/*/*.c))
+endif
+obj-m := $(MOD_NAME).o
+$(MOD_NAME)-objs := $(BASE_OBJS)
+
+.PHONY: build
+build:
+	@mkdir -p -m 755 $(build_dir)
+	@rm -f $(MOD_NAME).ko $(build_dir)/$(MOD_NAME).ko
+	@$(MAKE) symverfile=$(symverfile) KBUILD_EXTRA_SYMBOLS=$(extra_symb) -C $(KOBJ) SUBDIRS=$(shell pwd) modules
+	@cp $(MOD_NAME).ko $(build_dir)
+
+.PHONY: clean
+clean:
+	@-/bin/rm -rf *.ko* ?odule* .tmp_versions *.mod.* *.o *.o.* .*.o.* .*.cmd
+	@-/bin/rm -rf */*.o */*.o.* */.*.o.* */.*.cmd
+	@-/bin/rm -rf $(build_dir)/*.ko
+	@-/bin/rm -f $(srcdir)/drv/libqdma
diff --git a/QDMA/linux-kernel/drv/cdev.c b/QDMA/linux-kernel/drv/cdev.c
new file mode 100644
index 0000000..72eb57b
--- /dev/null
+++ b/QDMA/linux-kernel/drv/cdev.c
@@ -0,0 +1,800 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#define pr_fmt(fmt)	KBUILD_MODNAME ":%s: " fmt, __func__
+
+#include "cdev.h"
+
+#include <asm/cacheflush.h>
+#include <linux/device.h>
+#include <linux/errno.h>
+#include <linux/fs.h>
+#include <linux/kernel.h>
+#include <linux/pci.h>
+#include <linux/slab.h>
+#include <linux/types.h>
+#include <linux/uaccess.h>
+#include <linux/slab.h>
+#include <linux/aio.h>
+#include <linux/sched.h>
+#include <linux/wait.h>
+#include <linux/kthread.h>
+#include <linux/version.h>
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 16, 0)
+#include <linux/uio.h>
+#endif
+
+#include "qdma_mod.h"
+
+
+/*
+ * @struct - xlnx_phy_dev
+ * @brief	xilinx board device data members
+ */
+struct xlnx_phy_dev {
+	struct list_head list_head;	/**< board list */
+	unsigned int major;	/**< major number per board */
+	unsigned int device_bus;	/**< PCIe device bus number per board */
+};
+
+static LIST_HEAD(xlnx_phy_dev_list);
+static DEFINE_MUTEX(xlnx_phy_dev_mutex);
+
+struct cdev_async_io {
+	ssize_t res2;
+	unsigned long req_count;
+	unsigned long cmpl_count;
+	unsigned long err_cnt;
+	struct qdma_io_cb *qiocb;
+	struct qdma_request **reqv;
+	struct kiocb *iocb;
+	struct work_struct wrk_itm;
+};
+
+enum qdma_cdev_ioctl_cmd {
+	QDMA_CDEV_IOCTL_NO_MEMCPY,
+	QDMA_CDEV_IOCTL_CMDS
+};
+
+struct class *qdma_class;
+static struct kmem_cache *cdev_cache;
+
+static ssize_t cdev_gen_read_write(struct file *file, char __user *buf,
+		size_t count, loff_t *pos, bool write);
+static void unmap_user_buf(struct qdma_io_cb *iocb, bool write);
+static inline void iocb_release(struct qdma_io_cb *iocb);
+
+static inline void xlnx_phy_dev_list_remove(struct xlnx_phy_dev *phy_dev)
+{
+	if (!phy_dev)
+		return;
+
+	mutex_lock(&xlnx_phy_dev_mutex);
+	list_del(&phy_dev->list_head);
+	mutex_unlock(&xlnx_phy_dev_mutex);
+}
+
+static inline void xlnx_phy_dev_list_add(struct xlnx_phy_dev *phy_dev)
+{
+	if (!phy_dev)
+		return;
+
+	mutex_lock(&xlnx_phy_dev_mutex);
+	list_add_tail(&phy_dev->list_head, &xlnx_phy_dev_list);
+	mutex_unlock(&xlnx_phy_dev_mutex);
+}
+
+static int qdma_req_completed(struct qdma_request *req,
+		       unsigned int bytes_done, int err)
+{
+	struct qdma_io_cb *qiocb = container_of(req,
+						struct qdma_io_cb,
+						req);
+	struct cdev_async_io *caio = NULL;
+	bool free_caio = false;
+	ssize_t res, res2;
+
+
+	if (qiocb) {
+		caio = (struct cdev_async_io *)qiocb->private;
+	} else {
+		pr_err("Invalid Data structure. Probable memory corruption");
+		return -EINVAL;
+	}
+
+	if (!caio) {
+		pr_err("Invalid Data structure. Probable memory corruption");
+		return -EINVAL;
+	}
+
+	unmap_user_buf(qiocb, req->write);
+	iocb_release(qiocb);
+	caio->res2 |= (err < 0) ? err : 0;
+	if (caio->res2)
+		caio->err_cnt++;
+	caio->cmpl_count++;
+	if (caio->cmpl_count == caio->req_count) {
+		res = caio->cmpl_count - caio->err_cnt;
+		res2 = caio->res2;
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 1, 0)
+		caio->iocb->ki_complete(caio->iocb, res, res2);
+#else
+		aio_complete(caio->iocb, res, res2);
+#endif
+		kfree(caio->qiocb);
+		free_caio = true;
+	}
+	if (free_caio)
+		kmem_cache_free(cdev_cache, caio);
+
+	return 0;
+}
+
+/*
+ * character device file operations
+ */
+static int cdev_gen_open(struct inode *inode, struct file *file)
+{
+	struct qdma_cdev *xcdev = container_of(inode->i_cdev, struct qdma_cdev,
+						cdev);
+	file->private_data = xcdev;
+
+	if (xcdev->fp_open_extra)
+		return xcdev->fp_open_extra(xcdev);
+
+	return 0;
+}
+
+static int cdev_gen_close(struct inode *inode, struct file *file)
+{
+	struct qdma_cdev *xcdev = (struct qdma_cdev *)file->private_data;
+
+	if (xcdev && xcdev->fp_close_extra)
+		return xcdev->fp_close_extra(xcdev);
+
+	return 0;
+}
+
+static loff_t cdev_gen_llseek(struct file *file, loff_t off, int whence)
+{
+	struct qdma_cdev *xcdev = (struct qdma_cdev *)file->private_data;
+
+	loff_t newpos = 0;
+
+	switch (whence) {
+	case 0: /* SEEK_SET */
+		newpos = off;
+		break;
+	case 1: /* SEEK_CUR */
+		newpos = file->f_pos + off;
+		break;
+	case 2: /* SEEK_END, @TODO should work from end of address space */
+		newpos = UINT_MAX + off;
+		break;
+	default: /* can't happen */
+		return -EINVAL;
+	}
+	if (newpos < 0)
+		return -EINVAL;
+	file->f_pos = newpos;
+
+	pr_debug("%s: pos=%lld\n", xcdev->name, (signed long long)newpos);
+
+	return newpos;
+}
+
+static long cdev_gen_ioctl(struct file *file, unsigned int cmd,
+			unsigned long arg)
+{
+	struct qdma_cdev *xcdev = (struct qdma_cdev *)file->private_data;
+
+	switch (cmd) {
+		case QDMA_CDEV_IOCTL_NO_MEMCPY:
+			get_user(xcdev->no_memcpy, (unsigned char *)arg);
+			return 0;
+		default:
+			break;
+	}
+	if (xcdev->fp_ioctl_extra)
+		return xcdev->fp_ioctl_extra(xcdev, cmd, arg);
+
+	pr_info("%s ioctl NOT supported.\n", xcdev->name);
+	return -EINVAL;
+}
+
+/*
+ * cdev r/w
+ */
+static inline void iocb_release(struct qdma_io_cb *iocb)
+{
+	if (iocb->pages)
+		iocb->pages = NULL;
+	kfree(iocb->sgl);
+	iocb->sgl = NULL;
+	iocb->buf = NULL;
+}
+
+static void unmap_user_buf(struct qdma_io_cb *iocb, bool write)
+{
+	int i;
+
+	if (!iocb->pages || !iocb->pages_nr)
+		return;
+
+	for (i = 0; i < iocb->pages_nr; i++) {
+		if (iocb->pages[i]) {
+			if (!write)
+				set_page_dirty_lock(iocb->pages[i]);
+			put_page(iocb->pages[i]);
+		} else
+			break;
+	}
+
+	if (i != iocb->pages_nr)
+		pr_err("sgl pages %d/%u.\n", i, iocb->pages_nr);
+
+	iocb->pages_nr = 0;
+}
+
+static int map_user_buf_to_sgl(struct qdma_io_cb *iocb, bool write)
+{
+	unsigned long len = iocb->len;
+	char *buf = iocb->buf;
+	struct qdma_sw_sg *sg;
+	unsigned int pg_off = offset_in_page(buf);
+	unsigned int pages_nr = (len + pg_off + PAGE_SIZE - 1) >> PAGE_SHIFT;
+	int i;
+	int rv;
+
+	if (len == 0)
+		pages_nr = 1;
+	if (pages_nr == 0)
+		return -EINVAL;
+
+	iocb->pages_nr = 0;
+	sg = kmalloc(pages_nr * (sizeof(struct qdma_sw_sg) +
+			sizeof(struct page *)), GFP_KERNEL);
+	if (!sg) {
+		pr_err("sgl allocation failed for %u pages", pages_nr);
+		return -ENOMEM;
+	}
+	memset(sg, 0, pages_nr * (sizeof(struct qdma_sw_sg) +
+			sizeof(struct page *)));
+	iocb->sgl = sg;
+
+	iocb->pages = (struct page **)(sg + pages_nr);
+	rv = get_user_pages_fast((unsigned long)buf, pages_nr, 1/* write */,
+				iocb->pages);
+	/* No pages were pinned */
+	if (rv < 0) {
+		pr_err("unable to pin down %u user pages, %d.\n",
+			pages_nr, rv);
+		goto err_out;
+	}
+	/* Less pages pinned than wanted */
+	if (rv != pages_nr) {
+		pr_err("unable to pin down all %u user pages, %d.\n",
+			pages_nr, rv);
+		iocb->pages_nr = rv;
+		rv = -EFAULT;
+		goto err_out;
+	}
+
+	for (i = 1; i < pages_nr; i++) {
+		if (iocb->pages[i - 1] == iocb->pages[i]) {
+			pr_err("duplicate pages, %d, %d.\n",
+				i - 1, i);
+			iocb->pages_nr = pages_nr;
+			rv = -EFAULT;
+			goto err_out;
+		}
+	}
+
+	sg = iocb->sgl;
+	for (i = 0; i < pages_nr; i++, sg++) {
+		unsigned int offset = offset_in_page(buf);
+		unsigned int nbytes = min_t(unsigned int, PAGE_SIZE - offset,
+						len);
+		struct page *pg = iocb->pages[i];
+
+		flush_dcache_page(pg);
+
+		sg->next = sg + 1;
+		sg->pg = pg;
+		sg->offset = offset;
+		sg->len = nbytes;
+		sg->dma_addr = 0UL;
+
+		buf += nbytes;
+		len -= nbytes;
+	}
+
+	iocb->sgl[pages_nr - 1].next = NULL;
+	iocb->pages_nr = pages_nr;
+	return 0;
+
+err_out:
+	unmap_user_buf(iocb, write);
+	iocb_release(iocb);
+
+	return rv;
+}
+
+static ssize_t cdev_gen_read_write(struct file *file, char __user *buf,
+		size_t count, loff_t *pos, bool write)
+{
+	struct qdma_cdev *xcdev = (struct qdma_cdev *)file->private_data;
+	struct qdma_io_cb iocb;
+	struct qdma_request *req = &iocb.req;
+	ssize_t res = 0;
+	int rv;
+	unsigned long qhndl;
+
+	if (!xcdev) {
+		pr_info("file 0x%p, xcdev NULL, 0x%p,%llu, pos %llu, W %d.\n",
+			file, buf, (u64)count, (u64)*pos, write);
+		return -EINVAL;
+	}
+
+	if (!xcdev->fp_rw) {
+		pr_info("file 0x%p, %s, NO rw, 0x%p,%llu, pos %llu, W %d.\n",
+			file, xcdev->name, buf, (u64)count, (u64)*pos, write);
+		return -EINVAL;
+	}
+
+	qhndl = write ? xcdev->h2c_qhndl : xcdev->c2h_qhndl;
+
+	pr_debug("%s, priv 0x%lx: buf 0x%p,%llu, pos %llu, W %d.\n",
+		xcdev->name, qhndl, buf, (u64)count, (u64)*pos,
+		write);
+
+	memset(&iocb, 0, sizeof(struct qdma_io_cb));
+	iocb.buf = buf;
+	iocb.len = count;
+	rv = map_user_buf_to_sgl(&iocb, write);
+	if (rv < 0)
+		return rv;
+
+	req->sgcnt = iocb.pages_nr;
+	req->sgl = iocb.sgl;
+	req->write = write ? 1 : 0;
+	req->dma_mapped = 0;
+	req->udd_len = 0;
+	req->ep_addr = (u64)*pos;
+	req->count = count;
+	req->timeout_ms = 10 * 1000;	/* 10 seconds */
+	req->fp_done = NULL;		/* blocking */
+	req->h2c_eot = 1;		/* set to 1 for STM tests */
+
+	res = xcdev->fp_rw(xcdev->xcb->xpdev->dev_hndl, qhndl, req);
+
+	unmap_user_buf(&iocb, write);
+	iocb_release(&iocb);
+
+	return res;
+}
+
+static ssize_t cdev_gen_write(struct file *file, const char __user *buf,
+				size_t count, loff_t *pos)
+{
+	return cdev_gen_read_write(file, (char *)buf, count, pos, 1);
+}
+
+static ssize_t cdev_gen_read(struct file *file, char __user *buf,
+				size_t count, loff_t *pos)
+{
+	return cdev_gen_read_write(file, (char *)buf, count, pos, 0);
+}
+
+static ssize_t cdev_aio_write(struct kiocb *iocb, const struct iovec *io,
+				unsigned long count, loff_t pos)
+{
+	struct qdma_cdev *xcdev =
+		(struct qdma_cdev *)iocb->ki_filp->private_data;
+	struct cdev_async_io *caio;
+	int rv = 0;
+	unsigned long i;
+	unsigned long qhndl;
+
+	if (!xcdev) {
+		pr_err("file 0x%p, xcdev NULL, %llu, pos %llu, W %d.\n",
+				iocb->ki_filp, (u64)count, (u64)pos, 1);
+		return -EINVAL;
+	}
+
+	if (!xcdev->fp_rw) {
+		pr_err("No Read write handler assigned\n");
+		return -EINVAL;
+	}
+
+	caio = kmem_cache_alloc(cdev_cache, GFP_KERNEL);
+	if (!caio) {
+		pr_info("OOM");
+		return -ENOMEM;
+	}
+	memset(caio, 0, sizeof(struct cdev_async_io));
+	caio->qiocb = kzalloc(count * (sizeof(struct qdma_io_cb) +
+			sizeof(struct qdma_request *)), GFP_KERNEL);
+	if (!caio->qiocb) {
+		pr_err("failed to allocate qiocb");
+		return -ENOMEM;
+	}
+	caio->reqv = (struct qdma_request **)(caio->qiocb + count);
+	for (i = 0; i < count; i++) {
+		caio->qiocb[i].private = caio;
+		caio->reqv[i] = &(caio->qiocb[i].req);
+		caio->qiocb[i].buf = io[i].iov_base;
+		caio->qiocb[i].len = io[i].iov_len;
+		rv = map_user_buf_to_sgl(&(caio->qiocb[i]), true);
+		if (rv < 0) {
+			break;
+		}
+
+		caio->reqv[i]->write = 1;
+		caio->reqv[i]->sgcnt = caio->qiocb[i].pages_nr;
+		caio->reqv[i]->sgl = caio->qiocb[i].sgl;
+		caio->reqv[i]->dma_mapped = false;
+		caio->reqv[i]->udd_len = 0;
+		caio->reqv[i]->ep_addr = (u64)pos;
+		caio->reqv[i]->no_memcpy = xcdev->no_memcpy ? 1 : 0;
+		caio->reqv[i]->count = io->iov_len;
+		caio->reqv[i]->timeout_ms = 10 * 1000;	/* 10 seconds */
+		caio->reqv[i]->fp_done = qdma_req_completed;
+
+	}
+	if (i > 0) {
+		iocb->private = caio;
+		caio->iocb = iocb;
+		caio->req_count = i;
+		qhndl = xcdev->h2c_qhndl;
+		rv = xcdev->fp_aiorw(xcdev->xcb->xpdev->dev_hndl, qhndl,
+				     caio->req_count, caio->reqv);
+		if (rv >= 0)
+			rv = -EIOCBQUEUED;
+	} else {
+		pr_err("failed with %d for %lu reqs", rv, caio->req_count);
+		kfree(caio->qiocb);
+		kmem_cache_free(cdev_cache, caio);
+	}
+
+	return rv;
+}
+
+static ssize_t cdev_aio_read(struct kiocb *iocb, const struct iovec *io,
+						unsigned long count, loff_t pos)
+{
+	struct qdma_cdev *xcdev =
+		(struct qdma_cdev *)iocb->ki_filp->private_data;
+	struct cdev_async_io *caio;
+	int rv = 0;
+	unsigned long i;
+	unsigned long qhndl;
+
+	if (!xcdev) {
+		pr_err("file 0x%p, xcdev NULL, %llu, pos %llu, W %d.\n",
+				iocb->ki_filp, (u64)count, (u64)pos, 1);
+		return -EINVAL;
+	}
+
+	if (!xcdev->fp_rw) {
+		pr_err("No Read write handler assigned\n");
+		return -EINVAL;
+	}
+
+	caio = kmem_cache_alloc(cdev_cache, GFP_KERNEL);
+	if (!caio) {
+		pr_err("failed to allocate qiocb");
+		return -ENOMEM;
+	}
+	memset(caio, 0, sizeof(struct cdev_async_io));
+	caio->qiocb = kzalloc (count * (sizeof(struct qdma_io_cb) +
+			sizeof(struct qdma_request *)), GFP_KERNEL);
+	if (!caio->qiocb) {
+		pr_err("failed to allocate qiocb");
+		return -ENOMEM;
+	}
+	caio->reqv = (struct qdma_request **)(caio->qiocb + count);
+	for (i = 0; i < count; i++) {
+		caio->qiocb[i].private = caio;
+		caio->reqv[i] = &(caio->qiocb[i].req);
+		caio->qiocb[i].buf = io[i].iov_base;
+		caio->qiocb[i].len = io[i].iov_len;
+		rv = map_user_buf_to_sgl(&(caio->qiocb[i]), false);
+		if (rv < 0) {
+			break;
+		}
+
+		caio->reqv[i]->write = 0;
+		caio->reqv[i]->sgcnt = caio->qiocb[i].pages_nr;
+		caio->reqv[i]->sgl = caio->qiocb[i].sgl;
+		caio->reqv[i]->dma_mapped = false;
+		caio->reqv[i]->udd_len = 0;
+		caio->reqv[i]->ep_addr = (u64)pos;
+		caio->reqv[i]->no_memcpy = xcdev->no_memcpy ? 1 : 0;
+		caio->reqv[i]->count = io->iov_len;
+		caio->reqv[i]->timeout_ms = 10 * 1000;	/* 10 seconds */
+		caio->reqv[i]->fp_done = qdma_req_completed;
+	}
+	if (i > 0) {
+		iocb->private = caio;
+		caio->iocb = iocb;
+		caio->req_count = i;
+		qhndl = xcdev->c2h_qhndl;
+		rv = xcdev->fp_aiorw(xcdev->xcb->xpdev->dev_hndl, qhndl,
+				     caio->req_count, caio->reqv);
+		if (rv >= 0)
+			rv = -EIOCBQUEUED;
+	} else {
+		pr_err("failed with %d for %lu reqs", rv, caio->req_count);
+		kfree(caio->qiocb);
+		kmem_cache_free(cdev_cache, caio);
+	}
+
+	return rv;
+}
+
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 16, 0)
+static ssize_t cdev_write_iter(struct kiocb *iocb, struct iov_iter *io)
+{
+	return cdev_aio_write(iocb, io->iov, io->nr_segs, iocb->ki_pos);
+}
+
+static ssize_t cdev_read_iter(struct kiocb *iocb, struct iov_iter *io)
+{
+	return cdev_aio_read(iocb, io->iov, io->nr_segs, iocb->ki_pos);
+}
+#endif
+
+static const struct file_operations cdev_gen_fops = {
+	.owner = THIS_MODULE,
+	.open = cdev_gen_open,
+	.release = cdev_gen_close,
+	.write = cdev_gen_write,
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 16, 0)
+	.write_iter = cdev_write_iter,
+#else
+	.aio_write = cdev_aio_write,
+#endif
+	.read = cdev_gen_read,
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 16, 0)
+	.read_iter = cdev_read_iter,
+#else
+	.aio_read = cdev_aio_read,
+#endif
+	.unlocked_ioctl = cdev_gen_ioctl,
+	.llseek = cdev_gen_llseek,
+};
+
+/*
+ * xcb: per pci device character device control info.
+ * xcdev: per queue character device
+ */
+int qdma_cdev_display(void *p, char *buf)
+{
+	struct qdma_cdev *xcdev = (struct qdma_cdev *)p;
+
+	return sprintf(buf, ", cdev %s", xcdev->name);
+}
+
+void qdma_cdev_destroy(struct qdma_cdev *xcdev)
+{
+	pr_debug("destroying cdev %p", xcdev);
+	if (!xcdev) {
+		pr_info("xcdev NULL.\n");
+		return;
+	}
+
+	if (xcdev->sys_device)
+		device_destroy(qdma_class, xcdev->cdevno);
+
+	cdev_del(&xcdev->cdev);
+
+	kfree(xcdev);
+}
+
+int qdma_cdev_create(struct qdma_cdev_cb *xcb, struct pci_dev *pdev,
+			struct qdma_queue_conf *qconf, unsigned int minor,
+			unsigned long qhndl, struct qdma_cdev **xcdev_pp,
+			char *ebuf, int ebuflen)
+{
+	struct qdma_cdev *xcdev;
+	int rv;
+	unsigned long *priv_data;
+
+	xcdev = kzalloc(sizeof(struct qdma_cdev) + strlen(qconf->name) + 1,
+			GFP_KERNEL);
+	if (!xcdev) {
+		pr_info("%s OOM %lu.\n", qconf->name, sizeof(struct qdma_cdev));
+		if (ebuf && ebuflen) {
+			rv = sprintf(ebuf, "%s cdev OOM %lu.\n",
+				qconf->name, sizeof(struct qdma_cdev));
+			ebuf[rv] = '\0';
+
+		}
+		return -ENOMEM;
+	}
+
+	xcdev->cdev.owner = THIS_MODULE;
+	xcdev->xcb = xcb;
+	priv_data = qconf->c2h ? &xcdev->c2h_qhndl : &xcdev->h2c_qhndl;
+	*priv_data = qhndl;
+	xcdev->dir_init = (1 << qconf->c2h);
+	strcpy(xcdev->name, qconf->name);
+
+	xcdev->minor = minor;
+	if (xcdev->minor >= xcb->cdev_minor_cnt) {
+		pr_info("%s: no char dev. left.\n", qconf->name);
+		if (ebuf && ebuflen) {
+			rv = sprintf(ebuf, "%s cdev no cdev left.\n",
+					qconf->name);
+			ebuf[rv] = '\0';
+		}
+		rv = -ENOSPC;
+		goto err_out;
+	}
+	xcdev->cdevno = MKDEV(xcb->cdev_major, xcdev->minor);
+
+	cdev_init(&xcdev->cdev, &cdev_gen_fops);
+
+	/* bring character device live */
+	rv = cdev_add(&xcdev->cdev, xcdev->cdevno, 1);
+	if (rv < 0) {
+		pr_info("cdev_add failed %d, %s.\n", rv, xcdev->name);
+		if (ebuf && ebuflen) {
+			int l = sprintf(ebuf, "%s cdev add failed %d.\n",
+					qconf->name, rv);
+			ebuf[l] = '\0';
+		}
+		goto err_out;
+	}
+
+	/* create device on our class */
+	if (qdma_class) {
+		xcdev->sys_device = device_create(qdma_class, &(pdev->dev),
+				xcdev->cdevno, NULL, "%s", xcdev->name);
+		if (IS_ERR(xcdev->sys_device)) {
+			rv = PTR_ERR(xcdev->sys_device);
+			pr_info("%s device_create failed %d.\n",
+				xcdev->name, rv);
+			if (ebuf && ebuflen) {
+				int l = sprintf(ebuf,
+						"%s device_create failed %d.\n",
+						qconf->name, rv);
+				ebuf[l] = '\0';
+			}
+			goto del_cdev;
+		}
+	}
+
+	xcdev->fp_rw = qdma_request_submit;
+	xcdev->fp_aiorw = qdma_batch_request_submit;
+
+	*xcdev_pp = xcdev;
+	return 0;
+
+del_cdev:
+	cdev_del(&xcdev->cdev);
+
+err_out:
+	kfree(xcdev);
+	return rv;
+}
+
+/*
+ * per device initialization & cleanup
+ */
+void qdma_cdev_device_cleanup(struct qdma_cdev_cb *xcb)
+{
+	if (!xcb->cdev_major)
+		return;
+
+	xcb->cdev_major = 0;
+}
+
+int qdma_cdev_device_init(struct qdma_cdev_cb *xcb)
+{
+	dev_t dev;
+	int rv;
+	struct xlnx_phy_dev *phy_dev, *tmp, *new_phy_dev;
+
+	spin_lock_init(&xcb->lock);
+
+	xcb->cdev_minor_cnt = QDMA_MINOR_MAX;
+
+	if (xcb->cdev_major) {
+		pr_warn("major %d already exist.\n", xcb->cdev_major);
+		return -EINVAL;
+	}
+
+	/* Check if same bus id device is added in global list
+	 * If found then assign same major number */
+	mutex_lock(&xlnx_phy_dev_mutex);
+	list_for_each_entry_safe(phy_dev, tmp, &xlnx_phy_dev_list, list_head) {
+		if (phy_dev->device_bus == xcb->xpdev->pdev->bus->number) {
+			xcb->cdev_major = phy_dev->major;
+			mutex_unlock(&xlnx_phy_dev_mutex);
+			return 0;
+		}
+	}
+	mutex_unlock(&xlnx_phy_dev_mutex);
+
+	/* allocate a dynamically allocated char device node */
+	rv = alloc_chrdev_region(&dev, 0, xcb->cdev_minor_cnt,
+			QDMA_CDEV_CLASS_NAME);
+	if (rv) {
+		pr_err("unable to allocate cdev region %d.\n", rv);
+		return rv;
+	}
+	xcb->cdev_major = MAJOR(dev);
+
+	new_phy_dev = kzalloc(sizeof(struct xlnx_phy_dev), GFP_KERNEL);
+	if (!new_phy_dev) {
+		pr_err("unable to allocate xlnx_dev.\n");
+		return-ENOMEM;
+	}
+	new_phy_dev->major = xcb->cdev_major;
+	new_phy_dev->device_bus = xcb->xpdev->pdev->bus->number;
+	xlnx_phy_dev_list_add(new_phy_dev);
+
+	return 0;
+}
+
+/*
+ * driver-wide Initialization & cleanup
+ */
+
+int qdma_cdev_init(void)
+{
+	qdma_class = class_create(THIS_MODULE, QDMA_CDEV_CLASS_NAME);
+	if (IS_ERR(qdma_class)) {
+		pr_info("%s: failed to create class 0x%lx.",
+			QDMA_CDEV_CLASS_NAME, (unsigned long)qdma_class);
+		qdma_class = NULL;
+		return -1;
+	}
+	/* using kmem_cache_create to enable sequential cleanup */
+	cdev_cache = kmem_cache_create("cdev_cache",
+					sizeof(struct cdev_async_io),
+					0,
+					SLAB_HWCACHE_ALIGN,
+					NULL);
+	if (!cdev_cache) {
+		pr_info("memory allocation for cdev_cache failed. OOM\n");
+		return -ENOMEM;
+	}
+
+	return 0;
+}
+
+void qdma_cdev_cleanup(void)
+{
+	struct xlnx_phy_dev *phy_dev, *tmp;
+
+	list_for_each_entry_safe(phy_dev, tmp, &xlnx_phy_dev_list, list_head) {
+		unregister_chrdev_region(MKDEV(phy_dev->major, 0),
+				QDMA_MINOR_MAX);
+		xlnx_phy_dev_list_remove(phy_dev);
+		kfree(phy_dev);
+	}
+
+	kmem_cache_destroy(cdev_cache);
+	if (qdma_class)
+		class_destroy(qdma_class);
+
+}
diff --git a/QDMA/linux-kernel/drv/cdev.h b/QDMA/linux-kernel/drv/cdev.h
new file mode 100644
index 0000000..822e14d
--- /dev/null
+++ b/QDMA/linux-kernel/drv/cdev.h
@@ -0,0 +1,182 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#ifndef __QDMA_CDEV_H__
+#define __QDMA_CDEV_H__
+/**
+ * @file
+ * @brief This file contains the declarations for qdma pcie kernel module
+ *
+ */
+#include <linux/cdev.h>
+#include "version.h"
+#include <linux/spinlock_types.h>
+
+#include "libqdma/libqdma_export.h"
+#include <linux/workqueue.h>
+
+/** QDMA character device class name */
+#define QDMA_CDEV_CLASS_NAME  DRV_MODULE_NAME
+/** QDMA character device max minor number*/
+#define QDMA_MINOR_MAX (2048)
+
+/* per pci device control */
+/**
+ * @struct - qdma_cdev_cb
+ * @brief	QDMA character device call back data
+ */
+struct qdma_cdev_cb {
+	/** pointer to xilinx pcie device */
+	struct xlnx_pci_dev *xpdev;
+	/** character device lock  */
+	spinlock_t lock;
+	/** character device major number  */
+	int cdev_major;
+	/** character device minor number count  */
+	int cdev_minor_cnt;
+};
+
+/**
+ * @struct - qdma_cdev
+ * @brief	QDMA character device book keeping parameters
+ */
+struct qdma_cdev {
+	/** lsit of qdma character devices */
+	struct list_head list_head;
+	/** minor number */
+	int minor;
+	/** character device number */
+	dev_t cdevno;
+	/** pointer to qdma character device call back data */
+	struct qdma_cdev_cb *xcb;
+	/** pointer to kernel device(struct device) */
+	struct device *sys_device;
+	/** pointer to kernel cdev(struct cdev) */
+	struct cdev cdev;
+	/** c2h queue handle */
+	unsigned long c2h_qhndl;
+	/** hec queue handle */
+	unsigned long h2c_qhndl;
+	/** direction */
+	unsigned short dir_init;
+	/* flag to indicate if memcpy is required */
+	unsigned char no_memcpy;
+	/** call back function for open a device */
+	int (*fp_open_extra)(struct qdma_cdev *);
+	/** call back function for close a device */
+	int (*fp_close_extra)(struct qdma_cdev *);
+	/** call back function to handle ioctl message */
+	long (*fp_ioctl_extra)(struct qdma_cdev *, unsigned int, unsigned long);
+	/** call back function to handle read write request*/
+	ssize_t (*fp_rw)(unsigned long dev_hndl, unsigned long qhndl,
+			struct qdma_request *);
+	ssize_t (*fp_aiorw)(unsigned long dev_hndl, unsigned long qhndl,
+			unsigned long count, struct qdma_request **);
+	/** name of the character device*/
+	char name[0];
+};
+
+/**
+ * @struct - qdma_io_cb
+ * @brief	QDMA character device io call back book keeping parameters
+ */
+struct qdma_io_cb {
+	void *private;
+	/** user buffer */
+	void __user *buf;
+	/** length of the user buffer */
+	size_t len;
+	/** page number */
+	unsigned int pages_nr;
+	/** scatter gather list */
+	struct qdma_sw_sg *sgl;
+	/** pages allocated to accommodate the scatter gather list */
+	struct page **pages;
+	/** qdma request */
+	struct qdma_request req;
+};
+
+/*****************************************************************************/
+/**
+ * qdma_cdev_destroy() - handler to destroy the character device
+ *
+ * @param[in]	xcdev: pointer to character device
+ *
+ * @return	none
+ *****************************************************************************/
+void qdma_cdev_destroy(struct qdma_cdev *xcdev);
+
+/*****************************************************************************/
+/**
+ * qdma_cdev_create() - handler to create a character device
+ *
+ * @param[in]	xcb:	pointer to qdma character device call back data
+ * @param[in]	pdev: pointer to struct pci_dev
+ * @param[in]	qconf: queue configurations
+ * @param[in]	minor: character device minor number
+ * @param[in]	ebuflen:	buffer length
+ * @param[in]	qhndl: queue handle
+ * @param[out]	xcdev_pp: pointer to struct qdma_cdev
+ * @param[out]	ebuf:
+ *			error message buffer, can be NULL/0 (i.e., optional)
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int qdma_cdev_create(struct qdma_cdev_cb *xcb, struct pci_dev *pdev,
+			struct qdma_queue_conf *qconf, unsigned int minor,
+			unsigned long qhndl, struct qdma_cdev **xcdev_pp,
+			char *ebuf, int ebuflen);
+
+/*****************************************************************************/
+/**
+ * qdma_cdev_device_cleanup() - handler to clean up a character device
+ *
+ * @param[in]	xcb: pointer to qdma character device call back data
+ *
+ * @return	none
+ *****************************************************************************/
+void qdma_cdev_device_cleanup(struct qdma_cdev_cb *xcb);
+
+/*****************************************************************************/
+/**
+ * qdma_cdev_device_init() - handler to initialize a character device
+ *
+ * @param[in]	xcb: pointer to qdma character device call back data
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int qdma_cdev_device_init(struct qdma_cdev_cb *xcb);
+
+/*****************************************************************************/
+/**
+ * qdma_cdev_cleanup() - character device cleanup handler
+ *
+ *****************************************************************************/
+void qdma_cdev_cleanup(void);
+
+/*****************************************************************************/
+/**
+ * qdma_cdev_init() - character device initialization handler
+ *
+ *****************************************************************************/
+int qdma_cdev_init(void);
+
+#endif /* ifndef __QDMA_CDEV_H__ */
diff --git a/QDMA/linux-kernel/drv/nl.c b/QDMA/linux-kernel/drv/nl.c
new file mode 100644
index 0000000..5e201d8
--- /dev/null
+++ b/QDMA/linux-kernel/drv/nl.c
@@ -0,0 +1,1862 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#define pr_fmt(fmt)	KBUILD_MODNAME ":%s: " fmt, __func__
+
+#include <linux/version.h>
+#include <linux/kernel.h>
+#include <linux/pci.h>
+#include <net/genetlink.h>
+
+#include "libqdma/libqdma_export.h"
+#include "qdma_mod.h"
+#include "qdma_nl.h"
+#include "nl.h"
+#include "version.h"
+
+static int xnl_dev_list(struct sk_buff *skb_2, struct genl_info *info);
+
+static struct nla_policy xnl_policy[XNL_ATTR_MAX] = {
+	[XNL_ATTR_GENMSG] =		{ .type = NLA_NUL_STRING },
+
+	[XNL_ATTR_DRV_INFO] =		{ .type = NLA_NUL_STRING },
+
+	[XNL_ATTR_DEV_IDX] =		{ .type = NLA_U32 },
+	[XNL_ATTR_PCI_BUS] =		{ .type = NLA_U32 },
+	[XNL_ATTR_PCI_DEV] =		{ .type = NLA_U32 },
+	[XNL_ATTR_PCI_FUNC] =		{ .type = NLA_U32 },
+	[XNL_ATTR_DEV_CFG_BAR] =	{ .type = NLA_U32 },
+	[XNL_ATTR_DEV_USR_BAR] =	{ .type = NLA_U32 },
+	[XNL_ATTR_DEV_QSET_MAX] =	{ .type = NLA_U32 },
+	[XNL_ATTR_DEV_QSET_QBASE] =	{ .type = NLA_U32 },
+
+	[XNL_ATTR_REG_BAR_NUM] =	{ .type = NLA_U32 },
+	[XNL_ATTR_REG_ADDR] =		{ .type = NLA_U32 },
+	[XNL_ATTR_REG_VAL] =		{ .type = NLA_U32 },
+
+	[XNL_ATTR_QIDX] =		{ .type = NLA_U32 },
+	[XNL_ATTR_NUM_Q] =		{ .type = NLA_U32 },
+	[XNL_ATTR_QFLAG] =		{ .type = NLA_U32 },
+	[XNL_ATTR_CMPT_DESC_SIZE] =	{ .type = NLA_U32 },
+	[XNL_ATTR_SW_DESC_SIZE] =	{ .type = NLA_U32 },
+	[XNL_ATTR_QRNGSZ_IDX] =		{ .type = NLA_U32 },
+	[XNL_ATTR_C2H_BUFSZ_IDX] =	{ .type = NLA_U32 },
+	[XNL_ATTR_CMPT_TIMER_IDX] =	{ .type = NLA_U32 },
+	[XNL_ATTR_CMPT_CNTR_IDX] =	{ .type = NLA_U32 },
+	[XNL_ATTR_CMPT_TRIG_MODE] =	{ .type = NLA_U32 },
+	[XNL_ATTR_RANGE_START] =	{ .type = NLA_U32 },
+	[XNL_ATTR_RANGE_END] =		{ .type = NLA_U32 },
+
+	[XNL_ATTR_INTR_VECTOR_IDX] =	{ .type = NLA_U32 },
+	[XNL_ATTR_PIPE_GL_MAX] =	{ .type = NLA_U32 },
+	[XNL_ATTR_PIPE_FLOW_ID] =	{ .type = NLA_U32 },
+	[XNL_ATTR_PIPE_SLR_ID] =	{ .type = NLA_U32 },
+	[XNL_ATTR_PIPE_TDEST] =		{ .type = NLA_U32 },
+
+	[XNL_ATTR_DEV_STM_BAR] =	{ .type = NLA_U32 },
+#ifdef ERR_DEBUG
+	[XNL_ATTR_QPARAM_ERR_INFO] =    { .type = NLA_U32 },
+#endif
+};
+
+static int xnl_dev_list(struct sk_buff *, struct genl_info *);
+static int xnl_dev_info(struct sk_buff *, struct genl_info *);
+static int xnl_dev_version(struct sk_buff *skb2, struct genl_info *info);
+static int xnl_dev_stat(struct sk_buff *, struct genl_info *);
+static int xnl_dev_stat_clear(struct sk_buff *, struct genl_info *);
+static int xnl_q_list(struct sk_buff *, struct genl_info *);
+static int xnl_q_add(struct sk_buff *, struct genl_info *);
+static int xnl_q_start(struct sk_buff *, struct genl_info *);
+static int xnl_q_stop(struct sk_buff *, struct genl_info *);
+static int xnl_q_del(struct sk_buff *, struct genl_info *);
+static int xnl_q_dump(struct sk_buff *, struct genl_info *);
+static int xnl_q_dump_desc(struct sk_buff *, struct genl_info *);
+static int xnl_q_dump_cmpt(struct sk_buff *, struct genl_info *);
+static int xnl_q_read_pkt(struct sk_buff *, struct genl_info *);
+static int xnl_q_read_udd(struct sk_buff *, struct genl_info *);
+static int xnl_intr_ring_dump(struct sk_buff *, struct genl_info *);
+static int xnl_register_read(struct sk_buff *, struct genl_info *);
+static int xnl_register_write(struct sk_buff *, struct genl_info *);
+static int xnl_get_global_csr(struct sk_buff *skb2, struct genl_info *info);
+
+#ifdef ERR_DEBUG
+static int xnl_err_induce(struct sk_buff *skb2, struct genl_info *info);
+#endif
+
+struct genl_ops xnl_ops[] = {
+	{
+		.cmd = XNL_CMD_DEV_LIST,
+		.policy = xnl_policy,
+		.doit = xnl_dev_list,
+	},
+	{
+		.cmd = XNL_CMD_VERSION,
+		.policy = xnl_policy,
+		.doit = xnl_dev_version,
+	},
+	{
+		.cmd = XNL_CMD_DEV_INFO,
+		.policy = xnl_policy,
+		.doit = xnl_dev_info,
+	},
+	{
+		.cmd = XNL_CMD_DEV_STAT,
+		.policy = xnl_policy,
+		.doit = xnl_dev_stat,
+	},
+	{
+		.cmd = XNL_CMD_DEV_STAT_CLEAR,
+		.policy = xnl_policy,
+		.doit = xnl_dev_stat_clear,
+	},
+	{
+		.cmd = XNL_CMD_Q_LIST,
+		.policy = xnl_policy,
+		.doit = xnl_q_list,
+	},
+	{
+		.cmd = XNL_CMD_Q_ADD,
+		.policy = xnl_policy,
+		.doit = xnl_q_add,
+	},
+	{
+		.cmd = XNL_CMD_Q_START,
+		.policy = xnl_policy,
+		.doit = xnl_q_start,
+	},
+	{
+		.cmd = XNL_CMD_Q_STOP,
+		.policy = xnl_policy,
+		.doit = xnl_q_stop,
+	},
+	{
+		.cmd = XNL_CMD_Q_DEL,
+		.policy = xnl_policy,
+		.doit = xnl_q_del,
+	},
+	{
+		.cmd = XNL_CMD_Q_DUMP,
+		.policy = xnl_policy,
+		.doit = xnl_q_dump,
+	},
+	{
+		.cmd = XNL_CMD_Q_DESC,
+		.policy = xnl_policy,
+		.doit = xnl_q_dump_desc,
+	},
+	{
+		.cmd = XNL_CMD_Q_CMPT,
+		.policy = xnl_policy,
+		.doit = xnl_q_dump_cmpt,
+	},
+	{
+		.cmd = XNL_CMD_Q_UDD,
+		.policy = xnl_policy,
+		.doit = xnl_q_read_udd,
+	},
+	{
+		.cmd = XNL_CMD_Q_RX_PKT,
+		.policy = xnl_policy,
+		.doit = xnl_q_read_pkt,
+	},
+	{
+		.cmd = XNL_CMD_INTR_RING_DUMP,
+		.policy = xnl_policy,
+		.doit = xnl_intr_ring_dump,
+	},
+	{
+		.cmd = XNL_CMD_REG_RD,
+		.policy = xnl_policy,
+		.doit = xnl_register_read,
+	},
+	{
+		.cmd = XNL_CMD_REG_WRT,
+		.policy = xnl_policy,
+		.doit = xnl_register_write,
+	},
+	{
+		.cmd = XNL_CMD_GLOBAL_CSR,
+		.policy = xnl_policy,
+		.doit = xnl_get_global_csr,
+	},
+#ifdef ERR_DEBUG
+	{
+		.cmd = XNL_CMD_Q_ERR_INDUCE,
+		.policy = xnl_policy,
+		.doit = xnl_err_induce,
+	}
+#endif
+};
+
+static struct genl_family xnl_family = {
+#ifdef GENL_ID_GENERATE
+	.id = GENL_ID_GENERATE,
+#endif
+	.hdrsize = 0,
+#ifdef __QDMA_VF__
+	.name = XNL_NAME_VF,
+#else
+	.name = XNL_NAME_PF,
+#endif
+#ifndef __GENL_REG_FAMILY_OPS_FUNC__
+	.ops = xnl_ops,
+	.n_ops = ARRAY_SIZE(xnl_ops),
+#endif
+	.maxattr = XNL_ATTR_MAX - 1,
+};
+
+static struct sk_buff *xnl_msg_alloc(enum xnl_op_t op, int min_sz,
+				void **hdr, struct genl_info *info)
+{
+	struct sk_buff *skb;
+	void *p;
+	unsigned long sz = min_sz < NLMSG_GOODSIZE ? NLMSG_GOODSIZE : min_sz;
+
+	skb = genlmsg_new(sz, GFP_KERNEL);
+	if (!skb) {
+		pr_info("OOM %lu.\n", sz);
+		return NULL;
+	}
+
+	p = genlmsg_put(skb, 0, info->snd_seq + 1, &xnl_family, 0, op);
+	if (!p) {
+		pr_info("skb too small.\n");
+		nlmsg_free(skb);
+		return NULL;
+	}
+
+	*hdr = p;
+	return skb;
+}
+
+static inline int xnl_msg_add_attr_str(struct sk_buff *skb,
+					enum xnl_attr_t type, char *s)
+{
+	int rv;
+
+	rv = nla_put_string(skb, type, s);
+	if (rv != 0) {
+		pr_info("nla_put_string return %d.\n", rv);
+		return -EINVAL;
+	}
+	return 0;
+}
+
+static inline int xnl_msg_add_attr_data(struct sk_buff *skb,
+		enum xnl_attr_t type, void *s, unsigned int len)
+{
+	int rv;
+
+	rv = nla_put(skb, type, len, s);
+	if (rv != 0) {
+		pr_info("nla_put return %d.\n", rv);
+		return -EINVAL;
+	}
+	return 0;
+}
+
+
+static inline int xnl_msg_add_attr_uint(struct sk_buff *skb,
+					enum xnl_attr_t type, u32 v)
+{
+	int rv;
+
+	rv = nla_put_u32(skb, type, v);
+	if (rv != 0) {
+		pr_info("nla add dev_idx failed %d.\n", rv);
+		return -EINVAL;
+	}
+	return 0;
+}
+
+static inline int xnl_msg_send(struct sk_buff *skb_tx, void *hdr,
+				struct genl_info *info)
+{
+	int rv;
+
+	genlmsg_end(skb_tx, hdr);
+
+	rv = genlmsg_unicast(genl_info_net(info), skb_tx, info->snd_portid);
+	if (rv)
+		pr_info("send portid %d failed %d.\n", info->snd_portid, rv);
+
+	return 0;
+}
+
+#ifdef DEBUG
+static int xnl_dump_attrs(struct genl_info *info)
+{
+	int i;
+
+	pr_info("snd_seq 0x%x, portid 0x%x.\n",
+		info->snd_seq, info->snd_portid);
+#if 0
+	print_hex_dump_bytes("nlhdr", DUMP_PREFIX_OFFSET, info->nlhdr,
+			sizeof(struct nlmsghdr));
+	pr_info("\n");
+	print_hex_dump_bytes("genlhdr", DUMP_PREFIX_OFFSET, info->genlhdr,
+			sizeof(struct genlmsghdr));
+	pr_info("\n");
+#endif
+
+	pr_info("nlhdr: len %u, type %u, flags 0x%x, seq 0x%x, pid %u.\n",
+		info->nlhdr->nlmsg_len,
+		info->nlhdr->nlmsg_type,
+		info->nlhdr->nlmsg_flags,
+		info->nlhdr->nlmsg_seq,
+		info->nlhdr->nlmsg_pid);
+	pr_info("genlhdr: cmd 0x%x %s, version %u, reserved 0x%x.\n",
+		info->genlhdr->cmd, xnl_op_str[info->genlhdr->cmd],
+		info->genlhdr->version,
+		info->genlhdr->reserved);
+
+	for (i = 0; i < XNL_ATTR_MAX; i++) {
+		struct nlattr *na = info->attrs[i];
+
+		if (na) {
+			if (xnl_policy[i].type == NLA_NUL_STRING) {
+				char *s = (char *)nla_data(na);
+
+				if (s)
+					pr_info("attr %d, %s, str %s.\n",
+						i, xnl_attr_str[i], s);
+				else
+					pr_info("attr %d, %s, str NULL.\n",
+						i, xnl_attr_str[i]);
+
+			} else {
+				u32 v = nla_get_u32(na);
+
+				pr_info("attr %s, u32 0x%x.\n",
+					xnl_attr_str[i], v);
+			}
+		}
+	}
+
+	return 0;
+}
+#else
+#define xnl_dump_attrs(info)
+#endif
+
+int xnl_respond_buffer(struct genl_info *info, char *buf, int buflen)
+{
+	struct sk_buff *skb;
+	void *hdr;
+	int rv;
+
+	skb = xnl_msg_alloc(info->genlhdr->cmd, buflen, &hdr, info);
+	if (!skb)
+		return -ENOMEM;
+
+	rv = xnl_msg_add_attr_str(skb, XNL_ATTR_GENMSG, buf);
+	if (rv != 0) {
+		pr_err("xnl_msg_add_attr_str() failed: %d", rv);
+		nlmsg_free(skb);
+		return rv;
+	}
+
+	rv = xnl_msg_send(skb, hdr, info);
+
+	return rv;
+}
+
+int xnl_respond_data(struct genl_info *info, void *buf, int buflen)
+{
+	struct sk_buff *skb;
+	void *hdr;
+	int rv;
+
+	skb = xnl_msg_alloc(info->genlhdr->cmd, buflen, &hdr, info);
+	if (!skb)
+		return -ENOMEM;
+
+	rv = xnl_msg_add_attr_data(skb, XNL_ATTR_GLOBAL_CSR, buf, buflen);
+	if (rv != 0) {
+		pr_err("xnl_msg_add_attr_data() failed: %d", rv);
+		return rv;
+	}
+
+	rv = xnl_msg_send(skb, hdr, info);
+	return rv;
+}
+
+static char *xnl_mem_alloc(int l, struct genl_info *info)
+{
+	char ebuf[XNL_ERR_BUFLEN];
+	char *buf = kmalloc(l, GFP_KERNEL);
+	int rv;
+
+	if (buf) {
+		memset(buf, 0, l);
+		return buf;
+	}
+
+	pr_info("xnl OOM %d.\n", l);
+
+	rv = snprintf(ebuf, XNL_ERR_BUFLEN, "ERR! xnl OOM %d.\n", l);
+	ebuf[rv] = '\0';
+
+	xnl_respond_buffer(info, ebuf, XNL_ERR_BUFLEN);
+
+	return NULL;
+}
+
+static struct xlnx_pci_dev *xnl_rcv_check_xpdev(struct genl_info *info)
+{
+	u32 idx;
+	struct xlnx_pci_dev *xpdev;
+	char err[XNL_ERR_BUFLEN];
+	int rv;
+
+	if (info == NULL)
+		return NULL;
+
+	if (!info->attrs[XNL_ATTR_DEV_IDX]) {
+		rv = snprintf(err, sizeof(err),
+						"command %s missing attribute XNL_ATTR_DEV_IDX",
+						xnl_op_str[info->genlhdr->cmd]);
+		if (rv <= 0)
+			return NULL;
+		goto respond_error;
+	}
+	idx = nla_get_u32(info->attrs[XNL_ATTR_DEV_IDX]);
+
+	xpdev = xpdev_find_by_idx(idx, err, sizeof(err));
+	if (!xpdev) {
+		/* err buffer populated by xpdev_find_by_idx*/
+		goto respond_error;
+	}
+
+	return xpdev;
+
+respond_error:
+	xnl_respond_buffer(info, err, strlen(err));
+	return NULL;
+}
+
+static int qconf_get(struct qdma_queue_conf *qconf, struct genl_info *info,
+			char *err, int errlen, unsigned char *is_qp)
+{
+	u32 f = 0;
+
+	if (!qconf || !info)
+		return -EINVAL;
+
+	if (!info->attrs[XNL_ATTR_QFLAG]) {
+		snprintf(err, errlen, "Missing attribute 'XNL_ATTR_QFLAG'\n");
+		goto respond_error;
+	}
+	f = nla_get_u32(info->attrs[XNL_ATTR_QFLAG]);
+	if ((f & XNL_F_QMODE_ST) && (f & XNL_F_QMODE_MM)) {
+		snprintf(err, errlen, "ERR! Both ST and MM mode set.\n");
+		goto respond_error;
+	} else if (!(f & XNL_F_QMODE_ST) && !(f & XNL_F_QMODE_MM)) {
+		/* default to MM */
+		f |= XNL_F_QMODE_MM;
+	}
+
+	if (!(f & XNL_F_QDIR_H2C) && !(f & XNL_F_QDIR_C2H)) {
+		/* default to H2C */
+		f |= XNL_F_QDIR_H2C;
+	}
+
+	memset(qconf, 0, sizeof(*qconf));
+	qconf->st = (f & XNL_F_QMODE_ST) ? 1 : 0;
+	qconf->c2h = (f & XNL_F_QDIR_C2H) ? 1 : 0;
+	*is_qp = ((f & XNL_F_QDIR_BOTH) == XNL_F_QDIR_BOTH) ? 1 : 0;
+
+	if (!info->attrs[XNL_ATTR_QIDX]) {
+		snprintf(err, errlen, "Missing attribute 'XNL_ATTR_QIDX'");
+		goto respond_error;
+	}
+	qconf->qidx = nla_get_u32(info->attrs[XNL_ATTR_QIDX]);
+	if (qconf->qidx == XNL_QIDX_INVALID)
+		qconf->qidx = QDMA_QUEUE_IDX_INVALID;
+
+	return 0;
+
+respond_error:
+
+	xnl_respond_buffer(info, err, strlen(err));
+	return -EINVAL;
+}
+
+static struct xlnx_qdata *xnl_rcv_check_qidx(struct genl_info *info,
+				struct xlnx_pci_dev *xpdev,
+				struct qdma_queue_conf *qconf, char *buf,
+				int buflen)
+{
+	char ebuf[XNL_ERR_BUFLEN];
+	struct xlnx_qdata *qdata = xpdev_queue_get(xpdev, qconf->qidx,
+					qconf->c2h, 1, ebuf, XNL_ERR_BUFLEN);
+
+	if (!qdata) {
+		int l = snprintf(ebuf,
+				XNL_ERR_BUFLEN,
+				"ERR! qidx %u invalid.\n",
+				qconf->qidx);
+
+		ebuf[l] = '\0';
+		xnl_respond_buffer(info, ebuf, XNL_ERR_BUFLEN);
+	}
+
+	return qdata;
+}
+
+static int xnl_chk_attr(enum xnl_attr_t xnl_attr, struct genl_info *info,
+				unsigned short qidx, char *buf)
+{
+	int rv = 0;
+
+	if (!info->attrs[xnl_attr]) {
+		if (buf) {
+			rv += sprintf(buf,
+				"Missing attribute %s for qidx = %u\n",
+				xnl_attr_str[xnl_attr],
+				qidx);
+			buf[rv] = '\0';
+		}
+		rv = -1;
+	}
+
+	return rv;
+}
+
+static void xnl_extract_extra_config_attr(struct genl_info *info,
+					struct qdma_queue_conf *qconf)
+{
+	u32 f = nla_get_u32(info->attrs[XNL_ATTR_QFLAG]);
+
+	qconf->desc_bypass = (f & XNL_F_DESC_BYPASS_EN) ? 1 : 0;
+	qconf->pfetch_bypass = (f & XNL_F_PFETCH_BYPASS_EN) ? 1 : 0;
+	qconf->pfetch_en = (f & XNL_F_PFETCH_EN) ? 1 : 0;
+	qconf->cmpl_status_en = (f & XNL_F_CMPL_STATUS_EN) ? 1 : 0;
+	qconf->cmpl_status_acc_en = (f & XNL_F_CMPL_STATUS_ACC_EN) ? 1 : 0;
+	qconf->cmpl_status_pend_chk = (f & XNL_F_CMPL_STATUS_PEND_CHK) ? 1 : 0;
+	qconf->fetch_credit = (f & XNL_F_FETCH_CREDIT) ? 1 : 0;
+	qconf->cmpl_stat_en = (f & XNL_F_CMPL_STATUS_DESC_EN) ? 1 : 0;
+	qconf->cmpl_en_intr = (f & XNL_F_C2H_CMPL_INTR_EN) ? 1 : 0;
+	qconf->cmpl_udd_en = (f & XNL_F_CMPL_UDD_EN) ? 1 : 0;
+	qconf->cmpl_ovf_chk_dis = (f & XNL_F_CMPT_OVF_CHK_DIS) ? 1 : 0;
+
+	if (xnl_chk_attr(XNL_ATTR_QRNGSZ_IDX, info, qconf->qidx, NULL) == 0)
+		qconf->desc_rng_sz_idx = qconf->cmpl_rng_sz_idx =
+				nla_get_u32(info->attrs[XNL_ATTR_QRNGSZ_IDX]);
+	if (xnl_chk_attr(XNL_ATTR_C2H_BUFSZ_IDX, info, qconf->qidx, NULL) == 0)
+		qconf->c2h_buf_sz_idx =
+			nla_get_u32(info->attrs[XNL_ATTR_C2H_BUFSZ_IDX]);
+	if (xnl_chk_attr(XNL_ATTR_CMPT_TIMER_IDX, info, qconf->qidx, NULL) == 0)
+		qconf->cmpl_timer_idx =
+			nla_get_u32(info->attrs[XNL_ATTR_CMPT_TIMER_IDX]);
+	if (xnl_chk_attr(XNL_ATTR_CMPT_CNTR_IDX, info, qconf->qidx, NULL) == 0)
+		qconf->cmpl_cnt_th_idx =
+			nla_get_u32(info->attrs[XNL_ATTR_CMPT_CNTR_IDX]);
+	if (xnl_chk_attr(XNL_ATTR_CMPT_DESC_SIZE,
+				info, qconf->qidx, NULL) == 0)
+		qconf->cmpl_desc_sz =
+			nla_get_u32(info->attrs[XNL_ATTR_CMPT_DESC_SIZE]);
+	if (xnl_chk_attr(XNL_ATTR_SW_DESC_SIZE,
+				info, qconf->qidx, NULL) == 0)
+		qconf->sw_desc_sz =
+			nla_get_u32(info->attrs[XNL_ATTR_SW_DESC_SIZE]);
+	if (xnl_chk_attr(XNL_ATTR_CMPT_TRIG_MODE, info, qconf->qidx, NULL) == 0)
+		qconf->cmpl_trig_mode =
+			nla_get_u32(info->attrs[XNL_ATTR_CMPT_TRIG_MODE]);
+	else
+		qconf->cmpl_trig_mode = 1;
+	if (xnl_chk_attr(XNL_ATTR_PIPE_GL_MAX,
+			 info, qconf->pipe_gl_max, NULL) == 0)
+		qconf->pipe_gl_max =
+			nla_get_u32(info->attrs[XNL_ATTR_PIPE_GL_MAX]);
+	if (xnl_chk_attr(XNL_ATTR_PIPE_FLOW_ID,
+				info, qconf->pipe_flow_id, NULL) == 0)
+		qconf->pipe_flow_id =
+			nla_get_u32(info->attrs[XNL_ATTR_PIPE_FLOW_ID]);
+	if (xnl_chk_attr(XNL_ATTR_PIPE_SLR_ID,
+				info, qconf->pipe_slr_id, NULL) == 0)
+		qconf->pipe_slr_id =
+			nla_get_u32(info->attrs[XNL_ATTR_PIPE_SLR_ID]);
+	if (xnl_chk_attr(XNL_ATTR_PIPE_TDEST,
+				info, qconf->pipe_tdest, NULL) == 0)
+		qconf->pipe_tdest =
+			nla_get_u32(info->attrs[XNL_ATTR_PIPE_TDEST]);
+}
+
+static int xnl_dev_list(struct sk_buff *skb2, struct genl_info *info)
+{
+	char *buf;
+	int rv;
+
+	if (info == NULL)
+		return -EINVAL;
+
+	xnl_dump_attrs(info);
+
+	buf = xnl_mem_alloc(XNL_RESP_BUFLEN_MAX, info);
+	if (!buf)
+		return -ENOMEM;
+
+	rv = xpdev_list_dump(buf, XNL_RESP_BUFLEN_MAX);
+	if (rv < 0) {
+		pr_err("xpdev_list_dump() failed: %d", rv);
+		goto free_msg_buff;
+	}
+	rv = xnl_respond_buffer(info, buf, strlen(buf));
+
+free_msg_buff:
+	kfree(buf);
+	return rv;
+}
+
+static int xnl_dev_info(struct sk_buff *skb2, struct genl_info *info)
+{
+	struct sk_buff *skb;
+	void *hdr;
+	struct xlnx_pci_dev *xpdev;
+	struct pci_dev *pdev;
+	struct qdma_dev_conf conf;
+	int rv;
+
+	if (info == NULL)
+		return -EINVAL;
+
+	xnl_dump_attrs(info);
+
+	xpdev = xnl_rcv_check_xpdev(info);
+	if (!xpdev)
+		return -EINVAL;
+	pdev = xpdev->pdev;
+
+	rv = qdma_device_get_config(xpdev->dev_hndl, &conf, NULL, 0);
+	if (rv < 0)
+		return rv;
+
+	skb = xnl_msg_alloc(XNL_CMD_DEV_INFO, 0, &hdr, info);
+	if (!skb)
+		return -ENOMEM;
+
+	rv = xnl_msg_add_attr_uint(skb, XNL_ATTR_PCI_BUS,
+				pdev->bus->number);
+	if (rv < 0) {
+		pr_err("xnl_msg_add_attr_uint() failed: %d", rv);
+		nlmsg_free(skb);
+		return rv;
+	}
+	rv = xnl_msg_add_attr_uint(skb, XNL_ATTR_PCI_DEV,
+				PCI_SLOT(pdev->devfn));
+	if (rv < 0) {
+		pr_err("xnl_msg_add_attr_uint() failed: %d", rv);
+		nlmsg_free(skb);
+		return rv;
+	}
+	rv = xnl_msg_add_attr_uint(skb, XNL_ATTR_PCI_FUNC,
+				PCI_FUNC(pdev->devfn));
+	if (rv < 0) {
+		pr_err("xnl_msg_add_attr_uint() failed: %d", rv);
+		nlmsg_free(skb);
+		return rv;
+	}
+	rv = xnl_msg_add_attr_uint(skb, XNL_ATTR_DEV_CFG_BAR,
+				conf.bar_num_config);
+	if (rv < 0) {
+		pr_err("xnl_msg_add_attr_uint() failed: %d", rv);
+		nlmsg_free(skb);
+		return rv;
+	}
+	rv = xnl_msg_add_attr_uint(skb, XNL_ATTR_DEV_USR_BAR,
+				conf.bar_num_user);
+	if (rv < 0) {
+		pr_err("xnl_msg_add_attr_uint() failed: %d", rv);
+		nlmsg_free(skb);
+		return rv;
+	}
+	rv = xnl_msg_add_attr_uint(skb, XNL_ATTR_DEV_QSET_MAX, conf.qsets_max);
+	if (rv < 0) {
+		pr_err("xnl_msg_add_attr_uint() failed: %d", rv);
+		nlmsg_free(skb);
+		return rv;
+	}
+	rv = xnl_msg_add_attr_uint(skb, XNL_ATTR_DEV_QSET_QBASE, conf.qsets_base);
+	if (rv < 0) {
+		pr_err("xnl_msg_add_attr_uint() failed: %d", rv);
+		return rv;
+	}
+	rv = xnl_msg_add_attr_uint(skb, XNL_ATTR_DEV_STM_BAR,
+				   conf.bar_num_stm);
+	if (rv < 0) {
+		pr_err("xnl_msg_add_attr_uint() failed: %d", rv);
+		nlmsg_free(skb);
+		return rv;
+	}
+
+	rv = xnl_msg_send(skb, hdr, info);
+
+	return rv;
+}
+
+static int xnl_dev_version(struct sk_buff *skb2, struct genl_info *info)
+{
+    struct xlnx_pci_dev *xpdev;
+    struct qdma_version_info ver_info;
+    char *buf;
+    int rv = 0;
+
+    if (info == NULL)
+        return -EINVAL;
+
+    xnl_dump_attrs(info);
+
+    xpdev = xnl_rcv_check_xpdev(info);
+    if (!xpdev)
+        return -EINVAL;
+
+    buf = xnl_mem_alloc(XNL_RESP_BUFLEN_MAX, info);
+    if (!buf)
+        return -ENOMEM;
+
+    rv = qdma_device_version_info(xpdev->dev_hndl, &ver_info);
+    if (rv < 0) {
+        pr_err("qdma_device_version_info() failed: %d", rv);
+        goto free_buf;
+    }
+
+    rv = sprintf(buf + rv,"=============Hardware Version============\n\n");
+    rv += sprintf(buf + rv,"RTL Version       : %s\n",ver_info.rtl_version_str);
+    rv += sprintf(buf + rv,"Vivado ReleaseID  : %s\n",ver_info.vivado_release_str);
+    rv += sprintf(buf + rv,"Everest IP        : %s\n\n",ver_info.everest_ip_str);
+    rv += sprintf(buf + rv,"============Software Version============\n\n");
+    rv += sprintf(buf + rv,"qdma driver version       : %s\n",DRV_MODULE_VERSION);
+    buf[rv] = '\0';
+
+    rv = xnl_respond_buffer(info, buf, XNL_RESP_BUFLEN_MAX);
+
+free_buf:
+    kfree(buf);
+    return rv;
+}
+
+static int xnl_dev_stat(struct sk_buff *skb2, struct genl_info *info)
+{
+	struct sk_buff *skb;
+	void *hdr;
+	struct xlnx_pci_dev *xpdev;
+	int rv;
+	unsigned long long mmh2c_pkts = 0;
+	unsigned long long mmc2h_pkts = 0;
+	unsigned long long sth2c_pkts = 0;
+	unsigned long long stc2h_pkts = 0;
+	unsigned int pkts;
+
+	if (info == NULL)
+		return -EINVAL;
+
+	xnl_dump_attrs(info);
+
+	xpdev = xnl_rcv_check_xpdev(info);
+	if (!xpdev)
+		return -EINVAL;
+
+	skb = xnl_msg_alloc(XNL_CMD_DEV_STAT, 0, &hdr, info);
+	if (!skb)
+		return -ENOMEM;
+
+	qdma_device_get_mmh2c_pkts(xpdev->dev_hndl, &mmh2c_pkts);
+	qdma_device_get_mmc2h_pkts(xpdev->dev_hndl, &mmc2h_pkts);
+	qdma_device_get_sth2c_pkts(xpdev->dev_hndl, &sth2c_pkts);
+	qdma_device_get_stc2h_pkts(xpdev->dev_hndl, &stc2h_pkts);
+	pkts = mmh2c_pkts;
+	rv = xnl_msg_add_attr_uint(skb, XNL_ATTR_DEV_STAT_MMH2C_PKTS1, pkts);
+	if (rv < 0) {
+		pr_err("xnl_msg_add_attr_uint() failed: %d", rv);
+		return rv;
+	}
+	pkts = (mmh2c_pkts >> 32);
+	rv = xnl_msg_add_attr_uint(skb, XNL_ATTR_DEV_STAT_MMH2C_PKTS2, pkts);
+	if (rv < 0) {
+		pr_err("xnl_msg_add_attr_uint() failed: %d", rv);
+		return rv;
+	}
+	pkts = mmc2h_pkts;
+	rv = xnl_msg_add_attr_uint(skb, XNL_ATTR_DEV_STAT_MMC2H_PKTS1, pkts);
+	if (rv < 0) {
+		pr_err("xnl_msg_add_attr_uint() failed: %d", rv);
+		return rv;
+	}
+	pkts = (mmc2h_pkts >> 32);
+	rv = xnl_msg_add_attr_uint(skb, XNL_ATTR_DEV_STAT_MMC2H_PKTS2, pkts);
+	if (rv < 0) {
+		pr_err("xnl_msg_add_attr_uint() failed: %d", rv);
+		return rv;
+	}
+	pkts = sth2c_pkts;
+	rv = xnl_msg_add_attr_uint(skb, XNL_ATTR_DEV_STAT_STH2C_PKTS1, pkts);
+	if (rv < 0) {
+		pr_err("xnl_msg_add_attr_uint() failed: %d", rv);
+		return rv;
+	}
+	pkts = (sth2c_pkts >> 32);
+	rv = xnl_msg_add_attr_uint(skb, XNL_ATTR_DEV_STAT_STH2C_PKTS2, pkts);
+	if (rv < 0) {
+		pr_err("xnl_msg_add_attr_uint() failed: %d", rv);
+		return rv;
+	}
+	pkts = stc2h_pkts;
+	rv = xnl_msg_add_attr_uint(skb, XNL_ATTR_DEV_STAT_STC2H_PKTS1, pkts);
+	if (rv < 0) {
+		pr_err("xnl_msg_add_attr_uint() failed: %d", rv);
+		return rv;
+	}
+	pkts = (stc2h_pkts >> 32);
+	rv = xnl_msg_add_attr_uint(skb, XNL_ATTR_DEV_STAT_STC2H_PKTS2, pkts);
+	if (rv < 0) {
+		pr_err("xnl_msg_add_attr_uint() failed: %d", rv);
+		return rv;
+	}
+	rv = xnl_msg_send(skb, hdr, info);
+
+	return rv;
+}
+
+static int xnl_dev_stat_clear(struct sk_buff *skb2, struct genl_info *info)
+{
+	struct xlnx_pci_dev *xpdev;
+	int rv;
+	char *buf;
+
+	if (info == NULL)
+		return -EINVAL;
+
+	xnl_dump_attrs(info);
+
+	xpdev = xnl_rcv_check_xpdev(info);
+	if (!xpdev)
+		return -EINVAL;
+	buf = xnl_mem_alloc(XNL_RESP_BUFLEN_MIN, info);
+	if (!buf)
+		return -ENOMEM;
+
+	qdma_device_clear_stats(xpdev->dev_hndl);
+
+	buf[0] = '\0';
+	rv = xnl_respond_buffer(info, buf, XNL_RESP_BUFLEN_MAX);
+
+	kfree(buf);
+	return rv;
+}
+
+static int xnl_q_list(struct sk_buff *skb2, struct genl_info *info)
+{
+	struct xlnx_pci_dev *xpdev;
+	char *buf;
+	int rv = 0;
+
+	if (info == NULL)
+		return -EINVAL;
+
+	xnl_dump_attrs(info);
+
+	xpdev = xnl_rcv_check_xpdev(info);
+	if (!xpdev)
+		return -EINVAL;
+
+	buf = xnl_mem_alloc(XNL_RESP_BUFLEN_MAX, info);
+	if (!buf)
+		return -ENOMEM;
+	if (unlikely(!qdma_get_qmax(xpdev->dev_hndl))) {
+		rv += snprintf(buf, 8, "Zero Qs");
+		goto send_rsp;
+	}
+
+	rv = qdma_queue_list(xpdev->dev_hndl, buf, XNL_RESP_BUFLEN_MAX);
+	if (rv < 0) {
+		pr_err("qdma_queue_list() failed: %d", rv);
+		goto free_buf;
+	}
+
+send_rsp:
+	rv = xnl_respond_buffer(info, buf, XNL_RESP_BUFLEN_MAX);
+
+free_buf:
+	kfree(buf);
+	return rv;
+}
+
+static int xnl_q_add(struct sk_buff *skb2, struct genl_info *info)
+{
+	struct xlnx_pci_dev *xpdev = NULL;
+	struct qdma_queue_conf qconf;
+	char *buf, *cur, *end;
+	int rv = 0;
+	int rv2 = 0;
+	unsigned char is_qp;
+	unsigned int num_q;
+	unsigned int i;
+	unsigned short qidx;
+	unsigned char is_c2h;
+	int buf_len = XNL_RESP_BUFLEN_MAX;
+
+	if (info == NULL)
+		return -EINVAL;
+
+	xnl_dump_attrs(info);
+
+	xpdev = xnl_rcv_check_xpdev(info);
+	if (!xpdev)
+		return -EINVAL;
+
+	if (info->attrs[XNL_ATTR_RSP_BUF_LEN])
+		buf_len =  nla_get_u32(info->attrs[XNL_ATTR_RSP_BUF_LEN]);
+
+	buf = xnl_mem_alloc(buf_len, info);
+	if (!buf)
+		return -ENOMEM;
+	cur = buf;
+	end = buf + buf_len;
+
+	if (unlikely(!qdma_get_qmax(xpdev->dev_hndl))) {
+		pr_info("0 sized Qs\n");
+		rv += snprintf(cur, end - cur, "Zero Qs");
+		goto send_resp;
+	}
+	rv = qconf_get(&qconf, info, cur, end - cur, &is_qp);
+	if (rv < 0)
+		goto free_buf;
+
+
+	qidx = qconf.qidx;
+
+	rv = xnl_chk_attr(XNL_ATTR_NUM_Q, info, qidx, cur);
+	if (rv < 0)
+		goto send_resp;
+	num_q = nla_get_u32(info->attrs[XNL_ATTR_NUM_Q]);
+
+	is_c2h = qconf.c2h;
+	for (i = 0; i < num_q; i++) {
+		qconf.c2h = is_c2h;
+add_q:
+		if (qidx != QDMA_QUEUE_IDX_INVALID)
+			qconf.qidx = qidx + i;
+		rv = xpdev_queue_add(xpdev, &qconf, cur, end - cur);
+		if (rv < 0) {
+			pr_err("xpdev_queue_add() failed: %d\n", rv);
+			goto send_resp;
+		}
+		cur = buf + strlen(buf);
+		if (is_qp && (is_c2h == qconf.c2h)) {
+			qconf.c2h = ~qconf.c2h;
+			goto add_q;
+		}
+	}
+	cur += snprintf(cur, end - cur, "Added %d Queues.\n", i);
+
+send_resp:
+	rv2 = xnl_respond_buffer(info, buf, strlen(buf));
+free_buf:
+	kfree(buf);
+	return rv < 0 ? rv : rv2;
+}
+
+static int xnl_q_start(struct sk_buff *skb2, struct genl_info *info)
+{
+	struct xlnx_pci_dev *xpdev;
+	struct qdma_queue_conf qconf;
+	char buf[XNL_RESP_BUFLEN_MIN];
+	struct xlnx_qdata *qdata;
+	int rv = 0;
+	unsigned char is_qp;
+	unsigned short num_q;
+	unsigned int i;
+	unsigned short qidx;
+	unsigned char is_c2h;
+
+	if (info == NULL)
+		return 0;
+
+	xnl_dump_attrs(info);
+
+	xpdev = xnl_rcv_check_xpdev(info);
+	if (!xpdev)
+		return 0;
+
+	if (unlikely(!qdma_get_qmax(xpdev->dev_hndl))) {
+		rv += snprintf(buf, 8, "Zero Qs");
+		buf[rv] = '\0';
+		goto send_resp;
+	}
+	rv = qconf_get(&qconf, info, buf, XNL_RESP_BUFLEN_MIN, &is_qp);
+	if (rv < 0)
+		goto send_resp;
+
+	qidx = qconf.qidx;
+
+	rv = xnl_chk_attr(XNL_ATTR_NUM_Q, info, qidx, buf);
+	if (rv < 0)
+		goto send_resp;
+	num_q = nla_get_u32(info->attrs[XNL_ATTR_NUM_Q]);
+
+	xnl_extract_extra_config_attr(info, &qconf);
+	is_c2h = qconf.c2h;
+
+	for (i = qidx; i < (qidx + num_q); i++) {
+		qconf.c2h = is_c2h;
+reconfig:
+		qconf.qidx = i;
+		qdata = xnl_rcv_check_qidx(info, xpdev, &qconf, buf,
+					XNL_RESP_BUFLEN_MIN);
+		if (!qdata)
+			goto send_resp;
+
+		rv = qdma_queue_reconfig(xpdev->dev_hndl, qdata->qhndl, &qconf,
+						buf, XNL_RESP_BUFLEN_MIN);
+		if (rv < 0) {
+			pr_err("qdma_queue_reconfig() failed: %d", rv);
+			goto send_resp;
+		}
+		if (is_qp && (is_c2h == qconf.c2h)) {
+			qconf.c2h = ~qconf.c2h;
+			goto reconfig;
+		}
+	}
+
+	rv = xpdev_nl_queue_start(xpdev, info, is_qp, is_c2h, qidx, num_q);
+	if (rv < 0) {
+		snprintf(buf, XNL_RESP_BUFLEN_MIN, "qdma%05x OOM.\n",
+			xpdev->idx);
+		goto send_resp;
+	}
+
+	return 0;
+
+send_resp:
+	rv = xnl_respond_buffer(info, buf, XNL_RESP_BUFLEN_MIN);
+
+	return rv;
+}
+
+static int xnl_q_stop(struct sk_buff *skb2, struct genl_info *info)
+{
+	struct xlnx_pci_dev *xpdev;
+	struct qdma_queue_conf qconf;
+	char buf[XNL_RESP_BUFLEN_MIN];
+	struct xlnx_qdata *qdata;
+	int rv = 0;
+	unsigned char is_qp;
+	unsigned short num_q;
+	unsigned int i;
+	unsigned short qidx;
+	unsigned char is_c2h;
+
+	if (info == NULL)
+		return 0;
+
+	xnl_dump_attrs(info);
+
+	xpdev = xnl_rcv_check_xpdev(info);
+	if (!xpdev)
+		return 0;
+
+	if (unlikely(!qdma_get_qmax(xpdev->dev_hndl))) {
+		rv += snprintf(buf, 8, "Zero Qs");
+		buf[rv] = '\0';
+		goto send_resp;
+	}
+	rv = qconf_get(&qconf, info, buf, XNL_RESP_BUFLEN_MIN, &is_qp);
+	if (rv < 0)
+		goto send_resp;
+
+	if (!info->attrs[XNL_ATTR_NUM_Q]) {
+		pr_warn("Missing attribute 'XNL_ATTR_NUM_Q'");
+		return -1;
+	}
+	num_q = nla_get_u32(info->attrs[XNL_ATTR_NUM_Q]);
+
+	qidx = qconf.qidx;
+	is_c2h = qconf.c2h;
+	for (i = qidx; i < (qidx + num_q); i++) {
+		qconf.c2h = is_c2h;
+stop_q:
+		qconf.qidx = i;
+		qdata = xnl_rcv_check_qidx(info, xpdev, &qconf, buf,
+					XNL_RESP_BUFLEN_MIN);
+		if (!qdata)
+			goto send_resp;
+		rv = qdma_queue_stop(xpdev->dev_hndl, qdata->qhndl,
+				     buf, XNL_RESP_BUFLEN_MIN);
+		if (rv < 0) {
+			pr_err("qdma_queue_stop() failed: %d", rv);
+			goto send_resp;
+		}
+		if (is_qp && (is_c2h == qconf.c2h)) {
+			qconf.c2h = ~qconf.c2h;
+			goto stop_q;
+		}
+	}
+	rv += sprintf(buf + rv, "Stopped Queues %d -> %d.\n", qidx, i - 1);
+send_resp:
+	buf[rv] = '\0';
+	rv = xnl_respond_buffer(info, buf, XNL_RESP_BUFLEN_MIN);
+	return rv;
+}
+
+static int xnl_q_del(struct sk_buff *skb2, struct genl_info *info)
+{
+	struct xlnx_pci_dev *xpdev;
+	struct qdma_queue_conf qconf;
+	char buf[XNL_RESP_BUFLEN_MIN];
+	int rv = 0;
+	unsigned char is_qp;
+	unsigned short num_q;
+	unsigned int i;
+	unsigned short qidx;
+	unsigned char is_c2h;
+
+	if (info == NULL)
+		return 0;
+
+	xnl_dump_attrs(info);
+
+	xpdev = xnl_rcv_check_xpdev(info);
+	if (!xpdev)
+		return 0;
+
+	if (unlikely(!qdma_get_qmax(xpdev->dev_hndl))) {
+		rv += snprintf(buf, 8, "Zero Qs");
+		buf[rv] = '\0';
+		goto send_resp;
+	}
+	rv = qconf_get(&qconf, info, buf, XNL_RESP_BUFLEN_MIN, &is_qp);
+	if (rv < 0)
+		goto send_resp;
+
+	if (!info->attrs[XNL_ATTR_NUM_Q]) {
+		pr_warn("Missing attribute 'XNL_ATTR_NUM_Q'");
+		return -1;
+	}
+	num_q = nla_get_u32(info->attrs[XNL_ATTR_NUM_Q]);
+
+	qidx = qconf.qidx;
+	is_c2h = qconf.c2h;
+	for (i = qidx; i < (qidx + num_q); i++) {
+		qconf.c2h = is_c2h;
+del_q:
+		qconf.qidx = i;
+		rv = xpdev_queue_delete(xpdev, qconf.qidx, qconf.c2h,
+					buf, XNL_RESP_BUFLEN_MIN);
+		if (rv < 0) {
+			pr_err("xpdev_queue_delete() failed: %d", rv);
+			goto send_resp;
+		}
+		if (is_qp && (is_c2h == qconf.c2h)) {
+			qconf.c2h = ~qconf.c2h;
+			goto del_q;
+		}
+	}
+	rv += sprintf(buf + rv, "Deleted Queues %d -> %d.\n", qidx, i - 1);
+send_resp:
+	buf[rv] = '\0';
+	rv = xnl_respond_buffer(info, buf, XNL_RESP_BUFLEN_MIN);
+	return rv;
+}
+
+static int xnl_q_dump(struct sk_buff *skb2, struct genl_info *info)
+{
+	struct xlnx_pci_dev *xpdev;
+	struct qdma_queue_conf qconf;
+	struct xlnx_qdata *qdata;
+	char *buf;
+	char ebuf[XNL_RESP_BUFLEN_MIN];
+	int rv;
+	unsigned char is_qp;
+	unsigned int num_q;
+	unsigned int i;
+	unsigned short qidx;
+	unsigned char is_c2h;
+	int buf_len = XNL_RESP_BUFLEN_MAX;
+	unsigned int buf_idx = 0;
+
+	if (info == NULL)
+		return 0;
+
+	xnl_dump_attrs(info);
+
+	xpdev = xnl_rcv_check_xpdev(info);
+	if (!xpdev)
+		return 0;
+
+	rv = qconf_get(&qconf, info, ebuf, XNL_RESP_BUFLEN_MIN, &is_qp);
+	if (rv < 0)
+		return rv;
+
+	if (info->attrs[XNL_ATTR_RSP_BUF_LEN])
+		buf_len =  nla_get_u32(info->attrs[XNL_ATTR_RSP_BUF_LEN]);
+	buf = xnl_mem_alloc(buf_len, info);
+	if (!buf)
+		return -ENOMEM;
+
+	if (!info->attrs[XNL_ATTR_NUM_Q]) {
+		pr_warn("Missing attribute 'XNL_ATTR_NUM_Q'");
+		kfree(buf);
+		return -1;
+	}
+	num_q = nla_get_u32(info->attrs[XNL_ATTR_NUM_Q]);
+
+	qidx = qconf.qidx;
+	is_c2h = qconf.c2h;
+	for (i = qidx; i < (qidx + num_q); i++) {
+		qconf.c2h = is_c2h;
+dump_q:
+		qconf.qidx = i;
+		qdata = xnl_rcv_check_qidx(info, xpdev, &qconf, buf + buf_idx,
+					buf_len - buf_idx);
+		if (!qdata)
+			goto send_resp;
+		rv = qdma_queue_dump(xpdev->dev_hndl, qdata->qhndl,
+				     buf + buf_idx,
+				     buf_len - buf_idx);
+		if (rv < 0) {
+			pr_err("qdma_queue_dump() failed: %d", rv);
+			goto send_resp;
+		}
+		buf_idx = strlen(buf);
+		if (is_qp && (is_c2h == qconf.c2h)) {
+			qconf.c2h = ~qconf.c2h;
+			goto dump_q;
+		}
+	}
+	rv = snprintf(buf + buf_idx, buf_len - buf_idx,
+		      "Dumped Queues %d -> %d.\n", qidx, i - 1);
+send_resp:
+	buf[buf_idx + rv] = '\0';
+	rv = xnl_respond_buffer(info, buf, buf_len);
+
+	kfree(buf);
+	return rv;
+}
+
+static int xnl_q_dump_desc(struct sk_buff *skb2, struct genl_info *info)
+{
+	struct xlnx_pci_dev *xpdev;
+	struct qdma_queue_conf qconf;
+	struct xlnx_qdata *qdata;
+	u32 v1;
+	u32 v2;
+	char *buf;
+	char ebuf[XNL_RESP_BUFLEN_MIN];
+	int rv;
+	unsigned char is_qp;
+	unsigned int num_q;
+	unsigned int i;
+	unsigned short qidx;
+	unsigned char is_c2h;
+	int buf_len = XNL_RESP_BUFLEN_MAX;
+	unsigned int buf_idx = 0;
+
+	if (info == NULL)
+		return 0;
+
+	xnl_dump_attrs(info);
+
+	v1 = nla_get_u32(info->attrs[XNL_ATTR_RANGE_START]);
+	v2 = nla_get_u32(info->attrs[XNL_ATTR_RANGE_END]);
+
+	xpdev = xnl_rcv_check_xpdev(info);
+	if (!xpdev)
+		return 0;
+
+	if (unlikely(!qdma_get_qmax(xpdev->dev_hndl)))
+		return 0;
+	rv = qconf_get(&qconf, info, ebuf, XNL_RESP_BUFLEN_MIN, &is_qp);
+	if (rv < 0)
+		return rv;
+
+	if (info->attrs[XNL_ATTR_RSP_BUF_LEN])
+		buf_len =  nla_get_u32(info->attrs[XNL_ATTR_RSP_BUF_LEN]);
+
+	buf = xnl_mem_alloc(buf_len, info);
+	if (!buf) {
+		rv = sprintf(ebuf, "%s OOM %d.\n",
+				__func__, buf_len);
+
+		ebuf[rv] = '\0';
+		xnl_respond_buffer(info, ebuf, XNL_RESP_BUFLEN_MIN);
+		return -ENOMEM;
+	}
+
+	if (!info->attrs[XNL_ATTR_NUM_Q]) {
+		pr_warn("Missing attribute 'XNL_ATTR_NUM_Q'");
+		return -1;
+	}
+	num_q = nla_get_u32(info->attrs[XNL_ATTR_NUM_Q]);
+
+	qidx = qconf.qidx;
+	is_c2h = qconf.c2h;
+	for (i = qidx; i < (qidx + num_q); i++) {
+		qconf.c2h = is_c2h;
+dump_q:
+		qconf.qidx = i;
+		qdata = xnl_rcv_check_qidx(info, xpdev, &qconf, buf + buf_idx,
+					buf_len - buf_idx);
+		if (!qdata)
+			goto send_resp;
+		rv = qdma_queue_dump_desc(xpdev->dev_hndl,
+					qdata->qhndl, v1, v2,
+					buf + buf_idx, buf_len - buf_idx);
+		if (rv < 0) {
+			pr_err("qdma_queue_dump_desc() failed: %d", rv);
+			goto send_resp;
+		}
+		buf_idx = strlen(buf);
+		if (is_qp && (is_c2h == qconf.c2h)) {
+			qconf.c2h = ~qconf.c2h;
+			goto dump_q;
+		}
+	}
+	rv = snprintf(buf + buf_idx, buf_len - buf_idx,
+		      "Dumped descs of queues %d -> %d.\n",
+		      qidx, i - 1);
+	buf[buf_idx + rv] = '\0';
+send_resp:
+	rv = xnl_respond_buffer(info, buf, buf_len);
+
+	kfree(buf);
+	return rv;
+}
+
+static int xnl_q_dump_cmpt(struct sk_buff *skb2, struct genl_info *info)
+{
+	struct xlnx_pci_dev *xpdev;
+	struct qdma_queue_conf qconf;
+	struct xlnx_qdata *qdata;
+	u32 v1;
+	u32 v2;
+	char *buf;
+	char ebuf[XNL_RESP_BUFLEN_MIN];
+	int rv;
+	unsigned char is_qp;
+	unsigned int num_q;
+	unsigned int i;
+	unsigned short qidx;
+	unsigned char is_c2h;
+	int buf_len = XNL_RESP_BUFLEN_MAX;
+	unsigned int buf_idx = 0;
+
+	if (info == NULL)
+		return 0;
+
+	xnl_dump_attrs(info);
+
+	v1 = nla_get_u32(info->attrs[XNL_ATTR_RANGE_START]);
+	v2 = nla_get_u32(info->attrs[XNL_ATTR_RANGE_END]);
+
+	xpdev = xnl_rcv_check_xpdev(info);
+	if (!xpdev)
+		return 0;
+
+	if (unlikely(!qdma_get_qmax(xpdev->dev_hndl)))
+		return 0;
+
+	rv = qconf_get(&qconf, info, ebuf, XNL_RESP_BUFLEN_MIN, &is_qp);
+	if (rv < 0)
+		return rv;
+
+	if (info->attrs[XNL_ATTR_RSP_BUF_LEN])
+		buf_len =  nla_get_u32(info->attrs[XNL_ATTR_RSP_BUF_LEN]);
+
+	buf = xnl_mem_alloc(buf_len, info);
+	if (!buf) {
+		rv = sprintf(ebuf, "%s OOM %d.\n",
+				__func__, buf_len);
+		ebuf[rv] = '\0';
+		xnl_respond_buffer(info, ebuf, XNL_RESP_BUFLEN_MIN);
+		return -ENOMEM;
+	}
+	pr_info("response buf_len = %d", buf_len);
+
+	if (!info->attrs[XNL_ATTR_NUM_Q]) {
+		pr_warn("Missing attribute 'XNL_ATTR_NUM_Q'");
+		return -1;
+	}
+	num_q = nla_get_u32(info->attrs[XNL_ATTR_NUM_Q]);
+
+	qidx = qconf.qidx;
+	is_c2h = qconf.c2h;
+	for (i = qidx; i < (qidx + num_q); i++) {
+		qconf.c2h = is_c2h;
+dump_q:
+		qconf.qidx = i;
+		qdata = xnl_rcv_check_qidx(info, xpdev, &qconf, buf + buf_idx,
+					buf_len - buf_idx);
+		if (!qdata)
+			goto send_resp;
+		rv = qdma_queue_dump_cmpt(xpdev->dev_hndl,
+					qdata->qhndl, v1, v2,
+					buf + buf_idx, buf_len - buf_idx);
+		if (rv < 0) {
+			pr_err("qdma_queue_dump_cmpt() failed: %d", rv);
+			goto send_resp;
+		}
+		buf_idx = strlen(buf);
+		if (is_qp && (is_c2h == qconf.c2h)) {
+			qconf.c2h = ~qconf.c2h;
+			goto dump_q;
+		}
+	}
+	rv = snprintf(buf + buf_idx, buf_len - buf_idx,
+		      "Dumped descs of queues %d -> %d.\n",
+		      qidx, i - 1);
+send_resp:
+	buf[buf_idx + rv] = '\0';
+	rv = xnl_respond_buffer(info, buf, buf_len);
+
+	kfree(buf);
+	return rv;
+}
+
+static int xnl_q_read_udd(struct sk_buff *skb2, struct genl_info *info)
+{
+	int rv = 0;
+	struct qdma_queue_conf qconf;
+	char *buf;
+	unsigned char is_qp;
+	struct xlnx_pci_dev *xpdev;
+	struct xlnx_qdata *qdata;
+	int buf_len = XNL_RESP_BUFLEN_MAX;
+
+	if (info == NULL)
+		return -EINVAL;
+
+	xnl_dump_attrs(info);
+
+	buf = xnl_mem_alloc(XNL_RESP_BUFLEN_MAX, info);
+	if (!buf)
+		return -ENOMEM;
+
+	xpdev = xnl_rcv_check_xpdev(info);
+	if (!xpdev) {
+		kfree(buf);
+		return -EINVAL;
+	}
+
+	rv = qconf_get(&qconf, info, buf, XNL_RESP_BUFLEN_MAX, &is_qp);
+	if (rv < 0)
+		goto send_resp;
+
+	qdata = xnl_rcv_check_qidx(info, xpdev, &qconf, buf,
+			XNL_RESP_BUFLEN_MAX);
+	if (!qdata)
+		goto send_resp;
+
+	rv = qdma_descq_get_cmpt_udd(xpdev->dev_hndl, qdata->qhndl,  buf,
+			XNL_RESP_BUFLEN_MAX);
+	if (rv < 0)
+		goto send_resp;
+
+send_resp:
+	rv = xnl_respond_buffer(info, buf, buf_len);
+
+	kfree(buf);
+	return rv;
+}
+
+#ifdef ERR_DEBUG
+static int xnl_err_induce(struct sk_buff *skb2, struct genl_info *info)
+{
+	struct xlnx_pci_dev *xpdev;
+	struct qdma_queue_conf qconf;
+	struct xlnx_qdata *qdata;
+	char *buf;
+	char ebuf[XNL_RESP_BUFLEN_MIN];
+	unsigned char is_qp;
+	int rv;
+	u32 err;
+
+	if (info == NULL)
+		return 0;
+
+	xnl_dump_attrs(info);
+
+	xpdev = xnl_rcv_check_xpdev(info);
+	if (!xpdev)
+		return 0;
+	rv = qconf_get(&qconf, info, ebuf, XNL_RESP_BUFLEN_MIN, &is_qp);
+	if (rv < 0)
+		return rv;
+
+	buf = xnl_mem_alloc(XNL_RESP_BUFLEN_MAX, info);
+	if (!buf) {
+		rv = sprintf(ebuf, "%s OOM %d.\n",
+				__func__, XNL_RESP_BUFLEN_MAX);
+		ebuf[rv] = '\0';
+		xnl_respond_buffer(info, ebuf, XNL_RESP_BUFLEN_MIN);
+		return -ENOMEM;
+	}
+
+	qdata = xnl_rcv_check_qidx(info, xpdev, &qconf, buf,
+				XNL_RESP_BUFLEN_MIN);
+	if (!qdata)
+		goto send_resp;
+	err = nla_get_u32(info->attrs[XNL_ATTR_QPARAM_ERR_INFO]);
+
+	if (qdma_queue_set_err_induction(xpdev->dev_hndl, qdata->qhndl, err,
+					 buf, XNL_RESP_BUFLEN_MAX)) {
+		rv += sprintf(buf + rv, "Failed to set induce err\n");
+		goto send_resp;
+	}
+	rv += sprintf(buf + rv, "queue error induced\n");
+	buf[rv] = '\0';
+
+send_resp:
+	rv = xnl_respond_buffer(info, buf, XNL_RESP_BUFLEN_MAX);
+
+	kfree(buf);
+	return rv;
+}
+#endif
+
+static int xnl_q_read_pkt(struct sk_buff *skb2, struct genl_info *info)
+{
+#if 0
+	struct xlnx_pci_dev *xpdev;
+	struct qdma_queue_conf qconf;
+	struct xlnx_qdata *qdata;
+	char *buf;
+	char ebuf[XNL_RESP_BUFLEN_MIN];
+	int rv;
+	unsigned char is_qp;
+	unsigned int num_q;
+	unsigned int i;
+	unsigned short qidx;
+	int buf_len = XNL_RESP_BUFLEN_MAX;
+
+	if (info == NULL)
+		return 0;
+
+	xnl_dump_attrs(info);
+
+	xpdev = xnl_rcv_check_xpdev(info);
+	if (!xpdev)
+		return 0;
+
+	rv = qconf_get(&qconf, info, ebuf, XNL_RESP_BUFLEN_MIN, &is_qp);
+	if (rv < 0)
+		return rv;
+
+	if (info->attrs[XNL_ATTR_RSP_BUF_LEN])
+		buf_len =  nla_get_u32(info->attrs[XNL_ATTR_RSP_BUF_LEN]);
+
+	buf = xnl_mem_alloc(buf_len, info);
+	if (!buf) {
+		rv = sprintf(ebuf, "%s OOM %d.\n",
+				__func__, buf_len);
+		ebuf[rv] = '\0';
+		xnl_respond_buffer(info, ebuf, XNL_RESP_BUFLEN_MIN);
+		return -ENOMEM;
+	}
+
+	if (!info->attrs[XNL_ATTR_NUM_Q]) {
+		pr_warn("Missing attribute 'XNL_ATTR_NUM_Q'");
+		return -1;
+	}
+	num_q = nla_get_u32(info->attrs[XNL_ATTR_NUM_Q]);
+
+	qidx = qconf.qidx;
+	for (i = qidx; i < (qidx + num_q); i++) {
+		qconf.c2h = 1;
+		qconf.qidx = i;
+		qdata = xnl_rcv_check_qidx(info, xpdev, &qconf, buf,
+						buf_len);
+		if (!qdata)
+			goto send_resp;
+		rv = qdma_queue_dump_rx_packet(xpdev->dev_hndl, qdata->qhndl,
+						buf, buf_len);
+		if (rv < 0) {
+			pr_err("qdma_queue_dump_rx_packet) failed: %d", rv);
+			goto send_resp;
+		}
+	}
+	buf[rv] = '\0';
+send_resp:
+	rv = xnl_respond_buffer(info, buf, buf_len);
+
+	kfree(buf);
+	return rv;
+#endif
+	pr_info("NOT supported.\n");
+	return -EINVAL;
+}
+
+static int xnl_intr_ring_dump(struct sk_buff *skb2, struct genl_info *info)
+{
+	struct xlnx_pci_dev *xpdev;
+	char *buf;
+	unsigned int vector_idx = 0;
+	int start_idx = 0, end_idx = 0;
+	int rv = 0;
+	int buf_len = XNL_RESP_BUFLEN_MAX;
+
+	if (info == NULL)
+		return 0;
+
+	xnl_dump_attrs(info);
+
+	xpdev = xnl_rcv_check_xpdev(info);
+	if (!xpdev)
+		return 0;
+
+	if (!info->attrs[XNL_ATTR_INTR_VECTOR_IDX]) {
+		pr_warn("Missing attribute 'XNL_ATTR_INTR_VECTOR_IDX'");
+		return -1;
+	}
+	vector_idx = nla_get_u32(info->attrs[XNL_ATTR_INTR_VECTOR_IDX]);
+	start_idx = nla_get_u32(info->attrs[XNL_ATTR_INTR_VECTOR_START_IDX]);
+	end_idx = nla_get_u32(info->attrs[XNL_ATTR_INTR_VECTOR_END_IDX]);
+
+	if (info->attrs[XNL_ATTR_RSP_BUF_LEN])
+		buf_len =  nla_get_u32(info->attrs[XNL_ATTR_RSP_BUF_LEN]);
+
+	buf = xnl_mem_alloc(buf_len, info);
+	if (!buf)
+		return -ENOMEM;
+
+	if (xpdev->idx == 0) {
+		if (vector_idx == 0) {
+			rv += sprintf(buf + rv,
+				"vector_idx %d is for error interrupt\n",
+				vector_idx);
+			buf[rv] = '\0';
+			goto send_resp;
+		} else if (vector_idx == 1) {
+			rv += sprintf(buf + rv,
+				"vector_idx %d is for user interrupt\n",
+				vector_idx);
+			buf[rv] = '\0';
+			goto send_resp;
+		}
+	} else {
+		if (vector_idx == 0) {
+			rv += sprintf(buf + rv,
+				"vector_idx %d is for user interrupt\n",
+				vector_idx);
+			buf[rv] = '\0';
+			goto send_resp;
+		}
+	}
+
+	rv = qdma_intr_ring_dump(xpdev->dev_hndl,
+					vector_idx, start_idx,
+					end_idx, buf, buf_len);
+	if (rv < 0) {
+		pr_err("qdma_intr_ring_dump() failed: %d", rv);
+		goto send_resp;
+	}
+
+send_resp:
+	rv = xnl_respond_buffer(info, buf, buf_len);
+
+	kfree(buf);
+	return rv;
+}
+
+static int xnl_register_read(struct sk_buff *skb2, struct genl_info *info)
+{
+	struct sk_buff *skb;
+	void *hdr;
+	struct xlnx_pci_dev *xpdev;
+	struct qdma_dev_conf conf;
+	char buf[XNL_RESP_BUFLEN_MIN];
+	unsigned int bar_num = 0, reg_addr = 0;
+	uint32_t reg_val = 0;
+	int rv = 0, err = 0;
+
+	if (info == NULL)
+		return 0;
+
+	xnl_dump_attrs(info);
+
+	xpdev = xnl_rcv_check_xpdev(info);
+	if (!xpdev)
+		return 0;
+
+	rv = qdma_device_get_config(xpdev->dev_hndl, &conf, NULL, 0);
+	if (rv < 0)
+		return rv;
+
+	skb = xnl_msg_alloc(XNL_CMD_REG_RD, 0, &hdr, info);
+	if (!skb)
+		return -ENOMEM;
+
+	if (!info->attrs[XNL_ATTR_REG_BAR_NUM]) {
+		pr_warn("Missing attribute 'XNL_ATTR_REG_BAR_NUM'");
+		return -EINVAL;
+	}
+
+	if (!info->attrs[XNL_ATTR_REG_ADDR]) {
+		pr_warn("Missing attribute 'XNL_ATTR_REG_ADDR'");
+		return -EINVAL;
+	}
+
+	bar_num = nla_get_u32(info->attrs[XNL_ATTR_REG_BAR_NUM]);
+	reg_addr = nla_get_u32(info->attrs[XNL_ATTR_REG_ADDR]);
+
+	if (bar_num == conf.bar_num_config) {
+		reg_val = qdma_device_read_config_register(xpdev->dev_hndl,
+				reg_addr);
+	} else if (bar_num == conf.bar_num_user) {
+		reg_val = qdma_device_read_user_register(xpdev, reg_addr);
+	} else if (bar_num == conf.bar_num_bypass) {
+		reg_val = qdma_device_read_bypass_register(xpdev, reg_addr);
+	} else {
+		rv += sprintf(buf + rv, "Invalid bar number\n");
+		buf[rv] = '\0';
+		goto send_resp;
+	}
+
+	err = xnl_msg_add_attr_uint(skb, XNL_ATTR_REG_VAL, reg_val);
+	if (err < 0) {
+		pr_err("xnl_msg_add_attr_uint() failed: %d", rv);
+		return err;
+	}
+
+	err = xnl_msg_send(skb, hdr, info);
+	return err;
+
+send_resp:
+	rv = xnl_respond_buffer(info, buf, XNL_RESP_BUFLEN_MIN);
+	nlmsg_free(skb);
+	return rv;
+}
+
+static int xnl_register_write(struct sk_buff *skb2, struct genl_info *info)
+{
+	struct xlnx_pci_dev *xpdev;
+	struct qdma_dev_conf conf;
+	char buf[XNL_RESP_BUFLEN_MIN];
+	unsigned int bar_num = 0, reg_addr = 0;
+	uint32_t reg_val = 0;
+	int rv = 0;
+
+	if (info == NULL)
+		return 0;
+
+	xnl_dump_attrs(info);
+
+	xpdev = xnl_rcv_check_xpdev(info);
+	if (!xpdev)
+		return 0;
+
+	rv = qdma_device_get_config(xpdev->dev_hndl, &conf, NULL, 0);
+	if (rv < 0)
+		return rv;
+
+	if (!info->attrs[XNL_ATTR_REG_BAR_NUM]) {
+		pr_warn("Missing attribute 'XNL_ATTR_REG_BAR_NUM'");
+		return -EINVAL;
+	}
+
+	if (!info->attrs[XNL_ATTR_REG_ADDR]) {
+		pr_warn("Missing attribute 'XNL_ATTR_REG_ADDR'");
+		return -EINVAL;
+	}
+
+	if (!info->attrs[XNL_ATTR_REG_VAL]) {
+		pr_warn("Missing attribute 'XNL_ATTR_REG_VAL'");
+		return -EINVAL;
+	}
+
+	bar_num = nla_get_u32(info->attrs[XNL_ATTR_REG_BAR_NUM]);
+	reg_addr = nla_get_u32(info->attrs[XNL_ATTR_REG_ADDR]);
+	reg_val = nla_get_u32(info->attrs[XNL_ATTR_REG_VAL]);
+
+	if (bar_num == conf.bar_num_config) {
+		qdma_device_write_config_register(xpdev->dev_hndl,
+				reg_addr, reg_val);
+	} else if (bar_num == conf.bar_num_user) {
+		qdma_device_write_user_register(xpdev, reg_addr, reg_val);
+	} else if (bar_num == conf.bar_num_bypass) {
+		qdma_device_write_bypass_register(xpdev, reg_addr, reg_val);
+	} else {
+		rv += sprintf(buf + rv, "Invalid bar number\n");
+		buf[rv] = '\0';
+		goto send_resp;
+	}
+
+	buf[rv] = '\0';
+
+send_resp:
+	rv = xnl_respond_buffer(info, buf, XNL_RESP_BUFLEN_MIN);
+	return rv;
+}
+static int xnl_get_global_csr(struct sk_buff *skb2, struct genl_info *info)
+{
+	struct global_csr_conf *csr;
+	struct xlnx_pci_dev *xpdev;
+	int rv;
+
+	if (info == NULL)
+		return -EINVAL;
+
+	xnl_dump_attrs(info);
+
+	xpdev = xnl_rcv_check_xpdev(info);
+	if (!xpdev)
+		return 0;
+
+	csr = kmalloc(sizeof(struct global_csr_conf), GFP_KERNEL);
+	if (!csr)
+		return -ENOMEM;
+
+	rv = qdma_global_csr_get(xpdev->dev_hndl, csr);
+	if (rv < 0) {
+		pr_err("qdma_global_csr_get() failed: %d", rv);
+		goto free_msg_buff;
+	}
+
+	rv = xnl_respond_data(info,
+		(void *)csr, sizeof(struct global_csr_conf));
+
+free_msg_buff:
+	kfree(csr);
+	return rv;
+}
+
+int xlnx_nl_init(void)
+{
+	int rv;
+#ifdef __GENL_REG_FAMILY_OPS_FUNC__
+	rv = genl_register_family_with_ops(&xnl_family,
+										xnl_ops,
+										ARRAY_SIZE(xnl_ops));
+#else
+	rv = genl_register_family(&xnl_family);
+#endif
+	if (rv)
+		pr_info("genl_register_family failed %d.\n", rv);
+
+	return rv;
+}
+
+void  xlnx_nl_exit(void)
+{
+	int rv;
+
+	rv = genl_unregister_family(&xnl_family);
+	if (rv)
+		pr_info("genl_unregister_family failed %d.\n", rv);
+}
diff --git a/QDMA/linux-kernel/drv/nl.h b/QDMA/linux-kernel/drv/nl.h
new file mode 100644
index 0000000..c9988cd
--- /dev/null
+++ b/QDMA/linux-kernel/drv/nl.h
@@ -0,0 +1,45 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#ifndef __QDMA_DRV_NL_H__
+#define __QDMA_DRV_NL_H__
+/**
+ * @file
+ * @brief This file contains the declarations for qdma netlink helper
+ * funnctions kernel module
+ *
+ */
+#define pr_fmt(fmt)     KBUILD_MODNAME ":%s: " fmt, __func__
+
+#include <net/genetlink.h>
+
+/*****************************************************************************/
+/**
+ * xnl_respond_buffer() - send a netlink string message
+ *
+ * @param[in]	nl_info:	pointer to netlink genl_info
+ * @param[in]	buf:		string buffer
+ * @param[in]	buflen:		length of the string buffer
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int xnl_respond_buffer(struct genl_info *info, char *buf, int buflen);
+
+#endif /* ifndef __QDMA_DRV_NL_H__ */
diff --git a/QDMA/linux-kernel/drv/pci_ids.h b/QDMA/linux-kernel/drv/pci_ids.h
new file mode 100644
index 0000000..dbbf17e
--- /dev/null
+++ b/QDMA/linux-kernel/drv/pci_ids.h
@@ -0,0 +1,253 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#ifndef __XDMA_PCI_ID_H__
+#define __XDMA_PCI_ID_H__
+/**
+ * @file
+ * @brief This file contains the list of pcie devices supported for qdma driver
+ *
+ */
+
+/**
+ * list of pcie devices supported for qdma driver
+ */
+static const struct pci_device_id pci_ids[] = {
+
+#ifdef __QDMA_VF__
+	/** Gen 1 VF */
+	/** PCIe lane width x1 */
+	{ PCI_DEVICE(0x10ee, 0xa011), },	/** VF on PF 0 */
+	{ PCI_DEVICE(0x10ee, 0xa111), },	/** VF on PF 1 */
+	{ PCI_DEVICE(0x10ee, 0xa211), },	/** VF on PF 2 */
+	{ PCI_DEVICE(0x10ee, 0xa311), },	/** VF on PF 3 */
+	/** PCIe lane width x2 */
+	{ PCI_DEVICE(0x10ee, 0xa012), },	/** VF on PF 0 */
+	{ PCI_DEVICE(0x10ee, 0xa112), },	/** VF on PF 1 */
+	{ PCI_DEVICE(0x10ee, 0xa212), },	/** VF on PF 2 */
+	{ PCI_DEVICE(0x10ee, 0xa312), },	/** VF on PF 3 */
+	/** PCIe lane width x4 */
+	{ PCI_DEVICE(0x10ee, 0xa014), },	/** VF on PF 0 */
+	{ PCI_DEVICE(0x10ee, 0xa114), },	/** VF on PF 1 */
+	{ PCI_DEVICE(0x10ee, 0xa214), },	/** VF on PF 2 */
+	{ PCI_DEVICE(0x10ee, 0xa314), },	/** VF on PF 3 */
+	/** PCIe lane width x8 */
+	{ PCI_DEVICE(0x10ee, 0xa018), },	/** VF on PF 0 */
+	{ PCI_DEVICE(0x10ee, 0xa118), },	/** VF on PF 1 */
+	{ PCI_DEVICE(0x10ee, 0xa218), },	/** VF on PF 2 */
+	{ PCI_DEVICE(0x10ee, 0xa318), },	/** VF on PF 3 */
+	/** PCIe lane width x16 */
+	{ PCI_DEVICE(0x10ee, 0xa01f), },	/** VF on PF 0 */
+	{ PCI_DEVICE(0x10ee, 0xa11f), },	/** VF on PF 1 */
+	{ PCI_DEVICE(0x10ee, 0xa21f), },	/** VF on PF 2 */
+	{ PCI_DEVICE(0x10ee, 0xa31f), },	/** VF on PF 3 */
+
+	/** Gen 2 VF */
+	/** PCIe lane width x1 */
+	{ PCI_DEVICE(0x10ee, 0xa021), },	/** VF on PF 0 */
+	{ PCI_DEVICE(0x10ee, 0xa121), },	/** VF on PF 1 */
+	{ PCI_DEVICE(0x10ee, 0xa221), },	/** VF on PF 2 */
+	{ PCI_DEVICE(0x10ee, 0xa321), },	/** VF on PF 3 */
+	/** PCIe lane width x2 */
+	{ PCI_DEVICE(0x10ee, 0xa022), },	/** VF on PF 0 */
+	{ PCI_DEVICE(0x10ee, 0xa122), },	/** VF on PF 1 */
+	{ PCI_DEVICE(0x10ee, 0xa222), },	/** VF on PF 2 */
+	{ PCI_DEVICE(0x10ee, 0xa322), },	/** VF on PF 3 */
+	/** PCIe lane width x4 */
+	{ PCI_DEVICE(0x10ee, 0xa024), },	/** VF on PF 0 */
+	{ PCI_DEVICE(0x10ee, 0xa124), },	/** VF on PF 1 */
+	{ PCI_DEVICE(0x10ee, 0xa224), },	/** VF on PF 2 */
+	{ PCI_DEVICE(0x10ee, 0xa324), },	/** VF on PF 3 */
+	/** PCIe lane width x8 */
+	{ PCI_DEVICE(0x10ee, 0xa028), },	/** VF on PF 0 */
+	{ PCI_DEVICE(0x10ee, 0xa128), },	/** VF on PF 1 */
+	{ PCI_DEVICE(0x10ee, 0xa228), },	/** VF on PF 2 */
+	{ PCI_DEVICE(0x10ee, 0xa328), },	/** VF on PF 3 */
+	/** PCIe lane width x16 */
+	{ PCI_DEVICE(0x10ee, 0xa02f), },	/** VF on PF 0 */
+	{ PCI_DEVICE(0x10ee, 0xa12f), },	/** VF on PF 1 */
+	{ PCI_DEVICE(0x10ee, 0xa22f), },	/** VF on PF 2 */
+	{ PCI_DEVICE(0x10ee, 0xa32f), },	/** VF on PF 3 */
+
+	/** Gen 3 VF */
+	/** PCIe lane width x1 */
+	{ PCI_DEVICE(0x10ee, 0xa031), },	/** VF on PF 0 */
+	{ PCI_DEVICE(0x10ee, 0xa131), },	/** VF on PF 1 */
+	{ PCI_DEVICE(0x10ee, 0xa231), },	/** VF on PF 2 */
+	{ PCI_DEVICE(0x10ee, 0xa331), },	/** VF on PF 3 */
+	/** PCIe lane width x2 */
+	{ PCI_DEVICE(0x10ee, 0xa032), },	/** VF on PF 0 */
+	{ PCI_DEVICE(0x10ee, 0xa132), },	/** VF on PF 1 */
+	{ PCI_DEVICE(0x10ee, 0xa232), },	/** VF on PF 2 */
+	{ PCI_DEVICE(0x10ee, 0xa332), },	/** VF on PF 3 */
+	/** PCIe lane width x4 */
+	{ PCI_DEVICE(0x10ee, 0xa034), },	/** VF on PF 0 */
+	{ PCI_DEVICE(0x10ee, 0xa134), },	/** VF on PF 1 */
+	{ PCI_DEVICE(0x10ee, 0xa234), },	/** VF on PF 2 */
+	{ PCI_DEVICE(0x10ee, 0xa334), },	/** VF on PF 3 */
+	/** PCIe lane width x8 */
+	{ PCI_DEVICE(0x10ee, 0xa038), },	/** VF on PF 0 */
+	{ PCI_DEVICE(0x10ee, 0xa138), },	/** VF on PF 1 */
+	{ PCI_DEVICE(0x10ee, 0xa238), },	/** VF on PF 2 */
+	{ PCI_DEVICE(0x10ee, 0xa338), },	/** VF on PF 3 */
+	/** PCIe lane width x16 */
+	{ PCI_DEVICE(0x10ee, 0xa03f), },	/** VF on PF 0 */
+	{ PCI_DEVICE(0x10ee, 0xa13f), },	/** VF on PF 1 */
+	{ PCI_DEVICE(0x10ee, 0xa23f), },	/** VF on PF 2 */
+	{ PCI_DEVICE(0x10ee, 0xa33f), },	/** VF on PF 3 */
+
+	/** Gen 4 VF */
+	/** PCIe lane width x1 */
+	{ PCI_DEVICE(0x10ee, 0xa041), },	/** VF on PF 0 */
+	{ PCI_DEVICE(0x10ee, 0xa141), },	/** VF on PF 1 */
+	{ PCI_DEVICE(0x10ee, 0xa241), },	/** VF on PF 2 */
+	{ PCI_DEVICE(0x10ee, 0xa341), },	/** VF on PF 3 */
+	/** PCIe lane width x2 */
+	{ PCI_DEVICE(0x10ee, 0xa042), },	/** VF on PF 0 */
+	{ PCI_DEVICE(0x10ee, 0xa142), },	/** VF on PF 1 */
+	{ PCI_DEVICE(0x10ee, 0xa242), },	/** VF on PF 2 */
+	{ PCI_DEVICE(0x10ee, 0xa342), },	/** VF on PF 3 */
+	/** PCIe lane width x4 */
+	{ PCI_DEVICE(0x10ee, 0xa044), },	/** VF on PF 0 */
+	{ PCI_DEVICE(0x10ee, 0xa144), },	/** VF on PF 1 */
+	{ PCI_DEVICE(0x10ee, 0xa244), },	/** VF on PF 2 */
+	{ PCI_DEVICE(0x10ee, 0xa344), },	/** VF on PF 3 */
+	{ PCI_DEVICE(0x10ee, 0xa444), },	/** VF on PF 4 */
+	{ PCI_DEVICE(0x10ee, 0xa544), },	/** VF on PF 5 */
+	{ PCI_DEVICE(0x10ee, 0xa644), },	/** VF on PF 6 */
+	{ PCI_DEVICE(0x10ee, 0xa744), },	/** VF on PF 7 */
+	/** PCIe lane width x8 */
+	{ PCI_DEVICE(0x10ee, 0xa048), },	/** VF on PF 0 */
+	{ PCI_DEVICE(0x10ee, 0xa148), },	/** VF on PF 1 */
+	{ PCI_DEVICE(0x10ee, 0xa248), },	/** VF on PF 2 */
+	{ PCI_DEVICE(0x10ee, 0xa348), },	/** VF on PF 3 */
+#else
+	/** Gen 1 PF */
+	/** PCIe lane width x1 */
+	{ PCI_DEVICE(0x10ee, 0x9011), },	/** PF 0 */
+	{ PCI_DEVICE(0x10ee, 0x9111), },	/** PF 1 */
+	{ PCI_DEVICE(0x10ee, 0x9211), },	/** PF 2 */
+	{ PCI_DEVICE(0x10ee, 0x9311), },	/** PF 3 */
+	/** PCIe lane width x2 */
+	{ PCI_DEVICE(0x10ee, 0x9012), },	/** PF 0 */
+	{ PCI_DEVICE(0x10ee, 0x9112), },	/** PF 1 */
+	{ PCI_DEVICE(0x10ee, 0x9212), },	/** PF 2 */
+	{ PCI_DEVICE(0x10ee, 0x9312), },	/** PF 3 */
+	/** PCIe lane width x4 */
+	{ PCI_DEVICE(0x10ee, 0x9014), },	/** PF 0 */
+	{ PCI_DEVICE(0x10ee, 0x9114), },	/** PF 1 */
+	{ PCI_DEVICE(0x10ee, 0x9214), },	/** PF 2 */
+	{ PCI_DEVICE(0x10ee, 0x9314), },	/** PF 3 */
+	/** PCIe lane width x8 */
+	{ PCI_DEVICE(0x10ee, 0x9018), },	/** PF 0 */
+	{ PCI_DEVICE(0x10ee, 0x9118), },	/** PF 1 */
+	{ PCI_DEVICE(0x10ee, 0x9218), },	/** PF 2 */
+	{ PCI_DEVICE(0x10ee, 0x9318), },	/** PF 3 */
+	/** PCIe lane width x16 */
+	{ PCI_DEVICE(0x10ee, 0x901f), },	/** PF 0 */
+	{ PCI_DEVICE(0x10ee, 0x911f), },	/** PF 1 */
+	{ PCI_DEVICE(0x10ee, 0x921f), },	/** PF 2 */
+	{ PCI_DEVICE(0x10ee, 0x931f), },	/** PF 3 */
+
+	/** Gen 2 PF */
+	/** PCIe lane width x1 */
+	{ PCI_DEVICE(0x10ee, 0x9021), },	/** PF 0 */
+	{ PCI_DEVICE(0x10ee, 0x9121), },	/** PF 1 */
+	{ PCI_DEVICE(0x10ee, 0x9221), },	/** PF 2 */
+	{ PCI_DEVICE(0x10ee, 0x9321), },	/** PF 3 */
+	/** PCIe lane width x2 */
+	{ PCI_DEVICE(0x10ee, 0x9022), },	/** PF 0 */
+	{ PCI_DEVICE(0x10ee, 0x9122), },	/** PF 1 */
+	{ PCI_DEVICE(0x10ee, 0x9222), },	/** PF 2 */
+	{ PCI_DEVICE(0x10ee, 0x9322), },	/** PF 3 */
+	/** PCIe lane width x4 */
+	{ PCI_DEVICE(0x10ee, 0x9024), },	/** PF 0 */
+	{ PCI_DEVICE(0x10ee, 0x9124), },	/** PF 1 */
+	{ PCI_DEVICE(0x10ee, 0x9224), },	/** PF 2 */
+	{ PCI_DEVICE(0x10ee, 0x9324), },	/** PF 3 */
+	/** PCIe lane width x8 */
+	{ PCI_DEVICE(0x10ee, 0x9028), },	/** PF 0 */
+	{ PCI_DEVICE(0x10ee, 0x9128), },	/** PF 1 */
+	{ PCI_DEVICE(0x10ee, 0x9228), },	/** PF 2 */
+	{ PCI_DEVICE(0x10ee, 0x9328), },	/** PF 3 */
+	/** PCIe lane width x16 */
+	{ PCI_DEVICE(0x10ee, 0x902f), },	/** PF 0 */
+	{ PCI_DEVICE(0x10ee, 0x912f), },	/** PF 1 */
+	{ PCI_DEVICE(0x10ee, 0x922f), },	/** PF 2 */
+	{ PCI_DEVICE(0x10ee, 0x932f), },	/** PF 3 */
+
+	/** Gen 3 PF */
+	/** PCIe lane width x1 */
+	{ PCI_DEVICE(0x10ee, 0x9031), },	/** PF 0 */
+	{ PCI_DEVICE(0x10ee, 0x9131), },	/** PF 1 */
+	{ PCI_DEVICE(0x10ee, 0x9231), },	/** PF 2 */
+	{ PCI_DEVICE(0x10ee, 0x9331), },	/** PF 3 */
+	/** PCIe lane width x2 */
+	{ PCI_DEVICE(0x10ee, 0x9032), },	/** PF 0 */
+	{ PCI_DEVICE(0x10ee, 0x9132), },	/** PF 1 */
+	{ PCI_DEVICE(0x10ee, 0x9232), },	/** PF 2 */
+	{ PCI_DEVICE(0x10ee, 0x9332), },	/** PF 3 */
+	/** PCIe lane width x4 */
+	{ PCI_DEVICE(0x10ee, 0x9034), },	/** PF 0 */
+	{ PCI_DEVICE(0x10ee, 0x9134), },	/** PF 1 */
+	{ PCI_DEVICE(0x10ee, 0x9234), },	/** PF 2 */
+	{ PCI_DEVICE(0x10ee, 0x9334), },	/** PF 3 */
+	/** PCIe lane width x8 */
+	{ PCI_DEVICE(0x10ee, 0x9038), },	/** PF 0 */
+	{ PCI_DEVICE(0x10ee, 0x9138), },	/** PF 1 */
+	{ PCI_DEVICE(0x10ee, 0x9238), },	/** PF 2 */
+	{ PCI_DEVICE(0x10ee, 0x9338), },	/** PF 3 */
+	/** PCIe lane width x16 */
+	{ PCI_DEVICE(0x10ee, 0x903f), },	/** PF 0 */
+	{ PCI_DEVICE(0x10ee, 0x913f), },	/** PF 1 */
+	{ PCI_DEVICE(0x10ee, 0x923f), },	/** PF 2 */
+	{ PCI_DEVICE(0x10ee, 0x933f), },	/** PF 3 */
+	/* { PCI_DEVICE(0x10ee, 0x6a9f), }, */       /** PF 0 */
+	{ PCI_DEVICE(0x10ee, 0x6aa0), },	/** PF 1 */
+
+	/** Gen 4 PF */
+	/** PCIe lane width x1 */
+	{ PCI_DEVICE(0x10ee, 0x9041), },	/** PF 0 */
+	{ PCI_DEVICE(0x10ee, 0x9141), },	/** PF 1 */
+	{ PCI_DEVICE(0x10ee, 0x9241), },	/** PF 2 */
+	{ PCI_DEVICE(0x10ee, 0x9341), },	/** PF 3 */
+	/** PCIe lane width x2 */
+	{ PCI_DEVICE(0x10ee, 0x9042), },	/** PF 0 */
+	{ PCI_DEVICE(0x10ee, 0x9142), },	/** PF 1 */
+	{ PCI_DEVICE(0x10ee, 0x9242), },	/** PF 2 */
+	{ PCI_DEVICE(0x10ee, 0x9342), },	/** PF 3 */
+	/** PCIe lane width x4 */
+	{ PCI_DEVICE(0x10ee, 0x9044), },	/** PF 0 */
+	{ PCI_DEVICE(0x10ee, 0x9144), },	/** PF 1 */
+	{ PCI_DEVICE(0x10ee, 0x9244), },	/** PF 2 */
+	{ PCI_DEVICE(0x10ee, 0x9344), },	/** PF 3 */
+	/** PCIe lane width x8 */
+	{ PCI_DEVICE(0x10ee, 0x9048), },	/** PF 0 */
+	{ PCI_DEVICE(0x10ee, 0x9148), },	/** PF 1 */
+	{ PCI_DEVICE(0x10ee, 0x9248), },	/** PF 2 */
+	{ PCI_DEVICE(0x10ee, 0x9348), },	/** PF 3 */
+#endif
+
+	{0,}
+};
+
+/** module device table */
+MODULE_DEVICE_TABLE(pci, pci_ids);
+
+#endif /* ifndef __XDMA_PCI_ID_H__ */
diff --git a/QDMA/linux-kernel/drv/qdma_mod.c b/QDMA/linux-kernel/drv/qdma_mod.c
new file mode 100644
index 0000000..f1ce604
--- /dev/null
+++ b/QDMA/linux-kernel/drv/qdma_mod.c
@@ -0,0 +1,2257 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#define pr_fmt(fmt)	KBUILD_MODNAME ":%s: " fmt, __func__
+
+#include "qdma_mod.h"
+
+#include <linux/module.h>
+#include <linux/kernel.h>
+#include <linux/version.h>
+#include <linux/types.h>
+#include <linux/errno.h>
+#include <linux/pci.h>
+#include <linux/aer.h>
+#include <linux/vmalloc.h>
+
+#include "nl.h"
+
+/* include early, to verify it depends only on the headers above */
+#include "version.h"
+
+static char version[] =
+	DRV_MODULE_DESC " v" DRV_MODULE_VERSION "\n";
+
+MODULE_AUTHOR("Xilinx, Inc.");
+MODULE_DESCRIPTION(DRV_MODULE_DESC);
+MODULE_VERSION(DRV_MODULE_VERSION);
+MODULE_LICENSE("Dual BSD/GPL");
+
+/* Module Parameters */
+/** 0 - AUTO_MODE,
+ *  1 - POLL_MODE,
+ *  2 - DIRECT_INTR_MODE,
+ *  3 - INDIRECT_INTR_MODE,
+ *  4 - LEGACY_INTR_MODE
+ */
+static unsigned int mode = 0;
+module_param(mode, uint, 0644);
+MODULE_PARM_DESC(mode,
+"use hw polling instead of interrupts for determining dma transfer completion");
+
+static unsigned int master_pf[MAX_DMA_DEV] = {0};
+static unsigned int master_cnt;
+module_param_array(master_pf, uint, &master_cnt, 0644);
+MODULE_PARM_DESC(master_pf, "Master PF for setting global CSRs, dflt PF 0");
+
+static unsigned int config_bar[MAX_DMA_DEV] = {0};
+static unsigned int config_bar_cnt;
+module_param_array(config_bar, uint, &config_bar_cnt, 0644);
+MODULE_PARM_DESC(config_bar, "Config bar number for all devices , dflt 0");
+
+static unsigned int num_threads = 0;
+module_param(num_threads, uint, 0644);
+MODULE_PARM_DESC(num_threads,
+"Number of threads to be created each for request and writeback processing");
+
+static unsigned int tm_mode_en = 0;
+module_param(tm_mode_en, uint, 0644);
+MODULE_PARM_DESC(tm_mode_en,
+        "Enable Traffic Manager mode for bypass ST H2C xmit. Default disabled");
+
+static unsigned int tm_one_cdh_en = 0;
+module_param(tm_one_cdh_en, uint, 0644);
+MODULE_PARM_DESC(tm_one_cdh_en,
+                "Enable 1 CDH for Traffic Manager mode. Default is Zero CDH");
+
+#include "pci_ids.h"
+
+/*
+ * xpdev helper functions
+ */
+static LIST_HEAD(xpdev_list);
+static DEFINE_MUTEX(xpdev_mutex);
+
+/*****************************************************************************/
+/**
+ * funcname() -  handler to show the intr_rngsz configuration value
+ *
+ * @dev :   PCIe device handle
+ * @attr:   intr_rngsz configuration value
+ * @buf :   buffer to hold the configured value
+ *
+ * Handler function to show the intr_rngsz
+ *
+ * @note    none
+ *
+ * Return:  Returns length of the buffer on success, <0 on failure
+ *
+ *****************************************************************************/
+static ssize_t show_intr_rngsz(struct device *dev,
+	struct device_attribute *attr, char *buf)
+{
+	struct xlnx_pci_dev *xpdev;
+	int len;
+	unsigned int rngsz = 0;
+
+	xpdev = (struct xlnx_pci_dev *)dev_get_drvdata(dev);
+	if (!xpdev)
+		return -EINVAL;
+
+	rngsz = qdma_get_intr_rngsz(xpdev->dev_hndl);
+	len = sprintf(buf, "%d\n", rngsz);
+	if (len <= 0)
+		pr_err("copying rngsz to buffer failed with err: %d\n", len);
+
+	return len;
+}
+
+/*****************************************************************************/
+/**
+ * funcname() -  handler to set the intr_rngsz configuration value
+ *
+ * @dev :   PCIe device handle
+ * @attr:   intr_rngsz configuration value
+ * @buf :   buffer to hold the configured value
+ * @count : the number of bytes of data in the buffer
+ *
+ * Handler function to set the intr_rngsz
+ *
+ * @note    none
+ *
+ * Return:  Returns length of the buffer on success, <0 on failure
+ *
+ *****************************************************************************/
+static ssize_t set_intr_rngsz(struct device *dev,
+	struct device_attribute *attr, const char *buf, size_t count)
+{
+	struct xlnx_pci_dev *xpdev;
+	unsigned int rngsz = 0;
+	int err = 0;
+
+	xpdev = (struct xlnx_pci_dev *)dev_get_drvdata(dev);
+	if (!xpdev)
+		return -EINVAL;
+
+	err = kstrtouint(buf, 0, &rngsz);
+	if (err < 0) {
+		pr_info("failed to set interrupt ring size\n");
+		return err;
+	}
+
+	err = qdma_set_intr_rngsz(xpdev->dev_hndl, (u32)rngsz);
+	return err ? err : count;
+}
+
+/*****************************************************************************/
+/**
+ * funcname() -  handler to show the qmax configuration value
+ *
+ * @dev :   PCIe device handle
+ * @attr:   qmax configuration value
+ * @buf :   buffer to hold the configured value
+ *
+ * Handler function to show the qmax
+ *
+ * @note    none
+ *
+ * Return:  Returns length of the buffer on success, <0 on failure
+ *
+ *****************************************************************************/
+static ssize_t show_qmax(struct device *dev,
+	struct device_attribute *attr, char *buf)
+{
+	struct xlnx_pci_dev *xpdev;
+	int len;
+	unsigned int qmax = 0;
+
+	xpdev = (struct xlnx_pci_dev *)dev_get_drvdata(dev);
+	if (!xpdev)
+		return -EINVAL;
+
+	qmax = qdma_get_qmax(xpdev->dev_hndl);
+	len = sprintf(buf, "%d\n", qmax);
+	if (len <= 0)
+		pr_err("copying qmax to buf failed with err: %d\n", len);
+
+	return len;
+}
+
+#ifndef __QDMA_VF__
+/*****************************************************************************/
+/**
+ * funcname() -  handler to show the qmax configuration value
+ *
+ * @dev :   PCIe device handle
+ * @attr:   qmax configuration value
+ * @buf :   buffer to hold the configured value
+ *
+ * Handler function to show the qmax
+ *
+ * @note    none
+ *
+ * Return:  Returns length of the buffer on success, <0 on failure
+ *
+ *****************************************************************************/
+static ssize_t show_qmax_vfs(struct device *dev,
+	struct device_attribute *attr, char *buf)
+{
+	int len;
+	int vf_qmax = qconf_get_qmax(PCI_TYPE_VF, 0);
+
+	len = sprintf(buf, "%d\n", vf_qmax);
+	if (len <= 0)
+		pr_err("copying qmax_vfs to buf failed with err: %d\n", len);
+
+	return len;
+}
+
+/*****************************************************************************/
+/**
+ * qdma_reconfigure_qmax() -  handler to set the qmax configuration value
+ *
+ * @xpdev :   PCIe device handle for
+ * @qmax_new :   new value for qmax
+ * @conf_head: pointer to hold the device configuration
+ *
+ * Helper function to reconfigure qmax values using sysfs/qmax interface for
+ * the xlnx_pci_dev passed as parameter.  Will change the starting of the
+ * subsequent PF Qs based on the modified qmax value of the xpdev. For
+ * preceeding devices, no changes will happen
+ *
+ * @note    none
+ *
+ * Return:  Returns number of devices succesfully configured on success,
+ * 		<0 on failure
+ *
+ *****************************************************************************/
+static int qdma_prep_reconfigure(struct xlnx_pci_dev *xpdev,
+		int qmax_new, struct qdma_dev_conf **conf_head)
+{
+	int reconfig_ok = 0;
+	unsigned int used_qs = 0;
+	unsigned int cfg_pending = 0;
+	unsigned int cfg_pending_qcnt = 0;
+	int err = 0;
+	int next_qbase = 0;
+	int total_pf = 0;
+	int count = 0;
+	struct xlnx_pci_dev *_xpdev, *tmp;
+	struct qdma_dev_conf *_conf_head = NULL;
+	struct qdma_dev_conf *conf_p = NULL;
+	int last_bus = 0;
+	int last_dev = 0;
+	int max_pf_qs = qconf_get_qmax(PCI_TYPE_PF, 0);
+
+	mutex_lock(&xpdev_mutex);
+	list_for_each_entry_safe(_xpdev, tmp, &xpdev_list, list_head) {
+		struct qdma_dev_conf conf;
+		/** found a new card? */
+		if ((last_bus | last_dev) &&
+			((last_bus != _xpdev->pdev->bus->number) ||
+			(last_dev !=  PCI_SLOT(_xpdev->pdev->devfn))))
+			break;
+
+		err = qdma_device_get_config(_xpdev->dev_hndl, &conf, NULL, 0);
+		if (err < 0) {
+			pr_err("Failed to get conf for qdma device '%05x'\n",
+					_xpdev->idx);
+			reconfig_ok = err;
+			goto errout_reconfig;
+		}
+
+		if (conf.cur_cfg_state == QMAX_CFG_USER) {
+			if (xpdev != _xpdev)
+				used_qs += conf.qsets_max;
+			else {
+				if (qmax_new == conf.qsets_max) {
+					pr_info("WARN! New qmax(%d) same as current(%d)\n",
+							qmax_new,
+							conf.qsets_max);
+					reconfig_ok = 0;
+					goto errout_reconfig;
+				}
+			}
+		} else if (conf.cur_cfg_state == QMAX_CFG_INITIAL)
+			if (xpdev != _xpdev)
+				cfg_pending++;
+		total_pf++;
+		last_bus = _xpdev->pdev->bus->number;
+		last_dev = PCI_SLOT(_xpdev->pdev->devfn);
+	}
+	if ((used_qs + qmax_new) > max_pf_qs) {
+		pr_err("Not enough qs to allocate for qdma%05x\n",
+				_xpdev->idx);
+		pr_err("Requested size = %d, remaining size=%d\n",
+				qmax_new, max_pf_qs - used_qs);
+		reconfig_ok = -EINVAL;
+		goto errout_reconfig;
+	}
+
+	_conf_head = (struct qdma_dev_conf *)kzalloc(total_pf * sizeof(struct qdma_dev_conf),
+			GFP_KERNEL);
+	if (!_conf_head) {
+		reconfig_ok = -ENOMEM;
+		goto errout_reconfig;
+	}
+
+	if (cfg_pending)
+		cfg_pending_qcnt = (max_pf_qs - (used_qs + qmax_new))/cfg_pending;
+
+	count = total_pf;
+	conf_p = _conf_head;
+	list_for_each_entry_safe(_xpdev, tmp, &xpdev_list, list_head) {
+		err = qdma_device_get_config(_xpdev->dev_hndl, conf_p, NULL, 0);
+		if (err < 0) {
+			pr_err("Failed to get conf for qdma device '%05x'\n", _xpdev->idx);
+			reconfig_ok = -1;
+			goto errout_reconfig;
+		}
+
+		conf_p->qsets_base = next_qbase;
+		if (_xpdev == xpdev) {
+			conf_p->qsets_max = qmax_new;
+			conf_p->cur_cfg_state = QMAX_CFG_USER;
+		} else {
+			if (conf_p->cur_cfg_state == QMAX_CFG_INITIAL)
+				conf_p->qsets_max = cfg_pending_qcnt;
+		}
+		next_qbase = conf_p->qsets_max + conf_p->qsets_base;
+		/* if 0qs make qbase to 0 */
+		if (!conf_p->qsets_max)
+			conf_p->qsets_base = 0;
+		conf_p++;
+		/** we have to configure 'total_pf' PF devices  */
+		if (!(count--))
+			break;
+	}
+
+	*conf_head = _conf_head;
+
+	reconfig_ok = total_pf;
+
+errout_reconfig:
+	mutex_unlock(&xpdev_mutex);
+
+	if ((reconfig_ok < 0) && (_conf_head != NULL))
+		kfree(_conf_head);
+
+	return reconfig_ok;
+}
+
+static int qdma_sysfs_reconfigure(void)
+{
+	int reconfig_ok = 0;
+	unsigned int qcnt = 0;
+	int err = 0;
+	int next_qbase = 0;
+	int total_pf = 0;
+	int cfgd_pf = 0;
+	int count = 0;
+	struct xlnx_pci_dev *_xpdev, *tmp;
+	int last_bus = 0;
+	int last_dev = 0;
+	int max_pf_qs = qconf_get_qmax(PCI_TYPE_PF, 0);
+	int total_qcnt_user = 0;
+	int qcnt_remaining = 0;
+
+	mutex_lock(&xpdev_mutex);
+	list_for_each_entry_safe(_xpdev, tmp, &xpdev_list, list_head) {
+		struct qdma_dev_conf conf;
+		/** found a new card? */
+		if ((last_bus | last_dev) &&
+			((last_bus != _xpdev->pdev->bus->number) ||
+			(last_dev !=  PCI_SLOT(_xpdev->pdev->devfn))))
+			break;
+
+		err = qdma_device_get_config(_xpdev->dev_hndl, &conf, NULL, 0);
+		if (err < 0) {
+			pr_err("Failed to get conf for qdma device '%d'\n",
+					_xpdev->idx);
+			reconfig_ok = err;
+			goto errout_reconfig;
+		}
+
+		if (conf.cur_cfg_state == QMAX_CFG_USER) {
+			total_qcnt_user += conf.qsets_max;
+		} else
+			cfgd_pf++;
+
+		total_pf++;
+		last_bus = _xpdev->pdev->bus->number;
+		last_dev = PCI_SLOT(_xpdev->pdev->devfn);
+	}
+
+	qcnt_remaining = max_pf_qs - total_qcnt_user;
+	if (qcnt_remaining < 0) {
+		pr_err("Sysfs reconfiguration of vf-max failed!!!\n");
+		reconfig_ok = -EPERM;
+		goto errout_reconfig;
+	}
+
+	if (cfgd_pf)
+		qcnt = qcnt_remaining / cfgd_pf;
+
+	count = total_pf;
+
+	list_for_each_entry_safe(_xpdev, tmp, &xpdev_list, list_head) {
+		struct qdma_dev_conf conf;
+
+		err = qdma_device_get_config(_xpdev->dev_hndl, &conf, NULL, 0);
+		if (err < 0) {
+			pr_err("Failed to get conf for qdma device '%d'\n",
+					_xpdev->idx);
+			reconfig_ok = err;
+			goto errout_reconfig;
+		}
+
+		if (conf.cur_cfg_state == QMAX_CFG_INITIAL)
+			conf.qsets_max = qcnt;
+
+		if (conf.qsets_max)
+			conf.qsets_base = next_qbase;
+		else
+			conf.qsets_base = 0;
+		next_qbase += conf.qsets_max;
+
+		err = qdma_device_set_config(_xpdev->dev_hndl, &conf);
+		if (err < 0) {
+			pr_err("Failed to get conf for qdma device '%d'\n", _xpdev->idx);
+			reconfig_ok = err;
+			goto errout_reconfig;
+		}
+
+		err = qdma_set_qmax(_xpdev->dev_hndl, conf.qsets_max, 1);
+		if (err < 0) {
+			pr_err("Failed to alter qmax for qdma%u %s max QP: %u, %u~%u\n",
+					_xpdev->idx, dev_name(&conf.pdev->dev),
+					conf.qsets_max, conf.qsets_base,
+					conf.qsets_base + conf.qsets_max - 1);
+			reconfig_ok = err;
+			goto errout_reconfig;
+		}
+
+		/** we have to configure 'total_pf' PF devices  */
+		if (!(count--))
+			break;
+	}
+
+errout_reconfig:
+	mutex_unlock(&xpdev_mutex);
+
+	return reconfig_ok;
+}
+
+static int qdma_reconfigure_qmax(struct xlnx_pci_dev *xpdev,
+		struct qdma_dev_conf *conf_head)
+{
+	int err = 0, qmax = 0, count = 0;
+	struct xlnx_pci_dev *_xpdev, *tmp;
+	struct qdma_dev_conf *conf_p = conf_head;
+
+	if (!conf_head)
+		return -EINVAL;
+
+	mutex_lock(&xpdev_mutex);
+	/** start from the device we want to alter the qmax value
+	 * TODO: failure will take the device to an inconsistant
+	 * state and how to handle it.
+	 */
+	list_for_each_entry_safe(_xpdev, tmp,  &xpdev_list, list_head) {
+
+		err = qdma_device_set_config(_xpdev->dev_hndl, conf_p);
+		if (err < 0) {
+			pr_err("Failed to get conf for qdma device '%05x'\n", _xpdev->idx);
+			break;
+		}
+		qmax = conf_p->qsets_max;
+		err = qdma_set_qmax(_xpdev->dev_hndl, qmax, 1);
+		if (err < 0) {
+			pr_err("Failed to alter qmax for qdma%05x %s max QP: %u, %u~%u\n",
+					_xpdev->idx, dev_name(&conf_p->pdev->dev),
+					conf_p->qsets_max, conf_p->qsets_base,
+					conf_p->qsets_base + conf_p->qsets_max - 1);
+			break;
+		}
+		if (_xpdev == xpdev)
+			qdma_device_set_cfg_state(_xpdev->dev_hndl, QMAX_CFG_USER);
+
+		conf_p++;
+		count++;
+	}
+	mutex_unlock(&xpdev_mutex);
+
+	if (!err)
+		pr_debug("Succesfully reconfigured '%d' devices\n", count);
+
+	kfree(conf_head);
+
+	return err;
+}
+
+static ssize_t set_qmax(struct device *dev,
+	struct device_attribute *attr, const char *buf, size_t count)
+{
+	struct xlnx_pci_dev *xpdev;
+	struct qdma_dev_conf *conf_head = NULL;
+	unsigned int qmax = 0;
+	int err = 0;
+
+	xpdev = (struct xlnx_pci_dev *)dev_get_drvdata(dev);
+	if (!xpdev)
+		return -EINVAL;
+
+	err = kstrtouint(buf, 0, &qmax);
+	if (err < 0) {
+		pr_info("failed to set qmax to %d\n", qmax);
+		return err;
+	}
+
+	if (qmax > qconf_get_qmax(PCI_TYPE_PF, 0)) {
+		pr_err("Invalid qmax %u (max = %u)\n",
+				qmax,
+				qconf_get_qmax(PCI_TYPE_PF, 0));
+		return -EINVAL;
+	}
+
+	err = qdma_prep_reconfigure(xpdev, qmax, &conf_head);
+	if (!(err < 0))
+		err = qdma_reconfigure_qmax(xpdev, conf_head);
+
+	return err ? err : count;
+}
+
+/*****************************************************************************/
+/**
+ * funcname() -  handler to set the qmax_vf configuration value
+ *
+ * @dev :   PCIe device handle
+ * @attr:   qmax_vf configuration value
+ * @buf :   buffer to hold the configured value
+ * @count : the number of bytes of data in the buffer
+ *
+ * Handler function to set the qmax_vf
+ *
+ * @note    none
+ *
+ * Return:  Returns length of the buffer on success, <0 on failure
+ *
+ *****************************************************************************/
+static ssize_t set_qmax_vfs(struct device *dev,
+	struct device_attribute *attr, const char *buf, size_t count)
+{
+	unsigned int qmax = 0;
+	int err = 0;
+	int last_qmax = 0;
+
+	if (!is_vfqmax_configurable()) {
+		pr_err("Setting VF-qmax failed, VFs already registered.");
+		return -EPERM;
+	}
+
+	err = kstrtoint(buf, 0, &qmax);
+	if (err < 0) {
+		pr_err("Failed to set qmax VFs\n");
+		return err;
+	}
+
+	if (qmax > TOTAL_QDMA_QS) {
+		pr_err("Invalid vf qmax %d\n", qmax);
+		return -EINVAL;
+	}
+
+	last_qmax = set_vf_qmax(qmax);
+	err = qdma_sysfs_reconfigure();
+	if (err < 0)
+		set_vf_qmax(last_qmax);
+
+	return err ? err : count;
+}
+
+/*****************************************************************************/
+/**
+ * funcname() -  handler to show the cmpl_status_acc configuration value
+ *
+ * @dev :   PCIe device handle
+ * @attr:   cmpl_status_acc configuration value
+ * @buf :   buffer to hold the configured value
+ *
+ * Handler function to show the cmpl_status_acc
+ *
+ * @note    none
+ *
+ * Return:  Returns length of the buffer on success, <0 on failure
+ *
+ *****************************************************************************/
+static ssize_t show_cmpl_status_acc(struct device *dev,
+	struct device_attribute *attr, char *buf)
+{
+	struct pci_dev *pdev = to_pci_dev(dev);
+	struct xlnx_pci_dev *xpdev;
+	int len;
+	unsigned int cmpl_status_acc = 0;
+
+	if (!pdev)
+		return -EINVAL;
+
+	xpdev = (struct xlnx_pci_dev *)dev_get_drvdata(dev);
+	if (!xpdev)
+		return -EINVAL;
+
+	cmpl_status_acc = qdma_get_cmpl_status_acc(xpdev->dev_hndl);
+	len = sprintf(buf, "%d\n", cmpl_status_acc);
+	if (len <= 0)
+		pr_err("copying cmpl status acc value to buf failed with err: %d\n", len);
+
+	return len;
+}
+
+/*****************************************************************************/
+/**
+ * funcname() -  handler to set the cmpl_status_acc configuration value
+ *
+ * @dev :   PCIe device handle
+ * @attr:   cmpl_status_acc configuration value
+ * @buf :   buffer to hold the configured value
+ * @count : the number of bytes of data in the buffer
+ *
+ * Handler function to set the cmpl_status_acc
+ *
+ * @note    none
+ *
+ * Return:  Returns length of the buffer on success, <0 on failure
+ *
+ *****************************************************************************/
+static ssize_t set_cmpl_status_acc(struct device *dev,
+	struct device_attribute *attr, const char *buf, size_t count)
+{
+	struct pci_dev *pdev = to_pci_dev(dev);
+	struct xlnx_pci_dev *xpdev;
+	unsigned int cmpl_status_acc = 0;
+	int err = 0;
+
+	if (!pdev)
+		return -EINVAL;
+
+	xpdev = (struct xlnx_pci_dev *)dev_get_drvdata(dev);
+	if (!xpdev)
+		return -EINVAL;
+
+	err = kstrtoint(buf, 0, &cmpl_status_acc);
+	if (err < 0) {
+		pr_err("failed to set cmpl status accumulator to %d\n", cmpl_status_acc);
+		return err;
+	}
+
+	err = qdma_set_cmpl_status_acc(xpdev->dev_hndl, cmpl_status_acc);
+	return err ? err : count;
+}
+
+/*****************************************************************************/
+/**
+ * funcname() -  handler to show the buf_sz configuration value
+ *
+ * @dev :   PCIe device handle
+ * @attr:   buf_sz configuration value
+ * @buf :   buffer to hold the configured value
+ *
+ * Handler function to show the buf_sz
+ *
+ * @note    none
+ *
+ * Return:  Returns length of the buffer on success, <0 on failure
+ *
+ *****************************************************************************/
+
+static ssize_t show_c2h_buf_sz(struct device *dev,
+		struct device_attribute *attr, char *buf)
+{
+	struct pci_dev *pdev = to_pci_dev(dev);
+	struct xlnx_pci_dev *xpdev;
+	int len = 0;
+	int i;
+	unsigned int c2h_buf_sz[QDMA_GLOBAL_CSR_ARRAY_SZ] = {0};
+
+	if (!pdev)
+		return -EINVAL;
+
+	xpdev = (struct xlnx_pci_dev *)dev_get_drvdata(dev);
+	if (!xpdev)
+		return -EINVAL;
+
+	qdma_get_buf_sz(xpdev->dev_hndl, c2h_buf_sz);
+
+	for (i = 0; i < QDMA_GLOBAL_CSR_ARRAY_SZ; i++)
+		len += sprintf(buf + len, "%hu ", c2h_buf_sz[i]);
+	len += sprintf(buf + len, "%s", "\n");
+
+	return len;
+}
+
+/*****************************************************************************/
+/**
+ * funcname() -  handler to set the buf_sz configuration value
+ *
+ * @dev :   PCIe device handle
+ * @attr:   buf_sz configuration value
+ * @buf :   buffer to hold the configured value
+ * @count : the number of bytes of data in the buffer
+ *
+ * Handler function to set the buf_sz
+ *
+ * @note    none
+ *
+ * Return:  Returns length of the buffer on success, <0 on failure
+ *
+ *****************************************************************************/
+
+static ssize_t set_c2h_buf_sz(struct device *dev,
+		struct device_attribute *attr, const char *buf, size_t count)
+{
+	struct pci_dev *pdev = to_pci_dev(dev);
+	struct xlnx_pci_dev *xpdev;
+	int err = 0;
+	char *s = (char *)buf, *p = NULL;
+	const char *tc = " ";   /* token character here is a "space" */
+	unsigned int c2h_buf_sz[QDMA_GLOBAL_CSR_ARRAY_SZ] = {0};
+	int i = 0;
+
+	if (!pdev)
+		return -EINVAL;
+
+	xpdev = (struct xlnx_pci_dev *)dev_get_drvdata(dev);
+	if (!xpdev)
+		return -EINVAL;
+
+	/* First read the values in to the register
+ 	** This helps to restore the values of entries if
+	** user configures lesser than 16 values
+	*/
+	qdma_get_buf_sz(xpdev->dev_hndl, c2h_buf_sz);
+
+	while ((p = strsep(&s, tc)) != NULL && i < QDMA_GLOBAL_CSR_ARRAY_SZ) {
+		if (*p == 0)
+			continue;
+
+		err = kstrtoint(p, 0, &c2h_buf_sz[i]);
+		if (err < 0)
+			goto input_err;
+
+		/* Check if buf_sz is configured as power of 2 */
+		if (!(c2h_buf_sz[i]) || ((c2h_buf_sz[i]) & (c2h_buf_sz[i]-1))) {
+			pr_warn("buf_sz at index %d is not power of 2\n", i);
+			err = -EINVAL;
+			goto input_err;
+		}
+		i++;
+	}
+
+	if (p) {
+		/*
+		check if the number of entries are more than 16 !
+		if yes, ignore the extra values
+		*/
+		pr_warn("Found more than 16 entries. Ignoring extra entries\n");
+	}
+
+	err = qdma_set_buf_sz(xpdev->dev_hndl, c2h_buf_sz);
+
+input_err:
+	return err ? err : count;
+}
+
+/*****************************************************************************/
+/**
+ * funcname() -  handler to show the ring_sz configuration value
+ *
+ * @dev :   PCIe device handle
+ * @attr:   ring_sz configuration value
+ * @buf :   buffer to hold the configured value
+ *
+ * Handler function to show the ring_sz
+ *
+ * @note    none
+ *
+ * Return:  Returns length of the buffer on success, <0 on failure
+ *
+ *****************************************************************************/
+
+static ssize_t show_glbl_rng_sz(struct device *dev,
+	struct device_attribute *attr, char *buf)
+{
+	struct pci_dev *pdev = to_pci_dev(dev);
+	struct xlnx_pci_dev *xpdev;
+	int len = 0;
+	int i;
+	unsigned int glbl_ring_sz[QDMA_GLOBAL_CSR_ARRAY_SZ] = {0};
+
+	if (!pdev)
+		return -EINVAL;
+
+	xpdev = (struct xlnx_pci_dev *)dev_get_drvdata(dev);
+	if (!xpdev)
+		return -EINVAL;
+
+	qdma_get_glbl_rng_sz(xpdev->dev_hndl, glbl_ring_sz);
+
+	for (i = 0; i < QDMA_GLOBAL_CSR_ARRAY_SZ; i++)
+		len += sprintf(buf + len, "%hu ", glbl_ring_sz[i]);
+	len += sprintf(buf + len, "%s", "\n");
+
+	return len;
+}
+
+/*****************************************************************************/
+/**
+ * funcname() -  handler to set the glbl_ring_sz configuration value
+ *
+ * @dev :   PCIe device handle
+ * @attr:   buf_sz configuration value
+ * @buf :   buffer to hold the configured value
+ * @count : the number of bytes of data in the buffer
+ *
+ * Handler function to set the glbl_ring_sz
+ *
+ * @note    none
+ *
+ * Return:  Returns length of the buffer on success, <0 on failure
+ *
+ *****************************************************************************/
+
+static ssize_t set_glbl_rng_sz(struct device *dev,
+	struct device_attribute *attr, const char *buf, size_t count)
+{
+	struct pci_dev *pdev = to_pci_dev(dev);
+	struct xlnx_pci_dev *xpdev;
+	int err = 0;
+	char *s = (char *)buf, *p = NULL;
+	const char *tc = " ";   /* token character here is a "space" */
+	unsigned int glbl_ring_sz[QDMA_GLOBAL_CSR_ARRAY_SZ] = {0};
+	int i = 0;
+
+	if (!pdev)
+		return -EINVAL;
+
+	xpdev = (struct xlnx_pci_dev *)dev_get_drvdata(dev);
+	if (!xpdev)
+		return -EINVAL;
+
+	/* First read the values in to the register
+ 	** This helps to restore the values of entries if
+	** user configures lesser than 16 values
+	*/
+	qdma_get_glbl_rng_sz(xpdev->dev_hndl, glbl_ring_sz);
+
+	while ((p = strsep(&s, tc)) != NULL && i < QDMA_GLOBAL_CSR_ARRAY_SZ) {
+		if (*p == 0)
+			continue;
+
+		err = kstrtoint(p, 0, &glbl_ring_sz[i]);
+		if (err < 0)
+			goto input_err;
+
+		/* Check if rng_sz is configured as power of 2 */
+		if ((glbl_ring_sz[i]) & (glbl_ring_sz[i]-1)) {
+			pr_warn("glbl_ring_sz at index %d is not power of 2\n", i);
+			err = -EINVAL;
+			goto input_err;
+		}
+
+		/* Always add one for the completion status */
+		glbl_ring_sz[i] += 1;
+
+		i++;
+	}
+
+	if (p) {
+		/*
+		check if the number of entries are more than 16 !
+		if yes, ignore the extra values
+		*/
+		pr_warn("Found more than 16 entries. Ignoring extra entries\n");
+	}
+
+	err = qdma_set_glbl_rng_sz(xpdev->dev_hndl, glbl_ring_sz);
+
+input_err:
+	return err ? err : count;
+}
+
+/*****************************************************************************/
+/**
+ * funcname() -  handler to show global csr c2h_timer_cnt configuration value
+ *
+ * @dev :   PCIe device handle
+ * @attr:   c2h_timer_cnt configuration value
+ * @buf :   buffer to hold the configured value
+ *
+ * Handler function to show the global csr c2h_timer_cnt
+ *
+ * @note    none
+ *
+ * Return:  Returns length of the buffer on success, <0 on failure
+ *
+ *****************************************************************************/
+static ssize_t show_c2h_timer_cnt(struct device *dev,
+	struct device_attribute *attr, char *buf)
+{
+	struct pci_dev *pdev = to_pci_dev(dev);
+	struct xlnx_pci_dev *xpdev;
+	int len = 0;
+	int i;
+	unsigned int c2h_timer_cnt[QDMA_GLOBAL_CSR_ARRAY_SZ] = {0};
+
+	if (!pdev)
+		return -EINVAL;
+
+	xpdev = (struct xlnx_pci_dev *)dev_get_drvdata(dev);
+	if (!xpdev)
+		return -EINVAL;
+
+	qdma_get_timer_cnt(xpdev->dev_hndl, c2h_timer_cnt);
+
+	for (i = 0; i < QDMA_GLOBAL_CSR_ARRAY_SZ; i++)
+		len += sprintf(buf + len, "%hhu ", c2h_timer_cnt[i]);
+	len += sprintf(buf + len, "%s", "\n");
+
+	return len;
+}
+
+/*****************************************************************************/
+/**
+ * set_c2h_timer_cnt() -  handler to set global csr c2h_timer_cnt config
+ *
+ * @dev :   PCIe device handle
+ * @attr:   c2h_timer_cnt configuration value
+ * @buf :   buffer containing new configuration
+ * @count : the number of bytes of data in the buffer
+ *
+ * Handler function to set the global csr c2h_timer_cnt
+ *
+ * @note    none
+ *
+ * Return:  Returns length of the buffer on success, <0 on failure
+ *
+ *****************************************************************************/
+static ssize_t set_c2h_timer_cnt(struct device *dev,
+	struct device_attribute *attr, const char *buf, size_t count)
+{
+	struct pci_dev *pdev = to_pci_dev(dev);
+	struct xlnx_pci_dev *xpdev;
+	int err = 0;
+	char *s = (char *)buf, *p = NULL;
+	const char *tc = " ";	/* token character here is a "space" */
+	unsigned int c2h_timer_cnt[QDMA_GLOBAL_CSR_ARRAY_SZ] = {0};
+	int i = 0;
+
+	if (!pdev)
+		return -EINVAL;
+
+	xpdev = (struct xlnx_pci_dev *)dev_get_drvdata(dev);
+	if (!xpdev)
+		return -EINVAL;
+
+	/* First read the values in to the register
+ 	** This helps to restore the values of entries if
+	** user configures lesser than 16 values
+	*/
+	qdma_get_timer_cnt(xpdev->dev_hndl, c2h_timer_cnt);
+
+	while ((p = strsep(&s, tc)) != NULL && i < QDMA_GLOBAL_CSR_ARRAY_SZ) {
+		if (*p == 0)
+			continue;
+
+		err = kstrtoint(p, 0, &c2h_timer_cnt[i]);
+		if (err < 0)
+			goto input_err;
+
+		if (c2h_timer_cnt[i] < 0 || c2h_timer_cnt[i] > 255) {
+			pr_warn("timer cnt at index %d is %d - out of range [0-255]\n",
+				i, c2h_timer_cnt[i]);
+			err = -EINVAL;
+			goto input_err;
+		}
+		i++;
+	}
+
+	if (p) {
+		/*
+		check if the number of entries are more than 16 !
+		if yes, ignore the extra values
+		*/
+		pr_warn("Found more than 16 entries. Ignoring extra entries\n");
+	}
+	err = qdma_set_timer_cnt(xpdev->dev_hndl, c2h_timer_cnt);
+
+input_err:
+	return err ? err : count;
+}
+
+/*****************************************************************************/
+/**
+ * funcname() -  handler to show global csr c2h_cnt_th_ configuration value
+ *
+ * @dev :   PCIe device handle
+ * @attr:   c2h_cnt_th configuration value
+ * @buf :   buffer to hold the configured value
+ *
+ * Handler function to show the global csr c2h_cnt_th
+ *
+ * @note    none
+ *
+ * Return:  Returns length of the buffer on success, <0 on failure
+ *
+ *****************************************************************************/
+static ssize_t show_c2h_cnt_th(struct device *dev,
+			struct device_attribute *attr, char *buf)
+{
+	struct pci_dev *pdev = to_pci_dev(dev);
+	struct xlnx_pci_dev *xpdev;
+	int len = 0;
+	int i;
+	unsigned int c2h_cnt_th[QDMA_GLOBAL_CSR_ARRAY_SZ] = {0};
+
+	if (!pdev)
+		return -EINVAL;
+
+	xpdev = (struct xlnx_pci_dev *)dev_get_drvdata(dev);
+	if (!xpdev)
+		return -EINVAL;
+
+	qdma_get_cnt_thresh(xpdev->dev_hndl, c2h_cnt_th);
+
+	for (i = 0; i < QDMA_GLOBAL_CSR_ARRAY_SZ; i++)
+		len += sprintf(buf + len, "%hhu ", c2h_cnt_th[i]);
+	len += sprintf(buf + len, "%s", "\n");
+
+	return len;
+}
+
+/*****************************************************************************/
+/**
+ * set_c2h_cnt_th() -  handler to set global csr c2h_cnt_th configuration
+ *
+ * @dev :   PCIe device handle
+ * @attr:   c2h_cnt_th configuration value
+ * @buf :   buffer containing new configuration
+ * @count : the number of bytes of data in the buffer
+ *
+ * Handler function to set the global csr c2h_cnt_th
+ *
+ * @note    none
+ *
+ * Return:  Returns length of the buffer on success, <0 on failure
+ *
+ *****************************************************************************/
+static ssize_t set_c2h_cnt_th(struct device *dev,
+	struct device_attribute *attr, const char *buf, size_t count)
+{
+	struct pci_dev *pdev = to_pci_dev(dev);
+	struct xlnx_pci_dev *xpdev;
+	int err = 0;
+	char *s = (char *)buf, *p = NULL;
+	const char *tc = " ";	/* token character here is a "space" */
+	unsigned int c2h_cnt_th[QDMA_GLOBAL_CSR_ARRAY_SZ] = {0};
+	int i = 0;
+
+	if (!pdev)
+		return -EINVAL;
+
+	xpdev = (struct xlnx_pci_dev *)dev_get_drvdata(dev);
+	if (!xpdev)
+		return -EINVAL;
+
+	/* First read the values in to the register
+ 	** This helps to restore the values of entries if
+	** user configures lesser than 16 values
+	*/
+	qdma_get_cnt_thresh(xpdev->dev_hndl, c2h_cnt_th);
+
+	while ((p = strsep(&s, tc)) != NULL && i < QDMA_GLOBAL_CSR_ARRAY_SZ) {
+		if (*p == 0)
+			continue;
+
+		err = kstrtoint(p, 0, &c2h_cnt_th[i]);
+		if (err < 0)
+			goto input_err;
+
+		if (c2h_cnt_th[i] < 0 || c2h_cnt_th[i] > 255) {
+			pr_warn("counter threshold at index %d is %d - out of range [0-255]\n",
+				i, c2h_cnt_th[i]);
+			err = -EINVAL;
+			goto input_err;
+		}
+		i++;
+	}
+
+	if (p) {
+		/*
+		check if the number of entries are more than 16 !
+		if yes, ignore the extra values
+		*/
+		pr_warn("Found more than 16 entries. Ignoring extra entries\n");
+	}
+	err = qdma_set_cnt_thresh(xpdev->dev_hndl, c2h_cnt_th);
+
+input_err:
+	return err ? err : count;
+}
+
+/**
+ * Function to find the first PF device available in the card
+ */
+static bool is_first_pfdev(u32 bdf)
+{
+	struct xlnx_pci_dev *_xpdev, *tmp;
+	u32 bdf_tmp = 0;
+
+	mutex_lock(&xpdev_mutex);
+	if (list_empty(&xpdev_list)) {
+		mutex_unlock(&xpdev_mutex);
+		return 1;
+	}
+
+	list_for_each_entry_safe(_xpdev, tmp, &xpdev_list, list_head) {
+		struct pci_dev *pdev = _xpdev->pdev;
+		bdf_tmp = (pdev->bus->number << PCI_SHIFT_BUS)
+			| (PCI_SLOT(pdev->devfn) << PCI_SHIFT_DEV)
+			| PCI_FUNC(pdev->devfn);
+		/** find first bus and device are matching */
+		if ((bdf & ~0xf) == (bdf_tmp & ~0xf)) {
+			mutex_unlock(&xpdev_mutex);
+			/** if func matches, it returns 1, else 0*/
+			return (PCI_FUNC(pdev->devfn) == (bdf & 0xf));
+		}
+	}
+	mutex_unlock(&xpdev_mutex);
+
+	return 0;
+}
+
+/**
+ * function to find out master pf, if the parameter master_pf is passed.
+ * By default it will be PF0
+ */
+static u8 is_master_pf(struct pci_dev *pdev)
+{
+	int i = 0;
+	u32 bdf = (pdev->bus->number << PCI_SHIFT_BUS)
+		| (PCI_SLOT(pdev->devfn) << PCI_SHIFT_DEV)
+		| PCI_FUNC(pdev->devfn);
+	/**
+	 * no arguments are passed for master_pf, default to PF0
+	 * arguments passed but bus and device not in list,
+	 * default to PF0
+	 */
+	if (!master_cnt) {
+		if (is_first_pfdev(bdf))
+			return 1;
+	} else {
+		for (i = 0; i < master_cnt; i++) {
+			if ((bdf & ~0xf) == (master_pf[i] & ~0xf)) {
+				if ((master_pf[i] & 0xf) == (bdf & 0xf))
+					return 1;
+				else
+					return 0;
+			}
+		}
+
+		if (is_first_pfdev(bdf))
+			return 1;
+	}
+
+	return 0;
+}
+#else /** For VF #ifdef __QDMA_VF__ */
+/*****************************************************************************/
+/**
+ * funcname() -  handler to set the qmax configuration value
+ *
+ * @dev :   PCIe device handle
+ * @attr:   qmax configuration value
+ * @buf :   buffer to hold the configured value
+ *
+ * Handler function to set the qmax
+ *
+ * @note    none
+ *
+ * Return:  Returns length of the buffer on success, <0 on failure
+ *
+ *****************************************************************************/
+
+static ssize_t set_qmax(struct device *dev,
+		struct device_attribute *attr, const char *buf, size_t count)
+{
+	struct pci_dev *pdev = to_pci_dev(dev);
+	struct xlnx_pci_dev *_xpdev;
+	unsigned int qmax = 0;
+	int err = 0;
+
+	if (!pdev)
+		return -EINVAL;
+
+	_xpdev = (struct xlnx_pci_dev *)dev_get_drvdata(dev);
+	if (!_xpdev)
+		return -EINVAL;
+	err = kstrtoint(buf, 0, &qmax);
+	if (err < 0) {
+		pr_err("Failed to set qmax\n");
+		return err;
+	}
+
+
+	if (qmax > TOTAL_QDMA_QS) {
+		pr_err("Invalid vf qmax %d\n", qmax);
+		return -EINVAL;
+	}
+
+	err = qdma_vf_qconf(_xpdev->dev_hndl, qmax);
+	if (err < 0)
+		return err;
+
+	if (!err)
+		pr_debug("Succesfully reconfigured qdmavf%05x\n", _xpdev->idx);
+
+	return err ? err : count;
+}
+#endif
+
+static DEVICE_ATTR(qmax, S_IWUSR | S_IRUGO, show_qmax, set_qmax);
+static DEVICE_ATTR(intr_rngsz, S_IWUSR | S_IRUGO,
+			show_intr_rngsz, set_intr_rngsz);
+#ifndef __QDMA_VF__
+static DEVICE_ATTR(buf_sz, S_IWUSR | S_IRUGO,
+		show_c2h_buf_sz, set_c2h_buf_sz);
+static DEVICE_ATTR(glbl_rng_sz, S_IWUSR | S_IRUGO,
+		show_glbl_rng_sz, set_glbl_rng_sz);
+static DEVICE_ATTR(c2h_timer_cnt, S_IWUSR | S_IRUGO,
+			show_c2h_timer_cnt, set_c2h_timer_cnt);
+static DEVICE_ATTR(c2h_cnt_th, S_IWUSR | S_IRUGO,
+			show_c2h_cnt_th, set_c2h_cnt_th);
+static DEVICE_ATTR(cmpl_status_acc, S_IWUSR | S_IRUGO, show_cmpl_status_acc, set_cmpl_status_acc);
+static DEVICE_ATTR(qmax_vfs, S_IWUSR | S_IRUGO, show_qmax_vfs, set_qmax_vfs);
+#endif
+
+static struct attribute *pci_device_attrs[] = {
+		&dev_attr_qmax.attr,
+		&dev_attr_intr_rngsz.attr,
+		NULL,
+};
+
+static struct attribute *pci_master_device_attrs[] = {
+		&dev_attr_qmax.attr,
+		&dev_attr_intr_rngsz.attr,
+#ifndef __QDMA_VF__
+		&dev_attr_qmax_vfs.attr,
+		&dev_attr_buf_sz.attr,
+		&dev_attr_glbl_rng_sz.attr,
+		&dev_attr_c2h_timer_cnt.attr,
+		&dev_attr_c2h_cnt_th.attr,
+		&dev_attr_cmpl_status_acc.attr,
+#endif
+		NULL,
+};
+
+static struct attribute_group pci_device_attr_group = {
+		.name  = "qdma",
+		.attrs = pci_device_attrs,
+
+};
+
+static struct attribute_group pci_master_device_attr_group = {
+		.name  = "qdma",
+		.attrs = pci_master_device_attrs,
+
+};
+
+static inline void xpdev_list_remove(struct xlnx_pci_dev *xpdev)
+{
+	mutex_lock(&xpdev_mutex);
+	list_del(&xpdev->list_head);
+	mutex_unlock(&xpdev_mutex);
+}
+
+static inline void xpdev_list_add(struct xlnx_pci_dev *xpdev)
+{
+	mutex_lock(&xpdev_mutex);
+	list_add_tail(&xpdev->list_head, &xpdev_list);
+	mutex_unlock(&xpdev_mutex);
+}
+
+int xpdev_list_dump(char *buf, int buflen)
+{
+	struct xlnx_pci_dev *xpdev, *tmp;
+	char *cur = buf;
+	char *const end = buf + buflen;
+	int base_end = 0;
+	int qmax_val = 0;
+
+	if (!buf || !buflen)
+		return -EINVAL;
+
+	mutex_lock(&xpdev_mutex);
+	list_for_each_entry_safe(xpdev, tmp, &xpdev_list, list_head) {
+		struct pci_dev *pdev;
+		struct qdma_dev_conf conf;
+		int rv;
+
+		rv = qdma_device_get_config(xpdev->dev_hndl, &conf, NULL, 0);
+		if (rv < 0) {
+			cur += snprintf(cur, cur - end,
+			"ERR! unable to get device config for idx %05x\n",
+			xpdev->idx);
+			if (cur >= end)
+				goto handle_truncation;
+			break;
+		}
+
+		pdev = conf.pdev;
+
+		base_end = (int)(conf.qsets_base + conf.qsets_max - 1);
+		if (base_end < 0)
+			base_end = 0;
+#ifdef __QDMA_VF__
+		if ((conf.qsets_base == 0) 
+				&& (conf.qsets_max == 1)
+				&& (conf.cur_cfg_state == QMAX_CFG_INITIAL))
+			qmax_val = 0;
+		else
+			qmax_val = conf.qsets_max;
+#else
+			qmax_val = conf.qsets_max;
+#endif
+
+		cur += snprintf(cur, end - cur,
+#ifdef __QDMA_VF__
+			"qdmavf%05x\t%s\tmax QP: %u, %u~%u\n",
+#else
+			"qdma%05x\t%s\tmax QP: %u, %u~%u\n",
+#endif
+			xpdev->idx, dev_name(&pdev->dev),
+			qmax_val, conf.qsets_base,
+			base_end);
+		if (cur >= end)
+			goto handle_truncation;
+	}
+	mutex_unlock(&xpdev_mutex);
+
+	return cur - buf;
+
+handle_truncation:
+	mutex_unlock(&xpdev_mutex);
+	pr_warn("ERR! str truncated. req=%lu, avail=%u", cur - buf, buflen);
+	*buf = '\0';
+	return cur - buf;
+}
+
+static void xpdev_unmap_user_bypass_bars(struct xlnx_pci_dev *xpdev)
+{
+	if (xpdev->user_bar_regs) {
+		/* unmap BAR */
+		pci_iounmap(xpdev->pdev, xpdev->user_bar_regs);
+		/* mark as unmapped */
+		xpdev->user_bar_regs = NULL;
+	}
+
+	if (xpdev->bypass_bar_regs) {
+		/* unmap BAR */
+		pci_iounmap(xpdev->pdev, xpdev->bypass_bar_regs);
+		/* mark as unmapped */
+		xpdev->bypass_bar_regs = NULL;
+	}
+
+}
+
+/*****************************************************************************/
+/**
+ * identify_config_bar() - Function to identify the config bar of the PCIE device
+ *
+ * @param[in]	pdev:		pcie device
+ *
+ * @return	config bar
+ *****************************************************************************/
+static u8 identify_config_bar(struct pci_dev *pdev)
+{
+	int i = 0;
+	u8 bus_num = pdev->bus->number;
+#ifndef __QDMA_VF__
+	u8 dev_fn = PCI_FUNC(pdev->devfn);
+#else
+	u16 device_id = pdev->device;
+#endif
+#ifndef __QDMA_VF__
+	if (config_bar_cnt) {
+		for (i = 0; i < MAX_DMA_DEV; i++) {
+			if (((config_bar[i] & BUS_NUM_MASK) >> BUS_NUM_SHIFT) == bus_num) {
+				switch (dev_fn) {
+					case PF_DEVICE_0:
+						return ((config_bar[i] & PF_DEV_0_MASK)
+								>> PF_DEV_0_SHIFT);
+					case PF_DEVICE_1:
+						return ((config_bar[i] & PF_DEV_1_MASK)
+								>> PF_DEV_1_SHIFT);
+					case PF_DEVICE_2:
+						return ((config_bar[i] & PF_DEV_2_MASK)
+								>> PF_DEV_2_SHIFT);
+					case PF_DEVICE_3:
+						return ((config_bar[i] & PF_DEV_3_MASK)
+								>> PF_DEV_3_SHIFT);
+				}
+			}
+		}
+	}
+
+	return QDMA_CONFIG_BAR;
+#else
+	if (config_bar_cnt) {
+		for (i = 0; i < MAX_DMA_DEV; i++) {
+			if (((config_bar[i] & BUS_NUM_MASK) >> BUS_NUM_SHIFT) == bus_num) {
+				switch ((device_id >> VF_PF_IDENTIFIER_SHIFT) &
+						VF_PF_IDENTIFIER_MASK) {
+					case PF_DEVICE_0:
+						return ((config_bar[i] & PF_DEV_0_MASK)
+								>> PF_DEV_0_SHIFT);
+					case PF_DEVICE_1:
+						return ((config_bar[i] & PF_DEV_1_MASK)
+								>> PF_DEV_1_SHIFT);
+					case PF_DEVICE_2:
+						return ((config_bar[i] & PF_DEV_2_MASK)
+								>> PF_DEV_2_SHIFT);
+					case PF_DEVICE_3:
+						return ((config_bar[i] & PF_DEV_3_MASK)
+								>> PF_DEV_3_SHIFT);
+				}
+			}
+		}
+	}
+
+	return QDMA_CONFIG_BAR;
+#endif
+}
+
+static int xpdev_map_user_bypass_bars(struct xlnx_pci_dev *xpdev)
+{
+	struct xlnx_dma_dev *xdev = NULL;
+	int map_len;
+
+	if (!xpdev)
+		return -EINVAL;
+
+	xdev = (struct xlnx_dma_dev *)(xpdev->dev_hndl);
+
+	if (xdev->conf.bar_num_user < 0) {
+		pr_err("User and bypass bar is not present \n");
+		return -EINVAL;
+	}
+
+	map_len = pci_resource_len(xpdev->pdev, (int)xdev->conf.bar_num_user);
+	if (map_len > QDMA_MAX_BAR_LEN_MAPPED)
+		map_len = QDMA_MAX_BAR_LEN_MAPPED;
+
+	xpdev->user_bar_regs = pci_iomap(xpdev->pdev, xdev->conf.bar_num_user, map_len);
+	if (!xpdev->user_bar_regs) {
+		pr_err("unable to map user bar %d.\n", xdev->conf.bar_num_user);
+		return -EINVAL;
+	}
+
+	if (xdev->conf.bar_num_bypass >= 0) {
+		/* Mapping bypass bar */
+		map_len = pci_resource_len(xpdev->pdev, (int)xdev->conf.bar_num_bypass);
+		if (map_len > QDMA_MAX_BAR_LEN_MAPPED)
+			map_len = QDMA_MAX_BAR_LEN_MAPPED;
+
+		xpdev->bypass_bar_regs = pci_iomap(xpdev->pdev, xdev->conf.bar_num_bypass, map_len);
+		if (!xpdev->bypass_bar_regs) {
+			pr_err("unable to map bypass bar %d.\n", xdev->conf.bar_num_bypass);
+			return -EINVAL;
+		}
+	}
+
+	return 0;
+}
+
+struct xlnx_pci_dev *xpdev_find_by_idx(unsigned int idx, char *buf, int buflen)
+{
+	struct xlnx_pci_dev *xpdev, *tmp;
+
+	mutex_lock(&xpdev_mutex);
+	list_for_each_entry_safe(xpdev, tmp, &xpdev_list, list_head) {
+		if (xpdev->idx == idx) {
+			mutex_unlock(&xpdev_mutex);
+			return xpdev;
+		}
+	}
+	mutex_unlock(&xpdev_mutex);
+
+	if (buf && buflen)
+		snprintf(buf, buflen, "NO device found at index %05x!\n", idx);
+
+	return NULL;
+}
+
+struct xlnx_qdata *xpdev_queue_get(struct xlnx_pci_dev *xpdev,
+			unsigned int qidx, bool c2h, bool check_qhndl,
+			char *ebuf, int ebuflen)
+{
+	struct xlnx_qdata *qdata;
+
+	if (qidx >= xpdev->qmax) {
+		pr_debug("qdma%05x QID %u too big, %05x.\n",
+			xpdev->idx, qidx, xpdev->qmax);
+		if (ebuf && ebuflen) {
+			snprintf(ebuf, ebuflen, "QID %u too big, %u.\n",
+					 qidx, xpdev->qmax);
+		}
+		return NULL;
+	}
+
+	qdata = xpdev->qdata + qidx;
+	if (c2h)
+		qdata += xpdev->qmax;
+
+	if (check_qhndl && (!qdata->qhndl && !qdata->xcdev)) {
+		pr_debug("qdma%05x QID %u NOT configured.\n", xpdev->idx, qidx);
+		if (ebuf && ebuflen) {
+			snprintf(ebuf, ebuflen, "QID %u NOT configured.\n", qidx);
+		}
+
+		return NULL;
+	}
+
+	return qdata;
+}
+
+int xpdev_queue_delete(struct xlnx_pci_dev *xpdev, unsigned int qidx, bool c2h,
+			char *ebuf, int ebuflen)
+{
+	struct xlnx_qdata *qdata = xpdev_queue_get(xpdev, qidx, c2h, 1, ebuf,
+						ebuflen);
+	int rv = 0;
+
+	if (!qdata)
+		return -EINVAL;
+
+	if(!qdata->xcdev)
+		return -EINVAL;
+
+	spin_lock(&xpdev->cdev_lock);
+	qdata->xcdev->dir_init &= ~(1 << (c2h ? 1 : 0));
+	if (qdata->xcdev && !qdata->xcdev->dir_init)
+		qdma_cdev_destroy(qdata->xcdev);
+	spin_unlock(&xpdev->cdev_lock);
+
+	if (qdata->qhndl != QDMA_QUEUE_IDX_INVALID)
+		rv = qdma_queue_remove(xpdev->dev_hndl, qdata->qhndl,
+					ebuf, ebuflen);
+	else
+		pr_debug("qidx %u/%u, c2h %d, qhndl invalid.\n",
+			qidx, xpdev->qmax, c2h);
+	if (rv < 0)
+		goto exit;
+
+	memset(qdata, 0, sizeof(*qdata));
+exit:
+	return rv;
+}
+
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 16, 0)
+static void xpdev_queue_delete_all(struct xlnx_pci_dev *xpdev)
+{
+	int i;
+
+	for (i = 0; i < xpdev->qmax; i++) {
+		xpdev_queue_delete(xpdev, i, 0, NULL, 0);
+		xpdev_queue_delete(xpdev, i, 1, NULL, 0);
+	}
+}
+#endif
+
+int xpdev_queue_add(struct xlnx_pci_dev *xpdev, struct qdma_queue_conf *qconf,
+			char *ebuf, int ebuflen)
+{
+	struct xlnx_qdata *qdata;
+	struct qdma_cdev *xcdev;
+	struct xlnx_qdata *qdata_tmp;
+	struct qdma_dev_conf dev_config;
+	u8 dir;
+	unsigned long qhndl;
+	int rv;
+
+	rv = qdma_queue_add(xpdev->dev_hndl, qconf, &qhndl, ebuf, ebuflen);
+	if (rv < 0)
+		return rv;
+
+	pr_debug("qdma%05x idx %u, st %d, c2h %d, added, qhndl 0x%lx.\n",
+		xpdev->idx, qconf->qidx, qconf->st, qconf->c2h, qhndl);
+
+	qdata = xpdev_queue_get(xpdev, qconf->qidx, qconf->c2h, 0, ebuf,
+				ebuflen);
+	if (!qdata) {
+		pr_info("q added 0x%lx, get failed, idx 0x%x.\n",
+			qhndl, qconf->qidx);
+		return rv;
+	}
+
+	dir = qconf->c2h ? 0 : 1;
+	spin_lock(&xpdev->cdev_lock);
+	qdata_tmp = xpdev_queue_get(xpdev, qconf->qidx, dir, 0, NULL, 0);
+	if (qdata_tmp) {
+		/* only 1 cdev per queue pair */
+		if (qdata_tmp->xcdev) {
+			unsigned long *priv_data;
+
+			qdata->qhndl = qhndl;
+			qdata->xcdev = qdata_tmp->xcdev;
+			priv_data = qconf->c2h ? &qdata->xcdev->c2h_qhndl :
+					&qdata->xcdev->h2c_qhndl;
+			*priv_data = qhndl;
+			qdata->xcdev->dir_init |= (1 << qconf->c2h);
+
+			spin_unlock(&xpdev->cdev_lock);
+			return 0;
+		}
+	}
+	spin_unlock(&xpdev->cdev_lock);
+
+	rv = qdma_device_get_config(xpdev->dev_hndl, &dev_config, NULL, 0);
+	if (rv < 0) {
+		pr_err("Failed to get conf for qdma device '%05x'\n",
+				xpdev->idx);
+		return rv;
+	}
+
+	/* always create the cdev
+	 * Give HW QID as minor number with qsets_base calculation */
+	rv = qdma_cdev_create(&xpdev->cdev_cb, xpdev->pdev, qconf,
+			(dev_config.qsets_base + qconf->qidx),
+			qhndl, &xcdev, ebuf, ebuflen);
+
+	qdata->qhndl = qhndl;
+	qdata->xcdev = xcdev;
+
+	return rv;
+}
+
+static void nl_work_handler_q_start(struct work_struct *work)
+{
+	struct xlnx_nl_work *nl_work = container_of(work, struct xlnx_nl_work,
+						work);
+	struct xlnx_pci_dev *xpdev = nl_work->xpdev;
+	struct xlnx_nl_work_q_ctrl *qctrl = &nl_work->qctrl;
+	char ebuf[XNL_EBUFLEN];
+	unsigned int qidx = qctrl->qidx;
+	u8 is_qp = qctrl->is_qp;
+	u8 c2h = qctrl->is_c2h;
+	int i;
+
+	for (i = 0; i < qctrl->qcnt; i++, qidx++) {
+		int rv;
+		struct xlnx_qdata *qdata;
+
+q_start:
+		qdata = xpdev_queue_get(xpdev, qidx, c2h, 1, ebuf, XNL_EBUFLEN);
+		if (!qdata) {
+			pr_info("%s, idx %u, c2h %u, get failed.\n",
+				dev_name(&xpdev->pdev->dev), qidx, c2h);
+			snprintf(ebuf, XNL_EBUFLEN,
+				"Q idx %u, c2h %u, get failed.\n", qidx, c2h);
+			goto send_resp;
+		}
+
+		rv = qdma_queue_start(xpdev->dev_hndl, qdata->qhndl, ebuf,
+					XNL_EBUFLEN);
+		if (rv < 0) {
+			pr_info("%s, idx %u, c2h %u, start failed %d.\n",
+				dev_name(&xpdev->pdev->dev), qidx, c2h, rv);
+			snprintf(ebuf, XNL_EBUFLEN,
+				"Q idx %u, c2h %u, start failed %d.\n",
+				qidx, c2h, rv);
+			goto send_resp;
+		}
+
+#ifndef __QDMA_VF__
+		{
+			struct xlnx_dma_dev *xdev =
+				(struct xlnx_dma_dev *)(xpdev->dev_hndl);
+
+			if (xdev->stm_en) {
+				rv = qdma_queue_prog_stm(xpdev->dev_hndl,
+							 qdata->qhndl,
+							 ebuf, XNL_EBUFLEN);
+				if (rv < 0) {
+					pr_info("%s, idx %u, c2h %u, prog stm failed %d.\n",
+						dev_name(&xpdev->pdev->dev),
+						qidx, c2h, rv);
+					snprintf(ebuf, XNL_EBUFLEN,
+						 "Q idx %u, c2h %u, prog stm failed %d.\n",
+						 qidx, c2h, rv);
+					goto send_resp;
+				}
+			}
+		}
+#endif
+
+		if (is_qp && c2h == qctrl->is_c2h) {
+			c2h = !qctrl->is_c2h;
+			goto q_start;
+		}
+
+		c2h = qctrl->is_c2h;
+	}
+
+	snprintf(ebuf, XNL_EBUFLEN,
+		 "%u Queues started, idx %u ~ %u.\n",
+		qctrl->qcnt, qctrl->qidx, qidx - 1);
+
+send_resp:
+	spin_lock(&nl_work->lock);
+	nl_work->q_start_handled = 1;
+	spin_unlock(&nl_work->lock);
+	xnl_respond_buffer(&nl_work->nl_info, ebuf, strlen(ebuf));
+	wake_up_interruptible(&nl_work->wq);
+}
+
+static struct xlnx_nl_work *xpdev_nl_work_alloc(struct xlnx_pci_dev *xpdev,
+						struct genl_info *nl_info)
+{
+	struct xlnx_nl_work *nl_work;
+
+	/* allocate work struct */
+	nl_work = kmalloc(sizeof(*nl_work), GFP_ATOMIC);
+	if (!nl_work) {
+		pr_info("qdma%05x %s: OOM.\n",
+			xpdev->idx, dev_name(&xpdev->pdev->dev));
+		return NULL;
+	}
+
+	memcpy(&nl_work->nl_info, nl_info, sizeof(*nl_info));
+	nl_work->xpdev = xpdev;
+
+	return nl_work;
+}
+
+int xpdev_nl_queue_start(struct xlnx_pci_dev *xpdev, void *nl_info, u8 is_qp,
+			u8 is_c2h, unsigned short qidx, unsigned short qcnt)
+{
+	struct xlnx_nl_work *nl_work = xpdev_nl_work_alloc(xpdev,
+					(struct genl_info *)nl_info);
+	struct xlnx_nl_work_q_ctrl *qctrl = &nl_work->qctrl;
+
+	if (!nl_work)
+		return -ENOMEM;
+
+	qctrl->is_qp = is_qp;
+	qctrl->is_c2h = is_c2h;
+	qctrl->qidx = qidx;
+	qctrl->qcnt = qcnt;
+
+	INIT_WORK(&nl_work->work, nl_work_handler_q_start);
+	init_waitqueue_head(&nl_work->wq);
+	spin_lock_init(&nl_work->lock);
+	nl_work->q_start_handled = 0;
+	spin_lock(&nl_work->lock);
+	queue_work(xpdev->nl_task_wq, &nl_work->work);
+	spin_unlock(&nl_work->lock);
+	wait_event_interruptible(nl_work->wq, nl_work->q_start_handled);
+	kfree(nl_work);
+
+	return 0;
+}
+
+static void xpdev_free(struct xlnx_pci_dev *p)
+{
+	xpdev_list_remove(p);
+
+	if (p->nl_task_wq)
+		destroy_workqueue(p->nl_task_wq);
+
+	if (((unsigned long)p) >= VMALLOC_START &&
+	    ((unsigned long)p) < VMALLOC_END)
+		vfree(p);
+	else
+		kfree(p);
+}
+
+static struct xlnx_pci_dev *xpdev_alloc(struct pci_dev *pdev, unsigned int qmax)
+{
+	int sz = sizeof(struct xlnx_pci_dev) +
+		qmax * 2 * sizeof(struct xlnx_qdata);
+	struct xlnx_pci_dev *xpdev = kzalloc(sz, GFP_KERNEL);
+	char name[80];
+
+	if (!xpdev) {
+		xpdev = vmalloc(sz);
+		if (xpdev)
+			memset(xpdev, 0, sz);
+	}
+
+	if (!xpdev) {
+		pr_info("OMM, qmax %u, sz %u.\n", qmax, sz);
+		return NULL;
+	}
+	spin_lock_init(&xpdev->cdev_lock);
+	xpdev->pdev = pdev;
+	xpdev->qmax = qmax;
+	xpdev->idx = 0xFF;
+
+	snprintf(name, 80, "qdma_%s_nl_wq", dev_name(&pdev->dev));
+        xpdev->nl_task_wq = create_singlethread_workqueue(name);
+        if (!xpdev->nl_task_wq) {
+                pr_info("%s OOM, nl_task_wq.\n", dev_name(&pdev->dev));
+                goto free_xpdev;
+        }
+
+	xpdev_list_add(xpdev);
+	return xpdev;
+
+free_xpdev:
+	xpdev_free(xpdev);
+	return NULL;
+}
+
+/*****************************************************************************/
+/**
+ * qdma_device_read_user_register() - read user bar register
+ *
+ * @param[in]	xpdev:		pointer to xlnx_pci_dev
+ * @param[in]	reg_addr:	register address
+ *
+ * @return	value of the user bar register
+ *****************************************************************************/
+unsigned int qdma_device_read_user_register(struct xlnx_pci_dev *xpdev,
+					unsigned int reg_addr)
+{
+	if (!xpdev)
+		return -EINVAL;
+
+	return readl(xpdev->user_bar_regs + reg_addr);
+}
+
+/*****************************************************************************/
+/**
+ * qdma_device_write_user_register() - write user bar register
+ *
+ * @param[in]	xpdev:		pointer to xlnx_pci_dev
+ * @param[in]	reg_addr:	register address
+ * @param[in]	val:		register value to be written
+ *
+ *****************************************************************************/
+void qdma_device_write_user_register(struct xlnx_pci_dev *xpdev,
+				unsigned int reg_addr, unsigned int val)
+{
+	if (!xpdev)
+		return;
+
+	writel(val, xpdev->user_bar_regs + reg_addr);
+}
+
+/*****************************************************************************/
+/**
+ * qdma_device_read_bypass_register() - read bypass bar register
+ *
+ * @param[in]	xpdev:		pointer to xlnx_pci_dev
+ * @param[in]	reg_addr:	register address
+ *
+ * @return	value of the bypass bar register
+ *****************************************************************************/
+unsigned int qdma_device_read_bypass_register(struct xlnx_pci_dev *xpdev,
+					unsigned int reg_addr)
+{
+	if (!xpdev)
+		return -EINVAL;
+
+	if (!xpdev->bypass_bar_regs) {
+		pr_err("bypass bar is not present\n");
+		return -EINVAL;
+	}
+
+	return readl(xpdev->bypass_bar_regs + reg_addr);
+}
+
+/*****************************************************************************/
+/**
+ * qdma_device_write_bypass_register() - write bypass bar register
+ *
+ * @param[in]	xpdev:		pointer to xlnx_pci_dev
+ * @param[in]	reg_addr:	register address
+ * @param[in]	val:		register value to be written
+ *
+ *****************************************************************************/
+void qdma_device_write_bypass_register(struct xlnx_pci_dev *xpdev,
+				unsigned int reg_addr, unsigned int val)
+{
+	if (!xpdev)
+		return;
+
+	if (!xpdev->bypass_bar_regs) {
+		pr_err("bypass bar is not present\n");
+		return;
+	}
+
+	writel(val, xpdev->bypass_bar_regs + reg_addr);
+}
+
+static int probe_one(struct pci_dev *pdev, const struct pci_device_id *id)
+{
+	struct qdma_dev_conf conf;
+	struct xlnx_pci_dev *xpdev = NULL;
+	unsigned long dev_hndl;
+	int rv;
+
+	pr_info("%s: func 0x%x/0x%x, p/v %d/%d,0x%p.\n",
+		dev_name(&pdev->dev), PCI_FUNC(pdev->devfn), QDMA_PF_MAX,
+		pdev->is_physfn, pdev->is_virtfn, pdev->physfn);
+
+	memset(&conf, 0, sizeof(conf));
+	conf.qdma_drv_mode = mode;
+	conf.vf_max = 0;	/* enable via sysfs */
+
+#ifdef __QDMA_VF__
+	conf.qsets_max = TOTAL_QDMA_QS;
+#else
+	conf.master_pf = is_master_pf(pdev);
+	if (conf.master_pf)
+		pr_info("Configuring '%02x:%02x:%x' as master pf\n",
+				pdev->bus->number,
+				PCI_SLOT(pdev->devfn),
+				PCI_FUNC(pdev->devfn));
+#endif /* #ifdef __QDMA_VF__ */
+	pr_info("Driver is loaded in %s mode\n",
+				mode_name_list[conf.qdma_drv_mode].name);
+	conf.intr_rngsz = QDMA_INTR_COAL_RING_SIZE;
+	conf.tm_mode_en = tm_mode_en;
+	conf.tm_one_cdh_en = tm_one_cdh_en;
+	conf.pdev = pdev;
+
+	/* initialize all the bar numbers with -1 */
+	conf.bar_num_config = -1;
+	conf.bar_num_user = -1;
+	conf.bar_num_bypass = -1;
+
+	conf.bar_num_config = identify_config_bar(pdev);
+
+	rv = qdma_device_open(DRV_MODULE_NAME, &conf, &dev_hndl);
+	if (rv < 0)
+		return rv;
+
+#ifndef __QDMA_VF__
+	conf.qsets_max = TOTAL_PF_QS;
+#endif
+
+	xpdev = xpdev_alloc(pdev, conf.qsets_max);
+	if (!xpdev) {
+		rv = -EINVAL;
+		goto close_device;
+	}
+
+	xpdev->dev_hndl = dev_hndl;
+	xpdev->idx = conf.bdf;
+
+	rv = xpdev_map_user_bypass_bars(xpdev);
+	if (rv < 0)
+		goto close_device;
+
+	xpdev->cdev_cb.xpdev = xpdev;
+	rv = qdma_cdev_device_init(&xpdev->cdev_cb);
+	if (rv < 0)
+		goto close_device;
+
+	/* Create the files for attributes in sysfs */
+	if (conf.master_pf) {
+		rv = sysfs_create_group(&pdev->dev.kobj, &pci_master_device_attr_group);
+		if (rv < 0)
+			goto close_device;
+	} else {
+		rv = sysfs_create_group(&pdev->dev.kobj, &pci_device_attr_group);
+		if (rv < 0)
+			goto close_device;
+	}
+
+	dev_set_drvdata(&pdev->dev, xpdev);
+
+	return 0;
+
+close_device:
+	qdma_device_close(pdev, dev_hndl);
+
+	if (xpdev)
+		xpdev_free(xpdev);
+
+	return rv;
+}
+
+static void xpdev_device_cleanup(struct xlnx_pci_dev *xpdev)
+{
+	struct xlnx_qdata *qdata = xpdev->qdata;
+	struct xlnx_qdata *qmax = qdata + (xpdev->qmax * 2); /* h2c and c2h */
+
+	spin_lock(&xpdev->cdev_lock);
+	for (; qdata != qmax; qdata++) {
+		if (qdata->xcdev) {
+			/* if either h2c(1) or c2h(2) bit set, but not both */
+			if (qdata->xcdev->dir_init == 1 ||
+				qdata->xcdev->dir_init == 2) {
+				qdma_cdev_destroy(qdata->xcdev);
+			} else { /* both bits are set so remove one */
+				qdata->xcdev->dir_init >>= 1;
+			}
+		}
+		memset(qdata, 0, sizeof(*qdata));
+	}
+	spin_unlock(&xpdev->cdev_lock);
+}
+
+static void remove_one(struct pci_dev *pdev)
+{
+	struct xlnx_dma_dev *xdev = NULL;
+	struct xlnx_pci_dev *xpdev = dev_get_drvdata(&pdev->dev);
+	if (!xpdev) {
+		pr_info("%s NOT attached.\n", dev_name(&pdev->dev));
+		return;
+	}
+
+	xdev = (struct xlnx_dma_dev *)(xpdev->dev_hndl);
+
+	pr_info("%s pdev 0x%p, xdev 0x%p, hndl 0x%lx, qdma%05x.\n",
+		dev_name(&pdev->dev), pdev, xpdev, xpdev->dev_hndl, xpdev->idx);
+
+	if (xdev->conf.master_pf)
+		sysfs_remove_group(&pdev->dev.kobj, &pci_master_device_attr_group);
+	else
+		sysfs_remove_group(&pdev->dev.kobj, &pci_device_attr_group);
+
+	qdma_cdev_device_cleanup(&xpdev->cdev_cb);
+
+	xpdev_device_cleanup(xpdev);
+
+	xpdev_unmap_user_bypass_bars(xpdev);
+
+	qdma_device_close(pdev, xpdev->dev_hndl);
+
+	xpdev_free(xpdev);
+
+	dev_set_drvdata(&pdev->dev, NULL);
+}
+
+#if defined(CONFIG_PCI_IOV) && !defined(__QDMA_VF__)
+static int sriov_config(struct pci_dev *pdev, int num_vfs)
+{
+	struct xlnx_pci_dev *xpdev = dev_get_drvdata(&pdev->dev);
+
+	if (!xpdev) {
+		pr_info("%s NOT attached.\n", dev_name(&pdev->dev));
+		return -EINVAL;
+	}
+
+	pr_debug("%s pdev 0x%p, xdev 0x%p, hndl 0x%lx, qdma%05x.\n",
+		dev_name(&pdev->dev), pdev, xpdev, xpdev->dev_hndl, xpdev->idx);
+
+	if (num_vfs > QDMA_VF_MAX) {
+		pr_info("%s, clamp down # of VFs %d -> %d.\n",
+			dev_name(&pdev->dev), num_vfs, QDMA_VF_MAX);
+		num_vfs = QDMA_VF_MAX;
+	}
+
+	return qdma_device_sriov_config(pdev, xpdev->dev_hndl, num_vfs);
+}
+#endif
+
+static pci_ers_result_t qdma_error_detected(struct pci_dev *pdev,
+					pci_channel_state_t state)
+{
+	struct xlnx_pci_dev *xpdev = dev_get_drvdata(&pdev->dev);
+
+	switch (state) {
+	case pci_channel_io_normal:
+		return PCI_ERS_RESULT_CAN_RECOVER;
+	case pci_channel_io_frozen:
+		pr_warn("dev 0x%p,0x%p, frozen state error, reset controller\n",
+			pdev, xpdev);
+		pci_disable_device(pdev);
+		return PCI_ERS_RESULT_NEED_RESET;
+	case pci_channel_io_perm_failure:
+		pr_warn("dev 0x%p,0x%p, failure state error, req. disconnect\n",
+			pdev, xpdev);
+		return PCI_ERS_RESULT_DISCONNECT;
+	}
+	return PCI_ERS_RESULT_NEED_RESET;
+}
+
+static pci_ers_result_t qdma_slot_reset(struct pci_dev *pdev)
+{
+	struct xlnx_pci_dev *xpdev = dev_get_drvdata(&pdev->dev);
+
+	if (!xpdev) {
+		pr_info("%s NOT attached.\n", dev_name(&pdev->dev));
+		return PCI_ERS_RESULT_DISCONNECT;
+	}
+
+	pr_info("0x%p restart after slot reset\n", xpdev);
+	if (pci_enable_device_mem(pdev)) {
+		pr_info("0x%p failed to renable after slot reset\n", xpdev);
+		return PCI_ERS_RESULT_DISCONNECT;
+	}
+
+	pci_set_master(pdev);
+	pci_restore_state(pdev);
+	pci_save_state(pdev);
+
+	return PCI_ERS_RESULT_RECOVERED;
+}
+
+static void qdma_error_resume(struct pci_dev *pdev)
+{
+	struct xlnx_pci_dev *xpdev = dev_get_drvdata(&pdev->dev);
+
+	if (!xpdev) {
+		pr_info("%s NOT attached.\n", dev_name(&pdev->dev));
+		return;
+	}
+
+	pr_info("dev 0x%p,0x%p.\n", pdev, xpdev);
+	pci_cleanup_aer_uncorrect_error_status(pdev);
+}
+
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 13, 0)
+static void qdma_reset_prepare(struct pci_dev *pdev)
+{
+	struct qdma_version_info version_info;
+	struct xlnx_pci_dev *xpdev = dev_get_drvdata(&pdev->dev);
+
+	pr_info("%s pdev 0x%p, xdev 0x%p, hndl 0x%lx, qdma%05x.\n",
+		dev_name(&pdev->dev), pdev, xpdev, xpdev->dev_hndl, xpdev->idx);
+
+	qdma_device_version_info(xpdev->dev_hndl, &version_info);
+
+	qdma_device_offline(pdev, xpdev->dev_hndl);
+
+	/* FLR setting is not required for 2018.3 IP */
+	if (version_info.vivado_release_id != VIVADO_RELEASE_2018_3)
+		qdma_device_flr_quirk_set(pdev, xpdev->dev_hndl);
+	xpdev_queue_delete_all(xpdev);
+	if (version_info.vivado_release_id != VIVADO_RELEASE_2018_3)
+	qdma_device_flr_quirk_check(pdev, xpdev->dev_hndl);
+}
+
+static void qdma_reset_done(struct pci_dev *pdev)
+{
+	struct xlnx_pci_dev *xpdev = dev_get_drvdata(&pdev->dev);
+
+	pr_info("%s pdev 0x%p, xdev 0x%p, hndl 0x%lx, qdma%05x.\n",
+		dev_name(&pdev->dev), pdev, xpdev, xpdev->dev_hndl, xpdev->idx);
+	qdma_device_online(pdev, xpdev->dev_hndl);
+}
+
+#elif LINUX_VERSION_CODE >= KERNEL_VERSION(3, 16, 0)
+static void qdma_reset_notify(struct pci_dev *pdev, bool prepare)
+{
+	struct qdma_version_info version_info;
+	struct xlnx_pci_dev *xpdev = dev_get_drvdata(&pdev->dev);
+
+	pr_info("%s prepare %d, pdev 0x%p, xdev 0x%p, hndl 0x%lx, qdma%05x.\n",
+		dev_name(&pdev->dev), prepare, pdev, xpdev, xpdev->dev_hndl,
+		xpdev->idx);
+
+	qdma_device_version_info(xpdev->dev_hndl, &version_info);
+
+	if (prepare) {
+		qdma_device_offline(pdev, xpdev->dev_hndl);
+		/* FLR setting is not required for 2018.3 IP */
+		if (version_info.vivado_release_id != VIVADO_RELEASE_2018_3)
+			qdma_device_flr_quirk_set(pdev, xpdev->dev_hndl);
+		xpdev_queue_delete_all(xpdev);
+		if (version_info.vivado_release_id != VIVADO_RELEASE_2018_3)
+			qdma_device_flr_quirk_check(pdev, xpdev->dev_hndl);
+	} else
+		qdma_device_online(pdev, xpdev->dev_hndl);
+}
+#endif
+static const struct pci_error_handlers qdma_err_handler = {
+	.error_detected	= qdma_error_detected,
+	.slot_reset	= qdma_slot_reset,
+	.resume		= qdma_error_resume,
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 13, 0)
+	.reset_prepare  = qdma_reset_prepare,
+	.reset_done     = qdma_reset_done,
+#elif LINUX_VERSION_CODE >= KERNEL_VERSION(3, 16, 0)
+	.reset_notify   = qdma_reset_notify,
+#endif
+};
+
+static struct pci_driver pci_driver = {
+	.name = DRV_MODULE_NAME,
+	.id_table = pci_ids,
+	.probe = probe_one,
+	.remove = remove_one,
+/*	.shutdown = shutdown_one, */
+#if defined(CONFIG_PCI_IOV) && !defined(__QDMA_VF__)
+	.sriov_configure = sriov_config,
+#endif
+	.err_handler = &qdma_err_handler,
+};
+
+int xlnx_nl_init(void);
+void xlnx_nl_exit(void);
+
+static int __init qdma_mod_init(void)
+{
+	int rv;
+
+	pr_info("%s", version);
+#ifdef __QDMA_VF__
+	if (mode == LEGACY_INTR_MODE) {
+		pr_err("Legacy interrupt not supported\n");
+		return -EINVAL;
+	}
+#endif
+	rv = libqdma_init(mode, num_threads);
+	if (rv < 0)
+		return rv;
+
+	rv = xdev_qconf_init();
+	if (rv < 0)
+		return rv;
+
+	rv = xlnx_nl_init();
+	if (rv < 0)
+		return rv;
+
+	rv = qdma_cdev_init();
+	if (rv < 0)
+		return rv;
+
+	return pci_register_driver(&pci_driver);
+}
+
+static void __exit qdma_mod_exit(void)
+{
+	/* unregister this driver from the PCI bus driver */
+	pci_unregister_driver(&pci_driver);
+
+	xlnx_nl_exit();
+
+	qdma_cdev_cleanup();
+
+	xdev_qconf_cleanup();
+
+	libqdma_exit();
+}
+
+module_init(qdma_mod_init);
+module_exit(qdma_mod_exit);
diff --git a/QDMA/linux-kernel/drv/qdma_mod.h b/QDMA/linux-kernel/drv/qdma_mod.h
new file mode 100644
index 0000000..11a4623
--- /dev/null
+++ b/QDMA/linux-kernel/drv/qdma_mod.h
@@ -0,0 +1,215 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#ifndef __QDMA_MODULE_H__
+#define __QDMA_MODULE_H__
+/**
+ * @file
+ * @brief This file contains the declarations for qdma pcie kernel module
+ *
+ */
+#include <linux/types.h>
+#include <linux/pci.h>
+#include <linux/workqueue.h> 
+#include <net/genetlink.h>
+
+#include "libqdma/libqdma_export.h"
+#include "libqdma/xdev.h"
+#include "cdev.h"
+
+/**
+ * @struct - xlnx_qdata
+ * @brief	queue data variables send while read/write request
+ */
+struct xlnx_qdata {
+	unsigned long qhndl;		/**< Queue handle */
+	struct qdma_cdev *xcdev;	/**< qdma character device details */
+};
+
+#define XNL_EBUFLEN     256
+struct xlnx_nl_work_q_ctrl {
+	unsigned short qidx;
+	unsigned short qcnt;
+	u8 is_qp:1;
+	u8 is_c2h:1;
+};
+
+struct xlnx_nl_work {
+	struct work_struct work;
+	struct genl_info nl_info;
+	struct xlnx_pci_dev *xpdev;
+	wait_queue_head_t wq;
+	spinlock_t lock;
+	unsigned int q_start_handled;
+	union {
+		struct xlnx_nl_work_q_ctrl qctrl;
+	};
+};
+
+/**
+ * @struct - xlnx_pci_dev
+ * @brief	xilinx pcie device data members
+ */
+struct xlnx_pci_dev {
+	struct list_head list_head;	/**< device list */
+	struct pci_dev *pdev;		/**< pointer to struct pci_dev */
+	unsigned long dev_hndl;		/**< device handle*/
+	struct workqueue_struct *nl_task_wq; /**< netlink request work queue */
+	struct qdma_cdev_cb cdev_cb;	/**< character device call back data*/
+	spinlock_t cdev_lock;		/**< character device lock*/
+	unsigned int qmax;		/**< max number of queues for device*/
+	unsigned int idx;		/**< device index*/
+	void __iomem *user_bar_regs; 	/**< PCIe user bar */
+	void __iomem *bypass_bar_regs;  /**< PCIe bypass bar */
+	struct xlnx_qdata qdata[0];	/**< queue data*/
+};
+
+/*****************************************************************************/
+/**
+ * xpdev_list_dump() - list the qdma devices
+ *
+ * @param[in]	buflen:		buffer length
+ * @param[out]	buf:
+ *			error message buffer, can be NULL/0 (i.e., optional)
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int xpdev_list_dump(char *buf, int buflen);
+
+/*****************************************************************************/
+/**
+ * xpdev_find_by_idx() - qdma pcie kernel module api to
+ *						find the qdma device by index
+ *
+ * @param[in]	idx:		qdma device index
+ * @param[in]	ebuflen:	buffer length
+ * @param[out]	ebuf:
+ *			error message buffer, can be NULL/0 (i.e., optional)
+ *
+ * @return	0: pointer to xlnx_pci_dev
+ * @return	NULL: failure
+ *****************************************************************************/
+struct xlnx_pci_dev *xpdev_find_by_idx(unsigned int idx, char *ebuf,
+			int ebuflen);
+
+/*****************************************************************************/
+/**
+ * xpdev_queue_get() - qdma pcie kernel module api to get a queue information
+ *
+ * @param[in]	xpdev:		pointer to xlnx_pci_dev
+ * @param[in]	qidx:		queue index
+ * @param[in]	c2h:		flag to indicate the queue direction (c2h/h2c)
+ * @param[in]	check_qhndl:	flag for validating the data
+ * @param[in]	ebuflen:	buffer length
+ * @param[out]	ebuf:
+ *			error message buffer, can be NULL/0 (i.e., optional)
+ *
+ * @return	0: queue information
+ * @return	NULL: failure
+ *****************************************************************************/
+struct xlnx_qdata *xpdev_queue_get(struct xlnx_pci_dev *xpdev,
+			unsigned int qidx, bool c2h, bool check_qhndl,
+			char *ebuf, int ebuflen);
+
+/*****************************************************************************/
+/**
+ * xpdev_queue_add() - qdma pcie kernel module api to add a queue
+ *
+ * @param[in]	xpdev:		pointer to xlnx_pci_dev
+ * @param[in]	qconf:		queue configuration
+ * @param[in]	ebuflen:	buffer length
+ * @param[out]	ebuf:
+ *			error message buffer, can be NULL/0 (i.e., optional)
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int xpdev_queue_add(struct xlnx_pci_dev *xpdev, struct qdma_queue_conf *qconf,
+			char *ebuf, int ebuflen);
+
+/*****************************************************************************/
+/**
+ * xpdev_queue_delete() - qdma pcie kernel module api to delete a queue
+ *
+ * @param[in]	xpdev:		pointer to xlnx_pci_dev
+ * @param[in]	qidx:		queue index
+ * @param[in]	c2h:		flag to indicate the queue direction (c2h/h2c)
+ * @param[in]	ebuflen:	buffer length
+ * @param[out]	ebuf:
+ *			error message buffer, can be NULL/0 (i.e., optional)
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int xpdev_queue_delete(struct xlnx_pci_dev *xpdev, unsigned int qidx, bool c2h,
+			char *ebuf, int ebuflen);
+
+int xpdev_nl_queue_start(struct xlnx_pci_dev *xpdev, void *nl_info, u8 is_qp,
+			u8 is_c2h, unsigned short qidx, unsigned short qcnt);
+
+/*****************************************************************************/
+/**
+ * qdma_device_read_user_register() - read user bar register
+ *
+ * @param[in]	xpdev:		pointer to xlnx_pci_dev
+ * @param[in]	reg_addr:	register address
+ *
+ * @return	value of the user bar register
+ *****************************************************************************/
+unsigned int qdma_device_read_user_register(struct xlnx_pci_dev *xpdev,
+					unsigned int reg_addr);
+
+/*****************************************************************************/
+/**
+ * qdma_device_write_user_register() - write user bar register
+ *
+ * @param[in]	xpdev:		pointer to xlnx_pci_dev
+ * @param[in]	reg_addr:	register address
+ * @param[in]	value:		register value to be written
+ *
+ *****************************************************************************/
+void qdma_device_write_user_register(struct xlnx_pci_dev *xpdev,
+					unsigned int reg_addr, u32 value);
+
+/*****************************************************************************/
+/**
+ * qdma_device_read_bypass_register() - read bypass bar register
+ *
+ * @param[in]	xpdev:		pointer to xlnx_pci_dev
+ * @param[in]	reg_addr:	register address
+ *
+ * @return	value of the bypass bar register
+ *****************************************************************************/
+unsigned int qdma_device_read_bypass_register(struct xlnx_pci_dev *xpdev,
+					unsigned int reg_addr);
+
+/*****************************************************************************/
+/**
+ * qdma_device_write_bypass_register() - write bypass bar register
+ *
+ * @param[in]	xpdev:		pointer to xlnx_pci_dev
+ * @param[in]	reg_addr:	register address
+ * @param[in]	value:		register value to be written
+ *
+ *****************************************************************************/
+void qdma_device_write_bypass_register(struct xlnx_pci_dev *xpdev,
+					unsigned int reg_addr, u32 value);
+
+#endif /* ifndef __QDMA_MODULE_H__ */
diff --git a/QDMA/linux-kernel/drv/version.h b/QDMA/linux-kernel/drv/version.h
new file mode 100644
index 0000000..15dad71
--- /dev/null
+++ b/QDMA/linux-kernel/drv/version.h
@@ -0,0 +1,40 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is licensed under both the BSD-style license (found in the
+ * LICENSE file in the root directory of this source tree) and the GPLv2 (found
+ * in the COPYING file in the root directory of this source tree).
+ * You may select, at your option, one of the above-listed licenses.
+ */
+
+#ifndef __QDMA_VERSION_H__
+#define __QDMA_VERSION_H__
+
+#include "libqdma/version.h"
+
+#ifdef __QDMA_VF__
+#define DRV_MODULE_NAME		"qdma_vf"
+#define DRV_MODULE_DESC		"Xilinx QDMA VF Reference Driver"
+#else
+#define DRV_MODULE_NAME		"qdma_pf"
+#define DRV_MODULE_DESC		"Xilinx QDMA PF Reference Driver"
+#endif /* #ifdef __QDMA_VF__ */
+#define DRV_MODULE_RELDATE	"Sep. 2018"
+
+#define DRV_MOD_MAJOR		2018
+#define DRV_MOD_MINOR		3
+#define DRV_MOD_PATCHLEVEL	97
+
+#define DRV_MODULE_VERSION      \
+	__stringify(DRV_MOD_MAJOR) "." \
+	__stringify(DRV_MOD_MINOR) "." \
+	__stringify(DRV_MOD_PATCHLEVEL) "." \
+	__stringify(LIBQDMA_VERSION_PATCH) "." \
+
+#define DRV_MOD_VERSION_NUMBER  \
+	((DRV_MOD_MAJOR)*1000 + (DRV_MOD_MINOR)*100 + DRV_MOD_PATCHLEVEL)
+
+#endif /* ifndef __QDMA_VERSION_H__ */
diff --git a/QDMA/linux-kernel/etc/30-qdma.rules b/QDMA/linux-kernel/etc/30-qdma.rules
new file mode 100644
index 0000000..f1cb736
--- /dev/null
+++ b/QDMA/linux-kernel/etc/30-qdma.rules
@@ -0,0 +1,3 @@
+KERNEL=="qdma[0-4]-MM-[0-9]*", MODE="0666"
+KERNEL=="qdma[0-4]-ST-[0-9]*", MODE="0666"
+
diff --git a/QDMA/linux-kernel/include/qdma_nl.h b/QDMA/linux-kernel/include/qdma_nl.h
new file mode 100644
index 0000000..748d7be
--- /dev/null
+++ b/QDMA/linux-kernel/include/qdma_nl.h
@@ -0,0 +1,406 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#ifndef QDMA_NL_H__
+#define QDMA_NL_H__
+/**
+ * @file
+ * @brief This file contains the declarations for qdma netlink interfaces
+ *
+ */
+/** physical function name (no more than 15 characters) */
+#define XNL_NAME_PF		"xnl_pf"
+/** virtual function name */
+#define XNL_NAME_VF		"xnl_vf"
+/** qdma netlink interface version number */
+#define XNL_VERSION		0x1
+
+/** qdma nl interface minimum response buffer length*/
+#define XNL_RESP_BUFLEN_MIN	 256
+/** qdma nl interface maximum response buffer length*/
+#define XNL_RESP_BUFLEN_MAX	 (2048 * 6)
+/** qdma nl interface error buffer length*/
+#define XNL_ERR_BUFLEN		 64
+/** qdma nl command parameter length*/
+#define XNL_STR_LEN_MAX		 20
+
+/** Q parameter: value to indicate invalid qid*/
+#define XNL_QIDX_INVALID	0xFFFF
+/** Q parameter: streaming mode*/
+#define XNL_F_QMODE_ST	        0x00000001
+/** Q parameter: memory management mode*/
+#define XNL_F_QMODE_MM	        0x00000002
+/** Q parameter: queue in h2c direction*/
+#define XNL_F_QDIR_H2C	        0x00000004
+/** Q parameter: queue in c2h direction*/
+#define XNL_F_QDIR_C2H	        0x00000008
+/** Q parameter: queue in both directions*/
+#define XNL_F_QDIR_BOTH         (XNL_F_QDIR_H2C | XNL_F_QDIR_C2H)
+/** Q parameter: queue in prefetch mode*/
+#define XNL_F_PFETCH_EN         0x00000010
+/** Q parameter: enable the bypass for the queue*/
+#define XNL_F_DESC_BYPASS_EN	0x00000020
+/** Q parameter: fetch credits*/
+#define XNL_F_FETCH_CREDIT      0x00000040
+/** Q parameter: enable writeback accumulation*/
+#define XNL_F_CMPL_STATUS_ACC_EN        0x00000080
+/** Q parameter: enable writeback*/
+#define XNL_F_CMPL_STATUS_EN            0x00000100
+/** Q parameter: enable writeback pending check*/
+#define XNL_F_CMPL_STATUS_PEND_CHK      0x00000200
+/** Q parameter: enable writeback status descriptor*/
+#define XNL_F_CMPL_STATUS_DESC_EN  0x00000400
+/** Q parameter: enable queue completion interrupt*/
+#define XNL_F_C2H_CMPL_INTR_EN  0x00000800
+/** Q parameter: enable user defined data*/
+#define XNL_F_CMPL_UDD_EN       0x00001000
+/** Q parameter: enable the pfetch bypass for the queue */
+#define XNL_F_PFETCH_BYPASS_EN  0x00002000
+/** Q parameter: disable CMPT overflow check */
+#define XNL_F_CMPT_OVF_CHK_DIS	0x00004000
+
+/** maximum number of queue flags to control queue configuration*/
+#define MAX_QFLAGS 15
+
+/** maximum number of interrupt ring entries*/
+#define QDMA_MAX_INT_RING_ENTRIES 512
+
+/**
+ * xnl_attr_t netlink attributes for qdma(variables):
+ * the index in this enum is used as a reference for the type,
+ * userspace application has to indicate the corresponding type
+ * the policy is used for security considerations
+ */
+enum xnl_attr_t {
+	XNL_ATTR_GENMSG,		/**< generatl message */
+	XNL_ATTR_DRV_INFO,		/**< device info */
+
+	XNL_ATTR_DEV_IDX,		/**< device index */
+	XNL_ATTR_PCI_BUS,		/**< pci bus number */
+	XNL_ATTR_PCI_DEV,		/**< pci device number */
+	XNL_ATTR_PCI_FUNC,		/**< pci function id */
+
+	XNL_ATTR_DEV_STAT_MMH2C_PKTS1, /**< number of MM H2C packkts */
+	XNL_ATTR_DEV_STAT_MMH2C_PKTS2, /**< number of MM H2C packkts */
+	XNL_ATTR_DEV_STAT_MMC2H_PKTS1, /**< number of MM C2H packkts */
+	XNL_ATTR_DEV_STAT_MMC2H_PKTS2, /**< number of MM C2H packkts */
+	XNL_ATTR_DEV_STAT_STH2C_PKTS1, /**< number of ST H2C packkts */
+	XNL_ATTR_DEV_STAT_STH2C_PKTS2, /**< number of ST H2C packkts */
+	XNL_ATTR_DEV_STAT_STC2H_PKTS1, /**< number of ST C2H packkts */
+	XNL_ATTR_DEV_STAT_STC2H_PKTS2, /**< number of ST C2H packkts */
+
+	XNL_ATTR_DEV_CFG_BAR,	/**< device config bar number */
+	XNL_ATTR_DEV_USR_BAR,	/**< device user bar number */
+	XNL_ATTR_DEV_QSET_MAX,	/**< max queue sets */
+	XNL_ATTR_DEV_QSET_QBASE,	/**< queue base start */
+
+	XNL_ATTR_REG_BAR_NUM,	/**< register bar number */
+	XNL_ATTR_REG_ADDR,		/**< register address */
+	XNL_ATTR_REG_VAL,		/**< register value */
+
+	XNL_ATTR_QIDX,			/**< queue index */
+	XNL_ATTR_NUM_Q,			/**< number of queues */
+	XNL_ATTR_QFLAG,			/**< queue config flags */
+
+	XNL_ATTR_CMPT_DESC_SIZE,	/**< completion descriptor size */
+	XNL_ATTR_SW_DESC_SIZE,	/**< software descriptor size */
+	XNL_ATTR_QRNGSZ_IDX,	/**< queue ring index */
+	XNL_ATTR_C2H_BUFSZ_IDX,	/**< c2h buffer idex */
+	XNL_ATTR_CMPT_TIMER_IDX,	/**< completion timer index */
+	XNL_ATTR_CMPT_CNTR_IDX,	/**< completion counter index */
+	XNL_ATTR_CMPT_TRIG_MODE,	/**< completion trigger mode */
+
+	XNL_ATTR_RANGE_START,	/**< range start */
+	XNL_ATTR_RANGE_END,		/**< range end */
+
+	XNL_ATTR_INTR_VECTOR_IDX,	/**< interrupt vector index */
+	XNL_ATTR_INTR_VECTOR_START_IDX, /**< interrupt vector start index */
+	XNL_ATTR_INTR_VECTOR_END_IDX,	/**< interrupt vector end index */
+	XNL_ATTR_RSP_BUF_LEN,			/**< response buffer length */
+	XNL_ATTR_GLOBAL_CSR,        /**< global csr data */
+	XNL_ATTR_PIPE_GL_MAX,		/**< max no. of gl for pipe */
+	XNL_ATTR_PIPE_FLOW_ID,          /**< pipe flow id */
+	XNL_ATTR_PIPE_SLR_ID,           /**< pipe slr id */
+	XNL_ATTR_PIPE_TDEST,            /**< pipe tdest */
+	XNL_ATTR_DEV_STM_BAR,	/**< device STM bar number */
+#ifdef ERR_DEBUG
+	XNL_ATTR_QPARAM_ERR_INFO,		/**< queue param info */
+#endif
+	XNL_ATTR_MAX,
+};
+
+/**
+ * xnl_st_c2h_cmpt_desc_size
+ * c2h writeback descriptor sizes
+ */
+enum xnl_st_c2h_cmpt_desc_size {
+	XNL_ST_C2H_CMPT_DESC_SIZE_8B,	/**< 8B descriptor */
+	XNL_ST_C2H_CMPT_DESC_SIZE_16B,	/**< 16B descriptor */
+	XNL_ST_C2H_CMPT_DESC_SIZE_32B,	/**< 32B descriptor */
+	XNL_ST_C2H_CMPT_DESC_SIZE_64B,	/**< 64B descriptor */
+	XNL_ST_C2H_NUM_CMPT_DESC_SIZES	/**< Num of desc sizes */
+};
+
+enum xnl_qdma_rngsz_idx {
+	XNL_QDMA_RNGSZ_64_IDX,
+	XNL_QDMA_RNGSZ_128_IDX,
+	XNL_QDMA_RNGSZ_256_IDX,
+	XNL_QDMA_RNGSZ_512_IDX,
+	XNL_QDMA_RNGSZ_1024_IDX,
+	XNL_QDMA_RNGSZ_2048_IDX,
+	XNL_QDMA_RNGSZ_4096_IDX,
+	XNL_QDMA_RNGSZ_8192_IDX,
+	XNL_QDMA_RNGSZ_16384_IDX,
+	XNL_QDMA_RNGSZ_32768_IDX,
+	XNL_QDMA_RNGSZ_65536_IDX,
+	XNL_QDMA_RNGSZ_131072_IDX,
+	XNL_QDMA_RNGSZ_262177_IDX,
+	XNL_QDMA_RNGSZ_524288_IDX,
+	XNL_QDMA_RNGSZ_1048576_IDX,
+	XNL_QDMA_RNGSZ_2097152_IDX,
+	XNL_QDMA_RNGSZ_IDXS
+};
+
+/** XNL attributes list */
+static const char *xnl_attr_str[XNL_ATTR_MAX] = {
+	"GENMSG",		/**< XNL_ATTR_GENMSG */
+	"DRV_INFO",		/**< XNL_ATTR_DRV_INFO */
+
+	"DEV_IDX",		/**< XNL_ATTR_DEV_IDX */
+
+	"DEV_PCIBUS",	/**< XNL_ATTR_PCI_BUS */
+	"DEV_PCIDEV",	/**< XNL_ATTR_PCI_DEV */
+	"DEV_PCIFUNC",	/**< XNL_ATTR_PCI_FUNC */
+
+	"DEV_CFG_BAR",	/**< XNL_ATTR_DEV_CFG_BAR */
+	"DEV_USR_BAR",	/**< XNL_ATTR_DEV_USER_BAR */
+	"DEV_QSETMAX",	/**< XNL_ATTR_DEV_QSET_MAX */
+	"DEV_QBASE",	/**< XNL_ATTR_DEV_QSET_QBASE */
+
+	"REG_BAR",		/**< XNL_ATTR_REG_BAR_NUM */
+	"REG_ADDR",		/**< XNL_ATTR_REG_ADDR */
+	"REG_VAL",		/**< XNL_ATTR_REG_VAL */
+
+	"QIDX",			/**< XNL_ATTR_QIDX */
+	"NUM_Q",		/**< XNL_ATTR_NUM_Q */
+	"QFLAG",		/**< XNL_ATTR_QFLAG */
+
+	"CMPT_DESC_SZ",	/**< XNL_ATTR_CMPT_DESC_SIZE */
+	"SW_DESC_SIZE", /**< XNL_ATTR_SW_DESC_SIZE */
+	"QRINGSZ_IDX",	/**< XNL_ATTR_QRNGSZ */
+	"C2H_BUFSZ_IDX",	/**< XNL_ATTR_QBUFSZ */
+	"CMPT_TIMER_IDX",	/**< XNL_ATTR_CMPT_TIMER_IDX */
+	"CMPT_CNTR_IDX",		/**< XNL_ATTR_CMPT_CNTR_IDX */
+	"CMPT_TRIG_MODE",	/**< XNL_ATTR_CMPT_TRIG_MODE */
+
+	"RANGE_START",		/**< XNL_ATTR_RANGE_START */
+	"RANGE_END",		/**< XNL_ATTR_RANGE_END */
+	"INTR_VECTOR_IDX", /**< XNL_ATTR_INTR_VECTOR_IDX */
+	"INTR_VECTOR_START_IDX", /**< XNL_ATTR_INTR_VECTOR_START_IDX */
+	"INTR_VECTOR_END_IDX", /**< XNL_ATTR_INTR_VECTOR_END_IDX */
+	"RSP_BUF_LEN",			/**< XNL_ATTR_RSP_BUF_LEN */
+	"GLOBAL_CSR",	/**< global csr data */
+#ifdef ERR_DEBUG
+	"QPARAM_ERR_INFO",
+#endif
+
+};
+
+/* commands, 0 ~ 0x7F */
+/**
+ * xnl_op_t - XNL command types
+ */
+enum xnl_op_t {
+	XNL_CMD_DEV_LIST,	/**< list all the qdma devices */
+	XNL_CMD_DEV_INFO,	/**< dump the device information */
+	XNL_CMD_DEV_STAT,   /**< dump the device statistics */
+	XNL_CMD_DEV_STAT_CLEAR,   /**< reset the device statistics */
+
+	XNL_CMD_REG_DUMP,	/**< dump the register information */
+	XNL_CMD_REG_RD,		/**< read a register value */
+	XNL_CMD_REG_WRT,	/**< write value to a register */
+
+	XNL_CMD_Q_LIST,		/**< list all the queue present in the system */
+	XNL_CMD_Q_ADD,		/**< add a queue */
+	XNL_CMD_Q_START,	/**< start a queue */
+	XNL_CMD_Q_STOP,		/**< stop a queue */
+	XNL_CMD_Q_DEL,		/**< delete a queue */
+	XNL_CMD_Q_DUMP,		/**< dump queue information*/
+	XNL_CMD_Q_DESC,		/**< dump descriptor information*/
+	XNL_CMD_Q_CMPT,		/**< dump writeback descriptor information*/
+	XNL_CMD_Q_RX_PKT,	/**< dump packet information*/
+#ifdef ERR_DEBUG
+	XNL_CMD_Q_ERR_INDUCE, /**< induce an error*/
+#endif
+
+	XNL_CMD_INTR_RING_DUMP,	/**< dump interrupt ring information*/
+	XNL_CMD_Q_UDD,		/**< dump the user defined data */
+	XNL_CMD_GLOBAL_CSR,	/**< get all global csr register values */
+	XNL_CMD_VERSION,	/**< list RTL version and Vivado release ID */
+	XNL_CMD_MAX,			/**< max number of XNL commands*/
+};
+
+/**
+ * XNL command operation type
+ */
+static const char *xnl_op_str[XNL_CMD_MAX] = {
+	"DEV_LIST",	/** XNL_CMD_DEV_LIST */
+	"DEV_INFO",	/** XNL_CMD_DEV_INFO */
+	"DEV_STAT", /** XNL_CMD_DEV_STAT */
+	"DEV_STAT_CLEAR", /** XNL_CMD_DEV_STAT_CLEAR */
+
+	"REG_DUMP",	/** XNL_CMD_REG_DUMP */
+	"REG_READ",	/** XNL_CMD_REG_RD */
+	"REG_WRITE", /** XNL_CMD_REG_WRT */
+
+	"Q_LIST",	/** XNL_CMD_Q_LIST */
+	"Q_ADD",	/** XNL_CMD_Q_ADD */
+	"Q_START",	/** XNL_CMD_Q_START */
+	"Q_STOP",	/** XNL_CMD_Q_STOP */
+	"Q_DEL",	/** XNL_CMD_Q_DEL */
+	"Q_DUMP",	/** XNL_CMD_Q_DUMP */
+	"Q_DESC",	/** XNL_CMD_Q_DESC */
+	"Q_CMPT",	/** XNL_CMD_Q_CMPT */
+	"Q_RX_PKT",	/** XNL_CMD_Q_RX_PKT */
+
+	"INTR_RING_DUMP", /** XNL_CMD_INTR_RING_DUMP */
+#ifdef ERR_DEBUG
+	"Q_ERR_INDUCE"  /** XNL_CMD_Q_ERR_INDUCE */
+#endif
+};
+
+/**
+ * qdma_err_idx - Induce error
+ */
+enum qdma_err_idx {
+	err_ram_sbe,
+	err_ram_dbe,
+	err_dsc,
+	err_trq,
+	err_h2c_mm_0,
+	err_h2c_mm_1,
+	err_c2h_mm_0,
+	err_c2h_mm_1,
+	err_c2h_st,
+	ind_ctxt_cmd_err,
+	err_bdg,
+	err_h2c_st,
+	poison,
+	ur_ca,
+	param,
+	addr,
+	tag,
+	flr,
+	timeout,
+	dat_poison,
+	flr_cancel,
+	dma,
+	dsc,
+	rq_cancel,
+	dbe,
+	sbe,
+	unmapped,
+	qid_range,
+	vf_access_err,
+	tcp_timeout,
+	mty_mismatch,
+	len_mismatch,
+	qid_mismatch,
+	desc_rsp_err,
+	eng_wpl_data_par_err,
+	msi_int_fail,
+	err_desc_cnt,
+	portid_ctxt_mismatch,
+	portid_byp_in_mismatch,
+	cmpt_inv_q_err,
+	cmpt_qfull_err,
+	cmpt_cidx_err,
+	cmpt_prty_err,
+	fatal_mty_mismatch,
+	fatal_len_mismatch,
+	fatal_qid_mismatch,
+	timer_fifo_ram_rdbe,
+	fatal_eng_wpl_data_par_err,
+	pfch_II_ram_rdbe,
+	cmpt_ctxt_ram_rdbe,
+	pfch_ctxt_ram_rdbe,
+	desc_req_fifo_ram_rdbe,
+	int_ctxt_ram_rdbe,
+	cmpt_coal_data_ram_rdbe,
+	tuser_fifo_ram_rdbe,
+	qid_fifo_ram_rdbe,
+	payload_fifo_ram_rdbe,
+	wpl_data_par_err,
+	zero_len_desc_err,
+	csi_mop_err,
+	no_dma_dsc_err,
+	sb_mi_h2c0_dat,
+	sb_mi_c2h0_dat,
+	sb_h2c_rd_brg_dat,
+	sb_h2c_wr_brg_dat,
+	sb_c2h_rd_brg_dat,
+	sb_c2h_wr_brg_dat,
+	sb_func_map,
+	sb_dsc_hw_ctxt,
+	sb_dsc_crd_rcv,
+	sb_dsc_sw_ctxt,
+	sb_dsc_cpli,
+	sb_dsc_cpld,
+	sb_pasid_ctxt_ram,
+	sb_timer_fifo_ram,
+	sb_payload_fifo_ram,
+	sb_qid_fifo_ram,
+	sb_tuser_fifo_ram,
+	sb_wrb_coal_data_ram,
+	sb_int_qid2vec_ram,
+	sb_int_ctxt_ram,
+	sb_desc_req_fifo_ram,
+	sb_pfch_ctxt_ram,
+	sb_wrb_ctxt_ram,
+	sb_pfch_ll_ram,
+	sb_h2c_pend_fifo,
+	db_mi_h2c0_dat,
+	db_mi_c2h0_dat,
+	db_h2c_rd_brg_dat,
+	db_h2c_wr_brg_dat,
+	db_c2h_rd_brg_dat,
+	db_c2h_wr_brg_dat,
+	db_func_map,
+	db_dsc_hw_ctxt,
+	db_dsc_crd_rcv,
+	db_dsc_sw_ctxt,
+	db_dsc_cpli,
+	db_dsc_cpld,
+	db_pasid_ctxt_ram,
+	db_timer_fifo_ram,
+	db_payload_fifo_ram,
+	db_qid_fifo_ram,
+	db_tuser_fifo_ram,
+	db_wrb_coal_data_ram,
+	db_int_qid2vec_ram,
+	db_int_ctxt_ram,
+	db_desc_req_fifo_ram,
+	db_pfch_ctxt_ram,
+	db_wrb_ctxt_ram,
+	db_pfch_ll_ram,
+	db_h2c_pend_fifo,
+	qdma_errs
+};
+
+#endif /* ifndef QDMA_NL_H__ */
diff --git a/QDMA/linux-kernel/include/xdev_regs.h b/QDMA/linux-kernel/include/xdev_regs.h
new file mode 100644
index 0000000..26776dc
--- /dev/null
+++ b/QDMA/linux-kernel/include/xdev_regs.h
@@ -0,0 +1,240 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2018-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is licensed under both the BSD-style license (found in the
+ * LICENSE file in the root directory of this source tree) and the GPLv2 (found
+ * in the COPYING file in the root directory of this source tree).
+ *
+ * You may select, at your option, one of the above-listed licenses.
+ */
+
+#ifndef __XDEV_REGS_H__
+#define __XDEV_REGS_H__
+
+struct xreg_info {
+	const char name[32];
+	uint32_t addr;
+	unsigned int repeat;
+	unsigned int step;
+	unsigned char shift;
+	unsigned char len;
+	unsigned char filler[2];
+};
+
+static struct xreg_info qdma_config_regs[] = {
+
+	/* QDMA_TRQ_SEL_GLBL1 (0x00000) */
+	{"CFG_BLOCK_ID",				0x00, 0, 0, 0, 0,},
+	{"CFG_BUSDEV",					0x04, 0, 0, 0, 0,},
+	{"CFG_PCIE_MAX_PL_SZ",				0x08, 0, 0, 0, 0,},
+	{"CFG_PCIE_MAX_RDRQ_SZ",			0x0C, 0, 0, 0, 0,},
+	{"CFG_SYS_ID",					0x10, 0, 0, 0, 0,},
+	{"CFG_MSI_EN",					0x14, 0, 0, 0, 0,},
+	{"CFG_PCIE_DATA_WIDTH",				0x18, 0, 0, 0, 0,},
+	{"CFG_PCIE_CTRL",				0x1C, 0, 0, 0, 0,},
+	{"CFG_AXI_USR_MAX_PL_SZ",			0x40, 0, 0, 0, 0,},
+	{"CFG_AXI_USR_MAX_RDRQ_SZ",			0x44, 0, 0, 0, 0,},
+	{"CFG_MISC_CTRL",				0x4C, 0, 0, 0, 0,},
+	{"CFG_SCRATCH_REG",				0x80, 8, 0, 0, 0,},
+	{"QDMA_RAM_SBE_MSK_A",				0xF0, 0, 0, 0, 0,},
+	{"QDMA_RAM_SBE_STS_A",				0xF4, 0, 0, 0, 0,},
+	{"QDMA_RAM_DBE_MSK_A",				0xF8, 0, 0, 0, 0,},
+	{"QDMA_RAM_DBE_STS_A",				0xFC, 0, 0, 0, 0,},
+
+	/* QDMA_TRQ_SEL_GLBL2 (0x00100) */
+	{"GLBL2_ID",					0x100, 0, 0, 0, 0,},
+	{"GLBL2_PF_BL_INT",				0x104, 0, 0, 0, 0,},
+	{"GLBL2_PF_VF_BL_INT",				0x108, 0, 0, 0, 0,},
+	{"GLBL2_PF_BL_EXT",				0x10C, 0, 0, 0, 0,},
+	{"GLBL2_PF_VF_BL_EXT",				0x110, 0, 0, 0, 0,},
+	{"GLBL2_CHNL_INST",				0x114, 0, 0, 0, 0,},
+	{"GLBL2_CHNL_QDMA",				0x118, 0, 0, 0, 0,},
+	{"GLBL2_CHNL_STRM",				0x11C, 0, 0, 0, 0,},
+	{"GLBL2_QDMA_CAP",				0x120, 0, 0, 0, 0,},
+	{"GLBL2_PASID_CAP",				0x128, 0, 0, 0, 0,},
+	{"GLBL2_FUNC_RET",				0x12C, 0, 0, 0, 0,},
+	{"GLBL2_SYS_ID",				0x130, 0, 0, 0, 0,},
+	{"GLBL2_MISC_CAP",				0x134, 0, 0, 0, 0,},
+	{"GLBL2_DBG_PCIE_RQ",				0x1B8, 2, 0, 0, 0,},
+	{"GLBL2_DBG_AXIMM_WR",				0x1C0, 2, 0, 0, 0,},
+	{"GLBL2_DBG_AXIMM_RD",				0x1C8, 2, 0, 0, 0,},
+
+	/* QDMA_TRQ_SEL_GLBL (0x00200) */
+	{"GLBL_RNGSZ",					0x204, 16, 0, 0, 0,},
+	{"GLBL_ERR_STAT",				0x248, 0,  0, 0, 0,},
+	{"GLBL_ERR_MASK",				0x24C, 0,  0, 0, 0,},
+	{"GLBL_DSC_CFG",				0x250, 0,  0, 0, 0,},
+	{"GLBL_DSC_ERR_STS",				0x254, 0,  0, 0, 0,},
+	{"GLBL_DSC_ERR_MSK",				0x258, 0,  0, 0, 0,},
+	{"GLBL_DSC_ERR_LOG",				0x25C, 2,  0, 0, 0,},
+	{"GLBL_TRQ_ERR_STS",				0x264, 0,  0, 0, 0,},
+	{"GLBL_TRQ_ERR_MSK",				0x268, 0,  0, 0, 0,},
+	{"GLBL_TRQ_ERR_LOG",				0x26C, 0,  0, 0, 0,},
+	{"GLBL_DSC_DBG_DAT",				0x270, 2,  0, 0, 0,},
+	{"GLBL_DSC_ERR_LOG2",				0x27C, 0,  0, 0, 0,},
+	{"GLBL_INTERRUPT_CFG",				0x288, 0,  0, 0, 0,},
+
+	/* QDMA_TRQ_SEL_FMAP (0x00400 - 0x7FC) */
+	/* TODO: max 256, display 4 for now */
+	{"TRQ_SEL_FMAP",				0x400, 4, 0, 0, 0,},
+
+	/* QDMA_TRQ_SEL_IND (0x00800) */
+	{"IND_CTXT_DATA",				0x804, 8, 0, 0, 0,},
+	{"IND_CTXT_MASK",				0x824, 8, 0, 0, 0,},
+	{"IND_CTXT_CMD",				0x844, 0, 0, 0, 0,},
+
+	/* QDMA_TRQ_SEL_C2H (0x00A00) */
+	{"C2H_TIMER_CNT",				0xA00, 16, 0, 0, 0,},
+	{"C2H_CNT_THRESH",				0xA40, 16, 0, 0, 0,},
+	{"C2H_STAT_S_AXIS_C2H_ACCEPTED",		0xA88, 0, 0, 0, 0,},
+	{"C2H_STAT_S_AXIS_CMPT_ACCEPTED",		0xA8C, 0, 0, 0, 0,},
+	{"C2H_STAT_DESC_RSP_PKT_ACCEPTED",		0xA90, 0, 0, 0, 0,},
+	{"C2H_STAT_AXIS_PKG_CMP",			0xA94, 0, 0, 0, 0,},
+	{"C2H_STAT_DESC_RSP_ACCEPTED",			0xA98, 0, 0, 0, 0,},
+	{"C2H_STAT_DESC_RSP_CMP",			0xA9C, 0, 0, 0, 0,},
+	{"C2H_STAT_WRQ_OUT",				0xAA0, 0, 0, 0, 0,},
+	{"C2H_STAT_WPL_REN_ACCEPTED",			0xAA4, 0, 0, 0, 0,},
+	{"C2H_STAT_TOTAL_WRQ_LEN",			0xAA8, 0, 0, 0, 0,},
+	{"C2H_STAT_TOTAL_WPL_LEN",			0xAAC, 0, 0, 0, 0,},
+	{"C2H_BUF_SZ",					0xAB0, 16, 0, 0, 0,},
+	{"C2H_ERR_STAT",				0xAF0, 0, 0, 0, 0,},
+	{"C2H_ERR_MASK",				0xAF4, 0, 0, 0, 0,},
+	{"C2H_FATAL_ERR_STAT",				0xAF8, 0, 0, 0, 0,},
+	{"C2H_FATAL_ERR_MASK",				0xAFC, 0, 0, 0, 0,},
+	{"C2H_FATAL_ERR_ENABLE",			0xB00, 0, 0, 0, 0,},
+	{"GLBL_ERR_INT",				0xB04, 0, 0, 0, 0,},
+	{"C2H_PFCH_CFG",				0xB08, 0, 0, 0, 0,},
+	{"C2H_INT_TIMER_TICK",				0xB0C, 0, 0, 0, 0,},
+	{"C2H_STAT_DESC_RSP_DROP_ACCEPTED",		0xB10, 0, 0, 0, 0,},
+	{"C2H_STAT_DESC_RSP_ERR_ACCEPTED",		0xB14, 0, 0, 0, 0,},
+	{"C2H_STAT_DESC_REQ",				0xB18, 0, 0, 0, 0,},
+	{"C2H_STAT_DEBUG_DMA_ENG",			0xB1C, 4, 0, 0, 0,},
+	{"C2H_DBG_PFCH_ERR_CTXT",			0xB2C, 0, 0, 0, 0,},
+	{"C2H_FIRST_ERR_QID",				0xB30, 0, 0, 0, 0,},
+	{"STAT_NUM_CMPT_IN",				0xB34, 0, 0, 0, 0,},
+	{"STAT_NUM_CMPT_OUT",				0xB38, 0, 0, 0, 0,},
+	{"STAT_NUM_CMPT_DRP",				0xB3C, 0, 0, 0, 0,},
+	{"STAT_NUM_STAT_DESC_OUT",			0xB40, 0, 0, 0, 0,},
+	{"STAT_NUM_DSC_CRDT_SENT",			0xB44, 0, 0, 0, 0,},
+	{"STAT_NUM_FCH_DSC_RCVD",			0xB48, 0, 0, 0, 0,},
+	{"STAT_NUM_BYP_DSC_RCVD",			0xB4C, 0, 0, 0, 0,},
+	{"C2H_CMPT_COAL_CFG",				0xB50, 0, 0, 0, 0,},
+	{"C2H_INTR_H2C_REQ",				0xB54, 0, 0, 0, 0,},
+	{"C2H_INTR_C2H_MM_REQ",				0xB58, 0, 0, 0, 0,},
+	{"C2H_INTR_ERR_INT_REQ",			0xB5C, 0, 0, 0, 0,},
+	{"C2H_INTR_C2H_ST_REQ",				0xB60, 0, 0, 0, 0,},
+	{"C2H_INTR_H2C_ERR_MM_MSIX_ACK",		0xB64, 0, 0, 0, 0,},
+	{"C2H_INTR_H2C_ERR_MM_MSIX_FAIL",		0xB68, 0, 0, 0, 0,},
+	{"C2H_INTR_H2C_ERR_MM_NO_MSIX",			0xB6C, 0, 0, 0, 0,},
+	{"C2H_INTR_H2C_ERR_MM_CTXT_INVAL",		0xB70, 0, 0, 0, 0,},
+	{"C2H_INTR_C2H_ST_MSIX_ACK",			0xB74, 0, 0, 0, 0,},
+	{"C2H_INTR_C2H_ST_MSIX_FAIL",			0xB78, 0, 0, 0, 0,},
+	{"C2H_INTR_C2H_ST_NO_MSIX",			0xB7C, 0, 0, 0, 0,},
+	{"C2H_INTR_C2H_ST_CTXT_INVAL",			0xB80, 0, 0, 0, 0,},
+	{"C2H_STAT_WR_CMP",				0xB84, 0, 0, 0, 0,},
+	{"C2H_STAT_DEBUG_DMA_ENG_4",			0xB88, 0, 0, 0, 0,},
+	{"C2H_STAT_DEBUG_DMA_ENG_5",			0xB8C, 0, 0, 0, 0,},
+	{"C2H_DBG_PFCH_QID",				0xB90, 0, 0, 0, 0,},
+	{"C2H_DBG_PFCH",				0xB94, 0, 0, 0, 0,},
+	{"C2H_INT_DEBUG",				0xB98, 0, 0, 0, 0,},
+	{"C2H_STAT_IMM_ACCEPTED",			0xB9C, 0, 0, 0, 0,},
+	{"C2H_STAT_MARKER_ACCEPTED",			0xBA0, 0, 0, 0, 0,},
+	{"C2H_STAT_DISABLE_CMP_ACCEPTED",		0xBA4, 0, 0, 0, 0,},
+	{"C2H_C2H_PAYLOAD_FIFO_CRDT_CNT",		0xBA8, 0, 0, 0, 0,},
+
+	{"C2H_INTR_DYN_REQ",				0xBAC, 0, 0, 0, 0,},
+	{"C2H_INTR_DYN_MSIX",				0xBB0, 0, 0, 0, 0,},
+	{"C2H_DROP_LEN_MISMATCH",			0xBB4, 0, 0, 0, 0,},
+	{"C2H_DROP_DESC_RSP_LEN",			0xBB8, 0, 0, 0, 0,},
+	{"C2H_DROP_QID_FIFO_LEN",			0xBBC, 0, 0, 0, 0,},
+	{"C2H_DROP_PAYLOAD_CNT",			0xBC0, 0, 0, 0, 0,},
+	{"QDMA_C2H_CMPT_FORMAT",			0xBC4, 7, 0, 0, 0,},
+	{"C2H_PFCH_CACHE_DEPTH",			0xBE0, 0, 0, 0, 0,},
+	{"C2H_CMPT_COAL_BUF_DEPTH",			0xBE4, 0, 0, 0, 0,},
+	{"C2H_PFCH_CRDT",				0xBE8, 0, 0, 0, 0,},
+
+	/* QDMA_TRQ_SEL_H2C(0x00E00) Register Space*/
+	{"H2C_ERR_STAT",				0xE00, 0, 0, 0, 0,},
+	{"H2C_ERR_MASK",				0xE04, 0, 0, 0, 0,},
+	{"H2C_FIRST_ERR_QID",				0xE08, 0, 0, 0, 0,},
+	{"H2C_DBG_REG",					0xE0C, 5, 0, 0, 0,},
+	{"H2C_FATAL_ERR_EN",				0xE20, 0, 0, 0, 0,},
+	{"H2C_REQ_THROT",				0xE24, 0, 0, 0, 0,},
+	{"H2C_ALN_DBG_REG0",				0xE28, 0, 0, 0, 0,},
+
+	/* QDMA_TRQ_SEL_C2H_MM (0x1000) */
+	{"C2H_MM_CONTROL",				0x1004, 3, 0, 0, 0,},
+	{"C2H_MM_STATUS",				0x1040, 2, 0, 0, 0,},
+	{"C2H_MM_CMPL_DSC_CNT",				0x1048, 0, 0, 0, 0,},
+	{"C2H_MM_ERR_CODE_EN_MASK",			0x1054, 0, 0, 0, 0,},
+	{"C2H_MM_ERR_CODE",				0x1058, 0, 0, 0, 0,},
+	{"C2H_MM_ERR_INFO",				0x105C, 0, 0, 0, 0,},
+	{"C2H_MM_PERF_MON_CTRL",			0x10C0, 0, 0, 0, 0,},
+	{"C2H_MM_PERF_MON_CY_CNT",			0x10C4, 2, 0, 0, 0,},
+	{"C2H_MM_PERF_MON_DATA_CNT",			0x10CC, 2, 0, 0, 0,},
+	{"C2H_MM_DBG_INFO",				0x10E8, 2, 0, 0, 0,},
+
+	/* QDMA_TRQ_SEL_H2C_MM (0x1200)*/
+	{"H2C_MM_CONTROL",				0x1204, 3, 0, 0, 0,},
+	{"H2C_MM_STATUS",				0x1240, 0, 0, 0, 0,},
+	{"H2C_MM_CMPL_DSC_CNT",				0x1248, 0, 0, 0, 0,},
+	{"H2C_MM_ERR_CODE_EN_MASK",			0x1254, 0, 0, 0, 0,},
+	{"H2C_MM_ERR_CODE",				0x1258, 0, 0, 0, 0,},
+	{"H2C_MM_ERR_INFO",				0x125C, 0, 0, 0, 0,},
+	{"H2C_MM_PERF_MON_CTRL",			0x12C0, 0, 0, 0, 0,},
+	{"H2C_MM_PERF_MON_CY_CNT",			0x12C4, 2, 0, 0, 0,},
+	{"H2C_MM_PERF_MON_DATA_CNT",			0x12CC, 2, 0, 0, 0,},
+	{"H2C_MM_DBG_INFO",				0x12E8, 0, 0, 0, 0,},
+	{"H2C_MM_REQ_THROT",				0x12EC, 0, 0, 0, 0,},
+
+	/* QDMA_PF_MAILBOX (0x2400) */
+	{"FUNC_STATUS",					0x2400, 0, 0, 0, 0,},
+	{"FUNC_CMD",					0x2404, 0, 0, 0, 0,},
+	{"FUNC_INTR_VEC",				0x2408, 0, 0, 0, 0,},
+	{"TARGET_FUNC",					0x240C, 0, 0, 0, 0,},
+	{"INTR_CTRL",					0x2410, 0, 0, 0, 0,},
+	{"PF_ACK",					0x2420, 8, 0, 0, 0,},
+	{"FLR_CTRL_STATUS",				0x2500, 0, 0, 0, 0,},
+	{"MSG_IN",					0x2800, 32, 0, 0, 0,},
+	{"MSG_OUT",					0x2C00, 32, 0, 0, 0,},
+
+	{"", 0, 0, 0 }
+};
+
+static struct xreg_info qdma_user_regs[] = {
+	{"ST_C2H_QID",					0x0, 0, 0, 0, 0,},
+	{"ST_C2H_PKTLEN",				0x4, 0, 0, 0, 0,},
+	{"ST_C2H_CONTROL",				0x8, 0, 0, 0, 0,},
+	/*  ST_C2H_CONTROL:
+	 *	[1] : start C2H
+	 *	[2] : immediate data
+	 *	[3] : every packet statrs with 00 instead of continuous data
+	 *	      stream until # of packets is complete
+	 *	[31]: gen_user_reset_n
+	 */
+	{"ST_H2C_CONTROL",				0xC, 0, 0, 0, 0,},
+	/*  ST_H2C_CONTROL:
+	 *	[0] : clear match for H2C transfer
+	 */
+	{"ST_H2C_STATUS",				0x10, 0, 0, 0, 0,},
+	{"ST_H2C_XFER_CNT",				0x14, 0, 0, 0, 0,},
+	{"ST_C2H_PKT_CNT",				0x20, 0, 0, 0, 0,},
+	{"ST_C2H_CMPT_DATA",				0x30, 8, 0, 0, 0,},
+	{"ST_C2H_CMPT_SIZE",				0x50, 0, 0, 0, 0,},
+	{"ST_SCRATCH_REG",				0x60, 2, 0, 0, 0,},
+	{"ST_C2H_PKT_DROP",				0x88, 0, 0, 0, 0,},
+	{"ST_C2H_PKT_ACCEPT",				0x8C, 0, 0, 0, 0,},
+	{"DSC_BYPASS_LOOP",				0x90, 0, 0, 0, 0,},
+	{"USER_INTERRUPT",				0x94, 0, 0, 0, 0,},
+	{"USER_INTERRUPT_MASK",				0x98, 0, 0, 0, 0,},
+	{"USER_INTERRUPT_VEC",				0x9C, 0, 0, 0, 0,},
+	{"DMA_CONTROL",					0xA0, 0, 0, 0, 0,},
+	{"VDM_MSG_READ",				0xA4, 0, 0, 0, 0,},
+
+	{"", 0, 0, 0 }
+};
+
+#endif
diff --git a/QDMA/linux-kernel/libqdma/Makefile b/QDMA/linux-kernel/libqdma/Makefile
new file mode 100644
index 0000000..208a20a
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/Makefile
@@ -0,0 +1,47 @@
+SHELL = /bin/bash
+
+# The top-level makefile defines required variables and flags.
+ifneq ($(shell [[ $(MAKELEVEL) -ge 1 ]] && echo 1),1)
+  $(error Please use the top-level Makefile to build this driver)
+endif
+
+ifneq ($(wildcard /etc/lsb-release),)
+  ifneq ($(shell $(grep) "Ubuntu" /etc/lsb-release),)
+    FLAGS += -DUBUNTU_VERSION_CODE
+  endif
+endif
+
+include $(srcdir)/make/common_flags.mk
+
+$(info srcdir = $(srcdir).)
+$(info KSRC = $(KSRC).)
+
+EXTRA_CFLAGS += -DLINUX -D__KERNEL__ -DMODULE -O2 -pipe -Wall -Werror
+EXTRA_CFLAGS += $(FLAGS) $(CPPFLAGS)
+EXTRA_CFLAGS += -I$(srcdir)/include
+EXTRA_CFLAGS += -I$(KSRC)/include
+EXTRA_CFLAGS += -I.
+
+#EXTRA_CFLAGS += -DDEBUG
+
+ifneq ($(modulesymfile),)
+  override symverfile = symverfile="$(topdir)/$(modulesymfile) \
+					-o $(drvdir)/$(modulesymfile)"
+else
+  override symverfile =
+endif
+
+MOD_NAME := libqdma
+ifneq ($(SUBDIRS),)
+  BASE_OBJS := $(patsubst $(SUBDIRS)/%.c,%.o,$(wildcard $(SUBDIRS)/*.c))
+endif
+obj-m := $(MOD_NAME).o
+$(MOD_NAME)-objs := $(BASE_OBJS)
+
+.PHONY: build
+build:
+	@$(MAKE) symverfile=$(symverfile) KBUILD_EXTRA_SYMBOLS=$(extra_symb) -C $(KOBJ) SUBDIRS=$(shell pwd) modules
+
+.PHONY: clean
+clean:
+	@-/bin/rm -rf *.ko* ?odule* .tmp_versions *.mod.* *.o .*.o.* .*.cmd
diff --git a/QDMA/linux-kernel/libqdma/libqdma_config.c b/QDMA/linux-kernel/libqdma/libqdma_config.c
new file mode 100644
index 0000000..cb9cadf
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/libqdma_config.c
@@ -0,0 +1,572 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+/**
+ * @file
+ * @brief This file contains the definitions for qdma configuration apis
+ *
+ */
+#define pr_fmt(fmt)	KBUILD_MODNAME ":%s: " fmt, __func__
+
+#include "libqdma_export.h"
+
+#include "qdma_descq.h"
+#include "qdma_device.h"
+#include "qdma_thread.h"
+#include "qdma_regs.h"
+#include "qdma_context.h"
+#include "qdma_intr.h"
+#include "thread.h"
+#include "version.h"
+
+/*****************************************************************************/
+/**
+ * qdma_set_qmax() -  Handler function to set the qmax configuration value
+ *
+ * @param[in]	dev_hndl:	qdma device handle
+ * @param[in]	qsets_max:	qmax configuration value
+ * @param[in]	forced:	whether to force set the value
+ *
+ *
+ * @return	QDMA_OPERATION_SUCCESSFUL on success
+ * @return	< 0 on failure
+ *****************************************************************************/
+int qdma_set_qmax(unsigned long dev_hndl, u32 qsets_max, bool forced)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+	struct qdma_dev *qdev;
+	int rv = -1;
+
+	/**
+	 *  If xdev is NULL or qdev is NULL, return error as Invalid parameter
+	 */
+	if (!xdev)
+		return -EINVAL;
+
+	qdev = xdev_2_qdev(xdev);
+
+	if (!qdev)
+		return -EINVAL;
+
+	/** If qdev->init_qrange is set,
+	 *  it indicates that FMAP programming is done
+	 *	That means at least one queue is added in the system.
+	 *  qmax is not allowed to change after FMAP programming is done.
+	 *  Hence, If qdev->init_qrange is set, return error as qmax
+	 *  cannot be changed now.
+	 */
+	if (qdev->init_qrange) {
+		pr_err("xdev 0x%p, FMAP prog done, can not modify qmax [%d]\n",
+						xdev,
+						qdev->qmax);
+		return rv;
+	}
+
+	/** If the input qsets_max is same as the current xdev->conf.qsets_max,
+	 *	return, as there is nothing to be changed
+	 */
+	if ((qsets_max == xdev->conf.qsets_max) && !forced) {
+		pr_err("xdev 0x%p, Current qsets_max is same as [%d].Nothing to be done\n",
+				xdev, xdev->conf.qsets_max);
+		return rv;
+	}
+
+
+	/** FMAP programming is not done yet
+	 *  remove the already created qdev and recreate it using the
+	 *  newly configured size
+	 */
+	qdma_device_cleanup(xdev);
+	xdev->conf.qsets_max = qsets_max;
+	rv = qdma_device_init(xdev);
+	if (rv < 0) {
+		pr_warn("qdma_init failed %d.\n", rv);
+		qdma_device_cleanup(xdev);
+	}
+
+	return QDMA_OPERATION_SUCCESSFUL;
+}
+/*****************************************************************************/
+/**
+ * qdma_get_qmax() -  Handler function to get the qmax configuration value
+ *
+ * @param[in]	dev_hndl:	qdma device handle
+ *
+ * @return	qmax value on success
+ * @return	< 0 on failure
+ *****************************************************************************/
+unsigned int qdma_get_qmax(unsigned long dev_hndl)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+
+	/**
+	 * If xdev is NULL return error as Invalid parameter
+	 */
+	if (!xdev)
+		return -EINVAL;
+
+	/**
+	 * Return the current qsets_max value of the device
+	 */
+	return xdev->conf.qsets_max;
+}
+
+/*****************************************************************************/
+/**
+ * qdma_set_intr_rngsz() - Handler function to set the intr_ring_size value
+ *
+ * @param[in]	dev_hndl:		qdma device handle
+ * @param[in]	intr_rngsz:		interrupt aggregation ring size
+ *
+ * @return	QDMA_OPERATION_SUCCESSFUL on success
+ * @return	<0 on failure
+ *****************************************************************************/
+int qdma_set_intr_rngsz(unsigned long dev_hndl, u32 intr_rngsz)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+	struct qdma_dev *qdev;
+	int rv = -1;
+
+	/**
+	 *  If xdev is NULL or qdev is NULL, return error as Invalid parameter
+	 */
+	if (!xdev)
+		return -EINVAL;
+
+	qdev = xdev_2_qdev(xdev);
+
+	if (!qdev)
+		return -EINVAL;
+
+	/** If the input intr_rngsz is same as the
+	 *  current xdev->conf.intr_rngsz,
+	 *	return, as there is nothing to be changed
+	 */
+	if (intr_rngsz == xdev->conf.intr_rngsz) {
+		pr_err("xdev 0x%p, Current intr_rngsz is same as [%d].Nothing to be done\n",
+					xdev, intr_rngsz);
+		return rv;
+	}
+
+	/** If interrupt aggregation is not enabled, then no need to change the
+	 *  interrupt ring size. Retrun error in this case.
+	 */
+	if ((xdev->conf.qdma_drv_mode != INDIRECT_INTR_MODE) &&
+			(xdev->conf.qdma_drv_mode != AUTO_MODE)) {
+		pr_err("xdev 0x%p, interrupt aggregation is disabled\n", xdev);
+		return rv;
+	}
+
+	/** If qdev->init_qrange is set,
+	 *  it indicates that FMAP programming is done
+	 *	That means at least one queue is added in the system.
+	 *  intr_rngsz is not allowed to change after FMAP programming is done.
+	 *  Hence, If qdev->init_qrange is set, return error as intr_rngsz
+	 *  cannot be changed now.
+	 */
+	if (qdev->init_qrange) {
+		pr_err("xdev 0x%p, FMAP prog done, cannot modify intr ring size [%d]\n",
+				xdev,
+				xdev->conf.intr_rngsz);
+		return rv;
+	}
+
+	/**
+	 *  FMAP programming is not done yet, update the intr_rngsz
+	 */
+	xdev->conf.intr_rngsz = intr_rngsz;
+
+	return QDMA_OPERATION_SUCCESSFUL;
+}
+
+/*****************************************************************************/
+/**
+ * qdma_get_intr_rngsz() - Handler function to get the intr_ring_size value
+ *
+ * @param[in]	dev_hndl:	qdma device handle
+ *
+ *
+ * @return	interrupt ring size on success
+ * @return	<0 on failure
+ *****************************************************************************/
+unsigned int qdma_get_intr_rngsz(unsigned long dev_hndl)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+
+	/**
+	 * If xdev is NULL return error as Invalid parameter
+	 */
+	if (!xdev)
+		return -EINVAL;
+
+	/** If interrupt aggregation is not enabled, then return 0
+	 *  As the intr_rngsz value is irrelevant in this case
+	 */
+	if ((xdev->conf.qdma_drv_mode != INDIRECT_INTR_MODE) &&
+			(xdev->conf.qdma_drv_mode != AUTO_MODE)) {
+		pr_info("xdev 0x%p, interrupt aggregation is disabled\n", xdev);
+		return 0;
+	}
+
+	pr_info("xdev 0x%p, intr ring_size = %d\n",
+				xdev,
+				xdev->conf.intr_rngsz);
+	/**
+	 * Return the current intr_rngsz value of the device
+	 */
+	return xdev->conf.intr_rngsz;
+}
+#ifndef __QDMA_VF__
+/*****************************************************************************/
+/**
+ * qdma_set_buf_sz() - Handler function to set the buf_sz value
+ *
+ * @param[in]	dev_hndl:		qdma device handle
+ * @param[in]	buf_sz:		interrupt aggregation ring size
+ *
+ * @return	QDMA_OPERATION_SUCCESSFUL on success
+ * @return	<0 on failure
+ *****************************************************************************/
+int qdma_set_buf_sz(unsigned long dev_hndl, u32 *buf_sz)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+	struct qdma_dev *qdev = xdev_2_qdev(xdev);
+	int rv = -1;
+
+	/**
+	 *  If xdev is NULL or qdev is NULL,
+	 *  return error as Invalid parameter
+	 */
+	if (!xdev || !qdev)
+		return -EINVAL;
+
+
+	/** If qdev->init_qrange is set,
+	 *  it indicates that FMAP programming is done
+	 *	That means at least one queue is added in the system.
+	 *  intr_rngsz is not allowed to change after FMAP programming is done.
+	 *  Hence, If qdev->init_qrange is set, return error as buf_sz
+	 *  cannot be changed now.
+	 */
+	if (qdev->init_qrange) {
+		pr_err("xdev 0x%p, FMAP prog done, cannot modify buf size\n",
+				xdev);
+		return rv;
+	}
+
+	/**
+	 * Write the given buf sizes to the registers
+	 */
+	rv = qdma_csr_write_bufsz(xdev, buf_sz);
+
+	return rv;
+}
+
+/*****************************************************************************/
+/**
+ * qdma_get_buf_sz() - Handler function to get the buf_sz value
+ *
+ * @param[in]	dev_hndl:	qdma device handle
+ *
+ *
+ * @return	buffer size on success
+ * @return	<0 on failure
+ *****************************************************************************/
+unsigned int qdma_get_buf_sz(unsigned long dev_hndl, u32 *buf_sz)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+
+	/**
+	 * If xdev is NULL, return error as Invalid parameter
+	 */
+	if (!xdev)
+		return -EINVAL;
+
+	qdma_csr_read_bufsz(xdev, buf_sz);
+
+	return QDMA_OPERATION_SUCCESSFUL;
+}
+
+/*****************************************************************************/
+/**
+ * qdma_set_glbl_rng_sz() - Handler function to set the buf_sz value
+ *
+ * @param[in]	dev_hndl:		qdma device handle
+ * @param[in]	buf_sz:		interrupt aggregation ring size
+ *
+ * @return	QDMA_OPERATION_SUCCESSFUL on success
+ * @return	<0 on failure
+ *****************************************************************************/
+int qdma_set_glbl_rng_sz(unsigned long dev_hndl, u32 *glbl_rng_sz)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+	struct qdma_dev *qdev = xdev_2_qdev(xdev);
+	int rv = -1;
+
+	/**
+	 *  If xdev is NULL or qdev is NULL,
+	 *  return error as Invalid parameter
+	 */
+	if (!xdev || !qdev)
+		return -EINVAL;
+
+
+	/** If qdev->init_qrange is set,
+	 *  it indicates that FMAP programming is done
+	 *	That means at least one queue is added in the system.
+	 *  intr_rngsz is not allowed to change after FMAP programming is done.
+	 *  Hence, If qdev->init_qrange is set, return error as glbl_rng_sz
+	 *  cannot be changed now.
+	 */
+	if (qdev->init_qrange) {
+		pr_err("xdev 0x%p, FMAP prog done, cannot modify glbl_rng_sz\n",
+				xdev);
+		return rv;
+	}
+
+	/**
+	 * Write the given buf sizes to the registers
+	 */
+	rv = qdma_csr_write_rngsz(xdev, glbl_rng_sz);
+
+	return rv;
+}
+
+/*****************************************************************************/
+/**
+ * qdma_get_glbl_rng_sz() - Handler function to get the glbl_rng_sz value
+ *
+ * @param[in]	dev_hndl:	qdma device handle
+ *
+ *
+ * @return	glbl_rng_sz size on success
+ * @return	<0 on failure
+ *****************************************************************************/
+unsigned int qdma_get_glbl_rng_sz(unsigned long dev_hndl, u32 *glbl_rng_sz)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+
+	/**
+	 * If xdev is NULL, return error as Invalid parameter
+	 */
+	if (!xdev)
+		return -EINVAL;
+
+	qdma_csr_read_rngsz(xdev, glbl_rng_sz);
+
+	return QDMA_OPERATION_SUCCESSFUL;
+}
+
+/*****************************************************************************/
+/**
+ * qdma_set_timer_cnt() - Handler function to set the buf_sz value
+ *
+ * @param[in]	dev_hndl:		qdma device handle
+ * @param[in]	tmr_cnt:		Array of 16 timer count values
+ *
+ * @return	QDMA_OPERATION_SUCCESSFUL on success
+ * @return	<0 on failure
+ *****************************************************************************/
+int qdma_set_timer_cnt(unsigned long dev_hndl, u32 *tmr_cnt)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+	struct qdma_dev *qdev = xdev_2_qdev(xdev);
+	int rv = -1;
+
+	if (!xdev || !qdev)
+		return -EINVAL;
+
+   /**  If qdev->init_qrange is set,
+    *  it indicates that FMAP programming is done
+    *      That meansat least one queue is added in the system.
+    *  qmax is not allowed to change after FMAP programming is done.
+    *  Hence, If qdev->init_qrange is set, return error as qmax
+    *  cannot be changed now.
+    */
+	if (qdev->init_qrange) {
+		pr_err("xdev 0x%p, FMAP prog done, can not modify timer count\n",
+						xdev);
+		return rv;
+	}
+
+	rv = qdma_csr_write_timer_cnt(xdev, tmr_cnt);
+
+	return rv;
+}
+
+/*****************************************************************************/
+/**
+ * qdma_get_timer_cnt() - Handler function to get the timer_cnt value
+ *
+ * @param[in]	dev_hndl:	qdma device handle
+ *
+ *
+ * @return	timer_cnt  on success
+ * @return	<0 on failure
+ *****************************************************************************/
+unsigned int qdma_get_timer_cnt(unsigned long dev_hndl, u32 *tmr_cnt)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+
+	/**
+	 * If xdev is NULL, return error as Invalid parameter
+	 */
+	if (!xdev)
+		return -EINVAL;
+
+	qdma_csr_read_timer_cnt(xdev, tmr_cnt);
+
+	return QDMA_OPERATION_SUCCESSFUL;
+}
+
+/*****************************************************************************/
+/**
+ * qdma_set_cnt_thresh() - Handler function to set the counter threshold value
+ *
+ * @param[in]	dev_hndl:		qdma device handle
+ * @param[in]	cnt_th:		Array of 16 timer count values
+ *
+ * @return	QDMA_OPERATION_SUCCESSFUL on success
+ * @return	<0 on failure
+ *****************************************************************************/
+int qdma_set_cnt_thresh(unsigned long dev_hndl, unsigned int *cnt_th)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+	struct qdma_dev *qdev = xdev_2_qdev(xdev);
+	int rv = -1;
+
+	if (!xdev || !qdev)
+		return -EINVAL;
+
+   /** If qdev->init_qrange is set,
+    *  it indicates that FMAP programming is done
+    *  That means at least one queue is added in the system.
+    *  csr count threshold is not allowed to change after FMAP
+    *  programming is done.
+    *  Hence, If qdev->init_qrange is set, return error as csr count threshold
+    *  cannot be changed now.
+    */
+	if (qdev->init_qrange) {
+		pr_err("xdev 0x%p, FMAP prog done, can not modify threshold count\n",
+						xdev);
+		return rv;
+	}
+
+	rv = qdma_csr_write_cnt_thresh(xdev, cnt_th);
+
+	return rv;
+}
+
+/*****************************************************************************/
+/**
+ * qdma_get_cnt_thresh() - Handler function to get the counter thresh value
+ *
+ * @param[in]	dev_hndl:	qdma device handle
+ *
+ *
+ * @return	counter threshold values  on success
+ * @return	<0 on failure
+ *****************************************************************************/
+unsigned int qdma_get_cnt_thresh(unsigned long dev_hndl, u32 *cnt_th)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+
+	/**
+	 * If xdev is NULL, return error as Invalid parameter
+	 */
+	if (!xdev)
+		return -EINVAL;
+
+	qdma_csr_read_cnt_thresh(xdev, cnt_th);
+
+	return QDMA_OPERATION_SUCCESSFUL;
+}
+
+/*****************************************************************************/
+/**
+ * qdma_set_cmpl_status_acc() -  Handler function to set the cmpl_status_acc
+ * configuration value
+ *
+ * @param[in]	dev_hndl:	qdma device handle
+ * @param[in]	cmpl_status_acc:	Writeback Accumulation value
+ *
+ * @return	QDMA_OPERATION_SUCCESSFUL on success
+ * @return	<0 on failure
+ *****************************************************************************/
+int qdma_set_cmpl_status_acc(unsigned long dev_hndl, u32 cmpl_status_acc)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+	struct qdma_dev *qdev = xdev_2_qdev(xdev);
+	unsigned int reg;
+
+	/**
+	 * If xdev is NULL, return error as Invalid parameter
+	 */
+	if (!xdev)
+		return -EINVAL;
+
+	if (qdev->init_qrange) {
+		pr_err("xdev 0x%p, FMAP prog done, cannot modify cmpt acc\n",
+				xdev);
+		return -EINVAL;
+	}
+	/**
+	 * Write the given cmpl_status_acc value to the register
+	 */
+	reg = __read_reg(xdev, QDMA_REG_GLBL_DSC_CFG);
+	reg &= ~QDMA_REG_GLBL_DSC_CFG_CMPL_STATUS_ACC_MASK;
+	reg |= cmpl_status_acc;
+	__write_reg(xdev, QDMA_REG_GLBL_DSC_CFG, reg);
+
+	return QDMA_OPERATION_SUCCESSFUL;
+}
+
+/*****************************************************************************/
+/**
+ * qdma_get_cmpl_status_acc() -  Handler function to get the cmpl_status_acc
+ * configuration value
+ *
+ * @param[in] dev_hndl:		qdma device handle
+ *
+ * Handler function to get the writeback accumulation value
+ *
+ * @return	cmpl_status_acc on success
+ * @return	<0 on failure
+ *
+ *****************************************************************************/
+unsigned int qdma_get_cmpl_status_acc(unsigned long dev_hndl)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+	unsigned int cs_acc;
+
+	/**
+	 * If xdev is NULL, return error as Invalid parameter
+	 */
+	if (!xdev)
+		return -EINVAL;
+
+	/**
+	 * Read the current cmpl_status_acc value from the register and return
+	 */
+	cs_acc = __read_reg(xdev, QDMA_REG_GLBL_DSC_CFG) &
+			QDMA_REG_GLBL_DSC_CFG_CMPL_STATUS_ACC_MASK;
+
+	return cs_acc;
+}
+#endif
diff --git a/QDMA/linux-kernel/libqdma/libqdma_config.h b/QDMA/linux-kernel/libqdma/libqdma_config.h
new file mode 100644
index 0000000..31f2374
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/libqdma_config.h
@@ -0,0 +1,301 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#ifndef __LIBQDMA_CONFIG_H__
+#define __LIBQDMA_CONFIG_H__
+/**
+ * @file
+ * @brief This file contains the declarations for qdma configuration apis
+ *
+ */
+/*****************************************************************************
+ * GLOBAL CONSTANTS
+ *****************************************************************************/
+#include <linux/types.h>
+
+/**
+ * QDMA config bar number
+ */
+#define QDMA_CONFIG_BAR			0
+
+/**
+ * STM bar
+ */
+#define STM_BAR		2
+
+/**
+ * Maximum number of physical functions
+ */
+#define QDMA_PF_MAX		4	/* 4 PFs */
+/**
+ * Maximum number of virtual functions
+ */
+#define QDMA_VF_MAX		252
+
+/**
+ * Maximum number of queues per physical function
+ */
+#define QDMA_Q_PER_PF_MAX	512
+
+/**
+ * Maximum number of QDMA devices in the system
+ */
+#define MAX_DMA_DEV 32
+
+/**
+ * Total number of qdma qs
+ */
+#define TOTAL_QDMA_QS	(QDMA_PF_MAX * QDMA_Q_PER_PF_MAX)
+
+/**
+ * Maximum number of queues per virtual function
+ */
+#define QDMA_Q_PER_VF_MAX	1
+
+/**
+ * Total number of qs for all VF
+ */
+#define TOTAL_VF_QS	0
+
+/**
+ * Total number of qs for all PFs
+ */
+#define TOTAL_PF_QS (TOTAL_QDMA_QS - TOTAL_VF_QS)
+
+/**
+ * Maximum number of qs for PF
+ */
+#define MAX_QS_PER_PF   (TOTAL_PF_QS/QDMA_PF_MAX)
+
+/**
+ * Shift for bus 'B' in B:D:F
+ */
+#define PCI_SHIFT_BUS 12
+
+/**
+ * Shift for device 'D' in B:D:F
+ */
+#define PCI_SHIFT_DEV 4
+
+/**
+ * To shift the Bus number for getting BDF
+ */
+#define SHIFT_DEC_PCI_BUS	1000
+
+/**
+ * To shift the device number for getting BDF
+ */
+#define SHIFT_DEC_PCI_DEV	10
+
+/**
+ * Maximum number of MSI-X vector per function
+ */
+#define QDMA_DEV_MSIX_VEC_MAX	8
+
+/**
+ * ring size is 4KB, i.e 512 entries
+ */
+#define QDMA_INTR_COAL_RING_SIZE INTR_RING_SZ_4KB
+
+/** Maximum data vectors to be used for each function
+ * TODO: Please note that for 2018.2 only one vector would be used
+ * per pf and only one ring would be created for this vector
+ * It is also assumed that all functions have the same number of data vectors
+ * and currently different number of vectors per PF is not supported
+ */
+#define QDMA_NUM_DATA_VEC_FOR_INTR_CXT  1
+
+/*****************************************************************************
+ * Function Declaration
+ *****************************************************************************/
+
+/*****************************************************************************/
+/**
+ * qdma_set_qmax() -  Handler function to set the qmax configuration value
+ *
+ * @param[in]	dev_hndl:	qdma device handle
+ * @param[in]	qsets_max:	qmax configuration value
+ * @param[in]	forced:		flag to force qmax change
+ *
+ * @return	QDMA_OPERATION_SUCCESSFUL on success
+ * @return	<0 on failure
+ *****************************************************************************/
+int qdma_set_qmax(unsigned long dev_hndl, u32 qsets_max, bool forced);
+
+/*****************************************************************************/
+/**
+ * qdma_get_qmax() -  Handler function to get the qmax configuration value
+ *
+ * @param[in]	dev_hndl:	qdma device handle
+ *
+ * @return	qmax value on success
+ * @return	< 0 on failure
+ *****************************************************************************/
+unsigned int qdma_get_qmax(unsigned long dev_hndl);
+
+/*****************************************************************************/
+/**
+ * qdma_set_intr_rngsz() - Handler function to set the intr_ring_size value
+ *
+ * @param[in]	dev_hndl:	qdma device handle
+ * @param[in]	rngsz:		interrupt aggregation ring size
+ *
+ * @return	QDMA_OPERATION_SUCCESSFUL on success
+ * @return	<0 on failure
+ *****************************************************************************/
+int qdma_set_intr_rngsz(unsigned long dev_hndl, u32 rngsz);
+
+/*****************************************************************************/
+/**
+ * qdma_get_intr_rngsz() - Handler function to get the intr_ring_size value
+ *
+ * @param[in]	dev_hndl:	qdma device handle
+ *
+ *
+ * @return	interrupt ring size on success
+ * @return	<0 on failure
+ *****************************************************************************/
+unsigned int qdma_get_intr_rngsz(unsigned long dev_hndl);
+
+#ifndef __QDMA_VF__
+/*****************************************************************************/
+/**
+ * qdma_set_cmpl_status_acc() -  Handler function to set the cmpl_status_acc
+ * configuration value
+ *
+ * @param[in]	dev_hndl:	qdma device handle
+ * @param[in]	cmpl_status_acc:	Writeback Accumulation value
+ *
+ * @return	QDMA_OPERATION_SUCCESSFUL on success
+ * @return	<0 on failure
+ *****************************************************************************/
+int qdma_set_cmpl_status_acc(unsigned long dev_hndl, u32 cmpl_status_acc);
+
+/*****************************************************************************/
+/**
+ * qdma_get_cmpl_status_acc() -  Handler function to get the cmpl_status_acc
+ * configuration value
+ *
+ * @param[in] dev_hndl:		qdma device handle
+ *
+ * Handler function to get the writeback accumulation value
+ *
+ * @return	cmpl_status_acc on success
+ * @return	<0 on failure
+ *****************************************************************************/
+unsigned int qdma_get_cmpl_status_acc(unsigned long dev_hndl);
+
+/*****************************************************************************/
+/**
+ * qdma_set_buf_sz() - Handler function to set the buf_sz value
+ *
+ * @param[in]	dev_hndl:	qdma device handle
+ * @param[in]	buf_sz:		buf sizes
+ *
+ * @return	QDMA_OPERATION_SUCCESSFUL on success
+ * @return	<0 on failure
+ *****************************************************************************/
+int qdma_set_buf_sz(unsigned long dev_hndl, u32 *buf_sz);
+
+/*****************************************************************************/
+/**
+ * qdma_get_buf_sz() - Handler function to get the buf_sz value
+ *
+ * @param[in]	dev_hndl:	qdma device handle
+ * @param[in]	buf_sz:		buf sizes
+ *
+ * @return	buf sizes on success
+ * @return	<0 on failure
+ *****************************************************************************/
+unsigned int qdma_get_buf_sz(unsigned long dev_hndl, u32 *buf_sz);
+
+/*****************************************************************************/
+/**
+ * qdma_set_glbl_rng_sz() - Handler function to set the glbl_rng_sz value
+ *
+ * @param[in]	dev_hndl:			qdma device handle
+ * @param[in]	glbl_rng_sz:		glbl_rng_sizes
+ *
+ * @return	QDMA_OPERATION_SUCCESSFUL on success
+ * @return	<0 on failure
+ *****************************************************************************/
+int qdma_set_glbl_rng_sz(unsigned long dev_hndl, u32 *glbl_rng_sz);
+
+/*****************************************************************************/
+/**
+ * qdma_get_glbl_rng_sz() - Handler function to get the glbl_rng_sz value
+ *
+ * @param[in]	dev_hndl:			qdma device handle
+ * @param[in]	glbl_rng_sz:		glbl_rng sizes
+ *
+ * @return	glbl_rng_sz on success
+ * @return	<0 on failure
+ *****************************************************************************/
+unsigned int qdma_get_glbl_rng_sz(unsigned long dev_hndl, u32 *glbl_rng_sz);
+
+/*****************************************************************************/
+/**
+ * qdma_set_timer_cnt() - Handler function to set the buf_sz value
+ *
+ * @param[in]	dev_hndl:		qdma device handle
+ * @param[in]	tmr_cnt:		Array of 16 timer count values
+ *
+ * @return	QDMA_OPERATION_SUCCESSFUL on success
+ * @return	<0 on failure
+ *****************************************************************************/
+int qdma_set_timer_cnt(unsigned long dev_hndl, u32 *tmr_cnt);
+
+/*****************************************************************************/
+/**
+ * qdma_get_timer_cnt() - Handler function to get the timer_cnt value
+ *
+ * @param[in]	dev_hndl:	qdma device handle
+ *
+ *
+ * @return	timer_cnt  on success
+ * @return	<0 on failure
+ *****************************************************************************/
+unsigned int qdma_get_timer_cnt(unsigned long dev_hndl, u32 *tmr_cnt);
+
+/*****************************************************************************/
+/**
+ * qdma_set_cnt_thresh() - Handler function to set the counter threshold value
+ *
+ * @param[in]	dev_hndl:		qdma device handle
+ * @param[in]	cnt_th:		Array of 16 timer count values
+ *
+ * @return	QDMA_OPERATION_SUCCESSFUL on success
+ * @return	<0 on failure
+ *****************************************************************************/
+int qdma_set_cnt_thresh(unsigned long dev_hndl, unsigned int *cnt_th);
+
+/*****************************************************************************/
+/**
+ * qdma_get_cnt_thresh() - Handler function to get the counter thresh value
+ *
+ * @param[in]	dev_hndl:	qdma device handle
+ *
+ *
+ * @return	counter threshold values  on success
+ * @return	<0 on failure
+ *****************************************************************************/
+unsigned int qdma_get_cnt_thresh(unsigned long dev_hndl, u32 *cnt_th);
+#endif
+
+#endif
diff --git a/QDMA/linux-kernel/libqdma/libqdma_export.c b/QDMA/linux-kernel/libqdma/libqdma_export.c
new file mode 100644
index 0000000..50a88bc
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/libqdma_export.c
@@ -0,0 +1,2037 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+/**
+ * @file
+ * @brief This file contains the definitions for libqdma interfaces
+ *
+ */
+#define pr_fmt(fmt)	KBUILD_MODNAME ":%s: " fmt, __func__
+
+#include "libqdma_export.h"
+
+#include "qdma_descq.h"
+#include "qdma_device.h"
+#include "qdma_thread.h"
+#include "qdma_regs.h"
+#include "qdma_context.h"
+#include "qdma_intr.h"
+#include "qdma_st_c2h.h"
+#include "thread.h"
+#include "version.h"
+
+#ifdef DEBUGFS
+#include "qdma_debugfs_queue.h"
+
+/** debugfs root */
+struct dentry *qdma_debugfs_root;
+#endif
+
+#define QDMA_Q_PEND_LIST_COMPLETION_TIMEOUT 1000 /* msec */
+
+struct drv_mode_name mode_name_list[] = {
+	{ AUTO_MODE,			"auto"},
+	{ POLL_MODE,			"poll"},
+	{ DIRECT_INTR_MODE,		"direct interrupt"},
+	{ INDIRECT_INTR_MODE,	"indirect interrupt"},
+	{ LEGACY_INTR_MODE,		"legacy interrupt"}
+};
+/* ********************* static function definitions ************************ */
+/*****************************************************************************/
+/**
+ * qdma_request_wait_for_cmpl() - static function to monitor the
+ *								wait completion
+ *
+ * @param[in]	xdev:	pointer to xlnx_dma_dev structure
+ * @param[in]	descq:	pointer to qdma_descq structure
+ * @param[in]	req:	qdma request
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+static int qdma_request_wait_for_cmpl(struct xlnx_dma_dev *xdev,
+			struct qdma_descq *descq, struct qdma_request *req)
+{
+	struct qdma_sgt_req_cb *cb = qdma_req_cb_get(req);
+
+	/** if timeout is mentioned in the request,
+	 *  wait until the timeout occurs or wait until the
+	 *  call back is completed
+	 */
+
+	if (req->timeout_ms)
+		qdma_waitq_wait_event_timeout(cb->wq, cb->done,
+			msecs_to_jiffies(req->timeout_ms));
+	else
+		qdma_waitq_wait_event(cb->wq, cb->done);
+
+	lock_descq(descq);
+	/** if the call back is not done, request timed out
+	 *  delete the request list
+	 */
+	if (!cb->done)
+		list_del(&cb->list);
+
+	/** if the call back is not done but the status is updated
+	 *  return i/o error
+	 */
+	if (!cb->done || cb->status) {
+		pr_info("%s: req 0x%p, %c,%u,%u/%u,0x%llx, done %d, err %d, tm %u.\n",
+				descq->conf.name,
+				req, req->write ? 'W' : 'R',
+				cb->offset,
+				cb->left,
+				req->count,
+				req->ep_addr,
+				cb->done,
+				cb->status,
+			req->timeout_ms);
+		qdma_descq_dump(descq, NULL, 0, 1);
+		unlock_descq(descq);
+
+		return -EIO;
+	}
+
+	unlock_descq(descq);
+	return 0;
+}
+
+/*****************************************************************************/
+/**
+ * qdma_request_submit_st_c2h() - static function to handle the
+ *							st c2h request
+ *
+ * @param[in]	xdev:	pointer to xlnx_dma_dev structure
+ * @param[in]	descq:	pointer to qdma_descq structure
+ * @param[in]	req:	qdma request
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+static ssize_t qdma_request_submit_st_c2h(struct xlnx_dma_dev *xdev,
+			struct qdma_descq *descq, struct qdma_request *req)
+{
+	struct qdma_dev *qdev = xdev_2_qdev(xdev);
+	struct qdma_sgt_req_cb *cb = qdma_req_cb_get(req);
+	int wait = req->fp_done ? 0 : 1;
+	int rv = 0;
+
+	/** make sure that qdev is not NULL, else return error */
+	if  (!qdev) {
+		pr_err("dev %s, qdev null.\n",
+			dev_name(&xdev->conf.pdev->dev));
+		return QDMA_ERR_INVALID_QDMA_DEVICE;
+	}
+
+	pr_debug("%s: data len %u, sgl 0x%p, sgl cnt %u, tm %u ms.\n",
+			descq->conf.name,
+			req->count, req->sgl, req->sgcnt, req->timeout_ms);
+
+	/** get the request count */
+	cb->left = req->count;
+
+	lock_descq(descq);
+	if (descq->q_stop_wait) {
+		unlock_descq(descq);
+		return 0;
+	}
+	if ((descq->q_state == Q_STATE_ONLINE) &&
+			!descq->q_stop_wait) {
+		/* add to pend list even before cidx/pidx update as it could
+		 *  cause an interrupt and may miss processing of writeback
+		 */
+		list_add_tail(&cb->list, &descq->pend_list);
+		/* any rcv'ed packet not yet read ? */
+		/** read the data from the device */
+		descq_st_c2h_read(descq, req, 1, 1);
+		if (!cb->left) {
+			list_del(&cb->list);
+			unlock_descq(descq);
+			return req->count;
+		}
+		descq->pend_list_empty = 0;
+		unlock_descq(descq);
+	} else {
+		unlock_descq(descq);
+		pr_info("%s descq %s NOT online.\n",
+			xdev->conf.name, descq->conf.name);
+		return -EINVAL;
+	}
+
+	/** if there is a completion thread associated,
+	 *  wake up the completion thread to process the
+	 *  completion status
+	 */
+	if (descq->cmplthp)
+		qdma_kthread_wakeup(descq->cmplthp);
+
+	if (!wait) {
+		pr_debug("%s: cb 0x%p, data len 0x%x NO wait.\n",
+			descq->conf.name, cb, req->count);
+		return 0;
+	}
+
+	/** wait for the request completion */
+	rv = qdma_request_wait_for_cmpl(xdev, descq, req);
+	if (rv < 0) {
+		if (!req->dma_mapped)
+			sgl_unmap(xdev->conf.pdev, req->sgl, req->sgcnt,
+				DMA_FROM_DEVICE);
+		return rv;
+	}
+
+	/** Once the request completion received,
+	 *  return with the number of processed requests
+	 */
+	return req->count - cb->left;
+}
+
+/* ********************* public function definitions ************************ */
+
+/*****************************************************************************/
+/**
+ * qdma_queue_get_config() - retrieve the configuration of a queue
+ *
+ * @param[in]	dev_hndl:	dev_hndl retured from qdma_device_open()
+ * @param[in]	id:		queue index
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+ *
+ * @return	success: if optional message buffer used then strlen of buf,
+ *	otherwise QDMA_OPERATION_SUCCESSFUL
+ * @return	<0: error
+ *****************************************************************************/
+struct qdma_queue_conf *qdma_queue_get_config(unsigned long dev_hndl,
+				unsigned long id, char *buf, int buflen)
+{
+	struct qdma_descq *descq = qdma_device_get_descq_by_id(
+					(struct xlnx_dma_dev *)dev_hndl,
+					id, buf, buflen, 0);
+
+	/** make sure that descq is not NULL
+	 *  return error is it is null else return the config data
+	 */
+	if (descq)
+		return &descq->conf;
+
+	return NULL;
+}
+
+/*****************************************************************************/
+/**
+ * qdma_queue_dump() - display a queue's state in a string buffer
+ *
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	id:		queue index
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+ *
+ * @return	success: if optional message buffer used then strlen of buf,
+ *	otherwise QDMA_OPERATION_SUCCESSFUL
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_queue_dump(unsigned long dev_hndl, unsigned long id, char *buf,
+				int buflen)
+{
+	struct qdma_descq *descq = qdma_device_get_descq_by_id(
+					(struct xlnx_dma_dev *)dev_hndl, id,
+					buf, buflen, 0);
+	struct hw_descq_context ctxt;
+	int len = 0;
+	int rv;
+#ifndef __QDMA_VF__
+	int ring_index = 0;
+	u32 intr_ctxt[4];
+	int i = 0;
+#endif
+
+	if (!descq)
+		return -EINVAL;
+
+	/** Make sure that buf and buflen is not invalid */
+	if (!buf || !buflen)
+		return QDMA_ERR_INVALID_INPUT_PARAM;
+
+	/** read the descq data to dump */
+	qdma_descq_dump(descq, buf, buflen, 1);
+	len = strlen(buf);
+
+	/** read the descq context for the given qid */
+	rv = qdma_descq_context_read(descq->xdev, descq->qidx_hw,
+				descq->conf.st, descq->conf.c2h, &ctxt);
+	if (rv < 0) {
+		len += sprintf(buf + len, "%s read context failed %d.\n",
+				descq->conf.name, rv);
+		return rv;
+	}
+
+	/** format the output for all contexts */
+	len += sprintf(buf + len,
+	"\tSW CTXT:    [4]:0x%08x [3]:0x%08x [2]:0x%08x [1]:0x%08x [0]:0x%08x\n",
+	ctxt.sw[4], ctxt.sw[3], ctxt.sw[2], ctxt.sw[1], ctxt.sw[0]);
+
+	len += sprintf(buf + len,
+			"\tHW CTXT:    [1]:0x%08x [0]:0x%08x\n",
+			ctxt.hw[1], ctxt.hw[0]);
+
+	len += sprintf(buf + len,
+			"\tCR CTXT:    0x%08x\n", ctxt.cr[0]);
+
+	/** incase of ST C2H,
+	 *  add completion and prefetch context to the output
+	 */
+	if (descq->conf.c2h && descq->conf.st) {
+		len += sprintf(buf + len,
+	"\tCMPT CTXT:  [4]:0x%08x [3]:0x%08x [2]:0x%08x [1]:0x%08x [0]:0x%08x\n",
+	ctxt.cmpt[4], ctxt.cmpt[3], ctxt.cmpt[2], ctxt.cmpt[1], ctxt.cmpt[0]);
+
+		len += sprintf(buf + len,
+			"\tPFTCH CTXT: [1]:0x%08x [0]:0x%08x\n",
+			ctxt.prefetch[1], ctxt.prefetch[0]);
+	}
+
+#ifndef __QDMA_VF__
+	/** if interrupt aggregation is enabled
+	 *  add the interrupt context
+	 */
+	if ((descq->xdev->conf.qdma_drv_mode == INDIRECT_INTR_MODE) ||
+			(descq->xdev->conf.qdma_drv_mode == AUTO_MODE)) {
+		for (i = 0; i < QDMA_NUM_DATA_VEC_FOR_INTR_CXT; i++) {
+			ring_index = get_intr_ring_index(
+					descq->xdev,
+					(i + descq->xdev->dvec_start_idx));
+			rv = qdma_intr_context_read(descq->xdev,
+						ring_index,
+						4,
+						intr_ctxt);
+			if (rv < 0) {
+				len += sprintf(buf + len,
+					"%s read intr context failed %d.\n",
+					descq->conf.name, rv);
+				return rv;
+			}
+
+			len += sprintf(buf + len,
+			"\tINTR_CTXT[%d]:	[3]:0x%08x [2]:0x%08x [1]:0x%08x [0]:0x%08x\n",
+			ring_index,
+			intr_ctxt[3],
+			intr_ctxt[2],
+			intr_ctxt[1],
+			intr_ctxt[0]);
+		}
+	}
+
+	if (descq->xdev->stm_en) {
+		if (descq->conf.st &&
+		    (descq->conf.c2h || descq->conf.desc_bypass)) {
+			struct stm_descq_context stm_hw;
+
+			memset(&stm_hw, 0, sizeof(stm_hw));
+			/** read stm context */
+			rv = qdma_descq_stm_read(descq->xdev, descq->qidx_hw,
+						 descq->conf.pipe_flow_id,
+						 descq->conf.c2h, false, true,
+						 &stm_hw);
+			if (rv < 0) {
+				len += sprintf(buf + len,
+						"%s read stm-context failed %d.\n",
+					       descq->conf.name, rv);
+				return rv;
+			}
+
+			len += sprintf(buf + len,
+				       "\tSTM CTXT:    [5]:0x%08x [4]:0x%08x [3]:0x%08x [2]:0x%08x [1]:0x%08x [0]:0x%08x\n",
+				       stm_hw.stm[5], stm_hw.stm[4],
+				       stm_hw.stm[3], stm_hw.stm[2],
+				       stm_hw.stm[1], stm_hw.stm[0]);
+
+			/** read stm can */
+			rv = qdma_descq_stm_read(descq->xdev, descq->qidx_hw,
+						 descq->conf.pipe_flow_id,
+						 descq->conf.c2h, false, false,
+						 &stm_hw);
+			if (rv < 0) {
+				len += sprintf(buf + len,
+						"%s read stm-can failed %d.\n",
+					    descq->conf.name, rv);
+				return rv;
+			}
+
+			len += sprintf(buf + len,
+				       "\tSTM CAN:     [4]:0x%08x [3]:0x%08x [2]:0x%08x [1]:0x%08x [0]:0x%08x\n",
+				       stm_hw.stm[4], stm_hw.stm[3],
+				       stm_hw.stm[2], stm_hw.stm[1],
+				       stm_hw.stm[0]);
+
+			/** read stm c2h map or h2c map */
+			rv = qdma_descq_stm_read(descq->xdev, descq->qidx_hw,
+						 descq->conf.pipe_flow_id,
+						 descq->conf.c2h, true, false,
+						 &stm_hw);
+			if (rv < 0) {
+				len += sprintf(buf + len,
+						"%s read stm-map failed %d.\n",
+					    descq->conf.name, rv);
+				return rv;
+			}
+
+			if (descq->conf.c2h)
+				len += sprintf(buf + len,
+					       "\tSTM C2H MAP: [0]:0x%08x\n",
+					       stm_hw.stm[0]);
+			else
+				len += sprintf(buf + len,
+					       "\tSTM H2C MAP: [4]:0x%08x [3]:0x%08x [2]:0x%08x [1]:0x%08x [0]:0x%08x\n",
+					       stm_hw.stm[4], stm_hw.stm[3],
+					       stm_hw.stm[2], stm_hw.stm[1],
+					       stm_hw.stm[0]);
+		}
+	}
+#endif
+	len += sprintf(buf + len,
+			"\ttotal descriptor processed:    %llu\n",
+			descq->total_cmpl_descs);
+	/** set the buffer end with \0 and return the buffer length */
+	return len;
+}
+
+/*****************************************************************************/
+/**
+ * qdma_queue_dump_desc() - display a queue's descriptor ring from index start
+ *							~ end in a string buffer
+ *
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	id:		queue index
+ * @param[in]	start:		start index
+ * @param[in]	end:		end index
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+ *
+ * @return	success: if optional message buffer used then strlen of buf,
+ *	otherwise QDMA_OPERATION_SUCCESSFUL
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_queue_dump_desc(unsigned long dev_hndl, unsigned long id,
+			unsigned int start, unsigned int end, char *buf,
+			int buflen)
+{
+	struct qdma_descq *descq = NULL;
+	int len = 0;
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+
+	/** Assume that sufficient buflen is provided
+	 *  make sure that device handle provided is valid
+	 */
+	if (!xdev || !buf || !buflen)
+		return QDMA_ERR_INVALID_INPUT_PARAM;
+
+	/** get the descq details based on the qid provided */
+	descq = qdma_device_get_descq_by_id(xdev, id, buf, buflen, 1);
+	if (!descq)
+		return QDMA_ERR_INVALID_QIDX;
+
+	/** dump the queue state */
+	len = qdma_descq_dump_state(descq, buf, buflen);
+	if (descq->q_state != Q_STATE_ONLINE)
+		return len;
+
+	/** dump the queue descriptor state */
+	len += qdma_descq_dump_desc(descq, start, end, buf + len, buflen - len);
+	return len;
+}
+
+/*****************************************************************************/
+/**
+ * qdma_queue_dump_cmpt() - display a queue's descriptor ring from index start
+ *							~ end in a string buffer
+ *
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	id:		queue index
+ * @param[in]	start:		start index
+ * @param[in]	end:		end index
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+ *
+ * @return	success: if optional message buffer used then strlen of buf,
+ *	otherwise QDMA_OPERATION_SUCCESSFUL
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_queue_dump_cmpt(unsigned long dev_hndl, unsigned long id,
+			unsigned int start, unsigned int end, char *buf,
+			int buflen)
+{
+	struct qdma_descq *descq = qdma_device_get_descq_by_id(
+					(struct xlnx_dma_dev *)dev_hndl,
+					id, buf, buflen, 1);
+	int len = 0;
+
+	/** make sure that descq is not NULL, else return error */
+	if (!descq)
+		return QDMA_ERR_INVALID_QIDX;
+
+	/** dump the descriptor state */
+	len = qdma_descq_dump_state(descq, buf, buflen);
+	/** if the descriptor is in online state,
+	 *  then, dump the completion state
+	 */
+	if (descq->q_state == Q_STATE_ONLINE)
+		len += qdma_descq_dump_cmpt(descq, start, end, buf + len,
+				buflen - len);
+
+	return len;
+}
+
+/* TODO: Currently this interface is not being used by any application.
+ * Enable the code when needed !
+ */
+#if 0
+/*****************************************************************************/
+/**
+ * qdma_queue_get_buf_sz() - to get queue's ch_buf_sz
+ *
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	id:		queue index
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+ *
+ * @return	success: if optional message buffer used then strlen of buf,
+ *	otherwise QDMA_OPERATION_SUCCESSFUL
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_queue_get_buf_sz(unsigned long dev_hndl, unsigned long id,
+			char *buf,
+			int buflen)
+{
+	struct qdma_descq *descq = NULL;
+	int len = 0;
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+
+	/** Assume that sufficient buflen is provided
+	 *  make sure that device handle provided is valid
+	 */
+	if (!xdev || !buf || !buflen)
+		return QDMA_ERR_INVALID_INPUT_PARAM;
+
+	/** get the descq details based on the qid provided */
+	descq = qdma_device_get_descq_by_id(xdev, id, buf, buflen, 1);
+	if (!descq)
+		return QDMA_ERR_INVALID_QIDX;
+
+	/** dump the queue state */
+	len = qdma_descq_dump_state(descq, buf, buflen);
+	if (descq->q_state != Q_STATE_ONLINE)
+		return len;
+
+	/** dump the queue buf_sz */
+
+	/* reg = QDMA_REG_C2H_BUF_SZ_BASE + (descq->conf.c2h_buf_sz_idx)*4; */
+	/* buf_sz = __read_reg(xdev, reg); */
+	buflen = snprintf(buf, buflen, "%d", descq->conf.c2h_bufsz);
+	return descq->conf.c2h_bufsz;
+}
+#endif
+/*****************************************************************************/
+/**
+ * qdma_queue_remove() - remove a queue (i.e., offline, NOT ready for dma)
+ *
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	id:		queue index
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_queue_remove(unsigned long dev_hndl, unsigned long id, char *buf,
+			int buflen)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+	struct qdma_descq *descq =
+		qdma_device_get_descq_by_id(xdev, id, buf, buflen, 1);
+#ifdef DEBUGFS
+	struct qdma_descq *pair_descq =
+		qdma_device_get_pair_descq_by_id(xdev, id, buf, buflen, 1);
+#endif
+	struct qdma_dev *qdev = xdev_2_qdev(xdev);
+
+	/** make sure that qdev is not NULL, else return error */
+	if  (!qdev) {
+		pr_err("dev %s, qdev null.\n",
+			dev_name(&xdev->conf.pdev->dev));
+		return QDMA_ERR_INVALID_QDMA_DEVICE;
+	}
+
+	/** make sure that descq is not NULL, else return error */
+	if (!descq)
+		return QDMA_ERR_INVALID_QIDX;
+
+	if (descq->q_state != Q_STATE_ENABLED) {
+		if (buf && buflen) {
+			int len = snprintf(buf, buflen,
+					"queue %s, id %u cannot be deleted. Invalid q state\n",
+					descq->conf.name, descq->conf.qidx);
+
+			buf[len] = '\0';
+		}
+		return QDMA_ERR_INVALID_DESCQ_STATE;
+
+	}
+
+#ifdef DEBUGFS
+	if (pair_descq)
+		/** if pair_descq is not NULL, it means the queue
+		 * is in ENABLED state
+		 */
+		dbgfs_queue_exit(&descq->conf, pair_descq);
+	else
+		dbgfs_queue_exit(&descq->conf, NULL);
+#endif
+	qdma_descq_cleanup(descq);
+
+	lock_descq(descq);
+	descq->q_state = Q_STATE_DISABLED;
+	unlock_descq(descq);
+
+	spin_lock(&qdev->lock);
+	if (descq->conf.c2h)
+		qdev->c2h_qcnt--;
+	else
+		qdev->h2c_qcnt--;
+	spin_unlock(&qdev->lock);
+#ifndef __QDMA_VF__
+	if (xdev->conf.qdma_drv_mode == LEGACY_INTR_MODE)
+		intr_legacy_clear(descq);
+#endif
+	if (buf && buflen) {
+		int len = snprintf(buf, buflen, "queue %s, id %u deleted.\n",
+				descq->conf.name, descq->conf.qidx);
+		buf[len] = '\0';
+	}
+	pr_debug("queue %s, id %u deleted.\n",
+				descq->conf.name, descq->conf.qidx);
+
+	return QDMA_OPERATION_SUCCESSFUL;
+}
+
+/*****************************************************************************/
+/**
+ * qdma_queue_config() - configure the queue with qcong parameters
+ *
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	qid:		queue id
+ * @param[in]	qconf:		queue configuration parameters
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_queue_config(unsigned long dev_hndl, unsigned long qid,
+			struct qdma_queue_conf *qconf, char *buf, int buflen)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+	struct qdma_dev *qdev = xdev_2_qdev(xdev);
+	struct qdma_descq *descq = NULL;
+
+	/** make sure that qdev is not NULL, else return error */
+	if  (!qdev) {
+		pr_err("dev %s, qdev null.\n",
+			dev_name(&xdev->conf.pdev->dev));
+		return QDMA_ERR_INVALID_QDMA_DEVICE;
+	}
+
+	/** get the descq for the given qid */
+	descq = qdma_device_get_descq_by_id(xdev, qid, NULL, 0, 0);
+	if (!descq) {
+		pr_err("Invalid queue ID! qid=%lu, max=%u\n", qid, qdev->qmax);
+		return QDMA_ERR_INVALID_QIDX;
+	}
+
+	lock_descq(descq);
+	/** if descq is not in disabled state, return error as
+	 *  queue is enabled/in use, else enable the descq
+	 */
+	if (descq->q_state != Q_STATE_DISABLED) {
+		pr_err("queue_%lu already configured!\n", qid);
+		unlock_descq(descq);
+		return -EINVAL;
+	}
+	descq->q_state = Q_STATE_ENABLED;
+	unlock_descq(descq);
+
+	spin_lock(&qdev->lock);
+	/** increment the queue count */
+	if (qconf->c2h)
+		qdev->c2h_qcnt += 1;
+	else
+		qdev->h2c_qcnt += 1;
+	spin_unlock(&qdev->lock);
+
+	/** configure descriptor queue */
+	qdma_descq_config(descq, qconf, 0);
+
+	return QDMA_OPERATION_SUCCESSFUL;
+}
+
+/*****************************************************************************/
+/**
+ * qdma_queue_list() - display all configured queues in a string buffer
+ *
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+ *
+ * @return	success: if optional message buffer used then strlen of buf,
+ *	otherwise QDMA_OPERATION_SUCCESSFUL
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_queue_list(unsigned long dev_hndl, char *buf, int buflen)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+	struct qdma_dev *qdev = xdev_2_qdev(xdev);
+	struct qdma_descq *descq = NULL;
+	char *cur = buf;
+	char * const end = buf + buflen;
+	int i;
+
+	/** make sure that qdev is not NULL, else return error */
+	if  (!qdev) {
+		pr_err("dev %s, qdev null.\n", dev_name(&xdev->conf.pdev->dev));
+		return QDMA_ERR_INVALID_QDMA_DEVICE;
+	}
+
+	/** make sure that input buffer is not empty, else return error */
+	if (!buf || !buflen) {
+		pr_warn("invalid argument: buf=%p, buflen=%d", buf, buflen);
+		return QDMA_ERR_INVALID_INPUT_PARAM;
+	}
+
+	cur += snprintf(cur, end - cur, "H2C Q: %u, C2H Q: %u.\n",
+				qdev->h2c_qcnt, qdev->c2h_qcnt);
+	if (cur >= end)
+		goto handle_truncation;
+
+	/** traverse through the h2c and c2h queue list
+	 *  and dump the descriptors
+	 */
+	if (qdev->h2c_qcnt) {
+		descq = qdev->h2c_descq;
+		for (i = 0; i < qdev->qmax; i++, descq++) {
+			lock_descq(descq);
+			if (descq->q_state != Q_STATE_DISABLED)
+				cur +=
+				qdma_descq_dump(descq, cur, end - cur, 0);
+			unlock_descq(descq);
+
+			if (cur >= end)
+				goto handle_truncation;
+		}
+	}
+
+	if (qdev->c2h_qcnt) {
+		descq = qdev->c2h_descq;
+		for (i = 0; i < qdev->qmax; i++, descq++) {
+			lock_descq(descq);
+			if (descq->q_state != Q_STATE_DISABLED)
+				cur +=
+				qdma_descq_dump(descq, cur, end - cur, 0);
+			unlock_descq(descq);
+
+			if (cur >= end)
+				goto handle_truncation;
+		}
+	}
+
+	return cur - buf;
+
+handle_truncation:
+
+	return cur - buf;
+}
+
+/*****************************************************************************/
+/**
+ * qdma_queue_reconfig() - reconfigure the existing queue with
+ *							modified configuration
+ *
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	id:		existing queue id
+ * @param[in]	qconf:		queue configuration parameters
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_queue_reconfig(unsigned long dev_hndl, unsigned long id,
+				struct qdma_queue_conf *qconf,
+				char *buf, int buflen)
+{
+	struct qdma_descq *descq = qdma_device_get_descq_by_id(
+					(struct xlnx_dma_dev *)dev_hndl,
+					 id, buf, buflen, 1);
+
+	/** make sure that descq is not NULL, else return error */
+	if (!descq)
+		return QDMA_ERR_INVALID_QIDX;
+
+	lock_descq(descq);
+	/** if descq is not in disabled state then,
+	 *  return error as queue configuration can not be changed
+	 */
+	if (descq->q_state != Q_STATE_ENABLED) {
+		pr_info("%s invalid state, q_state %d.\n",
+			descq->conf.name, descq->q_state);
+		if (buf && buflen) {
+			int l = strlen(buf);
+
+			l += sprintf(buf + l,
+				"%s invalid state, q_state %d.\n",
+				descq->conf.name, descq->q_state);
+			buf[l] = '\0';
+		}
+		unlock_descq(descq);
+		return QDMA_ERR_INVALID_DESCQ_STATE;
+	}
+	/** Update the qconfig with new configuration provided */
+	qdma_descq_config(descq, qconf, 1);
+	unlock_descq(descq);
+
+	return 0;
+}
+
+/*****************************************************************************/
+/**
+ * qdma_queue_add() - add a queue
+ *
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	qconf:		queue configuration parameters
+ * @param[in]	qhndl:	list of unsigned long values that are the opaque qhndl
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_queue_add(unsigned long dev_hndl, struct qdma_queue_conf *qconf,
+			unsigned long *qhndl, char *buf, int buflen)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+	struct qdma_dev *qdev = xdev_2_qdev(xdev);
+	struct qdma_descq *descq;
+	struct qdma_descq *pairq;
+	unsigned int qcnt;
+	char *cur = buf;
+	char * const end = buf + buflen;
+	int rv = QDMA_OPERATION_SUCCESSFUL;
+
+	/** If qconf is NULL, return error*/
+	if (!qconf)
+		return QDMA_ERR_INVALID_INPUT_PARAM;
+
+#ifdef __QDMA_VF__
+	/** allow only Q0 for if the VF Qmax is not set */
+	if ((xdev->conf.cur_cfg_state == QMAX_CFG_INITIAL) &&
+			(qconf->qidx > 0)) {
+		rv = QDMA_ERR_INVALID_QIDX;
+		if (buf && buflen) {
+			cur += snprintf(cur, end - cur,
+					"qdma%05x invalid idx %u >= 1.\n",
+					xdev->conf.bdf, qconf->qidx);
+			if (cur >= end)
+				goto handle_truncation;
+		}
+		return rv;
+	}
+#endif
+
+	/** If qhndl is NULL, return error*/
+	if (!qhndl) {
+		pr_warn("qhndl NULL.\n");
+		rv = QDMA_ERR_INVALID_QIDX;
+		if (buf && buflen) {
+			cur += snprintf(cur, end - cur,
+					"%s, add, qhndl NULL.\n",
+					xdev->conf.name);
+			if (cur >= end)
+				goto handle_truncation;
+		}
+		return rv;
+	}
+
+	/** reset qhandle to an invalid value
+	 * can't use 0 or NULL here because queue idx 0 has same value
+	 */
+	*qhndl = QDMA_QUEUE_IDX_INVALID;
+
+	/** check if the requested mode is enabled?
+	 *  the request modes are read from the HW
+	 *  before serving any request, first check if the
+	 *  HW has the capability or not, else return error
+	 */
+	if ((qconf->st && !xdev->st_mode_en) ||
+	    (!qconf->st && !xdev->mm_mode_en)) {
+		pr_warn("%s, %s mode not enabled.\n",
+			xdev->conf.name, qconf->st ? "ST" : "MM");
+		rv = QDMA_ERR_INTERFACE_NOT_ENABLED_IN_DEVICE;
+		if (buf && buflen) {
+			cur += snprintf(cur, end - cur,
+				"qdma%05x %s mode not enabled.\n",
+				xdev->conf.bdf, qconf->st ? "ST" : "MM");
+			if (cur >= end)
+				goto handle_truncation;
+		}
+		return rv;
+	}
+
+	spin_lock(&qdev->lock);
+	/** if incase the qidx is not QDMA_QUEUE_IDX_INVALID
+	 *  then, make sure that the qidx range falls between
+	 *  0 - qdev->qmax, else return error
+	 */
+	if ((qconf->qidx != QDMA_QUEUE_IDX_INVALID) &&
+	    (qconf->qidx >= qdev->qmax)) {
+		spin_unlock(&qdev->lock);
+		rv = QDMA_ERR_INVALID_QIDX;
+		if (buf && buflen) {
+			cur += snprintf(cur, end - cur,
+				"qdma%05x invalid idx %u >= %u.\n",
+				xdev->conf.bdf, qconf->qidx, qdev->qmax);
+			if (cur >= end)
+				goto handle_truncation;
+		}
+		return rv;
+	}
+
+	/** check if any free qidx available
+	 *  if qcnt is >= qdev->qmax, return error as
+	 *  no free queues found and descq is full
+	 */
+	qcnt = qconf->c2h ? qdev->c2h_qcnt : qdev->h2c_qcnt;
+	if (qcnt >= qdev->qmax) {
+		spin_unlock(&qdev->lock);
+		pr_warn("No free queues %u/%u.\n", qcnt, qdev->qmax);
+		rv = QDMA_ERR_DESCQ_FULL;
+		if (buf && buflen) {
+			cur += snprintf(cur, end - cur,
+					"qdma%05x No free queues %u/%u.\n",
+					xdev->conf.bdf, qcnt, qdev->qmax);
+			if (cur >= end)
+				goto handle_truncation;
+		}
+		return rv;
+	}
+
+	/** add to the count first, need to rewind if failed later*/
+	if (qconf->c2h)
+		qdev->c2h_qcnt++;
+	else
+		qdev->h2c_qcnt++;
+	spin_unlock(&qdev->lock);
+
+	if (qconf->c2h) {
+		descq = qdev->c2h_descq;
+		pairq = qdev->h2c_descq;
+	} else {
+		descq = qdev->h2c_descq;
+		pairq = qdev->c2h_descq;
+	}
+	/** need to allocate a free qidx if it has an invalid id
+	 *  ie. qidx is not specified in the add request
+	 */
+	if (qconf->qidx == QDMA_QUEUE_IDX_INVALID) {
+		int i;
+
+		/** loop through the qlist till qmax and find an empty descq*/
+		for (i = 0; i < qdev->qmax; i++, descq++, pairq++) {
+			/** make sure the queue pair are the same mode*/
+			lock_descq(pairq);
+			if ((pairq->q_state != Q_STATE_DISABLED)
+					&& qconf->st != pairq->conf.st) {
+				unlock_descq(pairq);
+				continue;
+			}
+			unlock_descq(pairq);
+
+			lock_descq(descq);
+			if (descq->q_state != Q_STATE_DISABLED) {
+				unlock_descq(descq);
+				continue;
+			}
+			/** set the descq as enabled*/
+			descq->q_state = Q_STATE_ENABLED;
+			/** assign the qidx */
+			qconf->qidx = i;
+			unlock_descq(descq);
+
+			break;
+		}
+
+		/** we are reached here means no free descq found
+		 *  decrement the queue count and return error
+		 */
+		if (i == qdev->qmax) {
+			pr_warn("no free %s qp found, %u.\n",
+				qconf->st ? "ST" : "MM", qdev->qmax);
+			rv = QDMA_ERR_DESCQ_FULL;
+			if (buf && buflen) {
+				cur += snprintf(cur, end - cur,
+					"qdma%05x no %s QP, %u.\n",
+					xdev->conf.bdf,
+					qconf->st ? "ST" : "MM", qdev->qmax);
+				if (cur >= end)
+					goto handle_truncation;
+			}
+			goto rewind_qcnt;
+		}
+	} else { /** qidx specified in the given add request*/
+		/** find the queue pair for the given qidx*/
+		pairq += qconf->qidx;
+		descq += qconf->qidx;
+
+		/** make sure the queue pair are the same mode*/
+		lock_descq(pairq);
+		if ((pairq->q_state != Q_STATE_DISABLED)
+				&& (qconf->st != pairq->conf.st)) {
+			unlock_descq(pairq);
+			rv = -EINVAL;
+			if (buf && buflen) {
+				cur += snprintf(cur, end - cur,
+					"Need to have same mode for Q pair.\n");
+				if (cur >= end)
+					goto handle_truncation;
+			}
+			goto rewind_qcnt;
+		}
+		unlock_descq(pairq);
+
+		lock_descq(descq);
+		/** if the descq for the given qidx is already in enabled state,
+		 *  then the queue is in use, return error
+		 */
+		if (descq->q_state != Q_STATE_DISABLED) {
+			unlock_descq(descq);
+			pr_info("descq idx %u already added.\n", qconf->qidx);
+			rv = QDMA_ERR_DESCQ_IDX_ALREADY_ADDED;
+			if (buf && buflen) {
+				cur += snprintf(cur, end - cur,
+						"q idx %u already added.\n",
+						qconf->qidx);
+			}
+			goto rewind_qcnt;
+		}
+		descq->q_state = Q_STATE_ENABLED;
+		unlock_descq(descq);
+	}
+
+	/** prepare the queue resources*/
+	rv = qdma_device_prep_q_resource(xdev);
+	if (rv < 0) {
+#ifdef __QDMA_VF__
+		lock_descq(descq);
+		descq->q_state = Q_STATE_DISABLED;
+		unlock_descq(descq);
+#endif
+		goto rewind_qcnt;
+	}
+#ifndef __QDMA_VF__
+	if (xdev->conf.qdma_drv_mode == LEGACY_INTR_MODE) {
+		rv = intr_legacy_setup(descq);
+		if ((rv > 0) && buf && buflen) {
+			/** support only 1 queue in legacy interrupt mode */
+			intr_legacy_clear(descq);
+			descq->q_state = Q_STATE_DISABLED;
+			pr_debug("qdma%05x - Q%u - No free queues %u/%u.\n",
+					xdev->conf.bdf, descq->conf.qidx,
+					rv, 1);
+			rv = -EINVAL;
+			cur += snprintf(cur, end - cur,
+					"qdma%05x No free queues %u/%u.\n",
+					xdev->conf.bdf, qcnt, 1);
+			goto rewind_qcnt;
+		} else if ((rv < 0) && buf && buflen) {
+			rv = -EINVAL;
+			descq->q_state = Q_STATE_DISABLED;
+			pr_debug("qdma%05x Legacy interrupt setup failed.\n",
+					xdev->conf.bdf);
+			cur += snprintf(cur, end - cur,
+					"qdma%05x Legacy interrupt setup failed.\n",
+					xdev->conf.bdf);
+			goto rewind_qcnt;
+		}
+	}
+#endif
+
+	/** fill in config. info */
+	qdma_descq_config(descq, qconf, 0);
+
+	/** copy back the name in config*/
+	memcpy(qconf->name, descq->conf.name, QDMA_QUEUE_NAME_MAXLEN);
+	*qhndl = (unsigned long)descq->conf.qidx;
+	if (qconf->c2h)
+		*qhndl += qdev->qmax;
+
+#ifdef DEBUGFS
+	rv = dbgfs_queue_init(&descq->conf, pairq, xdev->dbgfs_queues_root);
+	if (rv < 0) {
+		pr_err("failed to create queue debug files for the queueu %d\n",
+				descq->conf.qidx);
+	}
+#endif
+
+	pr_debug("added %s, %s, qidx %u.\n",
+		descq->conf.name, qconf->c2h ? "C2H" : "H2C", qconf->qidx);
+	if (buf && buflen) {
+		cur += snprintf(cur, end - cur, "%s %s added.\n",
+			descq->conf.name, qconf->c2h ? "C2H" : "H2C");
+		if (cur >= end)
+			goto handle_truncation;
+	}
+
+	return QDMA_OPERATION_SUCCESSFUL;
+
+rewind_qcnt:
+	spin_lock(&qdev->lock);
+	if (qconf->c2h)
+		qdev->c2h_qcnt--;
+	else
+		qdev->h2c_qcnt--;
+	spin_unlock(&qdev->lock);
+
+	return rv;
+
+handle_truncation:
+	*buf = '\0';
+	return rv;
+}
+
+/*****************************************************************************/
+/**
+ * qdma_queue_start() - start a queue (i.e, online, ready for dma)
+ *
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	id:		queue index
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_queue_start(unsigned long dev_hndl, unsigned long id,
+		     char *buf, int buflen)
+{
+	struct qdma_descq *descq = qdma_device_get_descq_by_id(
+					(struct xlnx_dma_dev *)dev_hndl,
+					 id, buf, buflen, 1);
+	int rv;
+
+	/** make sure that descq is not NULL, else return error*/
+	if (!descq)
+		return QDMA_ERR_INVALID_QIDX;
+
+	/** complete the queue configuration*/
+	rv = qdma_descq_config_complete(descq);
+	if (rv < 0) {
+		pr_err("%s 0x%x setup failed.\n",
+			descq->conf.name, descq->qidx_hw);
+		if (buf && buflen) {
+			int l = strlen(buf);
+
+			l += snprintf(buf + l, buflen,
+				"%s config failed.\n", descq->conf.name);
+			buf[l] = '\0';
+		}
+		goto free_resource;
+	}
+
+	lock_descq(descq);
+	/** if the descq is not enabled,
+	 *  it is in invalid state, return error
+	 */
+	if (descq->q_state != Q_STATE_ENABLED) {
+		pr_info("%s invalid state, q_status%d.\n",
+			descq->conf.name, descq->q_state);
+		if (buf && buflen) {
+			int l = strlen(buf);
+
+			l += snprintf(buf + l, buflen,
+				"%s invalid state, q_state %d.\n",
+				descq->conf.name, descq->q_state);
+		}
+		unlock_descq(descq);
+		return QDMA_ERR_INVALID_DESCQ_STATE;
+	}
+	unlock_descq(descq);
+	/** allocate the queue resources*/
+	rv = qdma_descq_alloc_resource(descq);
+	if (rv < 0) {
+		if (buf && buflen) {
+			int l = strlen(buf);
+
+			l += snprintf(buf + l, buflen,
+				"%s alloc resource failed.\n",
+				descq->conf.name);
+				buf[l] = '\0';
+		}
+		goto free_resource;
+	}
+
+	/** program the hw contexts*/
+	rv = qdma_descq_prog_hw(descq);
+	if (rv < 0) {
+		pr_err("%s 0x%x setup failed.\n",
+			descq->conf.name, descq->qidx_hw);
+		if (buf && buflen) {
+			int l = strlen(buf);
+
+			l += snprintf(buf + l, buflen,
+				"%s prog. context failed.\n",
+				descq->conf.name);
+			buf[l] = '\0';
+		}
+		goto clear_context;
+	}
+
+	/** Interrupt mode */
+	if (descq->xdev->num_vecs) {	
+		unsigned long flags;
+
+		spin_lock_irqsave(&descq->xdev->lock, flags);
+		list_add_tail(&descq->intr_list,
+		&descq->xdev->dev_intr_info_list[descq->intr_id].intr_list);
+		spin_unlock_irqrestore(&descq->xdev->lock, flags);
+	}
+
+	qdma_thread_add_work(descq);
+
+	if (buf && buflen) {
+		rv = snprintf(buf, buflen, "%s started\n", descq->conf.name);
+		if (rv <= 0 || rv >= buflen)
+			goto clear_context;
+	}
+	/** set the descq to online state*/
+	lock_descq(descq);
+	descq->q_state = Q_STATE_ONLINE;
+	unlock_descq(descq);
+
+	return QDMA_OPERATION_SUCCESSFUL;
+
+clear_context:
+	qdma_descq_context_clear(descq->xdev, descq->qidx_hw, descq->conf.st,
+				descq->conf.c2h, 1);
+free_resource:
+	qdma_descq_free_resource(descq);
+
+	return rv;
+}
+
+#ifndef __QDMA_VF__
+/*****************************************************************************/
+/**
+ * qdma_queue_prog_stm() - Program STM for queue (context, map, etc)
+ *
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	id:		queue index
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_queue_prog_stm(unsigned long dev_hndl, unsigned long id,
+			char *buf, int buflen)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+	struct qdma_descq *descq =
+		qdma_device_get_descq_by_id((struct xlnx_dma_dev *)dev_hndl,
+					    id, buf, buflen, 1);
+	int rv;
+
+	/** make sure that descq is not NULL, else return error*/
+	if (!descq)
+		return QDMA_ERR_INVALID_QIDX;
+
+	if (!descq->conf.st) {
+		pr_info("%s Skipping STM prog for MM queue.\n",
+			descq->conf.name);
+		if (buf && buflen) {
+			int l = strlen(buf);
+
+			l += snprintf(buf + l, buflen,
+				      "%s Skipping STM prog for MM queue.\n",
+				      descq->conf.name);
+		}
+		return QDMA_OPERATION_SUCCESSFUL;
+	}
+
+	if (!xdev->stm_en) {
+		pr_info("%s No STM present; stm_rev %d.\n",
+			descq->conf.name, xdev->stm_rev);
+		if (buf && buflen) {
+			int l = strlen(buf);
+
+			l += snprintf(buf + l, buflen,
+				      "%s No STM present; stm_rev %d.\n",
+				      descq->conf.name, xdev->stm_rev);
+		}
+		return QDMA_ERR_INVALID_PCI_DEV;
+	}
+
+	lock_descq(descq);
+	/** if the descq is not online,
+	 *  it is in invalid state, return error
+	 */
+	if (descq->q_state != Q_STATE_ONLINE) {
+		pr_info("%s invalid state, q_status%d.\n",
+			descq->conf.name, descq->q_state);
+		if (buf && buflen) {
+			int l = strlen(buf);
+
+			l += snprintf(buf + l, buflen,
+				      "%s invalid state, q_state %d.\n",
+				      descq->conf.name, descq->q_state);
+		}
+		unlock_descq(descq);
+		return QDMA_ERR_INVALID_DESCQ_STATE;
+	}
+
+	unlock_descq(descq);
+
+	/** program the stm */
+	rv = qdma_descq_prog_stm(descq, false);
+	if (rv < 0) {
+		pr_err("%s 0x%x STM setup failed.\n",
+		       descq->conf.name, descq->qidx_hw);
+		if (buf && buflen) {
+			int l = strlen(buf);
+
+			l += snprintf(buf + l, buflen,
+				      "%s prog. STM failed.\n",
+				      descq->conf.name);
+			buf[l] = '\0';
+		}
+		return rv;
+	}
+	return QDMA_OPERATION_SUCCESSFUL;
+}
+#endif
+
+/*****************************************************************************/
+/**
+ * qdma_queue_stop() - stop a queue (i.e., offline, NOT ready for dma)
+ *
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	id:		queue index
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_queue_stop(unsigned long dev_hndl, unsigned long id, char *buf,
+			int buflen)
+{
+	struct qdma_descq *descq = qdma_device_get_descq_by_id(
+					(struct xlnx_dma_dev *)dev_hndl,
+					id, buf, buflen, 1);
+	struct qdma_sgt_req_cb *cb, *tmp;
+	struct qdma_request *req;
+	unsigned int pend_list_empty = 0;
+
+	/** make sure that descq is not NULL, else return error */
+	if (!descq)
+		return QDMA_ERR_INVALID_QIDX;
+
+	lock_descq(descq);
+		/** if the descq not online donot proceed */
+	if (descq->q_state != Q_STATE_ONLINE) {
+		pr_info("%s invalid state, q_state %d.\n",
+		descq->conf.name, descq->q_state);
+		if (buf && buflen) {
+			int l = snprintf(buf, buflen,
+					 "queue %s, idx %u stop failed.\n",
+					 descq->conf.name, descq->conf.qidx);
+			if (l <= 0 || l >= buflen) {
+				unlock_descq(descq);
+				return QDMA_ERR_INVALID_INPUT_PARAM;
+			}
+		}
+		unlock_descq(descq);
+		return QDMA_ERR_INVALID_DESCQ_STATE;
+	}
+	pend_list_empty = descq->pend_list_empty;
+
+	descq->q_stop_wait = 1;
+	unlock_descq(descq);
+	if (!pend_list_empty) {
+		qdma_waitq_wait_event_timeout(descq->pend_list_wq,
+			descq->pend_list_empty,
+			msecs_to_jiffies(QDMA_Q_PEND_LIST_COMPLETION_TIMEOUT));
+	}
+	lock_descq(descq);
+	/** free the descq by updating the state */
+	descq->q_state = Q_STATE_ENABLED;
+	descq->q_stop_wait = 0;
+	list_for_each_entry_safe(cb, tmp, &descq->pend_list, list) {
+		req = (struct qdma_request *)cb;
+		cb->req_state = QDMA_REQ_COMPLETE;
+		cb->done = 1;
+		cb->status = -ENXIO;
+		if (req->fp_done) {
+			list_del(&cb->list);
+			req->fp_done(req, 0, -ENXIO);
+		} else
+			qdma_waitq_wakeup(&cb->wq);
+	}
+	list_for_each_entry_safe(cb, tmp, &descq->work_list, list) {
+		req = (struct qdma_request *)cb;
+		cb->req_state = QDMA_REQ_COMPLETE;
+		cb->done = 1;
+		cb->status = -ENXIO;
+		if (req->fp_done) {
+			list_del(&cb->list);
+			req->fp_done(req, 0, -ENXIO);
+		} else
+			qdma_waitq_wakeup(&cb->wq);
+	}
+	unlock_descq(descq);
+
+	/** remove the work thread associated with the current queue */
+	qdma_thread_remove_work(descq);
+
+	/** clear the queue context */
+	qdma_descq_context_clear(descq->xdev, descq->qidx_hw, descq->conf.st,
+				descq->conf.c2h, 0);
+
+	lock_descq(descq);
+	/** if the device is in direct/indirect interrupt mode,
+	 *  delete the interrupt list for the queue
+	 */
+	if ((descq->xdev->conf.qdma_drv_mode != POLL_MODE) &&
+		(descq->xdev->conf.qdma_drv_mode != LEGACY_INTR_MODE)) {
+		unsigned long flags;
+
+		spin_lock_irqsave(&descq->xdev->lock, flags);
+		list_del(&descq->intr_list);
+		spin_unlock_irqrestore(&descq->xdev->lock, flags);
+	}
+#ifndef __QDMA_VF__
+	/** clear stm context/maps */
+	if (descq->xdev->stm_en)
+		qdma_descq_prog_stm(descq, true);
+#endif
+
+	/** free the queue resources */
+	qdma_descq_free_resource(descq);
+	/** free the descq by updating the state */
+	descq->total_cmpl_descs = 0;
+	unlock_descq(descq);
+
+	/** fill the return buffer indicating that queue is stopped */
+	if (buf && buflen) {
+		int len = snprintf(buf, buflen, "queue %s, idx %u stopped.\n",
+				descq->conf.name, descq->conf.qidx);
+		if (len <= 0 || len >= buflen)
+			return QDMA_ERR_INVALID_INPUT_PARAM;
+	}
+	return QDMA_OPERATION_SUCCESSFUL;
+}
+
+/*****************************************************************************/
+/**
+ * qdma_intr_ring_dump() - display the interrupt ring info of a vector
+ *
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	vector_idx:	vector number
+ * @param[in]	start_idx:	interrupt ring start idx
+ * @param[in]	end_idx:	interrupt ring end idx
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_intr_ring_dump(unsigned long dev_hndl, unsigned int vector_idx,
+	int start_idx, int end_idx, char *buf, int buflen)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+	struct qdma_intr_ring *ring_entry;
+	struct intr_coal_conf *coal_entry;
+	int counter = 0;
+	int len = 0;
+	u32 data[2];
+
+	/** if, interrupt aggregation is not enabled,
+	 *  interrupt ring is not created, return error
+	 */
+	if ((xdev->conf.qdma_drv_mode != INDIRECT_INTR_MODE) &&
+			(xdev->conf.qdma_drv_mode != AUTO_MODE)) {
+		pr_info("Interrupt aggregation not enabled\n");
+		if (buf)  {
+			len += sprintf(buf + len,
+					"Interrupt aggregation not enabled\n");
+			buf[len] = '\0';
+		}
+		return -1;
+	}
+
+	/** make sure that vector index is with in the
+	 *  start and end vector limit, else return error
+	 */
+	if ((vector_idx < xdev->dvec_start_idx) ||
+		(vector_idx >=
+		(xdev->dvec_start_idx + QDMA_NUM_DATA_VEC_FOR_INTR_CXT))) {
+		pr_info("Vector idx %d is invalid. Shall be in range: %d -  %d.\n",
+				vector_idx,
+				xdev->dvec_start_idx,
+				(xdev->dvec_start_idx +
+				QDMA_NUM_DATA_VEC_FOR_INTR_CXT - 1));
+		if (buf)  {
+			len += sprintf(buf + len,
+				"Vector idx %d is invalid. Shall be in range: %d -  %d.\n",
+				vector_idx,
+				xdev->dvec_start_idx,
+				(xdev->dvec_start_idx +
+				QDMA_NUM_DATA_VEC_FOR_INTR_CXT - 1));
+			buf[len] = '\0';
+		}
+		return -1;
+	}
+
+	/** get the intr entry based on vector index */
+	coal_entry = xdev->intr_coal_list + (vector_idx - xdev->dvec_start_idx);
+
+	/** make sure that intr ring entry indexes
+	 *  given are with in the range
+	 */
+	if (start_idx > coal_entry->intr_rng_num_entries) {
+		pr_info("start_idx %d is invalid. Shall be less than: %d\n",
+					start_idx,
+					coal_entry->intr_rng_num_entries);
+		if (buf)  {
+			len += sprintf(buf + len,
+					"start_idx %d is invalid. Shall be less than: %d\n",
+					start_idx,
+					coal_entry->intr_rng_num_entries);
+			buf[len] = '\0';
+		}
+		return -1;
+	}
+
+	if (end_idx == -1 || end_idx >= coal_entry->intr_rng_num_entries)
+		end_idx = coal_entry->intr_rng_num_entries - 1;
+
+	if (start_idx == -1)
+		start_idx = 0;
+
+	if (start_idx > end_idx) {
+		pr_info("start_idx can't be greater than end_idx\n");
+		if (buf)  {
+			len += sprintf(buf + len,
+					"start_idx can't be greater than end_idx\n");
+			buf[len] = '\0';
+		}
+		return -1;
+	}
+
+	/** read the ring entries based on the range given and
+	 * update the input buffer with details
+	 */
+	for (counter = start_idx; counter <= end_idx; counter++) {
+		ring_entry = coal_entry->intr_ring_base + counter;
+		memcpy(data, ring_entry, sizeof(u32) * 2);
+		if (buf) {
+			len += sprintf(buf + len,
+				       "intr_ring_entry = %d: 0x%08x 0x%08x\n",
+				       counter, data[1], data[0]);
+			buf[len] = '\0';
+		}
+	}
+
+	return 0;
+}
+
+ /*****************************************************************************/
+ /**
+  * qdma_software_version_info  Provides the qdma software version
+  *
+  * @param[out]   software_version:   libqdma software version
+  *
+  * @return  0: success
+  * @return  <0: error
+  *****************************************************************************/
+int qdma_software_version_info(char *software_version)
+{
+	if (!software_version)
+		return -EINVAL;
+
+	sprintf(software_version, "%s", LIBQDMA_VERSION_STR);
+
+	return 0;
+}
+
+
+#ifdef __QDMA_VF__
+ /*****************************************************************************/
+ /**
+  * qdma_vf_qconf    call for VF to request qmax number of Qs
+  *
+  * @param[in]   dev_hndl:   dev_hndl returned from qdma_device_open()
+  * @param[in]   qmax:   number of qs requested by vf
+  *
+  * @return  0: success
+  * @return  <0: error
+  *****************************************************************************/
+int qdma_vf_qconf(unsigned long dev_hndl, int qmax)
+{
+	int err = 0;
+	u32 qbase = 0;
+	struct qdma_dev *qdev;
+	u32 last_qbase = 0;
+	u32 last_qmax = 0;
+
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+
+	if (!xdev) {
+		pr_err("Invalid dev handle\n");
+		return -EINVAL;
+	}
+
+	qdev = xdev_2_qdev(xdev);
+
+	if (!qdev) {
+		pr_err("Invalid qdev\n");
+		return -EINVAL;
+	}
+
+	/** save the last qbase values for restoring
+	 * if the qconf command failed
+	 */
+	last_qbase = xdev->conf.qsets_base;
+	last_qmax = xdev->conf.qsets_max;
+
+	qdma_device_cleanup(xdev);
+	err = device_set_qconf(xdev, qmax, &qbase);
+	if (err < 0) {
+		pr_err("Setting qconf failed\n");
+		/** upon failure, go back to the last set qmax value */
+		xdev->conf.qsets_base = last_qbase;
+		xdev->conf.qsets_max = last_qmax;
+		qdma_device_init(xdev);
+		return err;
+	}
+	xdev->conf.qsets_base = qbase;
+	xdev->conf.qsets_max = qmax;
+	err  = qdma_device_init(xdev);
+	if (err < 0) {
+		pr_warn("qdma_init failed %d.\n", err);
+		qdma_device_cleanup(xdev);
+	}
+
+	if (err < 0) {
+		pr_err("Failed to set qmax %d for %s\n",
+				qmax, dev_name(&xdev->conf.pdev->dev));
+		return err;
+	}
+
+	return err;
+}
+#endif
+
+/*****************************************************************************/
+/**
+ * sgl_unmap() - unmap the sg list from host pages
+ *
+ * @param[in]	pdev:	pointer to struct pci_dev
+ * @param[in]	sg:		qdma sg request list
+ * @param[in]	sgcnt:	number of sg lists
+ * @param[in]	dir:	direction of the dma transfer
+ *			DMA_BIDIRECTIONAL = 0,	DMA_TO_DEVICE = 1,
+ *			DMA_FROM_DEVICE = 2, DMA_NONE = 3,
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+void sgl_unmap(struct pci_dev *pdev, struct qdma_sw_sg *sg, unsigned int sgcnt,
+		 enum dma_data_direction dir)
+{
+	int i;
+
+	/** unmap the sg list and set the dma_addr to 0 all sg entries */
+	for (i = 0; i < sgcnt; i++, sg++) {
+		if (!sg->pg)
+			break;
+		if (sg->dma_addr) {
+			pci_unmap_page(pdev, sg->dma_addr - sg->offset,
+							PAGE_SIZE, dir);
+			sg->dma_addr = 0UL;
+		}
+	}
+}
+
+/*****************************************************************************/
+/**
+ * sgl_map() - map sg list to host pages
+ *
+ * @param[in]	pdev:	pointer to struct pci_dev
+ * @param[in]	sg:		qdma sg request list
+ * @param[in]	sgcnt:	number of sg lists
+ * @param[in]	dir:	direction of the dma transfer
+ *			DMA_BIDIRECTIONAL = 0,	DMA_TO_DEVICE = 1,
+ *			DMA_FROM_DEVICE = 2, DMA_NONE = 3,
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int sgl_map(struct pci_dev *pdev, struct qdma_sw_sg *sgl, unsigned int sgcnt,
+		enum dma_data_direction dir)
+{
+	int i;
+	struct qdma_sw_sg *sg = sgl;
+
+	/** Map the sg list onto a dma pages where
+	 *  each page has max of PAGE_SIZE i.e 4K
+	 */
+	for (i = 0; i < sgcnt; i++, sg++) {
+		/* !! TODO  page size !! */
+		sg->dma_addr = pci_map_page(pdev, sg->pg, 0, PAGE_SIZE, dir);
+		if (unlikely(pci_dma_mapping_error(pdev, sg->dma_addr))) {
+			pr_info("map sgl failed, sg %d, %u.\n", i, sg->len);
+			if (i)
+				sgl_unmap(pdev, sgl, i, dir);
+			return -EIO;
+		}
+		sg->dma_addr += sg->offset;
+	}
+
+	return 0;
+}
+
+/*****************************************************************************/
+/**
+ * qdma_request_submit() - submit a scatter-gather list of data for dma
+ * operation (for both read and write)
+ * This is a callback function called from upper layer(character device)
+ * to handle the read/write request on the queues
+ *
+ * @param[in]	dev_hndl:	hndl retured from qdma_device_open()
+ * @param[in]	id:			queue index
+ * @param[in]	req:		qdma request
+ *
+ * @return	# of bytes transferred
+ * @return	<0: error
+ *****************************************************************************/
+ssize_t qdma_request_submit(unsigned long dev_hndl, unsigned long id,
+			struct qdma_request *req)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+	struct qdma_descq *descq =
+		qdma_device_get_descq_by_id(xdev, id, NULL, 0, 1);
+	struct qdma_sgt_req_cb *cb = qdma_req_cb_get(req);
+	enum dma_data_direction dir;
+	int wait = req->fp_done ? 0 : 1;
+	int rv = 0;
+
+	if (!descq)
+		return -EINVAL;
+
+	pr_debug("%s %s-%s, data len %u, sg cnt %u.\n",
+		descq->conf.name, descq->conf.st ? "ST" : "MM",
+		descq->conf.c2h ? "C2H" : "H2C", req->count, req->sgcnt);
+
+	/** Identify the direction of the transfer */
+	dir = descq->conf.c2h ?  DMA_FROM_DEVICE : DMA_TO_DEVICE;
+
+	/** If write request is given on the C2H direction
+	 *  OR, a read request given on non C2H direction
+	 *  then, its an invalid request, return error in this case
+	 */
+	if ((req->write && descq->conf.c2h) ||
+	    (!req->write && !descq->conf.c2h)) {
+		pr_info("%s: bad direction, %c.\n",
+			descq->conf.name, req->write ? 'W' : 'R');
+		return -EINVAL;
+	}
+
+	/** Reset the local cb request with 0's */
+	memset(cb, 0, QDMA_REQ_OPAQUE_SIZE);
+	/** Initialize the wait queue */
+	qdma_waitq_init(&cb->wq);
+
+	pr_debug("%s: data len %u, ep 0x%llx, sgl 0x%p, sgl cnt %u, tm %u ms.\n",
+		descq->conf.name, req->count, req->ep_addr, req->sgl,
+		req->sgcnt, req->timeout_ms);
+
+	/** If the request is streaming mode C2H, invoke the
+	 *  handler to perform the read operation
+	 */
+	if (descq->conf.st && descq->conf.c2h)
+		return qdma_request_submit_st_c2h(xdev, descq, req);
+
+	if (!req->dma_mapped) {
+		rv = sgl_map(xdev->conf.pdev,  req->sgl, req->sgcnt, dir);
+		if (rv < 0) {
+			pr_info("%s map sgl %u failed, %u.\n",
+				descq->conf.name, req->sgcnt, req->count);
+			goto unmap_sgl;
+		}
+		cb->unmap_needed = 1;
+	}
+
+	lock_descq(descq);
+	/**  if the descq is already in online state*/
+	if (descq->q_state != Q_STATE_ONLINE) {
+		unlock_descq(descq);
+		pr_info("%s descq %s NOT online.\n",
+			xdev->conf.name, descq->conf.name);
+		rv = -EINVAL;
+		goto unmap_sgl;
+	}
+	list_add_tail(&cb->list, &descq->work_list);
+	descq->pend_req_desc += ((req->count + PAGE_SIZE - 1) >> PAGE_SHIFT);
+	unlock_descq(descq);
+
+	pr_debug("%s: cb 0x%p submitted.\n", descq->conf.name, cb);
+
+	qdma_descq_proc_sgt_request(descq);
+
+	if (!wait)
+		return 0;
+
+	rv = qdma_request_wait_for_cmpl(xdev, descq, req);
+	if (rv < 0)
+		goto unmap_sgl;
+
+	return cb->offset;
+
+unmap_sgl:
+	if (!req->dma_mapped)
+		sgl_unmap(xdev->conf.pdev,  req->sgl, req->sgcnt, dir);
+
+	return rv;
+}
+
+/*****************************************************************************/
+/**
+ * qdma_batch_request_submit() - submit a batch of scatter-gather list of data
+ *  for dma operation (for both read and write)
+ * This is a callback function called from upper layer(character device)
+ * to handle the read/write request on the queues
+ *
+ * @param[in]	dev_hndl:	hndl retured from qdma_device_open()
+ * @param[in]	id:			queue index
+ * @param[in]	count:		Number of qdma requests
+ * @param[in]	reqv:		qdma request vector
+ *
+ * @return	# of bytes transferred
+ * @return	<0: error
+ *****************************************************************************/
+ssize_t qdma_batch_request_submit(unsigned long dev_hndl, unsigned long id,
+			  unsigned long count, struct qdma_request **reqv)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+	struct qdma_descq *descq =
+		qdma_device_get_descq_by_id(xdev, id, NULL, 0, 0);
+	struct qdma_sgt_req_cb *cb;
+	enum dma_data_direction dir;
+	int rv = 0;
+	unsigned long i;
+	struct qdma_request *req;
+	int st_c2h = 0;
+
+	if (!descq)
+		return -EINVAL;
+
+	st_c2h = (descq->conf.st && descq->conf.c2h) ? 1 : 0;
+
+	/** Identify the direction of the transfer */
+	dir = descq->conf.c2h ?  DMA_FROM_DEVICE : DMA_TO_DEVICE;
+
+	req = reqv[0];
+	/** If write request is given on the C2H direction
+	 *  OR, a read request given on non C2H direction
+	 *  then, its an invalid request, return error in this case
+	 */
+	if ((req->write && descq->conf.c2h)
+			|| (!req->write && !descq->conf.c2h)) {
+		pr_info("%s: bad direction, %c.\n", descq->conf.name,
+				req->write ? 'W' : 'R');
+		return -EINVAL;
+	}
+	if (!req->fp_done) {
+		pr_info("%s: missing fp_done.\n", descq->conf.name);
+		return -EINVAL;
+	}
+
+	if (st_c2h) {
+		for (i = 0; i < count; i++) {
+			req = reqv[i];
+			cb = qdma_req_cb_get(req);
+			/** Reset the local cb request with 0's */
+			memset(cb, 0, QDMA_REQ_OPAQUE_SIZE);
+
+			rv = qdma_request_submit_st_c2h(xdev, descq, req);
+			if ((rv < 0) || (rv == req->count))
+				req->fp_done(req, rv, rv);
+		}
+
+		return 0;
+
+	} else {
+		struct pci_dev *pdev = xdev->conf.pdev;
+
+		for (i = 0; i < count; i++) {
+			req = reqv[i];
+			cb = qdma_req_cb_get(req);
+			/** Reset the local cb request with 0's */
+			memset(cb, 0, QDMA_REQ_OPAQUE_SIZE);
+
+			if (!req->dma_mapped) {
+				rv = sgl_map(pdev, req->sgl, req->sgcnt, dir);
+				if (unlikely(rv < 0)) {
+					pr_info("%s map sgl %u failed, %u.\n",
+						descq->conf.name,
+						req->sgcnt,
+						req->count);
+					req->fp_done(req, 0, rv);
+				}
+				cb->unmap_needed = 1;
+			}
+		}
+	}
+
+	lock_descq(descq);
+	/**  if the descq is already in online state*/
+	if (unlikely(descq->q_state != Q_STATE_ONLINE)) {
+		unlock_descq(descq);
+		pr_info("%s descq %s NOT online.\n", xdev->conf.name,
+				descq->conf.name);
+		return -EINVAL;
+	}
+
+	for (i = 0; i < count; i++) {
+		req = reqv[i];
+		cb = qdma_req_cb_get(req);
+
+		list_add_tail(&cb->list, &descq->work_list);
+	}
+	unlock_descq(descq);
+
+	qdma_descq_proc_sgt_request(descq);
+
+	return 0;
+}
+
+/*****************************************************************************/
+/**
+ * libqdma_init()       initialize the QDMA core library
+ *
+ * @param[in] num_threads - number of threads to be created each for request
+ *  processing and writeback processing
+ *
+ * @return	0:	success
+ * @return	<0:	error
+ *****************************************************************************/
+int libqdma_init(enum qdma_drv_mode qdma_drv_mode, unsigned int num_threads)
+{
+
+	/** Make sure that the size of qdma scatter gather request size
+	 *  is less than the QDMA_REQ_OPAQUE_SIZE
+	 *  If not, return error
+	 */
+	if (sizeof(struct qdma_sgt_req_cb) > QDMA_REQ_OPAQUE_SIZE) {
+		pr_err("dma req. opaque data size too big %lu > %d.\n",
+			sizeof(struct qdma_sgt_req_cb), QDMA_REQ_OPAQUE_SIZE);
+		return -1;
+	}
+	if (sizeof(struct qdma_flq) > QDMA_FLQ_SIZE) {
+		pr_err("qdma flq data size too big %lu > %d",
+		       sizeof(struct qdma_flq), QDMA_FLQ_SIZE);
+		return -1;
+	}
+
+	if (qdma_drv_mode == LEGACY_INTR_MODE)
+		intr_legacy_init();
+
+	/** Create the qdma threads */
+	qdma_threads_create(num_threads);
+#ifdef DEBUGFS
+	return qdma_debugfs_init(&qdma_debugfs_root);
+#else
+	return 0;
+#endif
+}
+
+/*****************************************************************************/
+/**
+ * libqdma_exit()	cleanup the QDMA core library before exiting
+ *
+ * @return	none
+ *****************************************************************************/
+void libqdma_exit(void)
+{
+#ifdef DEBUGFS
+	qdma_debugfs_exit(qdma_debugfs_root);
+#endif
+	/** Destroy the qdma threads */
+	qdma_threads_destroy();
+}
+
+#ifdef __LIBQDMA_MOD__
+/** for module support only */
+#include "version.h"
+
+static char version[] =
+	DRV_MODULE_DESC " " DRV_MODULE_NAME " v" DRV_MODULE_VERSION "\n";
+
+MODULE_AUTHOR("Xilinx, Inc.");
+MODULE_DESCRIPTION(DRV_MODULE_DESC);
+MODULE_VERSION(DRV_MODULE_VERSION);
+MODULE_LICENSE("Dual BSD/GPL");
+
+/*****************************************************************************/
+/**
+ * libqdma_mod_init()	libqdma module initialization routine
+ *
+ * Returns: none
+ *****************************************************************************/
+static int __init libqdma_mod_init(void)
+{
+	pr_info("%s", version);
+
+	/** invoke libqdma_init to initialize the libqdma library */
+	return libqdma_init();
+}
+
+/*****************************************************************************/
+/**
+ * libqdma_mod_exit()       cleanup the QDMA core library before exiting
+ *
+ * Returns: none
+ *****************************************************************************/
+static void __exit libqdma_mod_exit(void)
+{
+	/** invoke libqdma_exit to cleanup the libqdma library resources */
+	libqdma_exit();
+}
+
+module_init(libqdma_mod_init);
+module_exit(libqdma_mod_exit);
+#endif /* ifdef __LIBQDMA_MOD__ */
diff --git a/QDMA/linux-kernel/libqdma/libqdma_export.h b/QDMA/linux-kernel/libqdma/libqdma_export.h
new file mode 100644
index 0000000..dd1128c
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/libqdma_export.h
@@ -0,0 +1,1228 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#ifndef __LIBQDMA_EXPORT_API_H__
+#define __LIBQDMA_EXPORT_API_H__
+/**
+ * @file
+ * @brief This file contains the declarations for libqdma interfaces
+ *
+ */
+#include <linux/types.h>
+#include <linux/interrupt.h>
+#include "libqdma_config.h"
+
+/** Invalid QDMA function number */
+#define QDMA_FUNC_ID_INVALID	(QDMA_PF_MAX + QDMA_VF_MAX)
+
+/**
+ * QDMA Error codes
+ */
+enum qdma_error_codes {
+	QDMA_OPERATION_SUCCESSFUL		= 0,
+	/*!< QDMA driver API operation successful */
+	QDMA_ERR_PCI_DEVICE_NOT_FOUND		= -1,
+	/*!< QDMA PCI device not found on the PCIe bus */
+	QDMA_ERR_PCI_DEVICE_ALREADY_ATTACHED	= -2,
+	/*!< QDMA PCI device already attached */
+	QDMA_ERR_PCI_DEVICE_ENABLE_FAILED	= -3,
+	/*!< Failed to enable the QDMA PCIe device */
+	QDMA_ERR_PCI_DEVICE_INIT_FAILED		= -4,
+	/*!< Failed to initialize the QDMA PCIe device */
+	QDMA_ERR_INVALID_INPUT_PARAM		= -5,
+	/*!< Invalid input parameter given to QDMA API */
+	QDMA_ERR_INVALID_PCI_DEV		= -6,
+	/*!< Invalid PCIe device */
+	QDMA_ERR_INVALID_QIDX			= -7,
+	/*!< Invalid Queue ID provided as input */
+	QDMA_ERR_INVALID_DESCQ_STATE		= -8,
+	/*!< Invalid descriptor queue state */
+	QDMA_ERR_INVALID_DIRECTION		= -9,
+	/*!< Invalid descriptor direction provided */
+	QDMA_ERR_DESCQ_SETUP_FAILED		= -10,
+	/*!< Failed to setup the descriptor queue */
+	QDMA_ERR_DESCQ_FULL			= -11,
+	/*!< Descriptor queue is full */
+	QDMA_ERR_DESCQ_IDX_ALREADY_ADDED	= -12,
+	/*!< Descriptor queue index is already added */
+	QDMA_ERR_QUEUE_ALREADY_CONFIGURED	= -13,
+	/*!< Queue is already configured */
+	QDMA_ERR_OUT_OF_MEMORY			= -14,
+	/*!< Out of memory */
+	QDMA_ERR_INVALID_QDMA_DEVICE		= -15,
+	/*!< Invalid QDMA device, QDMA device is not yet created */
+	QDMA_ERR_INTERFACE_NOT_ENABLED_IN_DEVICE	= -16,
+	/*!< The ST or MM or Both interface not enabled in the device */
+};
+
+
+/**
+ * qdma_drv_state_t - qdma driver state
+ */
+enum qdma_drv_mode {
+	/*!< auto mode decided automatically, mix of poll and interrupt mode */
+	AUTO_MODE,
+	/*!< driver is inserted in poll mode */
+	POLL_MODE,
+	/*!< driver is inserted in direct interrupt mode */
+	DIRECT_INTR_MODE,
+	/*!< driver is inserted in indirect interrupt mode */
+	INDIRECT_INTR_MODE,
+	/*!< driver is inserted in legacy interrupt mode */
+	LEGACY_INTR_MODE
+};
+
+struct drv_mode_name {
+	enum qdma_drv_mode drv_mode;
+	char name[20];
+};
+extern struct drv_mode_name mode_name_list[];
+
+struct pci_dev;
+
+/*****************************************************************************/
+/**
+ * libqdma_init()       initialize the QDMA core library
+ *
+ * @param[in] qdma_drv_mode - mode in which the driver needs to operate
+ * @param[in] num_threads - number of threads to be created each for request
+ *  processing and writeback processing
+ *
+ * @return	0:	success
+ * @return	<0:	error
+ *****************************************************************************/
+int libqdma_init(enum qdma_drv_mode qdma_drv_mode, unsigned int num_threads);
+
+/*****************************************************************************/
+/**
+ * libqdma_exit()       cleanup the QDMA core library before exiting
+ *
+ * @return	none
+ *****************************************************************************/
+void libqdma_exit(void);
+
+/**
+ * intr_ring_size_sel - qdma interrupt ring size selection
+ */
+enum intr_ring_size_sel {
+	/**
+	 *	0 - INTR_RING_SZ_4KB, Accommodates 512 entries
+	 */
+	INTR_RING_SZ_4KB = 0,
+	/**
+	 *	1 - INTR_RING_SZ_8KB, Accommodates 1024 entries
+	 */
+	INTR_RING_SZ_8KB,
+	/**
+	 *	2 - INTR_RING_SZ_12KB, Accommodates 1536 entries
+	 */
+	INTR_RING_SZ_12KB,
+	/**
+	 *	3 - INTR_RING_SZ_16KB, Accommodates 2048 entries
+	 */
+	INTR_RING_SZ_16KB,
+	/**
+	 *	4 - INTR_RING_SZ_20KB, Accommodates 2560 entries
+	 */
+	INTR_RING_SZ_20KB,
+	/**
+	 *	5 - INTR_RING_SZ_24KB, Accommodates 3072 entries
+	 */
+	INTR_RING_SZ_24KB,
+	/**
+	 *	6 - INTR_RING_SZ_24KB, Accommodates 3584 entries
+	 */
+	INTR_RING_SZ_28KB,
+	/**
+	 *	7 - INTR_RING_SZ_24KB, Accommodates 4096 entries
+	 */
+	INTR_RING_SZ_32KB,
+};
+
+enum qdma_dev_qmax_state {
+	/** device qmax not configured */
+	QMAX_CFG_UNCONFIGURED,
+	/** device qmax configured with initial values */
+	QMAX_CFG_INITIAL,
+	/** device qmax configured from sysfs */
+	QMAX_CFG_USER,
+};
+
+/**
+ *	Maxinum length of the QDMA device name
+ */
+#define QDMA_DEV_NAME_MAXLEN	32
+
+/**
+ * qdma_dev_conf defines the per-device qdma property.
+ *
+ * NOTE: if any of the max requested is less than supported, the value will
+ *       be updated
+ */
+struct qdma_dev_conf {
+	/**	pointer to pci_dev */
+	struct pci_dev *pdev;
+	/**	Maximum number of queue pairs per device */
+	unsigned short qsets_max;
+	/**	Reserved */
+	unsigned short rsvd2;
+	/**	Indicates whether zero length DMA is allowed or not */
+	u8 zerolen_dma:1;
+	/**	Indicates whether the current pf is master_pf or not */
+	u8 master_pf:1;
+	/** extra handling of per descq handling in
+	 *  top half (i.e., qdma_descq.fp_descq_isr_top will be set)
+	 */
+	u8 isr_top_q_en:1;
+	/**	Reserved1 */
+	u8 rsvd1:5;
+	/** Maximum number of virtual functions for current physical function */
+	u8 vf_max;
+	/**	Interrupt ring size */
+	u8 intr_rngsz;
+	/**
+	 * interrupt:
+	 * - MSI-X only
+	 * max of QDMA_DEV_MSIX_VEC_MAX per function, 32 in Everest
+	 * - 1 vector is reserved for user interrupt
+	 * - 1 vector is reserved mailbox
+	 * - 1 vector on pf0 is reserved for error interrupt
+	 * - the remaining vectors will be used for queues
+	 */
+
+	/** max. of vectors used for queues. libqdma update w/ actual # */
+	u8 msix_qvec_max;
+	/** upper layer data, i.e. callback data */
+	unsigned long uld;
+	/** qdma driver mode */
+	enum qdma_drv_mode qdma_drv_mode;
+	/**
+	 * an unique string to identify the dev.
+	 * current format: qdma[pf|vf][idx] filled in by libqdma
+	 */
+	char name[QDMA_DEV_NAME_MAXLEN];
+
+#ifdef RTL2_FEATURE_CONFIGURABLE_BAR
+	/** dma config bar #, < 0 not present */
+	char bar_num_config;
+	/** user bar */
+	char bar_num_user;
+	/**	bypass bar */
+	char bar_num_bypass;
+#endif
+	/** dma config bar #, < 0 not present */
+	char bar_num_config;
+	/** user bar */
+	char bar_num_user;
+	/**	bypass bar */
+	char bar_num_bypass;
+	/** STM bar, PF only */
+	char bar_num_stm;
+	/** user bar, PF only */
+	unsigned int qsets_base;
+	/** device index */
+	u32 bdf;
+	/** index of device in device list */
+	u32 idx;
+	/**current configuration state of device*/
+	enum qdma_dev_qmax_state cur_cfg_state;
+	/** xmit in traffic manager mode */
+	u8 tm_mode_en;
+	/** enable 1 CDH for Traffic Manager */
+	u8 tm_one_cdh_en;
+
+	/** user interrupt, if null, default libqdma handler is used */
+	void (*fp_user_isr_handler)(unsigned long dev_hndl, unsigned long uld);
+
+	/**
+	 * example flow of ST C2H:
+	 * a. interrupt fires
+	 * b. Hard IRQ: libqdma isr top -> dev->fp_q_isr_top_dev ->
+	 *	isr_top_qproc && Q->fp_descq_isr_top
+	 * c. Soft IRQ:
+	 *	irq handler
+	 *	qdma_queue_service_bh() ->
+	 *	if rx: Q->fp_descq_rx_packet() called for each packet
+	 *	qdma_queue_cmpl_ctrl(set=true) to update h/w and re-enable
+	 *	interrupt
+	 */
+
+	/** Q interrupt top, per-device addtional handling code */
+	void (*fp_q_isr_top_dev)(unsigned long dev_hndl, unsigned long uld);
+};
+
+/*****************************************************************************/
+/**
+ * qdma_device_open() - read the pci bars and configure the fpga
+ * This API should be called from probe()
+ *
+ * User interrupt will not be enabled until qdma_user_isr_enable() is called
+ *
+ * @param[in]	mod_name:	the module name, used for request_irq
+ * @param[in]	conf:		device configuration
+ * @param[out]	dev_hndl:	an opaque handle
+ *				for libqdma to identify the device
+ *
+ * @return	QDMA_OPERATION_SUCCESSFUL success
+ * @return	<0 in case of error
+ *****************************************************************************/
+int qdma_device_open(const char *mod_name, struct qdma_dev_conf *conf,
+				unsigned long *dev_hndl);
+
+/*****************************************************************************/
+/**
+ * qdma_device_close() - prepare fpga for removal: disable all interrupts (users
+ * and qdma) and release all resources.This API should be called from remove()
+ *
+ * @param[in]	pdev:		ptr to struct pci_dev
+ * @param[in]	dev_hndl:	dev_hndl retured from qdma_device_open()
+ *
+ *****************************************************************************/
+void qdma_device_close(struct pci_dev *pdev, unsigned long dev_hndl);
+
+/*****************************************************************************/
+/**
+ * qdma_device_offline() - Set the device in offline mode
+ *
+ * @param[in]	pdev:		ptr to struct pci_dev
+ * @param[in]	dev_hndl:	dev_hndl retured from qdma_device_open()
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+void qdma_device_offline(struct pci_dev *pdev, unsigned long dev_hndl);
+
+/*****************************************************************************/
+/**
+ * qdma_device_online() - Set the device in online mode and re-initialze it
+ *
+ * @param[in]	pdev:		ptr to struct pci_dev
+ * @param[in]	dev_hndl:	dev_hndl retured from qdma_device_open()
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_device_online(struct pci_dev *pdev, unsigned long dev_hndl);
+
+/*****************************************************************************/
+/**
+ * qdma_device_flr_quirk_set() - start pre-flr processing
+ *
+ * @param[in]	pdev:		ptr to struct pci_dev
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_device_flr_quirk_set(struct pci_dev *pdev, unsigned long dev_hndl);
+
+/*****************************************************************************/
+/**
+ * qdma_device_flr_quirk_check() - check if pre-flr processing completed
+ *
+ * @param[in]	pdev:		ptr to struct pci_dev
+ * @param[in]	dev_hndl:	dev_hndl retunred from qdma_device_open()
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_device_flr_quirk_check(struct pci_dev *pdev, unsigned long dev_hndl);
+
+/*****************************************************************************/
+/**
+ * qdma_device_get_config() - retrieve the current device configuration
+ *
+ * @param[in]	dev_hndl: dev_hndl retunred from qdma_device_open()
+ * @param[in]	conf:		device configuration
+ * @param[in]	ebuflen:	input buffer length
+ * @param[out]	ebuf:
+ *			error message buffer, can be NULL/0 (i.e., optional)
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_device_get_config(unsigned long dev_hndl, struct qdma_dev_conf *conf,
+				char *ebuf, int ebuflen);
+
+/*****************************************************************************/
+/**
+ * qdma_device_clear_stats() - clear device statistics
+ *
+ * @param[in]	dev_hndl: dev_hndl retunred from qdma_device_open()
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_device_clear_stats(unsigned long dev_hndl);
+
+/*****************************************************************************/
+/**
+ * qdma_device_get_mmh2c_pkts() - get mm h2c packets processed
+ *
+ * @param[in]	dev_hndl: dev_hndl retunred from qdma_device_open()
+ * @param[out]	mmh2c_pkts: number of mm h2c packets processed
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_device_get_mmh2c_pkts(unsigned long dev_hndl,
+			       unsigned long long *mmh2c_pkts);
+
+/*****************************************************************************/
+/**
+ * qdma_device_get_mmc2h_pkts() - get mm c2h packets processed
+ *
+ * @param[in]	dev_hndl: dev_hndl retunred from qdma_device_open()
+ * @param[out]	mmc2h_pkts: number of mm c2h packets processed
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_device_get_mmc2h_pkts(unsigned long dev_hndl,
+				unsigned long long *mmc2h_pkts);
+
+/*****************************************************************************/
+/**
+ * qdma_device_get_sth2c_pkts() - get st h2c packets processed
+ *
+ * @param[in]	dev_hndl: dev_hndl retunred from qdma_device_open()
+ * @param[out]	sth2c_pkts: number of st h2c packets processed
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_device_get_sth2c_pkts(unsigned long dev_hndl,
+				unsigned long long *sth2c_pkts);
+
+/*****************************************************************************/
+/**
+ * qdma_device_get_stc2h_pkts() - get st c2h packets processed
+ *
+ * @param[in]	dev_hndl: dev_hndl retunred from qdma_device_open()
+ * @param[out]	stc2h_pkts: number of st c2h packets processed
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_device_get_stc2h_pkts(unsigned long dev_hndl,
+				unsigned long long *stc2h_pkts);
+/*****************************************************************************/
+/**
+ * qdma_device_set_config() - set the current device configuration
+ *
+ * @param[in]	dev_hndl: dev_hndl returned from qdma_device_open()
+ * @param[in]	conf:		device configuration to set
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_device_set_config(unsigned long dev_hndl, struct qdma_dev_conf *conf);
+
+/*****************************************************************************/
+/**
+ * qdma_device_set_cfg_state - set the device configuration state
+ *
+ * @param[in]	dev_hndl:	device handle
+ * @param[in]	new_cfg_state:	dma device conf state to set
+ *
+ *
+ * @return	0 on success ,<0 on failure
+ *****************************************************************************/
+int qdma_device_set_cfg_state(unsigned long dev_hndl,
+			      enum qdma_dev_qmax_state new_cfg_state);
+
+/*****************************************************************************/
+/**
+ * qdma_device_sriov_config() - configure sriov
+ *
+ * @param[in]	pdev:		ptr to struct pci_dev
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	num_vfs:	# of VFs to be instantiated
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_device_sriov_config(struct pci_dev *pdev, unsigned long dev_hndl,
+				int num_vfs);
+
+/*****************************************************************************/
+/**
+ * qdma_device_read_config_register() - read dma config. register
+ *
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	reg_addr:	register address
+ *
+ * @return	value of the config register
+ *****************************************************************************/
+unsigned int qdma_device_read_config_register(unsigned long dev_hndl,
+					unsigned int reg_addr);
+
+/*****************************************************************************/
+/**
+ * qdma_device_write_config_register() - write dma config. register
+ *
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	reg_addr:	register address
+ * @param[in]	value:		register value to be writen
+ *
+ *****************************************************************************/
+void qdma_device_write_config_register(unsigned long dev_hndl,
+					unsigned int reg_addr, u32 value);
+
+
+/**
+ * qdma_version_info defines the per-device version information
+ *
+ */
+#define DEVICE_VERSION_INFO_STR_LENGTH            10
+struct qdma_version_info {
+	u8 rtl_version;
+	char rtl_version_str[DEVICE_VERSION_INFO_STR_LENGTH];
+	u8 vivado_release_id;
+	char vivado_release_str[DEVICE_VERSION_INFO_STR_LENGTH];
+	u8 everest_ip;
+	char everest_ip_str[DEVICE_VERSION_INFO_STR_LENGTH];
+};
+
+/*****************************************************************************/
+/**
+ * qdma_device_version_info() - retrieve the RTL version , Vivado Release ID and
+ *				Everest IP info
+ *
+ * @param[in]	dev_hndl:	handle returned from qdma_device_open()
+ * @param[out]	version_info: pointer to hold all the version details
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_device_version_info(unsigned long dev_hndl,
+			     struct qdma_version_info *version_info);
+
+/*****************************************************************************/
+/**
+ * qdma_software_version_info() - retrieve the software version
+ *
+ * @param[out]	software_version: A pointer to a null-terminated string
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_software_version_info(char *software_version);
+
+/** QDMA Global CSR array size */
+#define QDMA_GLOBAL_CSR_ARRAY_SZ        16
+
+/**
+ * struct global_csr_conf - global CSR configuration
+ */
+struct global_csr_conf {
+	/** Descriptor ring size ie. queue depth */
+	unsigned int ring_sz[QDMA_GLOBAL_CSR_ARRAY_SZ];
+	/** C2H timer count  list */
+	unsigned int c2h_timer_cnt[QDMA_GLOBAL_CSR_ARRAY_SZ];
+	/** C2H counter threshold list*/
+	unsigned int c2h_cnt_th[QDMA_GLOBAL_CSR_ARRAY_SZ];
+	/** C2H buffer size list */
+	unsigned int c2h_buf_sz[QDMA_GLOBAL_CSR_ARRAY_SZ];
+	/** wireback acculation enable/disable */
+	unsigned int cmpl_status_acc;
+};
+
+/*****************************************************************************/
+/**
+ * qdma_glbal_csr_get() - retrieve the global csr settings
+ *
+ * @param[in]	dev_hndl:	handle returned from qdma_device_open()
+ * @param[out]	csr:		data structures to hold the csr values
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_global_csr_get(unsigned long dev_hndl, struct global_csr_conf *csr);
+
+/*****************************************************************************/
+/**
+ * qdma_glbal_csr_set() - set the global csr values
+ * NOTE: for set, libqdma will enforce the access control
+ *
+ * @param[in]	dev_hndl:	handle returned from qdma_device_open()
+ * @param[in]	csr:		data structures to hold the csr values
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_global_csr_set(unsigned long dev_hndl, struct global_csr_conf *csr);
+
+/**
+ * cmpt_desc_sz_t - descriptor sizes
+ */
+enum cmpt_desc_sz_t {
+	/** 0 - completion size 8B */
+	CMPT_DESC_SZ_8B = 0,
+	/** 0 - completion size 16B */
+	CMPT_DESC_SZ_16B,
+	/** 0 - completion size 32B */
+	CMPT_DESC_SZ_32B,
+	/** 0 - completion size 64B */
+	CMPT_DESC_SZ_64B
+};
+
+/**
+ * desc_sz_t - descriptor sizes
+ */
+enum desc_sz_t {
+	/** 0 - size 8B */
+	DESC_SZ_8B = 0,
+	/** 0 - size 16B */
+	DESC_SZ_16B,
+	/** 0 - size 32B */
+	DESC_SZ_32B,
+	/** 0 - size 64B */
+	DESC_SZ_64B
+};
+
+/**
+ * tigger_mode_t - trigger modes
+ */
+enum tigger_mode_t {
+	/** 0 - disable trigger mode */
+	TRIG_MODE_DISABLE,
+	/** 1 - any trigger mode */
+	TRIG_MODE_ANY,
+	/** 2 - counter trigger mode */
+	TRIG_MODE_COUNTER,
+	/** 3 - trigger mode of user choice */
+	TRIG_MODE_USER,
+	/** 4 - timer trigger mode */
+	TRIG_MODE_TIMER,
+	/** 5 - timer and counter combo trigger mode */
+	TRIG_MODE_COMBO,
+};
+
+/**
+ * struct qdma_sw_sg - qdma scatter gather request
+ */
+struct qdma_sw_sg {
+	/** pointer to next page */
+	struct qdma_sw_sg *next;
+	/** pointer to current page */
+	struct page *pg;
+	/** offset in current page */
+	unsigned int offset;
+	/** length of the page */
+	unsigned int len;
+	/** dma address of the allocated page */
+	dma_addr_t dma_addr;
+};
+
+/**
+ *	maximum queue name length
+ */
+#define QDMA_QUEUE_NAME_MAXLEN	32
+/**
+ *	invalid queue index
+ */
+#define QDMA_QUEUE_IDX_INVALID	0xFFFF
+
+/**
+ *	invalid MSI-x vector index
+ */
+#define QDMA_QUEUE_VEC_INVALID	0xFF
+
+/**
+ * struct qdma_queue_conf - qdma configuration parameters
+ * qdma_queue_conf defines the per-dma Q property.
+ * if any of the max requested is less than supported, the value will
+ * be updated
+ */
+struct qdma_queue_conf {
+	/** 0xFFFF: libqdma choose the queue idx
+	 *	0 ~ (qdma_dev_conf.qsets_max - 1)
+	 *	the calling function choose the queue idx
+	 */
+	u32 qidx:24;
+
+	/** config flags: byte #1 */
+	/** st mode */
+	u32 st:1;
+	/** c2h direction */
+	u32 c2h:1;
+	/** SDx only: inter-kernel communication pipe */
+	u32 pipe:1;
+	/** poll or interrupt */
+	u32 irq_en:1;
+
+	/** descriptor ring	 */
+	/** global_csr_conf.ringsz[N] */
+	u32 desc_rng_sz_idx:4;
+
+	/** config flags: byte #2 */
+	/** writeback enable, disabled for ST C2H */
+	u8 cmpl_status_en:1;
+	/** sw context.cmpl_status_acc_en */
+	u8 cmpl_status_acc_en:1;
+	/** sw context.cmpl_stauts_pend_chk */
+	u8 cmpl_status_pend_chk:1;
+	/** send descriptor to bypass out */
+	u8 desc_bypass:1;
+	/** descriptor prefetch enable control */
+	u8 pfetch_en:1;
+	/** sw context.frcd_en[32] */
+	u8 fetch_credit:1;
+	/** SDx only: ST packet mode (i.e., with TLAST
+	 * to identify the packet boundary)
+	 */
+	u8 st_pkt_mode:1;
+	/** c2h use pre-alloc free list */
+	u8 c2h_use_fl:1;
+
+	/** config flags: byte #3 */
+	/** global_csr_conf.c2h_buf_sz[N] */
+	u8 c2h_buf_sz_idx:4;
+
+	/**  ST C2H Completion/Writeback ring */
+	/** global_csr_conf.ringsz[N] */
+	u8 cmpl_rng_sz_idx:4;
+
+	/** config flags: byte #4 */
+	/** C2H ST cmpt + immediate data, desc_sz_t */
+	u8 cmpl_desc_sz:2;
+	/** enable status desc. for CMPT */
+	u8 cmpl_stat_en:1;
+	/** C2H Completion entry user-defined data */
+	u8 cmpl_udd_en:1;
+	/** global_csr_conf.c2h_timer_cnt[N] */
+	u8 cmpl_timer_idx:4;
+
+	/** config flags: byte #5 */
+	/** global_csr_conf.c2h_cnt_th[N] */
+	u8 cmpl_cnt_th_idx:4;
+	/** tigger_mode_t */
+	u8 cmpl_trig_mode:3;
+	/** enable interrupt for CMPT */
+	u8 cmpl_en_intr:1;
+
+	/** config flags: byte #6 */
+	/** SW Context desc size, desc_sz_t */
+	u8 sw_desc_sz:2;
+	/** prefetch bypass en */
+	u8 pfetch_bypass:1;
+	/** OVF_DIS C2H ST over flow disable */
+	u8 cmpl_ovf_chk_dis:1;
+	/** Port ID */
+	u8 port_id:3;
+	/** Address Translation */
+	u8 at:1;
+
+	/*
+	 * TODO: for Platform streaming DSA
+	 */
+	/** only if pipe = 1 */
+	/** max 16. CDH length per packet */
+	u8 cdh_max;
+	/** <= 7, max # gather buf. per packet */
+	u8 pipe_gl_max;
+	/** pipe flow id */
+	u8 pipe_flow_id;
+	/** pipe SLR id */
+	u8 pipe_slr_id;
+	/** pipe route id */
+	u16 pipe_tdest;
+
+	/** user provided per-Q irq handler */
+	unsigned long quld;		/* set by user for per Q data */
+
+	/** TBA: Q interrupt top, per-queue additional handling code
+	 * for example, network rx: napi_schedule(&Q->napi)
+	 */
+	void (*fp_descq_isr_top)(unsigned long qhndl, unsigned long quld);
+	/**
+	 * optional rx packet handler:
+	 *	 called from irq BH (i.e.qdma_queue_service_bh())
+	 * - udd: user defined data in the completion entry
+	 * - sgcnt / sgl: packet data in scatter-gather list
+	 *   NOTE: a. do NOT modify any field of sgl
+	 *	   b. if zero copy, do a get_page() to prevent page freeing
+	 *	   c. do loop through the sgl with sg->next and stop
+	 *	      at sgcnt. the last sg may not have sg->next = NULL
+	 * Returns:
+	 *	- 0 to allow libqdma free/re-task the sgl
+	 *	- < 0, libqdma will keep the packet for processing again
+	 *
+	 * A single packet could contain:
+	 * in the case of c2h_udd_en = 1:
+	 * - udd only (udd valid, sgcnt = 0, sgl = NULL), or
+	 * - udd + packdet data
+	 * in the case of c2h_udd_en = 0:
+	 * - packet data (udd = NULL, sgcnt > 0 and sgl valid)
+	 */
+	int (*fp_descq_c2h_packet)(unsigned long qhndl, unsigned long quld,
+				unsigned int len, unsigned int sgcnt,
+				struct qdma_sw_sg *sgl, void *udd);
+
+	/** fill in by libqdma */
+	/** name of the qdma device */
+	char name[QDMA_QUEUE_NAME_MAXLEN];
+	/** ring size of the queue */
+	unsigned int rngsz;
+	/** completion ring size of the queue */
+	unsigned int rngsz_cmpt;
+	/** C2H buffer size */
+	unsigned int c2h_bufsz;
+};
+
+/*****************************************************************************/
+/**
+ * qdma_queue_add() - add a queue
+ *
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	qconf:		queue configuration parameters
+ * @param[in]	qhndl:	list of unsigned long values that are the opaque qhndl
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_queue_add(unsigned long dev_hndl, struct qdma_queue_conf *qconf,
+			unsigned long *qhndl, char *buf, int buflen);
+
+/*****************************************************************************/
+/**
+ * qdma_queue_reconfig() - reconfigure the queue
+ *
+ * @param[in]	dev_hndl:	qdma device handle
+ * @param[in]	id:		queue index
+ * @param[in]	qconf:		queue configuration
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int qdma_queue_reconfig(unsigned long dev_hndl, unsigned long id,
+			struct qdma_queue_conf *qconf, char *buf, int buflen);
+
+/*****************************************************************************/
+/**
+ * qdma_queue_start() - start a queue (i.e, online, ready for dma)
+ *
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	id:		the opaque qhndl
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_queue_start(unsigned long dev_hndl, unsigned long id,
+						char *buf, int buflen);
+
+/*****************************************************************************/
+/**
+ * qdma_queue_stop() - stop a queue (i.e., offline, NOT ready for dma)
+ *
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	id:		the opaque qhndl
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_queue_stop(unsigned long dev_hndl, unsigned long id, char *buf,
+				int buflen);
+
+/*****************************************************************************/
+/**
+ *  * qdma_queue_prog_stm() - Program STM for queue (context, map, etc)
+ *   *
+ * @param[in]   dev_hndl:       dev_hndl returned from qdma_device_open()
+ * @param[in]   id:             queue index
+ * @param[in]   buflen:         length of the input buffer
+ * @param[out]  buf:            message buffer
+ *
+ * @return      0: success
+ * @return      <0: error
+ *****************************************************************************/
+int qdma_queue_prog_stm(unsigned long dev_hndl, unsigned long id, char *buf,
+			int buflen);
+
+/*****************************************************************************/
+/**
+ * qdma_queue_remove() - remove a queue
+ *
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	id:		the opaque qhndl
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_queue_remove(unsigned long dev_hndl, unsigned long id, char *buf,
+				int buflen);
+
+/**
+ * queue helper/debug functions
+ */
+
+/*****************************************************************************/
+/**
+ * qdma_queue_get_config() - retrieve the configuration of a queue
+ *
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	id:		an opaque queue handle of type unsigned long
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+ *
+ * @return	success: if optional message buffer used then strlen of buf,
+ *	otherwise QDMA_OPERATION_SUCCESSFUL
+ * @return	<0: error
+ *****************************************************************************/
+struct qdma_queue_conf *qdma_queue_get_config(unsigned long dev_hndl,
+				unsigned long id, char *buf, int buflen);
+
+/*****************************************************************************/
+/**
+ * qdma_queue_list() - display all configured queues in a string buffer
+ *
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+ *
+ * @return	success: if optional message buffer used then strlen of buf,
+ *	otherwise QDMA_OPERATION_SUCCESSFUL
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_queue_list(unsigned long dev_hndl, char *buf, int buflen);
+
+/*****************************************************************************/
+/**
+ * qdma_queue_dump() - display a queue's state in a string buffer
+ *
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	id:		an opaque queue handle of type unsigned long
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+ *
+ * @return	success: if optional message buffer used then strlen of buf,
+ *	otherwise QDMA_OPERATION_SUCCESSFUL
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_queue_dump(unsigned long dev_hndl, unsigned long id, char *buf,
+				int buflen);
+
+/*****************************************************************************/
+/**
+ * qdma_queue_dump_desc() - display a queue's descriptor ring from index start
+ *							~ end in a string buffer
+ *
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	id:		an opaque queue handle of type unsigned long
+ * @param[in]	start:		start index
+ * @param[in]	end:		end index
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+ *
+ * @return	success: if optional message buffer used then strlen of buf,
+ *	otherwise QDMA_OPERATION_SUCCESSFUL
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_queue_dump_desc(unsigned long dev_hndl, unsigned long id,
+				unsigned int start, unsigned int end, char *buf,
+				int buflen);
+
+/*****************************************************************************/
+/**
+ * qdma_queue_dump_cmpt() - display a queue's descriptor ring from index start
+ *							~ end in a string buffer
+ *
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	id:		an opaque queue handle of type unsigned long
+ * @param[in]	start:		start index
+ * @param[in]	end:		end index
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+ *
+ * @return	success: if optional message buffer used then strlen of buf,
+ *	otherwise QDMA_OPERATION_SUCCESSFUL
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_queue_dump_cmpt(unsigned long dev_hndl, unsigned long id,
+				unsigned int start, unsigned int end, char *buf,
+				int buflen);
+
+#ifdef ERR_DEBUG
+/*****************************************************************************/
+/**
+ * qdma_queue_set_err_induction() - Induce the error
+ *
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	id:		error id
+ * @param[in]	err:		error info
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+ *
+ * @return	success: if optional message buffer used then strlen of buf,
+ *	otherwise QDMA_OPERATION_SUCCESSFUL
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_queue_set_err_induction(unsigned long dev_hndl, unsigned long id,
+				 u32 err, char *buf, int buflen);
+#endif
+
+
+/**
+ * maximum request length
+ */
+#define QDMA_REQ_OPAQUE_SIZE	72
+/**
+ * Max length of the user defined data
+ */
+#define QDMA_UDD_MAXLEN		32
+
+/**
+ * struct qdma_request - qdma request for read or write
+ */
+struct qdma_request {
+	/** private to the dma driver, do NOT touch */
+	unsigned char opaque[QDMA_REQ_OPAQUE_SIZE];
+	/** filled in by the calling function */
+	/** for the calling function */
+	unsigned long uld_data;
+	/** set fp_done for non-blocking mode */
+	int (*fp_done)(struct qdma_request *, unsigned int bytes_done, int err);
+	/** timeout in mili-seconds, 0 - no timeout */
+	unsigned int timeout_ms;
+	/** total data size */
+	unsigned int count;
+	/** MM only, DDR/BRAM memory addr */
+	u64 ep_addr;
+	/* flag to indicate if memcpy is required */
+	u8 no_memcpy:1;
+	/** write: if write to the device */
+	u8 write:1;
+	/** if sgt is already dma mapped */
+	u8 dma_mapped:1;
+	/** user defined data present */
+	u8 h2c_eot:1;
+	/** indicates end of transfer towards user kernel */
+	u8 udd_len;
+	/** # of scatter-gather entries < 64K */
+	unsigned int sgcnt;
+	/** scatter-gather list of data bufs */
+	struct qdma_sw_sg *sgl;
+	/** udd data */
+	u8 udd[QDMA_UDD_MAXLEN];
+};
+
+/*****************************************************************************/
+/**
+ * qdma_request_submit() - submit a scatter-gather list of data for dma
+ * operation (for both read and write)
+ *
+ * @param[in]	dev_hndl:	hndl returned from qdma_device_open()
+ * @param[in]	id:			queue index
+ * @param[in]	req:		qdma request
+ *
+ * @return	# of bytes transferred
+ * @return	<0: error
+ *****************************************************************************/
+ssize_t qdma_request_submit(unsigned long dev_hndl, unsigned long id,
+			struct qdma_request *req);
+
+/*****************************************************************************/
+/**
+ * qdma_batch_request_submit() - submit a scatter-gather list of data for dma
+ * operation (for both read and write)
+ *
+ * @param[in]	dev_hndl:	hndl returned from qdma_device_open()
+ * @param[in]	id:			queue index
+ * @param[in]	count:			number of requests
+ * @param[in]	reqv:		qdma request
+ *
+ * @return	# of bytes transferred
+ * @return	<0: error
+ *****************************************************************************/
+ssize_t qdma_batch_request_submit(unsigned long dev_hndl, unsigned long id,
+			  unsigned long count, struct qdma_request **reqv);
+
+/*****************************************************************************/
+/**
+ * qdma_queue_c2h_peek() - peek a receive (c2h) queue
+ *
+ * @param	dev_hndl:	hndl returned from qdma_device_open()
+ * @param	qhndl:		hndl returned from qdma_queue_add()
+ *
+ * filled in by libqdma:
+ * @param[in]	udd_cnt:	# of udd received
+ * @param[in]	pkt_cnt:	# of packets received
+ * @param[in]	data_len:	# of bytes of packet data received
+ *
+ * @return	0: success and # of packets received in the Q
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_queue_c2h_peek(unsigned long dev_hndl, unsigned long qhndl,
+			unsigned int *udd_cnt, unsigned int *pkt_cnt,
+			unsigned int *data_len);
+
+/*****************************************************************************/
+/**
+ * qdma_queue_avail_desc() - query of # of free descriptor
+ *
+ * @param[in]	dev_hndl:	hndl returned from qdma_device_open()
+ * @param[in]	qhndl:		hndl returned from qdma_queue_add()
+ *
+ * @return	# of available desc in the queue
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_queue_avail_desc(unsigned long dev_hndl, unsigned long qhndl);
+
+/** packet/streaming interfaces  */
+
+/**
+ * struct qdma_cmpl_ctrl - completion control
+ */
+struct qdma_cmpl_ctrl {
+	/** global_csr_conf.c2h_cnt_th[N] */
+	u8 cnt_th_idx:4;
+	/** global_csr_conf.c2h_timer_cnt[N] */
+	u8 timer_idx:4;
+	/** tigger_mode_t */
+	u8 trigger_mode:3;
+	/** enable status desc. for CMPT */
+	u8 en_stat_desc:1;
+	/** enable interrupt for CMPT */
+	u8 cmpl_en_intr:1;
+};
+
+/*****************************************************************************/
+/**
+ * qdma_queue_cmpl_ctrl() - read/set the c2h Q's completion control
+ *
+ * @param[in]	dev_hndl:	hndl returned from qdma_device_open()
+ * @param[in]	qhndl:		hndl returned from qdma_queue_add()
+ * @param[in]	cctrl:		completion control
+ * @param[in]	set:		read or set
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_queue_cmpl_ctrl(unsigned long dev_hndl, unsigned long qhndl,
+				struct qdma_cmpl_ctrl *cctrl, bool set);
+
+/*****************************************************************************/
+/**
+ * qdma_queue_packet_read() - read rcv'ed data (ST C2H dma operation)
+ *
+ * @param[in]	dev_hndl:	hndl returned from qdma_device_open()
+ * @param[in]	qhndl:		hndl returned from qdma_queue_add()
+ * @param[in]	req:		pointer to the request data
+ * @param[out]	cctrl:		completion control, if no change is desired,
+ *                      set it to NULL
+ *
+ * @return	number of packets read
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_queue_packet_read(unsigned long dev_hndl, unsigned long qhndl,
+			struct qdma_request *req, struct qdma_cmpl_ctrl *cctrl);
+
+/*****************************************************************************/
+/**
+ * qdma_queue_packet_write() - submit data for h2c dma operation
+ *
+ * @param[in]	dev_hndl:	hndl returned from qdma_device_open()
+ * @param[in]	qhndl:		hndl returned from qdma_queue_add()
+ * @param[in]	req:		pointer to the list of packet data
+ *
+ * @return	number of desc posted
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_queue_packet_write(unsigned long dev_hndl, unsigned long qhndl,
+			struct qdma_request *req);
+
+/*****************************************************************************/
+/**
+ * qdma_queue_service() - service the queue
+ *	in the case of irq handler is registered by the user, the user should
+ *	call qdma_queue_service() in its interrupt handler to service the queue
+ *
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	qhndl:		hndl returned from qdma_queue_add()
+ * @param[in]	budget:		ST C2H only, max # of completions
+ *						to be processed. 0 - no limit
+ * @param[in]	c2h_upd_cmpl:   To keep intrrupt disabled, set to false,
+ *				Set to true to re-enable the interrupt:
+ *					ST C2H only, max # of completions
+ *					to be processed. 0 - no limit
+ *
+ *****************************************************************************/
+void qdma_queue_service(unsigned long dev_hndl, unsigned long qhndl,
+			int budget, bool c2h_upd_cmpl);
+
+/*****************************************************************************/
+/**
+ * qdma_intr_ring_dump() - display the interrupt ring info of a vector
+ *
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	vector_idx:	vector number
+ * @param[in]	start_idx:	interrupt ring start idx
+ * @param[in]	end_idx:	interrupt ring end idx
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message bufferuffer
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_intr_ring_dump(unsigned long dev_hndl, unsigned int vector_idx,
+			int start_idx, int end_idx, char *buf, int buflen);
+
+/*****************************************************************************/
+/**
+ * qdma_descq_get_cmpt_udd() - function to receive the user defined data
+ *
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	qhndl:		queue handle
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message bufferuffer
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+
+int qdma_descq_get_cmpt_udd(unsigned long dev_hndl, unsigned long qhndl,
+		char *buf, int buflen);
+
+#ifdef __QDMA_VF__
+/*****************************************************************************/
+/**
+ * qdma_vf_qconf	call for VF to request qmax number of Qs
+ *
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	qmax:	number of qs requested by vf
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_vf_qconf(unsigned long dev_hndl, int qmax);
+#endif
+
+#endif
diff --git a/QDMA/linux-kernel/libqdma/qdma_compat.h b/QDMA/linux-kernel/libqdma/qdma_compat.h
new file mode 100644
index 0000000..b3514f0
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/qdma_compat.h
@@ -0,0 +1,97 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+/**
+ * @file
+ * @brief This file is used to allow the driver to be compiled under multiple
+ *	versions of Linux with as few obtrusive in-line ifdef's as possible.
+ */
+
+#ifndef __QDMA_COMPAT_H
+#define __QDMA_COMPAT_H
+
+#include <linux/version.h>
+#include <asm/barrier.h>
+
+/**
+ * if linux kernel version is < 3.19.0
+ * then define the dma_rmb and dma_wmb
+ */
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 19, 0)
+
+#ifndef dma_rmb
+#define dma_rmb		rmb
+#endif /* #ifndef dma_rmb */
+
+#ifndef dma_wmb
+#define dma_wmb		wmb
+#endif /* #ifndef dma_wmb */
+
+#endif
+
+/* use simple wait queue (swaitq) with newer kernels */
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 6, 0)
+#include <linux/swait.h>
+
+#define qdma_wait_queue			struct swait_queue_head
+#define qdma_waitq_init			init_swait_queue_head
+#define qdma_waitq_wakeup		swake_up
+#define qdma_waitq_wait_event		swait_event_interruptible
+#define qdma_waitq_wait_event_timeout	swait_event_interruptible_timeout
+
+#else
+#include <linux/wait.h>
+
+#define qdma_wait_queue			wait_queue_head_t
+#define qdma_waitq_init			init_waitqueue_head
+#define qdma_waitq_wakeup		wake_up_interruptible
+#define qdma_waitq_wait_event		wait_event_interruptible
+#define qdma_waitq_wait_event_timeout	wait_event_interruptible_timeout
+
+#endif	/* swaitq */
+
+/* timer */
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 15, 0)
+#define qdma_timer_setup(timer, fp_handler, data) \
+		timer_setup(timer, fp_handler, 0)
+
+#define qdma_timer_start(timer, expires) \
+		mod_timer(timer, round_jiffies(jiffies + (expires)))
+
+#else
+#define qdma_timer_setup(timer, fp_handler, priv)	\
+	do { \
+		init_timer(timer); \
+		timer->data = (unsigned long)priv; \
+		timer->function = fp_handler; \
+		del_timer(timer); \
+	} while (0)
+
+#define qdma_timer_start(timer, timeout) \
+	do { \
+		del_timer(timer); \
+		timer->expires = jiffies + (timeout); \
+		add_timer(timer); \
+	} while (0)
+
+
+#endif /* timer */
+
+
+#endif /* #ifndef __QDMA_COMPAT_H */
diff --git a/QDMA/linux-kernel/libqdma/qdma_context.c b/QDMA/linux-kernel/libqdma/qdma_context.c
new file mode 100644
index 0000000..2e3081f
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/qdma_context.c
@@ -0,0 +1,909 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#define pr_fmt(fmt)	KBUILD_MODNAME ":%s: " fmt, __func__
+
+#include <linux/kernel.h>
+#include <linux/pci.h>
+#include "qdma_device.h"
+#include "qdma_descq.h"
+#include "qdma_intr.h"
+#include "qdma_regs.h"
+#include "qdma_context.h"
+
+/**
+ * Make the interrupt context
+ */
+static int make_intr_context(struct xlnx_dma_dev *xdev, u32 *data, int cnt)
+{
+	int i, j;
+
+	if ((xdev->conf.qdma_drv_mode != INDIRECT_INTR_MODE) &&
+			(xdev->conf.qdma_drv_mode != AUTO_MODE)) {
+		memset(data, 0, cnt * sizeof(u32));
+		return 0;
+	}
+
+	 /** Each context size is QDMA_REG_IND_CTXT_WCNT_3
+	  *  data[QDMA_REG_IND_CTXT_WCNT_3 *  QDMA_NUM_DATA_VEC_FOR_INTR_CXT]
+	  */
+	if (cnt <
+		(QDMA_NUM_DATA_VEC_FOR_INTR_CXT * QDMA_REG_IND_CTXT_WCNT_3)) {
+		pr_warn("%s, intr context %d < (%d * %d).\n",
+			xdev->conf.name, cnt,
+			 QDMA_NUM_DATA_VEC_FOR_INTR_CXT,
+			QDMA_REG_IND_CTXT_WCNT_3);
+		return -EINVAL;
+	}
+
+	memset(data, 0, cnt * sizeof(u32));
+	/** program the coalescing context
+	 *  i -> Number of vectors
+	 *  j -> number of words for each vector context
+	 */
+	for (i = 0, j = 0; i <  QDMA_NUM_DATA_VEC_FOR_INTR_CXT; i++) {
+		u64 bus_64;
+		u32 v;
+		struct intr_coal_conf *entry = (xdev->intr_coal_list + i);
+
+		/* TBD:
+		 * Assume that Qid is irrelevant for interrupt context
+		 * programming because, interrupt context is done per vector
+		 * which for the function and not for each queue
+		 */
+
+		bus_64 = (PCI_DMA_H(entry->intr_ring_bus) << 20) |
+			 ((PCI_DMA_L(entry->intr_ring_bus)) >> 12);
+
+		v = bus_64 & M_INT_AGGR_W0_BADDR_64;
+
+		/** Data[0] */
+		data[j] = (1 << S_INT_AGGR_W0_F_VALID |
+			   V_INT_AGGR_W0_VEC_ID(entry->vec_id)|
+			   V_INT_AGGR_W0_BADDR_64(v) |
+			   1 << S_INT_AGGR_W0_F_COLOR);
+
+		/** Data[1] */
+		v = (bus_64 >> L_INT_AGGR_W0_BADDR_64);
+		data[++j] = v;
+
+		v = (bus_64 >>
+			(L_INT_AGGR_W0_BADDR_64 + 32)) & M_INT_AGGR_W2_BADDR_64;
+		/** Data[3] */
+		data[++j] = ((V_INT_AGGR_W2_BADDR_64(v)) |
+				V_INT_AGGR_W2_VEC_SIZE(xdev->conf.intr_rngsz));
+
+		j++;
+	}
+
+	return 0;
+}
+
+#ifndef __QDMA_VF__
+static int make_stm_c2h_context(struct qdma_descq *descq, u32 *data)
+{
+	int pipe_slr_id = descq->conf.pipe_slr_id;
+	int pipe_flow_id = descq->conf.pipe_flow_id;
+	int pipe_tdest = descq->conf.pipe_tdest;
+
+	/* 191..160 */
+	data[5] = F_STM_C2H_CTXT_ENTRY_VALID;
+
+	/* 128..159 */
+	data[1] = (pipe_slr_id << S_STM_CTXT_C2H_SLR) |
+		  ((pipe_tdest & 0xFF00) << S_STM_CTXT_C2H_TDEST_H);
+
+	/* 96..127 */
+	data[0] = ((pipe_tdest & 0xFF) << S_STM_CTXT_C2H_TDEST_L) |
+		  (pipe_flow_id << S_STM_CTXT_C2H_FID);
+
+	pr_debug("%s, STM 0x%08x, 0x%08x, 0x%08x, 0x%08x, 0x%08x, 0x%08x.\n",
+		 descq->conf.name, data[0], data[1], data[2], data[3], data[4],
+		 data[5]);
+	return 0;
+}
+
+static int make_stm_h2c_context(struct qdma_descq *descq, u32 *data)
+{
+	int pipe_slr_id = descq->conf.pipe_slr_id;
+	int pipe_flow_id = descq->conf.pipe_flow_id;
+	int pipe_tdest = descq->conf.pipe_tdest;
+	int dppkt = 1;
+	int log2_dppkt = ilog2(dppkt);
+	int pkt_lim = 0;
+	int max_ask = 8;
+
+	/* 191..160 */
+	data[5] = F_STM_H2C_CTXT_ENTRY_VALID;
+
+	/* 128..159 */
+	data[4] = (descq->qidx_hw << S_STM_CTXT_QID);
+
+	/* 96..127 */
+	data[3] = (pipe_slr_id << S_STM_CTXT_H2C_SLR) |
+		  ((pipe_tdest & 0xFF00) << S_STM_CTXT_H2C_TDEST_H);
+
+	/* 64..95 */
+	data[2] = ((pipe_tdest & 0xFF) << S_STM_CTXT_H2C_TDEST_L) |
+		  (pipe_flow_id << S_STM_CTXT_H2C_FID) |
+		  (pkt_lim << S_STM_CTXT_PKT_LIM) |
+		  (max_ask << S_STM_CTXT_MAX_ASK);
+
+	/* 32..63 */
+	data[1] = (dppkt << S_STM_CTXT_DPPKT) |
+		  (log2_dppkt << S_STM_CTXT_LOG2_DPPKT);
+
+	/* 0..31 */
+	/** explicitly init to 8 to workaround hw issue due to which the value
+	 * is getting initialized to zero instead of its reset value of 8
+	 */
+	data[0] = 8;
+
+	pr_debug("%s, STM 0x%08x, 0x%08x, 0x%08x, 0x%08x, 0x%08x, 0x%08x.\n",
+		 descq->conf.name, data[0], data[1], data[2], data[3], data[4],
+		 data[5]);
+	return 0;
+}
+#endif
+
+static int make_sw_context(struct qdma_descq *descq, u32 *data, int cnt)
+{
+	int ring_index;
+
+	if (cnt < QDMA_REG_IND_CTXT_WCNT_5) {
+		pr_warn("%s, sw context count %d < %d.\n",
+			descq->xdev->conf.name, cnt, QDMA_REG_IND_CTXT_WCNT_5);
+		return -EINVAL;
+	}
+	memset(data, 0, cnt * sizeof(u32));
+
+	/* sw context */
+	if ((descq->xdev->conf.qdma_drv_mode == INDIRECT_INTR_MODE) ||
+			(descq->xdev->conf.qdma_drv_mode == AUTO_MODE)) {
+		ring_index = get_intr_ring_index(descq->xdev, descq->intr_id);
+		data[4] = V_DESC_CTXT_W4_VEC(ring_index) |
+				(0x01 << S_DESC_CTXT_W1_F_INTR_AGGR);
+	} else {
+		data[4] = V_DESC_CTXT_W4_VEC(descq->intr_id);
+	}
+
+	data[3] = PCI_DMA_H(descq->desc_bus);
+	data[2] = PCI_DMA_L(descq->desc_bus);
+	data[1] = (1 << S_DESC_CTXT_W1_F_QEN) |
+			(descq->conf.cmpl_status_pend_chk <<
+					S_DESC_CTXT_W1_F_CMPL_STATUS_PEND_CHK) |
+			(descq->conf.cmpl_status_acc_en <<
+					S_DESC_CTXT_W1_F_CMPL_STATUS_ACC_EN) |
+			V_DESC_CTXT_W1_RNG_SZ(descq->conf.desc_rng_sz_idx) |
+			(descq->conf.desc_bypass << S_DESC_CTXT_W1_F_BYP) |
+			(descq->conf.cmpl_status_en <<
+					S_DESC_CTXT_W1_F_CMPL_STATUS_EN) |
+			(descq->conf.irq_en << S_DESC_CTXT_W1_F_IRQ_EN) |
+			(~descq->conf.st << S_DESC_CTXT_W1_F_IS_MM);
+
+	if (descq->conf.desc_bypass &&
+			(descq->conf.sw_desc_sz == DESC_SZ_64B)) {
+		data[1] |= V_DESC_CTXT_W1_DSC_SZ(descq->conf.sw_desc_sz);
+	} else {
+		if (!descq->conf.st) { /* mm h2c/c2h */
+			data[1] |= (V_DESC_CTXT_W1_DSC_SZ(DESC_SZ_32B)) |
+				   (descq->channel << S_DESC_CTXT_W1_F_MM_CHN);
+		} else if (descq->conf.c2h) {  /* st c2h */
+			data[1] |= (descq->conf.fetch_credit <<
+					S_DESC_CTXT_W1_F_FCRD_EN) |
+				(V_DESC_CTXT_W1_DSC_SZ(DESC_SZ_8B));
+		} else { /* st h2c */
+			data[1] |= V_DESC_CTXT_W1_DSC_SZ(DESC_SZ_16B);
+
+			/* For STM & TM mode, set fcrd_en for ST H2C */
+			if (descq->xdev->stm_en ||
+			    descq->xdev->conf.tm_mode_en)
+				data[1] |= (descq->conf.fetch_credit <<
+					    S_DESC_CTXT_W1_F_FCRD_EN);
+		}
+	}
+
+	/* pidx = 0; irq_ack = 0 */
+	data[0] = ((V_DESC_CTXT_W0_FUNC_ID(descq->xdev->func_id)) |
+			(((descq->xdev->conf.qdma_drv_mode !=
+					POLL_MODE) ? 1 : 0) <<
+					S_DESC_CTXT_W0_F_INTR_ARM));
+
+#ifdef ERR_DEBUG
+	if (descq->induce_err & (1 << param)) {
+		data[0] |= (0xFFF << S_DESC_CTXT_W0_FUNC_ID);
+		pr_info("induced error %d", ind_ctxt_cmd_err);
+	}
+#endif
+
+	pr_debug("%s, SW 0x%08x 0x%08x, 0x%08x, 0x%08x, 0x%08x.\n",
+		descq->conf.name, data[4], data[3], data[2], data[1], data[0]);
+
+	return 0;
+}
+
+/* ST: prefetch context setup */
+static int make_prefetch_context(struct qdma_descq *descq, u32 *data, int cnt)
+{
+	BUG_ON(!descq);
+	BUG_ON(!data);
+
+	if (cnt < QDMA_REG_IND_CTXT_WCNT_2) {
+		pr_warn("%s, prefetch context count %d < %d.\n",
+			descq->conf.name, cnt, QDMA_REG_IND_CTXT_WCNT_2);
+		return -EINVAL;
+	}
+	memset(data, 0, cnt * sizeof(u32));
+
+	/* prefetch context */
+	data[1] = 1 << S_PFTCH_W1_F_VALID;
+	data[0] = (descq->conf.pfetch_bypass << S_PFTCH_W0_F_BYPASS) |
+		(descq->conf.c2h_buf_sz_idx << S_PFTCH_W0_BUF_SIZE_IDX) |
+		/** TBD: this code needs to be deleted once the PG is updated.
+		 * func_id bits are going to be reserved
+		 * need to get clarity on port id
+		 */
+		//(descq->conf.port_id << S_PFTCH_W0_PORT_ID) |
+		// (descq->xdev->func_id << S_PFTCH_W0_FUNC_ID) |
+		  (descq->conf.pfetch_en << S_PFTCH_W0_F_EN_PFTCH);
+
+	pr_debug("%s, PFTCH 0x%08x 0x%08x\n",
+		descq->conf.name, data[1], data[0]);
+
+	return 0;
+}
+
+/* ST C2H : writeback context setup */
+static int make_cmpt_context(struct qdma_descq *descq, u32 *data, int cnt)
+{
+	u64 bus_64;
+	u32 v;
+	int ring_index;
+
+	if (cnt < QDMA_REG_IND_CTXT_WCNT_5) {
+		pr_warn("%s, cmpt context count %d < %d.\n",
+			descq->xdev->conf.name, cnt, QDMA_REG_IND_CTXT_WCNT_5);
+		return -EINVAL;
+	}
+	memset(data, 0, cnt * sizeof(u32));
+
+	/* writeback context */
+	bus_64 = (PCI_DMA_H(descq->desc_cmpt_bus) << 26) |
+		((PCI_DMA_L(descq->desc_cmpt_bus)) >> 6);
+
+	data[0] = (descq->conf.cmpl_stat_en << S_CMPT_CTXT_W0_F_EN_STAT_DESC) |
+		  (descq->conf.irq_en << S_CMPT_CTXT_W0_F_EN_INT) |
+		  (V_CMPT_CTXT_W0_TRIG_MODE(descq->conf.cmpl_trig_mode)) |
+		  (V_CMPT_CTXT_W0_FNC_ID(descq->xdev->func_id)) |
+		  (descq->conf.cmpl_timer_idx << S_CMPT_CTXT_W0_TIMER_IDX) |
+		  (descq->conf.cmpl_cnt_th_idx << S_CMPT_CTXT_W0_COUNTER_IDX) |
+		  (1 << S_CMPT_CTXT_W0_F_COLOR) |
+		  (descq->conf.cmpl_rng_sz_idx << S_CMPT_CTXT_W0_RNG_SZ);
+
+	data[1] = bus_64 & 0xFFFFFFFF;
+
+	v = PCI_DMA_H(bus_64) & M_CMPT_CTXT_W2_BADDR_64;
+	data[2] = (V_CMPT_CTXT_W2_BADDR_64(v)) |
+		  (V_CMPT_CTXT_W2_DESC_SIZE(descq->conf.cmpl_desc_sz));
+
+	data[3] = (1 << S_CMPT_CTXT_W3_F_VALID);
+
+	if ((descq->xdev->conf.qdma_drv_mode == INDIRECT_INTR_MODE) ||
+			(descq->xdev->conf.qdma_drv_mode == AUTO_MODE)) {
+		ring_index = get_intr_ring_index(descq->xdev, descq->intr_id);
+		data[4] = (descq->conf.cmpl_ovf_chk_dis <<
+				S_CMPT_CTXT_W4_F_OVF_CHK_DIS) |
+				V_CMPT_CTXT_W4_VEC(ring_index) |
+				(0x01 << S_CMPT_CTXT_W4_F_INTR_AGGR);
+	} else {
+		data[4] = (descq->conf.cmpl_ovf_chk_dis <<
+				S_CMPT_CTXT_W4_F_OVF_CHK_DIS) |
+				V_CMPT_CTXT_W4_VEC(descq->intr_id);
+	}
+
+	pr_debug("%s, CMPT 0x%08x, 0x%08x, 0x%08x, 0x%08x, 0x%08x.\n",
+		descq->conf.name, data[4], data[3], data[2], data[1], data[0]);
+
+	return 0;
+}
+
+#ifdef __QDMA_VF__
+int qdma_intr_context_setup(struct xlnx_dma_dev *xdev)
+{
+	int i = 0;
+	int rv;
+	struct mbox_msg *m = NULL;
+	struct mbox_msg_hdr *hdr = NULL;
+	struct mbox_msg_intr_ctxt *ictxt = NULL;
+
+	if ((xdev->conf.qdma_drv_mode != INDIRECT_INTR_MODE) &&
+			(xdev->conf.qdma_drv_mode != AUTO_MODE))
+		return 0;
+
+	m = qdma_mbox_msg_alloc(xdev,
+					 MBOX_OP_INTR_CTXT);
+	if (!m)
+		return -ENOMEM;
+
+	hdr =  &m->hdr;
+	ictxt = &m->intr_ctxt;
+
+	ictxt->clear = 1;
+	ictxt->vec_base = xdev->dvec_start_idx;
+	ictxt->num_rings = QDMA_NUM_DATA_VEC_FOR_INTR_CXT;
+
+	for (i = 0; i < QDMA_NUM_DATA_VEC_FOR_INTR_CXT; i++) {
+		ictxt->ring_index_list[i] =
+			get_intr_ring_index(xdev, xdev->dvec_start_idx + i);
+	}
+
+	rv = make_intr_context(xdev, ictxt->w,
+			(QDMA_NUM_DATA_VEC_FOR_INTR_CXT *
+					QDMA_REG_IND_CTXT_WCNT_3));
+	if (rv < 0)
+		return rv;
+
+	rv = qdma_mbox_msg_send(xdev, m, 1, MBOX_OP_INTR_CTXT_RESP,
+				QDMA_MBOX_MSG_TIMEOUT_MS);
+	if (rv < 0) {
+		if (rv != -ENODEV)
+			pr_err("%s, mbox failed for interrupt context %d.\n",
+				xdev->conf.name, rv);
+		goto free_msg;
+	}
+
+	rv = hdr->status;
+
+free_msg:
+	qdma_mbox_msg_free(m);
+	if (rv < 0)
+		return rv;
+
+	return 0;
+}
+
+int qdma_descq_context_clear(struct xlnx_dma_dev *xdev, unsigned int qid_hw,
+				bool st, bool c2h, bool clr)
+{
+	struct mbox_msg *m = qdma_mbox_msg_alloc(xdev, MBOX_OP_QCTXT_CLR);
+	struct mbox_msg_hdr *hdr = m ? &m->hdr : NULL;
+	struct mbox_msg_qctxt *qctxt = m ? &m->qctxt : NULL;
+	int rv;
+
+	if (!m)
+		return -ENOMEM;
+
+	qctxt->qid = qid_hw;
+	qctxt->st = st;
+	qctxt->c2h = c2h;
+
+	rv = qdma_mbox_msg_send(xdev, m, 1, MBOX_OP_QCTXT_CLR_RESP,
+				QDMA_MBOX_MSG_TIMEOUT_MS);
+	if (rv < 0) {
+		if (rv != -ENODEV)
+			pr_info("%s, qid_hw 0x%x mbox failed %d.\n",
+				xdev->conf.name, qid_hw, rv);
+		goto err_out;
+	}
+
+	rv = hdr->status;
+
+err_out:
+	qdma_mbox_msg_free(m);
+	return rv;
+}
+
+int qdma_descq_context_read(struct xlnx_dma_dev *xdev, unsigned int qid_hw,
+				bool st, bool c2h,
+				struct hw_descq_context *context)
+{
+	struct mbox_msg *m = qdma_mbox_msg_alloc(xdev, MBOX_OP_QCTXT_RD);
+	struct mbox_msg_hdr *hdr = m ? &m->hdr : NULL;
+	struct mbox_msg_qctxt *qctxt = m ? &m->qctxt : NULL;
+	int rv;
+
+	if (!m)
+		return -ENOMEM;
+
+	qctxt->qid = qid_hw;
+	qctxt->st = st;
+	qctxt->c2h = c2h;
+
+	rv = qdma_mbox_msg_send(xdev, m, 1, MBOX_OP_QCTXT_RD_RESP,
+				QDMA_MBOX_MSG_TIMEOUT_MS);
+	if (rv < 0) {
+		if (rv != -ENODEV)
+			pr_info("%s, qid_hw 0x%x mbox failed %d.\n",
+				xdev->conf.name, qid_hw, rv);
+		goto err_out;
+	}
+
+	if (hdr->status) {
+		rv = hdr->status;
+		goto err_out;
+	}
+
+	memcpy(context, &qctxt->context, sizeof(struct hw_descq_context));
+
+	return 0;
+
+err_out:
+	qdma_mbox_msg_free(m);
+	return rv;
+}
+
+int qdma_descq_context_setup(struct qdma_descq *descq)
+{
+	struct xlnx_dma_dev *xdev = descq->xdev;
+	struct mbox_msg *m = qdma_mbox_msg_alloc(xdev, MBOX_OP_QCTXT_WRT);
+	struct mbox_msg_hdr *hdr = m ? &m->hdr : NULL;
+	struct mbox_msg_qctxt *qctxt = m ? &m->qctxt : NULL;
+	struct hw_descq_context *context = m ? &qctxt->context : NULL;
+	int rv;
+
+	if (!m)
+		return -ENOMEM;
+
+	rv = qdma_descq_context_read(xdev, descq->qidx_hw,
+				descq->conf.st, descq->conf.c2h,
+				context);
+	if (rv < 0) {
+		pr_info("%s, qid_hw 0x%x, %s mbox failed %d.\n",
+			xdev->conf.name, descq->qidx_hw, descq->conf.name, rv);
+		goto err_out;
+	}
+
+	make_sw_context(descq, context->sw, QDMA_REG_IND_CTXT_WCNT_5);
+	if (descq->conf.st && descq->conf.c2h) {
+		make_prefetch_context(descq, context->prefetch, 2);
+		make_cmpt_context(descq, context->cmpt,
+				QDMA_REG_IND_CTXT_WCNT_5);
+	}
+
+	qctxt->clear = 1;
+	qctxt->verify = 1;
+	qctxt->st = descq->conf.st;
+	qctxt->c2h = descq->conf.c2h;
+	qctxt->qid = descq->qidx_hw;
+
+	rv = qdma_mbox_msg_send(xdev, m, 1, MBOX_OP_QCTXT_WRT_RESP,
+				QDMA_MBOX_MSG_TIMEOUT_MS);
+	if (rv < 0) {
+		if (rv != -ENODEV)
+			pr_info("%s, qid_hw 0x%x, %s mbox failed %d.\n",
+				xdev->conf.name, descq->qidx_hw,
+				descq->conf.name, rv);
+		goto err_out;
+	}
+
+	if (hdr->status) {
+		rv = hdr->status;
+		pr_err("Failed to set intr ctxt message\n");
+		goto err_out;
+	}
+
+err_out:
+	qdma_mbox_msg_free(m);
+	return rv;
+}
+
+#else /* PF only */
+
+int qdma_prog_intr_context(struct xlnx_dma_dev *xdev,
+		struct mbox_msg_intr_ctxt *ictxt)
+{
+	int i = 0;
+	int rv;
+	int ring_index;
+
+	for (i = 0; i < ictxt->num_rings; i++) {
+		ring_index = ictxt->ring_index_list[i];
+
+		/* clear the interrupt context for each vector */
+		rv = hw_indirect_ctext_prog(xdev,
+					ring_index,
+					QDMA_CTXT_CMD_CLR,
+					QDMA_CTXT_SEL_COAL,
+					NULL,
+					QDMA_REG_IND_CTXT_WCNT_8,
+					0);
+		if (rv < 0)
+			return rv;
+
+		rv = hw_indirect_ctext_prog(xdev,
+					ring_index,
+					QDMA_CTXT_CMD_WR,
+					QDMA_CTXT_SEL_COAL,
+					(ictxt->w +
+						(QDMA_REG_IND_CTXT_WCNT_3 * i)),
+					QDMA_REG_IND_CTXT_WCNT_3,
+					1);
+		if (rv < 0)
+			return rv;
+#if 0
+		/** print interrupt context */
+		pr_debug("intr_ctxt WR: ring_index(Qid) = %d, data[2] = %x data[1] = %x data[0] = %x\n",
+				ring_index,
+				*(ictxt->w +
+					((QDMA_REG_IND_CTXT_WCNT_3*i) + 2)),
+				*(ictxt->w +
+					((QDMA_REG_IND_CTXT_WCNT_3*i) + 1)),
+				*(ictxt->w + (QDMA_REG_IND_CTXT_WCNT_3*i)));
+
+		rv = hw_indirect_ctext_prog(xdev,
+					ring_index,
+					QDMA_CTXT_CMD_RD,
+					QDMA_CTXT_SEL_COAL,
+					intr_ctxt,
+					QDMA_REG_IND_CTXT_WCNT_3,
+					1);
+		if (rv < 0)
+			return rv;
+
+		pr_debug("intr_ctxt RD: ring_index(Qid) = %d, data[2] = %x data[1] = %x data[0] = %x\n",
+				ring_index,
+				intr_ctxt[2],
+				intr_ctxt[1],
+				intr_ctxt[0]);
+#endif
+	}
+
+	return 0;
+}
+
+int qdma_intr_context_setup(struct xlnx_dma_dev *xdev)
+{
+	u32 data[(QDMA_NUM_DATA_VEC_FOR_INTR_CXT *
+			QDMA_REG_IND_CTXT_WCNT_3)];
+	int i = 0;
+	int rv;
+	int ring_index;
+
+	if ((xdev->conf.qdma_drv_mode != INDIRECT_INTR_MODE) &&
+			(xdev->conf.qdma_drv_mode != AUTO_MODE))
+		return 0;
+
+	/** Preparing the interrupt context for all the vectors
+	 *  each vector's context width is QDMA_REG_IND_CTXT_WCNT_3(3)
+	 */
+	rv = make_intr_context(xdev, data,
+			(QDMA_NUM_DATA_VEC_FOR_INTR_CXT *
+					QDMA_REG_IND_CTXT_WCNT_3));
+	if (rv < 0)
+		return rv;
+
+	for (i = 0; i <  QDMA_NUM_DATA_VEC_FOR_INTR_CXT; i++) {
+		ring_index = get_intr_ring_index(xdev,
+				(i + xdev->dvec_start_idx));
+		/* clear the interrupt context for each vector */
+		rv = hw_indirect_ctext_prog(xdev,
+					ring_index,
+					QDMA_CTXT_CMD_CLR,
+					QDMA_CTXT_SEL_COAL,
+					NULL,
+					QDMA_REG_IND_CTXT_WCNT_8,
+					0);
+		if (rv < 0)
+			return rv;
+
+		rv = hw_indirect_ctext_prog(xdev,
+					ring_index,
+					QDMA_CTXT_CMD_WR,
+					QDMA_CTXT_SEL_COAL,
+					(data + (QDMA_REG_IND_CTXT_WCNT_3 * i)),
+					QDMA_REG_IND_CTXT_WCNT_3,
+					1);
+		if (rv < 0)
+			return rv;
+#if 0
+		/** print interrupt context */
+		pr_debug("intr_ctxt WR: ring_index(Qid) = %d, data[2] = %x data[1] = %x data[0] = %x\n",
+				ring_index,
+				*(data + ((QDMA_REG_IND_CTXT_WCNT_3*i) + 2)),
+				*(data + ((QDMA_REG_IND_CTXT_WCNT_3*i) + 1)),
+				*(data + (QDMA_REG_IND_CTXT_WCNT_3*i)));
+
+		rv = hw_indirect_ctext_prog(xdev,
+					ring_index,
+					QDMA_CTXT_CMD_RD,
+					QDMA_CTXT_SEL_COAL,
+					intr_ctxt,
+					QDMA_REG_IND_CTXT_WCNT_3,
+					1);
+		if (rv < 0)
+			return rv;
+
+		pr_debug("intr_ctxt RD: ring_index(Qid) = %d, data[2] = %x data[1] = %x data[0] = %x\n",
+				ring_index,
+				intr_ctxt[2],
+				intr_ctxt[1],
+				intr_ctxt[0]);
+#endif
+	}
+
+	return 0;
+}
+
+int qdma_descq_context_clear(struct xlnx_dma_dev *xdev, unsigned int qid_hw,
+				bool st, bool c2h, bool clr)
+{
+	u8 sel;
+	int rv = 0;
+
+	sel = c2h ? QDMA_CTXT_SEL_SW_C2H : QDMA_CTXT_SEL_SW_H2C;
+	rv = hw_indirect_ctext_prog(xdev, qid_hw,
+			clr ? QDMA_CTXT_CMD_CLR : QDMA_CTXT_CMD_INV,
+			sel, NULL, 0, 0);
+	if (rv < 0)
+		return rv;
+
+	sel = c2h ? QDMA_CTXT_SEL_HW_C2H : QDMA_CTXT_SEL_HW_H2C;
+	rv = hw_indirect_ctext_prog(xdev, qid_hw, QDMA_CTXT_CMD_CLR, sel,
+				 NULL, 0, 0);
+	if (rv < 0)
+		return rv;
+
+	sel = c2h ? QDMA_CTXT_SEL_CR_C2H : QDMA_CTXT_SEL_CR_H2C;
+	rv = hw_indirect_ctext_prog(xdev, qid_hw, QDMA_CTXT_CMD_CLR, sel,
+				NULL, 0, 0);
+	if (rv < 0)
+		return rv;
+
+	/* Only clear prefetch and writeback contexts if this queue is ST C2H */
+	if (st && c2h) {
+		rv = hw_indirect_ctext_prog(xdev, qid_hw, QDMA_CTXT_CMD_CLR,
+					QDMA_CTXT_SEL_PFTCH, NULL, 0, 0);
+		if (rv < 0)
+			return rv;
+		rv = hw_indirect_ctext_prog(xdev, qid_hw, QDMA_CTXT_CMD_CLR,
+					QDMA_CTXT_SEL_CMPT, NULL, 0, 0);
+		if (rv < 0)
+			return rv;
+	}
+
+	return 0;
+}
+
+int qdma_descq_context_setup(struct qdma_descq *descq)
+{
+	struct xlnx_dma_dev *xdev = descq->xdev;
+	struct hw_descq_context context;
+	int rv;
+
+	rv = qdma_descq_context_clear(xdev, descq->qidx_hw, descq->conf.st,
+				descq->conf.c2h, 1);
+	if (rv < 0)
+		return rv;
+
+	memset(&context, 0, sizeof(context));
+
+	make_sw_context(descq, context.sw, QDMA_REG_IND_CTXT_WCNT_5);
+
+	if (descq->conf.st && descq->conf.c2h) {
+		make_prefetch_context(descq,
+			context.prefetch, QDMA_REG_IND_CTXT_WCNT_2);
+		make_cmpt_context(descq, context.cmpt,
+				QDMA_REG_IND_CTXT_WCNT_5);
+	}
+
+	return qdma_descq_context_program(descq->xdev, descq->qidx_hw,
+				descq->conf.st, descq->conf.c2h, &context);
+}
+
+int qdma_descq_stm_setup(struct qdma_descq *descq)
+{
+	struct stm_descq_context context;
+
+	memset(&context, 0, sizeof(context));
+	if (descq->conf.c2h)
+		make_stm_c2h_context(descq, context.stm);
+	else
+		make_stm_h2c_context(descq, context.stm);
+
+	return qdma_descq_stm_program(descq->xdev, descq->qidx_hw,
+				      descq->conf.pipe_flow_id,
+				      descq->conf.c2h, false,
+				      &context);
+}
+
+int qdma_descq_stm_clear(struct qdma_descq *descq)
+{
+	struct stm_descq_context context;
+
+	memset(&context, 0, sizeof(context));
+	return qdma_descq_stm_program(descq->xdev, descq->qidx_hw,
+				      descq->conf.pipe_flow_id,
+				      descq->conf.c2h, true,
+				      &context);
+}
+
+int qdma_descq_context_read(struct xlnx_dma_dev *xdev, unsigned int qid_hw,
+				bool st, bool c2h,
+				struct hw_descq_context *context)
+{
+	u8 sel;
+	int rv = 0;
+
+	memset(context, 0, sizeof(struct hw_descq_context));
+
+	sel = c2h ? QDMA_CTXT_SEL_SW_C2H : QDMA_CTXT_SEL_SW_H2C;
+	rv = hw_indirect_ctext_prog(xdev, qid_hw, QDMA_CTXT_CMD_RD, sel,
+						context->sw,
+						QDMA_REG_IND_CTXT_WCNT_5, 0);
+	if (rv < 0)
+		return rv;
+
+	sel = c2h ? QDMA_CTXT_SEL_HW_C2H : QDMA_CTXT_SEL_HW_H2C;
+	rv = hw_indirect_ctext_prog(xdev, qid_hw, QDMA_CTXT_CMD_RD, sel,
+						context->hw,
+						QDMA_REG_IND_CTXT_WCNT_2, 0);
+	if (rv < 0)
+		return rv;
+
+	sel = c2h ? QDMA_CTXT_SEL_CR_C2H : QDMA_CTXT_SEL_CR_H2C;
+	rv = hw_indirect_ctext_prog(xdev, qid_hw, QDMA_CTXT_CMD_RD, sel,
+						context->cr,
+						QDMA_REG_IND_CTXT_WCNT_1, 0);
+	if (rv < 0)
+		return rv;
+
+	if (st && c2h) {
+		rv = hw_indirect_ctext_prog(xdev, qid_hw, QDMA_CTXT_CMD_RD,
+						QDMA_CTXT_SEL_CMPT,
+						context->cmpt,
+						QDMA_REG_IND_CTXT_WCNT_5, 0);
+		if (rv < 0)
+			return rv;
+		rv = hw_indirect_ctext_prog(xdev, qid_hw, QDMA_CTXT_CMD_RD,
+						QDMA_CTXT_SEL_PFTCH,
+						context->prefetch,
+						QDMA_REG_IND_CTXT_WCNT_2, 0);
+		if (rv < 0)
+			return rv;
+	}
+
+	return 0;
+}
+
+int qdma_intr_context_read(struct xlnx_dma_dev *xdev,
+	int ring_index, unsigned int ctxt_sz, u32 *context)
+{
+	int rv = 0;
+
+	memset(context, 0, (sizeof(u32) * ctxt_sz));
+
+	rv = hw_indirect_ctext_prog(xdev, ring_index,
+				QDMA_CTXT_CMD_RD, QDMA_CTXT_SEL_COAL,
+				context, ctxt_sz, 0);
+	if (rv < 0)
+		return rv;
+
+	return 0;
+}
+
+int qdma_descq_context_program(struct xlnx_dma_dev *xdev, unsigned int qid_hw,
+				bool st, bool c2h,
+				struct hw_descq_context *context)
+
+{
+	u8 sel;
+	int rv;
+
+	/* always clear first */
+	rv = qdma_descq_context_clear(xdev, qid_hw, st, c2h, 1);
+	if (rv < 0)
+		return rv;
+
+	sel = c2h ?  QDMA_CTXT_SEL_SW_C2H : QDMA_CTXT_SEL_SW_H2C;
+	rv = hw_indirect_ctext_prog(xdev, qid_hw, QDMA_CTXT_CMD_WR,
+					sel,
+					context->sw,
+					QDMA_REG_IND_CTXT_WCNT_5, 1);
+	if (rv < 0)
+		return rv;
+
+	/* Only c2h st specific setup done below*/
+	if (!st || !c2h)
+		return 0;
+
+	/* prefetch context */
+	rv = hw_indirect_ctext_prog(xdev, qid_hw, QDMA_CTXT_CMD_WR,
+					QDMA_CTXT_SEL_PFTCH,
+					context->prefetch,
+					QDMA_REG_IND_CTXT_WCNT_2, 1);
+	if (rv < 0)
+		return rv;
+
+	/* writeback context */
+	rv = hw_indirect_ctext_prog(xdev, qid_hw, QDMA_CTXT_CMD_WR,
+					QDMA_CTXT_SEL_CMPT,
+					context->cmpt,
+					QDMA_REG_IND_CTXT_WCNT_5, 1);
+	if (rv < 0)
+		return rv;
+
+	return 0;
+}
+
+
+int qdma_descq_stm_read(struct xlnx_dma_dev *xdev, unsigned int qid_hw,
+			u8 pipe_flow_id, bool c2h, bool map, bool ctxt,
+			struct stm_descq_context *context)
+{
+	int rv = 0;
+
+	if (!map) {
+		rv = hw_indirect_stm_prog(xdev, qid_hw, pipe_flow_id,
+					  STM_CSR_CMD_RD,
+					  ctxt ? STM_IND_ADDR_Q_CTX_H2C :
+					  STM_IND_ADDR_FORCED_CAN,
+					  context->stm, 5, false);
+	} else {
+		rv = hw_indirect_stm_prog(xdev, qid_hw, pipe_flow_id,
+					  STM_CSR_CMD_RD,
+					  c2h ? STM_IND_ADDR_C2H_MAP :
+					  STM_IND_ADDR_H2C_MAP,
+					  context->stm, c2h ? 1 : 5,
+					  false);
+	}
+	return rv;
+}
+
+int qdma_descq_stm_program(struct xlnx_dma_dev *xdev, unsigned int qid_hw,
+			   u8 pipe_flow_id, bool c2h, bool clear,
+			   struct stm_descq_context *context)
+{
+	int rv;
+
+	if (!c2h) {
+		/* need to program stm context */
+		rv = hw_indirect_stm_prog(xdev, qid_hw, pipe_flow_id,
+					  STM_CSR_CMD_WR,
+					  STM_IND_ADDR_Q_CTX_H2C,
+					  context->stm, 5, clear);
+		if (rv < 0)
+			return rv;
+		rv = hw_indirect_stm_prog(xdev, qid_hw, pipe_flow_id,
+					  STM_CSR_CMD_WR,
+					  STM_IND_ADDR_H2C_MAP,
+					  context->stm, 1, clear);
+		if (rv < 0)
+			return rv;
+	}
+
+	/* Only c2h st specific setup done below*/
+	if (!c2h)
+		return 0;
+
+	rv = hw_indirect_stm_prog(xdev, qid_hw, pipe_flow_id,
+				  STM_CSR_CMD_WR,
+				  STM_IND_ADDR_Q_CTX_C2H,
+				  context->stm, 2, clear);
+	if (rv < 0)
+		return rv;
+
+	rv = hw_indirect_stm_prog(xdev, qid_hw, pipe_flow_id,
+				  STM_CSR_CMD_WR, STM_IND_ADDR_C2H_MAP,
+				  context->stm, 1, clear);
+	if (rv < 0)
+		return rv;
+
+	return 0;
+}
+#endif
diff --git a/QDMA/linux-kernel/libqdma/qdma_context.h b/QDMA/linux-kernel/libqdma/qdma_context.h
new file mode 100644
index 0000000..7d41321
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/qdma_context.h
@@ -0,0 +1,198 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#ifndef __LIBQDMA_CONTEXT_H__
+#define __LIBQDMA_CONTEXT_H__
+/**
+ * @file
+ * @brief This file contains the declarations for qdma context handlers
+ *
+ */
+#include "xdev.h"
+#include "qdma_mbox.h"
+
+/*****************************************************************************/
+/**
+ * qdma_intr_context_setup() - handler to set the qdma interrupt context
+ *
+ * @param[in]	xdev:		pointer to xdev
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int qdma_intr_context_setup(struct xlnx_dma_dev *xdev);
+
+/*****************************************************************************/
+/**
+ * qdma_prog_intr_context() -
+ *			handler to program the qdma interrupt context for
+ *			VF from PF
+ *
+ * @param[in]	xdev:		pointer to xdev
+ * @param[in]	ictxt:		interrupt context
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+
+int qdma_prog_intr_context(struct xlnx_dma_dev *xdev,
+		struct mbox_msg_intr_ctxt *ictxt);
+
+/*****************************************************************************/
+/**
+ * qdma_descq_context_setup() - handler to set the qdma sw descriptor context
+ *
+ * @param[in]	descq:		pointer to qdma_descq
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int qdma_descq_context_setup(struct qdma_descq *descq);
+
+/*****************************************************************************/
+/**
+ * qdma_descq_stm_setup() - handler to set the qdma stm
+ *
+ * @param[in]	descq:		pointer to qdma_descq
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int qdma_descq_stm_setup(struct qdma_descq *descq);
+
+/*****************************************************************************/
+/**
+ * qdma_descq_stm_clear() - handler to clear the qdma stm
+ *
+ * @param[in]	descq:		pointer to qdma_descq
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int qdma_descq_stm_clear(struct qdma_descq *descq);
+
+/*****************************************************************************/
+/**
+ * qdma_descq_context_clear() - handler to clear the qdma sw descriptor context
+ *
+ * @param[in]	xdev:	pointer to xdev
+ * @param[in]	qid_hw:	hw qidx
+ * @param[in]	st:		indicated whether the mm mode or st mode
+ * @param[in]	c2h:	indicates whether the h2c or c2h direction
+ * @param[in]	clr:	flag to indicate whether to clear the context or not
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int qdma_descq_context_clear(struct xlnx_dma_dev *xdev, unsigned int qid_hw,
+				bool st, bool c2h, bool clr);
+
+/*****************************************************************************/
+/**
+ * qdma_descq_context_read() - handler to read the queue context
+ *
+ * @param[in]	xdev:	pointer to xdev
+ * @param[in]	qid_hw:	hw qidx
+ * @param[in]	st:		indicated whether the mm mode or st mode
+ * @param[in]	c2h:	indicates whether the h2c or c2h direction
+ * @param[out]	ctxt:	pointer to context data
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int qdma_descq_context_read(struct xlnx_dma_dev *xdev, unsigned int qid_hw,
+				bool st, bool c2h,
+				struct hw_descq_context *ctxt);
+
+/*****************************************************************************/
+/**
+ * qdma_intr_context_read() - handler to read the interrupt context
+ *
+ * @param[in]	xdev:	pointer to xdev
+ * @param[in]	ring_index:	interrupt ring index
+ * @param[in]	ctxt_sz:	context size
+ * @param[out]	context:	pointer to interrupt context*
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int qdma_intr_context_read(struct xlnx_dma_dev *xdev,
+				int ring_index, unsigned int ctxt_sz,
+				u32 *context);
+
+#ifndef __QDMA_VF__
+/*****************************************************************************/
+/**
+ * qdma_descq_context_read() - handler to program the context for vf
+ *
+ * @param[in]	xdev:	pointer to xdev
+ * @param[in]	qid_hw:	hw qidx
+ * @param[in]	st:		indicated whether the mm mode or st mode
+ * @param[in]	c2h:	indicates whether the h2c or c2h direction
+ * @param[out]	ctxt:	pointer to context data
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int qdma_descq_context_program(struct xlnx_dma_dev *xdev, unsigned int qid_hw,
+				bool st, bool c2h,
+				struct hw_descq_context *ctxt);
+
+
+/*****************************************************************************/
+/**
+ * qdma_descq_stm_read() - handler to read stm context, can, maps
+ *
+ * @param[in]	xdev:	pointer to xdev
+ * @param[in]	qid_hw:	hw qidx
+ * @param[in]	pipe_flow_id: pipe_flow_id for queue
+ * @param[in]	c2h:	indicates whether the h2c or c2h direction
+ * @param[in]	map:	indicates whether to read map or ctxt/can
+ * @param[in]   ctxt:	indicates whether to read ctxt or can
+ * @param[out]  context: pointer to context data
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int qdma_descq_stm_read(struct xlnx_dma_dev *xdev, unsigned int qid_hw,
+			u8 pipe_flow_id, bool c2h, bool map, bool ctxt,
+			struct stm_descq_context *context);
+
+
+/*****************************************************************************/
+/**
+ * qdma_descq_stm_program() - handler to program the stm
+ *
+ * @param[in]	xdev:	pointer to xdev
+ * @param[in]	qid_hw:	hw qidx
+ * @param[in]	pipe_flow_id:	flow id for pipe
+ * @param[in]	c2h:	indicates whether the h2c or c2h direction
+ * @param[in]   clear:  flag to prog/clear stm context/maps
+ * @param[out]	stm:	pointer to stm data
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int qdma_descq_stm_program(struct xlnx_dma_dev *xdev, unsigned int qid_hw,
+			   uint8_t pipe_flow_id, bool c2h, bool clear,
+			   struct stm_descq_context *context);
+
+#endif
+
+#endif /* ifndef __LIBQDMA_CONTEXT_H__ */
diff --git a/QDMA/linux-kernel/libqdma/qdma_debugfs.c b/QDMA/linux-kernel/libqdma/qdma_debugfs.c
new file mode 100644
index 0000000..07e5e43
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/qdma_debugfs.c
@@ -0,0 +1,74 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#define pr_fmt(fmt)	KBUILD_MODNAME ":%s: " fmt, __func__
+
+#include "qdma_debugfs.h"
+
+/*****************************************************************************/
+/**
+ * qdma_debugfs_init() - function to initialize debugfs
+ *
+ * param[in]: qdma_debugfs_root - debugfs root
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_debugfs_init(struct dentry **qdma_debugfs_root)
+{
+	struct dentry *debugfs_root = NULL;
+	/* create a directory by the name qdma in
+	 * /sys/kernel/debugfs
+	 */
+#ifndef __QDMA_VF__
+	debugfs_root = debugfs_create_dir("qdma_pf", NULL);
+	if (!debugfs_root)
+		return -ENOENT;
+	pr_debug("created qdma_pf dir in Linux debug file system\n");
+
+#else
+	debugfs_root = debugfs_create_dir("qdma_vf", NULL);
+	if (!debugfs_root)
+		return -ENOENT;
+	pr_debug("created qdma_vf dir in Linux debug file system\n");
+
+#endif
+
+	*qdma_debugfs_root = debugfs_root;
+	return 0;
+}
+
+/*****************************************************************************/
+/**
+ * qdma_debugfs_exit() - function to cleanup debugfs
+ *
+ * param[in]: qdma_debugfs_root - debugfs root
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+void qdma_debugfs_exit(struct dentry *qdma_debugfs_root)
+{
+	debugfs_remove_recursive(qdma_debugfs_root);
+#ifndef __QDMA_VF__
+	pr_debug("removed qdma_pf directory from Linux debug file system\n");
+#else
+	pr_debug("removed qdma_vf directory from Linux debug file system\n");
+#endif
+}
diff --git a/QDMA/linux-kernel/libqdma/qdma_debugfs.h b/QDMA/linux-kernel/libqdma/qdma_debugfs.h
new file mode 100644
index 0000000..f81dce4
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/qdma_debugfs.h
@@ -0,0 +1,52 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#ifndef __QDMA_DEBUGFS_H__
+#define __QDMA_DEBUGFS_H__
+
+#include <linux/pci.h>
+#include <linux/debugfs.h>
+#include <linux/fs.h>
+#include <asm/uaccess.h>
+#include <linux/mutex.h>
+#include <linux/slab.h>
+
+#define DBGFS_DBG_FNAME_SZ  (64)
+#define DBGFS_CTXT_ENTRY_NAME_SZ  (64)
+#define QDMA_DEV_NAME_SZ	(64)
+
+/*****************************************************************************/
+/**
+ * qdma_debugfs_init() - function to initialize debugfs
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int qdma_debugfs_init(struct dentry **qdma_debugfs_root);
+
+/*****************************************************************************/
+/**
+ * qdma_debugfs_exit() - function to cleanup debugfs
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+void qdma_debugfs_exit(struct dentry *qdma_debugfs_root);
+
+#endif
diff --git a/QDMA/linux-kernel/libqdma/qdma_debugfs_dev.c b/QDMA/linux-kernel/libqdma/qdma_debugfs_dev.c
new file mode 100644
index 0000000..77a73e9
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/qdma_debugfs_dev.c
@@ -0,0 +1,655 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#ifdef DEBUGFS
+#define pr_fmt(fmt) KBUILD_MODNAME ":%s: " fmt, __func__
+
+#include "qdma_debugfs_dev.h"
+#include "xdev_regs.h"
+#include <linux/fs.h>
+#include <linux/uaccess.h>
+#include <linux/mutex.h>
+
+#define DEBUGFS_DEV_INFO_SZ		(256)
+
+#define DBGFS_ERR_BUFLEN	(64)
+#define DEBGFS_LINE_SZ		(81)
+#define DEBGFS_GEN_NAME_SZ	(32)
+#define REG_DUMP_SIZE_PER_LINE  (256)
+
+
+enum dbgfs_dev_dbg_file_type {
+	DBGFS_DEV_DBGF_INFO = 0,
+	DBGFS_DEV_DBGF_REGS = 1,
+	DBGFS_DEV_DBGF_END,
+};
+
+struct dbgfs_dev_dbgf {
+	char name[DBGFS_DBG_FNAME_SZ];
+	struct file_operations fops;
+};
+
+struct dbgfs_dev_priv {
+	unsigned long dev_hndl;
+	char dev_name[QDMA_DEV_NAME_SZ];
+	char *data;
+	int datalen;
+};
+
+enum bar_type {
+	DEBUGFS_BAR_CONFIG = 0,
+	DEBUGFS_BAR_USER = 1,
+	DEBUGFS_BAR_BYPASS = 2,
+};
+
+extern struct dentry *qdma_debugfs_root;
+
+/** structure to hold file ops */
+static struct dbgfs_dev_dbgf dbgf[DBGFS_DEV_DBGF_END];
+
+/*****************************************************************************/
+/**
+ * dump_banner() - static helper function to dump a device banner
+ *
+ * @param[in]	dev_name:	qdma device name
+ * @param[out]	buf:	buffer to which banner is dumped
+ * @param[in]	buf_sz:	size of the buffer passed to func
+ *
+ * @return	len: length of the buffer printed
+ *****************************************************************************/
+static int dump_banner(char *dev_name, char *buf, int buf_sz)
+{
+	int len = 0;
+	char seperator[81] = {0};
+
+	memset(seperator, '#', 80);
+
+	/** Banner consumes three lines, so size should be min 240 (80 * 3)
+	 * If changed, check the minimum buffer size required
+	 */
+	if (buf_sz < (3 * DEBGFS_LINE_SZ))
+		return -1;
+
+	len += snprintf(buf + len, buf_sz - len, "%s\n", seperator);
+	len += snprintf(buf + len, buf_sz - len,
+			"###\t\t\t\tqdma%s, reg dump\n",
+			dev_name);
+	len += snprintf(buf + len, buf_sz - len, "%s\n", seperator);
+
+	return len;
+}
+
+/*****************************************************************************/
+/**
+ * dump_reg() - static helper function to dump a specific reg
+ *
+ * @param[out]	buf:	buffer to dump the registers
+ * @param[in]	buf_sz:	size of the buffer passed to func
+ * @param[in]	rname:	register name
+ * @param[in]	rval:	register value
+ *
+ * @return	len: length of the buffer printed
+ *****************************************************************************/
+static int dump_reg(char *buf, int buf_sz, unsigned int raddr, char *rname,
+					unsigned int rval)
+{
+	int len = 0;
+
+	/* length of the line should not exceed 80 chars, so, checking
+	 * for min 80 chars. If below print pattern is changed, check for
+	 * new the buffer size requirement
+	 */
+	if (buf_sz < DEBGFS_LINE_SZ)
+		return -1;
+
+	len += sprintf(buf + len, "[%#7x] %-47s %#-10x %u\n",
+			raddr, rname, rval, rval);
+
+	return len;
+}
+
+/*****************************************************************************/
+/**
+ * dump_bar_regs() - static helper function to dump a specific bar regs
+ *
+ * @param[in]	dev_hndl:	pointer to xdev device structure
+ * @param[out]	buf:	buffer to dump the registers
+ * @param[in]	buf_len:	size of the buffer passed
+ * @param[in]	type:	bar type
+ *
+ * @return	len: returns the length buffer printed
+ *****************************************************************************/
+static int dump_bar_regs(unsigned long dev_hndl, char *buf, int buf_len,
+		enum bar_type type)
+{
+	int num_regs = 0;
+	int i = 0, j = 0;
+	unsigned int val = 0;
+	unsigned int addr = 0;
+	int len = 0;
+	int rv;
+	char name[DEBGFS_GEN_NAME_SZ] = {0};
+	char bar_name[DEBGFS_GEN_NAME_SZ] = {0};
+	struct xreg_info *reg_info;
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+
+	if (type == DEBUGFS_BAR_CONFIG) {
+		num_regs = sizeof(qdma_config_regs)/sizeof(qdma_config_regs[0]);
+		reg_info = qdma_config_regs;
+		snprintf(bar_name, DEBGFS_GEN_NAME_SZ, "%s #%d", "CONFIG BAR",
+				xdev->conf.bar_num_config);
+	} else if (type == DEBUGFS_BAR_USER) {
+		num_regs = sizeof(qdma_user_regs)/sizeof(qdma_user_regs[0]);
+		reg_info = qdma_user_regs;
+		snprintf(bar_name, DEBGFS_GEN_NAME_SZ, "%s #%d", "USER BAR",
+				xdev->conf.bar_num_user);
+	}
+
+	num_regs -= 1;  /* last entry is empty */
+
+	/* print the bar name */
+	len += snprintf(buf + len, buf_len - len, "\n%s\n", bar_name);
+
+	/* now print all the registers of the corresponding bar */
+	for (i = 0; i < num_regs; i++) {
+		/* if there are more than one register of same type
+		 * loop and print 'repeat' number of times
+		 */
+		if (reg_info[i].repeat) {
+			for (j = 0; j < reg_info[i].repeat; j++) {
+				memset(name, 0, DEBGFS_GEN_NAME_SZ);
+				snprintf(name, DEBGFS_GEN_NAME_SZ, "%s_%d",
+						reg_info[i].name, j);
+
+				addr = reg_info[i].addr + (j * 4);
+
+				/* read the register value */
+				val = qdma_device_read_config_register(dev_hndl,
+						addr);
+
+				/* num print address, name & value of reg */
+				rv = dump_reg(buf + len, buf_len - len, addr,
+						name, val);
+				if (rv < 0) {
+					pr_warn("insufficient space to dump reg vals\n");
+					return len;
+				}
+				len += rv;
+			}
+		} else {
+			addr = reg_info[i].addr;
+			val = qdma_device_read_config_register(dev_hndl,
+					addr);
+			rv = dump_reg(buf + len, buf_len - len, addr,
+					(char *)reg_info[i].name, val);
+			if (rv < 0) {
+				pr_warn("inusfficient space to dump register values\n");
+				return len;
+			}
+			len += rv;
+		}
+	}
+
+	return len;
+}
+
+/*****************************************************************************/
+/**
+ * dbgfs_dump_qdma_regs() - static function to dump qdma device registers
+ *
+ * @param[in]	xpdev:	pointer to qdma pci device structure
+ * @param[in]	buf:	buffer to dump the registers
+ * @param[in]	buf_len:size of the buffer passed
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+static int dbgfs_dump_qdma_regs(unsigned long dev_hndl, char *dev_name,
+		char **data, int *data_len)
+{
+	int len = 0;
+	int rv;
+	char *buf = NULL;
+	int num_elem =
+			((sizeof(qdma_config_regs)/sizeof(struct xreg_info)) + 1) +
+			((sizeof(qdma_user_regs)/sizeof(struct xreg_info)) + 1);
+	int buflen = num_elem * REG_DUMP_SIZE_PER_LINE;
+
+	/** allocate memory */
+	buf = (char *) kzalloc(buflen, GFP_KERNEL);
+	if (!buf)
+		return -ENOMEM;
+
+	/* print the banner with device info */
+	rv = dump_banner(dev_name, buf + len, buflen - len);
+	if (rv < 0) {
+		pr_warn("insufficient space to dump register banner\n");
+		return len;
+	}
+	len += rv;
+
+	rv = dump_bar_regs(dev_hndl, buf + len, buflen - len,
+			   DEBUGFS_BAR_USER);
+	if (rv < 0) {
+		pr_warn("insufficient space to dump User bar register values\n");
+		return len;
+	}
+	len += rv;
+
+	rv = dump_bar_regs(dev_hndl, buf + len, buflen - len,
+			   DEBUGFS_BAR_CONFIG);
+	if (rv < 0) {
+		pr_warn("insufficient space to dump Config Bar register values\n");
+		return len;
+	}
+	len += rv;
+
+	*data = buf;
+	*data_len = buflen;
+
+	return len;
+}
+
+/*****************************************************************************/
+/**
+ * dbgfs_dump_qdma_info() - static function to dump qdma device registers
+ *
+ * @xpdev:	pointer to qdma pci device structure
+ * @buf:	buffer to dump the registers
+ * @buf_len:size of the buffer passed
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+static int dbgfs_dump_qdma_info(unsigned long dev_hndl, char *dev_name,
+		char **data, int *data_len)
+{
+	int len = 0;
+	char *buf = NULL;
+	int buflen = DEBUGFS_DEV_INFO_SZ;
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+	struct qdma_dev_conf *conf = NULL;
+
+	if (!xdev)
+		return -EINVAL;
+
+	if (xdev_check_hndl(__func__, xdev->conf.pdev, dev_hndl) < 0)
+		return -EINVAL;
+
+	conf = &xdev->conf;
+
+	/** allocate memory */
+	buf = (char *) kzalloc(buflen, GFP_KERNEL);
+	if (!buf)
+		return -ENOMEM;
+
+	len += snprintf(buf + len, buflen - len, "%-36s: %s\n", "Master PF",
+			(conf->master_pf) ? "True" : "False");
+	len += snprintf(buf + len, buflen - len, "%-36s: %d\n", "QBase",
+			conf->qsets_base);
+	len += snprintf(buf + len, buflen - len, "%-36s: %d\n", "Max Qsets",
+			conf->qsets_max);
+	len += snprintf(buf + len, buflen - len, "%-36s: %d\n",
+			"Number of VFs", xdev->vf_count);
+	len += snprintf(buf + len, buflen - len, "%-36s: %d\n",
+			"Max number of VFs", conf->vf_max);
+	len += snprintf(buf + len, buflen - len, "%-36s: %s mode\n",
+			"Driver Mode",
+			mode_name_list[conf->qdma_drv_mode].name);
+
+	*data = buf;
+	*data_len = buflen;
+
+	return len;
+}
+
+/*****************************************************************************/
+/**
+ * dev_dbg_file_open() - static function that provides generic open
+ *
+ * @param[in]	inode:	pointer to file inode
+ * @param[in]	fp:	pointer to file structure
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+static int dev_dbg_file_open(struct inode *inode, struct file *fp)
+{
+	int dev_id = -1;
+	int rv = 0;
+	unsigned char dev_name[QDMA_DEV_NAME_SZ] = {0};
+	unsigned char *lptr = NULL, *rptr = NULL;
+	struct dentry *dev_dir = NULL;
+	struct dbgfs_dev_priv *priv = NULL;
+	struct xlnx_dma_dev *xdev = NULL;
+
+	if (!inode || !fp)
+		return -EINVAL;
+	dev_dir = fp->f_path.dentry->d_parent;
+	xdev = inode->i_private;
+	if (!xdev)
+		return -EINVAL;
+
+	/* convert colon sepearted b:d:f to hex */
+	rptr = dev_dir->d_iname;
+	lptr = dev_name;
+	while (*rptr) {
+		if (*rptr == ':') {
+			rptr++;
+			continue;
+		}
+		*lptr++ = *rptr++;
+	}
+
+	/* convert this string as hex integer */
+	rv = kstrtoint((const char *)dev_name, 16, &dev_id);
+	if (rv < 0) {
+		rv = -ENODEV;
+		return rv;
+	}
+
+
+	priv = (struct dbgfs_dev_priv *) kzalloc(sizeof(struct dbgfs_dev_priv),
+			GFP_KERNEL);
+	if (!priv) {
+		rv = -ENOMEM;
+		return rv;
+	}
+
+	priv->dev_hndl = (unsigned long)xdev;
+	snprintf(priv->dev_name, QDMA_DEV_NAME_SZ, "%s", dev_name);
+	fp->private_data = priv;
+
+	return 0;
+}
+
+/*****************************************************************************/
+/**
+ * dev_dbg_file_release() - static function that provides generic release
+ *
+ * @param[in]	inode:	pointer to file inode
+ * @param[in]	fp:	pointer to file structure
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+static int dev_dbg_file_release(struct inode *inode, struct file *fp)
+{
+	kfree(fp->private_data);
+
+	fp->private_data = NULL;
+
+	return 0;
+}
+
+/*****************************************************************************/
+/**
+ * dev_dbg_file_read() - static function that provides common read
+ *
+ * @param[in]	fp:	pointer to file structure
+ * @param[out]	user_buffer: pointer to user buffer
+ * @param[in]	count: size of data to read
+ * @param[in/out]	ppos: pointer to offset read
+ * @param[in]	type: information type
+ *
+ * @return	>0: size read
+ * @return	<0: error
+ *****************************************************************************/
+static ssize_t dev_dbg_file_read(struct file *fp, char __user *user_buffer,
+		size_t count, loff_t *ppos, enum dbgfs_dev_dbg_file_type type)
+{
+	char *buf = NULL;
+	int buf_len = 0;
+	int len = 0;
+	int rv = 0;
+	struct dbgfs_dev_priv *dev_priv =
+		(struct dbgfs_dev_priv *)fp->private_data;
+
+	if (dev_priv->data == NULL && dev_priv->datalen == 0) {
+		if (type == DBGFS_DEV_DBGF_INFO) {
+			rv = dbgfs_dump_qdma_info(dev_priv->dev_hndl,
+					dev_priv->dev_name, &buf, &buf_len);
+		} else if (type == DBGFS_DEV_DBGF_REGS) {
+			rv = dbgfs_dump_qdma_regs(dev_priv->dev_hndl,
+					dev_priv->dev_name, &buf, &buf_len);
+		}
+
+		if (rv < 0)
+			goto dev_dbg_file_read_exit;
+
+		dev_priv->datalen = rv;
+		dev_priv->data = buf;
+	}
+
+	buf = dev_priv->data;
+	len = dev_priv->datalen;
+
+	if (!buf)
+		goto dev_dbg_file_read_exit;
+
+	/** write to user buffer */
+	if (*ppos >= len) {
+		rv = 0;
+		goto dev_dbg_file_read_exit;
+	}
+
+	if (*ppos + count > len)
+		count = len - *ppos;
+
+	if (copy_to_user(user_buffer, buf + *ppos, count)) {
+		rv = -EFAULT;
+		goto dev_dbg_file_read_exit;
+	}
+
+	*ppos += count;
+	rv = count;
+
+	pr_debug("nuber of bytes written to user space is %zu\n", count);
+
+dev_dbg_file_read_exit:
+	kfree(buf);
+	dev_priv->data = NULL;
+	dev_priv->datalen = 0;
+	return rv;
+}
+
+/*****************************************************************************/
+/**
+ * dev_info_open() - static function that executes info open
+ *
+ * @param[in]	inode:	pointer to file inode
+ * @param[in]	fp:	pointer to file structure
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+static int dev_info_open(struct inode *inode, struct file *fp)
+{
+	return dev_dbg_file_open(inode, fp);
+}
+
+/*****************************************************************************/
+/**
+ * dev_info_read() - static function that executes info read
+ *
+ * @param[in]	fp:	pointer to file structure
+ * @param[out]	user_buffer: pointer to user buffer
+ * @param[in]	count: size of data to read
+ * @param[in/out]	ppos: pointer to offset read
+ *
+ * @return	>0: size read
+ * @return	<0: error
+ *****************************************************************************/
+static ssize_t dev_info_read(struct file *fp, char __user *user_buffer,
+		size_t count, loff_t *ppos)
+{
+	return dev_dbg_file_read(fp, user_buffer, count, ppos,
+			DBGFS_DEV_DBGF_INFO);
+}
+
+/*****************************************************************************/
+/**
+ * dev_regs_open() - static function that opens regs debug file
+ *
+ * @param[in]	inode:	pointer to file inode
+ * @param[in]	fp:	pointer to file structure
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+static int dev_regs_open(struct inode *inode, struct file *fp)
+{
+	return dev_dbg_file_open(inode, fp);
+}
+
+/*****************************************************************************/
+/**
+ * dev_regs_read() - static function that executes info read
+ *
+ * @param[in]	fp:	pointer to file structure
+ * @param[out]	user_buffer: pointer to user buffer
+ * @param[in]	count: size of data to read
+ * @param[in/out]	ppos: pointer to offset read
+ *
+ * @return	>0: size read
+ * @return	<0: error
+ *****************************************************************************/
+static ssize_t dev_regs_read(struct file *fp, char __user *user_buffer,
+		size_t count, loff_t *ppos)
+{
+	return dev_dbg_file_read(fp, user_buffer, count, ppos,
+			DBGFS_DEV_DBGF_REGS);
+}
+
+/*****************************************************************************/
+/**
+ * create_dev_dbg_files() - static function to create queue debug files
+ *
+ * @param[in]	dev_root:	debugfs root for the device
+ *
+ * @return	>0: size read
+ * @return	<0: error
+ *****************************************************************************/
+int create_dev_dbg_files(struct xlnx_dma_dev *xdev, struct dentry *dev_root)
+{
+	struct dentry  *fp[DBGFS_DEV_DBGF_END] = { NULL };
+	struct file_operations *fops = NULL;
+	int i = 0;
+
+	memset(dbgf, 0, sizeof(struct dbgfs_dev_dbgf) * DBGFS_DEV_DBGF_END);
+
+	for (i = 0; i < DBGFS_DEV_DBGF_END; i++) {
+		fops = &dbgf[i].fops;
+		fops->owner = THIS_MODULE;
+		switch (i) {
+		case DBGFS_DEV_DBGF_INFO:
+			snprintf(dbgf[i].name, 64, "%s", "info");
+			fops->open = dev_info_open;
+			fops->read = dev_info_read;
+			fops->release = dev_dbg_file_release;
+			break;
+		case DBGFS_DEV_DBGF_REGS:
+			snprintf(dbgf[i].name, 64, "%s", "regs");
+			fops->open = dev_regs_open;
+			fops->read = dev_regs_read;
+			fops->release = dev_dbg_file_release;
+			break;
+		}
+	}
+
+	for (i = 0; i < DBGFS_DEV_DBGF_END; i++) {
+		fp[i] = debugfs_create_file(dbgf[i].name, 0644, dev_root,
+				    xdev, &dbgf[i].fops);
+		if (!fp[i])
+			return -1;
+	}
+	return 0;
+}
+
+/*****************************************************************************/
+/**
+ * dbgfs_dev_init() - function to initialize device debugfs files
+ *
+ * @param[in]	xdev:	Xilinx dma device
+ * @param[in]	qdma_debugfs_root:	root file in debugfs
+ *
+ * @return	=0: success
+ * @return	<0: error
+ *****************************************************************************/
+int dbgfs_dev_init(struct xlnx_dma_dev *xdev)
+{
+	char dname[QDMA_DEV_NAME_SZ] = {0};
+	struct dentry *dbgfs_dev_root = NULL;
+	struct dentry *dbgfs_queues_root = NULL;
+	struct pci_dev *pdev = xdev->conf.pdev;
+	int rv = 0;
+
+	snprintf(dname, QDMA_DEV_NAME_SZ, "%02x:%02x:%x",
+			pdev->bus->number,
+			PCI_SLOT(pdev->devfn),
+			PCI_FUNC(pdev->devfn));
+	/* create a directory for the device in debugfs */
+	dbgfs_dev_root = debugfs_create_dir(dname, qdma_debugfs_root);
+	if (!dbgfs_dev_root) {
+		pr_err("Failed to create device direcotry\n");
+		return -1;
+	}
+	xdev->dbgfs_dev_root = dbgfs_dev_root;
+
+	/* create debug files for qdma device */
+	rv = create_dev_dbg_files(xdev, dbgfs_dev_root);
+	if (rv < 0) {
+		pr_err("Failed to create device debug files\n");
+		goto dbgfs_dev_init_fail;
+	}
+
+	/* create a directory for the queues in debugfs */
+	dbgfs_queues_root = debugfs_create_dir("queues", xdev->dbgfs_dev_root);
+	if (!dbgfs_queues_root) {
+		pr_err("Failed to create queueus directory under device directory\n");
+		goto dbgfs_dev_init_fail;
+	}
+
+	xdev->dbgfs_queues_root = dbgfs_queues_root;
+	spin_lock_init(&xdev->qidx_lock);
+
+	return 0;
+
+dbgfs_dev_init_fail:
+
+	debugfs_remove_recursive(dbgfs_dev_root);
+	return -1;
+}
+
+/*****************************************************************************/
+/**
+ * dbgfs_dev_exit() - function to cleanup device debugfs files
+ *
+ * @param[in]	xdev:	Xilinx dma device
+ *
+ *****************************************************************************/
+void dbgfs_dev_exit(struct xlnx_dma_dev *xdev)
+{
+	if (xdev->dbgfs_dev_root)
+		debugfs_remove_recursive(xdev->dbgfs_dev_root);
+	xdev->dbgfs_dev_root = NULL;
+	xdev->dbgfs_queues_root = NULL;
+}
+
+#endif
diff --git a/QDMA/linux-kernel/libqdma/qdma_debugfs_dev.h b/QDMA/linux-kernel/libqdma/qdma_debugfs_dev.h
new file mode 100644
index 0000000..47af008
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/qdma_debugfs_dev.h
@@ -0,0 +1,29 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#ifndef __QDMA_DEBUGFS_DEV_H__
+#define __QDMA_DEBUGFS_DEV_H__
+
+#include "qdma_debugfs.h"
+#include "xdev.h"
+
+int dbgfs_dev_init(struct xlnx_dma_dev *xdev);
+void dbgfs_dev_exit(struct xlnx_dma_dev *xdev);
+
+#endif
diff --git a/QDMA/linux-kernel/libqdma/qdma_debugfs_queue.c b/QDMA/linux-kernel/libqdma/qdma_debugfs_queue.c
new file mode 100644
index 0000000..62c59ed
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/qdma_debugfs_queue.c
@@ -0,0 +1,1190 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+
+#define pr_fmt(fmt) KBUILD_MODNAME ":%s: " fmt, __func__
+
+#include "qdma_debugfs_queue.h"
+#include "libqdma_export.h"
+#include "qdma_regs.h"
+#include "qdma_context.h"
+#include "qdma_descq.h"
+#include "qdma_regs.h"
+#include <linux/uaccess.h>
+
+#ifdef DEBUGFS
+#define DEBUGFS_QUEUE_DESC_SZ	(100)
+#define DEBUGFS_QUEUE_INFO_SZ	(256)
+#define DEBUGFS_QUEUE_CTXT_SZ	(2 * 4096)
+
+#define DEBUGFS_CTXT_ELEM(reg, pos, size)   \
+	((reg >> pos) & ~(~0 << size))
+
+#define DBGFS_QUEUE_INFO_SZ	256
+#define DBGFS_ERR_BUFLEN    (64)
+
+enum dbgfs_queue_info_type {
+	DBGFS_QINFO_INFO = 0,
+	DBGFS_QINFO_CNTXT = 1,
+	DBGFS_QINFO_DESC = 2,
+	DBGFS_QINFO_END,
+};
+
+enum dbgfs_cntxt_word {
+	DBGFS_CNTXT_W0 = 0,
+	DBGFS_CNTXT_W1 = 1,
+	DBGFS_CNTXT_W2 = 2,
+	DBGFS_CNTXT_W3 = 3,
+	DBGFS_CNTXT_W4 = 4,
+	DBGFS_CNTXT_W5 = 5,
+	DBGFS_CNTXT_W6 = 6,
+	DBGFS_CNTXT_W7 = 7,
+};
+
+enum dbgfs_cmpt_queue_info_type {
+	DBGFS_CMPT_QINFO_INFO = 0,
+	DBGFS_CMPT_QINFO_CNTXT = 1,
+	DBGFS_CMPT_QINFO_DESC = 2,
+	DBGFS_CMPT_QINFO_END,
+};
+
+struct dbgfs_q_dbgf {
+	char name[DBGFS_DBG_FNAME_SZ];
+	struct file_operations fops;
+};
+
+struct dbgfs_q_priv {
+	unsigned long dev_hndl;
+	unsigned long qhndl;
+	char *data;
+	int datalen;
+};
+
+struct dbgfs_qctxt_entry {
+	char name[DBGFS_CTXT_ENTRY_NAME_SZ];
+	unsigned short word;
+	u32 pos;
+	u32 len;
+};
+
+enum dbgfs_desc_type {
+	DBGFS_DESC_TYPE_C2H = 0,
+	DBGFS_DESC_TYPE_H2C = DBGFS_DESC_TYPE_C2H,
+	DBGFS_DESC_TYPE_CMPT = 1,
+	DBGFS_DESC_TYPE_END = 2,
+};
+
+
+static struct dbgfs_qctxt_entry app_ctxt[] = {
+	/** format:
+	 *{<name>, <word>, <start_bit_index>, <len>}
+	 */
+
+	{"PIDX", DBGFS_CNTXT_W0, S_DESC_CTXT_W0_PIDX,
+		L_DESC_CTXT_W0_PIDX},
+	{"IRQ Arm", DBGFS_CNTXT_W0, S_DESC_CTXT_W0_F_INTR_ARM, 1},
+	{"Function Id", DBGFS_CNTXT_W0, S_DESC_CTXT_W0_FUNC_ID,
+		L_DESC_CTXT_W0_FUNC_ID},
+
+	{"Queue Enable", DBGFS_CNTXT_W1, S_DESC_CTXT_W1_F_QEN, 1},
+	{"Fetch Credit Enable", DBGFS_CNTXT_W1,
+		S_DESC_CTXT_W1_F_FCRD_EN, 1},
+	{"Write back/Intr Check", DBGFS_CNTXT_W1,
+		S_DESC_CTXT_W1_F_CMPL_STATUS_PEND_CHK, 1},
+	{"Write back Acc Enable", DBGFS_CNTXT_W1,
+		S_DESC_CTXT_W1_F_CMPL_STATUS_ACC_EN, 1},
+	{"Address Translation", DBGFS_CNTXT_W1,
+		S_DESC_CTXT_W1_F_AT, 1},
+	{"Fetch Max", DBGFS_CNTXT_W1,
+		S_DESC_CTXT_W1_FETCH_MAX, L_DESC_CTXT_W1_FETCH_MAX},
+	{"Ring Size", DBGFS_CNTXT_W1, S_DESC_CTXT_W1_RNG_SZ,
+		L_DESC_CTXT_W1_RNG_SZ},
+	{"Descriptor Size", DBGFS_CNTXT_W1, S_DESC_CTXT_W1_DSC_SZ,
+		L_DESC_CTXT_W1_DSC_SZ},
+	{"Bypass Enable", DBGFS_CNTXT_W1, S_DESC_CTXT_W1_F_BYP, 1},
+	{"MM Channel", DBGFS_CNTXT_W1, S_DESC_CTXT_W1_F_MM_CHN, 1},
+	{"Writeback Enable", DBGFS_CNTXT_W1,
+		S_DESC_CTXT_W1_F_CMPL_STATUS_EN, 1},
+	{"Interrupt Enable", DBGFS_CNTXT_W1,
+		S_DESC_CTXT_W1_F_IRQ_EN, 1},
+	{"Port Id", DBGFS_CNTXT_W1, S_DESC_CTXT_W1_PORT_ID,
+		L_DESC_CTXT_W1_PORT_ID},
+	{"Interrupt No Last", DBGFS_CNTXT_W1,
+		S_DESC_CTXT_W1_F_IRQ_NO_LAST, 1},
+	{"Error", DBGFS_CNTXT_W1, S_DESC_CTXT_W1_ERR,
+		L_DESC_CTXT_W1_ERR},
+	{"Writeback Error Sent", DBGFS_CNTXT_W1,
+		S_DESC_CTXT_W1_F_CMPL_STATUS_ERR_SNT, 1},
+	{"IRQ Request", DBGFS_CNTXT_W1, S_DESC_CTXT_W1_F_IRQ_REQ, 1},
+	{"Marker Disable", DBGFS_CNTXT_W1,
+		S_DESC_CTXT_W1_F_MRKR_DIS, 1},
+	{"Is Memory Mapped", DBGFS_CNTXT_W1,
+		S_DESC_CTXT_W1_F_IS_MM, 1},
+	{"Interrupt Aggregation", DBGFS_CNTXT_W4,
+		S_DESC_CTXT_W1_F_INTR_AGGR, 1},
+
+	{"Descriptor Ring Base Addr (Low)", DBGFS_CNTXT_W2, 0, 32},
+
+	{"Descriptor Ring Base Addr (High)", DBGFS_CNTXT_W3, 0, 32},
+};
+
+static struct dbgfs_qctxt_entry hw_ctxt[] = {
+	{"CIDX", DBGFS_CNTXT_W0, 0, 16},
+	{"Credits Consumed", DBGFS_CNTXT_W0, 16, 16},
+
+	{"Descriptors Pending", DBGFS_CNTXT_W1, 8, 1},
+	{"Queue Invalid No Desc Pending", DBGFS_CNTXT_W1, 9, 1},
+	{"Eviction Pending", DBGFS_CNTXT_W1, 10, 1},
+	{"Fetch Peding", DBGFS_CNTXT_W1, 10, 1},
+};
+
+static struct dbgfs_qctxt_entry credit_ctxt[] = {
+	{"Credit", DBGFS_CNTXT_W0, 0, 16},
+};
+
+static struct dbgfs_qctxt_entry cmpt_ctxt[] = {
+	{"Enable Status Desc Update", DBGFS_CNTXT_W0,
+		S_CMPT_CTXT_W0_F_EN_STAT_DESC, 1},
+	{"Enable Interrupt", DBGFS_CNTXT_W0, S_CMPT_CTXT_W0_F_EN_INT, 1},
+	{"Trigger Mode", DBGFS_CNTXT_W0, S_CMPT_CTXT_W0_TRIG_MODE,
+		L_CMPT_CTXT_W0_TRIG_MODE},
+	{"Function Id", DBGFS_CNTXT_W0, S_CMPT_CTXT_W0_FNC_ID,
+		L_CMPT_CTXT_W0_FNC_ID},
+	{"Counter Index", DBGFS_CNTXT_W0, S_CMPT_CTXT_W0_COUNTER_IDX,
+		L_CMPT_CTXT_W0_COUNTER_IDX},
+	{"Timer Index", DBGFS_CNTXT_W0, S_CMPT_CTXT_W0_TIMER_IDX,
+		L_CMPT_CTXT_W0_TIMER_IDX},
+	{"Interrupt State", DBGFS_CNTXT_W0, S_CMPT_CTXT_W0_INT_ST,
+		L_CMPT_CTXT_W0_INT_ST},
+	{"Color", DBGFS_CNTXT_W0, S_CMPT_CTXT_W0_F_COLOR, 1},
+	{"Ring Size", DBGFS_CNTXT_W0, S_CMPT_CTXT_W0_RNG_SZ,
+		L_CMPT_CTXT_W0_RNG_SZ},
+
+	{"Base Address (Low)", DBGFS_CNTXT_W1, 0, 32},
+
+	{"Base Address (High)", DBGFS_CNTXT_W2, S_CMPT_CTXT_W2_BADDR_64,
+		L_CMPT_CTXT_W2_BADDR_64},
+	{"Descriptor Size", DBGFS_CNTXT_W2, S_CMPT_CTXT_W2_DESC_SIZE,
+		L_CMPT_CTXT_W2_DESC_SIZE},
+	{"PIDX (Low)", DBGFS_CNTXT_W2, S_CMPT_CTXT_W2_PIDX_L,
+		L_CMPT_CTXT_W3_PIDX_H},
+
+	{"PIDX (High)", DBGFS_CNTXT_W3, S_CMPT_CTXT_W3_PIDX_H,
+		L_CMPT_CTXT_W3_PIDX_H},
+	{"CIDX", DBGFS_CNTXT_W3, S_CMPT_CTXT_W3_CIDX, L_CMPT_CTXT_W3_CIDX},
+	{"Valid", DBGFS_CNTXT_W3, S_CMPT_CTXT_W3_F_VALID, 1},
+	{"ERROR", DBGFS_CNTXT_W3, S_CMPT_CTXT_W3_ERR, L_CMPT_CTXT_W3_ERR},
+	{"Trigger Pending", DBGFS_CNTXT_W3, S_CMPT_CTXT_W3_F_TRIG_PEND, 1},
+
+	{"Timer Running", DBGFS_CNTXT_W4, S_CMPT_CTXT_W4_F_TMR_RUNNING, 1},
+	{"Full Update", DBGFS_CNTXT_W4, S_CMPT_CTXT_W4_F_FULL_UPDATE, 1},
+	{"Over Flow Check Disable", DBGFS_CNTXT_W4,
+		S_CMPT_CTXT_W4_F_OVF_CHK_DIS, 1},
+	{"Address Translation", DBGFS_CNTXT_W4, S_CMPT_CTXT_W4_F_AT, 1},
+};
+
+/**TBD: enable them when RTL2 is stable */
+static struct dbgfs_qctxt_entry c2h_pftch_ctxt[] = {
+	{"Bypass", DBGFS_CNTXT_W0, S_PFTCH_W0_F_BYPASS, 1},
+	{"Buffer Size Index", DBGFS_CNTXT_W0, S_PFTCH_W0_BUF_SIZE_IDX,
+		L_PFTCH_W0_BUF_SIZE_IDX},
+	{"Port Id", DBGFS_CNTXT_W0, S_PFTCH_W0_PORT_ID, L_PFTCH_W0_PORT_ID},
+	{"Error", DBGFS_CNTXT_W0, S_PFTCH_W0_F_ERR, 1},
+	{"Prefetch Enable", DBGFS_CNTXT_W0, S_PFTCH_W0_F_EN_PFTCH, 1},
+	{"In Prefetch", DBGFS_CNTXT_W0, S_PFTCH_W0_F_Q_IN_PFTCH, 1},
+	{"Software Credit (Low)", DBGFS_CNTXT_W0, S_PFTCH_W0_SW_CRDT_L,
+		L_PFTCH_W0_SW_CRDT_L},
+
+	{"Software Credit (High)", DBGFS_CNTXT_W1, S_PFTCH_W1_SW_CRDT_H,
+		L_PFTCH_W1_SW_CRDT_H},
+	{"Valid", DBGFS_CNTXT_W1, S_PFTCH_W1_F_VALID, 1},
+};
+
+/** structure to hold file ops */
+static struct dbgfs_q_dbgf qf[DBGFS_QINFO_END];
+
+/** structure to hold file ops */
+static struct dbgfs_q_dbgf cmpt_qf[DBGFS_CMPT_QINFO_END];
+int q_dbg_file_open(struct inode *inode, struct file *fp);
+int q_dbg_file_release(struct inode *inode, struct file *fp);
+int qdbg_info_read(unsigned long dev_hndl, unsigned long id, char **data,
+		int *data_len, enum dbgfs_desc_type type);
+int qdbg_desc_read(unsigned long dev_hndl, unsigned long id, char **data,
+		int *data_len, enum dbgfs_desc_type type);
+int qdbg_cntxt_read(unsigned long dev_hndl, unsigned long id, char **data,
+		int *data_len, enum dbgfs_desc_type type);
+
+/*****************************************************************************/
+/**
+ * cmpt_q_dbg_file_open() - static function that provides generic open
+ *
+ * @param[in]	inode:	pointer to file inode
+ * @param[in]	fp:	pointer to file structure
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+static int cmpt_q_dbg_file_open(struct inode *inode, struct file *fp)
+{
+	return q_dbg_file_open(inode, fp);
+}
+
+/*****************************************************************************/
+/**
+ * cmpt_q_dbg_file_release() - static function that provides generic release
+ *
+ * @param[in]	inode:	pointer to file inode
+ * @param[in]	fp:	pointer to file structure
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+static int cmpt_q_dbg_file_release(struct inode *inode, struct file *fp)
+{
+	return q_dbg_file_release(inode, fp);
+}
+
+/*****************************************************************************/
+/**
+ * cmpt_q_dbg_file_read() - static function that provides common read
+ *
+ * @param[in]	fp:	pointer to file structure
+ * @param[out]	user_buffer: pointer to user buffer
+ * @param[in]	count: size of data to read
+ * @param[in/out]	ppos: pointer to offset read
+ * @param[in]	type: information type
+ *
+ * @return	>0: size read
+ * @return	<0: error
+ *****************************************************************************/
+static ssize_t cmpt_q_dbg_file_read(struct file *fp,
+		char __user *user_buffer,
+		size_t count, loff_t *ppos,
+		enum dbgfs_queue_info_type type)
+{
+	char *buf = NULL;
+	int buf_len = 0;
+	int len = 0;
+	int rv = 0;
+	struct dbgfs_q_priv *qpriv =
+		(struct dbgfs_q_priv *)fp->private_data;
+
+	if (qpriv->data == NULL && qpriv->datalen == 0) {
+		if (type == DBGFS_QINFO_INFO) {
+			rv = qdbg_info_read(qpriv->dev_hndl, qpriv->qhndl,
+					&buf, &buf_len, DBGFS_DESC_TYPE_CMPT);
+		} else if (type == DBGFS_QINFO_CNTXT) {
+			rv = qdbg_cntxt_read(qpriv->dev_hndl, qpriv->qhndl,
+					&buf, &buf_len, DBGFS_DESC_TYPE_CMPT);
+		} else if (type == DBGFS_QINFO_DESC) {
+			rv = qdbg_desc_read(qpriv->dev_hndl, qpriv->qhndl,
+					&buf, &buf_len, DBGFS_DESC_TYPE_CMPT);
+		}
+
+		if (rv < 0)
+			goto cmpt_q_dbg_file_read_exit;
+
+		qpriv->datalen = rv;
+		qpriv->data = buf;
+	}
+
+	buf = qpriv->data;
+	len = qpriv->datalen;
+
+	if (!buf)
+		goto cmpt_q_dbg_file_read_exit;
+
+	/** write to user buffer */
+	if (*ppos >= len) {
+		rv = 0;
+		goto cmpt_q_dbg_file_read_exit;
+	}
+
+	if (*ppos + count > len)
+		count = len - *ppos;
+
+	if (copy_to_user(user_buffer, buf + *ppos, count)) {
+		rv = -EFAULT;
+		goto cmpt_q_dbg_file_read_exit;
+	}
+
+	*ppos += count;
+
+	pr_debug("cmpt q read size %zu\n", count);
+
+	return count;
+
+cmpt_q_dbg_file_read_exit:
+	kfree(buf);
+	qpriv->data = NULL;
+	qpriv->datalen = 0;
+	return rv;
+}
+
+/*****************************************************************************/
+/**
+ * cmpt_q_info_open() - static function that executes info open
+ *
+ * @param[in]	inode:	pointer to file inode
+ * @param[in]	fp:	pointer to file structure
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+static int cmpt_q_info_open(struct inode *inode, struct file *fp)
+{
+	return cmpt_q_dbg_file_open(inode, fp);
+}
+
+/*****************************************************************************/
+/**
+ * cmpt_q_info_read() - static function that executes info read
+ *
+ * @param[in]	fp:	pointer to file structure
+ * @param[out]	user_buffer: pointer to user buffer
+ * @param[in]	count: size of data to read
+ * @param[in/out]	ppos: pointer to offset read
+ *
+ * @return	>0: size read
+ * @return	<0: error
+ *****************************************************************************/
+static ssize_t cmpt_q_info_read(struct file *fp, char __user *user_buffer,
+			size_t count, loff_t *ppos)
+{
+	return cmpt_q_dbg_file_read(fp, user_buffer, count, ppos,
+			DBGFS_QINFO_INFO);
+}
+
+/*****************************************************************************/
+/**
+ * cmpt_q_cntxt_open() - static function that executes info open
+ *
+ * @param[in]	inode:	pointer to file inode
+ * @param[in]	fp:	pointer to file structure
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+static int cmpt_q_cntxt_open(struct inode *inode, struct file *fp)
+{
+	return cmpt_q_dbg_file_open(inode, fp);
+}
+
+/*****************************************************************************/
+/**
+ * cmpt_q_cntxt_read() - static function that executes info read
+ *
+ * @param[in]	fp:	pointer to file structure
+ * @param[out]	user_buffer: pointer to user buffer
+ * @param[in]	count: size of data to read
+ * @param[in/out]	ppos: pointer to offset read
+ *
+ * @return	>0: size read
+ * @return	<0: error
+ *****************************************************************************/
+static ssize_t cmpt_q_cntxt_read(struct file *fp, char __user *user_buffer,
+			size_t count, loff_t *ppos)
+{
+	return cmpt_q_dbg_file_read(fp, user_buffer, count, ppos,
+			DBGFS_QINFO_CNTXT);
+}
+
+/*****************************************************************************/
+/**
+ * cmpt_q_desc_open() - static function that executes descriptor open
+ *
+ * @param[in]	inode:	pointer to file inode
+ * @param[in]	fp:	pointer to file structure
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+static int cmpt_q_desc_open(struct inode *inode, struct file *fp)
+{
+	return cmpt_q_dbg_file_open(inode, fp);
+}
+
+/*****************************************************************************/
+/**
+ * cmpt_q_desc_read() - static function that executes descriptor read
+ *
+ * @param[in]	fp:	pointer to file structure
+ * @param[out]	user_buffer: pointer to user buffer
+ * @param[in]	count: size of data to read
+ * @param[in/out]	ppos: pointer to offset read
+ *
+ * @return	>0: size read
+ * @return	<0: error
+ *****************************************************************************/
+static ssize_t cmpt_q_desc_read(struct file *fp, char __user *user_buffer,
+			size_t count, loff_t *ppos)
+{
+	return cmpt_q_dbg_file_read(fp, user_buffer, count, ppos,
+			DBGFS_QINFO_DESC);
+}
+
+/*****************************************************************************/
+/**
+ * create_cmpt_q_dbg_files() - static function to create cmpt queue dbg files
+ *
+ * @param[in]	queue_root:	debugfs root for a queue
+ *
+ * @return	>0: size read
+ * @return	<0: error
+ *****************************************************************************/
+int create_cmpt_q_dbg_files(struct qdma_descq *descq, struct dentry *queue_root)
+{
+	struct dentry  *fp[DBGFS_QINFO_END] = { NULL };
+	struct file_operations *fops = NULL;
+	int i = 0;
+
+	memset(cmpt_qf, 0, sizeof(struct dbgfs_q_dbgf) * DBGFS_CMPT_QINFO_END);
+
+	for (i = 0; i < DBGFS_CMPT_QINFO_END; i++) {
+		fops = &cmpt_qf[i].fops;
+		fops->owner = THIS_MODULE;
+		switch (i) {
+		case DBGFS_CMPT_QINFO_INFO:
+			snprintf(cmpt_qf[i].name, DBGFS_DBG_FNAME_SZ,
+							"%s", "info");
+			fops->open = cmpt_q_info_open;
+			fops->read = cmpt_q_info_read;
+			fops->release = cmpt_q_dbg_file_release;
+			break;
+		case DBGFS_CMPT_QINFO_CNTXT:
+			snprintf(cmpt_qf[i].name, DBGFS_DBG_FNAME_SZ,
+							"%s", "cntxt");
+			fops->open = cmpt_q_cntxt_open;
+			fops->read = cmpt_q_cntxt_read;
+			fops->release = cmpt_q_dbg_file_release;
+			break;
+		case DBGFS_CMPT_QINFO_DESC:
+			snprintf(cmpt_qf[i].name, DBGFS_DBG_FNAME_SZ,
+							"%s", "desc");
+			fops->open = cmpt_q_desc_open;
+			fops->read = cmpt_q_desc_read;
+			fops->release = cmpt_q_dbg_file_release;
+			break;
+		}
+	}
+
+	for (i = 0; i < DBGFS_CMPT_QINFO_END; i++) {
+		fp[i] = debugfs_create_file(cmpt_qf[i].name, 0644, queue_root,
+					descq, &cmpt_qf[i].fops);
+		if (!fp[i])
+			return -1;
+	}
+	return 0;
+}
+
+/*****************************************************************************/
+/**
+ * q_dbg_file_open() - generic queue debug file open
+ *
+ * @param[in]	inode:	pointer to file inode
+ * @param[in]	fp:	pointer to file structure
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int q_dbg_file_open(struct inode *inode, struct file *fp)
+{
+	int dev_id = -1;
+	int qidx = -1;
+	struct dbgfs_q_priv *priv = NULL;
+	int rv = 0;
+	int c2h = 0;
+	unsigned char dev_name[QDMA_DEV_NAME_SZ] = {0};
+	unsigned char *lptr = NULL, *rptr = NULL;
+	struct dentry *direction_dir = NULL;
+	struct dentry *qid_dir = NULL;
+	struct dentry *qroot_dir = NULL;
+	struct dentry *dev_dir = NULL;
+	struct qdma_descq *descq = NULL;
+
+	if (!inode || !fp)
+		return -EINVAL;
+	descq = inode->i_private;
+	if (!descq)
+		return -EINVAL;
+
+	direction_dir = fp->f_path.dentry->d_parent;
+	qid_dir = direction_dir->d_parent;
+	qroot_dir = qid_dir->d_parent;
+	dev_dir = qroot_dir->d_parent;
+
+	/* check the direction */
+	if (!strncmp((const char *)direction_dir->d_iname,
+				"c2h", strlen("c2h")) ||
+			!strncmp((const char *)direction_dir->d_iname,
+				"cmpt", strlen("cmpt")))
+		c2h = 1;
+
+	/* convert this string as integer */
+	rv = kstrtoint((const char *)qid_dir->d_iname, 0, &qidx);
+	if (rv < 0) {
+		rv = -ENODEV;
+		return rv;
+	}
+
+	/* convert colon sepearted b:d:f to hex */
+	rptr = dev_dir->d_iname;
+	lptr = dev_name;
+	while (*rptr) {
+		if (*rptr == ':') {
+			rptr++;
+			continue;
+		}
+		*lptr++ = *rptr++;
+	}
+
+	/* convert this string as hex integer */
+	rv = kstrtoint((const char *)dev_name, 16, &dev_id);
+	if (rv < 0) {
+		rv = -ENODEV;
+		return rv;
+	}
+
+	priv = (struct dbgfs_q_priv *) kzalloc(sizeof(struct dbgfs_q_priv),
+			GFP_KERNEL);
+	if (!priv) {
+		rv = -ENOMEM;
+		return rv;
+	}
+
+	priv->dev_hndl = (unsigned long)descq->xdev;
+	priv->qhndl = qdma_device_get_id_from_descq(descq->xdev, descq);
+	if (priv->qhndl < 0) {
+		kfree(priv);
+		return -EINVAL;
+	}
+
+	fp->private_data = priv;
+
+	return 0;
+}
+
+/*****************************************************************************/
+/**
+ * q_dbg_file_release() - function that provides generic release
+ *
+ * @param[in]	inode:	pointer to file inode
+ * @param[in]	fp:	pointer to file structure
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int q_dbg_file_release(struct inode *inode, struct file *fp)
+{
+	kfree(fp->private_data);
+
+	fp->private_data = NULL;
+
+	return 0;
+}
+
+/*****************************************************************************/
+/**
+ * qdbg_parse_ctxt_to_buf() - parses queue context to human readable format
+ *
+ * @param[in]	ctxt: raw context info
+ * @param[in]	entries: context entries structure pointer
+ * @param[in]	num_entries:	number of context entries
+ * @param[out]	buf: buffer to write parsed context
+ * @param[in]	buflen: buffer len
+ *
+ * @return	>0: size read
+ * @return	<0: error
+ *****************************************************************************/
+int qdbg_parse_ctxt_to_buf(u32 *ctxt,
+		struct dbgfs_qctxt_entry *entries,
+		int num_entries,
+		char *buf, int buflen)
+{
+	int i = 0, w;
+	u32 v;
+	u64 mask = 0;
+	int len = 0;
+
+	for (i = num_entries - 1; i >= 0; i--) {
+		w = entries[i].word;
+		v = ((ctxt[w] >> entries[i].pos) &
+				(~((~mask) << entries[i].len)));
+		len += snprintf(buf + len, buflen - len,
+				"\t%-47s %#-10x %u\n",
+				entries[i].name, v, v);
+	}
+	len += snprintf(buf + len, buflen - len, "\n");
+
+	return len;
+}
+
+/*****************************************************************************/
+/**
+ * qdbg_cntxt_read() - reads queue context for a queue
+ *
+ * @param[in]	dev_hndl:	xdev device handle
+ * @param[in]	id: queue handle
+ * @param[out]	buf: buffer to collect the context info
+ * @param[in]	buflen: buffer len
+ * @param[in]	type: context type
+ *
+ * @return	>0: size read
+ * @return	<0: error
+ *****************************************************************************/
+int qdbg_cntxt_read(unsigned long dev_hndl, unsigned long id, char **data,
+		int *data_len, enum dbgfs_desc_type type)
+{
+	int rv = 0;
+	int len = 0;
+	int num_entries = 0;
+	char *buf = NULL;
+	int buflen = DEBUGFS_QUEUE_CTXT_SZ;
+	struct hw_descq_context ctxt;
+	struct qdma_descq *descq = NULL;
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+
+	if (!xdev)
+		return -EINVAL;
+
+	if (xdev_check_hndl(__func__, xdev->conf.pdev, dev_hndl) < 0)
+		return -EINVAL;
+
+	/* allocate memory */
+	buf = (char *) kzalloc(buflen, GFP_KERNEL);
+	if (!buf)
+		return -ENOMEM;
+
+	/** get descq by id */
+	descq = qdma_device_get_descq_by_id(xdev, id, buf, buflen, 0);
+	if (!descq) {
+		kfree(buf);
+		return QDMA_ERR_INVALID_QIDX;
+	}
+
+	/** initialize the context */
+	memset(&ctxt, 0, sizeof(struct hw_descq_context));
+	/** read the descq context for the given qid */
+	rv = qdma_descq_context_read(descq->xdev, descq->qidx_hw,
+			descq->conf.st, descq->conf.c2h, &ctxt);
+	if (rv < 0) {
+		len += sprintf(buf + len, "%s read context failed %d.\n",
+				descq->conf.name, rv);
+		buf[len] = '\0';
+
+		*data = buf;
+		*data_len = buflen;
+		return rv;
+	}
+
+	if (type == DBGFS_DESC_TYPE_CMPT) {
+		/** convert CMPT context to human readable text */
+		len += snprintf(buf + len, buflen - len, "CMPT CTXT:\n");
+		num_entries = sizeof(cmpt_ctxt)/sizeof(cmpt_ctxt[0]);
+		len += qdbg_parse_ctxt_to_buf(ctxt.cmpt, cmpt_ctxt,
+				num_entries, buf + len, buflen - len);
+	} else {
+		/** convert SW context to human readable text */
+		len += snprintf(buf + len, buflen - len, "SOFTWARE CTXT:\n");
+		num_entries = sizeof(app_ctxt)/sizeof(app_ctxt[0]);
+		len += qdbg_parse_ctxt_to_buf(ctxt.sw, app_ctxt,
+				num_entries, buf + len, buflen - len);
+
+		/** convert hardware context to human readable text */
+		len += snprintf(buf + len, buflen - len, "HARDWARE CTXT:\n");
+		num_entries = sizeof(hw_ctxt)/sizeof(hw_ctxt[0]);
+		len += qdbg_parse_ctxt_to_buf(ctxt.hw, hw_ctxt,
+				num_entries, buf + len, buflen - len);
+		if (!(descq->conf.st && descq->conf.c2h))
+			goto cntxt_exit;
+
+		/** convert credit context to human readable text */
+		len += snprintf(buf + len, buflen - len, "CREDIT CTXT:\n");
+		num_entries = sizeof(credit_ctxt)/sizeof(credit_ctxt[0]);
+		len += qdbg_parse_ctxt_to_buf(ctxt.cr, credit_ctxt,
+				num_entries, buf + len, buflen - len);
+
+		if (type == DBGFS_DESC_TYPE_C2H) {
+			/** convert prefetch context to human readable text */
+			len += snprintf(buf + len, buflen - len,
+							"PREFETCH CTXT:\n");
+			num_entries =
+			sizeof(c2h_pftch_ctxt)/sizeof(c2h_pftch_ctxt[0]);
+			len += qdbg_parse_ctxt_to_buf(ctxt.prefetch,
+							c2h_pftch_ctxt,
+					num_entries, buf + len, buflen - len);
+		}
+	}
+
+cntxt_exit:
+	buf[len] = '\0';
+
+	*data = buf;
+	*data_len = buflen;
+
+	return len;
+}
+
+/*****************************************************************************/
+/**
+ * qdbg_info_read() - reads queue info for a queue
+ *
+ * @param[in]	dev_hndl:	xdev device handle
+ * @param[in]	id: queue handle
+ * @param[out]	data: buffer pointer to collect the queue info
+ * @param[out]	data_len: buffer len pointer
+ * @param[in]	type: ring type
+ *
+ * @return	>0: size read
+ * @return	<0: error
+ *****************************************************************************/
+int qdbg_info_read(unsigned long dev_hndl, unsigned long id, char **data,
+		int *data_len, enum dbgfs_desc_type type)
+{
+	int len = 0;
+	char *buf = NULL;
+	int buflen = DEBUGFS_QUEUE_INFO_SZ;
+	struct qdma_descq *descq = NULL;
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+
+	/** allocate memory */
+	buf = (char *) kzalloc(buflen, GFP_KERNEL);
+	if (!buf)
+		return -ENOMEM;
+
+	descq = qdma_device_get_descq_by_id(xdev, id, buf, buflen, 0);
+	if (!descq) {
+		kfree(buf);
+		return QDMA_ERR_INVALID_QIDX;
+	}
+
+	len = qdma_descq_dump_state(descq, buf + len, buflen - len);
+
+	*data = buf;
+	*data_len = buflen;
+
+	return len;
+}
+
+/*****************************************************************************/
+/**
+ * qdbg_desc_read() - reads descriptors of a queue
+ *
+ * @param[in]	dev_hndl:	xdev device handle
+ * @param[in]	id: queue handle
+ * @param[out]	data: buffer pointer to collect the queue descriptors
+ * @param[out]	data_len: buffer len pointer
+ * @param[in]	type: ring type
+ *
+ * @return	>0: size read
+ * @return	<0: error
+ *****************************************************************************/
+int qdbg_desc_read(unsigned long dev_hndl, unsigned long id, char **data,
+		int *data_len, enum dbgfs_desc_type type)
+{
+	int len = 0;
+	int rngsz = 0;
+	struct qdma_descq *descq = NULL;
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+	char *buf = NULL;
+	int buflen = 0;
+
+	descq = qdma_device_get_descq_by_id(xdev, id, buf, buflen, 0);
+	if (!descq)
+		return QDMA_ERR_INVALID_QIDX;
+
+	/** get the ring size */
+	if (type != DBGFS_DESC_TYPE_CMPT)
+		rngsz = descq->conf.rngsz;
+	else
+		rngsz = descq->conf.rngsz_cmpt;
+
+	/** 128 bytes is to accomodate header printed in the begining */
+	buflen = (rngsz * DEBUGFS_QUEUE_DESC_SZ) + 128;
+
+	/* allocate memory */
+	buf = (char *) kzalloc(buflen, GFP_KERNEL);
+	if (!buf)
+		return -ENOMEM;
+
+	if (type != DBGFS_DESC_TYPE_CMPT) {
+		len += qdma_queue_dump_desc(dev_hndl, id,
+				0, rngsz-1, buf + len, buflen - len);
+	} else {
+		len += qdma_queue_dump_cmpt(dev_hndl, id,
+				0, rngsz-1, buf + len, buflen - len);
+	}
+
+	*data = buf;
+	*data_len = buflen;
+
+	return len;
+}
+
+/*****************************************************************************/
+/**
+ * q_dbg_file_read() - static function that provides common read
+ *
+ * @param[in]	fp:	pointer to file structure
+ * @param[out]	user_buffer: pointer to user buffer
+ * @param[in]	count: size of data to read
+ * @param[in/out]	ppos: pointer to offset read
+ * @param[in]	type: information type
+ *
+ * @return	>0: size read
+ * @return	<0: error
+ *****************************************************************************/
+static ssize_t q_dbg_file_read(struct file *fp, char __user *user_buffer,
+		size_t count, loff_t *ppos, enum dbgfs_queue_info_type type)
+{
+	char *buf = NULL;
+	int buf_len = 0, len = 0, rv = 0;
+	struct dbgfs_q_priv *qpriv = (struct dbgfs_q_priv *)fp->private_data;
+
+	if (qpriv->data == NULL && qpriv->datalen == 0) {
+		if (type == DBGFS_QINFO_INFO) {
+			rv = qdbg_info_read(qpriv->dev_hndl, qpriv->qhndl,
+					&buf, &buf_len, DBGFS_DESC_TYPE_C2H);
+		} else if (type == DBGFS_QINFO_CNTXT) {
+			rv = qdbg_cntxt_read(qpriv->dev_hndl, qpriv->qhndl,
+					&buf, &buf_len, DBGFS_DESC_TYPE_C2H);
+		} else if (type == DBGFS_QINFO_DESC) {
+			rv = qdbg_desc_read(qpriv->dev_hndl, qpriv->qhndl,
+					&buf, &buf_len, DBGFS_DESC_TYPE_C2H);
+		}
+
+		if (rv < 0)
+			goto q_dbg_file_read_exit;
+
+		qpriv->datalen = rv;
+		qpriv->data = buf;
+	}
+
+	buf = qpriv->data;
+	len = qpriv->datalen;
+
+	if (!buf)
+		goto q_dbg_file_read_exit;
+
+	/** write to user buffer */
+	if (*ppos >= len) {
+		rv = 0;
+		goto q_dbg_file_read_exit;
+	}
+
+	if (*ppos + count > len)
+		count = len - *ppos;
+
+	if (copy_to_user(user_buffer, buf + *ppos, count)) {
+		rv = -EFAULT;
+		goto q_dbg_file_read_exit;
+	}
+
+	*ppos += count;
+	rv = count;
+
+	pr_debug("number of bytes written to user space is %zu\n", count);
+
+q_dbg_file_read_exit:
+	kfree(buf);
+	qpriv->data = NULL;
+	qpriv->datalen = 0;
+	return rv;
+}
+
+/*****************************************************************************/
+/**
+ * q_info_open() - static function that executes info file open
+ *
+ * @param[in]	inode:	pointer to file inode
+ * @param[in]	fp:	pointer to file structure
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+static int q_info_open(struct inode *inode, struct file *fp)
+{
+	return q_dbg_file_open(inode, fp);
+}
+
+/*****************************************************************************/
+/**
+ * q_info_read() - static function that executes info file read
+ *
+ * @param[in]	fp:	pointer to file structure
+ * @param[out]	user_buffer: pointer to user buffer
+ * @param[in]	count: size of data to read
+ * @param[in/out]	ppos: pointer to offset read
+ *
+ * @return	>0: size read
+ * @return	<0: error
+ *****************************************************************************/
+static ssize_t q_info_read(struct file *fp, char __user *user_buffer,
+		size_t count, loff_t *ppos)
+{
+	return q_dbg_file_read(fp, user_buffer, count, ppos, DBGFS_QINFO_INFO);
+}
+
+/*****************************************************************************/
+/**
+ * q_cntxt_open() - static function that executes cntxt file open
+ *
+ * @param[in]	inode:	pointer to file inode
+ * @param[in]	fp:	pointer to file structure
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+static int q_cntxt_open(struct inode *inode, struct file *fp)
+{
+	return q_dbg_file_open(inode, fp);
+}
+
+/*****************************************************************************/
+/**
+ * q_cntxt_read() - static function that performs cntxt file read
+ *
+ * @param[in]	fp:	pointer to file structure
+ * @param[out]	user_buffer: pointer to user buffer
+ * @param[in]	count: size of data to read
+ * @param[in/out]	ppos: pointer to offset read
+ *
+ * @return	>0: size read
+ * @return	<0: error
+ *****************************************************************************/
+static ssize_t q_cntxt_read(struct file *fp, char __user *user_buffer,
+		size_t count, loff_t *ppos)
+{
+	return q_dbg_file_read(fp, user_buffer, count, ppos, DBGFS_QINFO_CNTXT);
+}
+
+/*****************************************************************************/
+/**
+ * q_desc_open() - static function that executes desc file open
+ *
+ * @param[in]	inode:	pointer to file inode
+ * @param[in]	fp:	pointer to file structure
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+static int q_desc_open(struct inode *inode, struct file *fp)
+{
+	return q_dbg_file_open(inode, fp);
+}
+
+/*****************************************************************************/
+/**
+ * q_desc_read() - static function that executes desc read
+ *
+ * @param[in]	fp:	pointer to file structure
+ * @param[out]	user_buffer: pointer to user buffer
+ * @param[in]	count: size of data to read
+ * @param[in/out]	ppos: pointer to offset read
+ *
+ * @return	>0: size read
+ * @return	<0: error
+ *****************************************************************************/
+static ssize_t q_desc_read(struct file *fp, char __user *user_buffer,
+		size_t count, loff_t *ppos)
+{
+	return q_dbg_file_read(fp, user_buffer, count, ppos, DBGFS_QINFO_DESC);
+}
+
+/*****************************************************************************/
+/**
+ * create_q_dbg_files() - static function to create queue debug files
+ *
+ * @param[in]	queue_root:	debugfs root for a queue
+ *
+ * @return	>0: size read
+ * @return	<0: error
+ *****************************************************************************/
+int create_q_dbg_files(struct qdma_descq *descq, struct dentry *queue_root)
+{
+	struct dentry  *fp[DBGFS_QINFO_END] = { NULL };
+	struct file_operations *fops = NULL;
+	int i = 0;
+
+	memset(qf, 0, sizeof(struct dbgfs_q_dbgf) * DBGFS_QINFO_END);
+
+	for (i = 0; i < DBGFS_QINFO_END; i++) {
+		fops = &qf[i].fops;
+		fops->owner = THIS_MODULE;
+		switch (i) {
+		case DBGFS_QINFO_INFO:
+			snprintf(qf[i].name, DBGFS_DBG_FNAME_SZ, "%s", "info");
+			fops->open = q_info_open;
+			fops->read = q_info_read;
+			fops->release = q_dbg_file_release;
+			break;
+		case DBGFS_QINFO_CNTXT:
+			snprintf(qf[i].name, DBGFS_DBG_FNAME_SZ, "%s", "cntxt");
+			fops->open = q_cntxt_open;
+			fops->read = q_cntxt_read;
+			fops->release = q_dbg_file_release;
+			break;
+		case DBGFS_QINFO_DESC:
+			snprintf(qf[i].name, DBGFS_DBG_FNAME_SZ, "%s", "desc");
+			fops->open = q_desc_open;
+			fops->read = q_desc_read;
+			fops->release = q_dbg_file_release;
+			break;
+		}
+	}
+
+	for (i = 0; i < DBGFS_QINFO_END; i++) {
+		fp[i] = debugfs_create_file(qf[i].name, 0644, queue_root,
+				descq, &qf[i].fops);
+		if (!fp[i])
+			return -1;
+	}
+	return 0;
+}
+
+/*****************************************************************************/
+/**
+ * dbgfs_queue_init() - queue initialization function
+ *
+ * @param[in]	conf:	queue configuration
+ * @param[in]	pair_conf:	pair queue configuration
+ * @param[in]	dbgfs_queues_root:	root directory for all queues
+ *
+ * @return	0: success
+ * @return	<0: error
+ *****************************************************************************/
+int dbgfs_queue_init(struct qdma_queue_conf *conf,
+		struct qdma_descq *pairq,
+		struct dentry *dbgfs_queues_root)
+{
+	char qname[16] = {0};
+	char qdir[8] = {0};
+	struct dentry *dbgfs_qidx_root = NULL;
+	struct dentry *dbgfs_queue_root = NULL;
+	struct dentry *dbgfs_cmpt_queue_root = NULL;
+	struct qdma_descq *descq = container_of(conf, struct qdma_descq, conf);
+	int rv = 0;
+
+	if (!descq)
+		return -EINVAL;
+	snprintf(qname, 16, "%u", conf->qidx);
+
+	spin_lock(&descq->xdev->qidx_lock);
+	/** create queue root only if it is not created */
+	if (pairq->dbgfs_qidx_root) {
+		dbgfs_qidx_root = pairq->dbgfs_qidx_root;
+	} else {
+		/* create a directory for the queue in debugfs */
+		dbgfs_qidx_root = debugfs_create_dir(qname,
+				dbgfs_queues_root);
+		if (!dbgfs_qidx_root) {
+			pr_err("Failed to create queue [%s] directory\n",
+					qname);
+			spin_unlock(&descq->xdev->qidx_lock);
+			return -1;
+		}
+	}
+
+	/* create a directory for direction */
+	if (conf->c2h)
+		snprintf(qdir, 8, "%s", "c2h");
+	else
+		snprintf(qdir, 8, "%s", "h2c");
+
+	dbgfs_queue_root = debugfs_create_dir(qdir,
+			dbgfs_qidx_root);
+	if (!dbgfs_queue_root) {
+		pr_err("Failed to create %s directory under %s",
+				qdir, qname);
+		goto dbgfs_queue_init_fail;
+	}
+
+	if (conf->c2h && conf->st) {
+		/* create a directory for the cmpt in debugfs */
+		dbgfs_cmpt_queue_root = debugfs_create_dir("cmpt",
+				dbgfs_qidx_root);
+		if (!dbgfs_cmpt_queue_root) {
+			pr_err("Failed to create cmpt directory under %s",
+					qname);
+			goto dbgfs_queue_init_fail;
+		}
+	}
+
+	/* intialize fops and create all the files */
+	rv = create_q_dbg_files(descq, dbgfs_queue_root);
+	if (rv < 0) {
+		pr_err("Failed to create qdbg files, removing %s dir\n",
+				qdir);
+		debugfs_remove_recursive(dbgfs_queue_root);
+		goto dbgfs_queue_init_fail;
+	}
+
+	if (dbgfs_cmpt_queue_root) {
+		rv = create_cmpt_q_dbg_files(descq, dbgfs_cmpt_queue_root);
+		if (rv < 0) {
+			pr_err("Failed to create cmptq dbg files,removing cmpt dir\n");
+			debugfs_remove_recursive(dbgfs_cmpt_queue_root);
+			goto dbgfs_queue_init_fail;
+		}
+	}
+
+	descq->dbgfs_qidx_root = dbgfs_qidx_root;
+	descq->dbgfs_queue_root = dbgfs_queue_root;
+	descq->dbgfs_cmpt_queue_root = dbgfs_cmpt_queue_root;
+	spin_unlock(&descq->xdev->qidx_lock);
+
+	return 0;
+
+dbgfs_queue_init_fail:
+	if (pairq->dbgfs_qidx_root) {
+		spin_unlock(&descq->xdev->qidx_lock);
+		return -1;
+	}
+	pr_err("Failed to init q debug files, removing [%s] dir\n", qname);
+	debugfs_remove_recursive(dbgfs_qidx_root);
+	spin_unlock(&descq->xdev->qidx_lock);
+	return -1;
+}
+
+/*****************************************************************************/
+/**
+ * dbgfs_queue_exit() - debugfs queue teardown function
+ *
+ * @param[in]	conf:	queue configuration
+ * @param[in]	conf:	pair queue configuration
+ *
+ *****************************************************************************/
+void dbgfs_queue_exit(struct qdma_queue_conf *conf,
+		struct qdma_descq *pairq)
+{
+	struct qdma_descq *descq = container_of(conf, struct qdma_descq, conf);
+
+	if (!descq)
+		return;
+	debugfs_remove_recursive(descq->dbgfs_queue_root);
+	debugfs_remove_recursive(descq->dbgfs_cmpt_queue_root);
+	descq->dbgfs_queue_root = NULL;
+	descq->dbgfs_cmpt_queue_root = NULL;
+	if (!pairq)
+		debugfs_remove_recursive(descq->dbgfs_qidx_root);
+
+	descq->dbgfs_qidx_root = NULL;
+}
+
+#endif
diff --git a/QDMA/linux-kernel/libqdma/qdma_debugfs_queue.h b/QDMA/linux-kernel/libqdma/qdma_debugfs_queue.h
new file mode 100644
index 0000000..1dac21d
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/qdma_debugfs_queue.h
@@ -0,0 +1,33 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#ifndef __QDMA_DEBUGFS_QUEUE_H__
+#define __QDMA_DEBUGFS_QUEUE_H__
+
+#include "qdma_debugfs.h"
+#include "qdma_descq.h"
+
+
+int dbgfs_queue_init(struct qdma_queue_conf *conf,
+		struct qdma_descq *pairq,
+		struct dentry *dbgfs_queues_root);
+void dbgfs_queue_exit(struct qdma_queue_conf *conf,
+		struct qdma_descq *pairq);
+
+#endif
diff --git a/QDMA/linux-kernel/libqdma/qdma_descq.c b/QDMA/linux-kernel/libqdma/qdma_descq.c
new file mode 100644
index 0000000..bbe1704
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/qdma_descq.c
@@ -0,0 +1,1602 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#define pr_fmt(fmt)	KBUILD_MODNAME ":%s: " fmt, __func__
+
+#include "qdma_descq.h"
+
+#include <linux/kernel.h>
+#include <linux/delay.h>
+
+#include "qdma_device.h"
+#include "qdma_intr.h"
+#include "qdma_regs.h"
+#include "qdma_thread.h"
+#include "qdma_context.h"
+#include "qdma_st_c2h.h"
+#include "thread.h"
+#include "version.h"
+#ifdef ERR_DEBUG
+#include "qdma_nl.h"
+#endif
+
+void intr_cidx_update(struct qdma_descq *descq, unsigned int sw_cidx,
+		int ring_index)
+{
+	unsigned int cidx = 0;
+
+	cidx |= V_INTR_CIDX_UPD_SW_CIDX(sw_cidx) |
+			V_INTR_CIDX_UPD_RING_INDEX(ring_index);
+
+	__write_reg(descq->xdev,
+		QDMA_REG_INT_CIDX_BASE + descq->conf.qidx * QDMA_REG_PIDX_STEP,
+		cidx);
+}
+
+/*
+ * dma transfer requests
+ */
+#ifdef DEBUG
+static void sgl_dump(struct qdma_sw_sg *sgl, unsigned int sgcnt)
+{
+	struct qdma_sw_sg *sg = sgl;
+	int i;
+
+	pr_info("sgl 0x%p, sgcntt %u.\n", sgl, sgcnt);
+
+	for (i = 0; i < sgcnt; i++, sg++)
+		pr_info("%d, 0x%p, pg 0x%p,%u+%u, dma 0x%llx.\n",
+			i, sg, sg->pg, sg->offset, sg->len, sg->dma_addr);
+}
+#endif
+
+static int sgl_find_offset(struct qdma_sw_sg *sgl, unsigned int sgcnt,
+			unsigned int offset, struct qdma_sw_sg **sg_p,
+			unsigned int *sg_offset)
+{
+	struct qdma_sw_sg *sg = sgl;
+	unsigned int len = 0;
+	int i;
+
+	for (i = 0;  i < sgcnt; i++, sg++) {
+		len += sg->len;
+
+		if (len == offset) {
+			*sg_p = sg + 1;
+			*sg_offset = 0;
+			return ++i;
+		} else if (len > offset) {
+			*sg_p = sg;
+			*sg_offset = sg->len - (len - offset);
+			return i;
+		}
+	}
+
+	return -EINVAL;
+}
+
+static inline void req_submitted(struct qdma_descq *descq,
+				struct qdma_sgt_req_cb *cb)
+{
+	cb->req_state = QDMA_REQ_SUBMITTED;
+	list_del(&cb->list);
+	list_add_tail(&cb->list, &descq->pend_list);
+}
+
+static int descq_mm_n_h2c_cmpl_status(struct qdma_descq *descq);
+
+static int descq_poll_mm_n_h2c_cmpl_status(struct qdma_descq *descq)
+{
+	enum qdma_drv_mode drv_mode = descq->xdev->conf.qdma_drv_mode;
+
+	if ((drv_mode == POLL_MODE) || (drv_mode == AUTO_MODE)) {
+		descq->proc_req_running = 1;
+		return descq_mm_n_h2c_cmpl_status(descq);
+	} else
+		return 0;
+}
+
+static ssize_t descq_mm_proc_request(struct qdma_descq *descq)
+{
+	int c2h = descq->conf.c2h;
+	unsigned int desc_written = 0;
+	unsigned int rngsz = descq->conf.rngsz;
+	unsigned int pidx;
+	struct qdma_mm_desc *desc;
+
+	lock_descq(descq);
+	/* process completion of submitted requests */
+	if (descq->q_stop_wait) {
+		descq_mm_n_h2c_cmpl_status(descq);
+		unlock_descq(descq);
+		return 0;
+	}
+	if (unlikely(descq->q_state != Q_STATE_ONLINE)) {
+		unlock_descq(descq);
+		return 0;
+	}
+
+	if (descq->proc_req_running) {
+		unlock_descq(descq);
+		return 0;
+	}
+
+	pidx = descq->pidx;
+	desc = (struct qdma_mm_desc *)descq->desc + pidx;
+
+	descq_poll_mm_n_h2c_cmpl_status(descq);
+
+	while (!list_empty(&descq->work_list)) {
+		struct qdma_sgt_req_cb *cb = list_first_entry(&descq->work_list,
+						struct qdma_sgt_req_cb, list);
+		struct qdma_request *req = (struct qdma_request *)cb;
+		struct qdma_sw_sg *sg = req->sgl;
+		unsigned int sg_offset = 0;
+		unsigned int sg_max = req->sgcnt;
+		u64 ep_addr = req->ep_addr + cb->offset;
+		struct qdma_mm_desc *desc_start = NULL;
+		struct qdma_mm_desc *desc_end = NULL;
+		unsigned int desc_max = descq->avail;
+		unsigned int data_cnt = 0;
+		unsigned int desc_cnt = 0;
+		unsigned int len = 0;
+		int i = 0;
+
+		if (!desc_max) {
+			descq->pidx = pidx;
+			descq_poll_mm_n_h2c_cmpl_status(descq);
+			desc_max = descq->avail;
+		}
+
+		if (!desc_max)
+			break;
+
+		if (cb->offset) {
+			int rv = sgl_find_offset(req->sgl, req->sgcnt,
+						 cb->offset, &sg, &sg_offset);
+			if (rv < 0 || rv >= sg_max) {
+				pr_info("descq %s, req 0x%p, OOR %u/%u, %d/%u.\n",
+					descq->conf.name, req, cb->offset,
+					req->count, rv, sg_max);
+				req_submitted(descq, cb);
+				continue;
+			}
+			i = rv;
+			pr_debug("%s, req 0x%p, offset %u/%u -> sg %d, 0x%p,%u.\n",
+				descq->conf.name, req, cb->offset, req->count,
+				i, sg, sg_offset);
+		} else
+			i = 0;
+
+		desc_start = desc;
+		for (; i < sg_max && desc_cnt < desc_max; i++, sg++) {
+			unsigned int tlen = sg->len;
+			dma_addr_t addr = sg->dma_addr;
+			unsigned int pg_off = sg->offset;
+
+			pr_debug("desc %u/%u, sgl %d, len %u,%u, offset %u.\n",
+				desc_cnt, desc_max, i, len, tlen, sg_offset);
+
+			if (sg_offset) {
+				tlen -= sg_offset;
+				addr += sg_offset;
+				pg_off += sg_offset;
+				sg_offset = 0;
+			}
+
+			while (tlen) {
+				unsigned int len = min_t(unsigned int, tlen,
+							QDMA_DESC_BLEN_MAX);
+				desc_end = desc;
+
+				desc->rsvd1 = 0UL;
+				desc->rsvd0 = 0U;
+
+				if (descq->conf.c2h) {
+					desc->src_addr = ep_addr;
+					desc->dst_addr = addr;
+				} else {
+					desc->dst_addr = ep_addr;
+					desc->src_addr = addr;
+				}
+
+				desc->flag_len = len;
+				desc->flag_len |= (1 << S_DESC_F_DV);
+
+				ep_addr += len;
+				data_cnt += len;
+				addr += len;
+				tlen -= len;
+				pg_off += len;
+
+				if (++pidx == rngsz) {
+					pidx = 0;
+					desc =
+					(struct qdma_mm_desc *)descq->desc;
+				} else {
+					desc++;
+				}
+
+				desc_cnt++;
+				if (desc_cnt == desc_max)
+					break;
+			}
+		}
+
+		if (!desc_end || !desc_start) {
+			pr_info("descq %s, %u, pidx 0x%x, desc 0x%p ~ 0x%p.\n",
+				descq->conf.name, descq->qidx_hw, pidx,
+				desc_start, desc_end);
+			break;
+		}
+
+		/* set eop */
+		desc_end->flag_len |= (1 << S_DESC_F_EOP);
+		/* set sop */
+		desc_start->flag_len |= (1 << S_DESC_F_SOP);
+
+		cb->desc_nr += desc_cnt;
+		cb->offset += data_cnt;
+
+		desc_written += desc_cnt;
+
+		pr_debug("descq %s, +%u,%u, avail %u, ep_addr 0x%llx + 0x%x(%u).\n",
+			descq->conf.name, desc_cnt, pidx, descq->avail,
+			req->ep_addr, data_cnt, data_cnt);
+
+		descq->avail -= desc_cnt;
+		descq->pend_req_desc -= desc_cnt;
+		if (cb->offset == req->count)
+			req_submitted(descq, cb);
+		else
+			cb->req_state = QDMA_REQ_SUBMIT_PARTIAL;
+	}
+
+	if (desc_written) {
+		descq->pend_list_empty = 0;
+		if (c2h)
+			descq_c2h_pidx_update(descq, pidx);
+		else
+			descq_h2c_pidx_update(descq, pidx);
+
+		descq->pidx = pidx;
+
+		descq_poll_mm_n_h2c_cmpl_status(descq);
+	}
+
+	descq->proc_req_running = 0;
+	unlock_descq(descq);
+
+	if (desc_written && descq->cmplthp)
+		qdma_kthread_wakeup(descq->cmplthp);
+
+	return 0;
+}
+
+static ssize_t descq_proc_st_h2c_request(struct qdma_descq *descq)
+{
+	struct qdma_h2c_desc *desc;
+	unsigned int rngsz = descq->conf.rngsz;
+	unsigned int pidx;
+	unsigned int desc_written = 0;
+
+	lock_descq(descq);
+	/* process completion of submitted requests */
+	if (descq->q_stop_wait) {
+		descq_mm_n_h2c_cmpl_status(descq);
+		unlock_descq(descq);
+		return 0;
+	}
+	if (unlikely(descq->q_state != Q_STATE_ONLINE)) {
+		unlock_descq(descq);
+		return 0;
+	}
+
+	if (descq->proc_req_running) {
+		unlock_descq(descq);
+		return 0;
+	}
+
+	/* service completion first */
+	descq_poll_mm_n_h2c_cmpl_status(descq);
+
+	pidx = descq->pidx;
+	desc = (struct qdma_h2c_desc *)descq->desc + pidx;
+	while (!list_empty(&descq->work_list)) {
+		struct qdma_sgt_req_cb *cb = list_first_entry(&descq->work_list,
+						struct qdma_sgt_req_cb, list);
+		struct qdma_request *req = (struct qdma_request *)cb;
+		struct qdma_sw_sg *sg = req->sgl;
+		unsigned int sg_offset = 0;
+		unsigned int sg_max = req->sgcnt;
+		unsigned int desc_max = descq->avail;
+		unsigned int data_cnt = 0;
+		unsigned int desc_cnt = 0;
+		unsigned int pktsz = req->ep_addr ?
+				min_t(unsigned int, req->ep_addr, PAGE_SIZE) :
+				PAGE_SIZE;
+		int i = 0;
+
+		if (!desc_max) {
+			descq->pidx = pidx;
+			descq_poll_mm_n_h2c_cmpl_status(descq);
+			desc_max = descq->avail;
+		}
+
+		if (!desc_max)
+			break;
+
+#ifdef DEBUG
+		pr_info("%s, req %u.\n", descq->conf.name, req->count);
+		sgl_dump(req->sgl, sg_max);
+#endif
+
+		if (cb->offset) {
+			int rv = sgl_find_offset(req->sgl, sg_max, cb->offset,
+						 &sg, &sg_offset);
+
+			if (rv < 0 || rv >= sg_max) {
+				pr_info("descq %s, req 0x%p, OOR %u/%u, %d/%u.\n",
+				descq->conf.name, req, cb->offset,
+				req->count, rv, sg_max);
+				req_submitted(descq, cb);
+				continue;
+			}
+			i = rv;
+			pr_debug("%s, req 0x%p, offset %u/%u -> sg %d, 0x%p,%u.\n",
+				descq->conf.name, req, cb->offset, req->count,
+				i, sg, sg_offset);
+		} else {
+			i = 0;
+			desc->flags |= S_H2C_DESC_F_SOP;
+		}
+
+		for (; i < sg_max && desc_cnt < desc_max; i++, sg++) {
+			unsigned int tlen = sg->len;
+			dma_addr_t addr = sg->dma_addr;
+
+			if (sg_offset) {
+				tlen -= sg_offset;
+				addr += sg_offset;
+				sg_offset = 0;
+			}
+
+			do { /* to support zero byte transfer */
+				unsigned int len = min_t(unsigned int, tlen,
+							 pktsz);
+
+				desc->src_addr = addr;
+				desc->len = len;
+				desc->pld_len = len;
+				desc->cdh_flags |= S_H2C_DESC_F_ZERO_CDH;
+
+				if (descq->xdev->stm_en) {
+					desc->pld_len = len;
+					desc->cdh_flags =
+						(1 << S_H2C_DESC_F_ZERO_CDH);
+					desc->cdh_flags |= V_H2C_DESC_NUM_GL(1);
+
+					/* if we are about to exhaust ring,
+					 * request h2c-wb
+					 */
+					if (desc_cnt == (desc_max - 1))
+						desc->cdh_flags |=
+						(1 <<
+						S_H2C_DESC_F_REQ_CMPL_STATUS);
+				} else if (unlikely
+				    (descq->xdev->conf.tm_mode_en)) {
+				  /** Check if we are running in TM mode to test
+				   * sending TMH and CDH with Traffic Manager
+				   * example design for Streaming H2C queue in
+				   * bypass mode
+				   */
+
+					/** In TM mode, check if we are to run
+					 *  with 1 CDH or Zero CDH
+					 */
+					if (descq->xdev->conf.tm_one_cdh_en) {
+					      /** In 1 CDH case, this desc
+					       *  carries CDH - comprising of
+					       *  4B TMH (pld_len and
+					       *  cdh_flags fields) and 12B CDH.
+					       *
+					       * Next desc carries the GL. So,
+					       * we advance to next desc.
+					       *
+					       * Max supported payload with GL
+					       * is 4K.
+					       */
+						desc->pld_len = len;
+						desc->cdh_flags =
+							(V_H2C_DESC_NUM_CDH(1) |
+							 V_H2C_DESC_NUM_GL(1) |
+					   (1 << S_H2C_DESC_F_REQ_CMPL_STATUS) |
+						  (1 << S_H2C_DESC_F_EOT));
+						desc->flags = 0;
+						desc->len = 0;
+						desc->src_addr = 0;
+
+					if (++pidx == descq->conf.rngsz) {
+						pidx = 0;
+						desc =
+					    (struct qdma_h2c_desc *)descq->desc;
+					} else {
+						desc++;
+					}
+						desc_cnt++;
+						/* below due to one CDH desc */
+						descq->pend_req_desc += 1;
+						desc->pld_len = 0;
+						desc->cdh_flags = 0;
+						desc->src_addr = addr;
+						desc->len = len;
+					} else {
+					    /** In zero CDH case, this desc
+					     *  holds the 4B TMH (pld_len and
+					     *  cdh_flags fields).
+					     *  And the desc carries the GL too.
+					     *
+					     *  Max supported payload with GL
+					     *  is 4K.
+					     */
+						desc->pld_len = len;
+						desc->cdh_flags =
+						(1 << S_H2C_DESC_F_ZERO_CDH);
+						desc->cdh_flags |=
+						    V_H2C_DESC_NUM_GL(1);
+						desc->cdh_flags |=
+							((1 <<
+						S_H2C_DESC_F_REQ_CMPL_STATUS) |
+						 (1 << S_H2C_DESC_F_EOT));
+					}
+				}
+
+#ifdef ER_DEBUG
+				if (descq->induce_err & (1 << len_mismatch)) {
+					desc->len = 0xFFFFFFFF;
+					pr_info("inducing %d err",
+						len_mismatch);
+				}
+#endif
+				data_cnt += len;
+				addr += len;
+				tlen -= len;
+
+				if ((i == sg_max - 1)) {
+					desc->flags |= S_H2C_DESC_F_EOP;
+
+					if (descq->xdev->stm_en)
+						desc->cdh_flags |=
+						(req->h2c_eot <<
+							S_H2C_DESC_F_EOT) |
+						(1 <<
+						 S_H2C_DESC_F_REQ_CMPL_STATUS);
+				}
+
+#if 0
+				pr_info("desc %d, pidx 0x%x, data_cnt %u, cb off %u:\n",
+					i, pidx, data_cnt, cb->offset);
+				print_hex_dump(KERN_INFO, "desc",
+					       DUMP_PREFIX_OFFSET, 16, 1,
+					       (void *)desc, 16, false);
+#endif
+
+				if (++pidx == rngsz) {
+					pidx = 0;
+					desc =
+					(struct qdma_h2c_desc *)descq->desc;
+				} else {
+					desc++;
+				}
+
+				desc_cnt++;
+				if (desc_cnt == desc_max)
+					break;
+			} while (tlen);
+
+		}
+
+		cb->desc_nr += desc_cnt;
+		cb->offset += data_cnt;
+
+		desc_written += desc_cnt;
+
+		pr_debug("descq %s, +%u,%u, avail %u, 0x%x(%u), cb off %u.\n",
+			descq->conf.name, desc_cnt, pidx, descq->avail,
+			data_cnt, data_cnt, cb->offset);
+
+		descq->avail -= desc_cnt;
+		descq->pend_req_desc -= desc_cnt;
+
+		if (cb->offset == req->count)
+			req_submitted(descq, cb);
+		else
+			cb->req_state = QDMA_REQ_SUBMIT_PARTIAL;
+	}
+
+	if (desc_written) {
+		descq->pend_list_empty = 0;
+		descq_h2c_pidx_update(descq, pidx);
+		descq->pidx = pidx;
+
+		descq_poll_mm_n_h2c_cmpl_status(descq);
+
+	}
+
+	descq->proc_req_running = 0;
+
+	if (descq->cmplthp)
+		qdma_kthread_wakeup(descq->cmplthp);
+
+	unlock_descq(descq);
+
+	return 0;
+}
+
+/*
+ * descriptor Queue
+ */
+static inline int get_desc_size(struct qdma_descq *descq)
+{
+	if (descq->conf.desc_bypass && (descq->conf.sw_desc_sz == DESC_SZ_64B))
+		return DESC_SZ_64B_BYTES;
+	if (!descq->conf.st)
+		return (int)sizeof(struct qdma_mm_desc);
+
+	if (descq->conf.c2h)
+		return (int)sizeof(struct qdma_c2h_desc);
+
+	return (int)sizeof(struct qdma_h2c_desc);
+}
+
+static inline int get_desc_cmpl_status_size(struct qdma_descq *descq)
+{
+	return (int)sizeof(struct qdma_desc_cmpl_status);
+}
+
+static inline void desc_ring_free(struct xlnx_dma_dev *xdev, int ring_sz,
+			int desc_sz, int cs_sz, u8 *desc, dma_addr_t desc_bus)
+{
+	unsigned int len = ring_sz * desc_sz + cs_sz;
+
+	pr_debug("free %u(0x%x)=%d*%u+%d, 0x%p, bus 0x%llx.\n",
+		len, len, desc_sz, ring_sz, cs_sz, desc, desc_bus);
+
+	dma_free_coherent(&xdev->conf.pdev->dev, ring_sz * desc_sz + cs_sz,
+			desc, desc_bus);
+}
+
+static void *desc_ring_alloc(struct xlnx_dma_dev *xdev, int ring_sz,
+			int desc_sz, int cs_sz, dma_addr_t *bus, u8 **cs_pp)
+{
+	unsigned int len = ring_sz * desc_sz + cs_sz;
+	u8 *p = dma_alloc_coherent(&xdev->conf.pdev->dev, len, bus, GFP_KERNEL);
+
+	if (!p) {
+		pr_info("%s, OOM, sz ring %d, desc %d, cmpl status sz %d.\n",
+			xdev->conf.name, ring_sz, desc_sz, cs_sz);
+		return NULL;
+	}
+
+	*cs_pp = p + ring_sz * desc_sz;
+	memset(p, 0, len);
+
+	pr_debug("alloc %u(0x%x)=%d*%u+%d, 0x%p, bus 0x%llx, cmpl status 0x%p.\n",
+		len, len, desc_sz, ring_sz, cs_sz, p, *bus, *cs_pp);
+
+	return p;
+}
+
+static void desc_free_irq(struct qdma_descq *descq)
+{
+	struct xlnx_dma_dev *xdev = descq->xdev;
+	unsigned long flags;
+
+	if (!xdev->num_vecs)
+		return;
+
+	spin_lock_irqsave(&xdev->lock, flags);
+	if (xdev->dev_intr_info_list[descq->intr_id].intr_list_cnt)
+		xdev->dev_intr_info_list[descq->intr_id].intr_list_cnt--;
+	spin_unlock_irqrestore(&xdev->lock, flags);
+}
+
+static void desc_alloc_irq(struct qdma_descq *descq)
+{
+	struct xlnx_dma_dev *xdev = descq->xdev;
+	unsigned long flags;
+	int i, idx = 0, min = 0;
+
+	if (!xdev->num_vecs)
+		return;
+
+	/** Pick the MSI-X vector that currently has the fewest queues
+	 * on PF0, vector#0 is dedicated for Error interrupts and
+	 * vector #1 is dedicated for User interrupts
+	 * For all other PFs, vector#0 is dedicated for User interrupts
+	 */
+	min = xdev->dev_intr_info_list[xdev->dvec_start_idx].intr_list_cnt;
+	idx = xdev->dvec_start_idx;
+	if (xdev->conf.qdma_drv_mode == DIRECT_INTR_MODE) {
+		spin_lock_irqsave(&xdev->lock, flags);
+		for (i = xdev->dvec_start_idx; i < xdev->num_vecs; i++) {
+			if (xdev->dev_intr_info_list[i].intr_list_cnt < min) {
+				min = xdev->dev_intr_info_list[i].intr_list_cnt;
+				idx = i;
+			}
+
+			if (!min)
+				break;
+		}
+		xdev->dev_intr_info_list[idx].intr_list_cnt++;
+		spin_unlock_irqrestore(&xdev->lock, flags);
+	}
+	descq->intr_id = idx;
+	pr_debug("descq->intr_id = %d allocated to qidx = %d\n",
+		descq->intr_id, descq->conf.qidx);
+}
+
+/*
+ * writeback handling
+ */
+static int descq_mm_n_h2c_cmpl_status(struct qdma_descq *descq)
+{
+	unsigned int cidx, cidx_hw;
+	unsigned int cr;
+
+	pr_debug("descq 0x%p, %s, pidx %u, cidx %u.\n",
+		descq, descq->conf.name, descq->pidx, descq->cidx);
+
+	if (descq->pidx == descq->cidx) { /* queue empty? */
+		pr_debug("descq %s empty, return.\n", descq->conf.name);
+		return 0;
+	}
+
+	cidx = descq->cidx;
+#ifdef __READ_ONCE_DEFINED__
+	cidx_hw = READ_ONCE(((struct qdma_desc_cmpl_status *)
+				descq->desc_cmpl_status)->cidx);
+#else
+	cidx_hw = ((struct qdma_desc_cmpl_status *)
+					descq->desc_cmpl_status)->cidx;
+#endif
+
+	if (cidx_hw == cidx) /* no new writeback? */
+		return 0;
+
+	/* completion credits */
+	cr = (cidx_hw < cidx) ? (descq->conf.rngsz - cidx) + cidx_hw :
+				cidx_hw - cidx;
+
+	pr_debug("descq %s, cidx 0x%x -> 0x%x, avail 0x%x + 0x%x.\n",
+		descq->conf.name, cidx, cidx_hw, descq->avail, cr);
+
+	descq->cidx = cidx_hw;
+	descq->avail += cr;
+	descq->credit += cr;
+
+	incr_cmpl_desc_cnt(descq, cr);
+
+	/* completes requests */
+	pr_debug("%s, 0x%p, credit %u + %u.\n",
+		descq->conf.name, descq, cr, descq->credit);
+
+	cr = descq->credit;
+
+	while (!list_empty(&descq->pend_list)) {
+		struct qdma_sgt_req_cb *cb = list_first_entry(&descq->pend_list,
+						struct qdma_sgt_req_cb, list);
+
+		pr_debug("%s, 0x%p, cb 0x%p, desc_nr %u, credit %u.\n",
+			descq->conf.name, descq, cb, cb->desc_nr, cr);
+
+		if (cr >= cb->desc_nr) {
+			pr_debug("%s, cb 0x%p done, credit %u > %u.\n",
+				descq->conf.name, cb, cr, cb->desc_nr);
+			cr -= cb->desc_nr;
+			qdma_sgt_req_done(descq, cb, 0);
+		} else {
+			pr_debug("%s, cb 0x%p not done, credit %u < %u.\n",
+				descq->conf.name, cb, cr, cb->desc_nr);
+			cb->desc_nr -= cr;
+			cr = 0;
+		}
+
+		if (!cr)
+			break;
+	}
+
+	descq->credit = cr;
+	pr_debug("%s, 0x%p, credit %u.\n",
+		descq->conf.name, descq, descq->credit);
+
+	if (descq->conf.c2h)
+		descq_c2h_pidx_update(descq, descq->pidx);
+	else
+		descq_h2c_pidx_update(descq, descq->pidx);
+
+	/* Request thread may have only setup a fraction of the transfer (e.g.
+	 * there wasn't enough space in desc ring). We now have more space
+	 * available again so we can continue programming the
+	 * dma transfer by resuming the thread here.
+	 */
+
+
+	return 1;
+}
+
+/* ************** public function definitions ******************************* */
+
+void qdma_descq_init(struct qdma_descq *descq, struct xlnx_dma_dev *xdev,
+			int idx_hw, int idx_sw)
+{
+	struct qdma_dev *qdev = xdev_2_qdev(xdev);
+
+	memset(descq, 0, sizeof(struct qdma_descq));
+
+	spin_lock_init(&descq->lock);
+	INIT_LIST_HEAD(&descq->work_list);
+	INIT_LIST_HEAD(&descq->pend_list);
+	qdma_waitq_init(&descq->pend_list_wq);
+	INIT_LIST_HEAD(&descq->intr_list);
+	INIT_LIST_HEAD(&descq->legacy_intr_q_list);
+	INIT_WORK(&descq->work, intr_work);
+	descq->xdev = xdev;
+	descq->channel = 0;
+	descq->qidx_hw = qdev->qbase + idx_hw;
+	descq->conf.qidx = idx_sw;
+}
+
+void qdma_descq_cleanup(struct qdma_descq *descq)
+{
+	lock_descq(descq);
+
+	if (descq->q_state == Q_STATE_ONLINE) {
+		descq->q_state = Q_STATE_ENABLED;
+		qdma_descq_context_clear(descq->xdev, descq->qidx_hw,
+					descq->conf.st, descq->conf.c2h, 0);
+	} else
+		goto end;
+	desc_free_irq(descq);
+
+	qdma_descq_free_resource(descq);
+
+end:
+	unlock_descq(descq);
+}
+
+int qdma_descq_alloc_resource(struct qdma_descq *descq)
+{
+	struct xlnx_dma_dev *xdev = descq->xdev;
+	int rv;
+#ifdef TEST_64B_DESC_BYPASS_FEATURE
+	int i = 0;
+	u8 *desc_bypass;
+	u8 bypass_data[DESC_SZ_64B_BYTES];
+#endif
+	/* descriptor ring */
+	descq->desc = desc_ring_alloc(xdev, descq->conf.rngsz,
+				get_desc_size(descq),
+				get_desc_cmpl_status_size(descq),
+				&descq->desc_bus, &descq->desc_cmpl_status);
+	if (!descq->desc) {
+		pr_info("dev %s, descq %s, sz %u, desc ring OOM.\n",
+			xdev->conf.name, descq->conf.name, descq->conf.rngsz);
+		goto err_out;
+	}
+
+
+	if (descq->conf.st && descq->conf.c2h) {
+		struct qdma_flq *flq = (struct qdma_flq *)descq->flq;
+
+		descq->color = 1;
+		flq->desc = (struct qdma_c2h_desc *)descq->desc;
+		flq->size = descq->conf.rngsz;
+		flq->pg_shift = fls(descq->conf.c2h_bufsz) - 1;
+
+		/* These code changes are to accomodate buf_sz
+		 *  of less than 4096
+		 */
+		if (flq->pg_shift < PAGE_SHIFT) {
+			flq->pg_shift = PAGE_SHIFT;
+			flq->pg_order = 0;
+		} else
+			flq->pg_order = flq->pg_shift - PAGE_SHIFT;
+
+		/* writeback ring */
+		descq->desc_cmpt = desc_ring_alloc(xdev,
+					descq->conf.rngsz_cmpt,
+					descq->cmpt_entry_len,
+					sizeof(struct
+					       qdma_c2h_cmpt_cmpl_status),
+					&descq->desc_cmpt_bus,
+					&descq->desc_cmpt_cmpl_status);
+		if (!descq->desc_cmpt) {
+			pr_warn("dev %s, descq %s, sz %u, cmpt ring OOM.\n",
+				xdev->conf.name, descq->conf.name,
+				descq->conf.rngsz_cmpt);
+			goto err_out;
+		}
+		descq->desc_cmpt_cur = descq->desc_cmpt;
+
+		/* freelist / rx buffers */
+		rv = descq_flq_alloc_resource(descq);
+		if (rv < 0)
+			goto err_out;
+	}
+
+	pr_debug("%s: %u/%u, rng %u,%u, desc 0x%p, cmpl status 0x%p.\n",
+		descq->conf.name, descq->conf.qidx, descq->qidx_hw,
+		descq->conf.rngsz, descq->conf.rngsz_cmpt, descq->desc,
+		descq->desc_cmpt);
+
+	/* interrupt vectors */
+	desc_alloc_irq(descq);
+
+	/* Fill in the descriptors with some hard coded value for testing */
+#ifdef TEST_64B_DESC_BYPASS_FEATURE
+	desc_bypass = descq->desc;
+	if (descq->conf.st && !(descq->conf.c2h)) {
+		if (descq->conf.desc_bypass &&
+				(descq->conf.sw_desc_sz == DESC_SZ_64B)) {
+			for (i = 0; i < descq->conf.rngsz; i++) {
+				memset(bypass_data, i+1, DESC_SZ_64B_BYTES);
+				memcpy(&desc_bypass[i*DESC_SZ_64B_BYTES],
+					bypass_data, DESC_SZ_64B_BYTES);
+			}
+		}
+	}
+#endif
+	return 0;
+
+err_out:
+	qdma_descq_free_resource(descq);
+	return QDMA_ERR_OUT_OF_MEMORY;
+}
+
+void qdma_descq_free_resource(struct qdma_descq *descq)
+{
+	if (!descq)
+		return;
+
+	if (descq->desc) {
+
+		int desc_sz = get_desc_size(descq);
+		int cs_sz = get_desc_cmpl_status_size(descq);
+
+		pr_debug("%s: desc 0x%p, cmpt 0x%p.\n",
+			descq->conf.name, descq->desc, descq->desc_cmpt);
+
+		desc_ring_free(descq->xdev, descq->conf.rngsz, desc_sz, cs_sz,
+				descq->desc, descq->desc_bus);
+
+		descq->desc_cmpl_status = NULL;
+		descq->desc = NULL;
+		descq->desc_bus = 0UL;
+	}
+
+	if (descq->desc_cmpt) {
+		descq_flq_free_resource(descq);
+		desc_ring_free(descq->xdev, descq->conf.rngsz_cmpt,
+			descq->cmpt_entry_len,
+			sizeof(struct qdma_c2h_cmpt_cmpl_status),
+			descq->desc_cmpt, descq->desc_cmpt_bus);
+
+		descq->desc_cmpt_cmpl_status = NULL;
+		descq->desc_cmpt = NULL;
+		descq->desc_cmpt_bus = 0UL;
+	}
+}
+
+void qdma_descq_config(struct qdma_descq *descq, struct qdma_queue_conf *qconf,
+		 int reconfig)
+{
+	if (!reconfig) {
+		int len;
+
+		memcpy(&descq->conf, qconf, sizeof(struct qdma_queue_conf));
+		/* descq->conf.st = qconf->st;
+		 * descq->conf.c2h = qconf->c2h;
+		 */
+
+		/* qdma[vf]<255>-MM/ST-H2C/C2H-Q[2048] */
+#ifdef __QDMA_VF__
+		len = sprintf(descq->conf.name, "qdmavf");
+#else
+		len = sprintf(descq->conf.name, "qdma");
+#endif
+		len += sprintf(descq->conf.name + len, "%05x-%s-%u",
+			descq->xdev->conf.bdf, descq->conf.st ? "ST" : "MM",
+			descq->conf.qidx);
+		descq->conf.name[len] = '\0';
+
+		descq->conf.st = qconf->st;
+		descq->conf.c2h = qconf->c2h;
+
+	} else {
+		descq->conf.desc_rng_sz_idx = qconf->desc_rng_sz_idx;
+		descq->conf.cmpl_rng_sz_idx = qconf->cmpl_rng_sz_idx;
+		descq->conf.c2h_buf_sz_idx = qconf->c2h_buf_sz_idx;
+
+		descq->conf.irq_en = (descq->xdev->conf.qdma_drv_mode !=
+				POLL_MODE) ? 1 : 0;
+		descq->conf.cmpl_status_en = qconf->cmpl_status_en;
+		descq->conf.cmpl_status_acc_en = qconf->cmpl_status_acc_en;
+		descq->conf.cmpl_status_pend_chk = qconf->cmpl_status_pend_chk;
+		descq->conf.cmpl_stat_en = qconf->cmpl_stat_en;
+		descq->conf.cmpl_trig_mode = qconf->cmpl_trig_mode;
+		descq->conf.cmpl_timer_idx = qconf->cmpl_timer_idx;
+		descq->conf.fetch_credit = qconf->fetch_credit;
+		descq->conf.cmpl_cnt_th_idx = qconf->cmpl_cnt_th_idx;
+
+		descq->conf.desc_bypass = qconf->desc_bypass;
+		descq->conf.pfetch_bypass = qconf->pfetch_bypass;
+		descq->conf.pfetch_en = qconf->pfetch_en;
+		descq->conf.cmpl_udd_en = qconf->cmpl_udd_en;
+		descq->conf.cmpl_desc_sz = qconf->cmpl_desc_sz;
+		descq->conf.sw_desc_sz = qconf->sw_desc_sz;
+		descq->conf.pipe_gl_max = qconf->pipe_gl_max;
+		descq->conf.pipe_flow_id = qconf->pipe_flow_id;
+		descq->conf.pipe_slr_id = qconf->pipe_slr_id;
+		descq->conf.pipe_tdest = qconf->pipe_tdest;
+		descq->conf.cmpl_ovf_chk_dis = qconf->cmpl_ovf_chk_dis;
+	}
+}
+
+int qdma_descq_config_complete(struct qdma_descq *descq)
+{
+	struct qdma_csr_info csr_info;
+	struct qdma_queue_conf *qconf = &descq->conf;
+	int rv;
+
+	memset(&csr_info, 0, sizeof(csr_info));
+	csr_info.type = QDMA_CSR_TYPE_RNGSZ;
+	csr_info.idx_rngsz = qconf->desc_rng_sz_idx;
+	csr_info.idx_bufsz = qconf->c2h_buf_sz_idx;
+	csr_info.idx_timer_cnt = qconf->cmpl_timer_idx;
+	csr_info.idx_cnt_th = qconf->cmpl_cnt_th_idx;
+
+	rv = qdma_csr_read(descq->xdev, &csr_info, QDMA_MBOX_MSG_TIMEOUT_MS);
+	if (rv < 0)
+		return rv;
+
+	qconf->rngsz = csr_info.array[qconf->desc_rng_sz_idx] - 1;
+
+	/* <= 2018.2 IP
+	 * make the cmpl ring size bigger if possible to avoid run out of
+	 * cmpl entry while desc. ring still have free entries
+	 */
+	if (qconf->st && qconf->c2h) {
+		int i;
+		unsigned int v = csr_info.array[qconf->cmpl_rng_sz_idx];
+		int best_fit_idx = -1;
+
+		for (i = 0; i < QDMA_GLOBAL_CSR_ARRAY_SZ; i++) {
+			if (csr_info.array[i] > v) {
+				if (best_fit_idx < 0)
+					best_fit_idx = i;
+				else if ((best_fit_idx >= 0) &&
+						(csr_info.array[i] <
+						csr_info.array[best_fit_idx]))
+					best_fit_idx = i;
+			}
+		}
+
+		if (best_fit_idx >= 0)
+			qconf->cmpl_rng_sz_idx = best_fit_idx;
+
+		qconf->rngsz_cmpt = csr_info.array[qconf->cmpl_rng_sz_idx] - 1;
+		qconf->c2h_bufsz = csr_info.bufsz;
+	}
+
+	/* we can never use the full ring because then cidx would equal pidx
+	 * and thus the ring would be interpreted as empty. Thus max number of
+	 * usable entries is ring_size - 1
+	 */
+	descq->avail = descq->conf.rngsz - 1;
+	descq->pend_list_empty = 1;
+
+	descq->pidx = 0;
+	descq->cidx = 0;
+	descq->cidx_cmpt = 0;
+	descq->pidx_cmpt = 0;
+	descq->credit = 0;
+	descq->io_batch_cnt = (descq->conf.st && descq->conf.c2h) ?
+			(1 << descq->conf.cmpl_cnt_th_idx) :
+			(1 << (csr_info.cmpl_status_acc + 3)); /* tuned value */
+	descq->pend_req_desc = 0;
+
+	/* ST C2H only */
+	if (qconf->c2h && qconf->st) {
+		descq->cmpt_entry_len = 8 << qconf->cmpl_desc_sz;
+
+		pr_debug("%s: cmpl sz %u(%d), udd_en %d.\n",
+			descq->conf.name, descq->cmpt_entry_len,
+			descq->conf.cmpl_desc_sz, descq->conf.cmpl_udd_en);
+	}
+
+	if (qconf->fp_descq_isr_top)
+		descq->xdev->conf.isr_top_q_en = 1;
+
+	return 0;
+}
+
+int qdma_descq_prog_hw(struct qdma_descq *descq)
+{
+	int rv = qdma_descq_context_setup(descq);
+
+	if (rv < 0) {
+		pr_warn("%s failed to program contexts", descq->conf.name);
+		return rv;
+	}
+
+	/* update pidx/cidx */
+	if (descq->conf.st && descq->conf.c2h) {
+		if (!descq->xdev->stm_en) {
+			/* For STM enabled device, these updates need to be
+			 * delayed until STM context is setup for the queue
+			 */
+			descq_cmpt_cidx_update(descq, 0);
+			descq_c2h_pidx_update(descq, descq->conf.rngsz - 1);
+		}
+	}
+
+	return rv;
+}
+
+#ifndef __QDMA_VF__
+int qdma_descq_prog_stm(struct qdma_descq *descq, bool clear)
+{
+	int rv;
+
+	if (!descq->conf.st) {
+		pr_err("%s: STM programming called for MM-mode\n",
+		       descq->conf.name);
+		return -EINVAL;
+	}
+
+	if (descq->qidx_hw > STM_MAX_SUPPORTED_QID) {
+		pr_err("%s: QID for STM cannot be > %d\n",
+			descq->conf.name, STM_MAX_SUPPORTED_QID);
+		return -EINVAL;
+	}
+
+	if (descq->xdev->stm_rev != STM_SUPPORTED_REV) {
+		pr_err("%s: No supported STM rev found in hw\n",
+		       descq->conf.name);
+		return -ENODEV;
+	}
+
+	if (!descq->conf.c2h && !descq->conf.desc_bypass) {
+		pr_err("%s: H2C queue needs to be in bypass with STM\n",
+		       descq->conf.name);
+		return -EINVAL;
+	}
+
+	if (clear)
+		rv = qdma_descq_stm_clear(descq);
+	else
+		rv = qdma_descq_stm_setup(descq);
+	if (rv < 0) {
+		pr_warn("%s: failed to program stm", descq->conf.name);
+		return rv;
+	}
+
+	/* update pidx/cidx for C2H */
+	if (descq->conf.c2h) {
+		descq_cmpt_cidx_update(descq, 0);
+		descq_c2h_pidx_update(descq, descq->conf.rngsz - 1);
+	}
+
+	return rv;
+}
+#endif
+
+void qdma_descq_service_cmpl_update(struct qdma_descq *descq, int budget,
+				bool c2h_upd_cmpl)
+{
+	if (descq->conf.st && descq->conf.c2h) {
+		lock_descq(descq);
+		if (descq->q_state == Q_STATE_ONLINE)
+			descq_process_completion_st_c2h(descq, budget,
+							c2h_upd_cmpl);
+		unlock_descq(descq);
+	} else if ((descq->xdev->conf.qdma_drv_mode == POLL_MODE) ||
+			(descq->xdev->conf.qdma_drv_mode == AUTO_MODE)) {
+		if (!descq->proc_req_running)
+			qdma_descq_proc_sgt_request(descq);
+	} else {
+		lock_descq(descq);
+		descq_mm_n_h2c_cmpl_status(descq);
+		if (descq->pend_req_desc) {
+			unlock_descq(descq);
+			qdma_descq_proc_sgt_request(descq);
+			return;
+		}
+		unlock_descq(descq);
+	}
+}
+
+ssize_t qdma_descq_proc_sgt_request(struct qdma_descq *descq)
+{
+	if (!descq->conf.st) /* MM H2C/C2H */
+		return descq_mm_proc_request(descq);
+	else if (descq->conf.st && !descq->conf.c2h) /* ST H2C */
+		return descq_proc_st_h2c_request(descq);
+	else	/* ST C2H - should not happen - handled separately */
+		return -1;
+}
+
+void incr_cmpl_desc_cnt(struct qdma_descq *descq, unsigned int cnt)
+{
+	descq->total_cmpl_descs += cnt;
+	switch ((descq->conf.st << 1) | descq->conf.c2h) {
+	case 0:
+		descq->xdev->total_mm_h2c_pkts += cnt;
+		break;
+	case 1:
+		descq->xdev->total_mm_c2h_pkts += cnt;
+		break;
+	case 2:
+		descq->xdev->total_st_h2c_pkts += cnt;
+		break;
+	case 3:
+		descq->xdev->total_st_c2h_pkts += cnt;
+		break;
+	default:
+		break;
+	}
+}
+
+void qdma_sgt_req_done(struct qdma_descq *descq, struct qdma_sgt_req_cb *cb,
+			int error)
+{
+	struct qdma_request *req = (struct qdma_request *)cb;
+
+	if (error)
+		pr_info("req 0x%p, cb 0x%p, fp_done 0x%p done, err %d.\n",
+			req, cb, req->fp_done, error);
+
+	list_del(&cb->list);
+	if (cb->unmap_needed) {
+		sgl_unmap(descq->xdev->conf.pdev, req->sgl, req->sgcnt,
+			descq->conf.c2h ? DMA_FROM_DEVICE : DMA_TO_DEVICE);
+		cb->unmap_needed = 0;
+	}
+	cb->req_state = QDMA_REQ_COMPLETE;
+	if (req->fp_done) {
+		if ((cb->offset != req->count) &&
+				!(descq->conf.st && descq->conf.c2h)) {
+			pr_info("req 0x%p not completed %u != %u.\n",
+				req, cb->offset, req->count);
+			error = -EINVAL;
+		}
+		cb->status = error;
+		cb->done = 1;
+		req->fp_done(req, cb->offset, error);
+	} else {
+		pr_debug("req 0x%p, cb 0x%p, wake up.\n", req, cb);
+		cb->status = error;
+		cb->done = 1;
+		qdma_waitq_wakeup(&cb->wq);
+	}
+
+	if (descq->conf.st && descq->conf.c2h)
+		descq->pend_list_empty = (descq->avail == 0);
+	else
+		descq->pend_list_empty = (descq->avail ==
+				(descq->conf.rngsz - 1));
+
+	if (descq->q_stop_wait && descq->pend_list_empty)
+		qdma_waitq_wakeup(&descq->pend_list_wq);
+}
+
+int qdma_descq_dump_desc(struct qdma_descq *descq, int start,
+			int end, char *buf, int buflen)
+{
+	struct qdma_flq *flq = (struct qdma_flq *)descq->flq;
+	int desc_sz = get_desc_size(descq);
+	u8 *p = descq->desc + start * desc_sz;
+	struct qdma_sw_sg *fl = (descq->conf.st && descq->conf.c2h) ?
+				flq->sdesc + start : NULL;
+	int i = start;
+	int len = strlen(buf);
+
+	if (!descq->desc)
+		return 0;
+
+	for (; i < end && i < descq->conf.rngsz; i++, p += desc_sz) {
+		len += sprintf(buf + len, "%d: 0x%p ", i, p);
+		hex_dump_to_buffer(p, desc_sz,
+				  (desc_sz < DESC_SZ_16B_BYTES) ? 16 : 32,
+				  4, buf + len, buflen - len, 0);
+		len = strlen(buf);
+		if (desc_sz > DESC_SZ_32B_BYTES) {
+			len += sprintf(buf + len, " ");
+			hex_dump_to_buffer(p + DESC_SZ_32B_BYTES, desc_sz,
+					32, 4, buf + len, buflen - len, 0);
+			len = strlen(buf);
+		}
+		if (fl) {
+			len += sprintf(buf + len, " fl pg 0x%p, 0x%llx.\n",
+				fl->pg, fl->dma_addr);
+			fl++;
+		} else
+			buf[len++] = '\n';
+	}
+
+	p = descq->desc_cmpl_status;
+
+	dma_rmb();
+
+	len += sprintf(buf + len, "CMPL STATUS: 0x%p ", p);
+	hex_dump_to_buffer(p, get_desc_cmpl_status_size(descq), 16, 4,
+			buf + len, buflen - len, 0);
+	len = strlen(buf);
+	buf[len++] = '\n';
+
+	if (descq->conf.st && descq->conf.c2h) {
+		p = page_address(fl->pg);
+		len += sprintf(buf + len, "data 0: 0x%p ", p);
+		hex_dump_to_buffer(p, descq->cmpt_entry_len,
+			(descq->cmpt_entry_len < DESC_SZ_16B_BYTES) ? 16 : 32,
+			4, buf + len,
+			buflen - len, 0);
+		len = strlen(buf);
+		if (descq->cmpt_entry_len > DESC_SZ_32B_BYTES) {
+			len += sprintf(buf + len, " ");
+			hex_dump_to_buffer(p + DESC_SZ_32B_BYTES,
+					descq->cmpt_entry_len, 32, 4,
+					buf + len, buflen - len, 0);
+			len = strlen(buf);
+		}
+		buf[len++] = '\n';
+	}
+
+	return len;
+}
+
+int qdma_descq_dump_cmpt(struct qdma_descq *descq, int start,
+			int end, char *buf, int buflen)
+{
+	uint8_t *cmpt = descq->desc_cmpt;
+	u8 *p;
+	int i = start;
+	int len = strlen(buf);
+	int stride = descq->cmpt_entry_len;
+
+	if (!descq->desc_cmpt)
+		return 0;
+
+	for (cmpt += (start * stride);
+			i < end && i < descq->conf.rngsz_cmpt; i++,
+			cmpt += stride) {
+		mdelay(100);
+		len += sprintf(buf + len, "%d: 0x%p ", i, cmpt);
+		hex_dump_to_buffer(cmpt, descq->cmpt_entry_len,
+				32, 4, buf + len, buflen - len, 0);
+		mdelay(100);
+		len = strlen(buf);
+		if (descq->cmpt_entry_len > DESC_SZ_32B_BYTES) {
+			mdelay(100);
+			len += sprintf(buf + len, " ");
+			hex_dump_to_buffer(cmpt + DESC_SZ_32B_BYTES,
+					   descq->cmpt_entry_len,
+					   32, 4, buf + len, buflen - len, 0);
+			mdelay(100);
+			len = strlen(buf);
+		}
+		mdelay(100);
+		buf[len++] = '\n';
+	}
+
+	len += sprintf(buf + len,
+			"CMPL STATUS: 0x%p ",
+			descq->desc_cmpt_cmpl_status);
+
+	p = descq->desc_cmpt_cmpl_status;
+	dma_rmb();
+	hex_dump_to_buffer(p, sizeof(struct qdma_c2h_cmpt_cmpl_status),
+			16, 4, buf + len, buflen - len, 0);
+	len = strlen(buf);
+	buf[len++] = '\n';
+
+	return len;
+}
+
+int qdma_descq_dump_state(struct qdma_descq *descq, char *buf, int buflen)
+{
+	char *cur = buf;
+	char *const end = buf + buflen;
+
+	if (!buf || !buflen) {
+		pr_warn("incorrect arguments buf=%p buflen=%d", buf, buflen);
+		return 0;
+	}
+
+	cur += snprintf(cur, end - cur, "%s %s ",
+			descq->conf.name, descq->conf.c2h ? "C2H" : "H2C");
+	if (cur >= end)
+		goto handle_truncation;
+
+	if (descq->err)
+		cur += snprintf(cur, end - cur, "ERR\n");
+	else if (descq->q_state == Q_STATE_ONLINE)
+		cur += snprintf(cur, end - cur, "online\n");
+	else if (descq->q_state == Q_STATE_ENABLED)
+		cur += snprintf(cur, end - cur, "cfg'ed\n");
+	else
+		cur += snprintf(cur, end - cur, "un-initialized\n");
+	if (cur >= end)
+		goto handle_truncation;
+
+	return cur - buf;
+
+handle_truncation:
+	*buf = '\0';
+	return cur - buf;
+}
+
+int qdma_descq_dump(struct qdma_descq *descq, char *buf, int buflen, int detail)
+{
+	char *cur = buf;
+	char *const end = buf + buflen;
+
+	if (!buf || !buflen) {
+		pr_info("%s:%s 0x%x/0x%x, desc sz %u/%u, pidx %u, cidx %u\n",
+			descq->conf.name, descq->err ? "ERR" : "",
+			descq->conf.qidx, descq->qidx_hw, descq->conf.rngsz,
+			descq->avail, descq->pidx, descq->cidx);
+		return 0;
+	}
+
+	cur += qdma_descq_dump_state(descq, cur, end - cur);
+	if (cur >= end)
+		goto handle_truncation;
+
+	if (descq->q_state == Q_STATE_DISABLED)
+		return cur - buf;
+
+	cur += snprintf(cur, end - cur,
+		"\thw_ID %d, thp %s, desc 0x%p/0x%llx, %u\n",
+		descq->qidx_hw,
+		descq->cmplthp ? descq->cmplthp->name : "?",
+		descq->desc, descq->desc_bus, descq->conf.rngsz);
+	if (cur >= end)
+		goto handle_truncation;
+
+	if (descq->conf.st && descq->conf.c2h) {
+		cur += snprintf(cur, end - cur,
+			"\tcmpt desc 0x%p/0x%llx, %u\n",
+			descq->desc_cmpt, descq->desc_cmpt_bus,
+			descq->conf.rngsz_cmpt);
+		if (cur >= end)
+			goto handle_truncation;
+	}
+
+	if (!detail)
+		return cur - buf;
+
+	if (descq->desc_cmpl_status) {
+		u8 *cs = descq->desc_cmpl_status;
+
+		cur += snprintf(cur, end - cur, "\n\tcmpl status: 0x%p, ", cs);
+		if (cur >= end)
+			goto handle_truncation;
+
+		dma_rmb();
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 0, 0)
+		cur += hex_dump_to_buffer(cs,
+					  sizeof(struct qdma_desc_cmpl_status),
+					  16, 4, cur, end - cur, 0);
+#else
+		hex_dump_to_buffer(cs, sizeof(struct qdma_desc_cmpl_status),
+					  16, 4, cur, end - cur, 0);
+		cur += strlen(cur);
+#endif
+		if (cur >= end)
+			goto handle_truncation;
+
+		cur += snprintf(cur, end - cur, "\n");
+		if (cur >= end)
+			goto handle_truncation;
+	}
+	if (descq->desc_cmpt_cmpl_status) {
+		u8 *cs = descq->desc_cmpt_cmpl_status;
+
+		cur += snprintf(cur, end - cur, "\tCMPT CMPL STATUS: 0x%p, ",
+				cs);
+		if (cur >= end)
+			goto handle_truncation;
+
+		dma_rmb();
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 0, 0)
+		cur += hex_dump_to_buffer(cs,
+				sizeof(struct qdma_c2h_cmpt_cmpl_status),
+				16, 4, cur, end - cur, 0);
+#else
+		hex_dump_to_buffer(cs, sizeof(struct qdma_c2h_cmpt_cmpl_status),
+					  16, 4, cur, end - cur, 0);
+		cur += strlen(cur);
+#endif
+		if (cur >= end)
+			goto handle_truncation;
+
+		cur += snprintf(cur, end - cur, "\n");
+		if (cur >= end)
+			goto handle_truncation;
+	}
+
+	return cur - buf;
+
+handle_truncation:
+	*buf = '\0';
+	return cur - buf;
+}
+
+int qdma_queue_avail_desc(unsigned long dev_hndl, unsigned long id)
+{
+	struct qdma_descq *descq = qdma_device_get_descq_by_id(
+					(struct xlnx_dma_dev *)dev_hndl,
+					id, NULL, 0, 1);
+	int avail;
+
+	if (!descq)
+		return QDMA_ERR_INVALID_QIDX;
+
+	lock_descq(descq);
+	avail = descq->avail;
+	unlock_descq(descq);
+
+	return avail;
+}
+
+#ifdef ERR_DEBUG
+int qdma_queue_set_err_induction(unsigned long dev_hndl, unsigned long id,
+			u32 err, char *buf, int buflen)
+{
+	struct qdma_descq *descq = qdma_device_get_descq_by_id(
+					(struct xlnx_dma_dev *)dev_hndl,
+					id, buf, buflen, 1);
+	const char *dummy; /* to avoid compiler warnings */
+	unsigned int err_en = (err >> 31);
+	unsigned int err_no = (err & 0x7FFFFFFF);
+
+	dummy = xnl_attr_str[0];
+	dummy = xnl_op_str[0];
+	if (!descq)
+		return QDMA_ERR_INVALID_QIDX;
+	if (err_no < sb_mi_h2c0_dat) {
+		descq->induce_err &= ~(1 << err_no);
+		descq->induce_err |= (err_en << err_no);
+	} else {
+		descq->ecc_err &= ~(1 << (err_no - sb_mi_h2c0_dat));
+		descq->ecc_err |= (err_en << (err_no - sb_mi_h2c0_dat));
+	}
+	pr_info("Errs enabled = [QDMA]: 0x%08x 0x%08x\n [ECC]: 0x%08x 0x%08x",
+		(u32)(descq->induce_err >> 32),
+		(u32)(descq->induce_err & 0xFFFFFFFF),
+		(u32)(descq->ecc_err >> 32),
+		(u32)(descq->ecc_err & 0xFFFFFFFF));
+
+	return 0;
+}
+#endif
+
+int qdma_queue_packet_write(unsigned long dev_hndl, unsigned long id,
+				struct qdma_request *req)
+{
+	struct qdma_descq *descq = qdma_device_get_descq_by_id(
+					(struct xlnx_dma_dev *)dev_hndl,
+					id, NULL, 0, 1);
+	struct qdma_sgt_req_cb *cb = qdma_req_cb_get(req);
+	int rv;
+
+	if (!descq)
+		return QDMA_ERR_INVALID_QIDX;
+
+	if (!descq->conf.st || descq->conf.c2h) {
+		pr_info("%s: st %d, c2h %d.\n",
+			descq->conf.name, descq->conf.st, descq->conf.c2h);
+		return -EINVAL;
+	}
+
+	memset(cb, 0, QDMA_REQ_OPAQUE_SIZE);
+	qdma_waitq_init(&cb->wq);
+
+	if (!req->dma_mapped) {
+		rv = sgl_map(descq->xdev->conf.pdev, req->sgl, req->sgcnt,
+				DMA_TO_DEVICE);
+		if (rv < 0) {
+			pr_info("%s map sgl %u failed, %u.\n",
+				descq->conf.name, req->sgcnt, req->count);
+			goto unmap_sgl;
+		}
+		cb->unmap_needed = 1;
+	}
+
+	lock_descq(descq);
+	if (descq->q_state != Q_STATE_ONLINE) {
+		unlock_descq(descq);
+		pr_info("%s descq %s NOT online.\n",
+			descq->xdev->conf.name, descq->conf.name);
+		rv = -EINVAL;
+		goto unmap_sgl;
+	}
+
+	list_add_tail(&cb->list, &descq->work_list);
+	unlock_descq(descq);
+
+	pr_debug("%s: cb 0x%p submitted.\n", descq->conf.name, cb);
+
+	return req->count;
+
+unmap_sgl:
+	if (cb->unmap_needed)
+		sgl_unmap(descq->xdev->conf.pdev, req->sgl, req->sgcnt,
+			DMA_TO_DEVICE);
+	return rv;
+}
+
+int qdma_descq_get_cmpt_udd(unsigned long dev_hndl, unsigned long id,
+		char *buf, int buflen)
+{
+	uint8_t *cmpt;
+	uint8_t i = 0;
+	int len = 0;
+	int print_len = 0;
+	struct qdma_descq *descq = qdma_device_get_descq_by_id(
+					(struct xlnx_dma_dev *)dev_hndl,
+					id, buf, buflen, 1);
+	struct qdma_c2h_cmpt_cmpl_status *cs;
+
+	if (!descq)
+		return QDMA_ERR_INVALID_QIDX;
+
+	if (!buf || !buflen)
+		return QDMA_ERR_INVALID_INPUT_PARAM;
+
+	cs = (struct qdma_c2h_cmpt_cmpl_status *)
+						descq->desc_cmpt_cmpl_status;
+
+	cmpt = descq->desc_cmpt + ((cs->pidx - 1) * descq->cmpt_entry_len);
+
+	/*
+	 * Ignoring the first 4 bits of the completion entry as they represent
+	 * the error and color bits.
+	 * TODO: May need to change the masking logic and move that in thegtest,
+	 * as error and color bit positions may change in the future releases.
+	 */
+	for (i = 0; i < descq->cmpt_entry_len; i++) {
+		if (buf && buflen) {
+			if (i == 0)
+				print_len = sprintf(buf + len, "%02x",
+						(cmpt[i] & 0xF0));
+			else
+				print_len = sprintf(buf + len, "%02x",
+						    cmpt[i]);
+
+		}
+		buflen -= print_len;
+		len += print_len;
+	}
+	buf[len] = '\0';
+
+	return 0;
+}
diff --git a/QDMA/linux-kernel/libqdma/qdma_descq.h b/QDMA/linux-kernel/libqdma/qdma_descq.h
new file mode 100644
index 0000000..47919ab
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/qdma_descq.h
@@ -0,0 +1,554 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#ifndef __QDMA_DESCQ_H__
+#define __QDMA_DESCQ_H__
+/**
+ * @file
+ * @brief This file contains the declarations for qdma descq processing
+ *
+ */
+#include <linux/spinlock_types.h>
+#include <linux/types.h>
+#include "qdma_compat.h"
+#include "libqdma_export.h"
+#include "qdma_regs.h"
+#ifdef ERR_DEBUG
+#include "qdma_nl.h"
+#endif
+
+enum q_state_t {
+	Q_STATE_DISABLED = 0,	/** Queue is not taken */
+	Q_STATE_ENABLED,		/** Assigned/taken. Partial config is done */
+	Q_STATE_ONLINE,			/** Resource/context is initialized for the
+							* queue and is available for data consumption
+							*/
+};
+
+enum qdma_req_state {
+	QDMA_REQ_NOT_SUBMITTED,
+	QDMA_REQ_SUBMIT_PARTIAL,
+	QDMA_REQ_SUBMITTED,
+	QDMA_REQ_COMPLETE
+};
+
+#define QDMA_FLQ_SIZE 80
+
+/**
+ * @struct - qdma_descq
+ * @brief	qdma software descriptor book keeping fields
+ */
+struct qdma_descq {
+	/** qdma queue configuration */
+	struct qdma_queue_conf conf;
+	/** lock to protect access to software descriptor */
+	spinlock_t lock;
+	/** pointer to dma device */
+	struct xlnx_dma_dev *xdev;
+	/** number of channels */
+	u8 channel;
+	/** flag to indicate error on the Q, in halted state */
+	u8 err:1;
+    /** color bit for the queue */
+	u8 color:1;
+    /** cpu attached */
+	u8 cpu_assigned:1;
+	/** state of the proc req */
+	u8 proc_req_running;
+    /** Indicate q state */
+	enum q_state_t q_state;
+	/** hw qidx associated for this queue */
+	unsigned int qidx_hw;
+	/** cpu attached to intr_work */
+	unsigned int intr_work_cpu;
+	/** queue handler */
+	struct work_struct work;
+	/** interrupt list */
+	struct list_head intr_list;
+	/** leagcy interrupt list */
+	struct list_head legacy_intr_q_list;
+	/** interrupt id associated for this queue */
+	int intr_id;
+	/** work  list for the queue */
+	struct list_head work_list;
+	/** write back therad list */
+	struct qdma_kthread *cmplthp;
+	/** completion status thread list for the queue */
+	struct list_head cmplthp_list;
+	/** pending qork thread list */
+	struct list_head pend_list;
+	/** wait queue for pending list clear */
+	qdma_wait_queue pend_list_wq;
+	/** pending list empty count */
+	unsigned int pend_list_empty;
+	/* flag to indicate wwaiting for transfers to complete before q stop*/
+	unsigned int q_stop_wait;
+	/** availed count */
+	unsigned int avail;
+	/** IO batching cunt */
+	unsigned int io_batch_cnt;
+	/** current req count */
+	unsigned int pend_req_desc;
+	/** current producer index */
+	unsigned int pidx;
+	/** current consumer index */
+	unsigned int cidx;
+	/** number of descrtors yet to be processed*/
+	unsigned int credit;
+	/** desctor to be processed*/
+	u8 *desc;
+	/** desctor dma address*/
+	dma_addr_t desc_bus;
+	/** desctor writeback*/
+	u8 *desc_cmpl_status;
+
+	/* ST C2H */
+	/** programming order of the data in ST c2h mode*/
+	unsigned char fl_pg_order;
+	/** cmpt entry length*/
+	unsigned char cmpt_entry_len;
+	/** 2 bits reserved*/
+	unsigned char rsvd[2];
+	/** qdma free list q*/
+	unsigned char flq[QDMA_FLQ_SIZE];
+	/**total # of udd outstanding */
+	unsigned int udd_cnt;
+	/** packet count/number of packets to be processed*/
+	unsigned int pkt_cnt;
+	/** packet data length */
+	unsigned int pkt_dlen;
+	/** pidx of the completion entry */
+	unsigned int pidx_cmpt;
+	/** completion cidx */
+	unsigned int cidx_cmpt;
+	/** pending writeback cidx */
+	unsigned int cidx_cmpt_pend;
+	/** number of packets processed in q */
+	unsigned long long total_cmpl_descs;
+	/** descriptor writeback, data type depends on the cmpt_entry_len */
+	void *desc_cmpt_cur;
+	/** pointer to completion entry */
+	u8 *desc_cmpt;
+	/** descriptor dma bus address*/
+	dma_addr_t desc_cmpt_bus;
+	/** descriptor writeback dma bus address*/
+	u8 *desc_cmpt_cmpl_status;
+
+#ifdef ERR_DEBUG
+	/** flag to indicate error inducing */
+	u64 induce_err;
+	u64 ecc_err;
+#endif
+#ifdef DEBUGFS
+	/** debugfs queue index root */
+	struct dentry *dbgfs_qidx_root;
+	/** debugfs queue root */
+	struct dentry *dbgfs_queue_root;
+	/** debugfs cmpt queue root */
+	struct dentry *dbgfs_cmpt_queue_root;
+#endif
+};
+#ifdef DEBUG_THREADS
+#define lock_descq(descq)	\
+	do { \
+		pr_debug("locking descq %s ...\n", (descq)->conf.name); \
+		spin_lock_bh(&(descq)->lock); \
+	} while (0)
+
+#define unlock_descq(descq) \
+	do { \
+		pr_debug("unlock descq %s ...\n", (descq)->conf.name); \
+		spin_unlock_bh(&(descq)->lock); \
+	} while (0)
+#else
+/** macro to lock descq */
+#define lock_descq(descq)	spin_lock_bh(&(descq)->lock)
+/** macro to un lock descq */
+#define unlock_descq(descq)	spin_unlock_bh(&(descq)->lock)
+#endif
+
+static inline unsigned int ring_idx_delta(unsigned int new, unsigned int old,
+					unsigned int rngsz)
+{
+	return new >= old ? (new - old) : new + (rngsz - old);
+}
+
+static inline unsigned int ring_idx_incr(unsigned int idx, unsigned int cnt,
+					unsigned int rngsz)
+{
+	idx += cnt;
+	return idx >= rngsz ? idx - rngsz : idx;
+}
+
+static inline unsigned int ring_idx_decr(unsigned int idx, unsigned int cnt,
+					unsigned int rngsz)
+{
+	return idx >= cnt ?  idx - cnt : rngsz - (cnt - idx);
+}
+
+/*****************************************************************************/
+/**
+ * qdma_descq_init() - initialize the sw descq entry
+ *
+ * @param[in]	descq:		pointer to qdma_descq
+ * @param[in]	xdev:		pointer to xdev
+ * @param[in]	idx_hw:		hw queue index
+ * @param[in]	idx_sw:		sw queue index
+ *
+ * @return	none
+ *****************************************************************************/
+void qdma_descq_init(struct qdma_descq *descq, struct xlnx_dma_dev *xdev,
+			int idx_hw, int idx_sw);
+
+/*****************************************************************************/
+/**
+ * qdma_descq_config() - configure the sw descq entry
+ *
+ * @param[in]	descq:		pointer to qdma_descq
+ * @param[in]	qconf:		queue configuration
+ * @param[in]	reconfig:	flag to indicate whether to refig the sw descq
+ *
+ * @return	none
+ *****************************************************************************/
+void qdma_descq_config(struct qdma_descq *descq, struct qdma_queue_conf *qconf,
+		 int reconfig);
+
+/*****************************************************************************/
+/**
+ * qdma_descq_config_complete() - initialize the descq with default values
+ *
+ * @param[in]	descq:		pointer to qdma_descq
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int qdma_descq_config_complete(struct qdma_descq *descq);
+
+/*****************************************************************************/
+/**
+ * qdma_descq_cleanup() - clean up the resources assigned to a request
+ *
+ * @param[in]	descq:		pointer to qdma_descq
+ *
+ * @return	none
+ *****************************************************************************/
+void qdma_descq_cleanup(struct qdma_descq *descq);
+
+/*****************************************************************************/
+/**
+ * qdma_descq_alloc_resource() - allocate the resources for a request
+ *
+ * @param[in]	descq:		pointer to qdma_descq
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int qdma_descq_alloc_resource(struct qdma_descq *descq);
+
+/*****************************************************************************/
+/**
+ * qdma_descq_free_resource() - free up the resources assigned to a request
+ *
+ * @param[in]	descq:		pointer to qdma_descq
+ *
+ * @return	none
+ *****************************************************************************/
+void qdma_descq_free_resource(struct qdma_descq *descq);
+
+/*****************************************************************************/
+/**
+ * qdma_descq_prog_hw() - program the hw descriptors
+ *
+ * @param[in]	descq:		pointer to qdma_descq
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int qdma_descq_prog_hw(struct qdma_descq *descq);
+
+#ifndef __QDMA_VF__
+/*****************************************************************************/
+/**
+ * qdma_descq_prog_stm() - program the STM
+ *
+ * @param[in]	descq:		pointer to qdma_descq
+ * @param[in]   clear:		flag to program/clear stm context
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int qdma_descq_prog_stm(struct qdma_descq *descq, bool clear);
+#endif
+
+/*****************************************************************************/
+/**
+ * qdma_descq_context_cleanup() - clean up the queue context
+ *
+ * @param[in]	descq:		pointer to qdma_descq
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int qdma_descq_context_cleanup(struct qdma_descq *descq);
+
+/*****************************************************************************/
+/**
+ * qdma_descq_service_cmpl_update() - process completion data for the request
+ *
+ * @param[in]	descq:		pointer to qdma_descq
+ * @param[in]	budget:		number of descriptors to process
+ * @param[in]	c2h_upd_cmpl:	C2H only: if update completion needed
+ *
+ * @return	none
+ *****************************************************************************/
+void qdma_descq_service_cmpl_update(struct qdma_descq *descq, int budget,
+			bool c2h_upd_cmpl);
+
+/*****************************************************************************/
+/**
+ * qdma_descq_dump() - dump the queue sw desciptor data
+ *
+ * @param[in]	descq:		pointer to qdma_descq
+ * @param[in]	detail:		indicate whether full details or abstact details
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int qdma_descq_dump(struct qdma_descq *descq,
+					char *buf, int buflen, int detail);
+
+/*****************************************************************************/
+/**
+ * qdma_descq_dump_desc() - dump the queue hw descriptors
+ *
+ * @param[in]	descq:		pointer to qdma_descq
+ * @param[in]	start:		start descriptor index
+ * @param[in]	end:		end descriptor index
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int qdma_descq_dump_desc(struct qdma_descq *descq, int start, int end,
+		char *buf, int buflen);
+
+/*****************************************************************************/
+/**
+ * qdma_descq_dump_state() - dump the queue desciptor state
+ *
+ * @param[in]	descq:		pointer to qdma_descq
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int qdma_descq_dump_state(struct qdma_descq *descq, char *buf, int buflen);
+
+/*****************************************************************************/
+/**
+ * intr_cidx_update() - update the interrupt cidx
+ *
+ * @param[in]	descq:		pointer to qdma_descq
+ * @param[in]	sw_cidx:	sw cidx
+ * @param[in]	ring_index:	ring index
+ *
+ *****************************************************************************/
+void intr_cidx_update(struct qdma_descq *descq, unsigned int sw_cidx,
+		      int ring_index);
+
+/*****************************************************************************/
+/**
+ * incr_cmpl_desc_cnt() - update the interrupt cidx
+ *
+ * @param[in]   descq:      pointer to qdma_descq
+ *
+ *****************************************************************************/
+void incr_cmpl_desc_cnt(struct qdma_descq *descq, unsigned int cnt);
+
+/**
+ * @struct - qdma_sgt_req_cb
+ * @brief	qdma_sgt_req_cb fits in qdma_request.opaque
+ */
+struct qdma_sgt_req_cb {
+	/** qdma read/write request list*/
+	struct list_head list;
+	/** request wait queue */
+	qdma_wait_queue wq;
+	/** number of descriptors to proccess*/
+	unsigned int desc_nr;
+	/** offset in the page*/
+	unsigned int offset;
+	/** number of data byte not yet proccessed*/
+	unsigned int left;
+	/** offset in the scatter gather list*/
+	unsigned int sg_offset;
+	/** scatter gather ebtry index*/
+	unsigned int sg_idx;
+	/** status of the request*/
+	int status;
+	/** indicates whether request processing is done or not*/
+	u8 done;
+	/** indicates whether to unmap the kernel pages*/
+	u8 unmap_needed:1;
+	/* flag to indicate partial req submit */
+	enum qdma_req_state req_state;
+};
+
+/** macro to get the request call back data */
+#define qdma_req_cb_get(req)	(struct qdma_sgt_req_cb *)((req)->opaque)
+
+/*****************************************************************************/
+/**
+ * qdma_descq_proc_sgt_request() - handler to process the qdma
+ *				read/write request
+ *
+ * @param[in]	descq:	pointer to qdma_descq
+ * @param[in]	cb:		scatter gather list call back data
+ *
+ * @return	size of the request
+ *****************************************************************************/
+ssize_t qdma_descq_proc_sgt_request(struct qdma_descq *descq);
+
+/*****************************************************************************/
+/**
+ * qdma_sgt_req_done() - handler to track the progress of the request
+ *
+ * @param[in]	descq:	pointer to qdma_descq
+ * @param[in]	cb:		scatter gather list call back data
+ * @param[out]	error:	indicates the error status
+ *
+ * @return	none
+ *****************************************************************************/
+void qdma_sgt_req_done(struct qdma_descq *descq, struct qdma_sgt_req_cb *cb,
+			int error);
+
+/*****************************************************************************/
+/**
+ * sgl_map() - handler to map the scatter gather list to kernel pages
+ *
+ * @param[in]	pdev:	pointer to struct pci_dev
+ * @param[in]	sg:		scatter gather list
+ * @param[in]	sgcnt:	number of entries in scatter gather list
+ * @param[in]	dir:	direction of the request
+ *
+ * @return	none
+ *****************************************************************************/
+int sgl_map(struct pci_dev *pdev, struct qdma_sw_sg *sg, unsigned int sgcnt,
+		enum dma_data_direction dir);
+
+/*****************************************************************************/
+/**
+ * sgl_unmap() - handler to unmap the scatter gather list and free
+ *				the kernel pages
+ *
+ * @param[in]	pdev:	pointer to struct pci_dev
+ * @param[in]	sg:		scatter gather list
+ * @param[in]	sgcnt:	number of entries in scatter gather list
+ * @param[in]	dir:	direction of the request
+ *
+ * @return	none
+ *****************************************************************************/
+void sgl_unmap(struct pci_dev *pdev, struct qdma_sw_sg *sg, unsigned int sgcnt,
+		enum dma_data_direction dir);
+
+/*****************************************************************************/
+/**
+ * descq_flq_free_resource() - handler to free the pages for the request
+ *
+ * @param[in]	descq:		pointer to qdma_descq
+ *
+ * @return	none
+ *****************************************************************************/
+void descq_flq_free_resource(struct qdma_descq *descq);
+
+/*****************************************************************************/
+/**
+ * descq_h2c_pidx_update() - inline function to update the h2c pidx
+ *
+ * @param[in]	descq:	pointer to qdma_descq
+ * @param[in]	pidx:	c2h producer index
+ *
+ * @return	none
+ *****************************************************************************/
+static inline void descq_h2c_pidx_update(struct qdma_descq *descq,
+					unsigned int pidx)
+{
+#ifdef ERR_DEBUG
+	const char *dummy; /* to avoid compiler warnings */
+
+	dummy = xnl_attr_str[0];
+	dummy = xnl_op_str[0];
+	if (descq->induce_err & (1 << qid_range)) {
+		__write_reg(descq->xdev,
+			QDMA_REG_H2C_PIDX_BASE +
+			descq->xdev->conf.qsets_max * QDMA_REG_PIDX_STEP,
+			pidx | (descq->conf.irq_en <<
+			    S_CMPL_STATUS_PIDX_UPD_EN_INT));
+		pr_info("Inducing err %d", qid_range);
+	} else
+#endif
+	{
+	pr_debug("%s: pidx %u -> 0x%x, reg 0x%x.\n", descq->conf.name, pidx,
+		pidx | (descq->conf.irq_en << S_CMPL_STATUS_PIDX_UPD_EN_INT),
+		QDMA_REG_H2C_PIDX_BASE + descq->conf.qidx * QDMA_REG_PIDX_STEP);
+
+	__write_reg(descq->xdev,
+		QDMA_REG_H2C_PIDX_BASE + descq->conf.qidx * QDMA_REG_PIDX_STEP,
+		pidx | (descq->conf.irq_en << S_CMPL_STATUS_PIDX_UPD_EN_INT));
+	}
+}
+
+/*****************************************************************************/
+/**
+ * descq_c2h_pidx_update() - inline function to update the c2h pidx
+ *
+ * @param[in]	descq:	pointer to qdma_descq
+ * @param[in]	pidx:	c2h producer index
+ *
+ * @return	none
+ *****************************************************************************/
+static inline void descq_c2h_pidx_update(struct qdma_descq *descq,
+					unsigned int pidx)
+{
+#ifdef ERR_DEBUG
+	if (descq->induce_err & (1 << qid_range)) {
+		__write_reg(descq->xdev,
+			QDMA_REG_C2H_PIDX_BASE +
+			descq->xdev->conf.qsets_max * QDMA_REG_PIDX_STEP,
+			pidx | (descq->conf.irq_en <<
+			    S_CMPL_STATUS_PIDX_UPD_EN_INT));
+		pr_info("Inducing err %d", qid_range);
+	} else
+#endif
+	{
+	pr_debug("%s: pidx 0x%x -> 0x%x, reg 0x%x.\n", descq->conf.name, pidx,
+		pidx | (descq->conf.irq_en << S_CMPL_STATUS_PIDX_UPD_EN_INT),
+		QDMA_REG_C2H_PIDX_BASE + descq->conf.qidx * QDMA_REG_PIDX_STEP);
+
+	__write_reg(descq->xdev,
+		QDMA_REG_C2H_PIDX_BASE + descq->conf.qidx * QDMA_REG_PIDX_STEP,
+		pidx | (descq->conf.irq_en << S_CMPL_STATUS_PIDX_UPD_EN_INT));
+	}
+}
+
+#endif /* ifndef __QDMA_DESCQ_H__ */
diff --git a/QDMA/linux-kernel/libqdma/qdma_device.c b/QDMA/linux-kernel/libqdma/qdma_device.c
new file mode 100644
index 0000000..64ea007
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/qdma_device.c
@@ -0,0 +1,584 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#define pr_fmt(fmt)	KBUILD_MODNAME ":%s: " fmt, __func__
+
+#include <linux/module.h>
+#include <linux/gfp.h>
+#include "qdma_device.h"
+#include "qdma_context.h"
+#include "qdma_descq.h"
+#include "qdma_intr.h"
+#include "qdma_regs.h"
+#include "qdma_mbox.h"
+
+#ifdef __QDMA_VF__
+static int device_set_qrange(struct xlnx_dma_dev *xdev)
+{
+	struct qdma_dev *qdev = xdev_2_qdev(xdev);
+	struct mbox_msg *m;
+	struct mbox_msg_hdr *hdr;
+	struct mbox_msg_fmap *fmap;
+	int rv = 0;
+
+	if  (!qdev) {
+		pr_err("dev %s, qdev null.\n",
+			dev_name(&xdev->conf.pdev->dev));
+		return QDMA_ERR_INVALID_QDMA_DEVICE;
+	}
+
+	if (xdev->conf.cur_cfg_state == QMAX_CFG_INITIAL) {
+		qdev->qmax = 1;
+		qdev->qbase = 0;
+	}
+
+	m = qdma_mbox_msg_alloc(xdev, MBOX_OP_FMAP);
+	if (!m)
+		return -ENOMEM;
+
+	hdr = &m->hdr;
+	fmap = &m->fmap;
+
+	fmap->qbase = qdev->qbase;
+	fmap->qmax = qdev->qmax;
+
+	rv = qdma_mbox_msg_send(xdev, m, 1, MBOX_OP_FMAP_RESP,
+				QDMA_MBOX_MSG_TIMEOUT_MS);
+	if (rv < 0) {
+		if (rv != -ENODEV)
+			pr_info("%s set q range (fmap) failed %d.\n",
+				xdev->conf.name, rv);
+		goto err_out;
+	}
+
+	if (hdr->status) {
+		rv = hdr->status;
+		if (xdev->conf.cur_cfg_state == QMAX_CFG_INITIAL) {
+			qdev->qbase = xdev->conf.qsets_base = fmap->qbase;
+			qdev->qmax = xdev->conf.qsets_max = 0;
+		}
+		pr_err("Failed to set qconf %d max/base = %u/%u\n", rv,
+				qdev->qmax, qdev->qbase);
+		goto err_out;
+	}
+
+	qdev->qbase = xdev->conf.qsets_base = fmap->qbase;
+
+	if (xdev->conf.cur_cfg_state == QMAX_CFG_INITIAL) {
+		qdev->h2c_descq->qidx_hw = fmap->qbase;
+		qdev->c2h_descq->qidx_hw = fmap->qbase;
+		xdev->conf.cur_cfg_state = QMAX_CFG_USER;
+	}
+
+	pr_debug("%s, func id %u/%u, Q 0x%x + 0x%x.\n",
+		xdev->conf.name, xdev->func_id, xdev->func_id_parent,
+		qdev->qbase, qdev->qmax);
+
+	qdev->init_qrange = 1;
+
+err_out:
+	qdma_mbox_msg_free(m);
+	return rv;
+}
+
+int device_set_qconf(struct xlnx_dma_dev *xdev, int qmax, u32 *qbase)
+{
+	struct mbox_msg *m;
+	struct mbox_msg_hdr *hdr;
+	struct mbox_msg_fmap *fmap;
+	int rv = 0;
+
+	m = qdma_mbox_msg_alloc(xdev, MBOX_OP_QCONF);
+	if (!m)
+		return -ENOMEM;
+
+	hdr = &m->hdr;
+	fmap = &m->fmap;
+
+	fmap->qbase = 0;
+	fmap->qmax = qmax;
+
+	rv = qdma_mbox_msg_send(xdev, m, 1, MBOX_OP_QCONF_RESP,
+				QDMA_MBOX_MSG_TIMEOUT_MS);
+	if (rv < 0) {
+		pr_info("%s set q range (qconf) failed %d.\n",
+			xdev->conf.name, rv);
+		goto err_out;
+	}
+
+	if (hdr->status) {
+		rv = hdr->status;
+		pr_err("Failed to set qconf\n");
+		goto err_out;
+	}
+
+	*qbase = fmap->qbase;
+
+	qdma_device_set_cfg_state((unsigned long)xdev, QMAX_CFG_USER);
+	pr_debug("%s, func id %u/%u, Q 0x%x + 0x%x.\n",
+			xdev->conf.name, xdev->func_id, xdev->func_id_parent,
+		*qbase, qmax);
+
+err_out:
+	qdma_mbox_msg_free(m);
+	return rv;
+}
+#else
+static int device_set_qrange(struct xlnx_dma_dev *xdev)
+{
+	struct qdma_dev *qdev = xdev_2_qdev(xdev);
+	int rv = 0;
+
+	if  (!qdev) {
+		pr_err("dev %s, qdev null.\n",
+			dev_name(&xdev->conf.pdev->dev));
+		return QDMA_ERR_INVALID_QDMA_DEVICE;
+	}
+
+	hw_set_fmap(xdev, xdev->func_id, qdev->qbase, qdev->qmax);
+
+	qdev->init_qrange = 1;
+
+	pr_debug("%s, func id %u, Q 0x%x + 0x%x.\n",
+		xdev->conf.name, xdev->func_id, qdev->qbase, qdev->qmax);
+
+	return rv;
+}
+#endif /* ifndef __QDMA_VF__ */
+
+#ifndef __QDMA_VF__
+#ifdef ERR_DEBUG
+static void qdma_err_mon(struct work_struct *work)
+{
+	struct delayed_work *dwork = container_of(work,
+						struct delayed_work, work);
+	struct xlnx_dma_dev *xdev = container_of(dwork,
+					struct xlnx_dma_dev, err_mon);
+
+	if (!xdev) {
+		pr_err("Invalid xdev");
+		return;
+	}
+	spin_lock(&xdev->err_lock);
+
+	if (xdev->err_mon_cancel == 0) {
+		err_stat_handler(xdev);
+		schedule_delayed_work(dwork, msecs_to_jiffies(50)); /* 50msec */
+	}
+	spin_unlock(&xdev->err_lock);
+}
+#endif
+#endif
+
+int qdma_device_prep_q_resource(struct xlnx_dma_dev *xdev)
+{
+	struct qdma_dev *qdev = xdev_2_qdev(xdev);
+	int rv = 0;
+
+	spin_lock(&qdev->lock);
+
+	if (qdev->init_qrange)
+		goto done;
+
+	rv = device_set_qrange(xdev);
+	if (rv < 0)
+		goto done;
+
+	rv = intr_ring_setup(xdev);
+	if (rv)
+		goto done;
+
+	if ((xdev->conf.qdma_drv_mode == INDIRECT_INTR_MODE) ||
+			(xdev->conf.qdma_drv_mode == AUTO_MODE)) {
+		if (xdev->intr_coal_list != NULL) {
+			rv = qdma_intr_context_setup(xdev);
+			if (rv)
+				goto done;
+		} else {
+			pr_info("dev %s intr vec[%d] >= queues[%d], No aggregation\n",
+				dev_name(&xdev->conf.pdev->dev),
+				(xdev->num_vecs - xdev->dvec_start_idx),
+				xdev->conf.qsets_max);
+			pr_warn("Changing the system mode to direct interrupt mode");
+			xdev->conf.qdma_drv_mode = DIRECT_INTR_MODE;
+		}
+	}
+
+
+#ifndef __QDMA_VF__
+	if (((xdev->conf.qdma_drv_mode != POLL_MODE) &&
+			(xdev->conf.qdma_drv_mode != LEGACY_INTR_MODE)) &&
+			xdev->conf.master_pf)
+		qdma_err_intr_setup(xdev, 0);
+
+#ifdef ERR_DEBUG
+	else {
+		if ((xdev->conf.master_pf) &&
+				(xdev->conf.qdma_drv_mode == POLL_MODE)) {
+			spin_lock_init(&xdev->err_lock);
+			xdev->err_mon_cancel = 0;
+			INIT_DELAYED_WORK(&xdev->err_mon, qdma_err_mon);
+			schedule_delayed_work(&xdev->err_mon,
+					      msecs_to_jiffies(50));
+		}
+	}
+#endif
+#endif
+
+done:
+	spin_unlock(&qdev->lock);
+
+	return rv;
+}
+
+int qdma_device_init(struct xlnx_dma_dev *xdev)
+{
+	int i;
+	int rv = 0;
+	int qmax = xdev->conf.qsets_max;
+	struct qdma_descq *descq;
+	struct qdma_dev *qdev;
+
+#ifdef __QDMA_VF__
+	xdev->func_id = xdev->func_id_parent = 0; /* filled later */
+#else
+	if (xdev->conf.master_pf) {
+		pr_info("%s master PF clearing memory.\n", xdev->conf.name);
+		rv = hw_init_global_context_memory(xdev);
+		if (rv)
+			return rv;
+	}
+#endif
+
+	if (xdev->conf.qdma_drv_mode != POLL_MODE &&
+			xdev->conf.qdma_drv_mode != LEGACY_INTR_MODE) {
+		rv = intr_setup(xdev);
+		if (rv)
+			return -EINVAL;
+	}
+	qdev = kzalloc(sizeof(struct qdma_dev) +
+			sizeof(struct qdma_descq) * qmax * 2, GFP_KERNEL);
+	if (!qdev) {
+		pr_err("dev %s qmax %d OOM.\n",
+			dev_name(&xdev->conf.pdev->dev), qmax);
+		intr_teardown(xdev);
+		return -ENOMEM;
+	}
+
+	spin_lock_init(&qdev->lock);
+
+	descq = (struct qdma_descq *)(qdev + 1);
+	qdev->h2c_descq = descq;
+	qdev->c2h_descq = descq + qmax;
+
+	xdev->dev_priv = (void *)qdev;
+	qdev->qmax = qmax;
+	qdev->init_qrange = 0;
+
+#ifdef __QDMA_VF__
+	if (xdev->conf.cur_cfg_state == QMAX_CFG_UNCONFIGURED) {
+		qdev->qbase = TOTAL_QDMA_QS - TOTAL_VF_QS
+			+ (xdev->conf.idx - 1) * QDMA_Q_PER_VF_MAX;
+	} else
+		qdev->qbase = xdev->conf.qsets_base;
+#else
+	/*
+	 * for the first device make qbase as 0 indicated by <0 value
+	 * for others initial configuration, go for QDMA_Q_PER_PF_MAX
+	 * for qbase
+	 * if modified using sysfs/qmax, take it from calculated qbase
+	 */
+	if (xdev->conf.cur_cfg_state == QMAX_CFG_UNCONFIGURED) {
+		qdev->qbase = (xdev->conf.idx - 1) * MAX_QS_PER_PF;
+		xdev->conf.cur_cfg_state = QMAX_CFG_INITIAL;
+	} else
+		qdev->qbase = xdev->conf.qsets_base;
+#endif
+	xdev->conf.qsets_base = qdev->qbase;
+
+	for (i = 0, descq = qdev->h2c_descq; i < qdev->qmax; i++, descq++)
+		qdma_descq_init(descq, xdev, i, i);
+	for (i = 0, descq = qdev->c2h_descq; i < qdev->qmax; i++, descq++)
+		qdma_descq_init(descq, xdev, i, i);
+#ifndef __QDMA_VF__
+	if (xdev->conf.master_pf) {
+		pr_info("%s master PF.\n", xdev->conf.name);
+		hw_set_global_csr(xdev);
+		qdma_trq_c2h_config(xdev);
+		for (i = 0; i < xdev->mm_channel_max; i++) {
+			hw_mm_channel_enable(xdev, i, 1);
+			hw_mm_channel_enable(xdev, i, 0);
+		}
+	}
+#endif
+	/** STM specific init */
+	xdev->pipe_stm_max_pkt_size = STM_MAX_PKT_SIZE;
+
+	return 0;
+}
+
+void qdma_device_cleanup(struct xlnx_dma_dev *xdev)
+{
+	int i;
+	struct qdma_dev *qdev = xdev_2_qdev(xdev);
+	struct qdma_descq *descq;
+
+	if  (!qdev) {
+		pr_info("dev %s, qdev null.\n",
+			dev_name(&xdev->conf.pdev->dev));
+		return;
+	}
+
+#ifndef __QDMA_VF__
+#ifdef ERR_DEBUG
+	if ((xdev->conf.master_pf) &&
+		(xdev->conf.qdma_drv_mode == POLL_MODE)) {
+		pr_info("Cancelling delayed work");
+		spin_lock(&xdev->err_lock);
+		xdev->err_mon_cancel = 1;
+		cancel_delayed_work_sync(&xdev->err_mon);
+		spin_unlock(&xdev->err_lock);
+	}
+#endif
+#endif
+
+	for (i = 0, descq = qdev->h2c_descq; i < qdev->qmax; i++, descq++) {
+		if (descq->q_state == Q_STATE_ONLINE)
+			qdma_queue_stop((unsigned long int)xdev, i, NULL, 0);
+	}
+
+	for (i = 0, descq = qdev->c2h_descq; i < qdev->qmax; i++, descq++) {
+		if (descq->q_state == Q_STATE_ONLINE)
+			qdma_queue_stop((unsigned long int)xdev,
+					i + qdev->qmax, NULL, 0);
+	}
+
+	intr_teardown(xdev);
+
+	if ((xdev->conf.qdma_drv_mode == INDIRECT_INTR_MODE) ||
+			(xdev->conf.qdma_drv_mode == AUTO_MODE)) {
+		pr_info("dev %s teardown interrupt coalescing ring\n",
+					dev_name(&xdev->conf.pdev->dev));
+		intr_ring_teardown(xdev);
+	}
+
+#ifndef __QDMA_VF__
+	if (xdev->func_id == 0) {
+		for (i = 0; i < xdev->mm_channel_max; i++) {
+			hw_mm_channel_disable(xdev, i, DMA_TO_DEVICE);
+			hw_mm_channel_disable(xdev, i, DMA_FROM_DEVICE);
+		}
+	}
+#endif
+
+	for (i = 0, descq = qdev->h2c_descq; i < qdev->qmax; i++, descq++) {
+		if (descq->q_state == Q_STATE_ENABLED)
+			qdma_queue_remove((unsigned long int)xdev, i, NULL, 0);
+	}
+
+	for (i = 0, descq = qdev->c2h_descq; i < qdev->qmax; i++, descq++) {
+		if (descq->q_state == Q_STATE_ENABLED)
+			qdma_queue_remove((unsigned long int)xdev,
+					  i + qdev->qmax, NULL, 0);
+	}
+
+	xdev->dev_priv = NULL;
+	kfree(qdev);
+}
+
+long qdma_device_get_id_from_descq(struct xlnx_dma_dev *xdev,
+				   struct qdma_descq *descq)
+{
+	struct qdma_dev *qdev;
+	unsigned long idx;
+	unsigned long idx_max;
+	struct qdma_descq *_descq;
+
+	if (!xdev) {
+		pr_info("xdev NULL.\n");
+		return -EINVAL;
+	}
+
+	qdev = xdev_2_qdev(xdev);
+
+	if  (!qdev) {
+		pr_err("dev %s, qdev null.\n",
+			dev_name(&xdev->conf.pdev->dev));
+		return -EINVAL;
+	}
+	_descq = descq->conf.c2h ? qdev->c2h_descq : qdev->h2c_descq;
+	idx = descq->conf.c2h ? qdev->qmax : 0;
+
+	idx_max = (idx + qdev->qmax);
+	for ( ; idx < idx_max; idx++, _descq++)
+		if (_descq == descq)
+			return idx;
+
+	return -EINVAL;
+
+}
+
+struct qdma_descq *qdma_device_get_descq_by_id(struct xlnx_dma_dev *xdev,
+			unsigned long idx, char *buf, int buflen, int init)
+{
+	struct qdma_dev *qdev;
+	struct qdma_descq *descq;
+
+	if (!xdev) {
+		pr_info("xdev NULL.\n");
+		return NULL;
+	}
+
+	qdev = xdev_2_qdev(xdev);
+
+	if  (!qdev) {
+		pr_err("dev %s, qdev null.\n",
+			dev_name(&xdev->conf.pdev->dev));
+		return NULL;
+	}
+
+	if (idx >= qdev->qmax) {
+		idx -= qdev->qmax;
+		if (idx >= qdev->qmax) {
+			pr_info("%s, q idx too big 0x%lx > 0x%x.\n",
+				xdev->conf.name, idx, qdev->qmax);
+			if (buf && buflen)  {
+				int len = snprintf(buf, buflen,
+					"%s, q idx too big 0x%lx > 0x%x.\n",
+					xdev->conf.name, idx, qdev->qmax);
+				buf[len] = '\0';
+				buflen -= (len + 1);
+			}
+			return NULL;
+		}
+		descq = qdev->c2h_descq + idx;
+	} else {
+		descq = qdev->h2c_descq + idx;
+	}
+
+	if (init) {
+		lock_descq(descq);
+		if (descq->q_state == Q_STATE_DISABLED) {
+			pr_info("%s, idx 0x%lx, q 0x%p state invalid.\n",
+				xdev->conf.name, idx, descq);
+			if (buf && buflen) {
+				int len = snprintf(buf, buflen,
+				"%s, idx 0x%lx, q 0x%p state invalid.\n",
+					xdev->conf.name, idx, descq);
+				buf[len] = '\0';
+				buflen -= (len + 1);
+			}
+			unlock_descq(descq);
+			return NULL;
+		}
+		unlock_descq(descq);
+	}
+
+	return descq;
+}
+
+#ifdef DEBUGFS
+struct qdma_descq *qdma_device_get_pair_descq_by_id(struct xlnx_dma_dev *xdev,
+			unsigned long idx, char *buf, int buflen, int init)
+{
+	struct qdma_dev *qdev;
+	struct qdma_descq *pair_descq;
+
+	if (!xdev) {
+		pr_info("xdev NULL.\n");
+		return NULL;
+	}
+
+	qdev = xdev_2_qdev(xdev);
+
+	if  (!qdev) {
+		pr_err("dev %s, qdev null.\n",
+			dev_name(&xdev->conf.pdev->dev));
+		return NULL;
+	}
+
+	if (idx >= qdev->qmax) {
+		idx -= qdev->qmax;
+		if (idx >= qdev->qmax) {
+			pr_debug("%s, q idx too big 0x%lx > 0x%x.\n",
+				xdev->conf.name, idx, qdev->qmax);
+			if (buf && buflen)  {
+				int len = snprintf(buf, buflen,
+					"%s, q idx too big 0x%lx > 0x%x.\n",
+					xdev->conf.name, idx, qdev->qmax);
+				buf[len] = '\0';
+				buflen -= len + 1;
+			}
+			return NULL;
+		}
+		pair_descq = qdev->h2c_descq + idx;
+	} else {
+		pair_descq = qdev->c2h_descq + idx;
+	}
+
+	if (init) {
+		lock_descq(pair_descq);
+		if (pair_descq->q_state == Q_STATE_DISABLED) {
+			pr_debug("%s, idx 0x%lx, q 0x%p state invalid.\n",
+				xdev->conf.name, idx, pair_descq);
+			if (buf && buflen) {
+				int len = snprintf(buf, buflen,
+				"%s, idx 0x%lx, q 0x%p state invalid.\n",
+					xdev->conf.name, idx, pair_descq);
+				buf[len] = '\0';
+				buflen -= len + 1;
+			}
+			unlock_descq(pair_descq);
+			return NULL;
+		}
+		unlock_descq(pair_descq);
+	}
+
+	return pair_descq;
+}
+#endif
+
+struct qdma_descq *qdma_device_get_descq_by_hw_qid(struct xlnx_dma_dev *xdev,
+			unsigned long qidx_hw, u8 c2h)
+{
+	struct qdma_dev *qdev;
+	struct qdma_descq *descq;
+	unsigned long qidx_sw = 0;
+
+	if (!xdev) {
+		pr_info("xdev NULL.\n");
+		return NULL;
+	}
+
+	qdev = xdev_2_qdev(xdev);
+
+	if  (!qdev) {
+		pr_err("dev %s, qdev null.\n",
+			dev_name(&xdev->conf.pdev->dev));
+		return NULL;
+	}
+
+	qidx_sw = qidx_hw - qdev->qbase;
+	if (c2h)
+		descq = &qdev->c2h_descq[qidx_sw];
+	else
+		descq = &qdev->h2c_descq[qidx_sw];
+
+	return descq;
+}
diff --git a/QDMA/linux-kernel/libqdma/qdma_device.h b/QDMA/linux-kernel/libqdma/qdma_device.h
new file mode 100644
index 0000000..fdc32c5
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/qdma_device.h
@@ -0,0 +1,276 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#ifndef LIBQDMA_QDMA_DEVICE_H_
+#define LIBQDMA_QDMA_DEVICE_H_
+/**
+ * @file
+ * @brief This file contains the declarations for QDMA device
+ *
+ */
+#include <linux/spinlock_types.h>
+#include "libqdma_export.h"
+
+/**
+ * forward declaration for qdma descriptor
+ */
+struct qdma_descq;
+/**
+ * forward declaration for xlnx_dma_dev
+ */
+struct xlnx_dma_dev;
+
+/**
+ * @struct - qdma_dev
+ * @brief	qdma device per function
+ */
+struct qdma_dev {
+	/** flag indicates whether the fmap programming is completed or not */
+	u8 init_qrange:1;
+	/** filler */
+	u8 filler[3];
+	/** max number of queues per function */
+	unsigned short qmax;
+	/** queue start number for this function */
+	unsigned short qbase;
+	/** qdma_dev lock */
+	spinlock_t lock;
+	/** number of h2c queues for this function */
+	unsigned short h2c_qcnt;
+	/** number of c2h queues for this function */
+	unsigned short c2h_qcnt;
+	/** h2c descq list */
+	struct qdma_descq *h2c_descq;
+	/** c2h descq list */
+	struct qdma_descq *c2h_descq;
+};
+
+/**
+ * macro to convert the given xdev to qdev
+ */
+#define xdev_2_qdev(xdev)	(struct qdma_dev *)((xdev)->dev_priv)
+
+/*****************************************************************************/
+/**
+ * qdma_device_init() - initializes the qdma device
+ *
+ * @param[in]	xdev:		pointer to xdev
+ *
+ * @return	0: success
+ * @return	-1: failure
+ *****************************************************************************/
+int qdma_device_init(struct xlnx_dma_dev *xdev);
+
+/*****************************************************************************/
+/**
+ * qdma_device_cleanup() - clean up the qdma device
+ *
+ * @param[in]	xdev:		pointer to xdev
+ *
+ * @return	none
+ *****************************************************************************/
+void qdma_device_cleanup(struct xlnx_dma_dev *xdev);
+
+/*****************************************************************************/
+/**
+ * qdma_device_get_descq_by_id() - get the qhndl for descq
+ *
+ * @param[in]	xdev:	pointer to xdev
+ * @param[in]	descq:	pointer to the descq
+ *
+ * @return	qhndl for descq on success
+ * @return	<0 on failure
+ *****************************************************************************/
+long qdma_device_get_id_from_descq(struct xlnx_dma_dev *xdev,
+				   struct qdma_descq *descq);
+/*****************************************************************************/
+/**
+ * qdma_device_get_descq_by_id() - get the descq using the qid
+ *
+ * @param[in]	xdev:	pointer to xdev
+ * @param[in]	idx:	sw qidx
+ * @param[in]	init:	indicates whether to initialize the device or not
+ * @param[in]	buflen:	length of the input buffer
+ * @param[out]	buf:	message buffer
+ *
+ * @return	pointer to descq on success
+ * @return	NULL on failure
+ *****************************************************************************/
+struct qdma_descq *qdma_device_get_descq_by_id(struct xlnx_dma_dev *xdev,
+			unsigned long idx, char *buf, int buflen, int init);
+
+#ifdef DEBUGFS
+/*****************************************************************************/
+/**
+ * qdma_device_get_pair_descq_by_id() - get the descq using the qid
+ *
+ * @param[in]	xdev:	pointer to xdev
+ * @param[in]	idx:	sw qidx
+ * @param[in]	init:	indicates whether to initialize the device or not
+ * @param[in]	buflen:	length of the input buffer
+ * @param[out]	buf:	message buffer
+ *
+ * @return	pointer to descq on success
+ * @return	NULL on failure
+ *****************************************************************************/
+struct qdma_descq *qdma_device_get_pair_descq_by_id(struct xlnx_dma_dev *xdev,
+			unsigned long idx, char *buf, int buflen, int init);
+#endif
+
+/*****************************************************************************/
+/**
+ * qdma_device_get_descq_by_hw_qid() - get the descq using the hw qid
+ *
+ * @param[in]	xdev:		pointer to xdev
+ * @param[in]	qidx_hw:	hw qidx
+ * @param[in]	c2h:		indicates whether hw qidx belongs to c2h or h2c
+ *
+ * @return	pointer to descq on success
+ * @return	NULL on failure
+ *****************************************************************************/
+struct qdma_descq *qdma_device_get_descq_by_hw_qid(struct xlnx_dma_dev *xdev,
+			unsigned long qidx_hw, u8 c2h);
+
+/*****************************************************************************/
+/**
+ * qdma_device_prep_q_resource() - Prepare queue resources
+ *
+ * @param[in]	xdev:		pointer to xdev
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int qdma_device_prep_q_resource(struct xlnx_dma_dev *xdev);
+
+#ifndef __QDMA_VF__
+/*****************************************************************************/
+/**
+ * qdma_csr_read_cmpl_status_acc() - Read the completion status
+ * accumulation value
+ *
+ * @param[in]	xdev:		pointer to xdev
+ * @param[out]	cs_acc:		cs_acc value
+ *
+ * @return	none
+ *****************************************************************************/
+void qdma_csr_read_cmpl_status_acc(struct xlnx_dma_dev *xdev,
+		unsigned int *cs_acc);
+
+/*****************************************************************************/
+/**
+ * qdma_csr_read_rngsz() - Read the queue ring size
+ *
+ * @param[in]	xdev:		pointer to xdev
+ * @param[out]	rngsz:		queue ring size
+ *
+ * @return	none
+ *****************************************************************************/
+void qdma_csr_read_rngsz(struct xlnx_dma_dev *xdev, unsigned int *rngsz);
+
+/*****************************************************************************/
+/**
+ * qdma_csr_read_bufsz() - Read the buffer size
+ *
+ * @param[in]	xdev:		pointer to xdev
+ * @param[out]	bufsz:		buffer size
+ *
+ * @return	none
+ *****************************************************************************/
+void qdma_csr_read_bufsz(struct xlnx_dma_dev *xdev, unsigned int *bufsz);
+
+/*****************************************************************************/
+/**
+ * qdma_csr_read_timer_cnt() - Read the timer count
+ *
+ * @param[in]	xdev:		pointer to xdev
+ * @param[out]	cnt:		timer count
+ *
+ * @return	none
+ *****************************************************************************/
+void qdma_csr_read_timer_cnt(struct xlnx_dma_dev *xdev, unsigned int *cnt);
+
+/*****************************************************************************/
+/**
+ * qdma_csr_read_timer_cnt() - Read the timer threshold
+ *
+ * @param[in]	xdev:		pointer to xdev
+ * @param[out]	th:			timer threshold
+ *
+ * @return	none
+ *****************************************************************************/
+void qdma_csr_read_cnt_thresh(struct xlnx_dma_dev *xdev, unsigned int *th);
+#else
+/*****************************************************************************/
+/**
+ * device_set_qconf() - set device conf
+ *
+ * @param[in]	xdev:		pointer to xdev
+ * @param[in]	qmax:		maximum request qsize for VF instance
+ *
+ * @return  0: success
+ * @return  < 0: failure
+ *****************************************************************************/
+int device_set_qconf(struct xlnx_dma_dev *xdev, int qmax, u32 *qbase);
+
+#endif
+
+
+enum csr_type {
+	QDMA_CSR_TYPE_NONE,
+	QDMA_CSR_TYPE_RNGSZ,	/** all global csr ring size settings */
+	QDMA_CSR_TYPE_BUFSZ,	/** all global csr buffer size settings */
+	QDMA_CSR_TYPE_TIMER_CNT, /** all global csr timer count settings */
+	QDMA_CSR_TYPE_CNT_TH,	/** all global csr counter thresh settings */
+
+	QDMA_CSR_TYPE_MAX
+};
+
+/**
+ * @struct - descq_csr_info
+ * @brief	qdma Q csr register settings
+ */
+struct qdma_csr_info {
+	enum csr_type type;	/** one csr register array */
+	u32 array[QDMA_GLOBAL_CSR_ARRAY_SZ];
+	u8 idx_rngsz;		/** 1x index-value pair for each type */
+	u8 idx_bufsz;
+	u8 idx_timer_cnt;
+	u8 idx_cnt_th;
+	u32 rngsz;
+	u32 bufsz;
+	u32 timer_cnt;
+	u32 cnt_th;
+	u32 cmpl_status_acc;
+};
+
+/*****************************************************************************/
+/**
+ * qdma_csr_read() - Read specific global csr registers
+ *
+ * @param[in]   xdev:           pointer to xdev
+ * @param[in]   csr:            csr type & index
+ * @param[out]  csr:            csr value
+ *
+ * @return      0: success
+ * @return      <0: failure
+ *****************************************************************************/
+int qdma_csr_read(struct xlnx_dma_dev *xdev, struct qdma_csr_info *csr_info,
+		unsigned int timeout_ms);
+
+#endif /* LIBQDMA_QDMA_DEVICE_H_ */
diff --git a/QDMA/linux-kernel/libqdma/qdma_intr.c b/QDMA/linux-kernel/libqdma/qdma_intr.c
new file mode 100644
index 0000000..55db5eb
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/qdma_intr.c
@@ -0,0 +1,1007 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#define pr_fmt(fmt)	KBUILD_MODNAME ":%s: " fmt, __func__
+
+#include "qdma_intr.h"
+
+#include <linux/kernel.h>
+#include "qdma_descq.h"
+#include "qdma_device.h"
+#include "qdma_regs.h"
+#include "thread.h"
+#include "version.h"
+#include "qdma_regs.h"
+
+struct qdma_err_info {
+	u32 intr_mask;
+	char **stat;
+};
+
+struct qdma_err_stat_info {
+	char *err_name;
+	u32 stat_reg_addr;
+	u32 mask_reg_addr;
+	struct qdma_err_info err_info;
+};
+
+/** List shall be from Bit 0 - Bit31 */
+char *glbl_err_info[] = {
+	"err_ram_sbe",
+	"err_ram_dbe",
+	"err_dsc",
+	"err_trq",
+	"err_h2c_mm_0",
+	"err_h2c_mm_1",
+	"err_c2h_mm_0",
+	"err_c2h_mm_1",
+	"err_c2h_st",
+	"ind_ctxt_cmd_err",
+	"err_bdg",
+	"err_h2c_st"
+};
+
+char *dsc_err_info[] = {
+	"poison",
+	"ur_ca",
+	"param",
+	"addr",
+	"tag",
+	"flr",
+	"timeout",
+	"dat_poison",
+	"flr_cancel",
+	"dma",
+	"dsc",
+	"rq_cancel",
+	"dbe",
+	"sbe"
+};
+
+char *trq_err_info[] = {
+	"unmapped",
+	"qid_range",
+	"vf_access_err",
+	"tcp_timeout"
+};
+
+char *c2h_err_info[] = {
+	"mty_mismatch",
+	"len_mismatch",
+	"qid_mismatch",
+	"desc_rsp_err",
+	"eng_wpl_data_par_err",
+	"msi_int_fail",
+	"err_desc_cnt",
+	"portid_ctxt_mismatch",
+	"portid_byp_in_mismatch",
+	"cmpt_inv_q_err",
+	"cmpt_qfull_err",
+	"cmpt_cidx_err",
+	"cmpt_prty_err"
+};
+
+char *c2h_fatal_err_info[] = {
+	"mty_mismatch",
+	"len_mismatch",
+	"qid_mismatch",
+	"timer_fifo_ram_rdbe",
+	"eng_wpl_data_par_err",
+	"pfch_II_ram_rdbe",
+	"cmpt_ctxt_ram_rdbe",
+	"pfch_ctxt_ram_rdbe",
+	"desc_req_fifo_ram_rdbe",
+	"int_ctxt_ram_rdbe",
+	"cmpt_coal_data_ram_rdbe",
+	"tuser_fifo_ram_rdbe",
+	"qid_fifo_ram_rdbe",
+	"payload_fifo_ram_rdbe",
+	"wpl_data_par_err"
+};
+
+char *h2c_err_info[] = {
+	"zero_len_desc_err",
+	"sdi_mrkr_req_mop_err",
+	"no_dma_dsc_err",
+};
+
+/** ECC Single bit errors from Bit 0 -Bit 31 */
+char *ecc_sb_err_info[] = {
+	"mi_h2c0_dat",
+	"mi_c2h0_dat",
+	"h2c_rd_brg_dat",
+	"h2c_wr_brg_dat",
+	"c2h_rd_brg_dat",
+	"c2h_wr_brg_dat",
+	"func_map",
+	"dsc_hw_ctxt",
+	"dsc_crd_rcv",
+	"dsc_sw_ctxt",
+	"dsc_cpli",
+	"dsc_cpld",
+	"pasid_ctxt_ram",
+	"timer_fifo_ram",
+	"payload_fifo_ram",
+	"qid_fifo_ram",
+	"tuser_fifo_ram",
+	"wrb_coal_data_ram",
+	"int_qid2vec_ram",
+	"int_ctxt_ram",
+	"desc_req_fifo_ram",
+	"pfch_ctxt_ram",
+	"wrb_ctxt_ram",
+	"pfch_ll_ram",
+	"h2c_pend_fifo"
+};
+
+/** ECC Double bit errors from Bit 0 -Bit 31 */
+char *ecc_db_err_info[] = {
+	"mi_h2c0_dat",
+	"mi_c2h0_dat",
+	"h2c_rd_brg_dat",
+	"h2c_wr_brg_dat",
+	"c2h_rd_brg_dat",
+	"c2h_wr_brg_dat",
+	"func_map",
+	"dsc_hw_ctxt",
+	"dsc_crd_rcv",
+	"dsc_sw_ctxt",
+	"dsc_cpli",
+	"dsc_cpld",
+	"pasid_ctxt_ram",
+	"timer_fifo_ram",
+	"payload_fifo_ram",
+	"qid_fifo_ram",
+	"tuser_fifo_ram",
+	"wrb_coal_data_ram",
+	"int_qid2vec_ram",
+	"int_ctxt_ram",
+	"desc_req_fifo_ram",
+	"pfch_ctxt_ram",
+	"wrb_ctxt_ram",
+	"pfch_ll_ram",
+	"h2c_pend_fifo",
+};
+
+struct qdma_err_stat_info err_stat_info[HW_ERRS] = {
+	{ "glbl_err", QDMA_REG_GLBL_ERR_STAT, QDMA_REG_GLBL_ERR_MASK,
+			{ QDMA_REG_GLBL_ERR_MASK_VALUE, glbl_err_info } },
+	{ "dsc_err", QDMA_GLBL_DSC_ERR_STS, QDMA_GLBL_DSC_ERR_MSK,
+			{ QDMA_GLBL_DSC_ERR_MSK_VALUE, dsc_err_info } },
+	{ "trq_err", QDMA_GLBL_TRQ_ERR_STS, QDMA_GLBL_TRQ_ERR_MSK,
+			{ QDMA_GLBL_TRQ_ERR_MSK_VALUE, trq_err_info } },
+	{ "c2h_err", QDMA_REG_C2H_ERR_STAT, QDMA_REG_C2H_ERR_MASK,
+			{ QDMA_REG_C2H_ERR_MASK_VALUE, c2h_err_info } },
+	{ "c2h_fatal_err", QDMA_C2H_FATAL_ERR_STAT, QDMA_C2H_FATAL_ERR_MASK,
+			{ QDMA_C2H_FATAL_ERR_MASK_VALUE, c2h_fatal_err_info } },
+	{ "h2c_err", QDMA_H2C_ERR_STAT, QDMA_H2C_ERR_MASK,
+			{ QDMA_H2C_ERR_MASK_VALUE, h2c_err_info } },
+	{ "ecc_sb_err", QDMA_RAM_SBE_STAT_A, QDMA_RAM_SBE_MASK_A,
+			{ QDMA_RAM_SBE_MASK_VALUE, ecc_sb_err_info } },
+	{ "ecc_sb_err", QDMA_RAM_DBE_STAT_A, QDMA_RAM_DBE_MASK_A,
+			{ QDMA_RAM_DBE_MASK_VALUE, ecc_db_err_info } },
+};
+
+#ifndef __QDMA_VF__
+static LIST_HEAD(legacy_intr_q_list);
+static spinlock_t legacy_intr_lock;
+static spinlock_t legacy_q_add_lock;
+static unsigned long legacy_intr_flags = IRQF_SHARED;
+#endif
+
+void err_stat_handler(struct xlnx_dma_dev *xdev)
+{
+	u32 i;
+	u32 err_stat;
+	u32 glb_err_stat = 0;
+
+	for (i = 0; i < HW_ERRS; i++) {
+		err_stat = __read_reg(xdev, err_stat_info[i].stat_reg_addr);
+		if ((i == 0) && err_stat_info[i].err_info.intr_mask)
+			glb_err_stat = err_stat;
+		if (err_stat & err_stat_info[i].err_info.intr_mask) {
+			uint8_t bit = 0;
+			uint32_t intr_mask =
+					err_stat_info[i].err_info.intr_mask;
+			uint32_t chk_mask = 0x01;
+
+			pr_info("%s[0x%x] : 0x%x", err_stat_info[i].err_name,
+					err_stat_info[i].stat_reg_addr,
+					err_stat);
+			while (intr_mask) {
+				if (((intr_mask & 0x01)) &&
+					(err_stat & chk_mask))
+					pr_err("\t%s detected",
+					err_stat_info[i].err_info.stat[bit]);
+
+				if (intr_mask & 0x01)
+					bit++;
+				intr_mask >>= 1;
+				chk_mask <<= 1;
+			}
+			__write_reg(xdev, err_stat_info[i].stat_reg_addr,
+				err_stat);
+		}
+	}
+	if (glb_err_stat) {
+		__write_reg(xdev, err_stat_info[0].stat_reg_addr,
+			    glb_err_stat);
+		qdma_err_intr_setup(xdev, 1);
+	}
+}
+
+static irqreturn_t user_intr_handler(int irq_index, int irq, void *dev_id)
+{
+	struct xlnx_dma_dev *xdev = dev_id;
+
+	pr_info("User IRQ fired on PF#%d: index=%d, vector=%d\n",
+		xdev->func_id, irq_index, irq);
+
+	if (xdev->conf.fp_user_isr_handler)
+		xdev->conf.fp_user_isr_handler((unsigned long)xdev,
+						xdev->conf.uld);
+
+	return IRQ_HANDLED;
+}
+
+#ifndef __QDMA_VF__
+static irqreturn_t error_intr_handler(int irq_index, int irq, void *dev_id)
+{
+	struct xlnx_dma_dev *xdev = dev_id;
+	unsigned long flags;
+
+	pr_info("Error IRQ fired on PF#%d: index=%d, vector=%d\n",
+			xdev->func_id, irq_index, irq);
+
+	spin_lock_irqsave(&xdev->lock, flags);
+
+	err_stat_handler(xdev);
+
+	spin_unlock_irqrestore(&xdev->lock, flags);
+
+	return IRQ_HANDLED;
+}
+#endif
+
+static void data_intr_aggregate(struct xlnx_dma_dev *xdev, int vidx, int irq)
+{
+	struct qdma_descq *descq = NULL;
+	u32 counter = 0;
+	int ring_index = 0;
+	struct intr_coal_conf *coal_entry =
+			(xdev->intr_coal_list + vidx - xdev->dvec_start_idx);
+	struct qdma_intr_ring *ring_entry;
+
+	if (!coal_entry) {
+		pr_err("Failed to locate the coalescing entry for vector = %d\n",
+			vidx);
+		return;
+	}
+	pr_debug("INTR_COAL: msix[%d].vector=%d, msix[%d].entry=%d, rngsize=%d, cidx = %d\n",
+		vidx, xdev->msix[vidx].vector,
+		vidx,
+		xdev->msix[vidx].entry,
+		coal_entry->intr_rng_num_entries,
+		coal_entry->cidx);
+
+	pr_debug("vidx = %d, dvec_start_idx = %d\n", vidx,
+		 xdev->dvec_start_idx);
+
+	if ((xdev->msix[vidx].entry) !=  coal_entry->vec_id) {
+		pr_err("msix[%d].entry[%d] != vec_id[%d]\n",
+			vidx, xdev->msix[vidx].entry,
+			coal_entry->vec_id);
+
+		return;
+	}
+
+	counter = coal_entry->cidx;
+	ring_entry = (coal_entry->intr_ring_base + counter);
+	if (!ring_entry) {
+		pr_err("Failed to locate the ring entry for vector = %d\n",
+			vidx);
+		return;
+	}
+	while (ring_entry->coal_color == coal_entry->color) {
+		pr_debug("IRQ[%d]: IVE[%d], Qid = %d, e_color = %d, c_color = %d, intr_type = %d\n",
+				irq, vidx, ring_entry->qid, coal_entry->color,
+				ring_entry->coal_color, ring_entry->intr_type);
+
+		descq = qdma_device_get_descq_by_hw_qid(xdev, ring_entry->qid,
+				ring_entry->intr_type);
+		if (!descq) {
+			pr_err("IRQ[%d]: IVE[%d], Qid = %d: desc not found\n",
+					irq, vidx, ring_entry->qid);
+			return;
+		}
+
+		if (descq->conf.fp_descq_isr_top) {
+			struct qdma_dev *qdev = xdev_2_qdev(xdev);
+
+			descq->conf.fp_descq_isr_top(descq->conf.qidx +
+					(descq->conf.c2h ? qdev->qmax : 0),
+					descq->conf.quld);
+		} else {
+			if (descq->cpu_assigned)
+				schedule_work_on(descq->intr_work_cpu,
+						&descq->work);
+			else
+				schedule_work(&descq->work);
+		}
+
+		if (++coal_entry->cidx == coal_entry->intr_rng_num_entries) {
+			counter = 0;
+			xdev->intr_coal_list->color =
+				(xdev->intr_coal_list->color) ? 0 : 1;
+			coal_entry->cidx = 0;
+		} else
+			counter++;
+
+		ring_entry = (coal_entry->intr_ring_base + counter);
+	}
+
+	if (descq) {
+		ring_index = get_intr_ring_index(descq->xdev,
+						 coal_entry->vec_id);
+		intr_cidx_update(descq, coal_entry->cidx, ring_index);
+	}
+}
+
+static void data_intr_direct(struct xlnx_dma_dev *xdev, int vidx, int irq)
+{
+	struct qdma_descq *descq;
+
+	list_for_each_entry(descq, &xdev->dev_intr_info_list[vidx].intr_list,
+			    intr_list)
+		if (descq->conf.fp_descq_isr_top) {
+			struct qdma_dev *qdev = xdev_2_qdev(xdev);
+
+			descq->conf.fp_descq_isr_top(descq->conf.qidx +
+					(descq->conf.c2h ? qdev->qmax : 0),
+					descq->conf.quld);
+		} else {
+			if (descq->cpu_assigned)
+				schedule_work_on(descq->intr_work_cpu,
+						&descq->work);
+			else
+				schedule_work(&descq->work);
+		}
+}
+
+static irqreturn_t data_intr_handler(int vector_index, int irq, void *dev_id)
+{
+	struct xlnx_dma_dev *xdev = dev_id;
+	unsigned long flags;
+
+	pr_debug("Data IRQ fired on PF#%d: index=%d, vector=%d\n",
+		xdev->func_id, vector_index, irq);
+
+	spin_lock_irqsave(&xdev->lock, flags);
+	if ((xdev->conf.qdma_drv_mode == INDIRECT_INTR_MODE) ||
+			(xdev->conf.qdma_drv_mode == AUTO_MODE))
+		data_intr_aggregate(xdev, vector_index, irq);
+	else
+		data_intr_direct(xdev, vector_index, irq);
+	spin_unlock_irqrestore(&xdev->lock, flags);
+
+	return IRQ_HANDLED;
+}
+
+static inline void intr_ring_free(struct xlnx_dma_dev *xdev, int ring_sz,
+			int intr_desc_sz, u8 *intr_desc, dma_addr_t desc_bus)
+{
+	unsigned int len = ring_sz * intr_desc_sz;
+
+	pr_debug("free %u(0x%x)=%d*%u, 0x%p, bus 0x%llx.\n",
+		len, len, intr_desc_sz, ring_sz, intr_desc, desc_bus);
+
+	dma_free_coherent(&xdev->conf.pdev->dev, (size_t)ring_sz * intr_desc_sz,
+			intr_desc, desc_bus);
+}
+
+static void *intr_ring_alloc(struct xlnx_dma_dev *xdev, int ring_sz,
+				int intr_desc_sz, dma_addr_t *bus)
+{
+	unsigned int len = ring_sz * intr_desc_sz;
+	u8 *p = dma_alloc_coherent(&xdev->conf.pdev->dev, len, bus, GFP_KERNEL);
+
+	if (!p) {
+		pr_err("%s, OOM, sz ring %d, intr_desc %d.\n",
+			xdev->conf.name, ring_sz, intr_desc_sz);
+		return NULL;
+	}
+
+	memset(p, 0, len);
+
+	pr_debug("alloc %u(0x%x)=%d*%u, bus 0x%llx .\n",
+		len, len, intr_desc_sz, ring_sz, *bus);
+
+	return p;
+}
+
+void intr_ring_teardown(struct xlnx_dma_dev *xdev)
+{
+	int i = 0;
+	struct intr_coal_conf  *ring_entry;
+
+
+#ifndef __QDMA_VF__
+	int rv = 0;
+	unsigned int ring_index = 0;
+#endif
+
+	while (i < QDMA_NUM_DATA_VEC_FOR_INTR_CXT) {
+#ifndef __QDMA_VF__
+		ring_index = get_intr_ring_index(xdev,
+				(i + xdev->dvec_start_idx));
+#endif
+		ring_entry = (xdev->intr_coal_list + i);
+		if (ring_entry) {
+			intr_ring_free(xdev,
+				ring_entry->intr_rng_num_entries,
+				sizeof(struct qdma_intr_ring),
+				(u8 *)ring_entry->intr_ring_base,
+				ring_entry->intr_ring_bus);
+#ifndef __QDMA_VF__
+			pr_debug("Clearing intr_ctxt for ring_index =%d\n",
+				ring_index);
+			/* clear interrupt context (0x8) */
+			rv = hw_indirect_ctext_prog(xdev,
+				ring_index, QDMA_CTXT_CMD_CLR,
+				QDMA_CTXT_SEL_COAL, NULL, 0, 0);
+			if (rv < 0) {
+				pr_err("Failed to clear interrupt context, rv = %d\n",
+					rv);
+			}
+#endif
+		}
+		i++;
+	}
+
+	kfree(xdev->intr_coal_list);
+	pr_debug("dev %s interrupt coalescing ring teardown successful\n",
+				dev_name(&xdev->conf.pdev->dev));
+}
+
+static void data_vector_handler(int irq, struct xlnx_dma_dev *xdev)
+{
+	int i;
+
+	for (i = 0; i < xdev->num_vecs; i++) {
+		if (xdev->msix[i].vector == irq) {
+			xdev->dev_intr_info_list[i].intr_vec_map.intr_handler(i,
+					irq, (void *)xdev);
+			break;
+		}
+	}
+}
+
+static irqreturn_t irq_bottom(int irq, void *dev_id)
+{
+	struct xlnx_dma_dev *xdev = dev_id;
+
+	data_vector_handler(irq, xdev);
+
+	return IRQ_HANDLED;
+}
+
+static irqreturn_t irq_top(int irq, void *dev_id)
+{
+	struct xlnx_dma_dev *xdev = dev_id;
+
+	if (xdev->conf.fp_q_isr_top_dev) {
+		xdev->conf.fp_q_isr_top_dev((unsigned long)xdev,
+					xdev->conf.uld);
+	}
+
+	return IRQ_WAKE_THREAD;
+}
+
+
+void intr_teardown(struct xlnx_dma_dev *xdev)
+{
+	int i = xdev->num_vecs;
+
+	while (--i >= 0)
+		free_irq(xdev->msix[i].vector, xdev);
+
+	if (xdev->num_vecs)
+		pci_disable_msix(xdev->conf.pdev);
+
+	kfree(xdev->msix);
+	kfree(xdev->dev_intr_info_list);
+}
+
+
+static int intr_vector_setup(struct xlnx_dma_dev *xdev, int idx,
+			enum intr_type_list type, f_intr_handler handler)
+{
+	int rv;
+
+	if (type == INTR_TYPE_ERROR)
+		snprintf(xdev->dev_intr_info_list[idx].msix_name,
+			 QDMA_DEV_NAME_MAXLEN + 16, "%s-error",
+			 xdev->conf.name);
+	else if (type == INTR_TYPE_USER)
+		snprintf(xdev->dev_intr_info_list[idx].msix_name,
+			 QDMA_DEV_NAME_MAXLEN + 16, "%s-user", xdev->conf.name);
+	else if (type == INTR_TYPE_DATA)
+		snprintf(xdev->dev_intr_info_list[idx].msix_name,
+			 QDMA_DEV_NAME_MAXLEN + 16, "%s-data", xdev->conf.name);
+	else
+		snprintf(xdev->dev_intr_info_list[idx].msix_name,
+			 QDMA_DEV_NAME_MAXLEN + 16, "%s", xdev->conf.name);
+
+	xdev->dev_intr_info_list[idx].intr_vec_map.intr_type = type;
+	xdev->dev_intr_info_list[idx].intr_vec_map.intr_vec_index = idx;
+	xdev->dev_intr_info_list[idx].intr_vec_map.intr_handler = handler;
+
+	if (type == INTR_TYPE_DATA)
+		rv = request_irq(xdev->msix[idx].vector, irq_bottom, 0,
+				 xdev->dev_intr_info_list[idx].msix_name, xdev);
+	else
+		rv = request_threaded_irq(xdev->msix[idx].vector, irq_top,
+					  irq_bottom, 0,
+				  xdev->dev_intr_info_list[idx].msix_name,
+				  xdev);
+
+	pr_info("%s requesting IRQ vector #%d: vec %d, type %d, %s.\n",
+			xdev->conf.name, idx, xdev->msix[idx].vector,
+			type, xdev->dev_intr_info_list[idx].msix_name);
+
+	if (rv) {
+		pr_err("%s requesting IRQ vector #%d: vec %d failed %d.\n",
+			xdev->conf.name, idx, xdev->msix[idx].vector, rv);
+		return rv;
+	}
+
+	return 0;
+}
+#ifdef __PCI_MSI_VEC_COUNT__
+
+#define msix_table_size(flags)	((flags & PCI_MSIX_FLAGS_QSIZE) + 1)
+
+static int pci_msix_vec_count(struct pci_dev *dev)
+{
+	u16 control;
+
+	if (!dev->msix_cap)
+		return 0;
+
+	pci_read_config_word(dev, dev->msix_cap + PCI_MSIX_FLAGS, &control);
+	return msix_table_size(control);
+}
+#endif
+
+int intr_setup(struct xlnx_dma_dev *xdev)
+{
+	int rv = 0;
+	int i;
+
+	if ((xdev->conf.qdma_drv_mode == POLL_MODE) ||
+			(xdev->conf.qdma_drv_mode == LEGACY_INTR_MODE)) {
+		goto exit;
+	}
+	xdev->num_vecs = pci_msix_vec_count(xdev->conf.pdev);
+	pr_debug("dev %s, xdev->num_vecs = %d\n",
+			dev_name(&xdev->conf.pdev->dev), xdev->num_vecs);
+
+	if (!xdev->num_vecs) {
+		pr_warn("MSI-X not supported, running in polled mode\n");
+		return 0;
+	}
+
+	xdev->msix = kzalloc((sizeof(struct msix_entry) * xdev->num_vecs),
+						GFP_KERNEL);
+	if (!xdev->msix) {
+		pr_err("dev %s xdev->msix OOM.\n",
+			dev_name(&xdev->conf.pdev->dev));
+		rv = -ENOMEM;
+		goto exit;
+	}
+
+	xdev->dev_intr_info_list =
+			kzalloc((sizeof(struct intr_info_t) * xdev->num_vecs),
+					GFP_KERNEL);
+	if (!xdev->dev_intr_info_list) {
+		pr_err("dev %s xdev->dev_intr_info_list OOM.\n",
+			dev_name(&xdev->conf.pdev->dev));
+		rv = -ENOMEM;
+		goto free_msix;
+	}
+
+	for (i = 0; i < xdev->num_vecs; i++) {
+		xdev->msix[i].entry = i;
+		INIT_LIST_HEAD(&xdev->dev_intr_info_list[i].intr_list);
+	}
+
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 12, 0)
+	rv = pci_enable_msix_exact(xdev->conf.pdev, xdev->msix, xdev->num_vecs);
+#else
+	rv = pci_enable_msix(xdev->conf.pdev, xdev->msix, xdev->num_vecs);
+#endif
+	if (rv < 0) {
+		pr_err("Error enabling MSI-X (%d)\n", rv);
+		goto free_intr_info;
+	}
+
+	/** On master PF0, vector#0 is dedicated for Error interrupts and
+	 * vector #1 is dedicated for User interrupts
+	 * For all other PFs and VFs, vector#0 is dedicated for User interrupts
+	 * The remaining vectors are for Data interrupts
+	 */
+	i = 0;
+#ifndef __QDMA_VF__
+	/* global error interrupt */
+	if (xdev->conf.master_pf) {
+		rv = intr_vector_setup(xdev, 0, INTR_TYPE_ERROR,
+					error_intr_handler);
+		if (rv)
+			goto cleanup_irq;
+		i = 1;
+	}
+#endif
+
+	/* user interrupt */
+	rv = intr_vector_setup(xdev, i, INTR_TYPE_USER, user_intr_handler);
+	if (rv)
+		goto cleanup_irq;
+
+	/* data interrupt */
+	xdev->dvec_start_idx = ++i;
+	for (; i < xdev->num_vecs; i++) {
+		rv = intr_vector_setup(xdev, i, INTR_TYPE_DATA,
+					data_intr_handler);
+		if (rv)
+			goto cleanup_irq;
+	}
+
+	xdev->flags |= XDEV_FLAG_IRQ;
+	return rv;
+
+cleanup_irq:
+	while (--i >= 0)
+		free_irq(xdev->msix[i].vector, xdev);
+
+	pci_disable_msix(xdev->conf.pdev);
+	xdev->num_vecs = 0;
+free_intr_info:
+	kfree(xdev->dev_intr_info_list);
+free_msix:
+	kfree(xdev->msix);
+exit:
+	return rv;
+}
+
+#ifndef __QDMA_VF__
+static irqreturn_t irq_legacy(int irq, void *param)
+{
+	struct list_head *entry, *tmp;
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)param;
+	irqreturn_t ret = IRQ_NONE;
+
+	if (!xdev) {
+		pr_err("Invalid Xdev");
+		goto irq_return;
+	}
+
+	spin_lock_irqsave(&legacy_intr_lock, legacy_intr_flags);
+	if (__read_reg(xdev, QDMA_GLBL_INTERRUPT_CFG) &
+			QDMA_GLBL_INTERRUPT_LGCY_INTR_PEND) {
+
+		list_for_each_safe(entry, tmp, &legacy_intr_q_list) {
+			struct qdma_descq *descq =
+					container_of(entry,
+						     struct qdma_descq,
+						     legacy_intr_q_list);
+
+			qdma_descq_service_cmpl_update(descq, 0, 1);
+		}
+		__write_reg(xdev, QDMA_GLBL_INTERRUPT_CFG,
+			    QDMA_GLBL_INTERRUPT_CFG_EN_LGCY_INTR |
+			    QDMA_GLBL_INTERRUPT_LGCY_INTR_PEND);
+		ret = IRQ_HANDLED;
+	}
+	spin_unlock_irqrestore(&legacy_intr_lock, legacy_intr_flags);
+
+irq_return:
+	return ret;
+}
+
+void intr_legacy_clear(struct qdma_descq *descq)
+{
+
+	if (!descq) {
+		pr_err("Invalid descq received");
+		return;
+	}
+	list_del(&descq->legacy_intr_q_list);
+
+	if (list_empty(&legacy_intr_q_list)) {
+
+		pr_info("un-registering legacy interrupt from qdma%05x\n",
+			descq->xdev->conf.bdf);
+		__write_reg(descq->xdev, QDMA_GLBL_INTERRUPT_CFG,
+			    QDMA_GLBL_INTERRUPT_LGCY_INTR_PEND);
+		free_irq(descq->xdev->conf.pdev->irq, descq->xdev);
+	}
+}
+
+int intr_legacy_setup(struct qdma_descq *descq)
+{
+	int req_irq = 0;
+	int rv = 0;
+
+	if (!descq) {
+		pr_err("Invalid descq received");
+		return -EINVAL;
+	}
+
+	spin_lock(&legacy_q_add_lock);
+	req_irq = list_empty(&legacy_intr_q_list);
+	rv = req_irq ? 0 : 1;
+
+	if (req_irq != 0) {
+		spin_lock_init(&legacy_intr_lock);
+		pr_debug("registering legacy interrupt for irq-%d from qdma%05x\n",
+			descq->xdev->conf.pdev->irq, descq->xdev->conf.bdf);
+		__write_reg(descq->xdev, QDMA_GLBL_INTERRUPT_CFG,
+			    QDMA_GLBL_INTERRUPT_LGCY_INTR_PEND);
+		rv = request_threaded_irq(descq->xdev->conf.pdev->irq, irq_top,
+					  irq_legacy, legacy_intr_flags,
+					  "qdma legacy intr",
+					  descq->xdev);
+
+		if (rv < 0)
+			goto exit_intr_setup;
+		else {
+			list_add_tail(&descq->legacy_intr_q_list,
+				      &legacy_intr_q_list);
+			rv = 0;
+		}
+		__write_reg(descq->xdev, QDMA_GLBL_INTERRUPT_CFG,
+			    QDMA_GLBL_INTERRUPT_CFG_EN_LGCY_INTR);
+	} else
+		list_add_tail(&descq->legacy_intr_q_list,
+			      &legacy_intr_q_list);
+
+exit_intr_setup:
+	spin_unlock(&legacy_q_add_lock);
+	return rv;
+}
+#endif
+
+int intr_ring_setup(struct xlnx_dma_dev *xdev)
+{
+	int num_entries = 0;
+	int counter = 0;
+	struct intr_coal_conf  *intr_coal_list;
+	struct intr_coal_conf  *intr_coal_list_entry;
+
+	if ((xdev->conf.qdma_drv_mode != INDIRECT_INTR_MODE) &&
+			(xdev->conf.qdma_drv_mode != AUTO_MODE)) {
+		pr_debug("skipping interrupt aggregation: driver is loaded in %s mode\n",
+			mode_name_list[xdev->conf.qdma_drv_mode].name);
+		xdev->intr_coal_list = NULL;
+		return 0;
+	}
+
+	/** For master_pf, vec0 and vec1 is used for
+	 *  error and user interrupts
+	 *  for other pfs, vec0 is used for user interrupts
+	 */
+	if ((xdev->num_vecs != 0) &&
+	    ((xdev->num_vecs - xdev->dvec_start_idx) < xdev->conf.qsets_max)) {
+		pr_debug("dev %s num_vectors[%d] < num_queues [%d]\n",
+					dev_name(&xdev->conf.pdev->dev),
+					xdev->num_vecs,
+					xdev->conf.qsets_max);
+		pr_debug("Enabling Interrupt aggregation\n");
+
+		/** obtain the number of queue entries
+		 * in each inr_ring based on ring size
+		 */
+		num_entries = ((xdev->conf.intr_rngsz + 1) * 512);
+
+		pr_debug("%s interrupt coalescing ring with %d entries\n",
+			dev_name(&xdev->conf.pdev->dev), num_entries);
+		/**
+		 * Initially assuming that each vector has the same size of the
+		 * ring, In practical it is possible to have different ring
+		 * size of different vectors (?)
+		 */
+		intr_coal_list = kzalloc(
+				sizeof(struct intr_coal_conf) *
+				QDMA_NUM_DATA_VEC_FOR_INTR_CXT,
+				GFP_KERNEL);
+		if (!intr_coal_list) {
+			pr_err("dev %s num_vecs %d OOM.\n",
+				dev_name(&xdev->conf.pdev->dev),
+				QDMA_NUM_DATA_VEC_FOR_INTR_CXT);
+			return -ENOMEM;
+		}
+
+		for (counter = 0;
+			counter < QDMA_NUM_DATA_VEC_FOR_INTR_CXT;
+			counter++) {
+			intr_coal_list_entry = (intr_coal_list + counter);
+			intr_coal_list_entry->intr_rng_num_entries =
+							num_entries;
+			intr_coal_list_entry->intr_ring_base = intr_ring_alloc(
+					xdev, num_entries,
+					sizeof(struct qdma_intr_ring),
+					&intr_coal_list_entry->intr_ring_bus);
+			if (!intr_coal_list_entry->intr_ring_base) {
+				pr_err("dev %s, sz %u, intr_desc ring OOM.\n",
+				xdev->conf.name,
+				intr_coal_list_entry->intr_rng_num_entries);
+				goto err_out;
+			}
+
+			intr_coal_list_entry->vec_id =
+			xdev->msix[counter + xdev->dvec_start_idx].entry;
+			intr_coal_list_entry->cidx = 0;
+			intr_coal_list_entry->color = 1;
+			pr_debug("ring_number = %d, vector_index = %d, ring_size = %d, ring_base = 0x%08x",
+			    counter, intr_coal_list_entry->vec_id,
+			    intr_coal_list_entry->intr_rng_num_entries,
+			    (unsigned int)intr_coal_list_entry->intr_ring_bus);
+		}
+
+		pr_debug("dev %s interrupt coalescing ring setup successful\n",
+					dev_name(&xdev->conf.pdev->dev));
+
+		xdev->intr_coal_list = intr_coal_list;
+	} else {
+		pr_info("dev %s intr vec[%d] >= queues[%d], No aggregation\n",
+			dev_name(&xdev->conf.pdev->dev),
+			(xdev->num_vecs - xdev->dvec_start_idx),
+			xdev->conf.qsets_max);
+
+		xdev->intr_coal_list = NULL;
+		/* Fallback from indirect interrupt mode */
+		if (xdev->num_vecs != 0)
+			xdev->conf.qdma_drv_mode = DIRECT_INTR_MODE;
+	        else
+	        	xdev->conf.qdma_drv_mode = POLL_MODE;
+	}
+	return 0;
+
+err_out:
+	while (--counter >= 0) {
+		intr_coal_list_entry = (intr_coal_list + counter);
+		intr_ring_free(xdev, intr_coal_list_entry->intr_rng_num_entries,
+				sizeof(struct qdma_intr_ring),
+				(u8 *)intr_coal_list_entry->intr_ring_base,
+				intr_coal_list_entry->intr_ring_bus);
+	}
+	kfree(intr_coal_list);
+	return -ENOMEM;
+}
+
+void intr_work(struct work_struct *work)
+{
+	struct qdma_descq *descq;
+
+	descq = container_of(work, struct qdma_descq, work);
+	qdma_descq_service_cmpl_update(descq, 0, 1);
+}
+
+/**
+ * qdma_queue_service - service the queue
+ * in the case of irq handler is registered by the user, the user should
+ * call qdma_queue_service() in its interrupt handler to service the queue
+ * @dev_hndl: hndl retured from qdma_device_open()
+ * @qhndl: hndl retured from qdma_queue_add()
+ */
+void qdma_queue_service(unsigned long dev_hndl, unsigned long id, int budget,
+			bool c2h_upd_cmpl)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+	struct qdma_descq *descq = qdma_device_get_descq_by_id(xdev, id,
+							NULL, 0, 1);
+
+	if (descq)
+		qdma_descq_service_cmpl_update(descq, budget, c2h_upd_cmpl);
+}
+
+static u8 get_intr_vec_index(struct xlnx_dma_dev *xdev, u8 intr_type)
+{
+	u8 i = 0;
+
+	for (i = 0; i < xdev->num_vecs; i++) {
+		if (xdev->dev_intr_info_list[i].intr_vec_map.intr_type ==
+		    intr_type)
+			return xdev->dev_intr_info_list[i].intr_vec_map.intr_vec_index;
+	}
+	return 0;
+}
+
+void qdma_err_intr_setup(struct xlnx_dma_dev *xdev, u8 rearm)
+{
+	u32 val = 0;
+	u8  err_intr_index = 0;
+	u8 i;
+
+	val = xdev->func_id;
+	err_intr_index = get_intr_vec_index(xdev, INTR_TYPE_ERROR);
+	val |= V_QDMA_C2H_ERR_INT_VEC(err_intr_index);
+
+	val |= (1 << S_QDMA_C2H_ERR_INT_F_ERR_INT_ARM);
+
+	__write_reg(xdev, QDMA_C2H_ERR_INT, val);
+
+	if (rearm)
+		return;
+
+	pr_debug("Error interrupt setup: val = 0x%08x,  readback =  0x%08x err_intr_index = %d func_id = %d\n",
+			val, __read_reg(xdev, QDMA_C2H_ERR_INT),
+			err_intr_index, xdev->func_id);
+
+	for (i = 0; i < HW_ERRS; i++)
+		qdma_enable_hw_err(xdev, i);
+}
+
+
+void qdma_enable_hw_err(struct xlnx_dma_dev *xdev, u8 hw_err_type)
+{
+
+	switch (hw_err_type) {
+	case GLBL_ERR:
+	case GLBL_DSC_ERR:
+	case GLBL_TRQ_ERR:
+	case C2H_ERR:
+	case C2H_FATAL_ERR:
+	case H2C_ERR:
+	case ECC_SB_ERR:
+	case ECC_DB_ERR:
+		break;
+	default:
+		hw_err_type = 0;
+		break;
+	}
+
+	__write_reg(xdev,
+	    err_stat_info[hw_err_type].mask_reg_addr,
+		err_stat_info[hw_err_type].err_info.intr_mask);
+	pr_info("%s interrupts enabled: reg -> 0x%08x,  value =  0x%08x\n",
+		 err_stat_info[hw_err_type].err_name,
+		 err_stat_info[hw_err_type].mask_reg_addr,
+		 __read_reg(xdev, err_stat_info[hw_err_type].mask_reg_addr));
+}
+
+
+int get_intr_ring_index(struct xlnx_dma_dev *xdev, u32 vector_index)
+{
+	int ring_index = 0;
+
+	ring_index = (vector_index - xdev->dvec_start_idx) +
+			(xdev->func_id * QDMA_NUM_DATA_VEC_FOR_INTR_CXT);
+	pr_debug("func_id = %d, vector_index = %d, ring_index = %d\n",
+			xdev->func_id, vector_index, ring_index);
+
+	return ring_index;
+}
+
+void intr_legacy_init(void)
+{
+#ifndef __QDMA_VF__
+	spin_lock_init(&legacy_q_add_lock);
+#endif
+}
diff --git a/QDMA/linux-kernel/libqdma/qdma_intr.h b/QDMA/linux-kernel/libqdma/qdma_intr.h
new file mode 100644
index 0000000..da40765
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/qdma_intr.h
@@ -0,0 +1,217 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#ifndef LIBQDMA_QDMA_INTR_H_
+#define LIBQDMA_QDMA_INTR_H_
+/**
+ * @file
+ * @brief This file contains the declarations for qdma dev interrupt handlers
+ *
+ */
+#include <linux/types.h>
+#include <linux/workqueue.h>
+#include "qdma_descq.h"
+/**
+ * forward declaration for xlnx_dma_dev
+ */
+struct xlnx_dma_dev;
+
+/**
+ * @struct - qdma_intr_ring
+ * @brief	Interrupt ring entry definition
+ */
+struct qdma_intr_ring {
+	/** producer index. This is from Interrupt source.
+	 *  Cumulative pointer of total interrupt Aggregation
+	 *  Ring entry written
+	 */
+	__be64 pidx:16;
+	/** consumer index. This is from Interrupt source.
+	 *  Cumulative consumed pointer
+	 */
+	__be64 cidx:16;
+	/** source color. This is from Interrupt source.
+	 *  This bit inverts every time pidx wraps around
+	 *  and this field gets copied to color field of descriptor.
+	 */
+	__be64 s_color:1;
+	/** This is from Interrupt source.
+	 * Interrupt state, 0: CMPT_INT_ISR; 1: CMPT_INT_TRIG; 2: CMPT_INT_ARMED
+	 */
+	__be64 intr_satus:2;
+	/** error. This is from interrupt source
+	 *  {C2h_err[1:0], h2c_err[1:0]}
+	 */
+	__be64 error:2;
+	/**  1 reserved bits*/
+	__be64 rsvd:1;
+	/**  interrupt type, 0: H2C; 1: C2H*/
+	__be64 intr_type:1;
+	/**  This is from Interrupt source. Queue ID*/
+	__be64 qid:24;
+	/**  The color bit of the Interrupt Aggregation Ring.
+	 *   This bit inverts every time pidx wraps around on the
+	 *   Interrupt Aggregation Ring.
+	 */
+	__be64 coal_color:1;
+};
+
+/*****************************************************************************/
+/**
+ * intr_teardown() - un register the interrupts for the device
+ *
+ * @param[in]	xdev:		pointer to xdev
+ *
+ * @return	none
+ *****************************************************************************/
+void intr_teardown(struct xlnx_dma_dev *xdev);
+
+/*****************************************************************************/
+/**
+ * intr_setup() - register the interrupts for the device
+ *
+ * @param[in]	xdev:		pointer to xdev
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int intr_setup(struct xlnx_dma_dev *xdev);
+
+/*****************************************************************************/
+/**
+ * intr_ring_teardown() - delete the interrupt ring
+ *
+ * @param[in]	xdev:		pointer to xdev
+ *
+ * @return	none
+ *****************************************************************************/
+void intr_ring_teardown(struct xlnx_dma_dev *xdev);
+
+/*****************************************************************************/
+/**
+ * intr_context_setup() - set up the interrupt context
+ *
+ * @param[in]	xdev:		pointer to xdev
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int intr_context_setup(struct xlnx_dma_dev *xdev);
+
+/*****************************************************************************/
+/**
+ * intr_ring_setup() - create the interrupt ring
+ *
+ * @param[in]	xdev:		pointer to xdev
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int intr_ring_setup(struct xlnx_dma_dev *xdev);
+
+/*****************************************************************************/
+/**
+ * intr_legacy_init() - legacy interrupt init
+ *
+ *****************************************************************************/
+void intr_legacy_init(void);
+
+/*****************************************************************************/
+/**
+ * intr_legacy_setup() - setup the legacy interrupt handler
+ *
+ * @param[in]	descq:	descq on which the interrupt needs to be setup
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int intr_legacy_setup(struct qdma_descq *descq);
+
+/*****************************************************************************/
+/**
+ * intr_legacy_clear() - clear the legacy interrupt handler
+ *
+ * @param[in]	descq:	descq on which the interrupt needs to be cleared
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+void intr_legacy_clear(struct qdma_descq *descq);
+
+
+/*****************************************************************************/
+/**
+ * intr_work() - attach the top half for the interrupt
+ *
+ * @param[in]	work:		pointer to struct work_struct
+ *
+ * @return	none
+ *****************************************************************************/
+void intr_work(struct work_struct *work);
+
+/*****************************************************************************/
+/**
+ * qdma_err_intr_setup() - set up the error interrupt
+ *
+ * @param[in]	xdev:		pointer to xdev
+ * @param[in]	rearm:		flag to control the error interrupt arming
+ *
+ * @return	none
+ *****************************************************************************/
+void qdma_err_intr_setup(struct xlnx_dma_dev *xdev, u8 rearm);
+
+/*****************************************************************************/
+/**
+ * qdma_enable_hw_err() - enable the hw errors
+ *
+ * @param[in]	xdev:		pointer to xdev
+ * @param[in]	hw_err_type:	hw error type
+ *
+ * @return	none
+ *****************************************************************************/
+void qdma_enable_hw_err(struct xlnx_dma_dev *xdev, u8 hw_err_type);
+
+/*****************************************************************************/
+/**
+ * get_intr_ring_index() - get the interrupt ring index based on vector index
+ *
+ * @param[in]	xdev:		pointer to xdev
+ * @param[in]	vector_index:	vector index
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int get_intr_ring_index(struct xlnx_dma_dev *xdev, u32 vector_index);
+
+#ifndef __QDMA_VF__
+#ifdef ERR_DEBUG
+/*****************************************************************************/
+/**
+ * err_stat_handler() - error interrupt handler
+ *
+ * @param[in]	xdev:		pointer to xdev
+ *
+ * @return	none
+ *****************************************************************************/
+void err_stat_handler(struct xlnx_dma_dev *xdev);
+#endif
+#endif
+
+#endif /* LIBQDMA_QDMA_DEVICE_H_ */
+
diff --git a/QDMA/linux-kernel/libqdma/qdma_mbox.c b/QDMA/linux-kernel/libqdma/qdma_mbox.c
new file mode 100644
index 0000000..ccfd3a9
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/qdma_mbox.c
@@ -0,0 +1,762 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#define pr_fmt(fmt)	KBUILD_MODNAME ":%s: " fmt, __func__
+
+#include <linux/kernel.h>
+#include <linux/version.h>
+#include <linux/string.h>
+#include <linux/errno.h>
+#include <linux/jiffies.h>
+#include <linux/timer.h>
+#include <linux/delay.h>
+#include <linux/sched.h>
+
+#include "qdma_compat.h"
+#include "xdev.h"
+#include "qdma_device.h"
+#include "qdma_regs.h"
+#include "qdma_context.h"
+#include "qdma_mbox.h"
+#include "qdma_qconf_mgr.h"
+
+#define MBOX_TIMER_INTERVAL	(1)
+
+/*
+ * mailbox opcode string
+ */
+static const char *mbox_op_str[MBOX_OP_MAX] = {
+	"noop",
+	"bye",
+	"hello",
+
+	"fmap",
+	"csr",
+	"intr_ctrx",
+	"qctrx_wrt",
+	"qctrx_rd",
+	"qctrx_clr",
+	"qctrx_inv",
+
+	"qconf",
+	"rsvd_0x0b",
+	"rsvd_0x0c",
+	"rsvd_0x0d",
+	"rsvd_0x0e",
+	"rsvd_0x0f",
+	"rsvd_0x10",
+	"rsvd_0x11",
+
+	"hello_resp",
+	"fmap_resp",
+	"csr_resp",
+	"intr_ctrx_resp",
+	"qctrx_wrt_resp",
+	"qctrx_rd_resp",
+	"qctrx_clr_resp",
+	"qctrx_inv_resp",
+	"qconf_resp",
+};
+
+/*
+ * mailbox h/w registers access
+ */
+
+#ifndef __QDMA_VF__
+static inline void mbox_pf_hw_clear_func_ack(struct xlnx_dma_dev *xdev,
+					u8 func_id)
+{
+	int idx = func_id / 32; /* bitmask, u32 reg */
+	int bit = func_id % 32;
+
+	/* clear the function's ack status */
+	__write_reg(xdev,
+		MBOX_BASE + MBOX_PF_ACK_BASE + idx * MBOX_PF_ACK_STEP,
+		(1 << bit));
+}
+
+static void mbox_pf_hw_clear_ack(struct xlnx_dma_dev *xdev)
+{
+	u32 v = __read_reg(xdev, MBOX_BASE + MBOX_FN_STATUS);
+	u32 reg = MBOX_BASE + MBOX_PF_ACK_BASE;
+	int i;
+
+	if ((v & F_MBOX_FN_STATUS_ACK) == 0)
+		return;
+
+	for (i = 0; i < MBOX_PF_ACK_COUNT; i++, reg += MBOX_PF_ACK_STEP) {
+		u32 v = __read_reg(xdev, reg);
+
+		if (!v)
+			continue;
+
+		/* clear the ack status */
+		pr_debug("%s, PF_ACK %d, 0x%x.\n", xdev->conf.name, i, v);
+		__write_reg(xdev, reg, v);
+	}
+}
+#endif
+
+static int mbox_hw_send(struct qdma_mbox *mbox, struct mbox_msg *m)
+{
+	struct xlnx_dma_dev *xdev = mbox->xdev;
+	struct mbox_msg_hdr *hdr = &m->hdr;
+	u32 fn_id = hdr->dst;
+	int i;
+	u32 reg = MBOX_OUT_MSG_BASE;
+	u32 v;
+	int rv = -EAGAIN;
+
+	pr_debug("%s, dst 0x%x, op 0x%x, %s, status reg 0x%x.\n",
+		xdev->conf.name, fn_id, m->hdr.op, mbox_op_str[m->hdr.op],
+		__read_reg(xdev, MBOX_BASE + MBOX_FN_STATUS));
+
+	spin_lock_bh(&mbox->hw_tx_lock);
+
+#ifndef __QDMA_VF__
+	__write_reg(xdev, MBOX_BASE + MBOX_FN_TARGET,
+			V_MBOX_FN_TARGET_ID(fn_id));
+#endif
+
+	v = __read_reg(xdev, MBOX_BASE + MBOX_FN_STATUS);
+	if (v & F_MBOX_FN_STATUS_OUT_MSG) {
+		pr_debug("%s, func 0x%x, outgoing message busy, 0x%x.\n",
+			xdev->conf.name, fn_id, v);
+		goto unlock;
+	}
+
+	for (i = 0; i < MBOX_MSG_REG_MAX; i++, reg += MBOX_MSG_STEP)
+		__write_reg(xdev, MBOX_BASE + reg, m->raw[i]);
+
+	pr_debug("%s, send op 0x%x,%s, src 0x%x, dst 0x%x, s 0x%x:\n",
+		xdev->conf.name, m->hdr.op, mbox_op_str[m->hdr.op], m->hdr.src,
+		m->hdr.dst, m->hdr.status);
+#if 0
+	print_hex_dump(KERN_INFO, "mbox snd: ", DUMP_PREFIX_OFFSET,
+			16, 1, (void *)m, 64, false);
+#endif
+
+#ifndef __QDMA_VF__
+	/* clear the outgoing ack */
+	mbox_pf_hw_clear_func_ack(xdev, fn_id);
+#endif
+
+	__write_reg(xdev, MBOX_BASE + MBOX_FN_CMD, F_MBOX_FN_CMD_SND);
+	rv = 0;
+
+unlock:
+	spin_unlock_bh(&mbox->hw_tx_lock);
+
+	return rv;
+}
+
+static int mbox_hw_rcv(struct qdma_mbox *mbox, struct mbox_msg *m)
+{
+	struct xlnx_dma_dev *xdev = mbox->xdev;
+	u32 reg = MBOX_IN_MSG_BASE;
+	u32 v = 0;
+	int all_zero_msg = 1;
+	int i;
+	int rv = -EAGAIN;
+#ifndef __QDMA_VF__
+	unsigned int from_id = 0;
+#endif
+
+	spin_lock_bh(&mbox->hw_rx_lock);
+
+	v = __read_reg(xdev, MBOX_BASE + MBOX_FN_STATUS);
+
+#if 0
+	if ((v & MBOX_FN_STATUS_MASK))
+		pr_debug("%s, base 0x%x, status 0x%x.\n",
+			xdev->conf.name, MBOX_BASE, v);
+#endif
+
+	if (!(v & M_MBOX_FN_STATUS_IN_MSG))
+		goto unlock;
+
+#ifndef __QDMA_VF__
+	from_id = G_MBOX_FN_STATUS_SRC(v);
+	__write_reg(xdev, MBOX_BASE + MBOX_FN_TARGET, from_id);
+#endif
+
+	for (i = 0; i < MBOX_MSG_REG_MAX; i++, reg += MBOX_MSG_STEP) {
+		m->raw[i] = __read_reg(xdev, MBOX_BASE + reg);
+		/* if rcv'ed message is all zero, stop and disable the mbox,
+		 * the h/w mbox is not working properly
+		 */
+		if (m->raw[i])
+			all_zero_msg = 0;
+	}
+	if (all_zero_msg) {
+		rv = -EPIPE;
+		goto unlock;
+	}
+
+	pr_debug("%s, rcv op 0x%x, %s, src 0x%x, dst 0x%x, s 0x%x:\n",
+		xdev->conf.name, m->hdr.op, mbox_op_str[m->hdr.op], m->hdr.src,
+		m->hdr.dst, m->hdr.status);
+#if 0
+	print_hex_dump(KERN_INFO, "mbox rcv: ", DUMP_PREFIX_OFFSET,
+			16, 1, (void *)m, 64, false);
+#endif
+
+#ifndef __QDMA_VF__
+	if (from_id != m->hdr.src) {
+		pr_debug("%s, src 0x%x -> func_id 0x%x.\n",
+			xdev->conf.name, m->hdr.src, from_id);
+		m->hdr.src = from_id;
+	}
+#endif
+
+	/* ack'ed the sender */
+	__write_reg(xdev, MBOX_BASE + MBOX_FN_CMD, F_MBOX_FN_CMD_RCV);
+	rv = 0;
+
+unlock:
+	spin_unlock_bh(&mbox->hw_rx_lock);
+	return rv;
+}
+
+/*
+ * mbox tx message processing
+ */
+static void mbox_msg_destroy(struct kref *kref)
+{
+	struct mbox_msg *m = container_of(kref, struct mbox_msg, refcnt);
+
+	kfree(m);
+}
+
+void __qdma_mbox_msg_free(const char *f, struct mbox_msg *m)
+{
+	kref_put(&m->refcnt, mbox_msg_destroy);
+}
+
+struct mbox_msg *qdma_mbox_msg_alloc(struct xlnx_dma_dev *xdev,
+				enum mbox_msg_op op)
+{
+	struct mbox_msg *m = kmalloc(sizeof(struct mbox_msg), GFP_KERNEL);
+	struct mbox_msg_hdr *hdr;
+
+	if (!m) {
+		pr_info("%s OOM, %lu, op 0x%x, %s.\n",
+			xdev->conf.name, sizeof(struct mbox_msg), op,
+			mbox_op_str[op]);
+		return NULL;
+	}
+
+	memset(m, 0, sizeof(struct mbox_msg));
+
+	kref_init(&m->refcnt);
+	qdma_waitq_init(&m->waitq);
+
+	hdr = &m->hdr;
+	hdr->op = op;
+	hdr->src = xdev->func_id;
+#ifdef __QDMA_VF__
+	hdr->dst = xdev->func_id_parent;
+#endif
+
+	return m;
+}
+
+void qdma_mbox_msg_cancel(struct xlnx_dma_dev *xdev, struct mbox_msg *m)
+{
+	struct qdma_mbox *mbox = &xdev->mbox;
+
+	/* delete from mbox list */
+	spin_lock_bh(&mbox->list_lock);
+	list_del(&m->list);
+	spin_unlock_bh(&mbox->list_lock);
+}
+
+int qdma_mbox_msg_send(struct xlnx_dma_dev *xdev, struct mbox_msg *m,
+			bool wait_resp, u8 resp_op, unsigned int timeout_ms)
+{
+	struct qdma_mbox *mbox = &xdev->mbox;
+	struct mbox_msg_hdr *hdr = &m->hdr;
+
+
+	m->wait_resp = wait_resp ? 1 : 0;
+	m->wait_op = resp_op;
+
+
+	if (unlikely(xlnx_dma_device_flag_check(mbox->xdev, XDEV_FLAG_OFFLINE))
+		&& (hdr->op != MBOX_OP_BYE))
+		/* allow BYE message even if the device is going down */
+		return -ENODEV;
+
+	/* queue up to ensure order */
+	spin_lock_bh(&mbox->list_lock);
+	list_add_tail(&m->list, &mbox->tx_todo_list);
+	spin_unlock_bh(&mbox->list_lock);
+
+	/* kick start the tx */
+	queue_work(mbox->workq, &mbox->tx_work);
+
+	if (!wait_resp)
+		return 0;
+
+	qdma_waitq_wait_event_timeout(m->waitq, hdr->op == resp_op,
+			msecs_to_jiffies(timeout_ms));
+
+	if (hdr->op != resp_op) {
+		/* delete from mbox list */
+		spin_lock_bh(&mbox->list_lock);
+		list_del(&m->list);
+		spin_unlock_bh(&mbox->list_lock);
+
+		pr_err("%s mbox timed out. op 0x%x, %s, timeout %u ms.\n",
+				xdev->conf.name, hdr->op, mbox_op_str[hdr->op],
+				timeout_ms);
+
+		return -EPIPE;
+	}
+
+	if (hdr->status) {
+		pr_err("%s mbox msg op failed %d. op 0x%x, %s.\n",
+				xdev->conf.name, hdr->status, hdr->op,
+				mbox_op_str[hdr->op]);
+		return hdr->status;
+	}
+
+	return 0;
+}
+
+/*
+ * mbox rx message processing
+ */
+#ifdef __QDMA_VF__
+
+void dump_rx_pend_list(struct qdma_mbox *mbox)
+{
+	struct xlnx_dma_dev *xdev = mbox->xdev;
+	struct mbox_msg *_msg = NULL, *_tmp = NULL;
+
+	spin_lock_bh(&mbox->list_lock);
+	list_for_each_entry_safe(_msg, _tmp, &mbox->rx_pend_list, list) {
+		pr_debug("m_snd(%u) : wait_op/src/dst = %x/%u/%u\n",
+				xdev->func_id, _msg->wait_op,
+				_msg->hdr.src, _msg->hdr.dst);
+	}
+	spin_unlock_bh(&mbox->list_lock);
+}
+
+static int mbox_rcv_one_msg(struct qdma_mbox *mbox)
+{
+	struct xlnx_dma_dev *xdev = mbox->xdev;
+	struct mbox_msg *m_rcv = &mbox->rx;
+	struct mbox_msg_hdr *hdr_rcv = &m_rcv->hdr;
+	struct mbox_msg *m_snd = NULL;
+
+	u8 op = hdr_rcv->op;
+
+	if (xdev->func_id == xdev->func_id_parent) {
+		/* fill in VF's func_id */
+		xdev->func_id = hdr_rcv->dst;
+		xdev->func_id_parent = hdr_rcv->src;
+	}
+
+	spin_lock_bh(&mbox->list_lock);
+	if (!list_empty(&mbox->rx_pend_list))
+		m_snd = list_first_entry(&mbox->rx_pend_list, struct mbox_msg,
+					list);
+	spin_unlock_bh(&mbox->list_lock);
+
+
+	if (!m_snd || op != m_snd->wait_op) {
+		if (op != MBOX_OP_HELLO_RESP) {
+			pr_err("%s: unexpected op 0x%x, %s.\n",
+					xdev->conf.name, hdr_rcv->op,
+					mbox_op_str[hdr_rcv->op]);
+			if (m_snd)
+				pr_err("m_snd : wait_op/src/dst = %x/%u/%u\n",
+						m_snd->wait_op,
+						m_snd->hdr.src,
+						m_snd->hdr.dst);
+			dump_rx_pend_list(mbox);
+		}
+		return 0;
+	}
+
+	/* a matching request is found */
+	spin_lock_bh(&mbox->list_lock);
+	list_del(&m_snd->list);
+	spin_unlock_bh(&mbox->list_lock);
+
+	memcpy(m_snd->raw, m_rcv->raw, sizeof(u32) * MBOX_MSG_REG_MAX);
+	/* wake up anyone waiting on the response */
+	qdma_waitq_wakeup(&m_snd->waitq);
+
+	return 0;
+}
+
+#else
+static int mbox_rcv_one_msg(struct qdma_mbox *mbox)
+{
+	struct mbox_msg *m = &mbox->rx;
+	struct mbox_msg_hdr *hdr = &m->hdr;
+	struct xlnx_dma_dev *xdev = mbox->xdev;
+	u8 op = hdr->op;
+	struct mbox_msg *m_resp;
+	struct mbox_msg_hdr *hdr_resp;
+	int rv = 0;
+	struct qconf_entry *entry = NULL;
+
+	pr_debug("%s, src 0x%x op 0x%x,%s.\n",
+		xdev->conf.name, hdr->src, hdr->op, mbox_op_str[hdr->op]);
+
+	switch (op) {
+	case MBOX_OP_BYE:
+	{
+		unsigned int qbase = 0;
+		unsigned int qmax = 0;
+
+		hw_read_fmap(xdev, hdr->src, &qbase, &qmax);
+		hw_init_qctxt_memory(xdev, qbase, qmax);
+
+		hw_set_fmap(xdev, hdr->src, 0, 0);
+		xdev_sriov_vf_offline(xdev, hdr->src);
+
+		pr_debug("%s: clear 0x%x FMAP, Q 0x%x+0x%x.\n",
+			xdev->conf.name, hdr->src, qbase, qmax);
+
+		xdev_destroy_qconf(PCI_TYPE_VF, hdr->src);
+		/* no response needed */
+		return 0;
+	}
+	break;
+	case MBOX_OP_HELLO:
+	{
+		xdev_sriov_vf_online(xdev, hdr->src);
+		entry = xdev_create_qconf(PCI_TYPE_VF, hdr->src);
+		if (entry) {
+			int rsp_offset =
+					sizeof(struct mbox_msg_hdr)/sizeof(u32);
+			m->raw[rsp_offset] = entry->qmax;
+			m->raw[rsp_offset + 1] = entry->qbase;
+			pr_debug("qmax = %u qbase = %u m_resp->raw[%d] = %u, m_resp->raw[%d] = %u\n",
+					entry->qmax, entry->qbase,
+					rsp_offset, m->raw[rsp_offset],
+					rsp_offset + 1, m->raw[rsp_offset + 1]);
+		}
+	}
+	break;
+	case MBOX_OP_FMAP:
+	{
+		struct mbox_msg_fmap *fmap = &m->fmap;
+		int ret = xdev_set_qmax(PCI_TYPE_VF, hdr->src,
+				fmap->qmax, &fmap->qbase);
+		if (ret < 0) {
+			rv = ret;
+			pr_err("VF qmax set failed %s: set 0x%x QCONF, Q 0x%x+0x%x. ret = %d\n",
+					xdev->conf.name, hdr->src,
+					fmap->qbase, fmap->qmax, ret);
+		} else {
+			pr_debug("VF qmax set success %s: set 0x%x QCONF, Q 0x%x+0x%x.\n",
+					xdev->conf.name, hdr->src,
+					fmap->qbase, fmap->qmax);
+
+			pr_debug("%s: set 0x%x FMAP, Q 0x%x+0x%x.\n",
+					xdev->conf.name, hdr->src, fmap->qbase,
+					fmap->qmax);
+
+			hw_set_fmap(xdev, hdr->src, fmap->qbase, fmap->qmax);
+
+			xdev_sriov_vf_fmap(xdev, hdr->src, fmap->qbase,
+					fmap->qmax);
+		}
+	}
+	break;
+	case MBOX_OP_QCONF:
+	{
+		struct mbox_msg_fmap *fmap = &m->fmap;
+
+		int ret = xdev_set_qmax(PCI_TYPE_VF, hdr->src,
+				fmap->qmax, &fmap->qbase);
+		if (ret < 0) {
+			rv = ret;
+			pr_err("VF qmax set failed %s: set 0x%x QCONF, Q 0x%x+0x%x.\n",
+					xdev->conf.name, hdr->src,
+					fmap->qbase, fmap->qmax);
+		} else {
+			pr_debug("VF qmax set success %s: set 0x%x QCONF, Q 0x%x+0x%x.\n",
+					xdev->conf.name, hdr->src,
+					fmap->qbase, fmap->qmax);
+		}
+	}
+	break;
+
+	case MBOX_OP_CSR:
+	{
+		struct mbox_msg_csr *csr = &m->csr;
+
+		rv = qdma_csr_read(xdev, &csr->csr_info, 0);
+	}
+	break;
+	case MBOX_OP_INTR_CTXT:
+	{
+		struct mbox_msg_intr_ctxt *ictxt = &m->intr_ctxt;
+
+		pr_debug("%s, rcv 0x%x INTR_CTXT, programing the context\n",
+			xdev->conf.name, hdr->src);
+		rv = qdma_prog_intr_context(xdev, ictxt);
+	}
+	break;
+	case MBOX_OP_QCTXT_CLR:
+	{
+		struct mbox_msg_qctxt *qctxt = &m->qctxt;
+
+		 rv = qdma_descq_context_clear(xdev, qctxt->qid,
+					qctxt->st, qctxt->c2h, 0);
+	}
+	break;
+	case MBOX_OP_QCTXT_RD:
+	{
+		struct mbox_msg_qctxt *qctxt = &m->qctxt;
+
+		rv = qdma_descq_context_read(xdev, qctxt->qid,
+					qctxt->st, qctxt->c2h,
+					&qctxt->context);
+	}
+	break;
+	case MBOX_OP_QCTXT_WRT:
+	{
+		struct mbox_msg_qctxt *qctxt = &m->qctxt;
+
+		pr_debug("%s, rcv 0x%x QCTXT_WRT, qid 0x%x.\n",
+			xdev->conf.name, hdr->src, qctxt->qid);
+
+		/* always clear the context first */
+		rv = qdma_descq_context_clear(xdev, qctxt->qid,
+					qctxt->st, qctxt->c2h, 1);
+		if (rv < 0) {
+			pr_err("%s, 0x%x QCTXT_WRT, qid 0x%x, clr failed %d.\n",
+				xdev->conf.name, hdr->src, qctxt->qid,
+				rv);
+			break;
+		}
+
+		rv = qdma_descq_context_program(xdev, qctxt->qid,
+					qctxt->st, qctxt->c2h,
+					&qctxt->context);
+	}
+	break;
+	default:
+		pr_info("%s: rcv mbox UNKNOWN op 0x%x.\n",
+			xdev->conf.name, hdr->op);
+		print_hex_dump(KERN_INFO, "mbox rcv: ",
+				DUMP_PREFIX_OFFSET, 16, 1, (void *)hdr,
+				64, false);
+		return -EINVAL;
+	break;
+	}
+
+	/* respond */
+	m_resp = qdma_mbox_msg_alloc(xdev, op);
+	if (!m_resp)
+		return -ENOMEM;
+
+	hdr_resp = &m_resp->hdr;
+
+	memcpy(m_resp->raw, m->raw, sizeof(u32) * MBOX_MSG_REG_MAX);
+
+	hdr_resp->op |= MBOX_MSG_OP_PF_MASK;
+	hdr_resp->dst = hdr->src;
+	hdr_resp->src = xdev->func_id;
+
+	hdr_resp->status = rv ? -1 : 0;
+
+	qdma_mbox_msg_send(xdev, m_resp, 0, 0, 0);
+
+	return rv;
+}
+#endif
+
+/*
+ * tx & rx workqueue handler
+ */
+static void mbox_tx_work(struct work_struct *work)
+{
+	struct qdma_mbox *mbox = container_of(work, struct qdma_mbox, tx_work);
+
+	spin_lock_bh(&mbox->list_lock);
+	while (!list_empty(&mbox->tx_todo_list)) {
+		struct mbox_msg *m = list_first_entry(&mbox->tx_todo_list,
+						struct mbox_msg, list);
+		if (mbox_hw_send(mbox, m) == 0) {
+			/* message sent */
+			list_del(&m->list);
+
+			/* response needed */
+			if (m->wait_resp)
+				list_add_tail(&m->list, &mbox->rx_pend_list);
+			else
+				qdma_mbox_msg_free(m);
+		} else
+			break;
+	}
+	spin_unlock_bh(&mbox->list_lock);
+}
+
+static inline void mbox_timer_stop(struct qdma_mbox *mbox)
+{
+	del_timer(&mbox->timer);
+}
+
+static inline void mbox_timer_start(struct qdma_mbox *mbox)
+{
+	struct timer_list *timer = &mbox->timer;
+
+	qdma_timer_start(timer, MBOX_TIMER_INTERVAL);
+}
+
+static void mbox_rx_work(struct work_struct *work)
+{
+	struct qdma_mbox *mbox = container_of(work, struct qdma_mbox, rx_work);
+	struct xlnx_dma_dev *xdev = mbox->xdev;
+	struct mbox_msg *m = &mbox->rx;
+	int rv;
+
+#ifndef __QDMA_VF__
+	/* clear the ack status */
+	mbox_pf_hw_clear_ack(mbox->xdev);
+#endif
+
+	rv = mbox_hw_rcv(mbox, m);
+	while (rv == 0) {
+		if (unlikely(xlnx_dma_device_flag_check(xdev,
+						XDEV_FLAG_OFFLINE)))
+			break;
+		else if (mbox_rcv_one_msg(mbox) == -EINVAL)
+			break;
+
+		rv = mbox_hw_rcv(mbox, m);
+	}
+
+	if (rv == -EPIPE) {
+		pr_info("%s: rcv'ed all zero mbox msg, status 0x%x=0x%x. disable mbox processing.\n",
+			xdev->conf.name, MBOX_BASE + MBOX_FN_STATUS,
+			__read_reg(xdev, MBOX_BASE + MBOX_FN_STATUS));
+		mbox_timer_stop(mbox);
+	} else if (xlnx_dma_device_flag_check(xdev, XDEV_FLAG_OFFLINE))
+		mbox_timer_stop(mbox);
+	else
+		mbox_timer_start(mbox);
+}
+
+/*
+ * non-interrupt mode: use timer for periodic checking of new messages
+ */
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 15, 0)
+static void mbox_rx_timer_handler(struct timer_list *t)
+#else
+static void mbox_rx_timer_handler(unsigned long arg)
+#endif
+{
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 15, 0)
+	struct qdma_mbox *mbox = from_timer(mbox, t, timer);
+#else
+	struct qdma_mbox *mbox = (struct qdma_mbox *)arg;
+#endif
+
+	queue_work(mbox->workq, &mbox->rx_work);
+}
+
+/*
+ * mailbox initialization and cleanup
+ */
+void qdma_mbox_stop(struct xlnx_dma_dev *xdev)
+{
+	mbox_timer_stop(&xdev->mbox);
+}
+
+void qdma_mbox_start(struct xlnx_dma_dev *xdev)
+{
+	mbox_timer_start(&xdev->mbox);
+}
+
+void qdma_mbox_cleanup(struct xlnx_dma_dev *xdev)
+{
+	struct qdma_mbox *mbox = &xdev->mbox;
+
+	mbox_timer_stop(mbox);
+
+	if (mbox->workq) {
+		flush_workqueue(mbox->workq);
+		destroy_workqueue(mbox->workq);
+	}
+}
+
+int qdma_mbox_init(struct xlnx_dma_dev *xdev)
+{
+	struct qdma_mbox *mbox = &xdev->mbox;
+	struct timer_list *timer = &mbox->timer;
+	struct mbox_msg m;
+	char name[80];
+
+	/* ack any received messages in the Q */
+#ifdef __QDMA_VF__
+	u32 v;
+
+	v = __read_reg(xdev, MBOX_BASE + MBOX_FN_STATUS);
+	if (!(v & M_MBOX_FN_STATUS_IN_MSG))
+		__write_reg(xdev, MBOX_BASE + MBOX_FN_CMD, F_MBOX_FN_CMD_RCV);
+#elif defined(CONFIG_PCI_IOV)
+	mbox_pf_hw_clear_ack(xdev);
+#endif
+
+	mbox->xdev = xdev;
+
+	spin_lock_init(&mbox->lock);
+	spin_lock_init(&mbox->list_lock);
+	INIT_LIST_HEAD(&mbox->tx_todo_list);
+	INIT_LIST_HEAD(&mbox->rx_pend_list);
+	INIT_WORK(&mbox->tx_work, mbox_tx_work);
+	INIT_WORK(&mbox->rx_work, mbox_rx_work);
+
+	snprintf(name, 80, "%s_mbox_wq", xdev->conf.name);
+		mbox->workq = create_singlethread_workqueue(name);
+
+		if (!mbox->workq) {
+			pr_info("%s OOM, mbox workqueue.\n", xdev->conf.name);
+			goto cleanup;
+		}
+
+	/* read & discard whatever in the incoming message buffer */
+#ifdef __QDMA_VF__
+	mbox_hw_rcv(mbox, &m);
+#else
+{
+	int i;
+
+	for (i = 0; i < 256; i++)
+		mbox_hw_rcv(mbox, &m);
+}
+#endif
+
+	qdma_timer_setup(timer, mbox_rx_timer_handler, mbox);
+
+	return 0;
+
+cleanup:
+	qdma_mbox_cleanup(xdev);
+	return -ENOMEM;
+}
diff --git a/QDMA/linux-kernel/libqdma/qdma_mbox.h b/QDMA/linux-kernel/libqdma/qdma_mbox.h
new file mode 100644
index 0000000..fbd2035
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/qdma_mbox.h
@@ -0,0 +1,415 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#ifndef __QDMA_MBOX_H__
+#define __QDMA_MBOX_H__
+
+#include "qdma_compat.h"
+#include "qdma_device.h"
+
+/**
+ * @file
+ * @brief This file contains the declarations for qdma mailbox apis
+ *
+ */
+/**
+ * mailbox registers
+ */
+#ifdef __QDMA_VF__
+#define MBOX_BASE		0x1000
+#else
+#define MBOX_BASE		0x2400
+#endif
+
+/** mailbox function status */
+#define MBOX_FN_STATUS			0x0
+/** shift value for mailbox function status in msg */
+#define		S_MBOX_FN_STATUS_IN_MSG	0
+/** mask value for mailbox function status in msg*/
+#define		M_MBOX_FN_STATUS_IN_MSG	0x1
+/** face value for mailbox function status in msg */
+#define		F_MBOX_FN_STATUS_IN_MSG	0x1
+
+/** shift value for out msg */
+#define		S_MBOX_FN_STATUS_OUT_MSG	1
+/** mask value for out msg */
+#define		M_MBOX_FN_STATUS_OUT_MSG	0x1
+/** face value for out msg */
+#define		F_MBOX_FN_STATUS_OUT_MSG	(1 << S_MBOX_FN_STATUS_OUT_MSG)
+/** shift value for status ack */
+#define		S_MBOX_FN_STATUS_ACK	2	/* PF only, ack status */
+/** mask value for status ack */
+#define		M_MBOX_FN_STATUS_ACK	0x1
+/** face value for status ack */
+#define		F_MBOX_FN_STATUS_ACK	(1 << S_MBOX_FN_STATUS_ACK)
+/** shift value for status src */
+#define		S_MBOX_FN_STATUS_SRC	4	/* PF only, source func.*/
+/** mask value for status src */
+#define		M_MBOX_FN_STATUS_SRC	0xFFF
+/** face value for status src */
+#define		G_MBOX_FN_STATUS_SRC(x)	\
+		(((x) >> S_MBOX_FN_STATUS_SRC) & M_MBOX_FN_STATUS_SRC)
+/** face value for mailbox function status */
+#define MBOX_FN_STATUS_MASK \
+		(F_MBOX_FN_STATUS_IN_MSG | \
+		 F_MBOX_FN_STATUS_OUT_MSG | \
+		 F_MBOX_FN_STATUS_ACK)
+
+/** mailbox function commands register */
+#define MBOX_FN_CMD			0x4
+/** shift value for send command */
+#define		S_MBOX_FN_CMD_SND	0
+/** mask value for send command */
+#define		M_MBOX_FN_CMD_SND	0x1
+/** face value for send command */
+#define		F_MBOX_FN_CMD_SND	(1 << S_MBOX_FN_CMD_SND)
+/** shift value for receive command */
+#define		S_MBOX_FN_CMD_RCV	1
+/** mask value for receive command */
+#define		M_MBOX_FN_CMD_RCV	0x1
+/** face value for receive command */
+#define		F_MBOX_FN_CMD_RCV	(1 << S_MBOX_FN_CMD_RCV)
+/** shift value for vf reset */
+#define		S_MBOX_FN_CMD_VF_RESET	3	/* TBD PF only: reset VF */
+/** mask value for vf reset */
+#define		M_MBOX_FN_CMD_VF_RESET	0x1
+/** mailbox isr vector register */
+#define MBOX_ISR_VEC			0x8
+/** shift value for isr vector */
+#define		S_MBOX_ISR_VEC		0
+/** mask value for isr vector */
+#define		M_MBOX_ISR_VEC		0x1F
+/** face value for isr vector */
+#define		V_MBOX_ISR_VEC(x)	((x) & M_MBOX_ISR_VEC)
+/** mailbox FN target register */
+#define MBOX_FN_TARGET			0xC
+/** shift value for FN target id */
+#define		S_MBOX_FN_TARGET_ID	0
+/** mask value for FN target id */
+#define		M_MBOX_FN_TARGET_ID	0xFFF
+/** face value for FN target id */
+#define		V_MBOX_FN_TARGET_ID(x)	((x) & M_MBOX_FN_TARGET_ID)
+/** mailbox isr enable register */
+#define MBOX_ISR_EN			0x10
+/** shift value for isr enable */
+#define		S_MBOX_ISR_EN		0
+/** mask value for isr enable */
+#define		M_MBOX_ISR_EN		0x1
+/** face value for isr enable */
+#define		F_MBOX_ISR_EN		0x1
+/** pf acknowledge base */
+#define MBOX_PF_ACK_BASE		0x20
+/** pf acknowledge step */
+#define MBOX_PF_ACK_STEP		4
+/** pf acknowledge count */
+#define MBOX_PF_ACK_COUNT		8
+/** mailbox incoming msg base */
+#define MBOX_IN_MSG_BASE		0x800
+/** mailbox outgoing msg base */
+#define MBOX_OUT_MSG_BASE		0xc00
+/** mailbox msg step */
+#define MBOX_MSG_STEP			4
+/** mailbox register max */
+#define MBOX_MSG_REG_MAX		32
+
+/**
+ * @struct - hw_descq_context
+ * @brief	queue context information
+ */
+struct hw_descq_context {
+	/** software descriptor context data: 4 data words */
+	u32 sw[5];
+	/** prefetch context data: 2 data words */
+	u32 prefetch[2];
+	/** queue completion context data: 4 data words */
+	u32 cmpt[5];
+	/** hardware descriptor  context data: 2 data words */
+	u32 hw[2];	/* for retrieve only */
+	/** C2H or H2C context: 1 data word */
+	u32 cr[1];	/* for retrieve only */
+	/** FMAP context data */
+	u32 fmap[2];
+};
+
+/**
+ * @struct - stm_descq_context
+ * @brief	queue stm information
+ */
+struct stm_descq_context {
+	/** STM data: 6 data words */
+	u32 stm[6];
+};
+
+/**
+ * mailbox messages
+ *
+ * NOTE: make sure the total message length is <= 128 bytes:
+ * mbox_msg_hdr: 4 bytes
+ * body: <= (128 - hdr) bytes
+ *
+ */
+
+/**
+ * mbox_msg_op - mailbox messages opcode: 1 ~ 0x1F
+ */
+#define MBOX_MSG_OP_PF_MASK	0x10
+enum mbox_msg_op {
+	/* 0x00 */ MBOX_OP_NOOP,
+	/** VF -> PF, request */
+	/* 0x01 */ MBOX_OP_BYE,		/** vf offline */
+	/* 0x02 */ MBOX_OP_HELLO,	/** vf online */
+
+	/* 0x03 */ MBOX_OP_FMAP,	/** FMAP programming request */
+	/* 0x04 */ MBOX_OP_CSR,		/** global CSR registers request */
+	/* 0x05 */ MBOX_OP_INTR_CTXT,	/** interrupt context programming */
+	/* 0x06 */ MBOX_OP_QCTXT_WRT,	/** queue context programming */
+	/* 0x07 */ MBOX_OP_QCTXT_RD,	/** queue context read */
+	/* 0x08 */ MBOX_OP_QCTXT_CLR,	/** queue context clear */
+	/* 0x09 */ MBOX_OP_QCTXT_INV,	/** queue context invalidate */
+	/* 0x0a */ MBOX_OP_QCONF,		/** queue context invalidate */
+
+	/** PF->VF: response */
+	/* 0x12 */ MBOX_OP_HELLO_RESP = 0x12,/** vf online */
+	/* 0x13 */ MBOX_OP_FMAP_RESP,	/** FMAP programming */
+	/* 0x14 */ MBOX_OP_CSR_RESP,	/** global CSR read */
+	/* 0x15 */ MBOX_OP_INTR_CTXT_RESP, /** interrupt context programming  */
+	/* 0x16 */ MBOX_OP_QCTXT_WRT_RESP, /** queue context programming */
+	/* 0x17 */ MBOX_OP_QCTXT_RD_RESP, /** queue context read */
+	/* 0x18 */ MBOX_OP_QCTXT_CLR_RESP, /** queue context clear */
+	/* 0x19 */ MBOX_OP_QCTXT_INV_RESP, /** queue context invalidate */
+	/* 0x1a */ MBOX_OP_QCONF_RESP,  /** queue context invalidate */
+
+	MBOX_OP_MAX
+};
+
+#define mbox_invalidate_msg(m)	{ (m)->hdr.op = MBOX_OP_NOOP; }
+
+/**
+ * @struct - mbox_msg_hdr
+ * @brief	mailbox message header
+ */
+struct mbox_msg_hdr {
+	u8 op;		/** opcode */
+	u16 src;		/** src function */
+	u16 dst;		/** dst function */
+	char status;	/** execution status */
+};
+
+/**
+ * @struct - mbox_msg_fmap
+ * @brief	FMAP programming command
+ */
+struct mbox_msg_fmap {
+	/** mailbox message header */
+	struct mbox_msg_hdr hdr;
+	/** start queue number in the queue range */
+	unsigned int qbase;
+	/** max queue number in the queue range(0-2k) */
+	unsigned int qmax;
+};
+
+/**
+ * @struct - mbox_msg_csr
+ * @brief	mailbox csr reading message
+ */
+struct mbox_msg_csr {
+	/** mailbox message header*/
+	struct mbox_msg_hdr hdr;
+	struct qdma_csr_info csr_info;
+};
+
+/**
+ * @struct - mbox_msg_intr_ctxt
+ * @brief	interrupt context mailbox message
+ */
+
+
+struct mbox_msg_intr_ctxt {
+	/** mailbox message header*/
+	struct mbox_msg_hdr hdr;
+	/** flag to indicate clear interrupt context*/
+	u16 clear:1;
+	/** filler variable*/
+	u16 filler:15;
+	/** start vector number*/
+	u8 vec_base;	/* 0 ~ 7 */
+	/** number of intr context rings be assigned for virtual function*/
+	u8 num_rings;	/* 1 ~ 8 */
+	/** ring index associated for each vector */
+	u32 ring_index_list[QDMA_NUM_DATA_VEC_FOR_INTR_CXT];
+	/** interrupt context data for all rings*/
+	u32 w[QDMA_NUM_DATA_VEC_FOR_INTR_CXT * 3];
+};
+
+/**
+ * @struct - mbox_msg_qctxt
+ * @brief queue context mailbox message header
+ */
+struct mbox_msg_qctxt {
+	/** mailbox message header*/
+	struct mbox_msg_hdr hdr;
+	/** flag to indicate to clear the queue context */
+	u8 clear:1;
+	/** flag to indicate to verify the queue context */
+	u8 verify:1;
+	/** queue direction */
+	u8 c2h:1;
+	/** queue mode */
+	u8 st:1;
+	/** flag to indicate to enable the interrupts */
+	u8 intr_en:1;
+	/** interrupt id */
+	u8 intr_id;
+	/** queue id */
+	unsigned short qid;
+	/** complete hw context */
+	struct hw_descq_context context;
+};
+
+/**
+ * @struct - mbox_msg
+ * @brief mailbox message
+ */
+struct mbox_msg {
+	struct work_struct work;	/** workqueue item */
+	struct list_head list;		/** message list */
+	qdma_wait_queue waitq;
+	struct kref refcnt;
+	u8 wait_resp;
+	u8 wait_op;
+	u8 rsvd[2];
+
+	union {
+		/** mailbox message header*/
+		struct mbox_msg_hdr hdr;
+		/** fmap mailbox message */
+		struct mbox_msg_fmap fmap;
+		/** interrupt context mailbox message */
+		struct mbox_msg_intr_ctxt intr_ctxt;
+		/** queue context mailbox message */
+		struct mbox_msg_qctxt qctxt;
+		/** global csr mailbox message */
+		struct mbox_msg_csr csr;
+		/** buffer to hold raw data between pf and vf */
+		u32 raw[MBOX_MSG_REG_MAX];
+	};
+};
+
+/**
+ * forward declaration of xlnx_dma_dev
+ */
+struct xlnx_dma_dev;
+/**
+ * @struct - qdma_mbox book keeping 
+ * @brief mailbox book keeping structure
+ */
+struct qdma_mbox {
+	/** common lock */
+	spinlock_t lock;
+	/** tx lock */
+	spinlock_t hw_tx_lock;
+	/** rx lock */
+	spinlock_t hw_rx_lock;
+	/** work queue */
+	struct workqueue_struct *workq;
+	/** pointer to device data */
+	struct xlnx_dma_dev *xdev;
+	
+	/** tx work_struct to pass data to tx work queue */
+	struct work_struct tx_work;
+	/** rx work_struct to pass data to rx work queue */
+	struct work_struct rx_work;
+	/** mbox rx message */
+	struct mbox_msg rx;
+	/** list lock */
+	spinlock_t list_lock;
+	/** list of messages waiting to be sent */
+	struct list_head tx_todo_list;
+	/** list of messages waiting for response */
+	struct list_head rx_pend_list;
+
+	/** timer list */
+	struct timer_list timer;
+
+};
+
+#define QDMA_MBOX_MSG_TIMEOUT_MS	10000 /* 10 sec*/
+/*****************************************************************************/
+/**
+ * qdma_mbox_init() - initialize qdma mailbox
+ *
+ * @param	xdev:	pointer to xlnx_dma_dev
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int qdma_mbox_init(struct xlnx_dma_dev *xdev);
+
+/*****************************************************************************/
+/**
+ * qdma_mbox_cleanup()	- cleanup resources of qdma mailbox
+ * qdma_mbox_stop()	- stop mailbox processing
+ * qdma_mbox_start()	- start mailbox processing
+ *
+ * @param	xdev:	pointer to xlnx_dma_dev
+ *
+ * @return	none
+ *****************************************************************************/
+void qdma_mbox_cleanup(struct xlnx_dma_dev *xdev);
+void qdma_mbox_stop(struct xlnx_dma_dev *xdev);
+void qdma_mbox_start(struct xlnx_dma_dev *xdev);
+
+/*****************************************************************************/
+/**
+ * qdma_mbox_msg_send() - handler to send a mailbox message
+ *
+ * @param	xdev:	pointer to xlnx_dma_dev
+ * @param	m:		mailbox message
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int qdma_mbox_msg_send(struct xlnx_dma_dev *xdev, struct mbox_msg *m,
+			bool wait_resp, u8 resp_op, unsigned int timeout_ms);
+
+/*****************************************************************************/
+/**
+ * qdma_mbox_msg_alloc() - allocate a mailbox message
+ *
+ * @param	xdev:	pointer to xlnx_dma_dev
+ *
+ * @return	0: success
+ * @return	NULL: failure
+ *****************************************************************************/
+struct mbox_msg *qdma_mbox_msg_alloc(struct xlnx_dma_dev *xdev,
+					enum mbox_msg_op op);
+
+/*****************************************************************************/
+/**
+ * __qdma_mbox_msg_free() - free the mailbox message
+ *
+ * @param	fname:	function name
+ * @param	m:		mailbox message
+ *
+ * @return	none
+ *****************************************************************************/
+void __qdma_mbox_msg_free(const char *fname, struct mbox_msg *m);
+#define qdma_mbox_msg_free(m)	__qdma_mbox_msg_free(__func__, m)
+
+#endif /* #ifndef __QDMA_MBOX_H__ */
diff --git a/QDMA/linux-kernel/libqdma/qdma_qconf_mgr.c b/QDMA/linux-kernel/libqdma/qdma_qconf_mgr.c
new file mode 100644
index 0000000..e58af8c
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/qdma_qconf_mgr.c
@@ -0,0 +1,608 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#include <linux/gfp.h>
+#include <linux/errno.h>
+#include <linux/types.h>
+#include <linux/string.h>
+#include <linux/slab.h>
+#include "libqdma_config.h"
+#include "qdma_qconf_mgr.h"
+
+/** for holding the Q configuration list */
+static struct qconf_entry_head qconf_list;
+/** mutex for protecting the qconf_list */
+static DEFINE_MUTEX(qconf_mutex);
+
+/* insert new to the position specified by previous */
+static inline void list_insert(struct list_head *new, struct list_head *prev)
+{
+	new->next = prev;
+	new->prev = prev->prev;
+	prev->prev->next = new;
+	prev->prev = new;
+}
+
+/*****************************************************************************/
+/**
+ * xdev_dump_qconf- dump the q configuration
+ * @param[in]	xdev:	device type to be used PF/VF
+ *
+ * @return
+ *****************************************************************************/
+void xdev_dump_qconf(u32 xdev)
+{
+	struct qconf_entry *_qconf = NULL;
+	struct qconf_entry *_tmp = NULL;
+	struct list_head *listhead;
+	const char *list_str[][8] = {{"vf"}, {"pf"}, {"vf-free"} };
+	int end = 0;
+
+	if (xdev == PCI_TYPE_PF)
+		listhead = &qconf_list.pf_list;
+	else
+		listhead = &qconf_list.vf_list;
+
+	pr_info("Dumping %s list\n", *list_str[xdev]);
+
+	list_for_each_entry_safe(_qconf, _tmp, listhead, list_head) {
+		end = ((int)(_qconf->qbase + _qconf->qmax)) - 1;
+		if (end < 0)
+			end = 0;
+		pr_info("func_id = %u, qmax = %u, qbase = %u~%u, cfg_state = %c\n",
+				_qconf->func_id, _qconf->qmax, _qconf->qbase,
+				end,
+				_qconf->cfg_state ? 'c' : 'i');
+	}
+}
+
+/*****************************************************************************/
+/**
+ * xdev_dump_freelist - dump the freelist
+ *
+ * @return
+ *****************************************************************************/
+void xdev_dump_freelist(void)
+{
+	struct free_entry *_free = NULL;
+	struct free_entry *_tmp = NULL;
+	struct list_head *listhead = &qconf_list.vf_free_list;
+
+	pr_info("Dumping free list\n");
+
+	list_for_each_entry_safe(_free, _tmp, listhead, list_head) {
+		pr_info("free-cnt = %u, qbase-next = %d\n",
+				_free->free, _free->next_qbase);
+	}
+}
+
+static struct qconf_entry *find_func_qentry(u32 xdev, u8 func_id)
+{
+	struct qconf_entry *_qconf = NULL;
+	struct qconf_entry *_tmp = NULL;
+	struct list_head *listhead = &qconf_list.vf_list;
+
+	if (xdev)
+		listhead = &qconf_list.pf_list;
+
+	list_for_each_entry_safe(_qconf, _tmp, listhead, list_head) {
+		if (_qconf->func_id == func_id)
+			return _qconf;
+	}
+
+	return NULL;
+}
+
+struct free_entry *create_free_entry(u32 qmax, u32 qbase)
+{
+	struct free_entry *_free_entry = NULL;
+
+	_free_entry = (struct free_entry *)kzalloc(sizeof(struct free_entry),
+			GFP_KERNEL);
+	if (!_free_entry)
+		return _free_entry;
+	_free_entry->free = qmax;
+	_free_entry->next_qbase = qbase;
+
+	return _free_entry;
+}
+
+static void cleanup_free_list(void)
+{
+	struct free_entry *_free_entry = NULL;
+	struct free_entry *_free_tmp = NULL;
+
+	mutex_lock(&qconf_mutex);
+	list_for_each_entry_safe(_free_entry, _free_tmp,
+			&qconf_list.vf_free_list, list_head) {
+		list_del(&_free_entry->list_head);
+		kfree(_free_entry);
+	}
+	mutex_unlock(&qconf_mutex);
+
+}
+
+/** initialize the free list */
+static int init_vf_free_list(void)
+{
+	struct free_entry *_free_entry = NULL;
+	u32 free = 0;
+	u32 next_qbase = 0;
+
+	free = qconf_list.vf_qmax;
+	next_qbase = qconf_list.vf_qbase;
+
+	cleanup_free_list();
+
+	_free_entry = create_free_entry(free, next_qbase);
+	mutex_lock(&qconf_mutex);
+	list_add_tail(&_free_entry->list_head, &qconf_list.vf_free_list);
+	mutex_unlock(&qconf_mutex);
+
+	return 0;
+}
+
+/** finds a first fit to accomodate the qmax.
+ * This function returns the qbase of the requested qmax
+ * if found
+ */
+static int find_first_fit(u32 qmax, u32 *qbase)
+{
+	struct free_entry *_free_entry = NULL;
+	struct free_entry *_tmp = NULL;
+	int err = 0;
+	u8 found = 0;
+
+	pr_debug("Get first fit %u\n", qmax);
+	mutex_lock(&qconf_mutex);
+	list_for_each_entry_safe(_free_entry, _tmp,
+			&qconf_list.vf_free_list, list_head) {
+		if (_free_entry->free >= qmax) {
+			*qbase = _free_entry->next_qbase;
+			_free_entry->free -= qmax;
+			_free_entry->next_qbase += qmax;
+			/** reduce cfgd_free */
+			qconf_list.qcnt_cfgd_free -= qmax;
+			found = 1;
+			break;
+		}
+	}
+	mutex_unlock(&qconf_mutex);
+
+	if (!found) {
+		pr_warn("No free slot found free/qmax = %u/%u\n",
+				_free_entry->free, qmax);
+		err = -EINVAL;
+	}
+
+	return err;
+}
+
+/** To defragment the free list if any. if it finds a continous
+ * range of qbases, merge both the entries into one.
+ */
+static int defrag_free_list(void)
+{
+	struct free_entry *_free = NULL;
+	struct free_entry *_tmp = NULL;
+	struct free_entry *_prev = NULL;
+	struct list_head *listhead = &qconf_list.vf_free_list;
+	int defrag_cnt = 0;
+
+	pr_debug("Defragmenting free list\n");
+	mutex_lock(&qconf_mutex);
+	list_for_each_entry_safe(_free, _tmp, listhead, list_head) {
+		if (_prev) {
+			/** is it a continous range?? */
+			if ((_prev->next_qbase + _prev->free)
+					== _free->next_qbase) {
+				_free->free += _prev->free;
+				_free->next_qbase = _prev->next_qbase;
+				list_del(&_prev->list_head);
+				kfree(_prev);
+				defrag_cnt++;
+			}
+		}
+		_prev = _free;
+	}
+	mutex_unlock(&qconf_mutex);
+
+	if (defrag_cnt)
+		pr_debug("Defragmented %d entries\n", defrag_cnt);
+
+	return defrag_cnt;
+}
+
+/**
+ * function to update the free list. First find the place to
+ * fit the free entry by comparing the qbases. Once found,
+ * insert the new free entry and insert it before the found one
+ */
+static int update_free_list(struct qconf_entry *entry)
+{
+	struct free_entry *_free_entry = NULL;
+	struct free_entry *_free_new = NULL;
+	struct free_entry *_tmp = NULL;
+	struct list_head *listhead = &qconf_list.vf_free_list;
+
+	/** consider only user configured values */
+	if (entry->cfg_state != Q_CONFIGURED)
+		return 0;
+
+	mutex_lock(&qconf_mutex);
+	list_for_each_entry_safe(_free_entry, _tmp, listhead, list_head) {
+		/** add it before the next bigger qbase */
+		if (entry->qbase < _free_entry->next_qbase) {
+			_free_new = create_free_entry(entry->qmax,
+					entry->qbase);
+			list_insert(&_free_new->list_head,
+					&_free_entry->list_head);
+			/** update the cfgd_free */
+			qconf_list.qcnt_cfgd_free += entry->qmax;
+			break;
+		}
+	}
+	mutex_unlock(&qconf_mutex);
+
+	defrag_free_list();
+
+	return 0;
+}
+
+/** grab from initial qconf, make qmax=0, qbase=0 cfg_state as zeroed*/
+static int grab_from_init_qconf(struct list_head *listhead, u8 func_id)
+{
+	struct qconf_entry *_qconf = NULL;
+	struct qconf_entry *_tmp = NULL;
+	int grab_cnt = 0;
+	int ret = 0;
+
+	mutex_lock(&qconf_mutex);
+	if (qconf_list.qcnt_init_used > qconf_list.qcnt_cfgd_free) {
+		grab_cnt = qconf_list.qcnt_init_used
+			- qconf_list.qcnt_cfgd_free;
+		qconf_list.qcnt_init_used -= grab_cnt;
+	}
+
+	ret = grab_cnt;
+
+	pr_debug("grab_cnt = %u init_used = %u cfgd_free = %u\n",
+			grab_cnt, qconf_list.qcnt_init_used,
+			qconf_list.qcnt_cfgd_free);
+
+	if (grab_cnt) {
+		list_for_each_entry_safe(_qconf, _tmp, listhead, list_head) {
+			/** already grabbed */
+			if (!_qconf->qmax || (_qconf->cfg_state != Q_INITIAL))
+				continue;
+			if (!grab_cnt--)
+				break;
+			_qconf->qmax = 0;
+			_qconf->qbase = 0;
+			/** if grabbing from the same func_id,
+			 * reduce the grab count by 1
+			 */
+			if (unlikely(_qconf->func_id == func_id))
+				ret -= 1;
+		}
+	}
+	mutex_unlock(&qconf_mutex);
+
+	return ret;
+}
+
+/*****************************************************************************/
+/**
+ * xdev_set_qmax() - sets the qmax value of VF device from virtfn/qdma/qmax
+ *
+ * @param[in]	xdev:		list type to be used PF/VF
+ * @param[in]	func_id:	func id to set the qmax
+ * @param[in]	qmax:		qmax value to set
+ * @param[out]	qbase:		pointer to return qbase value
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int xdev_set_qmax(u32 xdev, u8 func_id, u32 qmax, u32 *qbase)
+{
+	struct qconf_entry *func_entry = NULL;
+	struct list_head *listhead = &qconf_list.vf_list;
+	u32 num_qs_free = qconf_list.qcnt_cfgd_free;
+	int err = 0;
+	u32 _qbase = 0;
+	int grab_cnt = 0;
+	u32 cur_qbase = 0;
+	u32 cur_qmax = 0;
+
+	pr_debug("Setting qmax func_id = %u, qmax = %u\n", func_id, qmax);
+
+	if (xdev)
+		listhead = &qconf_list.pf_list;
+
+	func_entry = find_func_qentry(xdev, func_id);
+	if (!func_entry) {
+		pr_err("Set qmax request on non available device %u\n",
+				func_id);
+		return -EINVAL;
+	}
+	cur_qmax = func_entry->qmax;
+	cur_qbase = func_entry->qbase;
+	if (func_entry->cfg_state == Q_CONFIGURED) {
+		update_free_list(func_entry);
+		num_qs_free = qconf_list.qcnt_cfgd_free;
+	}
+
+	if (qmax > num_qs_free) {
+		pr_warn("No free qs!, requested/free = %u/%u\n",
+				qmax, num_qs_free);
+		return -EINVAL;
+	}
+
+	func_entry->qbase = 0;
+	err = find_first_fit(qmax, &_qbase);
+	if (err < 0) {
+		if (qmax)
+			pr_info("Not able to find a fit for qmax = %u\n",
+					qmax);
+		else
+			pr_info("0 q size, func_id = %u\n", func_id);
+
+		if (func_entry->cfg_state == Q_CONFIGURED) {
+			/** if failed to get a qbase, revert it to old values */
+			func_entry->qmax = cur_qmax;
+			func_entry->qbase = cur_qbase;
+		}
+
+		return err;
+	}
+
+	func_entry->cfg_state = Q_CONFIGURED;
+	func_entry->qmax = qmax;
+	func_entry->qbase = _qbase;
+	*qbase = _qbase;
+	mutex_lock(&qconf_mutex);
+	list_del(&func_entry->list_head);
+	list_add_tail(&func_entry->list_head, listhead);
+	mutex_unlock(&qconf_mutex);
+	grab_cnt = grab_from_init_qconf(listhead, func_id);
+
+	return grab_cnt;
+}
+
+/*****************************************************************************/
+/**
+ * xdev_del_qconf - delete the q configuration entry of funcid
+ *
+ * @param[in]	xdev:		device type to be used PF/VF
+ * @param[in]	func_id:	func id to set the qmax
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int xdev_del_qconf(u32 xdev, u8 func_id)
+{
+	struct qconf_entry *_qconf = NULL;
+
+	_qconf = find_func_qentry(xdev, func_id);
+	if (_qconf)
+		_qconf->cfg_state = Q_INITIAL;
+
+	return 0;
+}
+
+/*****************************************************************************/
+/**
+ * xdev_create_qconf - add the q configuration entry of funcid during hello
+ *
+ * @param[in]	xdev:		list type to be used PF/VF
+ * @param[in]	func_id:	func id to set the qmax
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+struct qconf_entry *xdev_create_qconf(u32 xdev, u8 func_id)
+{
+	struct qconf_entry *_qconf = NULL;
+	struct list_head *listhead = &qconf_list.vf_list;
+
+	pr_debug("Creating func_id = %u\n", func_id);
+	if (xdev)
+		listhead = &qconf_list.pf_list;
+
+	_qconf = (struct qconf_entry *)kzalloc(sizeof(struct qconf_entry),
+			GFP_KERNEL);
+	if (!_qconf)
+		return _qconf;
+
+	_qconf->func_id = func_id;
+	_qconf->cfg_state = Q_INITIAL;
+	if (qconf_list.qcnt_cfgd_free) {
+		/* _qconf->qmax = 1; */
+		/* _qconf->qbase = 2047 - qconf_list.qcnt_init_used; */
+		_qconf->qmax = 1;
+		_qconf->qbase = 0;
+	}
+
+	mutex_lock(&qconf_mutex);
+	if (qconf_list.qcnt_init_used < qconf_list.vf_qmax)
+		qconf_list.qcnt_init_used++;
+	list_add_tail(&_qconf->list_head, listhead);
+	mutex_unlock(&qconf_mutex);
+
+	atomic_inc(&qconf_list.vf_cnt);
+
+	return _qconf;
+}
+
+/*****************************************************************************/
+/**
+ * xdev_destroy_qconf - destroys the qconf entry during bye
+ *
+ * @param[in]	xdev:		device type to be used PF/VF
+ * @param[in]	func_id:	func id to set the qmax
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int xdev_destroy_qconf(u32 xdev, u8 func_id)
+{
+	struct qconf_entry *_qconf = NULL;
+
+	pr_debug("Destroying func_id = %u\n", func_id);
+	_qconf = find_func_qentry(xdev, func_id);
+	if (_qconf) {
+		mutex_lock(&qconf_mutex);
+		list_del(&_qconf->list_head);
+		mutex_unlock(&qconf_mutex);
+		update_free_list(_qconf);
+		if (_qconf->cfg_state == Q_INITIAL)
+			qconf_list.qcnt_init_used -= _qconf->qmax;
+		kfree(_qconf);
+		atomic_dec(&qconf_list.vf_cnt);
+	}
+
+	return 0;
+}
+
+/*****************************************************************************/
+/**
+ * xdev_qconf_init - initialize the q configuration structures
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int xdev_qconf_init(void)
+{
+	INIT_LIST_HEAD(&qconf_list.vf_list);
+	INIT_LIST_HEAD(&qconf_list.pf_list);
+	INIT_LIST_HEAD(&qconf_list.vf_free_list);
+	atomic_set(&qconf_list.vf_cnt, 0);
+	qconf_list.vf_qmax = TOTAL_VF_QS;
+	qconf_list.pf_qmax = TOTAL_QDMA_QS - qconf_list.vf_qmax;
+	qconf_list.vf_qbase = qconf_list.pf_qmax;
+	qconf_list.qcnt_cfgd_free = qconf_list.vf_qmax;
+	qconf_list.qcnt_init_free = qconf_list.vf_qmax;
+	qconf_list.qcnt_init_used = 0;
+	init_vf_free_list();
+
+	return 0;
+}
+
+/*****************************************************************************/
+/**
+ * xdev_qconf_cleanup - cleanup the q configuration
+ *
+ * @return
+ *****************************************************************************/
+void xdev_qconf_cleanup(void)
+{
+	struct qconf_entry *_qconf = NULL;
+	struct qconf_entry *_tmp = NULL;
+	struct list_head *listhead = &qconf_list.vf_list;
+
+	mutex_lock(&qconf_mutex);
+	list_for_each_entry_safe(_qconf, _tmp,
+			listhead, list_head) {
+		list_del(&_qconf->list_head);
+		kfree(_qconf);
+	}
+
+	_qconf = NULL;
+	listhead = &qconf_list.pf_list;
+	list_for_each_entry_safe(_qconf, _tmp,
+			listhead, list_head) {
+		list_del(&_qconf->list_head);
+		kfree(_qconf);
+	}
+	mutex_unlock(&qconf_mutex);
+
+	cleanup_free_list();
+}
+
+/*****************************************************************************/
+/**
+ * qconf_get_qmax	- get the current qmax value of VF/PF
+ *
+ * @param[in]	xdev:		device type to be used PF/VF
+ * @param[in]	card_id:	for differntiation the qdma card
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int qconf_get_qmax(u32 xdev, u32 card_id)
+{
+	int qmax = 0;
+
+	mutex_lock(&qconf_mutex);
+	if (xdev == PCI_TYPE_PF)
+		qmax = qconf_list.pf_qmax;
+	else if (xdev == PCI_TYPE_VF)
+		qmax = qconf_list.vf_qmax;
+	else
+		pr_err("Invalid q id type specified\n");
+	mutex_unlock(&qconf_mutex);
+
+	return qmax;
+}
+
+/*****************************************************************************/
+/**
+ * is_vfqmax_configurable	- checks if the vfqmax is configurable.
+ *
+ * @param[in]	xdev:		list type to be used PF/VF
+ * @param[in]	func_id:	func id to set the qmax
+ *
+ * @return	0: if not configurable
+ * @return	1: if configurable
+ *****************************************************************************/
+int is_vfqmax_configurable(void)
+{
+	return (atomic_read(&qconf_list.vf_cnt) == 0);
+}
+
+/*****************************************************************************/
+/**
+ * set_vf_qmax	- set the value for vf_qmax;
+ *
+ * @param[in]	qmax:	qmax value to set
+ *
+ * @return: last set qmax value before qmax.
+ *****************************************************************************/
+int set_vf_qmax(u32 qmax)
+{
+	u32 last_qmax = qconf_list.vf_qmax;
+
+	mutex_lock(&qconf_mutex);
+	qconf_list.vf_qmax = qmax;
+	qconf_list.pf_qmax = TOTAL_QDMA_QS - qconf_list.vf_qmax;
+	qconf_list.vf_qbase = qconf_list.pf_qmax;
+	qconf_list.qcnt_cfgd_free = qconf_list.vf_qmax;
+	qconf_list.qcnt_init_free = qconf_list.vf_qmax;
+	qconf_list.qcnt_init_used = 0;
+	mutex_unlock(&qconf_mutex);
+
+	pr_debug("vf_qmax/pf_qmax/vf_qbase/cfgd_free/init_free/init_used %u/%u/%u/%u/%u/%u\n",
+			qconf_list.vf_qmax, qconf_list.pf_qmax,
+			qconf_list.vf_qbase, qconf_list.qcnt_cfgd_free,
+			qconf_list.qcnt_init_free, qconf_list.qcnt_init_used);
+
+	init_vf_free_list();
+
+	return last_qmax;
+}
diff --git a/QDMA/linux-kernel/libqdma/qdma_qconf_mgr.h b/QDMA/linux-kernel/libqdma/qdma_qconf_mgr.h
new file mode 100644
index 0000000..a56f15c
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/qdma_qconf_mgr.h
@@ -0,0 +1,217 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#ifndef _Q_CONF_H_
+#define _Q_CONF_H_
+
+#include <linux/types.h>
+#include <linux/list.h>
+#include <linux/atomic.h>
+
+enum pci_dev_type {
+	/** device type is VF */
+	PCI_TYPE_VF,
+	/** device type is PF */
+	PCI_TYPE_PF,
+	/** unknown device type */
+	PCI_TYPE_INVAL
+};
+
+enum q_cfg_state {
+	/** initial state no qmax cfg done */
+	Q_INITIAL,
+	/** configured state qmax cfg already done */
+	Q_CONFIGURED,
+	/** unknown configuration state */
+	Q_INVALID
+};
+
+/* for free entry management */
+struct free_entry {
+	/** to connect to free_list */
+	struct list_head list_head;
+	/** next available qbase */
+	u32 next_qbase;
+	/** free qs available in this entry */
+	u32 free;
+	/** index of the entry */
+	u32 index;
+};
+
+/** q configuration entry */
+struct qconf_entry {
+	/** to connect to list head of */
+	struct list_head list_head;
+	/** idx of the device */
+	u32 idx;
+	/** qbase for func_id */
+	u32 qbase;
+	/** qmax for func_id */
+	u32 qmax;
+	/** current configuration state */
+	enum q_cfg_state cfg_state;
+	/** device type PF/VF */
+	enum pci_dev_type type;
+	/** func_id of the device */
+	u8 func_id;
+};
+
+/** for hodling the qconf_entry structure */
+struct qconf_entry_head {
+	/** for holding vf qconf_entry */
+	struct list_head vf_list;
+	/** for holding vf free_entry */
+	struct list_head vf_free_list;
+	/** for holding pf qconf_entry */
+	struct list_head pf_list;
+	/** for maximum qs for vf */
+	u32 vf_qmax;
+	/** for maximum qs for pf */
+	u32 pf_qmax;
+	/** for holding vf qconf_entry */
+	u32 vf_qbase;
+	/** number of vfs attached to all pfs */
+	atomic_t vf_cnt;
+	/** free count of qs which can be configured */
+	u32 qcnt_cfgd_free;
+	/** number of qs free for initial cfg devices */
+	u32 qcnt_init_free;
+	/** used by INITIAL state devices */
+	u32 qcnt_init_used;
+};
+
+/*****************************************************************************/
+/**
+ * xdev_set_qmax() - sets the qmax value of VF device from virtfn/qdma/qmax
+ *
+ * @param[in]	xdev:		list type to be used PF/VF
+ * @param[in]	func_id:	func id to set the qmax
+ * @param[in]	qmax:		qmax value to set
+ * @param[out]	qbase:		pointer to return qbase value
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int xdev_set_qmax(u32 xdev, u8 func_id, u32 qmax, u32 *qbase);
+
+/*****************************************************************************/
+/**
+ * xdev_del_qconf - delete the q configuration entry of funcid
+ *
+ * @param[in]	xdev:		device type to be used PF/VF
+ * @param[in]	func_id:	func id to set the qmax
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int xdev_del_qconf(u32 xdev, u8 func_id);
+
+/*****************************************************************************/
+/**
+ * xdev_create_qconf - add the q configuration entry of funcid during hello
+ *
+ * @param[in]	xdev:		list type to be used PF/VF
+ * @param[in]	func_id:	func id to set the qmax
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+struct qconf_entry *xdev_create_qconf(u32 xdev, u8 func_id);
+
+/*****************************************************************************/
+/**
+ * xdev_destroy_qconf - destroys the qconf entry during bye
+ *
+ * @param[in]	xdev:		device type to be used PF/VF
+ * @param[in]	func_id:	func id to set the qmax
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int xdev_destroy_qconf(u32 xdev, u8 func_id);
+
+/*****************************************************************************/
+/**
+ * xdev_qconf_init - initialize the q configuration structures
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int xdev_qconf_init(void);
+
+/*****************************************************************************/
+/**
+ * xdev_qconf_cleanup - cleanup the q configuration
+ *
+ * @return
+ *****************************************************************************/
+void xdev_qconf_cleanup(void);
+
+/*****************************************************************************/
+/**
+ * xdev_dump_freelist - dump the freelist
+ *
+ * @return
+ *****************************************************************************/
+void xdev_dump_freelist(void);
+
+/*****************************************************************************/
+/**
+ * xdev_dump_qconf- dump the q configuration
+ * @param[in]	xdev:	device type to be used PF/VF
+ *
+ * @return
+ *****************************************************************************/
+void xdev_dump_qconf(u32 xdev);
+
+/*****************************************************************************/
+/**
+ * set_vf_qmax	- set the value for vf_qmax;
+ *
+ * @param[in]	qmax:	qmax value to set
+ *
+ * @return: last set qmax value before qmax.
+ *****************************************************************************/
+int set_vf_qmax(u32 qmax);
+
+/*****************************************************************************/
+/**
+ * qconf_get_qmax	- get the current qmax value of VF/PF
+ *
+ * @param[in]	xdev:		device type to be used PF/VF
+ * @param[in]	card_id:	for differntiation the qdma card
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int qconf_get_qmax(u32 xdev, u32 card_id);
+
+/*****************************************************************************/
+/**
+ * is_vfqmax_configurable	- checks if the vfqmax is configurable.
+ *
+ * @param[in]	xdev:		list type to be used PF/VF
+ * @param[in]	func_id:	func id to set the qmax
+ *
+ * @return	0: if not configurable
+ * @return	1: if configurable
+ *****************************************************************************/
+int is_vfqmax_configurable(void);
+
+#endif
diff --git a/QDMA/linux-kernel/libqdma/qdma_regs.c b/QDMA/linux-kernel/libqdma/qdma_regs.c
new file mode 100644
index 0000000..6615cf7
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/qdma_regs.c
@@ -0,0 +1,1109 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#define pr_fmt(fmt)	KBUILD_MODNAME ":%s: " fmt, __func__
+
+#include "qdma_regs.h"
+
+#include <linux/version.h>
+#include <linux/delay.h>
+#include <linux/printk.h>
+#include <linux/stddef.h>
+#include <linux/string.h>
+
+#include "xdev.h"
+#include "qdma_device.h"
+#include "qdma_descq.h"
+#include "qdma_st_c2h.h"
+
+/*****************************************************************************/
+/**
+ * qdma_device_read_config_register() - read dma config. register
+ *
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	reg_addr:	register address
+ *
+ * @return	value of the config register
+ *****************************************************************************/
+unsigned int qdma_device_read_config_register(unsigned long dev_hndl,
+					unsigned int reg_addr)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+
+	if (!xdev)
+		return -EINVAL;
+
+	if (xdev_check_hndl(__func__, xdev->conf.pdev, dev_hndl) < 0)
+		return -EINVAL;
+
+	return readl(xdev->regs + reg_addr);
+}
+
+/*****************************************************************************/
+/**
+ * qdma_device_write_config_register() - write dma config. register
+ *
+ * @param[in]	dev_hndl:	dev_hndl returned from qdma_device_open()
+ * @param[in]	reg_addr:	register address
+ * @param[in]	value:		register value to be writen
+ *
+ *****************************************************************************/
+void qdma_device_write_config_register(unsigned long dev_hndl,
+				unsigned int reg_addr, unsigned int val)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+
+	if (!xdev)
+		return;
+
+	if (xdev_check_hndl(__func__, xdev->conf.pdev, dev_hndl) < 0)
+		return;
+
+	pr_debug("%s reg 0x%x, w 0x%08x.\n", xdev->conf.name, reg_addr, val);
+	writel(val, xdev->regs + reg_addr);
+}
+
+
+#ifdef __QDMA_VF__
+#include "qdma_mbox.h"
+
+int qdma_csr_read(struct xlnx_dma_dev *xdev, struct qdma_csr_info *csr_info,
+			unsigned int timeout_ms)
+{
+	struct mbox_msg *m = qdma_mbox_msg_alloc(xdev, MBOX_OP_CSR);
+	struct mbox_msg_hdr *hdr = m ? &m->hdr : NULL;
+	struct mbox_msg_csr *csr = m ? &m->csr : NULL;
+	int rv;
+
+	if (!m)
+		return -ENOMEM;
+
+	memcpy(&csr->csr_info, csr_info, sizeof(*csr_info));
+	rv = qdma_mbox_msg_send(xdev, m, 1, MBOX_OP_CSR_RESP, timeout_ms);
+	if (rv < 0)
+		goto free_msg;
+
+	rv = hdr->status;
+	if (rv < 0)
+		goto free_msg;
+
+	memcpy(csr_info, &csr->csr_info, sizeof(*csr_info));
+
+free_msg:
+	qdma_mbox_msg_free(m);
+	return rv;
+}
+
+static int send_csr_array_msg(struct xlnx_dma_dev *xdev,
+				unsigned int timeout_ms, enum csr_type type,
+				unsigned int *v, unsigned int *cs_acc)
+{
+	struct mbox_msg *m = qdma_mbox_msg_alloc(xdev, MBOX_OP_CSR);
+	struct mbox_msg_csr *csr = m ? &m->csr : NULL;
+	int i;
+	int rv = 0;
+
+	if (!m)
+		return -ENOMEM;
+
+	csr->csr_info.type = type;
+	rv = qdma_mbox_msg_send(xdev, m, 1, MBOX_OP_CSR_RESP, timeout_ms);
+	if (rv < 0)
+		goto err_out;
+
+	if (m->hdr.status) {
+		rv = m->hdr.status;
+		goto err_out;
+	}
+
+	for (i = 0; i < QDMA_GLOBAL_CSR_ARRAY_SZ; i++)
+		v[i] = csr->csr_info.array[i];
+	*cs_acc = csr->csr_info.cmpl_status_acc;
+
+err_out:
+	qdma_mbox_msg_free(m);
+	return rv;
+}
+
+int qdma_global_csr_get(unsigned long dev_hndl, struct global_csr_conf *csr)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+	int rv;
+
+	if (xdev_check_hndl(__func__, xdev->conf.pdev, dev_hndl) < 0)
+		return -EINVAL;
+
+	rv = send_csr_array_msg(xdev, QDMA_MBOX_MSG_TIMEOUT_MS,
+				QDMA_CSR_TYPE_RNGSZ, csr->ring_sz,
+				&csr->cmpl_status_acc);
+	if (rv < 0)
+		return rv;
+
+	rv = send_csr_array_msg(xdev, QDMA_MBOX_MSG_TIMEOUT_MS,
+				QDMA_CSR_TYPE_BUFSZ, csr->c2h_buf_sz,
+				&csr->cmpl_status_acc);
+	if (rv < 0)
+		return rv;
+
+	rv = send_csr_array_msg(xdev, QDMA_MBOX_MSG_TIMEOUT_MS,
+				QDMA_CSR_TYPE_TIMER_CNT, csr->c2h_timer_cnt,
+				&csr->cmpl_status_acc);
+	if (rv < 0)
+		return rv;
+
+	rv = send_csr_array_msg(xdev, QDMA_MBOX_MSG_TIMEOUT_MS,
+				QDMA_CSR_TYPE_CNT_TH, csr->c2h_cnt_th,
+				&csr->cmpl_status_acc);
+	if (rv < 0)
+		return rv;
+
+	return 0;
+}
+
+int qdma_global_csr_set(unsigned long dev_hndl, struct global_csr_conf *csr)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+
+	if (xdev_check_hndl(__func__, xdev->conf.pdev, dev_hndl) < 0)
+		return -EINVAL;
+
+	pr_info("VF %d setting csr NOT allowed.\n", xdev->func_id);
+	return -EINVAL;
+}
+
+#else /* ifdef __QDMA_VF__ */
+
+void qdma_csr_read_cmpl_status_acc(struct xlnx_dma_dev *xdev,
+		unsigned int *cs_acc)
+{
+	*cs_acc = __read_reg(xdev, QDMA_REG_GLBL_DSC_CFG) &
+			QDMA_REG_GLBL_DSC_CFG_CMPL_STATUS_ACC_MASK;
+}
+
+void qdma_csr_read_rngsz(struct xlnx_dma_dev *xdev, unsigned int *rngsz)
+{
+	int i;
+	unsigned int reg;
+
+	reg = QDMA_REG_GLBL_RNG_SZ_BASE;
+	for (i = 0; i < QDMA_GLOBAL_CSR_ARRAY_SZ;
+				i++, reg += QDMA_REG_SZ_IN_BYTES)
+		rngsz[i] =  __read_reg(xdev, reg);
+}
+
+int qdma_csr_write_rngsz(struct xlnx_dma_dev *xdev, unsigned int *rngsz)
+{
+	int i;
+	unsigned int reg;
+
+	reg = QDMA_REG_GLBL_RNG_SZ_BASE;
+	for (i = 0; i < QDMA_GLOBAL_CSR_ARRAY_SZ; i++,
+			reg += QDMA_REG_SZ_IN_BYTES)
+		__write_reg(xdev, reg, rngsz[i]);
+
+	/**
+	 *  Return Operation Successful
+	 */
+	return QDMA_OPERATION_SUCCESSFUL;
+}
+
+void qdma_csr_read_bufsz(struct xlnx_dma_dev *xdev, unsigned int *bufsz)
+{
+	int i;
+	unsigned int reg;
+
+	reg = QDMA_REG_C2H_BUF_SZ_BASE;
+	for (i = 0; i < QDMA_REG_C2H_BUF_SZ_COUNT; i++,
+			reg += QDMA_REG_SZ_IN_BYTES)
+		bufsz[i] =  __read_reg(xdev, reg);
+}
+
+int qdma_csr_write_bufsz(struct xlnx_dma_dev *xdev, unsigned int *bufsz)
+{
+	int i;
+	unsigned int reg;
+
+	reg = QDMA_REG_C2H_BUF_SZ_BASE;
+	for (i = 0; i < QDMA_REG_C2H_BUF_SZ_COUNT; i++,
+			reg += QDMA_REG_SZ_IN_BYTES)
+		__write_reg(xdev, reg, bufsz[i]);
+
+	/**
+	 *  Return Operation Successful
+	 */
+	return QDMA_OPERATION_SUCCESSFUL;
+}
+
+void qdma_csr_read_timer_cnt(struct xlnx_dma_dev *xdev, unsigned int *tmr_cnt)
+{
+	int i;
+	unsigned int reg;
+
+	reg = QDMA_REG_C2H_TIMER_CNT_BASE;
+	for (i = 0; i < QDMA_GLOBAL_CSR_ARRAY_SZ; i++,
+			reg += QDMA_REG_SZ_IN_BYTES)
+		tmr_cnt[i] = __read_reg(xdev, reg);
+}
+
+int qdma_csr_write_timer_cnt(struct xlnx_dma_dev *xdev, unsigned int *tmr_cnt)
+{
+	int i;
+	unsigned int reg;
+
+	reg = QDMA_REG_C2H_TIMER_CNT_BASE;
+	for (i = 0; i < QDMA_GLOBAL_CSR_ARRAY_SZ; i++,
+			reg += QDMA_REG_SZ_IN_BYTES)
+		__write_reg(xdev, reg, tmr_cnt[i]);
+	/**
+	 *  Return Operation Successful
+	 */
+	return QDMA_OPERATION_SUCCESSFUL;
+}
+
+void qdma_csr_read_cnt_thresh(struct xlnx_dma_dev *xdev, unsigned int *cnt_th)
+{
+	int i;
+	unsigned int reg;
+
+	reg = QDMA_REG_C2H_CNT_TH_BASE;
+	for (i = 0; i < QDMA_GLOBAL_CSR_ARRAY_SZ; i++,
+			reg += QDMA_REG_SZ_IN_BYTES)
+		cnt_th[i] = __read_reg(xdev, reg);
+}
+
+int qdma_csr_read(struct xlnx_dma_dev *xdev, struct qdma_csr_info *csr_info,
+			unsigned int timeout_ms)
+{
+	if (csr_info->idx_rngsz >= QDMA_GLOBAL_CSR_ARRAY_SZ ||
+		csr_info->idx_bufsz >= QDMA_GLOBAL_CSR_ARRAY_SZ ||
+		csr_info->idx_timer_cnt >= QDMA_GLOBAL_CSR_ARRAY_SZ ||
+		csr_info->idx_cnt_th >= QDMA_GLOBAL_CSR_ARRAY_SZ)
+		goto err_out;
+
+	csr_info->rngsz = __read_reg(xdev, csr_info->idx_rngsz * 4 +
+						QDMA_REG_GLBL_RNG_SZ_BASE);
+	csr_info->bufsz = __read_reg(xdev, csr_info->idx_bufsz * 4 +
+						QDMA_REG_C2H_BUF_SZ_BASE);
+	csr_info->timer_cnt = __read_reg(xdev, csr_info->idx_timer_cnt * 4 +
+						QDMA_REG_C2H_TIMER_CNT_BASE);
+	csr_info->cnt_th = __read_reg(xdev, csr_info->idx_cnt_th * 4 +
+						QDMA_REG_C2H_CNT_TH_BASE);
+	csr_info->cmpl_status_acc = __read_reg(xdev,
+				QDMA_REG_GLBL_DSC_CFG) &
+				QDMA_REG_GLBL_DSC_CFG_CMPL_STATUS_ACC_MASK;
+
+	switch (csr_info->type) {
+	case QDMA_CSR_TYPE_NONE:
+		break;
+	case QDMA_CSR_TYPE_RNGSZ:
+		qdma_csr_read_rngsz(xdev, csr_info->array);
+		break;
+	case QDMA_CSR_TYPE_BUFSZ:
+		qdma_csr_read_bufsz(xdev, csr_info->array);
+		break;
+	case QDMA_CSR_TYPE_TIMER_CNT:
+		qdma_csr_read_timer_cnt(xdev, csr_info->array);
+		break;
+	case QDMA_CSR_TYPE_CNT_TH:
+		qdma_csr_read_cnt_thresh(xdev, csr_info->array);
+		break;
+	default:
+		goto err_out;
+	}
+
+	return 0;
+
+err_out:
+	pr_info("%s, type/idx invalid: 0x%x, %u,%u,%u,%u.\n",
+		xdev->conf.name, csr_info->type, csr_info->idx_rngsz,
+		csr_info->idx_bufsz, csr_info->idx_timer_cnt,
+		csr_info->idx_cnt_th);
+	return -EINVAL;
+}
+
+int qdma_csr_write_cnt_thresh(struct xlnx_dma_dev *xdev, unsigned int *cnt_th)
+{
+	int i;
+	unsigned int reg;
+
+	reg = QDMA_REG_C2H_CNT_TH_BASE;
+	for (i = 0; i < QDMA_GLOBAL_CSR_ARRAY_SZ; i++,
+			reg += QDMA_REG_SZ_IN_BYTES)
+		__write_reg(xdev, reg, cnt_th[i]);
+
+	/**
+	 *  Return Operation Successful
+	 */
+	return QDMA_OPERATION_SUCCESSFUL;
+}
+
+int qdma_global_csr_get(unsigned long dev_hndl, struct global_csr_conf *csr)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+
+	if (xdev_check_hndl(__func__, xdev->conf.pdev, dev_hndl) < 0)
+		return -EINVAL;
+
+	qdma_csr_read_cmpl_status_acc(xdev, &csr->cmpl_status_acc);
+	qdma_csr_read_rngsz(xdev, csr->ring_sz);
+	qdma_csr_read_bufsz(xdev, csr->c2h_buf_sz);
+	qdma_csr_read_timer_cnt(xdev, csr->c2h_timer_cnt);
+	qdma_csr_read_cnt_thresh(xdev, csr->c2h_cnt_th);
+
+	return 0;
+}
+
+int qdma_global_csr_set(unsigned long dev_hndl, struct global_csr_conf *csr)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+	int i;
+	unsigned int reg;
+
+	if (xdev_check_hndl(__func__, xdev->conf.pdev, dev_hndl) < 0)
+		return -EINVAL;
+
+	if (xdev->func_id) {
+		pr_info("func_id %d, csr setting not allowed.\n",
+			xdev->func_id);
+		return -EINVAL;
+	}
+
+	reg = __read_reg(xdev, QDMA_REG_GLBL_DSC_CFG);
+	reg &= ~QDMA_REG_GLBL_DSC_CFG_CMPL_STATUS_ACC_MASK;
+	reg |= csr->cmpl_status_acc;
+	__write_reg(xdev, QDMA_REG_GLBL_DSC_CFG, reg);
+
+	reg = QDMA_REG_GLBL_RNG_SZ_BASE;
+	for (i = 0; i < QDMA_GLOBAL_CSR_ARRAY_SZ; i++,
+					reg += QDMA_REG_SZ_IN_BYTES)
+		__write_reg(xdev, reg, csr->ring_sz[i]);
+
+	reg = QDMA_REG_C2H_BUF_SZ_BASE;
+	for (i = 0; i < QDMA_REG_C2H_BUF_SZ_COUNT; i++,
+					reg += QDMA_REG_SZ_IN_BYTES)
+		__write_reg(xdev, reg, csr->c2h_buf_sz[i]);
+
+	reg = QDMA_REG_C2H_TIMER_CNT_BASE;
+	for (i = 0; i < QDMA_GLOBAL_CSR_ARRAY_SZ; i++,
+					reg += QDMA_REG_SZ_IN_BYTES)
+		__write_reg(xdev, reg, csr->c2h_timer_cnt[i]);
+
+	reg = QDMA_REG_C2H_CNT_TH_BASE;
+	for (i = 0; i < QDMA_GLOBAL_CSR_ARRAY_SZ; i++,
+					reg += QDMA_REG_SZ_IN_BYTES)
+		__write_reg(xdev, reg, csr->c2h_cnt_th[i]);
+
+	return 0;
+}
+#endif
+
+/*
+ * hw_monitor_reg() - polling a register repeatly until
+ *	(the register value & mask) == val or time is up
+ *
+ * return -EBUSY if register value didn't match, 1 other wise
+ */
+int hw_monitor_reg(struct xlnx_dma_dev *xdev, unsigned int reg, u32 mask,
+		u32 val, unsigned int interval_us, unsigned int timeout_us)
+{
+	int count;
+	u32 v;
+
+	if (!interval_us)
+		interval_us = QDMA_REG_POLL_DFLT_INTERVAL_US;
+	if (!timeout_us)
+		timeout_us = QDMA_REG_POLL_DFLT_TIMEOUT_US;
+
+	count = timeout_us / interval_us;
+
+	do {
+		v = __read_reg(xdev, reg);
+		if ((v & mask) == val)
+			return 1;
+		udelay(interval_us);
+	} while (--count);
+
+	v = __read_reg(xdev, reg);
+	if ((v & mask) == val)
+		return 1;
+
+	pr_debug("%s, reg 0x%x, timed out %uus, 0x%x & 0x%x != 0x%x.\n",
+		xdev->conf.name, reg, timeout_us, v, mask, val);
+
+	return -EBUSY;
+}
+
+int qdma_device_flr_quirk_set(struct pci_dev *pdev, unsigned long dev_hndl)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+
+	if (!xdev->flr_prsnt) {
+		pr_info("FLR not present, therefore skipping FLR reset\n");
+		return 0;
+	}
+
+	if (!dev_hndl || xdev_check_hndl(__func__, pdev, dev_hndl) < 0)
+		return -EINVAL;
+
+	__write_reg(xdev, QDMA_REG_FLR_STATUS, 0x1);
+	return 0;
+}
+
+int qdma_device_flr_quirk_check(struct pci_dev *pdev, unsigned long dev_hndl)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+	int rv;
+
+	if (!xdev->flr_prsnt) {
+		pr_info("FLR not present, therefore skipping FLR reset status\n");
+		return 0;
+	}
+
+	if (!dev_hndl || xdev_check_hndl(__func__, pdev, dev_hndl) < 0)
+		return -EINVAL;
+
+	/* wait for it to become zero */
+	rv = hw_monitor_reg(xdev, QDMA_REG_FLR_STATUS, 0x1, 0, 500, 500*1000);
+	if (rv < 0)
+		pr_info("%s, flr status stuck 0x%x.\n", xdev->conf.name,
+			__read_reg(xdev, QDMA_REG_FLR_STATUS));
+
+	return 0;
+}
+
+int qdma_device_flr_quirk(struct pci_dev *pdev, unsigned long dev_hndl)
+{
+	int rv;
+
+	rv = qdma_device_flr_quirk_set(pdev, dev_hndl);
+	if (rv  < 0)
+		return rv;
+
+	return qdma_device_flr_quirk_check(pdev, dev_hndl);
+}
+
+
+int qdma_device_version_info(unsigned long dev_hndl,
+		struct qdma_version_info *version_info)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+	int reg_val = 0;
+
+	if (!xdev || !version_info)
+		return -EINVAL;
+
+	reg_val = __read_reg(xdev, QDMA_VERSION_REG);
+
+	version_info->vivado_release_id =
+			(reg_val & M_VIVADO_RELEASE_ID_MASK) >>
+			S_VIVADO_RELEASE_ID_SHIFT;
+	version_info->rtl_version =
+			(reg_val & M_RTL_VERSION_MASK) >> S_RTL_VERSION_SHIFT;
+	version_info->everest_ip =
+			(reg_val & M_EVEREST_IP_MASK) >> S_EVEREST_IP_SHIFT;
+
+	switch (version_info->rtl_version) {
+	case RTL1_VERSION:
+		sprintf(version_info->rtl_version_str, "RTL1");
+		break;
+	default:
+		sprintf(version_info->rtl_version_str, "RTL2");
+		break;
+	}
+
+	switch (version_info->vivado_release_id) {
+	case VIVADO_RELEASE_2018_3:
+		sprintf(version_info->vivado_release_str, "2018.3");
+		break;
+	default:
+		sprintf(version_info->vivado_release_str, "2018.2");
+		break;
+	}
+
+	if (version_info->everest_ip)
+		sprintf(version_info->everest_ip_str, "HARD_IP");
+	else
+		sprintf(version_info->everest_ip_str, "SOFT_IP");
+
+	return 0;
+}
+
+#ifndef __QDMA_VF__
+static int qdma_device_num_pfs_get(struct xlnx_dma_dev *xdev)
+{
+	int count = 0;
+	int reg_val = 0;
+
+	reg_val = __read_reg(xdev, QDMA_REG_GLBL_PF_BARLITE_INT);
+
+	if ((reg_val & PF_BARLITE_INT_0_MASK) >> PF_BARLITE_INT_0_SHIFT)
+		count++;
+	if ((reg_val & PF_BARLITE_INT_1_MASK) >> PF_BARLITE_INT_1_SHIFT)
+		count++;
+	if ((reg_val & PF_BARLITE_INT_2_MASK) >> PF_BARLITE_INT_2_SHIFT)
+		count++;
+	if ((reg_val & PF_BARLITE_INT_3_MASK) >> PF_BARLITE_INT_3_SHIFT)
+		count++;
+
+	xdev->pf_count = count;
+	return count;
+}
+
+void qdma_device_attributes_get(struct xlnx_dma_dev *xdev)
+{
+	int mm_c2h_flag = 0;
+	int mm_h2c_flag = 0;
+	int st_c2h_flag = 0;
+	int st_h2c_flag = 0;
+	unsigned int v1 =  __read_reg(xdev, QDMA_REG_GLBL_QMAX);
+	int v2 = qdma_device_num_pfs_get(xdev);
+
+	xdev->conf.qsets_max = v1 / v2;
+
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 8, 0)
+	v2 = pci_sriov_get_totalvfs(xdev->conf.pdev);
+#else
+	v2 = QDMA_VF_MAX;
+#endif
+	if ((v2 * QDMA_Q_PER_VF_MAX) > xdev->conf.qsets_max) {
+		pr_warn("%s, max vf %d, per vf Q %u, manual setting needed.\n",
+			xdev->conf.name, v2, QDMA_Q_PER_VF_MAX);
+		xdev->conf.qsets_max = 0;
+	} else
+		xdev->conf.qsets_max -= v2 * QDMA_Q_PER_VF_MAX;
+
+	/** changed to static allocation, VF qs are allocated
+	 * at the bottom. Function used only during initial
+	 * allocation, VFs is different for different pfs
+	 * so allocation of qs not uniform.
+	 */
+	if (xdev->conf.qsets_max != MAX_QS_PER_PF)
+		xdev->conf.qsets_max = MAX_QS_PER_PF;
+
+	 /* TODO : __read_reg(xdev, QDMA_REG_GLBL_MM_ENGINES);*/
+	xdev->mm_channel_max = 1;
+	xdev->flr_prsnt = (__read_reg(xdev, QDMA_REG_GLBL_MISC_CAP) &
+				MISC_CAP_FLR_PRESENT_MASK) >>
+				MISC_CAP_FLR_PRESENT_SHIFT;
+
+	v1 = __read_reg(xdev, QDMA_REG_GLBL_MDMA_CHANNEL);
+	mm_c2h_flag = (v1 & MDMA_CHANNEL_MM_C2H_ENABLED_MASK) ? 1 : 0;
+	mm_h2c_flag = (v1 & MDMA_CHANNEL_MM_H2C_ENABLED_MASK) ? 1 : 0;
+	st_c2h_flag = (v1 & MDMA_CHANNEL_ST_C2H_ENABLED_MASK) ? 1 : 0;
+	st_h2c_flag = (v1 & MDMA_CHANNEL_ST_H2C_ENABLED_MASK) ? 1 : 0;
+
+	xdev->mm_mode_en = (mm_c2h_flag && mm_h2c_flag) ? 1 : 0;
+	xdev->st_mode_en = (st_c2h_flag && st_h2c_flag) ? 1 : 0;
+
+	if (xdev->stm_en)
+		xdev->conf.bar_num_stm = STM_BAR;
+
+	pr_info("%s: present flr %d, mm %d, st %d.\n",
+		xdev->conf.name, xdev->flr_prsnt, xdev->mm_mode_en,
+		xdev->st_mode_en);
+}
+
+void hw_set_global_csr(struct xlnx_dma_dev *xdev)
+{
+	int i;
+	unsigned int reg;
+
+	reg = ((0x03 << QDMA_REG_GLBL_DSC_CFG_MAX_DESC_FETCH_SHIFT) | 0x05);
+	__write_reg(xdev, QDMA_REG_GLBL_DSC_CFG, reg);
+
+	reg = QDMA_REG_GLBL_RNG_SZ_BASE;
+	for (i = 0; i < QDMA_REG_GLBL_RNG_SZ_COUNT; i++,
+			reg += QDMA_REG_SZ_IN_BYTES)
+		__write_reg(xdev, reg, (RNG_SZ_DFLT << i) + 1);
+
+	reg = QDMA_REG_C2H_BUF_SZ_BASE;
+	for (i = 0; i < QDMA_REG_C2H_BUF_SZ_COUNT; i++,
+			reg += QDMA_REG_SZ_IN_BYTES)
+		__write_reg(xdev, reg, C2H_BUF_SZ_DFLT);
+
+	reg = QDMA_REG_C2H_TIMER_CNT_BASE;
+	for (i = 0; i < QDMA_REG_C2H_TIMER_CNT_COUNT; i++,
+			reg += QDMA_REG_SZ_IN_BYTES)
+		__write_reg(xdev, reg, C2H_TIMER_CNT_DFLT << i);
+
+	reg = QDMA_REG_C2H_CNT_TH_BASE;
+	for (i = 0; i < QDMA_REG_C2H_CNT_TH_COUNT; i++,
+			reg += QDMA_REG_SZ_IN_BYTES)
+		__write_reg(xdev, reg, C2H_CNT_TH_DFLT << i);
+
+}
+
+int qdma_trq_c2h_config(struct xlnx_dma_dev *xdev)
+{
+	unsigned int reg;
+	unsigned int dsc_cache_depth;
+	unsigned int cpml_coal_depth;
+
+	dsc_cache_depth = __read_reg(xdev, QDMA_C2H_PFCH_CACHE_DEPTH);
+	dsc_cache_depth >>= 2;
+	reg = (0x100 << QDMA_C2H_PFCH_CFG_PFCH_FL_TH_SHIFT) |
+			(8 << QDMA_C2H_PFCH_CFG_NUM_PFCH_SHIFT) |
+			(dsc_cache_depth << QDMA_C2H_PFCH_CFG_PFCH_QCNT_SHIFT) |
+			((dsc_cache_depth - 2) <<
+					QDMA_C2H_PFCH_CFG_EVT_QCNT_TH_SHIFT);
+	__write_reg(xdev, QDMA_C2H_PFCH_CFG, reg);
+
+	cpml_coal_depth = __read_reg(xdev, QDMA_C2H_CMPT_COAL_BUF_DEPTH);
+	reg = (cpml_coal_depth << QDMA_C2H_CMPT_COAL_CFG_MAX_BUF_SZ_SHIFT) |
+			(25 << QDMA_C2H_CMPT_COAL_CFG_TICK_VAL_SHIFT) |
+			(5 << QDMA_C2H_CMPT_COAL_CFG_TICK_CNT_SHIFT);
+	__write_reg(xdev, QDMA_C2H_CMPT_COAL_CFG, reg);
+	__write_reg(xdev, QDMA_C2H_INT_TIMER_TICK, 25);
+	__write_reg(xdev, QDMA_H2C_DATA_THRESHOLD, 0x14000);
+
+	return 0;
+}
+
+void hw_mm_channel_enable(struct xlnx_dma_dev *xdev, int channel, bool c2h)
+{
+	int reg = (c2h) ?  QDMA_REG_H2C_MM_CONTROL_BASE :
+			QDMA_REG_C2H_MM_CONTROL_BASE;
+
+	__write_reg(xdev, reg + channel * QDMA_REG_MM_CONTROL_STEP,
+			 QDMA_REG_MM_CONTROL_RUN);
+}
+
+void hw_mm_channel_disable(struct xlnx_dma_dev *xdev, int channel, bool c2h)
+{
+	int reg = (c2h) ?  QDMA_REG_H2C_MM_CONTROL_BASE :
+			QDMA_REG_C2H_MM_CONTROL_BASE;
+
+	__write_reg(xdev, reg + channel * QDMA_REG_MM_CONTROL_STEP, 0U);
+}
+
+int hw_set_fmap(struct xlnx_dma_dev *xdev, u16 func_id, unsigned int qbase,
+		unsigned int qmax)
+{
+	struct hw_descq_context context;
+	int rv;
+	u32 *data = NULL;
+
+	memset(&context, 0, sizeof(context));
+
+	data = context.fmap;
+	data[1] = V_FMAP_W1_QMAX(qmax);
+	data[0] = V_FMAP_W0_QBASE(qbase);
+
+	pr_debug("%s, FMAP 0x%08x 0x%08x\n",
+			xdev->conf.name, data[1], data[0]);
+
+	rv = hw_indirect_ctext_prog(xdev, func_id, QDMA_CTXT_CMD_WR,
+			QDMA_CTXT_SEL_FMAP, context.fmap, 2, 1);
+	if (rv < 0)
+		return rv;
+
+	return 0;
+}
+
+int hw_read_fmap(struct xlnx_dma_dev *xdev, u16 func_id, unsigned int *qbase,
+		unsigned int *qmax)
+{
+	struct hw_descq_context context;
+	int rv;
+
+	memset(&context, 0, sizeof(context));
+
+	rv = hw_indirect_ctext_prog(xdev, func_id, QDMA_CTXT_CMD_RD,
+			QDMA_CTXT_SEL_FMAP, context.fmap, 2, 1);
+	if (rv < 0)
+		return rv;
+
+	*qbase = context.fmap[0];
+	*qmax = context.fmap[1];
+
+	pr_debug("%s, FMAP qbase %d qmax %d\n",
+			xdev->conf.name, *qbase, *qmax);
+
+	return 0;
+}
+
+int hw_indirect_stm_prog(struct xlnx_dma_dev *xdev, unsigned int qid_hw,
+			 u8 fid, enum ind_stm_cmd_op op,
+			 enum ind_stm_addr addr, u32 *data,
+			 unsigned int cnt, bool clear)
+{
+	unsigned int reg;
+	u32 v;
+	int i;
+	int rv = 0;
+
+	spin_lock(&xdev->hw_prg_lock);
+	pr_debug("qid_hw 0x%x, op 0x%x, addr 0x%x, data 0x%p,%u\n",
+		 qid_hw, op, addr, data, cnt);
+
+	if ((op == STM_CSR_CMD_WR) || (op == STM_CSR_CMD_RD)) {
+		if (unlikely(!cnt || cnt > 6)) {
+			pr_warn("Q 0x%x, op 0x%x, addr 0x%x, cnt %u/%d.\n",
+				qid_hw, op, addr, cnt,
+				6);
+			rv = -EINVAL;
+			goto fn_ret;
+		}
+
+		if (unlikely(!data)) {
+			pr_warn("Q 0x%x, op 0x%x, sel 0x%x, data NULL.\n",
+				qid_hw, op, addr);
+			rv = -EINVAL;
+			goto fn_ret;
+		}
+
+		if (op == STM_CSR_CMD_WR) {
+			switch (addr) {
+			case STM_IND_ADDR_Q_CTX_H2C:
+				reg = STM_REG_BASE + STM_REG_IND_CTXT_DATA_BASE;
+
+				for (i = 0; i < cnt; i++,
+						reg += QDMA_REG_SZ_IN_BYTES) {
+					pr_debug("%s: i = %d; reg = 0x%x; data[%d] = 0x%x\n",
+						 __func__, i, reg, i, data[i]);
+					writel(data[i], xdev->stm_regs + reg);
+				}
+				pr_debug("%s: data[5] for h2c-ctxt is: 0x%x\n",
+					 __func__, data[5]);
+				/* write context valid bit */
+				writel(data[5], xdev->stm_regs + STM_REG_BASE +
+				       STM_REG_IND_CTXT_DATA5);
+				break;
+
+			case STM_IND_ADDR_Q_CTX_C2H:
+				reg = STM_REG_BASE + STM_REG_IND_CTXT_DATA3;
+
+				for (i = 0; i < cnt; i++,
+						reg += QDMA_REG_SZ_IN_BYTES) {
+					pr_debug("%s: i = %d; reg = 0x%x; data[%d] = 0x%x\n",
+						 __func__, i, reg, i, data[i]);
+					writel(data[i], xdev->stm_regs + reg);
+				}
+				pr_debug("%s: data[5] for c2h-ctxt is: 0x%x\n",
+					 __func__, data[5]);
+				/* write context valid bit */
+				writel(data[5], xdev->stm_regs + STM_REG_BASE +
+				       STM_REG_IND_CTXT_DATA5);
+				break;
+
+			case STM_IND_ADDR_H2C_MAP:
+				reg = STM_REG_BASE +
+					STM_REG_IND_CTXT_DATA_BASE + (4 * 4);
+				pr_debug("%s: reg = 0x%x; data = 0x%x\n",
+					 __func__, reg, qid_hw);
+				if (clear)
+					writel(0, xdev->stm_regs + reg);
+				else
+					writel(qid_hw, xdev->stm_regs + reg);
+				break;
+
+			case STM_IND_ADDR_C2H_MAP: {
+				u32 c2h_map;
+
+				reg = STM_REG_BASE + STM_REG_C2H_DATA8;
+				c2h_map = (clear ? 0 : qid_hw) |
+					  (DESC_SZ_8B << 11);
+				pr_debug("%s: reg = 0x%x; data = 0x%x\n",
+					 __func__, reg, c2h_map);
+				writel(c2h_map, xdev->stm_regs + reg);
+				break;
+				}
+
+			default:
+				pr_err("%s: not supported address..\n",
+				       __func__);
+				rv = -EINVAL;
+				goto fn_ret;
+			}
+		}
+	}
+
+	v = (qid_hw << S_STM_CMD_QID) | (op << S_STM_CMD_OP) |
+		(addr << S_STM_CMD_ADDR) | (fid << S_STM_CMD_FID);
+
+	pr_debug("ctxt_cmd reg 0x%x, qid 0x%x, op 0x%x, fid 0x%x addr 0x%x -> 0x%08x.\n",
+		 STM_REG_BASE + STM_REG_IND_CTXT_CMD, qid_hw, op, fid, addr, v);
+	writel(v, xdev->stm_regs + STM_REG_BASE + STM_REG_IND_CTXT_CMD);
+
+	if (op == STM_CSR_CMD_RD) {
+		switch (addr) {
+		case STM_IND_ADDR_Q_CTX_C2H:
+		case STM_IND_ADDR_Q_CTX_H2C:
+		case STM_IND_ADDR_FORCED_CAN:
+		case STM_IND_ADDR_H2C_MAP:
+			reg = STM_REG_BASE + STM_REG_IND_CTXT_DATA_BASE;
+			for (i = 0; i < cnt;
+					i++, reg += QDMA_REG_SZ_IN_BYTES) {
+				data[i] = readl(xdev->stm_regs + reg);
+
+				pr_debug("%s: reg = 0x%x; data[%d] = 0x%x\n",
+					 __func__, reg, i, data[i]);
+			}
+			/* read context valid bits */
+			data[5] = readl(xdev->stm_regs + STM_REG_BASE +
+					STM_REG_IND_CTXT_DATA5);
+			break;
+
+		case STM_IND_ADDR_C2H_MAP:
+			reg = STM_REG_BASE + STM_REG_C2H_DATA8;
+			data[0] = readl(xdev->stm_regs + reg);
+			break;
+
+		default:
+			pr_err("%s: not supported address..\n",
+			       __func__);
+			rv = -EINVAL;
+		}
+	}
+
+fn_ret:
+	spin_unlock(&xdev->hw_prg_lock);
+	return rv;
+}
+
+int hw_indirect_ctext_prog(struct xlnx_dma_dev *xdev, unsigned int qid_hw,
+				enum ind_ctxt_cmd_op op,
+				enum ind_ctxt_cmd_sel sel, u32 *data,
+				unsigned int cnt, bool verify)
+{
+	unsigned int reg;
+	u32 rd[QDMA_REG_IND_CTXT_REG_COUNT] = {0};
+	u32 v;
+	int i;
+	int rv = 0;
+
+	pr_debug("qid_hw 0x%x, op 0x%x, sel 0x%x, data 0x%p,%u, verify %d.\n",
+		qid_hw, op, sel, data, cnt, verify);
+
+	spin_lock(&xdev->hw_prg_lock);
+	if ((op == QDMA_CTXT_CMD_WR) || (op == QDMA_CTXT_CMD_RD)) {
+		if (unlikely(!cnt || cnt > QDMA_REG_IND_CTXT_REG_COUNT)) {
+			pr_warn("Q 0x%x, op 0x%x, sel 0x%x, cnt %u/%d.\n",
+				qid_hw, op, sel, cnt,
+				QDMA_REG_IND_CTXT_REG_COUNT);
+			rv = -EINVAL;
+			goto fn_ret;
+		}
+
+		if (unlikely(!data)) {
+			pr_warn("Q 0x%x, op 0x%x, sel 0x%x, data NULL.\n",
+				qid_hw, op, sel);
+			rv = -EINVAL;
+			goto fn_ret;
+		}
+
+		reg = QDMA_REG_IND_CTXT_MASK_BASE;
+		for (i = 0; i < QDMA_REG_IND_CTXT_REG_COUNT;
+					i++, reg += QDMA_REG_SZ_IN_BYTES)
+			__write_reg(xdev, reg, 0xFFFFFFFF);
+
+		if (op == QDMA_CTXT_CMD_WR) {
+			reg = QDMA_REG_IND_CTXT_DATA_BASE;
+			for (i = 0; i < cnt;
+					i++, reg += QDMA_REG_SZ_IN_BYTES)
+				__write_reg(xdev, reg, data[i]);
+			for (; i < QDMA_REG_IND_CTXT_REG_COUNT;
+					i++, reg += QDMA_REG_SZ_IN_BYTES)
+				__write_reg(xdev, reg, 0);
+		}
+	}
+
+	v = (qid_hw << IND_CTXT_CMD_QID_SHIFT) | (op << IND_CTXT_CMD_OP_SHIFT) |
+		(sel << IND_CTXT_CMD_SEL_SHIFT);
+
+	pr_debug("ctxt_cmd reg 0x%x, qid 0x%x, op 0x%x, sel 0x%x -> 0x%08x.\n",
+		 QDMA_REG_IND_CTXT_CMD, qid_hw, op, sel, v);
+
+	__write_reg(xdev, QDMA_REG_IND_CTXT_CMD, v);
+
+	rv = hw_monitor_reg(xdev, QDMA_REG_IND_CTXT_CMD,
+			IND_CTXT_CMD_BUSY_MASK, 0, 100, 500*1000);
+	if (rv < 0) {
+		pr_info("%s, Q 0x%x, op 0x%x, sel 0x%x, timeout.\n",
+			xdev->conf.name, qid_hw, op, sel);
+		rv = -EBUSY;
+		goto fn_ret;
+	}
+
+	if (op == QDMA_CTXT_CMD_RD) {
+		reg = QDMA_REG_IND_CTXT_DATA_BASE;
+		for (i = 0; i < cnt;
+					i++, reg += QDMA_REG_SZ_IN_BYTES)
+			data[i] = __read_reg(xdev, reg);
+
+		goto fn_ret;
+	}
+
+	if (!verify)
+		goto fn_ret;
+
+	v = (qid_hw << IND_CTXT_CMD_QID_SHIFT) |
+		(QDMA_CTXT_CMD_RD << IND_CTXT_CMD_OP_SHIFT) |
+		(sel << IND_CTXT_CMD_SEL_SHIFT);
+
+	pr_debug("reg 0x%x, Q 0x%x, RD, sel 0x%x -> 0x%08x.\n",
+		QDMA_REG_IND_CTXT_CMD, qid_hw, sel, v);
+
+	__write_reg(xdev, QDMA_REG_IND_CTXT_CMD, v);
+
+	rv = hw_monitor_reg(xdev, QDMA_REG_IND_CTXT_CMD,
+			IND_CTXT_CMD_BUSY_MASK, 0, 100, 500*1000);
+	if (rv < 0) {
+		pr_warn("%s, Q 0x%x, op 0x%x, sel 0x%x, readback busy.\n",
+			xdev->conf.name, qid_hw, op, sel);
+		goto fn_ret;
+	}
+
+	reg = QDMA_REG_IND_CTXT_DATA_BASE;
+	for (i = 0; i < cnt;
+				i++, reg += QDMA_REG_SZ_IN_BYTES)
+		rd[i] = __read_reg(xdev, reg);
+
+	v = QDMA_REG_SZ_IN_BYTES * cnt;
+	if (memcmp(data, rd, v)) {
+		pr_warn("%s, indirect write data mismatch:\n", xdev->conf.name);
+		print_hex_dump(KERN_INFO, "WR ", DUMP_PREFIX_OFFSET,
+			16, 1, (void *)data, v, false);
+		print_hex_dump(KERN_INFO, "RD ", DUMP_PREFIX_OFFSET,
+			16, 1, (void *)rd, v, false);
+
+		rv = -EBUSY;
+	}
+
+fn_ret:
+	spin_unlock(&xdev->hw_prg_lock);
+
+	return rv;
+}
+
+#endif
+
+int qdma_queue_cmpl_ctrl(unsigned long dev_hndl, unsigned long id,
+			struct qdma_cmpl_ctrl *cctrl, bool set)
+{
+	struct qdma_descq *descq =  qdma_device_get_descq_by_id(
+					(struct xlnx_dma_dev *)dev_hndl,
+					id, NULL, 0, 1);
+	u32 val;
+
+	if (!descq)
+		return QDMA_ERR_INVALID_QIDX;
+
+	if (set) {
+		lock_descq(descq);
+
+		descq->conf.cmpl_trig_mode = cctrl->trigger_mode;
+		descq->conf.cmpl_timer_idx = cctrl->timer_idx;
+		descq->conf.cmpl_cnt_th_idx = cctrl->cnt_th_idx;
+		descq->conf.irq_en = cctrl->cmpl_en_intr;
+		descq->conf.cmpl_stat_en = cctrl->en_stat_desc;
+
+		descq_cmpt_cidx_update(descq, descq->cidx_cmpt_pend);
+
+		unlock_descq(descq);
+
+	} else {
+		/* read the setting */
+		val = __read_reg(descq->xdev, QDMA_REG_CMPT_CIDX_BASE +
+				descq->conf.qidx * QDMA_REG_PIDX_STEP);
+
+		cctrl->trigger_mode = descq->conf.cmpl_trig_mode =
+				(val >> S_CMPT_CIDX_UPD_TRIG_MODE) &
+				M_CMPT_CIDX_UPD_TRIG_MODE;
+		cctrl->timer_idx = descq->conf.cmpl_timer_idx =
+				(val >> S_CMPT_CIDX_UPD_TIMER_IDX) &
+				M_CMPT_CIDX_UPD_TIMER_IDX;
+		cctrl->cnt_th_idx = descq->conf.cmpl_cnt_th_idx =
+				(val >> S_CMPT_CIDX_UPD_CNTER_IDX) &
+				M_CMPT_CIDX_UPD_CNTER_IDX;
+		cctrl->cmpl_en_intr = descq->conf.irq_en =
+				(val & (1 << S_CMPT_CIDX_UPD_EN_INT)) ? 1 : 0;
+		cctrl->en_stat_desc = descq->conf.cmpl_stat_en =
+			(val & (1 << S_CMPT_CIDX_UPD_EN_STAT_DESC)) ? 1 : 0;
+	}
+
+	return 0;
+}
+
+#ifndef __QDMA_VF__
+int hw_init_qctxt_memory(struct xlnx_dma_dev *xdev, unsigned int qbase,
+		unsigned int qmax)
+{
+	u32 data[QDMA_REG_IND_CTXT_REG_COUNT];
+	unsigned int i = qbase;
+
+	memset(data, 0, sizeof(u32) * QDMA_REG_IND_CTXT_REG_COUNT);
+
+	for (; i < qmax; i++) {
+		enum ind_ctxt_cmd_sel sel = QDMA_CTXT_SEL_SW_C2H;
+		int rv;
+
+		for ( ; sel <= QDMA_CTXT_SEL_PFTCH; sel++) {
+			/** if the st mode(h2c/c2h) not enabled in the design,
+			 *  then skip the PFTCH and CMPT context setup
+			 */
+			if ((xdev->st_mode_en == 0) &&
+			    (sel == QDMA_CTXT_SEL_PFTCH ||
+				sel == QDMA_CTXT_SEL_CMPT)) {
+				pr_debug("ST context is skipped: sel = %d",
+					 sel);
+				continue;
+			}
+
+			rv = hw_indirect_ctext_prog(xdev,
+				i, QDMA_CTXT_CMD_CLR,
+				sel, NULL, 0, 0);
+			if (rv < 0)
+				return rv;
+		}
+	}
+
+	return 0;
+}
+
+int hw_init_global_context_memory(struct xlnx_dma_dev *xdev)
+{
+	unsigned int i;
+	int rv = 0;
+
+	/* queue context memory */
+	rv = hw_init_qctxt_memory(xdev, 0, QDMA_QSET_MAX);
+	if (rv < 0)
+		return rv;
+
+	if (xdev->conf.qdma_drv_mode == AUTO_MODE ||
+			xdev->conf.qdma_drv_mode == INDIRECT_INTR_MODE) {
+		/* interrupt aggregation context */
+		for (i = 0; i < QDMA_INTR_RNG_MAX; i++) {
+			rv = hw_indirect_ctext_prog(xdev,
+				      i, QDMA_CTXT_CMD_CLR,
+				      QDMA_CTXT_SEL_COAL, NULL, 0, 0);
+			if (rv < 0)
+				return rv;
+		}
+	}
+
+	/* fmap */
+	for (i = 0; i < QDMA_FUNC_MAX; i++)
+		hw_set_fmap(xdev, i, 0, 0);
+
+	return 0;
+}
+
+#endif
diff --git a/QDMA/linux-kernel/libqdma/qdma_regs.h b/QDMA/linux-kernel/libqdma/qdma_regs.h
new file mode 100644
index 0000000..8c539e8
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/qdma_regs.h
@@ -0,0 +1,1006 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#ifndef __QDMA_REGS_H__
+#define __QDMA_REGS_H__
+
+#include <linux/types.h>
+#include "xdev.h"
+
+#define QDMA_REG_SZ_IN_BYTES	4
+
+/* polling a register */
+#define	QDMA_REG_POLL_DFLT_INTERVAL_US	100		/* 100us per poll */
+#define	QDMA_REG_POLL_DFLT_TIMEOUT_US	(500*1000)	/* 500ms */
+
+/* desc. Q default */
+#define	RNG_SZ_DFLT			64
+#define CMPT_RNG_SZ_DFLT			64
+#define	C2H_TIMER_CNT_DFLT	0x1
+#define	C2H_CNT_TH_DFLT	0x1
+#define	C2H_BUF_SZ_DFLT	PAGE_SIZE
+
+/* QDMA IP limits */
+#define QDMA_QSET_MAX		2048	/* 2K queues */
+#define QDMA_FUNC_MAX		256	/* 256 functions */
+#define QDMA_INTR_RNG_MAX	256	/* 256 interrupt aggregation rings */
+
+#define DESC_SZ_64B         3
+#define DESC_SZ_8B_BYTES    8
+#define DESC_SZ_16B_BYTES   16
+#define DESC_SZ_32B_BYTES   32
+#define DESC_SZ_64B_BYTES   64
+
+
+/* Driver visible Attribute Space 0x100 */
+#define QDMA_REG_GLBL_PF_BARLITE_INT             0x104
+#define		PF_BARLITE_INT_3_SHIFT               18
+#define		PF_BARLITE_INT_3_MASK                0xFC0000
+#define		PF_BARLITE_INT_2_SHIFT               12
+#define		PF_BARLITE_INT_2_MASK                0x3F000
+#define		PF_BARLITE_INT_1_SHIFT               6
+#define		PF_BARLITE_INT_1_MASK                0xFC0
+#define		PF_BARLITE_INT_0_SHIFT               0
+#define		PF_BARLITE_INT_0_MASK                0x3F
+
+#define MAGIC_NUMBER                             0x1FD30000
+#define M_CONFIG_BAR_IDENTIFIER_MASK             0xFFFF0000
+#ifndef __QDMA_VF__
+#define QDMA_REG_CONFIG_BLOCK_IDENTIFIER         0x0
+#else
+#define QDMA_REG_CONFIG_BLOCK_IDENTIFIER         0x1014
+#endif
+#define QDMA_REG_PF_USER_BAR_IDENTIFIER          0x10C
+#define QDMA_REG_VF_USER_BAR_IDENTIFIER          0x1018
+#define		M_USER_BAR_ID_MASK		0x3F
+
+#define QDMA_REG_GLBL_QMAX                       0x120
+/* TBD : needs to be changed once we get the register offset from the h/w */
+#define QDMA_REG_GLBL_MM_ENGINES                 0xABCD
+#define QDMA_REG_GLBL_MISC_CAP                   0x134
+#define		MISC_CAP_FLR_PRESENT_SHIFT           1
+#define		MISC_CAP_FLR_PRESENT_MASK            0x2
+#define QDMA_REG_GLBL_MDMA_CHANNEL               0x118
+#define		MDMA_CHANNEL_ST_C2H_ENABLED_SHIFT    16
+#define		MDMA_CHANNEL_ST_C2H_ENABLED_MASK     0x10000
+#define		MDMA_CHANNEL_ST_H2C_ENABLED_SHIFT    17
+#define		MDMA_CHANNEL_ST_H2C_ENABLED_MASK     0x20000
+#define		MDMA_CHANNEL_MM_C2H_ENABLED_SHIFT    8
+#define		MDMA_CHANNEL_MM_C2H_ENABLED_MASK     0x100
+#define		MDMA_CHANNEL_MM_H2C_ENABLED_SHIFT    0
+#define		MDMA_CHANNEL_MM_H2C_ENABLED_MASK     0x1
+
+#ifndef __QDMA_VF__
+/*
+ * PF only registers
+ */
+#define QDMA_REG_FUNC_ID			0x12C
+
+/* CSR space 0x200 */
+#define	QDMA_REG_GLBL_RNG_SZ_BASE		0x204
+#define		QDMA_REG_GLBL_RNG_SZ_COUNT	16
+
+#define QDMA_REG_GLBL_SCRATCH			0x244
+
+#define QDMA_REG_GLBL_DSC_CFG			0x250
+#define         QDMA_REG_GLBL_DSC_CFG_CMPL_STATUS_ACC_MASK       0x07
+#define         QDMA_REG_GLBL_DSC_CFG_MAX_DESC_FETCH_MASK     0x07
+#define         QDMA_REG_GLBL_DSC_CFG_MAX_DESC_FETCH_SHIFT     0x03
+
+#define QDMA_GLBL_INTERRUPT_CFG                 0x2C4
+#define         QDMA_GLBL_INTERRUPT_CFG_EN_LGCY_INTR (1 << 0)
+#define         QDMA_GLBL_INTERRUPT_LGCY_INTR_PEND   (1 << 1)
+
+#define QDMA_REG_C2H_TIMER_CNT_BASE		0xA00
+#define		QDMA_REG_C2H_TIMER_CNT_COUNT	16
+
+#define QDMA_REG_C2H_CNT_TH_BASE		0xA40
+#define		QDMA_REG_C2H_CNT_TH_COUNT	16
+
+#define QDMA_REG_C2H_BUF_SZ_BASE		0xAB0
+#define		QDMA_REG_C2H_BUF_SZ_COUNT	16
+
+void qdma_csr_read_cmpl_status_acc(struct xlnx_dma_dev *xdev,
+		unsigned int *cs_acc);
+void qdma_csr_read_rngsz(struct xlnx_dma_dev *xdev, unsigned int *rngsz);
+int qdma_csr_write_rngsz(struct xlnx_dma_dev *xdev, unsigned int *rngsz);
+void qdma_csr_read_bufsz(struct xlnx_dma_dev *xdev, unsigned int *bufsz);
+int qdma_csr_write_bufsz(struct xlnx_dma_dev *xdev, unsigned int *bufsz);
+void qdma_csr_read_timer_cnt(struct xlnx_dma_dev *xdev, unsigned int *tmr_cnt);
+int qdma_csr_write_timer_cnt(struct xlnx_dma_dev *xdev, unsigned int *tmr_cnt);
+void qdma_csr_read_cnt_thresh(struct xlnx_dma_dev *xdev, unsigned int *cnt_th);
+int qdma_csr_write_cnt_thresh(struct xlnx_dma_dev *xdev, unsigned int *cnt_th);
+
+/*
+ * Function registers
+ */
+
+#define QDMA_REG_TRQ_SEL_FMAP_BASE			0x400
+#define		QDMA_REG_TRQ_SEL_FMAP_STEP		0x4
+#define		QDMA_REG_TRQ_SEL_FMAP_COUNT		256
+
+#define		SEL_FMAP_QID_BASE_SHIFT			0
+#define		SEL_FMAP_QID_BASE_MASK			0x7FFU
+#define		SEL_FMAP_QID_MAX_SHIFT			11
+#define		SEL_FMAP_QID_MAX_MASK			0xFFFU
+
+/*
+ * Indirect Programming
+ */
+#define	QDMA_REG_IND_CTXT_REG_COUNT		8
+#define QDMA_REG_IND_CTXT_DATA_BASE		0x804
+#define QDMA_REG_IND_CTXT_MASK_BASE		0x824
+
+#define QDMA_REG_IND_CTXT_CMD			0x844
+#define		IND_CTXT_CMD_QID_SHIFT		7
+#define		IND_CTXT_CMD_QID_MASK		0xFFFFFFU
+
+#define		IND_CTXT_CMD_OP_SHIFT		5
+#define		IND_CTXT_CMD_OP_MASK		0x3U
+
+#define		IND_CTXT_CMD_SEL_SHIFT		1
+#define		IND_CTXT_CMD_SEL_MASK		0xFU
+
+#define		IND_CTXT_CMD_BUSY_SHIFT		0
+#define		IND_CTXT_CMD_BUSY_MASK		0x1U
+
+/*
+ * Queue registers
+ */
+#define		QDMA_REG_MM_CONTROL_RUN		0x1U
+#define		QDMA_REG_MM_CONTROL_STEP	0x100
+
+#define QDMA_REG_C2H_MM_CONTROL_BASE		0x1004
+#define QDMA_REG_H2C_MM_CONTROL_BASE		0x1204
+
+/*
+ * TRQ Sel registers
+ */
+#define QDMA_C2H_PFCH_CFG                      0xB08
+#define     QDMA_C2H_PFCH_CFG_EVT_QCNT_TH_SHIFT      25
+#define     QDMA_C2H_PFCH_CFG_PFCH_QCNT_SHIFT        18
+#define     QDMA_C2H_PFCH_CFG_NUM_PFCH_SHIFT         9
+#define     QDMA_C2H_PFCH_CFG_PFCH_FL_TH_SHIFT       0
+
+#define QDMA_C2H_CMPT_COAL_CFG                  0xB50
+#define     QDMA_C2H_CMPT_COAL_CFG_TICK_CNT_SHIFT   2
+#define     QDMA_C2H_CMPT_COAL_CFG_TICK_VAL_SHIFT   14
+#define     QDMA_C2H_CMPT_COAL_CFG_MAX_BUF_SZ_SHIFT 26
+
+#define QDMA_C2H_INT_TIMER_TICK                0xB0C
+
+/*
+ * monitor
+ */
+#define QDMA_REG_C2H_STAT_AXIS_PKG_CMP		0xA94
+
+#endif /* ifndef __QDMA_VF__ */
+
+/*
+ * FLR
+ */
+#ifdef __QDMA_VF__
+#define QDMA_REG_FLR_STATUS			0x1100
+#else
+#define QDMA_REG_FLR_STATUS			0x2500
+#endif
+
+/*
+ * desc. Q pdix/cidx update
+ */
+
+#define		QDMA_REG_PIDX_STEP		0x10
+
+#ifdef __QDMA_VF__
+
+#define QDMA_REG_INT_CIDX_BASE			0x3000
+#define QDMA_REG_H2C_PIDX_BASE			0x3004
+#define QDMA_REG_C2H_PIDX_BASE			0x3008
+#define QDMA_REG_CMPT_CIDX_BASE			0x300C
+
+#else
+
+#define QDMA_REG_INT_CIDX_BASE			0x18000
+#define QDMA_REG_H2C_PIDX_BASE			0x18004
+#define QDMA_REG_C2H_PIDX_BASE			0x18008
+#define QDMA_REG_CMPT_CIDX_BASE			0x1800C
+
+#endif
+
+/*
+ * Q Context programming (indirect)
+ */
+enum ind_ctxt_cmd_op {
+	QDMA_CTXT_CMD_CLR,
+	QDMA_CTXT_CMD_WR,
+	QDMA_CTXT_CMD_RD,
+	QDMA_CTXT_CMD_INV
+};
+
+enum ind_ctxt_cmd_sel {
+	QDMA_CTXT_SEL_SW_C2H,
+	QDMA_CTXT_SEL_SW_H2C,
+	QDMA_CTXT_SEL_HW_C2H,
+	QDMA_CTXT_SEL_HW_H2C,
+	QDMA_CTXT_SEL_CR_C2H,
+	QDMA_CTXT_SEL_CR_H2C,
+	QDMA_CTXT_SEL_CMPT,
+	QDMA_CTXT_SEL_PFTCH,
+	QDMA_CTXT_SEL_COAL,
+	QDMA_CTXT_SEL_PASID_RAM_LOW,
+	QDMA_CTXT_SEL_PASID_RAM_HIGH,
+	QDMA_CTXT_SEL_TIMER,
+	QDMA_CTXT_SEL_FMAP,
+};
+
+#define QDMA_REG_IND_CTXT_WCNT_1		1
+#define QDMA_REG_IND_CTXT_WCNT_2		2
+#define QDMA_REG_IND_CTXT_WCNT_3		3
+#define QDMA_REG_IND_CTXT_WCNT_4		4
+#define QDMA_REG_IND_CTXT_WCNT_5		5
+#define QDMA_REG_IND_CTXT_WCNT_6		6
+#define QDMA_REG_IND_CTXT_WCNT_7		7
+#define QDMA_REG_IND_CTXT_WCNT_8		8
+
+/** Context: FMAP */
+#define S_FMAP_W0_QBASE			0
+#define M_FMAP_W0_QBASE			0xFFFFFFU
+#define V_FMAP_W0_QBASE(x)		((x) << S_FMAP_W0_QBASE)
+
+#define S_FMAP_W1_QMAX			0
+#define M_FMAP_W1_QMAX			0xFFFFFFU
+#define V_FMAP_W1_QMAX(x)		((x) << S_FMAP_W1_QMAX)
+
+/* Context: Software */
+#define S_DESC_CTXT_W0_PIDX			0
+#define M_DESC_CTXT_W0_PIDX			0xFFFFU
+#define L_DESC_CTXT_W0_PIDX			16
+#define V_DESC_CTXT_W0_PIDX(x)		((x) << S_DESC_CTXT_W0_PIDX)
+
+#define S_DESC_CTXT_W0_F_INTR_ARM	16
+
+#define S_DESC_CTXT_W0_FUNC_ID		17
+#define M_DESC_CTXT_W0_FUNC_ID		0xFFU
+#define L_DESC_CTXT_W0_FUNC_ID		8
+#define V_DESC_CTXT_W0_FUNC_ID(x)	((x) << S_DESC_CTXT_W0_FUNC_ID)
+
+#define S_DESC_CTXT_W1_F_QEN		0
+#define S_DESC_CTXT_W1_F_FCRD_EN	1
+#define S_DESC_CTXT_W1_F_CMPL_STATUS_PEND_CHK	2
+#define S_DESC_CTXT_W1_F_CMPL_STATUS_ACC_EN	3
+#define S_DESC_CTXT_W1_F_AT			4
+
+#define S_DESC_CTXT_W1_FETCH_MAX		5
+#define L_DESC_CTXT_W1_FETCH_MAX		3
+
+#define S_DESC_CTXT_W1_RNG_SZ		12
+#define L_DESC_CTXT_W1_RNG_SZ		4
+#define M_DESC_CTXT_W1_RNG_SZ		0xFU
+#define V_DESC_CTXT_W1_RNG_SZ(x)	((x) << S_DESC_CTXT_W1_RNG_SZ)
+
+#define S_DESC_CTXT_W1_DSC_SZ		16
+#define L_DESC_CTXT_W1_DSC_SZ		2
+#define M_DESC_CTXT_W1_DSC_SZ		0x3U
+#define V_DESC_CTXT_W1_DSC_SZ(x)	((x) << S_DESC_CTXT_W1_DSC_SZ)
+
+#define S_DESC_CTXT_W1_F_BYP		18
+#define S_DESC_CTXT_W1_F_MM_CHN		19
+#define S_DESC_CTXT_W1_F_CMPL_STATUS_EN		20
+#define S_DESC_CTXT_W1_F_IRQ_EN		21
+
+#define S_DESC_CTXT_W1_PORT_ID		22
+#define L_DESC_CTXT_W1_PORT_ID		3
+#define M_DESC_CTXT_W1_PORT_ID		0x7U
+#define V_DESC_CTXT_W1_PORT_ID(x)	((x) << S_DESC_CTXT_W1_PORT_ID)
+
+#define S_DESC_CTXT_W1_F_IRQ_NO_LAST	25
+
+#define S_DESC_CTXT_W1_ERR			26
+#define M_DESC_CTXT_W1_ERR			0x3U
+#define L_DESC_CTXT_W1_ERR			2
+#define V_DESC_CTXT_W1_ERR(x)		((x) << S_DESC_CTXT_W1_ERR)
+
+#define S_DESC_CTXT_W1_F_CMPL_STATUS_ERR_SNT	28
+#define S_DESC_CTXT_W1_F_IRQ_REQ	29
+#define S_DESC_CTXT_W1_F_MRKR_DIS	30
+#define S_DESC_CTXT_W1_F_IS_MM		31
+
+#define S_DESC_CTXT_W4_VEC			0
+#define M_DESC_CTXT_W4_VEC			0x7FF
+#define L_DESC_CTXT_W4_VEC			11
+#define V_DESC_CTXT_W4_VEC(x)		((x) << S_DESC_CTXT_W4_VEC)
+
+#define S_DESC_CTXT_W1_F_INTR_AGGR	11
+
+/* Context: C2H Completion Context */
+
+#define S_CMPT_CTXT_W0_F_EN_STAT_DESC	0
+#define S_CMPT_CTXT_W0_F_EN_INT		1
+
+#define S_CMPT_CTXT_W0_TRIG_MODE		2
+#define M_CMPT_CTXT_W0_TRIG_MODE		0x7U
+#define L_CMPT_CTXT_W0_TRIG_MODE		3
+#define V_CMPT_CTXT_W0_TRIG_MODE(x)	((x) << S_CMPT_CTXT_W0_TRIG_MODE)
+
+#define S_CMPT_CTXT_W0_FNC_ID		5
+#define M_CMPT_CTXT_W0_FNC_ID		0xFFFU
+#define L_CMPT_CTXT_W0_FNC_ID		12
+#define V_CMPT_CTXT_W0_FNC_ID(x)		\
+	((x & M_CMPT_CTXT_W0_FNC_ID) << S_CMPT_CTXT_W0_FNC_ID)
+
+#define S_CMPT_CTXT_W0_COUNTER_IDX	17
+#define M_CMPT_CTXT_W0_COUNTER_IDX	0xFU
+#define L_CMPT_CTXT_W0_COUNTER_IDX	4
+#define V_CMPT_CTXT_W0_COUNTER_IDX(x)	((x) << S_CMPT_CTXT_W0_COUNTER_IDX)
+
+#define S_CMPT_CTXT_W0_TIMER_IDX		21
+#define M_CMPT_CTXT_W0_TIMER_IDX		0xFU
+#define L_CMPT_CTXT_W0_TIMER_IDX		4
+#define V_CMPT_CTXT_W0_TIMER_IDX(x)	((x) << S_CMPT_CTXT_W0_TIMER_IDX)
+
+#define S_CMPT_CTXT_W0_INT_ST		25
+#define M_CMPT_CTXT_W0_INT_ST		0x3U
+#define L_CMPT_CTXT_W0_INT_ST		2
+#define V_CMPT_CTXT_W0_INT_ST(x)		((x) << S_CMPT_CTXT_W0_INT_ST)
+
+#define S_CMPT_CTXT_W0_F_COLOR		27
+
+#define S_CMPT_CTXT_W0_RNG_SZ		28
+#define M_CMPT_CTXT_W0_RNG_SZ		0xFU
+#define L_CMPT_CTXT_W0_RNG_SZ		4
+#define V_CMPT_CTXT_W0_RNG_SZ(x)		((x) << S_CMPT_CTXT_W0_RNG_SZ)
+
+#define S_CMPT_CTXT_W2_BADDR_64		0
+#define M_CMPT_CTXT_W2_BADDR_64		0x3FFFFFFU
+#define L_CMPT_CTXT_W2_BADDR_64		26
+#define V_CMPT_CTXT_W2_BADDR_64(x)	\
+	(((x) & M_CMPT_CTXT_W2_BADDR_64) << S_CMPT_CTXT_W2_BADDR_64)
+
+#define S_CMPT_CTXT_W2_DESC_SIZE		26
+#define M_CMPT_CTXT_W2_DESC_SIZE		0x3U
+#define L_CMPT_CTXT_W2_DESC_SIZE		2
+#define V_CMPT_CTXT_W2_DESC_SIZE(x)	((x) << S_CMPT_CTXT_W2_DESC_SIZE)
+
+#define S_CMPT_CTXT_W2_PIDX_L		28
+#define M_CMPT_CTXT_W2_PIDX_L		0xFU
+#define L_CMPT_CTXT_W2_PIDX_L		4
+#define V_CMPT_CTXT_W2_PIDX_L(x)		((x) << S_CMPT_CTXT_W2_PIDX_L)
+
+#define S_CMPT_CTXT_W3_PIDX_H		0
+#define M_CMPT_CTXT_W3_PIDX_H		0xFFFU
+#define L_CMPT_CTXT_W3_PIDX_H		12
+#define V_CMPT_CTXT_W3_PIDX_H(x)		((x) << S_CMPT_CTXT_W3_PIDX_H)
+
+#define S_CMPT_CTXT_W3_CIDX			12
+#define M_CMPT_CTXT_W3_CIDX			0xFFFFU
+#define L_CMPT_CTXT_W3_CIDX			16
+#define V_CMPT_CTXT_W3_CIDX(x)		((x) << S_CMPT_CTXT_W3_CIDX)
+
+#define S_CMPT_CTXT_W3_F_VALID		28
+
+#define S_CMPT_CTXT_W3_ERR			29
+#define M_CMPT_CTXT_W3_ERR			0x3U
+#define L_CMPT_CTXT_W3_ERR			2
+#define V_CMPT_CTXT_W3_ERR(x)		((x) << S_CMPT_CTXT_W3_ERR)
+
+#define S_CMPT_CTXT_W3_F_TRIG_PEND	31
+
+#define S_CMPT_CTXT_W4_F_TMR_RUNNING	0
+#define S_CMPT_CTXT_W4_F_FULL_UPDATE	1
+#define S_CMPT_CTXT_W4_F_OVF_CHK_DIS	2
+#define S_CMPT_CTXT_W4_F_AT			3
+
+#define S_CMPT_CTXT_W4_VEC			4
+#define M_CMPT_CTXT_W4_VEC			0x7FF
+#define L_CMPT_CTXT_W4_VEC			11
+#define V_CMPT_CTXT_W4_VEC(x)		((x) << S_CMPT_CTXT_W4_VEC)
+
+#define S_CMPT_CTXT_W4_F_INTR_AGGR	15
+
+/* Context: C2H Prefetch */
+#define S_PFTCH_W0_F_BYPASS			0
+
+#define S_PFTCH_W0_BUF_SIZE_IDX		1
+#define M_PFTCH_W0_BUF_SIZE_IDX		0xFU
+#define L_PFTCH_W0_BUF_SIZE_IDX		4
+#define V_PFTCH_W0_BUF_SIZE_IDX(x)	((x) << S_PFTCH_W0_BUF_SIZE_IDX)
+
+#define S_PFTCH_W0_PORT_ID			5
+#define M_PFTCH_W0_PORT_ID			0x7U
+#define L_PFTCH_W0_PORT_ID			3
+#define V_PFTCH_W0_PORT_ID(x)		((x) << S_PFTCH_W0_PORT_ID)
+
+/* TBD: uncomment when introduced back in future RTLs
+ * #define S_PFTCH_W0_FUNC_ID			8
+ * #define M_PFTCH_W0_FUNC_ID			0xFFFU
+ * #define L_PFTCH_W0_FUNC_ID			12
+ * #define V_PFTCH_W0_FUNC_ID(x)		((x) << S_PFTCH_W0_FUNC_ID)
+ */
+
+#define S_PFTCH_W0_F_ERR			26
+#define S_PFTCH_W0_F_EN_PFTCH		27
+#define S_PFTCH_W0_F_Q_IN_PFTCH		28
+
+#define S_PFTCH_W0_SW_CRDT_L		29
+#define M_PFTCH_W0_SW_CRDT_L		0x7U
+#define L_PFTCH_W0_SW_CRDT_L		3
+#define V_PFTCH_W0_SW_CRDT_L(x)		((x) << S_PFTCH_W0_SW_CRDT_L)
+
+#define S_PFTCH_W1_SW_CRDT_H		0
+#define M_PFTCH_W1_SW_CRDT_H		0x1FFFU
+#define L_PFTCH_W1_SW_CRDT_H		13
+#define V_PFTCH_W1_SW_CRDT_H(x)		((x) << S_PFTCH_W1_SW_CRDT_H)
+
+#define S_PFTCH_W1_F_VALID			13
+
+/* Context: Interrupt Coalescing */
+
+#define S_INT_AGGR_W0_F_VALID		0
+
+#define S_INT_AGGR_W0_VEC_ID		1
+#define M_INT_AGGR_W0_VEC_ID		0x7FFU
+#define L_INT_AGGR_W0_VEC_ID		11
+#define V_INT_AGGR_W0_VEC_ID(x)		((x) << S_INT_AGGR_W0_VEC_ID)
+
+#define S_INT_AGGR_W0_F_INT_ST		13
+#define S_INT_AGGR_W0_F_COLOR		14
+
+#define S_INT_AGGR_W0_BADDR_64		15
+#define M_INT_AGGR_W0_BADDR_64		0x1FFFFU
+#define L_INT_AGGR_W0_BADDR_64		17
+#define V_INT_AGGR_W0_BADDR_64(x)	\
+	(((x) & M_INT_AGGR_W0_BADDR_64) << S_INT_AGGR_W0_BADDR_64)
+
+#define S_INT_AGGR_W2_BADDR_64		0
+#define M_INT_AGGR_W2_BADDR_64		0x7U
+#define L_INT_AGGR_W2_BADDR_64		3
+#define V_INT_AGGR_W2_BADDR_64(x)	\
+	(((x) & M_INT_AGGR_W2_BADDR_64) << S_INT_AGGR_W2_BADDR_64)
+
+#define S_INT_AGGR_W2_VEC_SIZE		3
+#define M_INT_AGGR_W2_VEC_SIZE		0x7U
+#define L_INT_AGGR_W2_VEC_SIZE		3
+#define V_INT_AGGR_W2_VEC_SIZE(x)	((x) << S_INT_AGGR_W2_VEC_SIZE)
+
+#define S_INT_AGGR_W2_PIDX		6
+#define M_INT_AGGR_W2_PIDX		0xFFFU
+#define L_INT_AGGR_W2_PIDX		12
+#define V_INT_AGGR_W2_PIDX		((x) << S_INT_AGGR_W2_PIDX)
+
+#define S_INT_AGGR_W2_F_AT		18
+
+
+/*
+ * PIDX/CIDX update
+ */
+
+#define S_INTR_CIDX_UPD_SW_CIDX		0
+#define M_INTR_CIDX_UPD_SW_CIDX		0xFFFFU
+#define V_INTR_CIDX_UPD_SW_CIDX(x)	((x) << S_INTR_CIDX_UPD_SW_CIDX)
+
+#define S_INTR_CIDX_UPD_RING_INDEX		16
+#define M_INTR_CIDX_UPD_RING_INDEX		0xFFU
+#define V_INTR_CIDX_UPD_RING_INDEX(x)	((x) << S_INTR_CIDX_UPD_RING_INDEX)
+
+#define S_CMPL_STATUS_PIDX_UPD_EN_INT		16
+
+/*
+ * CMPT CIDX update
+ */
+#define S_CMPT_CIDX_UPD_SW_CIDX		0
+#define M_CMPT_CIDX_UPD_SW_IDX		0xFFFFU
+#define V_CMPT_CIDX_UPD_SW_IDX(x)	((x) << S_CMPT_CIDX_UPD_SW_CIDX)
+
+#define S_CMPT_CIDX_UPD_CNTER_IDX	16
+#define M_CMPT_CIDX_UPD_CNTER_IDX	0xFU
+#define V_CMPT_CIDX_UPD_CNTER_IDX(x)	((x) << S_CMPT_CIDX_UPD_CNTER_IDX)
+
+#define S_CMPT_CIDX_UPD_TIMER_IDX	20
+#define M_CMPT_CIDX_UPD_TIMER_IDX	0xFU
+#define V_CMPT_CIDX_UPD_TIMER_IDX(x)	((x) << S_CMPT_CIDX_UPD_TIMER_IDX)
+
+#define S_CMPT_CIDX_UPD_TRIG_MODE	24
+#define M_CMPT_CIDX_UPD_TRIG_MODE	0x7U
+#define V_CMPT_CIDX_UPD_TRIG_MODE(x)	((x) << S_CMPT_CIDX_UPD_TRIG_MODE)
+
+#define S_CMPT_CIDX_UPD_EN_STAT_DESC	27
+#define S_CMPT_CIDX_UPD_EN_INT		28
+
+/*
+ * descriptor & writeback status
+ */
+/**
+ * @struct - qdma_mm_desc
+ * @brief	memory mapped descriptor format
+ */
+struct qdma_mm_desc {
+	/** source address */
+	__be64 src_addr;
+	/** flags */
+	__be32 flag_len;
+	/** reserved 32 bits */
+	__be32 rsvd0;
+	/** destination address */
+	__be64 dst_addr;
+	/** reserved 64 bits */
+	__be64 rsvd1;
+};
+
+#define S_DESC_F_DV		    28
+#define S_DESC_F_SOP		29
+#define S_DESC_F_EOP		30
+
+
+#define S_H2C_DESC_F_SOP		1
+#define S_H2C_DESC_F_EOP		2
+
+
+#define S_H2C_DESC_NUM_GL		0
+#define M_H2C_DESC_NUM_GL		0x7U
+#define V_H2C_DESC_NUM_GL(x)	((x) << S_H2C_DESC_NUM_GL)
+
+#define S_H2C_DESC_NUM_CDH		3
+#define M_H2C_DESC_NUM_CDH		0xFU
+#define V_H2C_DESC_NUM_CDH(x)	((x) << S_H2C_DESC_NUM_CDH)
+
+#define S_H2C_DESC_F_ZERO_CDH		13
+#define S_H2C_DESC_F_EOT			14
+#define S_H2C_DESC_F_REQ_CMPL_STATUS	15
+
+/* FIXME pld_len and flags members are part of custom descriptor format needed
+ * by example design for ST loopback and desc bypass
+ */
+/**
+ * @struct - qdma_h2c_desc
+ * @brief	memory mapped descriptor format
+ */
+struct qdma_h2c_desc {
+	__be16 cdh_flags;	/**< cdh flags */
+	__be16 pld_len;		/**< current packet length */
+	__be16 len;			/**< total packet length */
+	__be16 flags;		/**< descriptor flags */
+	__be64 src_addr;	/**< source address */
+};
+
+/**
+ * @struct - qdma_c2h_desc
+ * @brief	qdma c2h descriptor
+ */
+struct qdma_c2h_desc {
+	__be64 dst_addr;	/**< destination address */
+};
+
+/**
+ * @struct - qdma_desc_cmpl_status
+ * @brief	qdma writeback descriptor
+ */
+struct qdma_desc_cmpl_status {
+	__be16 pidx;	/**< producer index */
+	__be16 cidx;	/**< consumer index */
+	__be32 rsvd;	/**< reserved 32 bits */
+};
+
+#define S_C2H_CMPT_ENTRY_F_FORMAT		0
+#define F_C2H_CMPT_ENTRY_F_FORMAT		(1 << S_C2H_CMPT_ENTRY_F_FORMAT)
+#define		DFORMAT0_CMPL_MASK	0xF	/* udd starts at bit 4 */
+#define		DFORMAT1_CMPL_MASK	0xFFFFF	/* udd starts at bit 20 */
+
+
+#define S_C2H_CMPT_ENTRY_F_COLOR		1
+#define F_C2H_CMPT_ENTRY_F_COLOR		(1 << S_C2H_CMPT_ENTRY_F_COLOR)
+
+#define S_C2H_CMPT_ENTRY_F_ERR		2
+#define F_C2H_CMPT_ENTRY_F_ERR		(1 << S_C2H_CMPT_ENTRY_F_ERR)
+
+#define S_C2H_CMPT_ENTRY_F_DESC_USED	3
+#define F_C2H_CMPT_ENTRY_F_DESC_USED	(1 << S_C2H_CMPT_ENTRY_F_DESC_USED)
+
+#define S_C2H_CMPT_ENTRY_LENGTH			4
+#define M_C2H_CMPT_ENTRY_LENGTH			0xFFFFU
+#define L_C2H_CMPT_ENTRY_LENGTH			16
+#define V_C2H_CMPT_ENTRY_LENGTH(x)	\
+	(((x) & M_C2H_CMPT_ENTRY_LENGTH) << S_C2H_CMPT_ENTRY_LENGTH)
+
+#define S_C2H_CMPT_ENTRY_F_EOT			20
+#define F_C2H_CMPT_ENTRY_F_EOT			(1 << S_C2H_CMPT_ENTRY_F_EOT)
+
+#define S_C2H_CMPT_ENTRY_F_USET_INTR		21
+
+#define S_C2H_CMPT_USER_DEFINED			22
+#define V_C2H_CMPT_USER_DEFINED(x)		((x) << S_C2H_CMPT_USER_DEFINED)
+
+#define M_C2H_CMPT_ENTRY_DMA_INFO		0xFFFFFF
+#define L_C2H_CMPT_ENTRY_DMA_INFO		3 /* 20 bits */
+/**
+ * @struct - qdma_c2h_cmpt_cmpl_status
+ * @brief	qdma completion data descriptor
+ */
+struct qdma_c2h_cmpt_cmpl_status {
+	__be16 pidx;				/**< producer index */
+	__be16 cidx;				/**< consumer index */
+	__be32 color_isr_status;	/**< isr color and status */
+};
+#define S_C2H_CMPT_F_COLOR	0
+
+#define S_C2H_CMPT_INT_STATE	1
+#define M_C2H_CMPT_INT_STATE	0x3U
+
+#define STM_REG_BASE			0x02000000
+#define STM_REG_IND_CTXT_DATA_BASE	0x0
+#define STM_REG_IND_CTXT_DATA3		0xC
+#define STM_REG_IND_CTXT_CMD		0x14
+#define STM_REG_REV			0x18
+#define STM_REG_C2H_DATA8		0x20
+#define STM_REG_IND_CTXT_DATA5		0x24
+#define STM_REG_H2C_MODE		0x30
+#define STM_REG_IND_CTXT_REG_COUNT	5
+#define STM_SUPPORTED_REV		0x4
+#define STM_ENABLED_DEVICE		0x6aa0
+#define	STM_MAX_SUPPORTED_QID		64
+#define STM_MAX_PKT_SIZE		4096
+#define STM_PORT_MAP			0xE1E1
+
+#define S_STM_H2C_CTXT_ENTRY_VALID	0
+#define F_STM_H2C_CTXT_ENTRY_VALID	(1 << S_STM_H2C_CTXT_ENTRY_VALID)
+#define S_STM_C2H_CTXT_ENTRY_VALID	16
+#define F_STM_C2H_CTXT_ENTRY_VALID	(1 << S_STM_C2H_CTXT_ENTRY_VALID)
+#define S_STM_EN_STMA_BKCHAN		15
+#define F_STM_EN_STMA_BKCHAN		(1 << S_STM_EN_STMA_BKCHAN)
+#define S_STM_PORT_MAP			16
+
+enum ind_stm_addr {
+	STM_IND_ADDR_C2H_MAP = 0x2,
+	STM_IND_ADDR_FORCED_CAN = 0x8,
+	STM_IND_ADDR_Q_CTX_H2C,
+	STM_IND_ADDR_H2C_MAP,
+	STM_IND_ADDR_Q_CTX_C2H,
+};
+
+enum ind_stm_cmd_op {
+	STM_CSR_CMD_WR = 4,
+	STM_CSR_CMD_RD = 8,
+};
+
+#define S_STM_CTXT_QID		16
+#define S_STM_CTXT_C2H_SLR	8
+#define S_STM_CTXT_C2H_TDEST_H	0
+#define S_STM_CTXT_C2H_TDEST_L	24
+#define S_STM_CTXT_C2H_FID	16
+#define S_STM_CTXT_H2C_SLR	8
+#define S_STM_CTXT_H2C_TDEST_H	0
+#define S_STM_CTXT_H2C_TDEST_L	24
+#define S_STM_CTXT_H2C_FID	16
+#define S_STM_CTXT_PKT_LIM	8
+#define S_STM_CTXT_MAX_ASK	0
+#define S_STM_CTXT_DPPKT	24
+#define S_STM_CTXT_LOG2_DPPKT	18
+
+#define S_STM_CMD_QID		0
+#define S_STM_CMD_FID		12
+#define S_STM_CMD_ADDR		24
+#define S_STM_CMD_OP		28
+
+/*
+ * HW API
+ */
+
+#include "xdev.h"
+
+#define __read_reg(xdev, reg_addr) (readl(xdev->regs + reg_addr))
+#ifdef DEBUG__
+#define __write_reg(xdev, reg_addr, val) \
+	do { \
+		pr_debug("%s, reg 0x%x, val 0x%x.\n", \
+				xdev->conf.name, reg_addr, (u32)val); \
+		writel(val, xdev->regs + reg_addr); \
+	} while (0)
+#else
+#define __write_reg(xdev, reg_addr, val) (writel(val, xdev->regs + reg_addr))
+#endif /* #ifdef DEBUG__ */
+
+struct xlnx_dma_dev;
+int hw_monitor_reg(struct xlnx_dma_dev *xdev, unsigned int reg, u32 mask,
+		u32 val, unsigned int interval_us, unsigned int timeout_us);
+#ifndef __QDMA_VF__
+void qdma_device_attributes_get(struct xlnx_dma_dev *xdev);
+void hw_mm_channel_enable(struct xlnx_dma_dev *xdev, int channel, bool c2h);
+void hw_mm_channel_disable(struct xlnx_dma_dev *xdev, int channel, bool c2h);
+void hw_set_global_csr(struct xlnx_dma_dev *xdev);
+int hw_set_fmap(struct xlnx_dma_dev *xdev, u16 func_id, unsigned int qbase,
+		unsigned int qmax);
+int hw_read_fmap(struct xlnx_dma_dev *xdev, u16 func_id, unsigned int *qbase,
+		unsigned int *qmax);
+int hw_indirect_ctext_prog(struct xlnx_dma_dev *xdev, unsigned int qid,
+		enum ind_ctxt_cmd_op op,
+		enum ind_ctxt_cmd_sel sel, u32 *data,
+		unsigned int cnt, bool verify);
+int hw_init_global_context_memory(struct xlnx_dma_dev *xdev);
+int hw_init_qctxt_memory(struct xlnx_dma_dev *xdev, unsigned int qbase,
+		unsigned int qmax);
+int hw_indirect_stm_prog(struct xlnx_dma_dev *xdev, unsigned int qid_hw,
+		u8 fid, enum ind_stm_cmd_op op,
+		enum ind_stm_addr addr, u32 *data, unsigned int cnt,
+		bool clear);
+int qdma_trq_c2h_config(struct xlnx_dma_dev *xdev);
+
+#endif /* #ifndef __QDMA_VF__ */
+
+#ifndef __QDMA_VF__
+#define	QDMA_VERSION_REG			0x134
+#define		M_RTL_VERSION_MASK		0xFF0000
+#define		S_RTL_VERSION_SHIFT		16
+#define		M_VIVADO_RELEASE_ID_MASK	0x0F000000
+#define		S_VIVADO_RELEASE_ID_SHIFT	24
+#define		M_EVEREST_IP_MASK		0x10000000
+#define		S_EVEREST_IP_SHIFT		28
+#else
+#define	QDMA_VERSION_REG			0x1014
+#define		M_RTL_VERSION_MASK		0xFF
+#define		S_RTL_VERSION_SHIFT		0
+#define		M_VIVADO_RELEASE_ID_MASK	0x0F00
+#define		S_VIVADO_RELEASE_ID_SHIFT	8
+#define		M_EVEREST_IP_MASK		0x1000
+#define		S_EVEREST_IP_SHIFT		12
+#endif
+
+/* HW Error Registers */
+
+#define QDMA_C2H_ERR_INT				0x0B04
+#define		S_QDMA_C2H_ERR_INT_FUNC		0
+#define		M_QDMA_C2H_ERR_INT_FUNC		0xFFU
+#define		V_QDMA_C2H_ERR_INT_FUNC(x)	((x) << S_QDMA_C2H_ERR_INT_FUNC)
+
+#define		S_QDMA_C2H_ERR_INT_VEC		12
+#define		M_QDMA_C2H_ERR_INT_VEC		0x7FFU
+#define		V_QDMA_C2H_ERR_INT_VEC(x)	((x) << S_QDMA_C2H_ERR_INT_VEC)
+
+#define		S_QDMA_C2H_ERR_INT_F_ERR_INT_ARM	24
+
+
+#define QDMA_REG_GLBL_ERR_STAT				0x248
+#define QDMA_REG_GLBL_ERR_MASK				0x24C
+#define QDMA_REG_GLBL_ERR_MASK_VALUE			0xFFFU
+#define		QDMA_REG_GLBL_F_ERR_RAM_SBE			0
+#define		QDMA_REG_GLBL_F_ERR_RAM_DBE			1
+#define		QDMA_REG_GLBL_F_ERR_DSC				2
+#define		QDMA_REG_GLBL_F_ERR_TRQ				3
+#define		QDMA_REG_GLBL_F_ERR_H2C_MM_0		4
+#define		QDMA_REG_GLBL_F_ERR_H2C_MM_1		5
+#define		QDMA_REG_GLBL_F_ERR_C2H_MM_0		6
+#define		QDMA_REG_GLBL_F_ERR_C2H_MM_1		7
+#define		QDMA_REG_GLBL_F_ERR_C2H_ST			8
+#define		QDMA_REG_GLBL_F_ERR_IND_CTXT_CMD	9
+#define		QDMA_REG_GLBL_F_ERR_BDG				10
+#define		QDMA_REG_GLBL_F_ERR_H2C_ST			11
+
+
+/* Global Descriptor Error */
+#define QDMA_GLBL_DSC_ERR_STS					0x254
+#define QDMA_GLBL_DSC_ERR_MSK					0x258
+#define QDMA_GLBL_DSC_ERR_MSK_VALUE				0x1F9023FU
+#define		QDMA_GLBL_DSC_ERR_STS_A_F_HDR_POIS		0
+#define		QDMA_GLBL_DSC_ERR_STS_A_F_UR_CA			1
+#define		QDMA_GLBL_DSC_ERR_STS_A_F_PARAM_MISMATCH	2
+#define		QDMA_GLBL_DSC_ERR_STS_A_F_UNEXP_ADDR		3
+#define		QDMA_GLBL_DSC_ERR_STS_A_F_TAG			4
+#define		QDMA_GLBL_DSC_ERR_STS_A_F_FLR			5
+#define		QDMA_GLBL_DSC_ERR_STS_A_F_TIMEOUT		9
+#define		QDMA_GLBL_DSC_ERR_STS_A_F_DATA_POIS		16
+#define		QDMA_GLBL_DSC_ERR_STS_A_F_FLR_CANCEL		19
+#define		QDMA_GLBL_DSC_ERR_STS_A_F_DMA			20
+#define		QDMA_GLBL_DSC_ERR_STS_A_F_DSC			21
+#define		QDMA_GLBL_DSC_ERR_STS_A_F_RQ_CHAN		22
+#define		QDMA_GLBL_DSC_ERR_STS_A_F_RAM_DBE		23
+#define		QDMA_GLBL_DSC_ERR_STS_A_F_RAM_SBE		24
+
+
+#define QDMA_GLBL_DSC_ERR_LOG0						0x25C
+#define QDMA_GLBL_DSC_ERR_LOG1						0x260
+
+
+
+#define QDMA_GLBL_TRQ_ERR_STS						0x264
+#define		QDMA_GLBL_TRQ_ERR_STS_F_UN_MAPPED		0
+#define		QDMA_GLBL_TRQ_ERR_STS_F_QID_RANGE		1
+#define		QDMA_GLBL_TRQ_ERR_STS_F_VF_ACCESS		2
+#define		QDMA_GLBL_TRQ_ERR_STS_F_TCP_TIMEOUT		3
+
+#define QDMA_GLBL_TRQ_ERR_MSK						0x268
+#define QDMA_GLBL_TRQ_ERR_MSK_VALUE					0xFU
+
+#define QDMA_GLBL_TRQ_ERR_LOG						0x26C
+#define		S_QDMA_GLBL_TRQ_ERR_LOG_ADDR			0
+#define		M_QDMA_GLBL_TRQ_ERR_LOG_ADDR			0xFFFFU
+#define		V_QDMA_GLBL_TRQ_ERR_LOG_ADDR(x)		\
+	((x) << S_QDMA_GLBL_TRQ_ERR_LOG_ADDR)
+#define		S_QDMA_GLBL_TRQ_ERR_LOG_FUNC			16
+#define		M_QDMA_GLBL_TRQ_ERR_LOG_FUNC			0xFFFU
+#define		V_QDMA_GLBL_TRQ_ERR_LOG_FUNC(x)		\
+	((x) << S_QDMA_GLBL_TRQ_ERR_LOG_FUNC)
+#define		S_QDMA_GLBL_TRQ_ERR_LOG_TARGET			28
+#define		M_QDMA_GLBL_TRQ_ERR_LOG_TARGET			0xFU
+#define		V_QDMA_GLBL_TRQ_ERR_LOG_TARGET(x)	\
+	((x) << S_QDMA_GLBL_TRQ_ERR_LOG_TARGET)
+
+/* TRQ errors */
+/**
+ * trq_err_sel - possible trq errors
+ */
+enum trq_err_sel {
+	/**< trq errors being to global 1 registers*/
+	QDMA_TRQ_ERR_SEL_GLBL1 = 1,
+	/**< trq errors being to global 2 registers*/
+	QDMA_TRQ_ERR_SEL_GLBL2 = 2,
+	/**< trq errors being to global registers*/
+	QDMA_TRQ_ERR_SEL_GLBL,
+	/**< trq errors being to fmap registers*/
+	QDMA_TRQ_ERR_SEL_FMAP,
+	/**< trq errors being to indirect interrupt*/
+	QDMA_TRQ_ERR_SEL_IND,
+	/**< trq errors being to c2h registers*/
+	QDMA_TRQ_ERR_SEL_C2H,
+	/**< trq errors being to c2h mm0 registers*/
+	QDMA_TRQ_ERR_SEL_C2H_MM0 =      9,
+	/**< trq errors being to h2c mm0 registers*/
+	QDMA_TRQ_ERR_SEL_H2C_MM0  = 11,
+	/**< trq errors being to pf queue registers */
+	QDMA_TRQ_ERR_SEL_QUEUE_PF = 13,
+};
+
+/* C2H ERROR Status Registers */
+#define QDMA_REG_C2H_ERR_STAT					0xAF0
+#define QDMA_REG_C2H_ERR_MASK					0xAF4
+#define QDMA_REG_C2H_ERR_MASK_VALUE				0xFEDBU
+#define		QDMA_REG_C2H_ERR_F_MTY_MISMATCH			0
+#define		QDMA_REG_C2H_ERR_F_LEN_MISMATCH			1
+#define		QDMA_REG_C2H_ERR_F_QID_MISMATCH			3
+#define		QDMA_REG_C2H_ERR_F_DSC_RSP_ERR			4
+#define		QDMA_REG_C2H_ERR_F_ENG_WPL_DATA_PAR		6
+#define		QDMA_REG_C2H_ERR_F_MSI_INT_FAIL			7
+#define		QDMA_REG_C2H_ERR_F_DESC_CNT			9
+#define		QDMA_REG_C2H_ERR_F_PORT_ID_CTXT_MISMATCH	10
+#define		QDMA_REG_C2H_ERR_F_PORT_ID_BYP_IN_MISMATCH	11
+#define		QDMA_REG_C2H_ERR_F_CMPT_INV_Q			12
+#define		QDMA_REG_C2H_ERR_F_CMPT_QFULL			13
+#define		QDMA_REG_C2H_ERR_F_CMPT_CIDX			14
+#define		QDMA_REG_C2H_ERR_F_CMPT_PRTY			15
+
+
+#define QDMA_C2H_FATAL_ERR_STAT                                      0xAF8
+#define QDMA_C2H_FATAL_ERR_MASK                                      0xAFC
+#define QDMA_C2H_FATAL_ERR_MASK_VALUE                                0x7DF1BU
+#define		QDMA_C2H_FATAL_ERR_STAT_MTY_MISMATCH                 0
+#define		QDMA_C2H_FATAL_ERR_STAT_LEN_MISMATCH                 1
+#define		QDMA_C2H_FATAL_ERR_STAT_QID_MISMATCH                 3
+#define		QDMA_C2H_FATAL_ERR_STAT_TIMER_FIFO_RAM_RDBE          4
+#define		QDMA_C2H_FATAL_ERR_STAT_PFTCH_LL_RAM_RDBE            8
+#define		QDMA_C2H_FATAL_ERR_STAT_CMPT_CTXT_RAM_RDBE            9
+#define		QDMA_C2H_FATAL_ERR_STAT_PFTCH_CTXT_RAM_RDBE          10
+#define		QDMA_C2H_FATAL_ERR_STAT_DESC_REQ_FIFO_RAM_RDBE       11
+#define		QDMA_C2H_FATAL_ERR_STAT_INT_CTXT_RAM_RDBE            12
+#define		QDMA_C2H_FATAL_ERR_STAT_CMPT_AGGR_DAT_RAM_DBE         14
+#define		QDMA_C2H_FATAL_ERR_STAT_TUSER_FIFO_RAM_DBE           15
+#define		QDMA_C2H_FATAL_ERR_STAT_QID_FIFO_RAM_DBE             16
+#define		QDMA_C2H_FATAL_ERR_STAT_PLD_FIFO_RAM_DBE             17
+#define		QDMA_C2H_FATAL_ERR_STAT_WPL_DAT_PAR                  18
+
+#define	QDMA_C2H_FATAL_ERR_ENABLE					0xB00
+#define		QDMA_C2H_FATAL_ERR_ENABLE_F_EN_WRQ_DIS			0
+#define		QDMA_C2H_FATAL_ERR_ENABLE_F_EN_WPL_PAR_INV		1
+
+
+#define QDMA_C2H_FIRST_ERR_QID				0xB30
+#define		S_QDMA_C2H_FIRST_ERR_QID		0
+#define		M_QDMA_C2H_FIRST_ERR_QID		0xFFFU
+#define		V_QDMA_C2H_FIRST_ERR_QID(x)	\
+	((x) << S_QDMA_C2H_FIRST_ERR_QID)
+#define		S_QDMA_C2H_FIRST_ERR_TYPE		16
+#define		M_QDMA_C2H_FIRST_ERR_TYPE		0x1FU
+#define		V_QDMA_C2H_FIRST_ERR_TYPE(x)	\
+	((x) << S_QDMA_C2H_FIRST_ERR_TYPE)
+
+#define QDMA_C2H_PFCH_CACHE_DEPTH        0xBE0
+#define QDMA_C2H_CMPT_COAL_BUF_DEPTH     0xBE4
+
+#define QDMA_H2C_ERR_STAT					0xE00
+#define QDMA_H2C_ERR_MASK					0xE04
+#define QDMA_H2C_ERR_MASK_VALUE				0x7U
+#define		QDMA_H2C_ERR_ZERO_LEN_DSC		0
+#define		QDMA_H2C_ERR_CMPL_STATUS_MOP			1
+#define		QDMA_H2C_ERR_NO_DMA_DSC			2
+
+#define QDMA_H2C_DATA_THRESHOLD             0xE24
+
+/* TRQ errors */
+/**
+ * hw_err_type_sel - hw error types
+ */
+enum hw_err_type_sel {
+	GLBL_ERR = 0,		/**< global errors*/
+	GLBL_DSC_ERR,		/**< descriptor errors*/
+	GLBL_TRQ_ERR,		/**< trq errors*/
+	C2H_ERR,		/**< c2h errors*/
+	C2H_FATAL_ERR,		/**< c2h fatal errors*/
+	H2C_ERR,		/**< h2c errors*/
+	ECC_SB_ERR,		/**< ECC single bit error */
+	ECC_DB_ERR,		/**< ECC double bit error */
+	HW_ERRS			/**< hardware errors*/
+};
+
+/** ECC Single bit errors */
+#define	QDMA_RAM_SBE_MASK_A			(0xF0)
+#define QDMA_RAM_SBE_STAT_A			(0xF4)
+#define	QDMA_RAM_SBE_MASK_VALUE		(0xFFFFFF11U)
+#define		QDMA_RAM_SBE_STAT_MI_H2C0_DAT_ERR	0
+#define		QDMA_RAM_SBE_STAT_MI_C2H0_DAT_ERR	4
+#define		QDMA_RAM_SBE_STAT_H2C_RD_BRG_DAT_ERR	9
+#define		QDMA_RAM_SBE_STAT_H2C_WR_BRG_DAT_ERR	10
+#define		QDMA_RAM_SBE_STAT_C2H_RD_BRG_DAT_ERR	11
+#define		QDMA_RAM_SBE_STAT_C2H_WR_BRG_DAT_ERR	12
+#define		QDMA_RAM_SBE_STAT_FUNC_MAP_ERR		13
+#define		QDMA_RAM_SBE_STAT_DSC_HW_CTXT_ERR	14
+#define		QDMA_RAM_SBE_STAT_DSC_CRD_RCV_ER	15
+#define		QDMA_RAM_SBE_STAT_DSC_SW_CTXT_ERR	16
+#define		QDMA_RAM_SBE_STAT_DSC_CPLI_ERR		17
+#define		QDMA_RAM_SBE_STAT_DSC_CPLD_ERR		18
+#define		QDMA_RAM_SBE_STAT_PASID_CTXT_RAM_ERR	19
+#define		QDMA_RAM_SBE_STAT_TIMER_FIFO_RAM_ERR	20
+#define		QDMA_RAM_SBE_STAT_PAYLOAD_FIFO_RAM_ERR	21
+#define		QDMA_RAM_SBE_STAT_QID_FIFO_RAM_ERR	22
+#define		QDMA_RAM_SBE_STAT_TUSER_FIFO_RAM_ERR	23
+#define		QDMA_RAM_SBE_STAT_WRB_COAL_DATA_RAM_ERR	24
+#define		QDMA_RAM_SBE_STAT_INT_QID2VEC_RAM_ERR	25
+#define		QDMA_RAM_SBE_STAT_INT_CTXT_RAM_ERR	26
+#define		QDMA_RAM_SBE_STAT_DESC_REQ_FIFO_RAM_ERR	27
+#define		QDMA_RAM_SBE_STAT_PFCH_CTXT_RAM_ERR	28
+#define		QDMA_RAM_SBE_STAT_WRB_CTXT_RAM_ERR	29
+#define		QDMA_RAM_SBE_STAT_PFCH_LL_RAM_ERR	30
+#define		QDMA_RAM_SBE_STAT_H2C_PEND_FIFO_ERR	31
+
+/** ECC Double Bit errors */
+#define	QDMA_RAM_DBE_MASK_A		(0xF8)
+#define QDMA_RAM_DBE_STAT_A		(0xFc)
+#define QDMA_RAM_DBE_MASK_VALUE		(0xFFFFFF11U)
+#define		QDMA_RAM_DBE_STAT_MI_H2C0_DAT_ERR	31
+#define		QDMA_RAM_DBE_STAT_MI_C2H0_DAT_ERR	30
+#define		QDMA_RAM_DBE_STAT_H2C_RD_BRG_DAT_ERR	29
+#define		QDMA_RAM_DBE_STAT_H2C_WR_BRG_DAT_ERR	28
+#define		QDMA_RAM_DBE_STAT_C2H_RD_BRG_DAT_ERR	27
+#define		QDMA_RAM_DBE_STAT_C2H_WR_BRG_DAT_ERR	26
+#define		QDMA_RAM_DBE_STAT_FUNC_MAP_ERR		25
+#define		QDMA_RAM_DBE_STAT_DSC_HW_CTXT_ERR	24
+#define		QDMA_RAM_DBE_STAT_DSC_CRD_RCV_ERR	23
+#define		QDMA_RAM_DBE_STAT_DSC_SW_CTXT_ERR	22
+#define		QDMA_RAM_DBE_STAT_DSC_CPLI_ERR		21
+#define		QDMA_RAM_DBE_STAT_DSC_CPLD_ERR		20
+#define		QDMA_RAM_DBE_STAT_PASID_CTXT_RAM_ERR	19
+#define		QDMA_RAM_DBE_STAT_TIMER_FIFO_RAM_ERR	18
+#define		QDMA_RAM_DBE_STAT_PAYLOAD_FIFO_RAM_ERR	17
+#define		QDMA_RAM_DBE_STAT_QID_FIFO_RAM_ERR	16
+#define		QDMA_RAM_DBE_STAT_TUSER_FIFO_RAM_ERR	15
+#define		QDMA_RAM_DBE_STAT_WRB_COAL_DATA_RAM_ERR	14
+#define		QDMA_RAM_DBE_STAT_INT_QID2VEC_RAM_ERR	13
+#define		QDMA_RAM_DBE_STAT_INT_CTXT_RAM_ERR	12
+#define		QDMA_RAM_DBE_STAT_DESC_REQ_FIFO_RAM_ERR	11
+#define		QDMA_RAM_DBE_STAT_PFCH_CTXT_RAM_ERR	10
+#define		QDMA_RAM_DBE_STAT_WRB_CTXT_RAM_ERR	9
+#define		QDMA_RAM_DBE_STAT_PFCH_LL_RAM_ERR	4
+#define		QDMA_RAM_DBE_STAT_H2C_PEND_FIFO_ERR	0
+
+#endif /* ifndef __QDMA_REGS_H__ */
diff --git a/QDMA/linux-kernel/libqdma/qdma_sriov.c b/QDMA/linux-kernel/libqdma/qdma_sriov.c
new file mode 100644
index 0000000..c14c28b
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/qdma_sriov.c
@@ -0,0 +1,213 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#define pr_fmt(fmt)	KBUILD_MODNAME ":%s: " fmt, __func__
+
+#include <linux/kernel.h>
+#include <linux/string.h>
+#include <linux/errno.h>
+
+#include "xdev.h"
+#include "qdma_mbox.h"
+
+#ifdef __QDMA_VF__
+int xdev_sriov_vf_offline(struct xlnx_dma_dev *xdev, u8 func_id)
+{
+	struct mbox_msg *m;
+	int rv;
+
+	m = qdma_mbox_msg_alloc(xdev, MBOX_OP_BYE);
+	if (!m)
+		return -ENOMEM;
+
+	rv = qdma_mbox_msg_send(xdev, m, 0, 0, 0);
+	if (rv < 0) {
+		pr_info("%s, send bye failed %d.\n", xdev->conf.name, rv);
+		return rv;
+	}
+
+	return 0;
+}
+
+int xdev_sriov_vf_online(struct xlnx_dma_dev *xdev, u8 func_id)
+{
+	struct mbox_msg *m;
+	int rv;
+
+	m = qdma_mbox_msg_alloc(xdev, MBOX_OP_HELLO);
+	if (!m)
+		return -ENOMEM;
+
+	rv = qdma_mbox_msg_send(xdev, m, 0, 0, 0);
+	if (rv < 0) {
+		pr_info("%s, send hello failed %d.\n",  xdev->conf.name, rv);
+		return rv;
+	}
+
+	/* initial value should always be qmax =1, qbase=0 */
+	xdev->conf.qsets_max = 1;
+	xdev->conf.qsets_base = 0;
+	qdma_device_set_cfg_state((unsigned long)xdev, QMAX_CFG_INITIAL);
+
+	return 0;
+}
+
+#elif defined(CONFIG_PCI_IOV)
+
+struct qdma_vf_info {
+	unsigned short func_id;
+	unsigned short qbase;
+	unsigned short qmax;
+	unsigned short filler;
+};
+
+void xdev_sriov_disable(struct xlnx_dma_dev *xdev)
+{
+	struct pci_dev *pdev = xdev->conf.pdev;
+
+	pci_disable_sriov(pdev);
+
+	kfree(xdev->vf_info);
+	xdev->vf_info = NULL;
+	xdev->vf_count = 0;
+
+	qdma_mbox_stop(xdev);
+}
+
+int xdev_sriov_enable(struct xlnx_dma_dev *xdev, int num_vfs)
+{
+	struct pci_dev *pdev = xdev->conf.pdev;
+	int current_vfs = pci_num_vf(pdev);
+	struct qdma_vf_info *vf;
+	int i;
+	int rv;
+
+	if (current_vfs) {
+		dev_err(&pdev->dev, "%d VFs already enabled!n", current_vfs);
+		return current_vfs;
+	}
+
+	vf = kmalloc(num_vfs * (sizeof(struct qdma_vf_info)), GFP_KERNEL);
+	if (!vf) {
+		pr_info("%s OOM, %d * %ld.\n",
+			xdev->conf.name, num_vfs, sizeof(struct qdma_vf_info));
+		return -ENOMEM;
+	}
+
+	for (i = 0; i < num_vfs; i++)
+		vf[i].func_id = QDMA_FUNC_ID_INVALID;
+
+	xdev->vf_count = num_vfs;
+	xdev->vf_info = vf;
+
+	pr_debug("%s: req %d, current %d, assigned %d.\n",
+		xdev->conf.name, num_vfs, current_vfs, pci_vfs_assigned(pdev));
+
+	rv = pci_enable_sriov(pdev, num_vfs);
+	if (rv) {
+		pr_info("%s, enable sriov %d failed %d.\n",
+			xdev->conf.name, num_vfs, rv);
+		xdev_sriov_disable(xdev);
+		return 0;
+	}
+
+	qdma_mbox_start(xdev);
+
+	pr_debug("%s: done, req %d, current %d, assigned %d.\n",
+		xdev->conf.name, num_vfs, pci_num_vf(pdev),
+		pci_vfs_assigned(pdev));
+
+	return num_vfs;
+}
+
+int qdma_device_sriov_config(struct pci_dev *pdev, unsigned long dev_hndl,
+				int num_vfs)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+	int rv;
+
+	if (!dev_hndl)
+		return -EINVAL;
+
+	rv = xdev_check_hndl(__func__, pdev, dev_hndl);
+	if (rv < 0)
+		return rv;
+
+	/* if zeror disable sriov */
+	if (!num_vfs) {
+		xdev_sriov_disable(xdev);
+		return 0;
+	}
+
+	rv = xdev_sriov_enable(xdev, num_vfs);
+	if (rv < 0)
+		return rv;
+
+	return xdev->vf_count;
+}
+
+void xdev_sriov_vf_offline(struct xlnx_dma_dev *xdev, u8 func_id)
+{
+	struct qdma_vf_info *vf = (struct qdma_vf_info *)xdev->vf_info;
+	int i;
+
+	for (i = 0; i < xdev->vf_count; i++, vf++) {
+		if (vf->func_id == func_id) {
+			vf->func_id = QDMA_FUNC_ID_INVALID;
+			vf->qbase = 0;
+			vf->qmax = 0;
+		}
+	}
+}
+
+int xdev_sriov_vf_online(struct xlnx_dma_dev *xdev, u8 func_id)
+{
+	struct qdma_vf_info *vf = (struct qdma_vf_info *)xdev->vf_info;
+	int i;
+
+	for (i = 0; i < xdev->vf_count; i++, vf++) {
+		if (vf->func_id == QDMA_FUNC_ID_INVALID) {
+			vf->func_id = func_id;
+			return 0;
+		}
+	}
+
+	pr_info("%s, func 0x%x, NO free slot.\n", xdev->conf.name, func_id);
+	return -EINVAL;
+}
+
+int xdev_sriov_vf_fmap(struct xlnx_dma_dev *xdev, u8 func_id,
+			unsigned short qbase, unsigned short qmax)
+{
+	struct qdma_vf_info *vf = (struct qdma_vf_info *)xdev->vf_info;
+	int i;
+
+	for (i = 0; i < xdev->vf_count; i++, vf++) {
+		if (vf->func_id == func_id) {
+			vf->qbase = qbase;
+			vf->qmax = qmax;
+			return 0;
+		}
+	}
+
+	pr_info("%s, func 0x%x, NO match.\n", xdev->conf.name, func_id);
+	return -EINVAL;
+}
+
+#endif /* if defined(CONFIG_PCI_IOV) && !defined(__QDMA_VF__) */
diff --git a/QDMA/linux-kernel/libqdma/qdma_st_c2h.c b/QDMA/linux-kernel/libqdma/qdma_st_c2h.c
new file mode 100644
index 0000000..cc1dfe4
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/qdma_st_c2h.c
@@ -0,0 +1,699 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#define pr_fmt(fmt)     KBUILD_MODNAME ":%s: " fmt, __func__
+
+#include "qdma_descq.h"
+
+#include <linux/kernel.h>
+#include <linux/delay.h>
+
+#include "qdma_device.h"
+#include "qdma_intr.h"
+#include "qdma_regs.h"
+#include "qdma_thread.h"
+#include "qdma_context.h"
+#include "thread.h"
+#include "qdma_compat.h"
+#include "qdma_st_c2h.h"
+#include "version.h"
+
+struct cmpl_info {
+	/* cmpl entry stat bits */
+	union {
+		u8 fbits;
+		struct cmpl_flag {
+			u8 format:1;
+			u8 color:1;
+			u8 err:1;
+			u8 desc_used:1;
+			u8 eot:1;
+			u8 filler:3;
+		} f;
+	};
+	u8 rsvd;
+	u16 len;
+	/* for tracking */
+	unsigned int pidx;
+	__be64 *entry;
+};
+
+/*
+ * ST C2H descq (i.e., freelist) RX buffers
+ */
+
+static inline void flq_unmap_one(struct qdma_sw_sg *sdesc,
+				struct qdma_c2h_desc *desc, struct device *dev,
+				unsigned char pg_order)
+{
+	if (sdesc->dma_addr) {
+		desc->dst_addr = 0UL;
+		dma_unmap_page(dev, sdesc->dma_addr, PAGE_SIZE << pg_order,
+				DMA_FROM_DEVICE);
+		sdesc->dma_addr = 0UL;
+	}
+}
+
+static inline void flq_free_one(struct qdma_sw_sg *sdesc,
+				struct qdma_c2h_desc *desc, struct device *dev,
+				unsigned char pg_order)
+{
+	if (sdesc && sdesc->pg) {
+		flq_unmap_one(sdesc, desc, dev, pg_order);
+		__free_pages(sdesc->pg, pg_order);
+		sdesc->pg = NULL;
+	}
+}
+
+static inline int flq_fill_one(struct qdma_sw_sg *sdesc,
+				struct qdma_c2h_desc *desc, struct device *dev,
+				int node, unsigned char pg_order, gfp_t gfp)
+{
+	struct page *pg;
+	dma_addr_t mapping;
+
+	pg = alloc_pages_node(node, __GFP_COMP | gfp, pg_order);
+	if (unlikely(!pg)) {
+		pr_info("OOM, order %d.\n", pg_order);
+		return -ENOMEM;
+	}
+
+	mapping = dma_map_page(dev, pg, 0, PAGE_SIZE << pg_order,
+				PCI_DMA_FROMDEVICE);
+	if (unlikely(dma_mapping_error(dev, mapping))) {
+		dev_err(dev, "page 0x%p mapping error 0x%llx.\n",
+			pg, (unsigned long long)mapping);
+		__free_pages(pg, pg_order);
+		return -EINVAL;
+	}
+
+	sdesc->pg = pg;
+	sdesc->dma_addr = mapping;
+	sdesc->len = PAGE_SIZE << pg_order;
+	sdesc->offset = 0;
+
+	desc->dst_addr = sdesc->dma_addr;
+	return 0;
+}
+
+void descq_flq_free_resource(struct qdma_descq *descq)
+{
+	struct xlnx_dma_dev *xdev = descq->xdev;
+	struct device *dev = &xdev->conf.pdev->dev;
+	struct qdma_flq *flq = (struct qdma_flq *)descq->flq;
+	struct qdma_sw_sg *sdesc = flq->sdesc;
+	struct qdma_c2h_desc *desc = flq->desc;
+	unsigned char pg_order = flq->pg_order;
+	int i;
+
+	for (i = 0; i < flq->size; i++, sdesc++, desc++) {
+		if (sdesc)
+			flq_free_one(sdesc, desc, dev, pg_order);
+		else
+			break;
+	}
+
+	if (flq->sdesc) {
+		kfree(flq->sdesc);
+		flq->sdesc = NULL;
+		flq->sdesc_info = NULL;
+	}
+	memset(flq, 0, sizeof(struct qdma_flq));
+}
+
+int descq_flq_alloc_resource(struct qdma_descq *descq)
+{
+	struct xlnx_dma_dev *xdev = descq->xdev;
+	struct qdma_flq *flq = (struct qdma_flq *)descq->flq;
+	struct device *dev = &xdev->conf.pdev->dev;
+	int node = dev_to_node(dev);
+	struct qdma_sw_sg *sdesc, *prev = NULL;
+	struct qdma_sdesc_info *sinfo, *sprev = NULL;
+	struct qdma_c2h_desc *desc = flq->desc;
+	int i;
+	int rv = 0;
+
+	sdesc = kzalloc_node(flq->size * (sizeof(struct qdma_sw_sg) +
+					  sizeof(struct qdma_sdesc_info)),
+				GFP_KERNEL, node);
+	if (!sdesc) {
+		pr_info("OOM, sz %u.\n", flq->size);
+		return -ENOMEM;
+	}
+	flq->sdesc = sdesc;
+	flq->sdesc_info = sinfo = (struct qdma_sdesc_info *)(sdesc + flq->size);
+
+	/* make the flq to be a linked list ring */
+	for (i = 0; i < flq->size; i++, prev = sdesc, sdesc++,
+					sprev = sinfo, sinfo++) {
+		if (prev)
+			prev->next = sdesc;
+		if (sprev)
+			sprev->next = sinfo;
+	}
+	/* last entry's next points to the first entry */
+	prev->next = flq->sdesc;
+	sprev->next = flq->sdesc_info;
+
+	for (sdesc = flq->sdesc, i = 0; i < flq->size; i++, sdesc++, desc++) {
+		rv = flq_fill_one(sdesc, desc, dev, node, flq->pg_order,
+				GFP_KERNEL);
+		if (rv < 0) {
+			descq_flq_free_resource(descq);
+			return rv;
+		}
+	}
+
+	descq->cidx_cmpt_pend = 0;
+return 0;
+}
+
+static int qdma_flq_refill(struct qdma_descq *descq, int idx, int count,
+			int recycle, gfp_t gfp)
+{
+	struct xlnx_dma_dev *xdev = descq->xdev;
+	struct qdma_flq *flq = (struct qdma_flq *)descq->flq;
+	struct qdma_sw_sg *sdesc = flq->sdesc + idx;
+	struct qdma_c2h_desc *desc = flq->desc + idx;
+	struct qdma_sdesc_info *sinfo = flq->sdesc_info + idx;
+	int order = flq->pg_order;
+	int i;
+
+	for (i = 0; i < count; i++, idx++, sdesc++, desc++, sinfo++) {
+
+		if (idx == flq->size) {
+			idx = 0;
+			sdesc = flq->sdesc;
+			desc = flq->desc;
+			sinfo = flq->sdesc_info;
+		}
+
+		if (recycle) {
+			sdesc->len = PAGE_SIZE << order;
+			sdesc->offset = 0;
+		} else {
+			struct device *dev = &xdev->conf.pdev->dev;
+			int node = dev_to_node(dev);
+			int rv;
+
+			flq_unmap_one(sdesc, desc, dev, order);
+			rv = flq_fill_one(sdesc, desc, dev, node, order, gfp);
+			if (unlikely(rv < 0)) {
+				if (rv == -ENOMEM)
+					flq->alloc_fail++;
+				else
+					flq->mapping_err++;
+
+				break;
+			}
+		}
+		sinfo->fbits = 0;
+		descq->avail++;
+	}
+	if (list_empty(&descq->work_list) &&
+			list_empty(&descq->pend_list)) {
+		descq->pend_list_empty = 1;
+		if (descq->q_stop_wait)
+			qdma_waitq_wakeup(&descq->pend_list_wq);
+	}
+
+	return i;
+}
+
+/*
+ *
+ */
+int descq_st_c2h_read(struct qdma_descq *descq, struct qdma_request *req,
+			bool update_pidx, bool refill)
+{
+	struct qdma_sgt_req_cb *cb = qdma_req_cb_get(req);
+	struct qdma_flq *flq = (struct qdma_flq *)descq->flq;
+	unsigned int pidx = flq->pidx_pend;
+	struct qdma_sw_sg *fsg = flq->sdesc + pidx;
+	struct qdma_sw_sg *tsg = req->sgl;
+	unsigned int fsgcnt = ring_idx_delta(descq->pidx, pidx, flq->size);
+	unsigned int tsgoff = cb->sg_offset;
+	unsigned int foff = 0;
+	int i = 0, j = 0;
+	unsigned int copied = 0;
+
+	if (!fsgcnt)
+		return 0;
+
+	if (cb->sg_idx) {
+		for ( ; tsg && j < cb->sg_idx; j++)
+			tsg = tsg->next;
+
+		if (!tsg) {
+			pr_err("tsg error, index %u/%u.\n",
+				cb->sg_idx, req->sgcnt);
+			return -EINVAL;
+		}
+	}
+
+	while ((i < fsgcnt) && tsg) {
+		unsigned int flen = fsg->len;
+		unsigned char *faddr = page_address(fsg->pg) + fsg->offset;
+
+		foff = 0;
+
+		while (flen && tsg) {
+			unsigned int toff = tsg->offset + tsgoff;
+			unsigned int copy = min_t(unsigned int, flen,
+						 tsg->len - tsgoff);
+
+			if (!req->no_memcpy)
+				memcpy(page_address(tsg->pg) + toff,
+				       faddr, copy);
+
+			faddr += copy;
+			flen -= copy;
+			foff += copy;
+			tsgoff += copy;
+			copied += copy;
+
+			if (tsgoff == tsg->len) {
+				tsg = tsg->next;
+				tsgoff = 0;
+				j++;
+			}
+		}
+
+		if (foff == fsg->len) {
+			struct qdma_sdesc_info *sinfo = flq->sdesc_info + pidx;
+
+			if (sinfo->f.eop)
+				descq->cidx_cmpt_pend = sinfo->cidx;
+
+			pidx = ring_idx_incr(pidx, 1, descq->conf.rngsz);
+
+			i++;
+			foff = 0;
+			fsg = fsg->next;
+		}
+	}
+
+	incr_cmpl_desc_cnt(descq, i);
+
+	if (refill && i)
+		qdma_flq_refill(descq, flq->pidx_pend, i, 1, GFP_ATOMIC);
+
+	flq->pidx_pend = ring_idx_incr(flq->pidx_pend, i, flq->size);
+	if (foff) {
+		fsg->offset += foff;
+		fsg->len -= foff;
+	}
+
+	if (i && update_pidx) {
+		i = ring_idx_decr(flq->pidx_pend, 1, flq->size);
+		descq_c2h_pidx_update(descq, i);
+	}
+
+	cb->sg_idx = j;
+	cb->sg_offset = tsgoff;
+	cb->left -= copied;
+
+	flq->pkt_dlen -= copied;
+
+	return copied;
+}
+
+static int qdma_c2h_packets_proc_dflt(struct qdma_descq *descq)
+{
+	struct qdma_sgt_req_cb *cb, *tmp;
+
+	list_for_each_entry_safe(cb, tmp, &descq->pend_list, list) {
+		int rv;
+
+		/* check for zero length dma */
+		if (!cb->left) {
+			pr_debug("%s, cb 0x%p pending, zero len.\n",
+				descq->conf.name, cb);
+
+			qdma_sgt_req_done(descq, cb, 0);
+			return 0;
+		}
+
+		rv = descq_st_c2h_read(descq, (struct qdma_request *)cb, 0, 0);
+		if (rv < 0) {
+			pr_info("req 0x%p, error %d.\n", cb, rv);
+			qdma_sgt_req_done(descq, cb, rv);
+			continue;
+		}
+
+		if (!cb->left)
+			qdma_sgt_req_done(descq, cb, 0);
+		else
+			break;
+	}
+
+	return 0;
+}
+
+static inline void cmpt_next(struct qdma_descq *descq)
+{
+	u8 *desc_cmpt_cur = descq->desc_cmpt_cur + descq->cmpt_entry_len;
+
+	descq->desc_cmpt_cur = desc_cmpt_cur;
+	if (unlikely(++descq->cidx_cmpt == descq->conf.rngsz_cmpt)) {
+		descq->cidx_cmpt = 0;
+		descq->color ^= 1;
+		descq->desc_cmpt_cur = descq->desc_cmpt;
+	}
+}
+
+static inline bool is_new_cmpl_entry(struct qdma_descq *descq,
+					struct cmpl_info *cmpl)
+{
+	return cmpl->f.color == descq->color;
+}
+
+static int parse_cmpl_entry(struct qdma_descq *descq, struct cmpl_info *cmpl)
+{
+	__be64 *cmpt = (__be64 *)descq->desc_cmpt_cur;
+
+	dma_rmb();
+
+#if 0
+	print_hex_dump(KERN_INFO, "cmpl entry ", DUMP_PREFIX_OFFSET,
+			16, 1, (void *)cmpt, descq->cmpt_entry_len,
+			false);
+#endif
+
+	cmpl->entry = cmpt;
+	cmpl->f.format = cmpt[0] & F_C2H_CMPT_ENTRY_F_FORMAT ? 1 : 0;
+	cmpl->f.color = cmpt[0] & F_C2H_CMPT_ENTRY_F_COLOR ? 1 : 0;
+	cmpl->f.err = cmpt[0] & F_C2H_CMPT_ENTRY_F_ERR ? 1 : 0;
+	cmpl->f.eot = cmpt[0] & F_C2H_CMPT_ENTRY_F_EOT ? 1 : 0;
+	cmpl->f.desc_used = cmpt[0] & F_C2H_CMPT_ENTRY_F_DESC_USED ? 1 : 0;
+	if (!cmpl->f.format && cmpl->f.desc_used) {
+		cmpl->len = (cmpt[0] >> S_C2H_CMPT_ENTRY_LENGTH) &
+				M_C2H_CMPT_ENTRY_LENGTH;
+		/* zero length transfer allowed */
+	} else
+		cmpl->len = 0;
+
+	if (unlikely(cmpl->f.err)) {
+		pr_warn("%s, ERR compl entry %u error set\n",
+				descq->conf.name, descq->cidx_cmpt);
+		goto err_out;
+	}
+
+	/*
+	 * format = 1 does not have length field, so the driver cannot
+	 * figure out how many descriptor is used
+	 */
+	if (unlikely(cmpl->f.format)) {
+		pr_err("%s: ERR cmpl. entry %u format=1.\n",
+			descq->conf.name, descq->cidx_cmpt);
+		goto err_out;
+	}
+
+	if (unlikely(!cmpl->f.desc_used && !descq->conf.cmpl_udd_en)) {
+		pr_warn("%s, ERR cmpl entry %u, desc_used 0, udd_en 0.\n",
+			descq->conf.name, descq->cidx_cmpt);
+		goto err_out;
+	}
+
+	return 0;
+
+err_out:
+	descq->err = 1;
+	print_hex_dump(KERN_INFO, "cmpl entry: ", DUMP_PREFIX_OFFSET,
+			16, 1, (void *)cmpt, descq->cmpt_entry_len,
+			false);
+	return -EINVAL;
+}
+
+static int rcv_pkt(struct qdma_descq *descq, struct cmpl_info *cmpl,
+			unsigned int len)
+{
+	unsigned int pidx = cmpl->pidx;
+	struct qdma_flq *flq = (struct qdma_flq *)descq->flq;
+	unsigned int pg_shift = flq->pg_shift;
+	unsigned int pg_mask = (1 << pg_shift) - 1;
+	unsigned int rngsz = descq->conf.rngsz;
+	/* zero length still uses one descriptor */
+	int fl_nr = len ? (len + pg_mask) >> pg_shift : 1;
+	unsigned int last = ring_idx_incr(cmpl->pidx, fl_nr - 1, rngsz);
+	unsigned int next = ring_idx_incr(last, 1, rngsz);
+	struct qdma_sw_sg *sdesc = flq->sdesc + last;
+	unsigned int cidx_next = ring_idx_incr(descq->cidx_cmpt, 1,
+					descq->conf.rngsz_cmpt);
+
+	if (descq->avail < fl_nr)
+		return -EBUSY;
+	descq->avail -= fl_nr;
+
+	if (len) {
+		unsigned int last_len = len & pg_mask;
+
+		if (last_len)
+			sdesc->len = last_len;
+	} else {
+		sdesc->len = 0;
+	}
+
+	if (descq->conf.fp_descq_c2h_packet) {
+		struct qdma_dev *qdev = xdev_2_qdev(descq->xdev);
+		int rv = descq->conf.fp_descq_c2h_packet(descq->conf.qidx +
+					(descq->conf.c2h ? qdev->qmax : 0),
+				descq->conf.quld, len, fl_nr, flq->sdesc + pidx,
+				descq->conf.cmpl_udd_en ?
+				(unsigned char *)cmpl->entry : NULL);
+
+		if (rv < 0)
+			return rv;
+
+		descq->cidx_cmpt_pend = cidx_next;
+		flq->pidx_pend = next;
+	} else {
+		int i;
+		struct qdma_sdesc_info *sinfo = flq->sdesc_info + pidx;
+
+		for (i = 0; i < fl_nr; i++, sinfo = sinfo->next) {
+			WARN_ON(sinfo->f.valid);
+			sinfo->f.valid = 1;
+			sinfo->cidx = cidx_next;
+		}
+
+		flq->sdesc_info[pidx].f.sop = 1;
+		flq->sdesc_info[last].f.eop = 1;
+
+		flq->pkt_dlen += len;
+		if (descq->conf.cmpl_udd_en)
+			flq->udd_cnt++;
+	}
+	cmpl->pidx = next;
+
+	return 0;
+}
+
+static int rcv_udd_only(struct qdma_descq *descq, struct cmpl_info *cmpl)
+{
+#ifdef XMP_DISABLE_ST_C2H_CMPL
+	__be64 cmpt_entry = cmpl->entry[0];
+#endif
+	struct qdma_flq *flq = (struct qdma_flq *)descq->flq;
+
+	pr_debug("%s, rcv udd.\n", descq->conf.name);
+#if 0
+	print_hex_dump(KERN_INFO, "cmpl entry: ", DUMP_PREFIX_OFFSET,
+			16, 1, (void *)cmpl->entry, descq->cmpt_entry_len,
+			false);
+#endif
+
+	/* udd only: no descriptor used */
+	if (descq->conf.fp_descq_c2h_packet) {
+		struct qdma_dev *qdev = xdev_2_qdev(descq->xdev);
+
+		return descq->conf.fp_descq_c2h_packet(descq->conf.qidx +
+					(descq->conf.c2h ? qdev->qmax : 0),
+				descq->conf.quld, 0, 0, NULL,
+				(unsigned char *)cmpl->entry);
+	}
+#ifdef XMP_DISABLE_ST_C2H_CMPL
+	if ((cmpt_entry & (1 << 20)) > 0) {
+		__be16 pkt_cnt = (cmpt_entry >> 32) & 0xFFFF;
+		__be16 pkt_len = (cmpt_entry >> 48) & 0xFFFF;
+		int i;
+
+		pr_info("pkt %u * %u.\n", pkt_len, pkt_cnt);
+		for (i = 0; i < pkt_cnt; i++) {
+			int rv = rcv_pkt(descq, cmpl, pkt_len);
+
+			if (rv < 0)
+				break;
+		}
+	}
+#endif
+	flq->udd_cnt++;
+
+	return 0;
+}
+
+int descq_process_completion_st_c2h(struct qdma_descq *descq, int budget,
+					bool upd_cmpl)
+{
+	struct qdma_c2h_cmpt_cmpl_status *cs =
+			(struct qdma_c2h_cmpt_cmpl_status *)
+			descq->desc_cmpt_cmpl_status;
+	unsigned int rngsz_cmpt = descq->conf.rngsz_cmpt;
+	unsigned int pidx = descq->pidx;
+	unsigned int cidx_cmpt = descq->cidx_cmpt;
+	unsigned int pidx_cmpt = cs->pidx;
+	struct qdma_flq *flq = (struct qdma_flq *)descq->flq;
+	unsigned int pidx_pend = flq->pidx_pend;
+	bool uld_handler = descq->conf.fp_descq_c2h_packet ? true : false;
+	int pend;
+	int proc_cnt = 0;
+
+	/* once an error happens, stop processing of the Q */
+	if (descq->err) {
+		pr_info("%s: err.\n", descq->conf.name);
+		return 0;
+	}
+
+	dma_rmb();
+
+	pend = ring_idx_delta(pidx_cmpt, cidx_cmpt, rngsz_cmpt);
+	if (!pend) {
+		/* SW work around where next interrupt could be missed when
+		 * there are no entries as of now
+		 */
+		if ((descq->xdev->conf.qdma_drv_mode == DIRECT_INTR_MODE) ||
+			(descq->xdev->conf.qdma_drv_mode == INDIRECT_INTR_MODE))
+			descq_cmpt_cidx_update(descq, descq->cidx_cmpt);
+		return 0;
+	}
+
+#if 0
+	print_hex_dump(KERN_INFO, "cmpl status: ", DUMP_PREFIX_OFFSET,
+				16, 1, (void *)cs, sizeof(*cs),
+				false);
+	pr_info("cmpl status: pidx 0x%x, cidx %x, color %d, int_state 0x%x.\n",
+		cs->pidx, cs->cidx, cs->color_isr_status & 0x1,
+		(cs->color_isr_status >> 1) & 0x3);
+#endif
+
+	if (!budget || budget > pend)
+		budget = pend;
+
+	while (likely(proc_cnt < budget)) {
+		struct cmpl_info cmpl;
+		int rv = parse_cmpl_entry(descq, &cmpl);
+
+		/* completion entry error, q is halted */
+		if (rv < 0)
+			return rv;
+
+		if (!is_new_cmpl_entry(descq, &cmpl))
+			break;
+
+		cmpl.pidx = pidx;
+
+		if (cmpl.f.desc_used) {
+			rv = rcv_pkt(descq, &cmpl, cmpl.len);
+		} else if (descq->conf.cmpl_udd_en) {
+			/* udd only: no descriptor used */
+			rv = rcv_udd_only(descq, &cmpl);
+		}
+
+		if (rv < 0) /* cannot process now, stop */
+			break;
+
+		pidx = cmpl.pidx;
+
+		cmpt_next(descq);
+		proc_cnt++;
+	}
+
+	if (proc_cnt) {
+		descq->pidx_cmpt = pidx_cmpt;
+		descq->pidx = pidx;
+
+		descq_cmpt_cidx_update(descq, descq->cidx_cmpt);
+		if (!descq->conf.fp_descq_c2h_packet)
+			qdma_c2h_packets_proc_dflt(descq);
+
+		/* some descq entries have been consumed */
+		if (flq->pidx_pend != pidx_pend) {
+			pend = ring_idx_delta(flq->pidx_pend, pidx_pend,
+						flq->size);
+			qdma_flq_refill(descq, pidx_pend, pend,
+					uld_handler ? 0 : 1, GFP_ATOMIC);
+
+			if (upd_cmpl && !descq->q_stop_wait) {
+				pend = ring_idx_decr(flq->pidx_pend, 1,
+						     flq->size);
+				descq_c2h_pidx_update(descq, pend);
+			}
+		}
+	}
+
+	return 0;
+}
+
+int qdma_queue_c2h_peek(unsigned long dev_hndl, unsigned long id,
+			unsigned int *udd_cnt, unsigned int *pkt_cnt,
+			unsigned int *data_len)
+{
+	struct qdma_descq *descq = qdma_device_get_descq_by_id(
+					(struct xlnx_dma_dev *)dev_hndl,
+					id, NULL, 0, 1);
+	struct qdma_flq *flq;
+
+	if (!descq)
+		return QDMA_ERR_INVALID_QIDX;
+
+	flq = (struct qdma_flq *)descq->flq;
+	*udd_cnt = flq->udd_cnt;
+	*pkt_cnt = flq->pkt_cnt;
+	*data_len = flq->pkt_dlen;
+
+	return 0;
+}
+
+int qdma_queue_packet_read(unsigned long dev_hndl, unsigned long id,
+			struct qdma_request *req, struct qdma_cmpl_ctrl *cctrl)
+{
+	struct qdma_descq *descq = qdma_device_get_descq_by_id(
+					(struct xlnx_dma_dev *)dev_hndl,
+					id, NULL, 0, 1);
+	struct qdma_sgt_req_cb *cb = qdma_req_cb_get(req);
+
+	if (!descq)
+		return QDMA_ERR_INVALID_QIDX;
+
+	if (!descq->conf.st || !descq->conf.c2h) {
+		pr_info("%s: st %d, c2h %d.\n",
+			descq->conf.name, descq->conf.st, descq->conf.c2h);
+		return -EINVAL;
+	}
+
+	memset(cb, 0, QDMA_REQ_OPAQUE_SIZE);
+
+	qdma_waitq_init(&cb->wq);
+
+	lock_descq(descq);
+	descq_st_c2h_read(descq, req, 1, 1);
+	unlock_descq(descq);
+
+	return req->count - cb->left;
+}
diff --git a/QDMA/linux-kernel/libqdma/qdma_st_c2h.h b/QDMA/linux-kernel/libqdma/qdma_st_c2h.h
new file mode 100644
index 0000000..1cbe862
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/qdma_st_c2h.h
@@ -0,0 +1,232 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#ifndef __QDMA_ST_C2H_H__
+#define __QDMA_ST_C2H_H__
+/**
+ * @file
+ * @brief This file contains the declarations for qdma st c2h processing
+ *
+ */
+#include <linux/spinlock_types.h>
+#include <linux/types.h>
+#include "qdma_descq.h"
+#ifdef ERR_DEBUG
+#include "qdma_nl.h"
+#endif
+
+/**
+ * @struct - qdma_sdesc_info
+ * @brief	qdma descriptor information
+ */
+struct qdma_sdesc_info {
+	/** pointer to next descriptor  */
+	struct qdma_sdesc_info *next;
+	/**
+	 * @union - desciptor flags
+	 */
+	union {
+		/** 8 flag bits  */
+		u8 fbits;
+		/**
+		 * @struct - flags
+		 * @brief	desciptor flags
+		 */
+		struct flags {
+			/** is descriptor valid */
+			u8 valid:1;
+			/** start of the packet */
+			u8 sop:1;
+			/** end of the packet */
+			u8 eop:1;
+			/** filler for 5 bits */
+			u8 filler:5;
+		} f;
+	};
+	/** reserved 3 bits */
+	u8 rsvd[3];
+	/** consumer index */
+	unsigned int cidx;
+};
+
+/**
+ * @struct - qdma_flq
+ * @brief qdma free list q page allocation book keeping
+ */
+struct qdma_flq {
+	/** RO: size of the decriptor */
+	unsigned int size;
+	/** RO: page order */
+	unsigned char pg_order;
+	/** RO: page shift */
+	unsigned char pg_shift;
+	/** RO: pointer to qdma c2h decriptor */
+	struct qdma_c2h_desc *desc;
+
+	/** RW: total # of udd outstanding */
+	unsigned int udd_cnt;
+	/** RW: total # of packet outstanding */
+	unsigned int pkt_cnt;
+	/** RW: total # of pkt payload length outstanding */
+	unsigned int pkt_dlen;
+	/** RW: # of available Rx buffers */
+	unsigned int avail;
+	/** RW: # of times buffer allocation failed */
+	unsigned long alloc_fail;
+	/** RW: # of RX Buffer DMA Mapping failures */
+	unsigned long mapping_err;
+	/** RW: consumer index */
+	unsigned int cidx;
+	/** RW: producer index */
+	unsigned int pidx;
+	/** RW: pending pidxes */
+	unsigned int pidx_pend;
+	/** RW: sw scatter gather list */
+	struct qdma_sw_sg *sdesc;
+	/** RW: sw descriptor info */
+	struct qdma_sdesc_info *sdesc_info;
+};
+
+/*****************************************************************************/
+/**
+ * qdma_descq_rxq_read() - read from the rx queue
+ *
+ * @param[in]	descq:		pointer to qdma_descq
+ * @param[in]	req:		queue request
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int qdma_descq_rxq_read(struct qdma_descq *descq, struct qdma_request *req);
+
+/**
+ * qdma_descq_dump_cmpt() - dump the completion queue descriptors
+ *
+ * @param[in]	descq:		pointer to qdma_descq
+ * @param[in]	start:		start completion descriptor index
+ * @param[in]	end:		end completion descriptor index
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int qdma_descq_dump_cmpt(struct qdma_descq *descq, int start, int end,
+		char *buf, int buflen);
+
+/*****************************************************************************/
+/**
+ * incr_cmpl_desc_cnt() - update the interrupt cidx
+ *
+ * @param[in]   descq:      pointer to qdma_descq
+ * @param[in]   cnt:        increment value
+ *
+ *****************************************************************************/
+void incr_cmpl_desc_cnt(struct qdma_descq *descq, unsigned int cnt);
+
+/*****************************************************************************/
+/**
+ * descq_flq_free_resource() - handler to free the pages for the request
+ *
+ * @param[in]	descq:		pointer to qdma_descq
+ *
+ * @return	none
+ *****************************************************************************/
+void descq_flq_free_resource(struct qdma_descq *descq);
+
+/*****************************************************************************/
+/**
+ * descq_flq_alloc_resource() - handler to allocate the pages for the request
+ *
+ * @param[in]	descq:		pointer to qdma_descq
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int descq_flq_alloc_resource(struct qdma_descq *descq);
+
+/*****************************************************************************/
+/**
+ * descq_process_completion_st_c2h() - handler to process the st c2h
+ *				completion request
+ *
+ * @param[in]	descq:		pointer to qdma_descq
+ * @param[in]	budget:		number of descriptors to process
+ * @param[in]	upd_cmpl:	if update completion required
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int descq_process_completion_st_c2h(struct qdma_descq *descq, int budget,
+					bool upd_cmpl);
+
+/*****************************************************************************/
+/**
+ * descq_st_c2h_read() - handler to process the st c2h read request
+ *
+ * @param[in]	descq:		pointer to qdma_descq
+ * @param[in]	req:		pointer to read request
+ * @param[in]	update:		flag to update the request
+ * @param[in]	refill:		flag to indicate whether to refill the flq
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int descq_st_c2h_read(struct qdma_descq *descq, struct qdma_request *req,
+			bool update, bool refill);
+
+/*****************************************************************************/
+/**
+ * descq_cmpt_cidx_update() - inline function to update the writeback cidx
+ *
+ * @param[in]	descq:	pointer to qdma_descq
+ * @param[in]	cidx:	cmpt consumer index
+ *
+ * @return	none
+ *****************************************************************************/
+static inline void descq_cmpt_cidx_update(struct qdma_descq *descq,
+					unsigned int cidx)
+{
+#ifdef ERR_DEBUG
+	if (descq->induce_err & (1 << dsc)) {
+		cidx = descq->conf.rngsz;
+		pr_info("inducing error %d with pidx=%u cidx = %u", dsc,
+			descq->pidx, cidx);
+	}
+#endif
+	pr_debug("%s: cidx update 0x%x, reg 0x%x.\n", descq->conf.name, cidx,
+		QDMA_REG_CMPT_CIDX_BASE +
+		descq->conf.qidx * QDMA_REG_PIDX_STEP);
+
+	cidx |= (descq->conf.irq_en << S_CMPT_CIDX_UPD_EN_INT) |
+		(descq->conf.cmpl_stat_en << S_CMPT_CIDX_UPD_EN_STAT_DESC) |
+		(V_CMPT_CIDX_UPD_TRIG_MODE(descq->conf.cmpl_trig_mode)) |
+		(V_CMPT_CIDX_UPD_TIMER_IDX(descq->conf.cmpl_timer_idx)) |
+		(V_CMPT_CIDX_UPD_CNTER_IDX(descq->conf.cmpl_cnt_th_idx));
+
+	pr_debug("%s: cidx update 0x%x, reg 0x%x.\n", descq->conf.name, cidx,
+		QDMA_REG_CMPT_CIDX_BASE +
+		descq->conf.qidx * QDMA_REG_PIDX_STEP);
+
+	__write_reg(descq->xdev,
+		QDMA_REG_CMPT_CIDX_BASE + descq->conf.qidx * QDMA_REG_PIDX_STEP,
+		cidx);
+}
+
+#endif /* ifndef __QDMA_ST_C2H_H__ */
diff --git a/QDMA/linux-kernel/libqdma/qdma_thread.c b/QDMA/linux-kernel/libqdma/qdma_thread.c
new file mode 100644
index 0000000..08e2197
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/qdma_thread.c
@@ -0,0 +1,236 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#define pr_fmt(fmt)	KBUILD_MODNAME ":%s: " fmt, __func__
+
+#include "qdma_thread.h"
+
+#include <linux/kernel.h>
+
+#include "qdma_descq.h"
+#include "thread.h"
+#include "xdev.h"
+
+/* ********************* global variables *********************************** */
+
+static unsigned int thread_cnt;
+/** completion status threads */
+static struct qdma_kthread *cs_threads;
+
+spinlock_t	qcnt_lock;
+unsigned int cpu_count;
+static unsigned int *per_cpu_qcnt;
+
+/* ********************* static function declarations *********************** */
+
+static int qdma_thread_cmpl_status_pend(struct list_head *work_item);
+static int qdma_thread_cmpl_status_proc(struct list_head *work_item);
+
+/* ********************* static function definitions ************************ */
+static int qdma_thread_cmpl_status_pend(struct list_head *work_item)
+{
+	struct qdma_descq *descq = list_entry(work_item, struct qdma_descq,
+						cmplthp_list);
+	int pend = 0;
+
+	lock_descq(descq);
+	pend = !list_empty(&descq->pend_list) || !list_empty(&descq->work_list);
+	unlock_descq(descq);
+
+	return pend;
+}
+
+static int qdma_thread_cmpl_status_proc(struct list_head *work_item)
+{
+	struct qdma_descq *descq;
+
+	descq = list_entry(work_item, struct qdma_descq, cmplthp_list);
+	qdma_descq_service_cmpl_update(descq, 0, 1);
+	return 0;
+}
+
+/* ********************* public function definitions ************************ */
+
+void qdma_thread_remove_work(struct qdma_descq *descq)
+{
+	struct qdma_kthread *cmpl_thread;
+	int cpu_idx = cpu_count;
+
+
+	lock_descq(descq);
+	cmpl_thread = descq->cmplthp;
+	descq->cmplthp = NULL;
+
+	if (descq->cpu_assigned) {
+		descq->cpu_assigned = 0;
+		cpu_idx = descq->intr_work_cpu;
+	}
+
+	pr_debug("%s removing from thread %s, %u.\n",
+		descq->conf.name, cmpl_thread ? cmpl_thread->name : "?",
+		cpu_idx);
+
+	unlock_descq(descq);
+
+	if (cpu_idx < cpu_count) {
+		spin_lock(&qcnt_lock);
+		per_cpu_qcnt[cpu_idx]--;
+		spin_unlock(&qcnt_lock);
+	}
+
+	if (cmpl_thread) {
+		lock_thread(cmpl_thread);
+		list_del(&descq->cmplthp_list);
+		cmpl_thread->work_cnt--;
+		unlock_thread(cmpl_thread);
+	}
+}
+
+void qdma_thread_add_work(struct qdma_descq *descq)
+{
+	struct qdma_kthread *thp = cs_threads;
+	unsigned int v = 0;
+	int i, idx = thread_cnt;
+
+	if (descq->xdev->conf.qdma_drv_mode != POLL_MODE) {
+		spin_lock(&qcnt_lock);
+		idx = cpu_count - 1;
+		v = per_cpu_qcnt[idx];
+		for (i = idx - 1; i >= 0  && v; i--) {
+			if (per_cpu_qcnt[i] < v) {
+				idx = i;
+				v = per_cpu_qcnt[i];
+			}
+		}
+
+		per_cpu_qcnt[idx]++;
+		spin_unlock(&qcnt_lock);
+
+		lock_descq(descq);
+		descq->cpu_assigned = 1;
+		descq->intr_work_cpu = idx;
+		unlock_descq(descq);
+
+		pr_debug("%s 0x%p assigned to cpu %u.\n",
+			descq->conf.name, descq, idx);
+
+		return;
+	}
+
+	/* Polled mode only */
+	for (i = 0; i < thread_cnt; i++, thp++) {
+		lock_thread(thp);
+		if (idx == thread_cnt) {
+			v = thp->work_cnt;
+			idx = i;
+		} else if (!thp->work_cnt) {
+			idx = i;
+			unlock_thread(thp);
+			break;
+		} else if (thp->work_cnt < v)
+			idx = i;
+		unlock_thread(thp);
+	}
+
+	thp = cs_threads + idx;
+	lock_thread(thp);
+	list_add_tail(&descq->cmplthp_list, &thp->work_list);
+	descq->intr_work_cpu = idx;
+	thp->work_cnt++;
+	unlock_thread(thp);
+
+	pr_debug("%s 0x%p assigned to cmpl status thread %s,%u.\n",
+		descq->conf.name, descq, thp->name, thp->work_cnt);
+
+	lock_descq(descq);
+	descq->cmplthp = thp;
+	unlock_descq(descq);
+}
+
+int qdma_threads_create(unsigned int num_threads)
+{
+	struct qdma_kthread *thp;
+	int i;
+	int rv;
+
+	if (thread_cnt) {
+		pr_warn("threads already created!");
+		return 0;
+	}
+	spin_lock_init(&qcnt_lock);
+
+	cpu_count = num_online_cpus();
+	per_cpu_qcnt = kzalloc(cpu_count * sizeof(unsigned int), GFP_KERNEL);
+	if (!per_cpu_qcnt)
+		return -ENOMEM;
+
+	thread_cnt = (num_threads == 0) ? cpu_count : num_threads;
+
+	cs_threads = kzalloc(thread_cnt * sizeof(struct qdma_kthread),
+					GFP_KERNEL);
+	if (!cs_threads)
+		return -ENOMEM;
+
+	/* N dma writeback monitoring threads */
+	thp = cs_threads;
+	for (i = 0; i < thread_cnt; i++, thp++) {
+		thp->cpu = i;
+		thp->timeout = 0;
+		rv = qdma_kthread_start(thp, "qdma_cmpl_status_th", i);
+		if (rv < 0)
+			goto cleanup_threads;
+		thp->fproc = qdma_thread_cmpl_status_proc;
+		thp->fpending = qdma_thread_cmpl_status_pend;
+	}
+
+	return 0;
+
+cleanup_threads:
+	kfree(cs_threads);
+	cs_threads = NULL;
+	thread_cnt = 0;
+
+	return rv;
+}
+
+void qdma_threads_destroy(void)
+{
+	int i;
+	struct qdma_kthread *thp;
+
+	if (per_cpu_qcnt) {
+		spin_lock(&qcnt_lock);
+		kfree(per_cpu_qcnt);
+		per_cpu_qcnt = NULL;
+		spin_unlock(&qcnt_lock);
+	}
+
+	if (!thread_cnt)
+		return;
+
+	/* N dma writeback monitoring threads */
+	thp = cs_threads;
+	for (i = 0; i < thread_cnt; i++, thp++)
+		if (thp->fproc)
+			qdma_kthread_stop(thp);
+
+	kfree(cs_threads);
+	cs_threads = NULL;
+	thread_cnt = 0;
+}
diff --git a/QDMA/linux-kernel/libqdma/qdma_thread.h b/QDMA/linux-kernel/libqdma/qdma_thread.h
new file mode 100644
index 0000000..d3fe3c0
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/qdma_thread.h
@@ -0,0 +1,76 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#ifndef LIBQDMA_QDMA_THREAD_H_
+#define LIBQDMA_QDMA_THREAD_H_
+/**
+ * @file
+ * @brief This file contains the declarations for qdma thread handlers
+ *
+ */
+
+/** qdma_descq forward declaration */
+struct qdma_descq;
+
+/*****************************************************************************/
+/**
+ * qdma_threads_create() - create qdma threads
+ * This functions creates two threads for each cpu in the system or number of
+ * number of thread requested by param num_threads and assigns the
+ * thread handlers
+ * 1: queue processing thread
+ * 2: queue completion handler thread
+ *
+ * @param[in] num_threads - number of threads to be created 
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int qdma_threads_create(unsigned int num_threads);
+
+/*****************************************************************************/
+/**
+ * qdma_threads_destroy() - destroy all the qdma threads created
+ *                          during system initialization
+ *
+ * @return	none
+ *****************************************************************************/
+void qdma_threads_destroy(void);
+
+/*****************************************************************************/
+/**
+ * qdma_thread_remove_work() - handler to remove the attached work thread
+ *
+ * @param[in]	descq:	pointer to qdma_descq
+ *
+ * @return	none
+ *****************************************************************************/
+void qdma_thread_remove_work(struct qdma_descq *descq);
+
+/*****************************************************************************/
+/**
+ * qdma_thread_add_work() - handler to add a work thread
+ *
+ * @param[in]	descq:	pointer to qdma_descq
+ *
+ * @return	none
+ *****************************************************************************/
+void qdma_thread_add_work(struct qdma_descq *descq);
+
+#endif /* LIBQDMA_QDMA_THREAD_H_ */
diff --git a/QDMA/linux-kernel/libqdma/thread.c b/QDMA/linux-kernel/libqdma/thread.c
new file mode 100644
index 0000000..7bc9874
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/thread.c
@@ -0,0 +1,193 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#define pr_fmt(fmt)	KBUILD_MODNAME ":%s: " fmt, __func__
+
+#include "thread.h"
+
+#include <linux/kernel.h>
+
+/*
+ * kernel thread function wrappers
+ */
+int qdma_kthread_dump(struct qdma_kthread *thp, char *buf, int buflen,
+			int detail)
+{
+	int len = 0;
+
+	if (!buf || !buflen)
+		return 0;
+
+	lock_thread(thp);
+	len += sprintf(buf + len, "%s, cpu %u, work %u.\n",
+			thp->name, thp->cpu, thp->work_cnt);
+
+	if (detail)
+		;
+
+	unlock_thread(thp);
+
+	buf[len] = '\0';
+	return len;
+}
+
+static inline int xthread_work_pending(struct qdma_kthread *thp)
+{
+	struct list_head *work_item, *next;
+
+	/* any work items assigned to this thread? */
+	if (list_empty(&thp->work_list))
+		return 0;
+
+
+	/* any work item has pending work to do? */
+	list_for_each_safe(work_item, next, &thp->work_list) {
+		if (thp->fpending && thp->fpending(work_item))
+			return 1;
+
+	}
+	return 0;
+}
+
+static inline void xthread_reschedule(struct qdma_kthread *thp)
+{
+	if (thp->timeout) {
+		pr_debug_thread("%s rescheduling for %u seconds",
+				thp->name, thp->timeout);
+		qdma_waitq_wait_event_timeout(thp->waitq, thp->schedule,
+					      msecs_to_jiffies(thp->timeout));
+	} else {
+		pr_debug_thread("%s rescheduling", thp->name);
+		qdma_waitq_wait_event(thp->waitq, thp->schedule);
+	}
+}
+
+static int xthread_main(void *data)
+{
+	struct qdma_kthread *thp = (struct qdma_kthread *)data;
+
+	pr_debug_thread("%s UP.\n", thp->name);
+
+	disallow_signal(SIGPIPE);
+
+	if (thp->finit)
+		thp->finit(thp);
+
+
+	while (!kthread_should_stop()) {
+
+		struct list_head *work_item, *next;
+
+		pr_debug_thread("%s interruptible\n", thp->name);
+
+		/* any work to do? */
+		lock_thread(thp);
+		if (!xthread_work_pending(thp)) {
+			unlock_thread(thp);
+			xthread_reschedule(thp);
+			lock_thread(thp);
+		}
+		thp->schedule = 0;
+
+		if (thp->work_cnt) {
+			pr_debug_thread("%s processing %u work items\n",
+					thp->name, thp->work_cnt);
+			/* do work */
+			list_for_each_safe(work_item, next, &thp->work_list) {
+				thp->fproc(work_item);
+			}
+		}
+		unlock_thread(thp);
+		schedule();
+	}
+
+	pr_debug_thread("%s, work done.\n", thp->name);
+
+
+	if (thp->fdone)
+		thp->fdone(thp);
+
+	pr_debug_thread("%s, exit.\n", thp->name);
+	return 0;
+}
+
+int qdma_kthread_start(struct qdma_kthread *thp, char *name, int id)
+{
+	int len;
+
+	if (thp->task) {
+		pr_warn("kthread %s task already running?\n", thp->name);
+		return -EINVAL;
+	}
+
+#ifdef __QDMA_VF__
+	len = snprintf(thp->name, sizeof(thp->name), "%s_vf_%d", name, id);
+	if (len < 0)
+		return -EINVAL;
+#else
+	len = snprintf(thp->name, sizeof(thp->name), "%s%d", name, id);
+	if (len < 0)
+		return -EINVAL;
+#endif
+	thp->id = id;
+
+	spin_lock_init(&thp->lock);
+	INIT_LIST_HEAD(&thp->work_list);
+	qdma_waitq_init(&thp->waitq);
+
+	thp->task = kthread_create_on_node(xthread_main, (void *)thp,
+					cpu_to_node(thp->cpu), "%s", thp->name);
+	if (IS_ERR(thp->task)) {
+		pr_err("kthread %s, create task failed: 0x%lx\n",
+			thp->name, (unsigned long)IS_ERR(thp->task));
+		thp->task = NULL;
+		return -EFAULT;
+	}
+
+	kthread_bind(thp->task, thp->cpu);
+
+	pr_debug_thread("kthread 0x%p, %s, cpu %u, task 0x%p.\n",
+		thp, thp->name, thp->cpu, thp->task);
+
+	wake_up_process(thp->task);
+	return 0;
+}
+
+int qdma_kthread_stop(struct qdma_kthread *thp)
+{
+	int rv;
+
+	if (!thp->task) {
+		pr_debug_thread("kthread %s, already stopped.\n", thp->name);
+		return 0;
+	}
+
+	thp->schedule = 1;
+	rv = kthread_stop(thp->task);
+	if (rv < 0) {
+		pr_warn("kthread %s, stop err %d.\n", thp->name, rv);
+		return rv;
+	}
+
+	pr_debug_thread("kthread %s, 0x%p, stopped.\n", thp->name, thp->task);
+	thp->task = NULL;
+
+	return 0;
+}
+
diff --git a/QDMA/linux-kernel/libqdma/thread.h b/QDMA/linux-kernel/libqdma/thread.h
new file mode 100644
index 0000000..eea949a
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/thread.h
@@ -0,0 +1,145 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#ifndef __XDMA_KTHREAD_H__
+#define __XDMA_KTHREAD_H__
+/**
+ * @file
+ * @brief This file contains the declarations for qdma kernel threads
+ *
+ */
+#include <linux/version.h>
+#include <linux/spinlock.h>
+#include <linux/kthread.h>
+#include <linux/cpuset.h>
+#include <linux/signal.h>
+#include "qdma_compat.h"
+
+/**
+ * @struct - qdma_kthread
+ * @brief	qdma thread book keeping parameters
+ */
+struct qdma_kthread {
+	/**  thread lock*/
+	spinlock_t lock;
+	/**  name of the thread */
+	char name[16];
+	/**  cpu number for which the thread associated with */
+	unsigned short cpu;
+	/**  thread id */
+	unsigned short id;
+	/**  thread sleep timeout value */
+	unsigned int timeout;
+	/**  flags for thread */
+	unsigned long flag;
+	/**  thread wait queue */
+	qdma_wait_queue waitq;
+	/* flag to indicate scheduling of thread */
+	unsigned int schedule;
+	/**  kernel task structure associated with thread*/
+	struct task_struct *task;
+	/**  thread work list count */
+	unsigned int work_cnt;
+	/**  thread work list count */
+	struct list_head work_list;
+	/**  thread initialization handler */
+	int (*finit)(struct qdma_kthread *);
+	/**  thread pending handler */
+	int (*fpending)(struct list_head *);
+	/**  thread peocessing handler */
+	int (*fproc)(struct list_head *);
+	/**  thread done handler */
+	int (*fdone)(struct qdma_kthread *);
+};
+
+/*****************************************************************************/
+/**
+ * qdma_kthread_dump() - handler to dump the thread information
+ *
+ * @param[in]	thp:		pointer to qdma_kthread
+ * @param[in]	detail:		flag to indicate whether details required or not
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+ *
+ * @return	length of the buffer
+ *****************************************************************************/
+int qdma_kthread_dump(struct qdma_kthread *thp, char *buf, int buflen,
+			int detail);
+
+#ifdef DEBUG_THREADS
+#define lock_thread(thp)	\
+	do { \
+		pr_debug("locking thp %s ...\n", (thp)->name); \
+		spin_lock(&(thp)->lock); \
+	} while (0)
+
+#define unlock_thread(thp)	\
+	do { \
+		pr_debug("unlock thp %s ...\n", (thp)->name); \
+		spin_unlock(&(thp)->lock); \
+	} while (0)
+
+#define qdma_kthread_wakeup(thp)	\
+	do { \
+		pr_debug("signaling thp %s ...\n", (thp)->name); \
+		wake_up_process((thp)->task); \
+	} while (0)
+
+#define pr_debug_thread(fmt, ...) pr_debug(fmt, __VA_ARGS__)
+
+#else
+/** lock thread macro */
+#define lock_thread(thp)		spin_lock(&(thp)->lock)
+/** un lock thread macro */
+#define unlock_thread(thp)		spin_unlock(&(thp)->lock)
+/** macro to wake up the qdma k thread */
+#define qdma_kthread_wakeup(thp) \
+	do { \
+		thp->schedule = 1; \
+		qdma_waitq_wakeup(&thp->waitq); \
+	} while (0)
+/** pr_debug_thread */
+#define pr_debug_thread(fmt, ...)
+#endif
+
+/*****************************************************************************/
+/**
+ * qdma_kthread_start() - handler to start the kernel thread
+ *
+ * @param[in]	thp:	pointer to qdma_kthread
+ * @param[in]	name:	name for the thread
+ * @param[in]	id:		thread id
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int qdma_kthread_start(struct qdma_kthread *thp, char *name, int id);
+
+/*****************************************************************************/
+/**
+ * qdma_kthread_stop() - handler to stop the kernel thread
+ *
+ * @param[in]	thp:	pointer to qdma_kthread
+ *
+ * @return	0: success
+ * @return	<0: failure
+ *****************************************************************************/
+int qdma_kthread_stop(struct qdma_kthread *thp);
+
+#endif /* #ifndef __XDMA_KTHREAD_H__ */
diff --git a/QDMA/linux-kernel/libqdma/version.h b/QDMA/linux-kernel/libqdma/version.h
new file mode 100644
index 0000000..7ba9dba
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/version.h
@@ -0,0 +1,33 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is licensed under both the BSD-style license (found in the
+ * LICENSE file in the root directory of this source tree) and the GPLv2 (found
+ * in the COPYING file in the root directory of this source tree).
+ * You may select, at your option, one of the above-listed licenses.
+ */
+
+#ifndef __LIBQDMA_VERSION_H__
+#define __LIBQDMA_VERSION_H__
+
+#define LIBQDMA_MODULE_NAME	"libqdma"
+#define LIBQDMA_MODULE_DESC	"Xilinx QDMA Library"
+
+#define LIBQDMA_VERSION_MAJOR	2018
+#define LIBQDMA_VERSION_MINOR	3
+#define LIBQDMA_VERSION_PATCH	161
+
+#define LIBQDMA_VERSION_STR	\
+	__stringify(LIBQDMA_VERSION_MAJOR) "." \
+	__stringify(LIBQDMA_VERSION_MINOR) "." \
+	__stringify(LIBQDMA_VERSION_PATCH)
+
+#define LIBQDMA_VERSION  \
+	((LIBQDMA_VERSION_MAJOR)*1000 + \
+	 (LIBQDMA_VERSION_MINOR)*100 + \
+	  LIBQDMA_VERSION_PATCH)
+
+#endif /* ifndef __LIBQDMA_VERSION_H__ */
diff --git a/QDMA/linux-kernel/libqdma/xdev.c b/QDMA/linux-kernel/libqdma/xdev.c
new file mode 100644
index 0000000..f7159fb
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/xdev.c
@@ -0,0 +1,1017 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+/**
+ * @file
+ * @brief This file contains the declarations for QDMA PCIe device
+ *
+ */
+#define pr_fmt(fmt)	KBUILD_MODNAME ":%s: " fmt, __func__
+
+#include <linux/version.h>
+#include <linux/kernel.h>
+#include <linux/string.h>
+#include <linux/mm.h>
+#include <linux/errno.h>
+#include <linux/sched.h>
+#include <linux/vmalloc.h>
+
+#include "qdma_regs.h"
+#include "xdev.h"
+#include "qdma_mbox.h"
+#ifdef DEBUGFS
+#include "qdma_debugfs_dev.h"
+#endif
+
+#ifdef __LIST_NEXT_ENTRY__
+#define list_next_entry(pos, member) \
+	list_entry((pos)->member.next, typeof(*(pos)), member)
+#endif
+
+/**
+ * qdma device management
+ * maintains a list of the qdma devices
+ */
+static LIST_HEAD(xdev_list);
+
+/**
+ * mutex defined for qdma device management
+ */
+static DEFINE_MUTEX(xdev_mutex);
+
+#ifndef list_last_entry
+#define list_last_entry(ptr, type, member) \
+		list_entry((ptr)->prev, type, member)
+#endif
+
+/* extern declarations */
+void qdma_device_attributes_get(struct xlnx_dma_dev *xdev);
+int qdma_device_init(struct xlnx_dma_dev *xdev);
+void qdma_device_cleanup(struct xlnx_dma_dev *xdev);
+
+/*****************************************************************************/
+/**
+ * xdev_list_first() - handler to return the first xdev entry from the list
+ *
+ * @return	pointer to first xlnx_dma_dev on success
+ * @return	NULL on failure
+ *****************************************************************************/
+struct xlnx_dma_dev *xdev_list_first(void)
+{
+	struct xlnx_dma_dev *xdev;
+
+	mutex_lock(&xdev_mutex);
+	xdev = list_first_entry(&xdev_list, struct xlnx_dma_dev, list_head);
+	mutex_unlock(&xdev_mutex);
+
+	return xdev;
+}
+
+/*****************************************************************************/
+/**
+ * xdev_list_next() - handler to return the next xdev entry from the list
+ *
+ * @param[in]	xdev:	pointer to current xdev
+ *
+ * @return	pointer to next xlnx_dma_dev on success
+ * @return	NULL on failure
+ *****************************************************************************/
+struct xlnx_dma_dev *xdev_list_next(struct xlnx_dma_dev *xdev)
+{
+	struct xlnx_dma_dev *next;
+
+	mutex_lock(&xdev_mutex);
+	next = list_next_entry(xdev, list_head);
+	mutex_unlock(&xdev_mutex);
+
+	return next;
+}
+
+/*****************************************************************************/
+/**
+ * xdev_list_dump() - list the dma device details
+ *
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+ *
+ * @return	pointer to next xlnx_dma_dev on success
+ * @return	NULL on failure
+ *****************************************************************************/
+int xdev_list_dump(char *buf, int buflen)
+{
+	struct xlnx_dma_dev *xdev, *tmp;
+	int len = 0;
+
+	mutex_lock(&xdev_mutex);
+	list_for_each_entry_safe(xdev, tmp, &xdev_list, list_head) {
+		len += sprintf(buf + len, "qdma%05x\t%02x:%02x.%02x\n",
+				xdev->conf.bdf, xdev->conf.pdev->bus->number,
+				PCI_SLOT(xdev->conf.pdev->devfn),
+				PCI_FUNC(xdev->conf.pdev->devfn));
+		if (len >= buflen)
+			break;
+	}
+	mutex_unlock(&xdev_mutex);
+
+	buf[len] = '\0';
+	return len;
+}
+
+/*****************************************************************************/
+/**
+ * xdev_list_add() - add a new node to the xdma device lsit
+ *
+ * @param[in]	xdev:	pointer to current xdev
+ *
+ * @return	none
+ *****************************************************************************/
+static inline void xdev_list_add(struct xlnx_dma_dev *xdev)
+{
+	u32 bdf = 0;
+	struct xlnx_dma_dev *_xdev, *tmp;
+	u32 last_bus = 0;
+	u32 last_dev = 0;
+
+	mutex_lock(&xdev_mutex);
+	bdf = ((xdev->conf.pdev->bus->number << PCI_SHIFT_BUS) |
+			(PCI_SLOT(xdev->conf.pdev->devfn) << PCI_SHIFT_DEV) |
+			PCI_FUNC(xdev->conf.pdev->devfn));
+	xdev->conf.bdf = bdf;
+	list_add_tail(&xdev->list_head, &xdev_list);
+
+	/*
+	 * Iterate through the list of devices. Increment cfg_done, to
+	 * get the mulitplier for initial configuration of queues. A
+	 * '0' indicates queue is already configured. < 0, indicates
+	 * config done using sysfs entry
+	 */
+	list_for_each_entry_safe(_xdev, tmp, &xdev_list, list_head) {
+		/*are we dealing with a different card?*/
+#ifdef __QDMA_VF__
+		/** for VF check only bus number, as dev number can change
+		 * in a single card
+		 */
+		if (last_bus != _xdev->conf.pdev->bus->number)
+#else
+		if ((last_bus != _xdev->conf.pdev->bus->number) ||
+				(last_dev != PCI_SLOT(_xdev->conf.pdev->devfn)))
+#endif
+			xdev->conf.idx = 0;
+		xdev->conf.idx++;
+		last_bus = _xdev->conf.pdev->bus->number;
+		last_dev = PCI_SLOT(xdev->conf.pdev->devfn);
+	}
+	xdev->conf.cur_cfg_state = QMAX_CFG_UNCONFIGURED;
+	mutex_unlock(&xdev_mutex);
+}
+
+
+#undef list_last_entry
+/*****************************************************************************/
+/**
+ * xdev_list_add() - remove a node from the xdma device lsit
+ *
+ * @param[in]	xdev:	pointer to current xdev
+ *
+ * @return	none
+ *****************************************************************************/
+static inline void xdev_list_remove(struct xlnx_dma_dev *xdev)
+{
+	mutex_lock(&xdev_mutex);
+	list_del(&xdev->list_head);
+	mutex_unlock(&xdev_mutex);
+}
+
+/*****************************************************************************/
+/**
+ * xdev_find_by_pdev() - find the xdev using struct pci_dev
+ *
+ * @param[in]	pdev:	pointer to struct pci_dev
+ *
+ * @return	pointer to xlnx_dma_dev on success
+ * @return	NULL on failure
+ *****************************************************************************/
+struct xlnx_dma_dev *xdev_find_by_pdev(struct pci_dev *pdev)
+{
+	struct xlnx_dma_dev *xdev, *tmp;
+
+	mutex_lock(&xdev_mutex);
+	list_for_each_entry_safe(xdev, tmp, &xdev_list, list_head) {
+		if (xdev->conf.pdev == pdev) {
+			mutex_unlock(&xdev_mutex);
+			return xdev;
+		}
+	}
+	mutex_unlock(&xdev_mutex);
+	return NULL;
+}
+
+/*****************************************************************************/
+/**
+ * xdev_find_by_idx() - find the xdev using the index value
+ *
+ * @param[in]	idx:	index value in the xdev list
+ *
+ * @return	pointer to xlnx_dma_dev on success
+ * @return	NULL on failure
+ *****************************************************************************/
+struct xlnx_dma_dev *xdev_find_by_idx(int idx)
+{
+	struct xlnx_dma_dev *xdev, *tmp;
+
+	mutex_lock(&xdev_mutex);
+	list_for_each_entry_safe(xdev, tmp, &xdev_list, list_head) {
+		if (xdev->conf.bdf == idx) {
+			mutex_unlock(&xdev_mutex);
+			return xdev;
+		}
+	}
+	mutex_unlock(&xdev_mutex);
+	return NULL;
+}
+
+/*****************************************************************************/
+/**
+ * xdev_check_hndl() - helper function to validate the device handle
+ *
+ * @param[in]	pdev:	pointer to struct pci_dev
+ * @param[in]	hndl:	device handle
+ *
+ * @return	0: success
+ * @return	<0: on failure
+ *****************************************************************************/
+int xdev_check_hndl(const char *fname, struct pci_dev *pdev, unsigned long hndl)
+{
+	struct xlnx_dma_dev *xdev;
+
+	if (!pdev)
+		return -EINVAL;
+
+	xdev = xdev_find_by_pdev(pdev);
+	if (!xdev) {
+		pr_info("%s pdev 0x%p, hndl 0x%lx, NO match found!\n",
+			fname, pdev, hndl);
+		return -EINVAL;
+	}
+	if (((unsigned long)xdev) != hndl) {
+		pr_info("%s pdev 0x%p, hndl 0x%lx != 0x%p!\n",
+			fname, pdev, hndl, xdev);
+		return -EINVAL;
+	}
+
+	if (xdev->conf.pdev != pdev) {
+		pr_info("pci_dev(0x%lx) != pdev(0x%lx)\n",
+				(unsigned long)xdev->conf.pdev,
+				(unsigned long)pdev);
+		return -EINVAL;
+	}
+
+	return 0;
+}
+
+/**********************************************************************
+ * PCI-level Functions
+ **********************************************************************/
+
+/*****************************************************************************/
+/**
+ * xdev_unmap_bars() - Unmap the BAR regions that had been mapped
+ *						earlier using map_bars()
+ *
+ * @param[in]	xdev:	pointer to current xdev
+ * @param[in]	pdev:	pointer to struct pci_dev
+ *
+ * @return	none
+ *****************************************************************************/
+static void xdev_unmap_bars(struct xlnx_dma_dev *xdev, struct pci_dev *pdev)
+{
+	if (xdev->regs) {
+		/* unmap BAR */
+		pci_iounmap(pdev, xdev->regs);
+		/* mark as unmapped */
+		xdev->regs = NULL;
+	}
+
+	if (xdev->stm_regs) {
+		pci_iounmap(pdev, xdev->stm_regs);
+		xdev->stm_regs = NULL;
+	}
+}
+
+/*****************************************************************************/
+/**
+ * xdev_map_bars() - map device regions into kernel virtual address space
+ *						earlier using map_bars()
+ *
+ * @param[in]	xdev:	pointer to current xdev
+ * @param[in]	pdev:	pointer to struct pci_dev
+ *
+ * Map the device memory regions into kernel virtual address space after
+ * verifying their sizes respect the minimum sizes needed
+ *
+ * @return	length of the bar on success
+ * @return	0 on failure
+ *****************************************************************************/
+static int xdev_map_bars(struct xlnx_dma_dev *xdev, struct pci_dev *pdev)
+{
+	int map_len;
+
+	map_len = pci_resource_len(pdev, (int)xdev->conf.bar_num_config);
+	if (map_len > QDMA_MAX_BAR_LEN_MAPPED)
+		map_len = QDMA_MAX_BAR_LEN_MAPPED;
+
+	xdev->regs = pci_iomap(pdev, xdev->conf.bar_num_config, map_len);
+	if (!xdev->regs) {
+		pr_err("%s unable to map config bar %d.\n", xdev->conf.name,
+				xdev->conf.bar_num_config);
+		return -EINVAL;
+	}
+
+	if (pdev->device == STM_ENABLED_DEVICE) {
+		u32 rev;
+
+		map_len = pci_resource_len(pdev, STM_BAR);
+		xdev->stm_regs = pci_iomap(pdev, STM_BAR, map_len);
+		if (!xdev->stm_regs) {
+			pr_warn("%s unable to map bar %d.\n",
+				xdev->conf.name, STM_BAR);
+			return -EINVAL;
+		}
+
+		rev = readl(xdev->stm_regs + STM_REG_BASE + STM_REG_REV);
+		if (!(((rev >> 24) == 'S') && (((rev >> 16) & 0xFF) == 'T') &&
+		      (((rev >> 8) & 0xFF) == 'M') &&
+		      ((rev & 0xFF) == STM_SUPPORTED_REV))) {
+			pr_err("%s: Unsupported STM Rev found, rev 0x%x\n",
+			       xdev->conf.name, rev);
+			xdev_unmap_bars(xdev, pdev);
+			return -EINVAL;
+		}
+		xdev->stm_en = 1;
+		xdev->stm_rev = rev & 0xFF;
+	} else {
+		xdev->stm_en = 0;
+	}
+
+	return 0;
+}
+
+/*****************************************************************************/
+/**
+ * xdev_identify_bars() - verifies that the config bar passed from the user
+ *			matches with the QDMA magic number. Also identifies
+ *			the user bar and bypass bar
+ *
+ * @param[in]	xdev:	pointer to current xdev
+ * @param[in]	pdev:	pointer to struct pci_dev\
+ *
+ * @return	0 on success, -ve on failure
+ *****************************************************************************/
+static int xdev_identify_bars(struct xlnx_dma_dev *xdev, struct pci_dev *pdev)
+{
+	int bar_idx = 0;
+	int map_len = 0;
+	u32 id;
+	u8 num_bars_present = 0;
+	void __iomem *regs;
+	int bar_id_list[QDMA_BAR_NUM];
+	int bar_id_idx = 0;
+	u32 user_bar_id = 0;
+
+	/* Verify that the config bar passed from the user is correct or not */
+	map_len = pci_resource_len(pdev, (int)xdev->conf.bar_num_config);
+	if (!map_len) {
+		pr_err("%s pci_resource_len function failed for bar %d.\n",
+				xdev->conf.name, xdev->conf.bar_num_config);
+		return -EINVAL;
+	}
+
+	if (map_len > QDMA_MAX_BAR_LEN_MAPPED)
+		map_len = QDMA_MAX_BAR_LEN_MAPPED;
+
+	regs = pci_iomap(pdev, xdev->conf.bar_num_config, map_len);
+	if (!regs) {
+		pr_err("%s unable to map bar %d.\n",
+				xdev->conf.name, xdev->conf.bar_num_config);
+		return -EINVAL;
+	}
+
+	id = readl(regs + QDMA_REG_CONFIG_BLOCK_IDENTIFIER);
+	if ((id & M_CONFIG_BAR_IDENTIFIER_MASK) == MAGIC_NUMBER) {
+		pr_info("QDMA Config BAR passed by the user matches with the identifier register value(0x%08x)\n",
+			id);
+	} else {
+		pr_info("QDMA Config BAR passed by the user doesn't match the identifier register value(0x%08x)\n",
+			id);
+
+		/* unmap BAR we previously mapped */
+		pci_iounmap(pdev, regs);
+		return -EINVAL;
+	}
+
+	/* Find out the number of bars present in the design */
+	for (bar_idx = 0; bar_idx < QDMA_BAR_NUM; bar_idx++) {
+		map_len = pci_resource_len(pdev, bar_idx);
+		if (!map_len)
+			continue;
+
+		bar_id_list[bar_id_idx] = bar_idx;
+		bar_id_idx++;
+		num_bars_present++;
+	}
+
+	if (num_bars_present > 1) {
+		/* USER BAR IDENTIFICATION */
+#ifndef __QDMA_VF__
+		xdev->func_id = readl(regs + QDMA_REG_FUNC_ID);
+		user_bar_id = readl(regs + QDMA_REG_PF_USER_BAR_IDENTIFIER);
+		user_bar_id = (user_bar_id >> (6 * xdev->func_id)) &
+				M_USER_BAR_ID_MASK;
+#else
+		user_bar_id = readl(regs + QDMA_REG_VF_USER_BAR_IDENTIFIER);
+		user_bar_id = user_bar_id & M_USER_BAR_ID_MASK;
+#endif
+		for (bar_idx = 0; bar_idx < QDMA_BAR_NUM; bar_idx++) {
+			if (user_bar_id & (1 << bar_idx)) {
+				xdev->conf.bar_num_user = bar_idx;
+				pr_info("User BAR %d.\n",
+						xdev->conf.bar_num_user);
+				break;
+			}
+		}
+
+		/* BYPASS BAR IDENTIFICATION */
+		if (num_bars_present > 2) {
+			for (bar_idx = 0; bar_idx < num_bars_present;
+								bar_idx++) {
+				if ((bar_id_list[bar_idx] !=
+						xdev->conf.bar_num_user) &&
+						(bar_id_list[bar_idx] !=
+						xdev->conf.bar_num_config)) {
+					xdev->conf.bar_num_bypass =
+						bar_id_list[bar_idx];
+					pr_info("Bypass BAR %d.\n",
+						xdev->conf.bar_num_bypass);
+					break;
+				}
+			}
+		}
+	}
+	return 0;
+}
+/*****************************************************************************/
+/**
+ * xdev_map_bars() - allocate the dma device
+ *
+ * @param[in]	conf:	qdma device configuration
+ *
+ *
+ * @return	pointer to dma device
+ * @return	NULL on failure
+ *****************************************************************************/
+static struct xlnx_dma_dev *xdev_alloc(struct qdma_dev_conf *conf)
+{
+	struct xlnx_dma_dev *xdev;
+
+	/* allocate zeroed device book keeping structure */
+	xdev = kzalloc(sizeof(struct xlnx_dma_dev), GFP_KERNEL);
+	if (!xdev)
+		return NULL;
+
+	spin_lock_init(&xdev->hw_prg_lock);
+	spin_lock_init(&xdev->lock);
+
+	/* create a driver to device reference */
+	memcpy(&xdev->conf, conf, sizeof(*conf));
+
+	/* !! FIXME default to eanbled for everything */
+	xdev->flr_prsnt = 1;
+	xdev->st_mode_en = 1;
+	xdev->mm_mode_en = 1;
+	xdev->mm_channel_max = 1;
+
+	return xdev;
+}
+
+/*****************************************************************************/
+/**
+ * pci_dma_mask_set() - check the pci capability of the dma device
+ *
+ * @param[in]	pdev:	pointer to struct pci_dev
+ *
+ *
+ * @return	0: on success
+ * @return	<0: on failure
+ *****************************************************************************/
+static int pci_dma_mask_set(struct pci_dev *pdev)
+{
+	/** 64-bit addressing capability for XDMA? */
+	if (!pci_set_dma_mask(pdev, DMA_BIT_MASK(64))) {
+		/** use 32-bit DMA for descriptors */
+		pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(32));
+		/** use 64-bit DMA, 32-bit for consistent */
+	} else if (!pci_set_dma_mask(pdev, DMA_BIT_MASK(32))) {
+		pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(32));
+		/** use 32-bit DMA */
+		dev_info(&pdev->dev, "Using a 32-bit DMA mask.\n");
+	} else {
+		/** use 32-bit DMA */
+		dev_info(&pdev->dev, "No suitable DMA possible.\n");
+		return -EINVAL;
+	}
+
+	return 0;
+}
+
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 5, 0)
+static void pci_enable_relaxed_ordering(struct pci_dev *pdev)
+{
+	pcie_capability_set_word(pdev, PCI_EXP_DEVCTL, PCI_EXP_DEVCTL_RELAX_EN);
+}
+
+static void pci_enable_extended_tag(struct pci_dev *pdev)
+{
+	pcie_capability_set_word(pdev, PCI_EXP_DEVCTL, PCI_EXP_DEVCTL_EXT_TAG);
+}
+#else
+static void pci_enable_relaxed_ordering(struct pci_dev *pdev)
+{
+	u16 v;
+	int pos;
+
+	pos = pci_pcie_cap(pdev);
+	if (pos > 0) {
+		pci_read_config_word(pdev, pos + PCI_EXP_DEVCTL, &v);
+		v |= PCI_EXP_DEVCTL_RELAX_EN;
+		pci_write_config_word(pdev, pos + PCI_EXP_DEVCTL, v);
+	}
+}
+
+static void pci_enable_extended_tag(struct pci_dev *pdev)
+{
+	u16 v;
+	int pos;
+
+	pos = pci_pcie_cap(pdev);
+	if (pos > 0) {
+		pci_read_config_word(pdev, pos + PCI_EXP_DEVCTL, &v);
+		v |= PCI_EXP_DEVCTL_EXT_TAG;
+		pci_write_config_word(pdev, pos + PCI_EXP_DEVCTL, v);
+	}
+}
+#endif
+
+/*****************************************************************************/
+/**
+ * qdma_device_offline() - set the dma device in offline mode
+ *
+ * @param[in]	pdev:		pointer to struct pci_dev
+ * @param[in]	dev_hndl:	device handle
+ *
+ *
+ * @return	none
+ *****************************************************************************/
+void qdma_device_offline(struct pci_dev *pdev, unsigned long dev_hndl)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+
+	if (!dev_hndl)
+		return;
+
+	if (xdev_check_hndl(__func__, pdev, dev_hndl) < 0)
+		return;
+
+	if (xdev->conf.pdev != pdev) {
+		pr_info("pci_dev(0x%lx) != pdev(0x%lx)\n",
+			(unsigned long)xdev->conf.pdev, (unsigned long)pdev);
+	}
+
+	if (xlnx_dma_device_flag_check(xdev, XDEV_FLAG_OFFLINE))
+		return;
+	xdev_flag_set(xdev, XDEV_FLAG_OFFLINE);
+
+#ifdef __QDMA_VF__
+	xdev_sriov_vf_offline(xdev, 0);
+#elif defined(CONFIG_PCI_IOV)
+	xdev_sriov_disable(xdev);
+#endif
+
+	qdma_device_cleanup(xdev);
+
+	qdma_mbox_cleanup(xdev);
+}
+
+/*****************************************************************************/
+/**
+ * qdma_device_online() - set the dma device in online mode
+ *
+ * @param[in]	pdev:		pointer to struct pci_dev
+ * @param[in]	dev_hndl:	device handle
+ *
+ *
+ * @return	0: on success
+ * @return	<0: on failure
+ *****************************************************************************/
+int qdma_device_online(struct pci_dev *pdev, unsigned long dev_hndl)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+	int rv;
+
+	if (!dev_hndl)
+		return -EINVAL;
+
+	if (xdev_check_hndl(__func__, pdev, dev_hndl) < 0)
+		return -EINVAL;
+
+	if (xdev->conf.pdev != pdev) {
+		pr_info("pci_dev(0x%lx) != pdev(0x%lx)\n",
+			(unsigned long)xdev->conf.pdev, (unsigned long)pdev);
+	}
+
+	rv = qdma_device_init(xdev);
+	if (rv < 0) {
+		pr_warn("qdma_init failed %d.\n", rv);
+		goto cleanup_qdma;
+	}
+	xdev_flag_clear(xdev, XDEV_FLAG_OFFLINE);
+	qdma_mbox_init(xdev);
+#ifdef __QDMA_VF__
+	/* PF mbox will start when vf > 0 */
+	qdma_mbox_start(xdev);
+	rv = xdev_sriov_vf_online(xdev, 0);
+	if (rv < 0)
+		goto cleanup_qdma;
+#elif defined(CONFIG_PCI_IOV)
+	if (xdev->conf.vf_max) {
+		rv = xdev_sriov_enable(xdev, xdev->conf.vf_max);
+		if (rv < 0)
+			goto cleanup_qdma;
+	}
+#endif
+	return 0;
+
+cleanup_qdma:
+	qdma_device_cleanup(xdev);
+	return rv;
+}
+
+/*****************************************************************************/
+/**
+ * qdma_device_open() - open the dma device
+ *
+ * @param[in]	mod_name:	name of the dma device
+ * @param[in]	conf:		device configuration
+ * @param[in]	dev_hndl:	device handle
+ *
+ *
+ * @return	0: on success
+ * @return	<0: on failure
+ *****************************************************************************/
+int qdma_device_open(const char *mod_name, struct qdma_dev_conf *conf,
+			unsigned long *dev_hndl)
+{
+	struct pci_dev *pdev = NULL;
+	struct xlnx_dma_dev *xdev = NULL;
+	int rv = 0;
+
+	*dev_hndl = 0UL;
+
+	if (!mod_name) {
+		pr_info("%s: mod_name is NULL.\n", __func__);
+		return QDMA_ERR_INVALID_INPUT_PARAM;
+	}
+
+	if (!conf) {
+		pr_info("%s: queue_conf is NULL.\n", mod_name);
+		return QDMA_ERR_INVALID_INPUT_PARAM;
+	}
+
+	pdev = conf->pdev;
+
+	if (!pdev) {
+		pr_info("%s: pci device NULL.\n", mod_name);
+		return QDMA_ERR_INVALID_PCI_DEV;
+	}
+	conf->bar_num_stm = -1;
+
+	pr_info("%s, %02x:%02x.%02x, pdev 0x%p, 0x%x:0x%x.\n",
+		mod_name, pdev->bus->number, PCI_SLOT(pdev->devfn),
+		PCI_FUNC(pdev->devfn), pdev, pdev->vendor, pdev->device);
+
+	xdev = xdev_find_by_pdev(pdev);
+	if (xdev) {
+		pr_warn("%s, device %s already attached!\n",
+			mod_name, dev_name(&pdev->dev));
+		return QDMA_ERR_PCI_DEVICE_ALREADY_ATTACHED;
+	}
+
+	rv = pci_request_regions(pdev, mod_name);
+	if (rv) {
+		/* Just info, some other driver may have claimed the device. */
+		dev_info(&pdev->dev, "cannot obtain PCI resources\n");
+		return rv;
+	}
+
+	rv = pci_enable_device(pdev);
+	if (rv) {
+		dev_err(&pdev->dev, "cannot enable PCI device\n");
+		goto release_regions;
+	}
+
+	/* enable relaxed ordering */
+	pci_enable_relaxed_ordering(pdev);
+
+	/* enable extended tag */
+	pci_enable_extended_tag(pdev);
+
+	/* enable bus master capability */
+	pci_set_master(pdev);
+
+	rv = pci_dma_mask_set(pdev);
+	if (rv)
+		goto disable_device;
+
+	pcie_set_readrq(pdev, 512);
+
+	/* allocate zeroed device book keeping structure */
+	xdev = xdev_alloc(conf);
+	if (!xdev)
+		goto disable_device;
+
+	strncpy(xdev->mod_name, mod_name, QDMA_DEV_NAME_MAXLEN - 1);
+
+	xdev_flag_set(xdev, XDEV_FLAG_OFFLINE);
+	xdev_list_add(xdev);
+
+	rv = sprintf(xdev->conf.name, "qdma%05x-p%s",
+		xdev->conf.bdf, dev_name(&xdev->conf.pdev->dev));
+	xdev->conf.name[rv] = '\0';
+
+#ifdef DEBUGFS
+	/** time to clean debugfs */
+	dbgfs_dev_init(xdev);
+#endif
+
+	rv = xdev_identify_bars(xdev, pdev);
+	if (rv)
+		goto remove_xdev;
+
+	/* Mapping bars */
+	rv = xdev_map_bars(xdev, pdev);
+	if (rv)
+		goto unmap_bars;
+
+	/* program STM port map */
+	if (xdev->stm_en) {
+		u32 v = readl(xdev->stm_regs + STM_REG_BASE +
+			      STM_REG_H2C_MODE);
+		v &= 0x0000FFFF;
+		v |= (STM_PORT_MAP << S_STM_PORT_MAP);
+		v |= F_STM_EN_STMA_BKCHAN;
+		writel(v, xdev->stm_regs + STM_REG_BASE + STM_REG_H2C_MODE);
+	}
+
+#ifndef __QDMA_VF__
+	/* get the device attributes */
+	qdma_device_attributes_get(xdev);
+
+	if (!xdev->mm_mode_en && !xdev->st_mode_en) {
+		pr_info("None of the modes ( ST or MM) are enabled\n");
+		rv = QDMA_ERR_INTERFACE_NOT_ENABLED_IN_DEVICE;
+		goto unmap_bars;
+	}
+#endif
+
+	memcpy(conf, &xdev->conf, sizeof(*conf));
+
+	rv = qdma_device_online(pdev, (unsigned long)xdev);
+	if (rv < 0)
+		goto cleanup_qdma;
+
+	pr_info("%s, %05x, pdev 0x%p, xdev 0x%p, ch %u, q %u, vf %u.\n",
+		dev_name(&pdev->dev), xdev->conf.bdf, pdev, xdev,
+		xdev->mm_channel_max, conf->qsets_max, conf->vf_max);
+
+	*dev_hndl = (unsigned long)xdev;
+
+	return QDMA_OPERATION_SUCCESSFUL;
+
+cleanup_qdma:
+	qdma_device_offline(pdev, (unsigned long)xdev);
+
+unmap_bars:
+	xdev_unmap_bars(xdev, pdev);
+remove_xdev:
+	xdev_list_remove(xdev);
+	kfree(xdev);
+
+disable_device:
+	pci_disable_device(pdev);
+
+release_regions:
+	pci_release_regions(pdev);
+
+	return rv;
+}
+
+/*****************************************************************************/
+/**
+ * qdma_device_close() - close the dma device
+ *
+ * @param[in]	pdev:		pointer to struct pci_dev
+ * @param[in]	dev_hndl:	device handle
+ *
+ *
+ * @return	none
+ *****************************************************************************/
+void qdma_device_close(struct pci_dev *pdev, unsigned long dev_hndl)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+
+	if (!dev_hndl)
+		return;
+
+	if (xdev_check_hndl(__func__, pdev, dev_hndl) < 0)
+		return;
+
+	if (xdev->conf.pdev != pdev) {
+		pr_info("pci_dev(0x%lx) != pdev(0x%lx)\n",
+			(unsigned long)xdev->conf.pdev, (unsigned long)pdev);
+	}
+
+	qdma_device_offline(pdev, dev_hndl);
+
+	xdev_unmap_bars(xdev, pdev);
+
+	pci_release_regions(pdev);
+	pci_disable_device(pdev);
+
+#ifdef DEBUGFS
+	/** time to clean debugfs */
+	dbgfs_dev_exit(xdev);
+#endif
+
+	xdev_list_remove(xdev);
+
+	kfree(xdev);
+}
+
+/*****************************************************************************/
+/**
+ * qdma_device_get_config() - get the device configuration
+ *
+ * @param[in]	dev_hndl:	device handle
+ * @param[out]	conf:		dma device configuration
+ * @param[out]	buf, buflen:
+ *			error message buffer, can be NULL/0 (i.e., optional)
+ *
+ *
+ * @return	none
+ *****************************************************************************/
+int qdma_device_get_config(unsigned long dev_hndl, struct qdma_dev_conf *conf,
+					char *buf, int buflen)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+
+	if (xdev_check_hndl(__func__, xdev->conf.pdev, dev_hndl) < 0)
+		return -EINVAL;
+
+	memcpy(conf, &xdev->conf, sizeof(*conf));
+
+	return 0;
+}
+
+int qdma_device_clear_stats(unsigned long dev_hndl)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *) dev_hndl;
+
+	if (xdev_check_hndl(__func__, xdev->conf.pdev, dev_hndl) < 0)
+		return -EINVAL;
+
+	xdev->total_mm_h2c_pkts = 0;
+	xdev->total_mm_c2h_pkts = 0;
+	xdev->total_st_h2c_pkts = 0;
+	xdev->total_st_c2h_pkts = 0;
+
+	return 0;
+}
+
+int qdma_device_get_mmh2c_pkts(unsigned long dev_hndl,
+				unsigned long long *mmh2c_pkts)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *) dev_hndl;
+
+	if (xdev_check_hndl(__func__, xdev->conf.pdev, dev_hndl) < 0)
+		return -EINVAL;
+
+	*mmh2c_pkts = xdev->total_mm_h2c_pkts;
+
+	return 0;
+}
+
+int qdma_device_get_mmc2h_pkts(unsigned long dev_hndl,
+				unsigned long long *mmc2h_pkts)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *) dev_hndl;
+
+	if (xdev_check_hndl(__func__, xdev->conf.pdev, dev_hndl) < 0)
+		return -EINVAL;
+
+	*mmc2h_pkts = xdev->total_mm_c2h_pkts;
+
+	return 0;
+}
+
+int qdma_device_get_sth2c_pkts(unsigned long dev_hndl,
+				unsigned long long *sth2c_pkts)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *) dev_hndl;
+
+	if (xdev_check_hndl(__func__, xdev->conf.pdev, dev_hndl) < 0)
+		return -EINVAL;
+
+	*sth2c_pkts = xdev->total_st_h2c_pkts;
+
+	return 0;
+}
+
+int qdma_device_get_stc2h_pkts(unsigned long dev_hndl,
+				unsigned long long *stc2h_pkts)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *) dev_hndl;
+
+	if (xdev_check_hndl(__func__, xdev->conf.pdev, dev_hndl) < 0)
+		return -EINVAL;
+
+	*stc2h_pkts = xdev->total_st_c2h_pkts;
+
+	return 0;
+}
+
+/*****************************************************************************/
+/**
+ * qdma_device_set_config() - set the device configuration
+ *
+ * @param[in]	dev_hndl:	device handle
+ * @param[in]	conf:		dma device configuration to set
+ *
+ * @return	0 on success ,<0 on failure
+ *****************************************************************************/
+int qdma_device_set_config(unsigned long dev_hndl, struct qdma_dev_conf *conf)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+
+	if (!conf)
+		return -EINVAL;
+
+	if (xdev_check_hndl(__func__, xdev->conf.pdev, dev_hndl) < 0)
+		return -EINVAL;
+
+	memcpy(&xdev->conf, conf, sizeof(*conf));
+
+	return 0;
+}
+
+/*****************************************************************************/
+/**
+ * qdma_device_set_cfg_state - set the device configuration state
+ *
+ * @param[in]	dev_hndl:	device handle
+ * @param[in]	new_cfg_state:	dma device conf state to set
+ *
+ *
+ * @return	0 on success ,<0 on failure
+ *****************************************************************************/
+
+int qdma_device_set_cfg_state(unsigned long dev_hndl,
+					enum qdma_dev_qmax_state new_cfg_state)
+{
+	struct xlnx_dma_dev *xdev = (struct xlnx_dma_dev *)dev_hndl;
+
+	if (new_cfg_state > QMAX_CFG_USER)
+		return -EINVAL;
+
+	if (xdev_check_hndl(__func__, xdev->conf.pdev, dev_hndl) < 0)
+		return -EINVAL;
+
+	xdev->conf.cur_cfg_state = new_cfg_state;
+
+	return 0;
+}
+
diff --git a/QDMA/linux-kernel/libqdma/xdev.h b/QDMA/linux-kernel/libqdma/xdev.h
new file mode 100644
index 0000000..a875d02
--- /dev/null
+++ b/QDMA/linux-kernel/libqdma/xdev.h
@@ -0,0 +1,531 @@
+/*
+ * This file is part of the Xilinx DMA IP Core driver for Linux
+ *
+ * Copyright (c) 2017-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * The full GNU General Public License is included in this distribution in
+ * the file called "COPYING".
+ */
+
+#ifndef __XDEV_H__
+#define __XDEV_H__
+/**
+ * @file
+ * @brief This file contains the declarations for QDMA PCIe device
+ *
+ */
+#include <linux/types.h>
+#include <linux/dma-mapping.h>
+#include <linux/interrupt.h>
+#include <linux/pci.h>
+
+#include "libqdma_export.h"
+#include "qdma_mbox.h"
+#include "qdma_qconf_mgr.h"
+#ifdef DEBUGFS
+#include "qdma_debugfs.h"
+#endif
+
+/**
+ * QDMA bars
+ */
+#define QDMA_BAR_NUM			6
+/**
+ * QDMA config bar size - 64MB
+ */
+#define QDMA_MAX_BAR_LEN_MAPPED		0x4000000
+
+/*
+ *module_param_array:
+ *config_bar=<bus_num(16bits)><pf0_config_bar(4bits)><pf1_config_bar(4bits)>
+ *		<pf2_config_bar(4bits)><pf3_config_bar(4bits)>
+ *config_bar=<bus_num(16bits)><vf_pf0_config_bar(4bits)>
+ *		<vf_pf1_config_bar(4bits)><vf_pf2_config_bar(4bits)>
+ *		<vf_pf3_config_bar(4bits)>
+ *
+ */
+#define BUS_NUM_MASK			0xFFFF0000
+#define BUS_NUM_SHIFT			16
+
+#define PF_DEV_0_MASK			0x0000F000
+#define PF_DEV_0_SHIFT			12
+#define PF_DEV_1_MASK			0x00000F00
+#define PF_DEV_1_SHIFT			8
+#define PF_DEV_2_MASK			0x000000F0
+#define PF_DEV_2_SHIFT			4
+#define PF_DEV_3_MASK			0x0000000F
+#define PF_DEV_3_SHIFT			0
+
+#define VF_PF_IDENTIFIER_MASK	0xF
+#define VF_PF_IDENTIFIER_SHIFT  8
+
+enum qdma_pf_devices {
+	PF_DEVICE_0 = 0,
+	PF_DEVICE_1,
+	PF_DEVICE_2,
+	PF_DEVICE_3
+};
+/**
+ * number of bits to describe the DMA transfer descriptor
+ */
+#define QDMA_DESC_BLEN_BITS	28
+/**
+ * maximum size of a single DMA transfer descriptor
+ */
+#define QDMA_DESC_BLEN_MAX	((1 << (QDMA_DESC_BLEN_BITS)) - 1)
+
+/**
+ * obtain the 32 most significant (high) bits of a 32-bit or 64-bit address
+ */
+#define PCI_DMA_H(addr) ((addr >> 16) >> 16)
+/**
+ * obtain the 32 least significant (low) bits of a 32-bit or 64-bit address
+ */
+#define PCI_DMA_L(addr) (addr & 0xffffffffUL)
+
+/**
+ * Xiling DMA device forward declaration
+ */
+struct xlnx_dma_dev;
+
+/* XDMA PCIe device specific book-keeping */
+/**
+ * Flag for device offline
+ */
+#define XDEV_FLAG_OFFLINE	0x1
+/**
+ * Flag for IRQ
+ */
+#define XDEV_FLAG_IRQ		0x2
+/**
+ * Maximum number of interrupts supported per device
+ */
+#define XDEV_NUM_IRQ_MAX	8
+
+/**
+ * interrupt call back function handlers
+ */
+typedef irqreturn_t (*f_intr_handler)(int irq_index, int irq, void *dev_id);
+
+/**
+ * @struct - intr_coal_conf
+ * @brief	interrut coalescing configuration
+ */
+struct intr_coal_conf {
+	/**< interrupt vector index */
+	u16 vec_id;
+	/**< number of entries in interrupt ring per vector */
+	u16 intr_rng_num_entries;
+	/**< interrupt ring base address */
+	dma_addr_t intr_ring_bus;
+	struct qdma_intr_ring *intr_ring_base;
+	/**< color value indicates the valid entry in the interrupt ring */
+	u8 color;
+	/**< interrupt ring consumer index */
+	unsigned int cidx;
+};
+
+/**
+ * Macros for Hardware Version info
+ */
+#define RTL1_VERSION                      0
+#define RTL2_VERSION                      1
+#define VIVADO_RELEASE_2018_3             0
+#define VIVADO_RELEASE_2018_2             1
+#define EVEREST_SOFT_IP                   0
+#define EVEREST_HARD_IP                   1
+
+/**
+ * intr_type_list - interrupt types
+ */
+enum intr_type_list {
+	INTR_TYPE_ERROR,	/**< error interrupt */
+	INTR_TYPE_USER,		/**< user interrupt */
+	INTR_TYPE_DATA,		/**< data interrupt */
+	INTR_TYPE_MAX		/**< max interrupt */
+};
+
+/**
+ * @struct - intr_vec_map_type
+ * @brief	interrupt vector map details
+ */
+struct intr_vec_map_type {
+	enum intr_type_list intr_type;	/**< interrupt type */
+	int intr_vec_index;		/**< interrupt vector index */
+	f_intr_handler intr_handler;	/**< interrupt handler */
+};
+
+/**< Interrupt info for MSI-X interrupt vectors per device */
+struct intr_info_t {
+	/**< msix_entry list for all vectors */
+	char msix_name[QDMA_DEV_NAME_MAXLEN + 16];
+	/**< queue list for each interrupt */
+	struct list_head intr_list;
+	/**< number of queues assigned for each interrupt */
+	int intr_list_cnt;
+	/**< interrupt vector map */
+	struct intr_vec_map_type intr_vec_map;
+};
+
+/**
+ * @struct - xlnx_dma_dev
+ * @brief	Xilinx DMA device details
+ */
+struct xlnx_dma_dev {
+	/**< Xilinx DMA device name */
+	char mod_name[QDMA_DEV_NAME_MAXLEN];
+	/**< DMA device configuration */
+	struct qdma_dev_conf conf;
+	/**< DMA device list */
+	struct list_head list_head;
+	/**< DMA device lock to protects concurrent access */
+	spinlock_t lock;
+	/**< DMA device hardware program lock */
+	spinlock_t hw_prg_lock;
+	/**< device flags */
+	unsigned int flags;
+	u8 flr_prsnt:1;
+	/**< flag to indicate the FLR present status */
+	u8 st_mode_en:1;
+	/**< flag to indicate the streaming mode enabled status */
+	u8 mm_mode_en:1;
+	/**< flag to indicate the memory mapped mode enabled status */
+	u8 stm_en:1;
+	/**< flag to indicate the presence of STM */
+	/**< sriov info */
+	void *vf_info;
+	/**< number of virtual functions */
+	u8 vf_count;
+	/**< function id */
+	u16 func_id;
+#ifdef __QDMA_VF__
+	/**< parent function id, valid only for virtual function */
+	u8 func_id_parent;
+#else
+	/**< number of physical functions */
+	u8 pf_count;
+#endif
+	/**< max mm channels */
+	u8 mm_channel_max;
+	u8 stm_rev;
+	/**< PCIe config. bar */
+	void __iomem *regs;
+	/** PCIe Bar for STM config */
+	void __iomem *stm_regs;
+
+	/**< number of MSI-X interrupt vectors per device */
+	int num_vecs;
+	/**< msix_entry list for all MSIx vectors associated for device */
+	struct msix_entry *msix;
+	/**< interrupt info list for all MSIx vectors associated for device */
+	struct intr_info_t *dev_intr_info_list;
+	/**< data vector start index */
+	int dvec_start_idx;
+	/**< DMA private device to hold the qdma que details */
+	void *dev_priv;
+	/**< dsa configured max pkt size that STM can support */
+	u32 pipe_stm_max_pkt_size;
+	/**< list of interrupt coalescing configuration for each vector */
+	struct intr_coal_conf  *intr_coal_list;
+	/**< legacy interrupt vector */
+	int vector_legacy;
+#ifdef ERR_DEBUG
+	/**< error lock */
+	spinlock_t err_lock;
+	/**< flag to indicate the error minitor status */
+	u8 err_mon_cancel;
+	/**< error minitor work handler */
+	struct delayed_work err_mon;
+#endif
+
+#ifdef DEBUGFS
+	/** debugfs device root */
+	struct dentry *dbgfs_dev_root;
+	/** debugfs queue root */
+	struct dentry *dbgfs_queues_root;
+	/* lock for creating qidx directory */
+	spinlock_t qidx_lock;
+#endif
+
+	/** number of packets processed in pf */
+	struct qdma_mbox mbox;
+	unsigned long long total_mm_h2c_pkts;
+	unsigned long long total_mm_c2h_pkts;
+	unsigned long long total_st_h2c_pkts;
+	unsigned long long total_st_c2h_pkts;
+	/**< for upper layer calling function */
+	unsigned int dev_ulf_extra[0];
+};
+
+/*****************************************************************************/
+/**
+ * xlnx_dma_device_flag_check() - helper function to check the flag status
+ *
+ * @param[in]	xdev:	pointer to xilinx dma device
+ * @param[in]	f:	flag value
+ *
+ *
+ * @return	1 if the flag is on
+ * @return	0 if the flag is off
+ *****************************************************************************/
+static inline int xlnx_dma_device_flag_check(struct xlnx_dma_dev *xdev,
+					unsigned int f)
+{
+	unsigned long flags;
+
+	spin_lock_irqsave(&xdev->lock, flags);
+	if (xdev->flags & f) {
+		spin_unlock_irqrestore(&xdev->lock, flags);
+		return 1;
+	}
+	spin_unlock_irqrestore(&xdev->lock, flags);
+	return 0;
+}
+
+/*****************************************************************************/
+/**
+ * xlnx_dma_device_flag_test_n_set() - helper function to test n set the flag
+ *
+ * @param[in]	xdev:	pointer to xilinx dma device
+ * @param[in]	f:	flag value
+ *
+ *
+ * @return	1 if the flag is already enabled
+ * @return	0 if the flag is off
+ *****************************************************************************/
+static inline int xlnx_dma_device_flag_test_n_set(struct xlnx_dma_dev *xdev,
+					 unsigned int f)
+{
+	unsigned long flags;
+	int rv = 0;
+
+	spin_lock_irqsave(&xdev->lock, flags);
+	if (xdev->flags & f) {
+		spin_unlock_irqrestore(&xdev->lock, flags);
+		rv = 1;
+	} else
+		xdev->flags |= f;
+	spin_unlock_irqrestore(&xdev->lock, flags);
+	return rv;
+}
+
+/*****************************************************************************/
+/**
+ * xdev_flag_set() - helper function to set the device flag
+ *
+ * @param[in]	xdev:	pointer to xilinx dma device
+ * @param[in]	f:	flag value
+ *
+ *
+ * @return	none
+ *****************************************************************************/
+static inline void xdev_flag_set(struct xlnx_dma_dev *xdev, unsigned int f)
+{
+	unsigned long flags;
+
+	spin_lock_irqsave(&xdev->lock, flags);
+	xdev->flags |= f;
+	spin_unlock_irqrestore(&xdev->lock, flags);
+}
+
+/*****************************************************************************/
+/**
+ * xlnx_dma_device_flag_test_n_set() - helper function to clear the device flag
+ *
+ * @param[in]	xdev:	pointer to xilinx dma device
+ * @param[in]	f:	flag value
+ *
+ * @return	none
+ *****************************************************************************/
+static inline void xdev_flag_clear(struct xlnx_dma_dev *xdev, unsigned int f)
+{
+	unsigned long flags;
+
+	spin_lock_irqsave(&xdev->lock, flags);
+	xdev->flags &= ~f;
+	spin_unlock_irqrestore(&xdev->lock, flags);
+}
+
+/*****************************************************************************/
+/**
+ * xdev_find_by_pdev() - find the xdev using struct pci_dev
+ *
+ * @param[in]	pdev:	pointer to struct pci_dev
+ *
+ * @return	pointer to xlnx_dma_dev on success
+ * @return	NULL on failure
+ *****************************************************************************/
+struct xlnx_dma_dev *xdev_find_by_pdev(struct pci_dev *pdev);
+
+/*****************************************************************************/
+/**
+ * xdev_find_by_idx() - find the xdev using the index value
+ *
+ * @param[in]	idx:	index value in the xdev list
+ *
+ * @return	pointer to xlnx_dma_dev on success
+ * @return	NULL on failure
+ *****************************************************************************/
+struct xlnx_dma_dev *xdev_find_by_idx(int idx);
+
+/*****************************************************************************/
+/**
+ * xdev_list_first() - handler to return the first xdev entry from the list
+ *
+ * @return	pointer to first xlnx_dma_dev on success
+ * @return	NULL on failure
+ *****************************************************************************/
+struct xlnx_dma_dev *xdev_list_first(void);
+
+/*****************************************************************************/
+/**
+ * xdev_list_next() - handler to return the next xdev entry from the list
+ *
+ * @param[in]	xdev:	pointer to current xdev
+ *
+ * @return	pointer to next xlnx_dma_dev on success
+ * @return	NULL on failure
+ *****************************************************************************/
+struct xlnx_dma_dev *xdev_list_next(struct xlnx_dma_dev *xdev);
+
+/*****************************************************************************/
+/**
+ * xdev_list_dump() - list the dma device details
+ *
+ * @param[in]	buflen:		length of the input buffer
+ * @param[out]	buf:		message buffer
+ *
+ * @return	pointer to next xlnx_dma_dev on success
+ * @return	NULL on failure
+ *****************************************************************************/
+int xdev_list_dump(char *buf, int buflen);
+
+/*****************************************************************************/
+/**
+ * xdev_check_hndl() - helper function to validate the device handle
+ *
+ * @param[in]	f:		device name
+ * @param[in]	pdev:	pointer to struct pci_dev
+ * @param[in]	hndl:	device handle
+ *
+ * @return	0: success
+ * @return	EINVAL: on failure
+ *****************************************************************************/
+int xdev_check_hndl(const char *f, struct pci_dev *pdev, unsigned long hndl);
+
+
+#ifdef __QDMA_VF__
+/*****************************************************************************/
+/**
+ * xdev_sriov_vf_offline() - API to set the virtual function to offline mode
+ *
+ * @param[in]	xdev:		pointer to xdev
+ * @param[in]	func_id:	function identifier
+ *
+ * @return	0: success
+ * @return	-1: on failure
+ *****************************************************************************/
+int xdev_sriov_vf_offline(struct xlnx_dma_dev *xdev, u8 func_id);
+
+/*****************************************************************************/
+/**
+ * xdev_sriov_vf_online() - API to set the virtual function to online mode
+ *
+ * @param[in]	xdev:		pointer to xdev
+ * @param[in]	func_id:	function identifier
+ *
+ * @return	0: success
+ * @return	-1: on failure
+ *****************************************************************************/
+int xdev_sriov_vf_online(struct xlnx_dma_dev *xdev, u8 func_id);
+#elif defined(CONFIG_PCI_IOV)
+/* SR-IOV */
+/*****************************************************************************/
+/**
+ * xdev_sriov_vf_online() - API to disable the virtual function
+ *
+ * @param[in]	xdev:		pointer to xdev
+ *
+ * @return	none
+ *****************************************************************************/
+void xdev_sriov_disable(struct xlnx_dma_dev *xdev);
+
+/*****************************************************************************/
+/**
+ * xdev_sriov_vf_online() - API to enable the virtual function
+ *
+ * @param[in]	xdev:		pointer to xdev
+ * @param[in]	func_id:	function identifier
+ *
+ * @return	number of vfs enabled on success
+ * @return	-1: on failure
+ *****************************************************************************/
+int xdev_sriov_enable(struct xlnx_dma_dev *xdev, int num_vfs);
+
+/*****************************************************************************/
+/**
+ * xdev_sriov_vf_offline() - API to set the virtual function to offline mode
+ *
+ * @param[in]	xdev:		pointer to xdev
+ * @param[in]	func_id:	function identifier
+ *
+ * @return	none
+ *****************************************************************************/
+void xdev_sriov_vf_offline(struct xlnx_dma_dev *xdev, u8 func_id);
+
+/*****************************************************************************/
+/**
+ * xdev_sriov_vf_offline() - API to set the virtual function to offline mode
+ *
+ * @param[in]	xdev:		pointer to xdev
+ * @param[in]	func_id:	function identifier
+ *
+ * @return	0: success
+ * @return	-1: on failure
+ *****************************************************************************/
+int xdev_sriov_vf_online(struct xlnx_dma_dev *xdev, u8 func_id);
+
+/*****************************************************************************/
+/**
+ * xdev_sriov_vf_offline() - API to configure the fmap for virtual function
+ *
+ * @param[in]	xdev:		pointer to xdev
+ * @param[in]	func_id:	function identifier
+ * @param[in]	qbase:		queue start
+ * @param[in]	qmax:		queue max
+ *
+ * @return	0: success
+ * @return	-1: on failure
+ *****************************************************************************/
+int xdev_sriov_vf_fmap(struct xlnx_dma_dev *xdev, u8 func_id,
+			unsigned short qbase, unsigned short qmax);
+#else
+/** dummy declaration for xdev_sriov_disable()
+ *  When virtual function is not enabled
+ */
+#define xdev_sriov_disable(xdev)
+/** dummy declaration for xdev_sriov_enable()
+ *  When virtual function is not enabled
+ */
+#define xdev_sriov_enable(xdev, num_vfs)
+/** dummy declaration for xdev_sriov_vf_offline()
+ *  When virtual function is not enabled
+ */
+#define xdev_sriov_vf_offline(xdev, func_id)
+/** dummy declaration for xdev_sriov_vf_online()
+ *  When virtual function is not enabled
+ */
+#define xdev_sriov_vf_online(xdev, func_id)
+#endif
+
+#endif /* XDMA_LIB_H */
diff --git a/QDMA/linux-kernel/make/common_flags.mk b/QDMA/linux-kernel/make/common_flags.mk
new file mode 100644
index 0000000..1b7c48c
--- /dev/null
+++ b/QDMA/linux-kernel/make/common_flags.mk
@@ -0,0 +1,9 @@
+#Build flags common to xdma/qdma
+
+ifeq ($(VF),1)
+   EXTRA_FLAGS += -D__QDMA_VF__
+   PFVF_TYPE = _vf
+else
+   PFVF_TYPE = 
+endif
+
diff --git a/QDMA/linux-kernel/make/distro_check.mk b/QDMA/linux-kernel/make/distro_check.mk
new file mode 100644
index 0000000..ec339c7
--- /dev/null
+++ b/QDMA/linux-kernel/make/distro_check.mk
@@ -0,0 +1,86 @@
+#
+# distro. checks
+# uses the same variables calculated from kernel_check.mk
+#
+
+distro :=
+dmajor :=
+dminor :=
+
+# kernel.org rc kernels
+#ifneq ($(shell echo $(kextraversion) | $(grep) -c 'git'),0)
+#  distro := GIT
+#  dmajor :=
+#  dminor :=
+#endif # kernel.org
+
+ifneq ($(shell $(grep) -c 'RHEL' $(VERSION_H)),0)
+  distro := RHEL
+#  distro_vmajor := $(shell $(grep) 'RHEL_MAJOR' $(VERSION_H) | cut -d' ' -f3)
+#  distro_vminor := $(shell $(grep) 'RHEL_MINOR' $(VERSION_H) | cut -d' ' -f3)
+  dmajor := $(word 3, $(shell $(grep) 'RHEL_MAJOR' $(VERSION_H)))
+  dminor := $(word 3, $(shell $(grep) 'RHEL_MINOR' $(VERSION_H)))
+  ifeq ($(dmajor),)
+    ifeq ($(dminor),)
+      $(error ERROR! RHEL distro version NOT specified, check version.h.)
+    endif
+  endif
+  ifeq ($(shell [ $(dmajor) -lt 7 ] && echo 1),1)
+    $(error ERROR! Unsupported RHEL version $(dmajor).$(dminor).)
+  endif
+  ifeq ($(dmajor),7)
+    ifeq ($(shell [ $(dminor) -lt 1 ] && echo 1),1)
+      $(error ERROR! Unsupported RHEL version $(dmajor).$(dminor).)
+    endif
+  endif
+endif # RHEL 
+
+# SLES does not provide any release macros like RHEL. So we are
+# setting Makefile flags for SLES releases based on the version 
+# and patchlevel obtained from /etc/SuSE-release file
+ifneq ($(wildcard /etc/SuSE-release),)
+  distro := SLES
+  dmajor := $(shell cat /etc/SuSE-release | grep VERSION | awk '{print $$3}')
+  dminor := $(shell cat /etc/SuSE-release | grep PATCHLEVEL | awk '{print $$3}')
+endif
+
+$(info "distro=$(distro), dmajor=$(dmajor) dminor=$(dminor) ")
+
+# assume this is kernel.org kernels
+ifeq ($(distro),)
+  ifeq ($(kseries),2.6)
+    ifeq ($(shell [ $(ksublevel) -ge 32 ] && echo 1),1)
+      distro := GIT
+    else
+      $(error kernel version $(kbaseversion)$(kextraversion) NOT supported.)
+      $(      kernel.org Requires >= 2.6.32.)
+    endif
+  endif
+
+  ifeq ($(kversion),3)
+    ifeq ($(shell [ $(kpatchlevel) -ge 1 ] && echo 1),1)
+      distro := GIT
+    else
+      $(error kernel version $(kbaseversion)$(kextraversion) NOT supported.)
+      $(      kernel.org Requires >= 3.1.)
+    endif
+  endif
+
+  ifeq ($(kversion),4)
+      distro := GIT
+  endif
+endif # assume kernel.org kernels
+
+ifeq ($(distro),)
+  $(error kernel version $(kbaseversion)$(kextraversion) NOT supported.)
+  $(      kernel.org Requires >= 2.6.35.)
+endif
+
+FLAGS += -D$(distro)$(dmajor)SP$(dminor)
+FLAGS += -D$(distro)$(dmajor)
+
+$(info $(kbaseversion)$(kextraversion): $(distro),$(dmajor),$(dminor), $(FLAGS))
+
+export distro
+export dmajor
+export dminor
diff --git a/QDMA/linux-kernel/make/kernel_check.mk b/QDMA/linux-kernel/make/kernel_check.mk
new file mode 100644
index 0000000..bce232c
--- /dev/null
+++ b/QDMA/linux-kernel/make/kernel_check.mk
@@ -0,0 +1,332 @@
+# Kernel directories.
+KERNELRELEASE := $(shell uname -r)
+
+# If KSRC=<path> is specified on the command line, KOBJ=<path> must
+# also be specified. This is to avoid mixups if the kernel object path
+# differs from the source path. A shortcut (KSRC=KOBJ) is to use KDIR.
+ifeq ($(KDIR),)
+  ifeq ($(KSRC),)
+    ifneq ($(KOBJ),)
+      $(warning When using KOBJ=<path>, the KSRC=<path> must also be defined.)
+      $(warning Use KDIR=<path> when KSRC and KOBJ are the same.)
+      $(error ERROR: kernel source path not specified)
+    endif
+  else
+    ifeq ($(KOBJ),)
+      $(warning When using KSRC=<path>, the KOBJ=<path> must also be defined.)
+      $(warning Use KDIR=<path> when KSRC and KOBJ are the same.)
+      $(error ERROR: KOBJ path not specified)
+    endif
+  endif
+else
+  override KSRC := $(KDIR)
+  override KOBJ := $(KDIR)
+endif
+
+# Only if KSRC/KOBJ were not defined on the command line.
+KSRC ?= $(wildcard /lib/modules/$(KERNELRELEASE)/source)
+KOBJ ?= $(wildcard /lib/modules/$(KERNELRELEASE)/build)
+KINC  = $(KSRC)/include
+
+#$(warning KDIR: $(KDIR).)
+
+ifeq ($(KSRC),)
+   KSRC = $(KOBJ)
+endif
+
+# Define kernel files.
+VERSION_H  := $(KOBJ)/include/linux/version.h
+AUTOCONF_H := $(KOBJ)/include/generated/autoconf.h
+UTSRELEASE_H  := $(KOBJ)/include/generated/utsrelease.h
+
+ifeq ($(wildcard $(VERSION_H)),)
+  VERSION_H := $(KOBJ)/include/generated/uapi/linux/version.h
+endif
+ifeq ($(wildcard $(AUTOCONF_H)),)
+  AUTOCONF_H := $(KOBJ)/include/linux/autoconf.h
+endif
+ifeq ($(wildcard $(UTSRELEASE_H)),)
+  UTSRELEASE_H := $(KOBJ)/include/linux/utsrelease.h
+endif
+#ifeq ($(wildcard $(UTSRELEASE_H)),)
+#  $(error NO utsrelease)
+#endif
+
+# Define architecture and target(for RPM).
+ARCH := $(shell uname -m)
+target := $(ARCH)
+override ARCH := $(shell echo $(ARCH) | sed 's/i.86/i386/')
+ifeq ($(USER_ARCH),)
+
+  ifeq ($(ARCH),ppc64le)
+    ifeq ($(wildcard $(KOBJ)/arch/$(ARCH)),)
+      override ARCH := powerpc
+    endif
+  endif
+
+  ifeq ($(ARCH),ppc64)
+    # Check if the kernel wants ppc64 or powerpc.
+    ifeq ($(wildcard $(KOBJ)/arch/$(ARCH)),)
+      override ARCH := powerpc
+    endif
+  endif
+else
+  # Honor the value of ARCH if specified by user.
+  override ARCH := $(USER_ARCH)
+endif
+
+# Functions.
+define path_check
+$(if $(wildcard $(1)),$(1),)
+endef
+define reverse_sort
+$(shell echo -e `echo "$(strip $(1))" |\
+                 sed 's/[[:space:]]/\\\n/g'` | sort -r)
+endef
+define version_code
+$(shell let x=`sed '/^\#define[[:space:]]*LINUX_VERSION_CODE/!d;\
+                    s/.*LINUX_VERSION_CODE[[:space:]]*//' < $(1)\
+               2>/dev/null`;\
+        let a="$$x >> 16";\
+        let x="$$x - ($$a << 16)";\
+        let b="$$x >> 8";\
+        let x="$$x - ($$b << 8)";\
+        echo "$$a $$b $$x")
+endef
+
+# Checks for kernel source and object directories.
+ifeq ($(call path_check,$(KSRC)),)
+  $(warning Be sure the kernel source is properly installed or \
+            try specifying the kernel source tree using 'make KSRC=<path>')
+  $(error ERROR: missing kernel source)
+endif
+ifeq ($(call path_check,$(KOBJ)),)
+  $(warning Try specifying the kernel build tree using 'make KOBJ=<path>'.)
+  $(error ERROR: missing kernel build)
+endif
+
+# Check kernel source and build directories are somewhat likely to be correct.
+ifneq ($(notdir $(wildcard $(KSRC)/Makefile)),Makefile)
+  $(warning There seems to be a problem with the kernel \
+            source [$(KSRC)] directory.)
+  $(error ERROR: missing kernel Makefile)
+endif
+ifneq ($(notdir $(wildcard $(KOBJ)/Makefile)),Makefile)
+  $(warning There seems to be a problem with the kernel \
+            build [$(KOBJ)] directory.)
+  $(error ERROR: missing kernel Makefile)
+endif
+
+# Get kernel version code info.
+KERNELVERSION := $(strip $(call version_code,$(VERSION_H)))
+ifneq ($(words $(KERNELVERSION)), 3)
+  $(error ERROR: unexpected kernel version \
+          '$(shell echo $(KERNELVERSION) | sed 's/[[:space:]]/./g')')
+endif
+
+# Define kernel version details.
+kversion       := $(word 1, $(KERNELVERSION))
+kpatchlevel    := $(word 2, $(KERNELVERSION))
+ksublevel      := $(word 3, $(KERNELVERSION))
+
+# The kernel base version, excluding the EXTRAVERSION string.
+kbaseversion   := $(kversion).$(kpatchlevel).$(ksublevel)
+
+# The kernel series version.
+kseries        := $(kversion).$(kpatchlevel)
+
+# Fix for variation of Module.symvers naming (thanks 2.6.17!).
+# I need to know the file name of the module symver generated by the kernel
+# during an external module build (MODPOST). Also used for kernels that don't
+# automatically generate the module symver file during MODPOST (2.6.0-2.6.17?).
+ifeq ($(shell $(grep) -c '^modulesymfile[[:space:]]*:\?=' \
+                $(KSRC)/scripts/Makefile.modpost),1)
+  modulesymfile := $(shell $(grep) '^modulesymfile[[:space:]]*:\?=' \
+                             $(KSRC)/scripts/Makefile.modpost)
+  kernelsymfile := $(shell $(grep) '^kernelsymfile[[:space:]]*:\?=' \
+                             $(KSRC)/scripts/Makefile.modpost)
+else
+  ifeq ($(shell $(grep) -c '^symverfile[[:space:]]*:\?=' \
+                $(KSRC)/scripts/Makefile.modpost),1)
+    symverfile    := $(shell $(grep) '^symverfile[[:space:]]*:\?=' \
+                             $(KSRC)/scripts/Makefile.modpost)
+    kernelsymfile := $(subst symverfile,kernelsymfile,$(symverfile))
+  endif
+endif
+modulesymfile ?= $(symverfile)
+ifeq ($(modulesymfile),)
+  $(warning The parsing of $(KSRC)/scripts/Makefile.modpost \
+            is not making sense.)
+  $(error ERROR cannot determine module symvers file)
+endif
+
+# Gnu make (3.80) bug #1516, $(eval ...) inside conditionals causes errors.
+# This is fixed in v3.81 and some v3.80 (RHEL4/5) but not on SLES10.
+# Workaround: include a separate makefile that does the eval.
+ifeq ($(shell echo '$(modulesymfile)' | $(grep) -c '^[[:alnum:]_]\+[[:space:]]*:\?=[[:space:]]*.\+'),1)
+  $(shell echo '$$(eval $$(modulesymfile))' > eval.mak)
+  include eval.mak
+else
+  modulesymfile =
+endif
+ifeq ($(shell echo '$(kernelsymfile)' | $(grep) -c '^[[:alnum:]_]\+[[:space:]]*:\?=[[:space:]]*.\+'),1)
+  $(shell echo '$$(eval $$(kernelsymfile))' > eval.mak)
+  include eval.mak
+else
+  kernelsymfile =
+endif
+modulesymfile := $(notdir $(modulesymfile))
+kernelsymfile := $(notdir $(kernelsymfile))
+$(shell [ -f eval.mak ] && /bin/rm -f eval.mak)
+
+ifneq ($(words $(modulesymfile)),1)
+  $(warning The parsing of $(KSRC)/scripts/Makefile.modpost \
+            is not making sense.)
+  $(warning You can try passing 'modulesymfile=Module.symvers' or \
+            similar to make.)
+  $(error ERROR cannot determine module symvers file)
+endif
+
+
+# Check for configured kernel.
+ifeq ($(wildcard $(AUTOCONF_H)),)
+  $(warning The kernel is not properly configured, try running \
+            'make menuconfig' on your kernel.)
+  $(error ERROR: kernel missing autoconf.h)
+endif
+# Check for built kernel.
+ifeq ($(wildcard $(VERSION_H)),)
+  $(warning The kernel has not been compiled. Try building your kernel \
+            before building this driver.)
+  $(error ERROR: kernel missing version.h)
+endif
+
+# Check that kernel supports modules.
+ifneq ($(shell $(grep) -c '^\#define[[:space:]]\+CONFIG_MODULES[[:space:]]\+1' $(AUTOCONF_H)),1)
+  $(warning The kernel has not been configured for module support.)
+  $(warning Try configuring the kernel to allow external modules and \
+            recompile.)
+  $(error ERROR: kernel CONFIG_MODULES not defined)
+endif
+
+# Get kernel UTS_RELEASE info.
+ifneq ($(wildcard $(UTSRELEASE_H)),)
+  ifneq ($(shell $(grep) -c '^\#define[[:space:]]\+UTS_RELEASE' \
+                  $(UTSRELEASE_H)),0)
+    utsrelease := $(UTSRELEASE_H)
+  endif
+else
+  ifneq ($(wildcard $(KOBJ)/include/linux/version.h),)
+    ifneq ($(shell $(grep) -c '^\#define[[:space:]]\+UTS_RELEASE' \
+                    $(KOBJ)/include/linux/version.h),0)
+      utsrelease := $(KOBJ)/include/linux/version.h
+    endif
+  endif
+endif
+ifeq ($(utsrelease),)
+  $(error ERROR: cannot locate kernel UTS_RELEASE)
+endif
+# Getting the UTS_RELEASE on RHEL3 had problems due to the multiple defines
+# within the file. I can run this file through the C pre-processor and get 
+# the actual UTS_RELEASE definition. This has only been tested on gcc, other
+# compilers may not work.
+utsrelease := $(strip $(shell $(CC) -E -dM -I $(KSRC)/include $(utsrelease) \
+                        2>/dev/null| sed '/^\#define[[:space:]]*UTS_RELEASE/!d;\
+		                          s/^\#define UTS_RELEASE[[:space:]]*"//;\
+					  s/"//g'))
+
+# The kernel local version string if defined in config.
+klocalversion  := $(shell sed '/^CONFIG_LOCALVERSION=/!d;\
+                               s/^CONFIG_LOCALVERSION="//;s/"//g'\
+                            2>/dev/null < $(KOBJ)/.config)
+# The complete kernel EXTRAVERSION string.
+kextraversion  := $(subst $(kbaseversion),,$(utsrelease))
+# The full kernel version should be the same as uts_release.
+kernelversion  := $(utsrelease)
+
+# The kernel EXTRAVERSION creates a unique problem, especially since
+# kernel versioning extended into the EXTRAVERSION and distributions 
+# add strings such as smp, largesmp, xen, etc or when additional minor
+# version numbers are appended.
+# Some code that we supply is dependent on the kernel version and
+# parts of the EXTRAVERSION, but not dependent on some of the additional
+# flags. This requires that I have a list of kernel version strings that
+# could map to the source version we require. For example, if the
+# kernel version is 2.6.9-67.ELsmp, we only care about the "2.6.9-67"
+# part, therefore, I need to split the EXTRAVERSION accordingly.
+# Another problem is when a user builds their own kernel, say 2.6.21.4
+# and adds an additional string to EXTRAVERSION. The EXTRAVERSION is
+# now ".4-custom" and I have to parse this with hopes of extracting
+# only the ".4" part, resulting in the needed "2.6.21.4" version.
+# Adding a BUGFIX version (int) field would be very helpfull!
+
+# EXTRAVERSION as defined only in the Makefile.
+extraversion1 := $(strip $(shell sed '/^EXTRAVERSION/!d;\
+                                      s/^EXTRAVERSION[[:space:]]*=//;s/"//g'\
+                                    < $(KSRC)/Makefile 2>/dev/null))
+# SLES9 likes to put make code in their EXTRAVERSION define. Let the
+# variables expand out to nothing, because the code will cause problems.
+extraversion1 := $(shell echo $(extraversion1))
+# EXTRAVERSION without local version.
+extraversion2 := $(strip $(subst $(klocalversion),,$(kextraversion)))
+# EXTRAVERSION with only the kernel .version (hopefully).
+extraversion3 := $(strip $(shell echo $(kextraversion) |\
+				  sed 's/\(^\.[0-9]*\).*/\1/'))
+# EXTRAVERSION without the Redhat EL tag.
+extraversion4 := $(strip $(shell echo $(kextraversion) |\
+			          sed 's/\.EL.*//i'))
+# EXTRAVERSION with the Redhat EL tag, but nothing else after.
+extraversion5 := $(strip $(shell echo $(kextraversion) |\
+			          sed 's/\(\.EL\).*/\1/i'))
+# EXTRAVERSION with the Redhat EL tag, including a number (el5).
+extraversion6 := $(strip $(shell echo $(kextraversion) |\
+			          sed 's/\(\.EL[[:digit:]]*\).*/\1/i'))
+# EXTRAVERSION without the Redhat hotfix/update kernel version number.
+extraversion7 := $(strip $(shell echo $(kextraversion) |\
+			          sed 's/\(.*\-[[:digit:]]*\)\..*\(\.EL\).*/\1\2/i'))
+# EXTRAVERSION without the Redhat hotfix/update kernel version number with Redhat EL tag, including the number (el5).
+extraversion8 := $(strip $(shell echo $(kextraversion) |\
+			          sed 's/\(.*\-[[:digit:]]*\)\..*\(\.EL[[:digit:]]\).*/\1\2/i'))
+# EXTRAVERSION with only the RHEL distro version
+extraversion9 := $(strip $(shell echo $(kextraversion) |\
+			          sed 's/\(.*\-[[:digit:]]*\)\..*\.EL[[:digit:]].*/\1/i'))
+
+# All known EXTRAVERSION strings, duplicates removed.
+extraversions  := $(strip $(sort $(kextraversion) \
+			         $(extraversion1) \
+			         $(extraversion2) \
+			         $(extraversion3) \
+			         $(extraversion4) \
+			         $(extraversion5) \
+			         $(extraversion6) \
+			         $(extraversion7) \
+			         $(extraversion8) \
+			         $(extraversion9)))
+
+# List of all possible kernel version names for target kernel.
+all_kernels    := $(sort $(kbaseversion) \
+		         $(foreach a,$(extraversions),$(kbaseversion)$(a)))
+
+# A reverse ordered list. This is used primarily to search source code
+# directory names to match the target kernel version.
+kversions := $(call reverse_sort, $(all_kernels))
+
+# Special cases for 2.4 series kernels.
+ifeq ($(kseries),2.4)
+  $(error ERROR:  2.4 kernel NOT supported.)
+endif
+# Note: Define only FLAGS here. These will convert to CFLAGS in the sub-make.
+# If the environment variable FLAGS is defined with make, things will break,
+# use CFLAGS instead.
+# General compiler flags.
+# Kernel version 3.3+ moved include/asm to include/generated, which breaks
+# outbox kernel drivers. Fix to include the new generated without code change.
+ifeq ($(kversion),3)
+  ifeq ($(shell [ $(kpatchlevel) -gt 2 ] && echo 1),1)
+    override CARCH := $(ARCH)
+    ifeq ($(CARCH),x86_64)
+      override CARCH := x86
+    endif
+    FLAGS += -I$(KSRC)/arch/$(CARCH)/include/generated
+  endif
+endif
diff --git a/QDMA/linux-kernel/scripts/datafile_16bit_pattern.bin b/QDMA/linux-kernel/scripts/datafile_16bit_pattern.bin
new file mode 100755
index 0000000000000000000000000000000000000000..1b50cdd57bcc0fb5c0e6ae027560cd03062b5434
GIT binary patch
literal 262144
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%0AY
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%0DZ-II4u-93Hx%-yqh&)q$L
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
B9peB1

literal 0
HcmV?d00001

diff --git a/QDMA/linux-kernel/scripts/qdma_run_stress_test.sh b/QDMA/linux-kernel/scripts/qdma_run_stress_test.sh
new file mode 100755
index 0000000..0f035e9
--- /dev/null
+++ b/QDMA/linux-kernel/scripts/qdma_run_stress_test.sh
@@ -0,0 +1,678 @@
+#!/bin/bash
+#
+# This script is designed for general as well as stress testing. VF distruction can be done by appropriately
+# configuring pf_nvf_lst.
+# 
+# AXI-MM Transfer
+#	First H2C operation is performed for 1KBytes, this will write 1Kbytes of data to BRAM on card side. 
+#	Then C2H operation is performed for 1KBytes. DMA reads data from BRAM and will transfer
+#	to local file 'out_mm0_0', which will be compared to original file for correctness. 
+#
+# AXI-ST H2C Transfer
+#	for H2C Streaming transfer data needs to be a per-defined data. 16 bit incremental data. 
+#	Data file is provided with the script. 
+#	H2C operation is performed, Data is read from Host memory and send to Card side. There is a data checker
+#	on the card side which will check the data for correctness and will log the result in a register.
+#	Script then read the register to check for results.
+#	
+#
+# AXI-ST C2H Transfer
+#	For C2H operation there is a data generator on the Card side which needs to be setup to generate data.
+#	Qid, transfer length and number of paket are written before C2H transfer. Then 
+#	C2H transfer is started by writing to register. C2H operation is completed and the data is written to 'out_st0_0"
+#	file which then is compared to a per-defined data file. The data generator will only generate pre-defined 
+#	data, so data comparison will need to be done with 'datafile_16bit_pattern.bin' file only.
+#
+# 
+
+
+function print_help() {
+	echo ""
+echo "Usage : $0 <bdf> <num_qs> <total_time> <overide_pf_nvf_lst> <log_file_suffix>"
+	echo "Ex : $0 81000 256 00:01:00 0"
+	echo "<bdf> : PF Bus device function in bbddf format ex:06000"
+	echo ""
+	echo "<num_qs> : number of queue from qid_start"	
+	echo "           Default - 04 "
+	echo ""
+	echo "<total_time> : execution time in hh:mm:ss format"	
+	echo "           Default - 00:01:00 "
+	echo ""
+	echo "<overide_pf_nvf_lst> : override the default pf_nvf_lst by reading sriov_totalvfs"	
+	echo "           Default - 0 "
+	echo ""
+	#echo "<desc_byapss_en> : Enable desc bypass"
+	#echo "           Default - 0 "
+	#echo ""
+	#echo "<pftch_en> : Enable prefetch"
+	#echo "           Default - 0 "
+	#echo ""
+	#echo "<pftch_bypass_en> : Enable prefetch bypass"
+	#echo "           Default - 0 "
+	#echo ""
+    echo ""
+    exit 1
+}
+
+if [ $# -lt 1 ]; then
+	echo "Invalid arguements."
+	print_help
+	exit;
+fi;
+
+log_file_suffix=default
+total_time="00:01:00"
+pf=$1
+num_qs=2048
+desc_byp=0
+pftch=0
+pftch_byp=0
+declare -a pf_nvf_lst=(1 1 1 1)
+overide_pf_nvf_lst=0
+max_q_func=512
+qmax_vfs=0
+total_funcs=4
+num_pfs=4
+declare -a bdf_array=()
+declare -a mm_q_lst=()
+declare -a st_q_lst=()
+declare -a qbase_array=()
+declare -a num_queue_per_pf=()
+declare -a full_bdf_array=()
+
+if [ ! -z $2 ]; then
+	num_qs=$2
+fi
+if [ ! -z $3 ]; then
+	total_time=$3
+fi
+if [ ! -z $4 ]; then
+	overide_pf_nvf_lst=$4
+fi
+if [ ! -z $5 ]; then
+	log_file_suffix=$5
+fi
+if [ ! -z $6 ]; then #if arg4 is there byp enable
+	desc_byp=$6
+fi
+
+if [ ! -z $7 ]; then #if arg5 is there pfetch enable
+	pftch=$7
+fi
+
+if [ ! -z $8 ]; then #if arg6 is there pfetch byp enable
+	pftch_byp=$8
+fi
+thrs=$((${total_time:0:2}))
+tmins=$((${total_time:3:2}))
+tsecs=$((${total_time:6:2}))
+total_exec_time=$(( (60*60*thrs) + (60*tmins) + tsecs ))
+
+infile='./datafile_16bit_pattern.bin'
+stress_test_exit=0
+
+function get_dev() {
+	bdf_array=()
+	qbase_array=()
+	num_queue_per_pf=()
+	full_bdf_array=()
+	local dev_list="$(dmactl dev list | grep qdma)"
+	while read -r line; do
+		IFS=$'\t ,~' read -r -a array <<< "$line"	
+		qdmadev=${array[0]}
+		if [ "${qdmadev:0:6}" == "qdmavf" ]; then
+			qdmavfbdf=${qdmadev:6:5}
+			bdf_array+=("${qdmavfbdf}")
+		else
+			qdmabdf=${qdmadev:4:5}
+			bdf_array+=("${qdmabdf}")
+		fi
+		full_bdf_array+=("${array[1]}")
+		num_queue_per_pf+=("${array[4]}")
+		qbase_array+=("${array[5]}")
+ 	done <<< "$dev_list"
+}
+
+function is_vf_bdf() {
+	local lbdf=$1
+	local lpci_device=$((0x${lbdf:2:2}))
+	local lpci_func=$((0x${lbdf:4:1}))
+	if [ ${lpci_device} -gt 0 -o ${lpci_func} -gt 3 ]; then
+		echo 1
+	else
+		echo 0
+	fi
+}
+
+function get_base_qid() {
+	num_devs=${#bdf_array[@]}
+	lq_base==-1
+	for ((i = 0; i < num_devs; i++))
+	do
+		if [ ${bdf_array[i]} == $1 ]; then
+			lq_base=$((${qbase_array[${i}]}))
+			break
+		fi
+	done
+	echo ${lq_base}
+}
+
+function queue_start() {
+	qdmadev="qdma"
+	is_vf=$(is_vf_bdf $1)
+	if [ $is_vf -eq 1 ]; then
+		qdmadev="qdmavf"
+	fi
+	echo -ne "setting up ${qdmadev}$1-$3-$2\033[0K\r"
+	dmactl ${qdmadev}$1 q add idx $2 mode $3 dir bi >> ./run_stress_test_${log_file_suffix}.log 2>&1
+	if [ $? -lt 0 ]; then
+		echo "q add failed for ${qdmadev}$1-$3-$2"
+		return
+	fi
+
+	if [ $desc_byp -eq 1 ] && [ $pftch -eq 0 ]; then
+		if [ $pftch_byp -eq 0 ]; then
+			dmactl ${qdmadev}$1 q start idx $2 dir bi desc_bypass_en >> ./run_stress_test_${log_file_suffix}.log 2>&1
+		else
+			dmactl ${qdmadev}$1 q start idx $2 dir bi desc_bypass_en pfetch_bypass_en >> ./run_stress_test_${log_file_suffix}.log 2>&1
+		fi
+	elif [ $desc_byp -eq 1 ] && [ $pftch -eq 1 ]; then
+		if [ $pftch_byp -eq 0 ]; then
+			dmactl ${qdmadev}$1 q start idx $2 dir bi desc_bypass_en pfetch_en >> ./run_stress_test_${log_file_suffix}.log 2>&1
+		else
+			dmactl ${qdmadev}$1 q start idx $2 dir bi desc_bypass_en pfetch_en pfetch_bypass_en >> ./run_stress_test_${log_file_suffix}.log 2>&1
+		fi
+	elif [ $desc_byp -eq 0 ] && [ $pftch -eq 1 ] ; then
+		if [ $pftch_byp -eq 0 ]; then
+			dmactl ${qdmadev}$1 q start idx $2 dir bi pfetch_en >> ./run_stress_test_${log_file_suffix}.log 2>&1
+		else
+			dmactl ${qdmadev}$1 q start idx $2 dir bi pfetch_en pfetch_bypass_en >> ./run_stress_test_${log_file_suffix}.log 2>&1
+		fi
+	else
+		if [ $pftch_byp -eq 0 ]; then
+			dmactl ${qdmadev}$1 q start idx $2 dir bi>> ./run_stress_test_${log_file_suffix}.log 2>&1
+		else
+			dmactl ${qdmadev}$1 q start idx $2 dir bi pfetch_bypass_en >> ./run_stress_test_${log_file_suffix}.log 2>&1
+		fi	
+	fi
+	if [ $? -lt 0 ]; then
+		echo "q start failed for ${qdmadev}$1-$3-$2"
+		dmactl ${qdmadev}$1 q del idx $2 dir bi >> ./run_stress_test_${log_file_suffix}.log 2>&1
+		return $?
+	fi
+	if [ $3 == mm ]; then
+		mm_q_lst+=("$1-$2")
+	else
+		st_q_lst+=("$1-$2")
+	fi
+	return 0
+}
+
+function cleanup_queue() {
+	qdmadev="qdma"
+	is_vf=$(is_vf_bdf $1)
+	if [ $is_vf -eq 1 ]; then
+		qdmadev="qdmavf"
+	fi
+	echo -ne "cleaning up ${qdmadev}$1-$2\033[0K\r"
+	dmactl ${qdmadev}$1 q stop idx $2 dir bi >> ./run_stress_test_${log_file_suffix}.log 2>&1
+	dmactl ${qdmadev}$1 q del idx $2 dir bi >> ./run_stress_test_${log_file_suffix}.log 2>&1
+
+}
+
+
+# Find user bar
+function get_user_bar() {
+    bdf=$1
+	tmp=`dmactl qdma${bdf} reg read bar 0 0x10C | grep "0x10c" | cut -d '=' -f2 | cut -d 'x' -f2 | cut -d '.' -f1`
+	bar_ext=$(printf '%x\n' "$(( 0x$tmp & 0x00000f ))")
+
+	if [ $bar_ext -eq 2 ]; then
+		usr_bar=1
+	elif [ $bar_ext -eq 4 ];then
+		usr_bar=2
+	fi
+}
+
+function get_env() {
+	if [ ${overide_pf_nvf_lst} -ne 0 ]; then
+		pf_nvf_lst=()
+		for bdf in ${bdf_array[@]}
+		do
+			pci_bus=${bdf:0:2}
+			pci_device=${bdf:2:2}
+			pci_func=${bdf:4:1}
+			nvf=$(cat /sys/bus/pci/devices/0000\:${pci_bus}\:${pci_device}.${pci_func}/sriov_totalvfs)
+			pf_nvf_lst+=("${nvf}")
+		done
+	fi
+	total_funcs=0
+	for (( i = 0; i < ${num_pfs}; i++))
+	do
+		num_vf=${pf_nvf_lst[$i]}
+		total_funcs=$((total_funcs+num_vf))
+	done
+	if [ $total_funcs -gt $num_qs ]; then
+		echo "ERROR: num_qs less than total functions. Min queues required are $total_funcs"
+		exit 1
+	fi
+	max_q_func=$((num_qs/total_funcs))
+	for (( i = 0; i < ${num_pfs}; i++))
+	do
+		num_vf=${pf_nvf_lst[$i]}
+		qmax_vfs=$((qmax_vfs+(max_q_func*num_vf)))
+	done
+
+}
+
+function start_vfs() {
+	for bdf in ${bdf_array[@]}
+	do
+		pci_bus=${bdf:0:2}
+		pci_device=${bdf:2:2}
+		pci_func=${bdf:4:1}
+
+		#set qmaxvfs
+		if [ ${pci_func} == 0 ]; then
+			echo "echo ${qmax_vfs} > /sys/bus/pci/devices/0000\:${pci_bus}\:${pci_device}.${pci_func}/qdma/qmax_vfs"
+			echo ${qmax_vfs} > /sys/bus/pci/devices/0000\:${pci_bus}\:${pci_device}.${pci_func}/qdma/qmax_vfs
+			if [ $? -lt 0 ]; then
+				echo "set qmax_vfs failed for 0000\:${pci_bus}\:${pci_device}.${pci_func}"
+			fi
+		fi
+		num_vfs=${pf_nvf_lst[${pci_func}]}
+		echo "echo ${num_vfs} > /sys/bus/pci/devices/0000\:${pci_bus}\:${pci_device}.${pci_func}/sriov_numvfs"
+		echo ${num_vfs} > /sys/bus/pci/devices/0000\:${pci_bus}\:${pci_device}.${pci_func}/sriov_numvfs
+		if [ $? -ne 0 ]; then
+			echo "enabling vfs failed for 0000\:${pci_bus}\:${pci_device}.${pci_func}/virtfn${i}"
+		fi
+	done
+	sleep 1 # allow all probes to finish
+}
+
+function set_pf_qmax() {
+	for bdf in ${bdf_array[@]}
+	do
+		pci_bus=${bdf:0:2}
+		pci_device=${bdf:2:2}
+		pci_func=${bdf:4:1}
+		num_vfs=${pf_nvf_lst[${pci_func}]}
+		if (( num_vfs > 0 )); then
+			echo -ne "echo ${max_q_func} > /sys/bus/pci/devices/0000\:${pci_bus}\:${pci_device}.${pci_func}/qdma/qmax\033[0K\r"
+			echo ${max_q_func} > /sys/bus/pci/devices/0000\:${pci_bus}\:${pci_device}.${pci_func}/qdma/qmax
+			if [ $? -lt 0 ]; then
+				echo "set_qmax failed for 0000\:${pci_bus}\:${pci_device}.${pci_func}"
+			fi
+			sleep .1
+		fi
+	done
+	echo ""
+}
+
+function set_vf_qmax() {
+	total_funcs=${#bdf_array[@]}
+	for bdf in ${bdf_array[@]}
+	do
+		pci_bus=${bdf:0:2}
+		pci_device=${bdf:2:2}
+		pci_func=${bdf:4:1}
+		num_vfs=${pf_nvf_lst[${pci_func}]}
+		for (( i = 0; i < num_vfs; i++ ))
+		do
+			echo -ne "echo ${max_q_func} > /sys/bus/pci/devices/0000\:${pci_bus}\:${pci_device}.${pci_func}/virtfn${i}/qdma/qmax\033[0K\r"
+			echo ${max_q_func} > /sys/bus/pci/devices/0000\:${pci_bus}\:${pci_device}.${pci_func}/virtfn${i}/qdma/qmax
+			if [ $? -lt 0 ]; then
+				echo "set_qmax failed for 0000\:${pci_bus}\:${pci_device}.${pci_func}/virtfn${i}"
+			fi
+			sleep .1
+		done
+	done
+	echo ""
+}
+
+function queue_init() {
+	mode=mm
+	for bdf in ${bdf_array[@]}
+	do
+		pci_bus=${bdf:0:2}
+		pci_device=${bdf:2:2}
+		pci_func=${bdf:4:1}
+		for (( qid = 0; qid < max_q_func; qid++ ))
+		do
+			if [ $mode == mm ]; then
+				mode=st
+			else
+				mode=mm
+			fi
+			queue_start $bdf $qid $mode
+		done
+	done
+	echo ""
+}
+
+function queue_exit() {
+	echo "exit sequence..."
+	for bdf in ${bdf_array[@]}
+	do
+		pci_bus=${bdf:0:2}
+		pci_device=${bdf:2:2}
+		pci_func=${bdf:4:1}
+		for (( qid = 0; qid < max_q_func; qid++ ))
+		do
+			cleanup_queue $bdf $qid
+		done
+	done
+	echo ""
+	echo "Device Stats:" > ./run_stress_test_stat_${log_file_suffix}.log
+	for bdf in ${bdf_array[@]}
+	do
+		pci_bus=${bdf:0:2}
+		pci_device=${bdf:2:2}
+		pci_func=${bdf:4:1}
+		qdmadev="qdma"
+		is_vf=$(is_vf_bdf $bdf)
+		if [ $is_vf -ne 0 ]; then
+			qdmadev="qdmavf"
+		fi
+		echo "${qdmadev}${bdf} Stats:" >> ./run_stress_test_stat_${log_file_suffix}.log
+		dmactl ${qdmadev}${bdf} stat >> ./run_stress_test_stat_${log_file_suffix}.log
+		echo "---------------------------------------------------------" >> ./run_stress_test_stat_${log_file_suffix}.log
+	done
+	for bdf in ${bdf_array[@]}
+	do
+		pci_bus=${bdf:0:2}
+		pci_device=${bdf:2:2}
+		pci_func=${bdf:4:1}
+		is_vf=$(is_vf_bdf $bdf)
+		if [ $is_vf -eq 0 ]; then
+			echo "echo 0 > /sys/bus/pci/devices/0000\:${pci_bus}\:${pci_device}.${pci_func}/sriov_numvfs"
+			echo 0 > /sys/bus/pci/devices/0000\:${pci_bus}\:${pci_device}.${pci_func}/sriov_numvfs
+		fi
+	done
+}
+
+function setup_env() {
+	get_dev
+	num_pfs=${#bdf_array[@]}
+	get_env
+	start_vfs
+	set_pf_qmax
+	set_vf_qmax
+	get_dev
+	dmactl dev list
+	get_user_bar $pf
+}
+
+function monitor_exec_time() {
+	flag=1
+	MON_STARTTIME=$(date +%s)
+	monelapsed_time=0
+	while [ true ]; do
+		if [ $flag -eq 1 ]; then
+			echo -ne "elapsed time: $monelapsed_time secs...\033[0K\r"
+			flag=0
+		else
+			echo -ne "elapsed time: $monelapsed_time secs..|\033[0K\r"
+			flag=1
+		fi
+		MON_CURTIME=$(date +%s)
+		monelapsed_time=$((MON_CURTIME - MON_STARTTIME))
+		if [ $monelapsed_time -gt $total_exec_time ]; then
+			stress_test_exit=1
+			return
+		else
+			sleep 1
+		fi
+	done
+	echo ""
+	echo "$1-completed"
+}
+
+function run_mm_h2c_c2h() {
+	MM_STARTTIME=$(date +%s)
+	while [ true ]
+	do 
+		echo "***********************************************" 2>&1 >> ./run_mm_stress_test_${log_file_suffix}.log
+		local size=$(( ($RANDOM % 262144) +1 ))
+		total_qs=${#mm_q_lst[@]}
+		for ((i=0; i < total_qs; i++)); do
+			mm_q_lst_entry=${mm_q_lst[${i}]}
+			bdf=${mm_q_lst_entry:0:5}
+			strlen=$(echo -n $mm_q_lst_entry | wc -m)
+			end_idx=$((strlen-1))
+			qid=${mm_q_lst_entry:6:${end_idx}}
+			qdmadev="qdma"
+			is_vf=$(is_vf_bdf $bdf)
+			if [ $is_vf -eq 1 ]; then
+				qdmadev="qdmavf"
+			fi
+			
+			echo "AXI-MM for Func ${bdf} Start" 2>&1 >> ./run_mm_stress_test_${log_file_suffix}.log
+			# Setup for Queues
+			dev_mm_c2h="/dev/${qdmadev}${bdf}-MM-$qid"
+			dev_mm_h2c="/dev/${qdmadev}${bdf}-MM-$qid"
+
+			out_mm="/tmp/out_mm${bdf}_$qid"
+			if [ $desc_byp -eq 1 ]; then
+				dmactl ${qdmadev}${bdf} reg write bar $usr_bar 0x090 3 >> ./run_mm_stress_test_${log_file_suffix}.log 2>&1
+			fi
+			# H2C transfer 
+			dma_to_device -d $dev_mm_h2c -f $infile -s $size >> ./run_mm_stress_test_${log_file_suffix}.log 2>&1
+
+			# C2H transfer
+			dma_from_device -d $dev_mm_c2h -f $out_mm -s $size >> ./run_mm_stress_test_${log_file_suffix}.log 2>&1
+			
+			# Compare file for correctness
+			cmp $out_mm $infile -n $size
+			if [ $? -eq 1 ]; then
+				echo "#### Test ERROR. Queue ${qdmadev}${bdf}-$qid data did not match - iosz - ${size} ####" >> ./run_mm_stress_test_${log_file_suffix}.log 2>&1
+				#dmactl ${qdmadev}${bdf} q dump idx $qid >> ./run_stress_test_${log_file_suffix}.log 2>&1
+				#dmactl ${qdmadev}${bdf} reg dump >> ./run_stress_test_${log_file_suffix}.log 2>&1
+			else
+				echo "**** Test pass. Queue ${qdmadev}${bdf}-$qid" >> ./run_mm_stress_test_${log_file_suffix}.log 2>&1
+			fi
+			echo "AXI-MM for Func ${bdf} End" 2>&1 >> ./run_mm_stress_test_${log_file_suffix}.log
+			MM_CURTIME=$(date +%s)
+			mmelapsed_time=$((MM_CURTIME - MM_STARTTIME))
+			if [ $mmelapsed_time -gt $total_exec_time ]; then
+				echo "exiting run_mm_h2c_c2h()"
+				return
+			fi
+		done
+		echo "***********************************************" 2>&1 >> ./run_mm_stress_test_${log_file_suffix}.log
+	done
+}
+
+
+
+function run_st_h2c() {
+	# AXI-ST H2C transfer
+	STH2C_STARTTIME=$(date +%s)
+	while [ true ]
+	do 
+		echo "***********************************************" 2>&1 >> ./run_st_h2c_stress_test_${log_file_suffix}.log
+		local size=$(( ($RANDOM % 28672) +1 ))
+		total_qs=${#st_q_lst[@]}
+		for ((i=0; i < total_qs; i++)); do
+			st_q_lst_entry=${st_q_lst[${i}]}
+			bdf=${st_q_lst_entry:0:5}
+			strlen=$(echo -n $st_q_lst_entry | wc -m)
+			end_idx=$((strlen-1))
+			qid=${st_q_lst_entry:6:${end_idx}}
+			qdmadev="qdma"
+			is_vf=$(is_vf_bdf $bdf)
+			if [ $is_vf -eq 1 ]; then
+				qdmadev="qdmavf"
+			fi
+			dev_st_h2c="/dev/${qdmadev}${bdf}-ST-$qid"
+			echo "AXI-ST H2C for Func ${bdf}-${qid} Start" 2>&1 >> ./run_st_h2c_stress_test_${log_file_suffix}.log
+
+			# Clear H2C match from previous runs. this register is in card side.
+			# MAtch clear register is on offset 0x0C 
+			dmactl ${qdmadev}${bdf} reg write bar $usr_bar 0x0C 0x1 >> ./run_st_h2c_stress_test_${log_file_suffix}.log 2>&1 # clear h2c Match register.
+
+			if [ $desc_byp -eq 1 ]; then
+				dmactl ${qdmadev}${bdf} reg write bar $usr_bar 0x090 3 >> ./run_st_h2c_stress_test_${log_file_suffix}.log 2>&1
+			fi
+
+			# do H2C Transfer
+			dma_to_device -d $dev_st_h2c -f $infile -s $size >> ./run_st_h2c_stress_test_${log_file_suffix}.log 2>&1
+
+			# check for H2C data match. MAtch register is in offset 0x10.
+			pass=`dmactl ${qdmadev}${bdf} reg read bar $usr_bar 0x10 | grep "0x10" | cut -d '=' -f2 | cut -d 'x' -f2 | cut -d '.' -f1`
+			# convert hex to bin
+			code=`echo $pass | tr 'a-z' 'A-Z'`
+ 	 		val=`echo "obase=2; ibase=16; $code" | bc`
+			check=1
+			if [ $(($val & $check)) -eq 1 ];then
+				echo "*** Test passed for Queue $qid" >> ./run_st_h2c_stress_test_${log_file_suffix}.log 2>&1
+			else
+				echo "#### ERROR Test failed for ${qdmadev}${bdf}-${qid}. pattern did not match - iosz - ${size} ####" >> ./run_st_h2c_stress_test_${log_file_suffix}.log 2>&1
+				#dmactl ${qdmadev}${bdf} q dump idx $qid >> ./run_st_h2c_stress_test_${log_file_suffix}.log 2>&1
+				#dmactl ${qdmadev}${bdf} reg dump >> ./run_st_h2c_stress_test_${log_file_suffix}.log 2>&1
+			fi
+			echo "AXI-ST H2C for Func ${bdf}-${qid} End" 2>&1 >> ./run_st_h2c_stress_test_${log_file_suffix}.log
+			STH2C_CURTIME=$(date +%s)
+			sth2celapsed_time=$((STH2C_CURTIME - STH2C_STARTTIME))
+			if [ $sth2celapsed_time -gt $total_exec_time ]; then
+				echo "exiting run_st_h2c()"
+				return
+			fi
+		done
+		echo "***********************************************" 2>&1 >> ./run_st_h2c_stress_test_${log_file_suffix}.log
+	done
+
+}
+
+function run_st_c2h() {
+	STC2H_STARTTIME=$(date +%s)
+	while [ true ]
+	do
+		echo "***********************************************" 2>&1 >> ./run_st_c2h_stress_test_${log_file_suffix}.log
+		local size=$(( ($RANDOM % 28672) +1 ))
+		local num_pkt=$(( ($RANDOM % 7) +1 ))
+		size=$((size+(size %2)))
+		total_qs=${#st_q_lst[@]}
+		for ((i = 0; i < total_qs; i++)); do
+			STC2H_CURTIME=$(date +%s)
+			stc2helapsed_time=$((STC2H_CURTIME - STC2H_STARTTIME))
+			if [ $stc2helapsed_time -gt $total_exec_time ]; then
+				echo "exiting run_st_c2h()"
+				return
+			fi
+			st_q_lst_entry=${st_q_lst[${i}]}
+			bdf=${st_q_lst_entry:0:5}
+			strlen=$(echo -n $st_q_lst_entry | wc -m)
+			end_idx=$((strlen-1))
+			qid=${st_q_lst_entry:6:${end_idx}}
+			qdmadev="qdma"
+			is_vf=$(is_vf_bdf $bdf)
+			if [ $is_vf -eq 1 ]; then
+				qdmadev="qdmavf"
+			fi
+			echo "AXI-ST C2H for Func ${bdf} Start" 2>&1 >> ./run_st_c2h_stress_test_${log_file_suffix}.log
+			q_base=`get_base_qid ${bdf}`
+			echo "q_base=${q_base}">> ./run_st_c2h_stress_test_${log_file_suffix}.log
+			if [ ${q_base} -lt 0 ]; then
+				echo "run_st_c2h: could not find q base for $bdf"
+				continue
+			fi
+			hw_qid=$((qid + q_base))
+			dmactl ${qdmadev}${bdf} reg write bar $usr_bar 0x0 ${hw_qid}  >> ./run_st_c2h_stress_test_${log_file_suffix}.log 2>&1
+
+			dev_st_c2h="/dev/${qdmadev}${bdf}-ST-$qid"
+			out_st="/tmp/out_st${bdf}_$qid"
+			let "tsize= $size*$num_pkt" # if more packets are requested.
+
+			#cache bypass	
+			if [ $desc_byp -eq 1 ] && [ $pftch_byp -eq 0 ] ; then
+				dmactl ${qdmadev}${bdf} reg write bar $usr_bar 0x090 2 >> ./run_st_c2h_stress_test_${log_file_suffix}.log 2>&1
+			fi
+
+			#simple bypass
+			if [ $desc_byp -eq 1 ] && [ $pftch_byp -eq 1 ] ; then
+				dmactl ${qdmadev}${bdf} reg write bar $usr_bar 0x090 4 >> ./run_st_c2h_stress_test_${log_file_suffix}.log 2>&1
+			fi
+
+			#no bypass
+			if [ $desc_byp -eq 0 ] && [ $pftch_byp -eq 0 ] ; then
+				dmactl ${qdmadev}${bdf} reg write bar $usr_bar 0x090 0 >> ./run_st_c2h_stress_test_${log_file_suffix}.log 2>&1
+			fi
+
+			# Write transfer size to offset 0x04
+			dmactl ${qdmadev}${bdf} reg write bar $usr_bar 0x4 $size >> ./run_st_c2h_stress_test_${log_file_suffix}.log 2>&1
+
+			# Write number of packets to offset 0x20
+			dmactl ${qdmadev}${bdf} reg write bar $usr_bar 0x20 $num_pkt >> ./run_st_c2h_stress_test_${log_file_suffix}.log 2>&1 
+
+			# Write to offset 0x80 bit [1] to trigger C2H data generator. 
+			dmactl ${qdmadev}${bdf} reg write bar $usr_bar 0x08 2 >> ./run_st_c2h_stress_test_${log_file_suffix}.log 2>&1
+
+			# do C2H transfe
+			dma_from_device -d $dev_st_c2h -f $out_st -s $tsize >> ./run_st_c2h_stress_test_${log_file_suffix}.log 2>&1
+
+			cmp $out_st $infile -n $tsize>> ./run_st_c2h_stress_test_${log_file_suffix}.log 2>&1
+			if [ $? -eq 1 ]; then
+				echo "#### Test ERROR. Queue ${qdmadev}${bdf}-$qid data did not match - iosz/numpkt - ${size}/${num_pkt} ####" >> ./run_st_c2h_stress_test_${log_file_suffix}.log 2>&1
+				#dmactl ${qdmadev}${bdf} q dump idx $qid dir c2h >> ./run_st_c2h_stress_test_${log_file_suffix}.log 2>&1
+				#dmactl ${qdmadev}${bdf} reg dump >> ./run_stress_test_${log_file_suffix}.log 2>&1
+			else
+				echo "**** Test pass. Queue $qid" >> ./run_st_c2h_stress_test_${log_file_suffix}.log 2>&1
+			fi
+			echo "AXI-ST C2H for Func ${bdf} End" 2>&1 >> ./run_st_c2h_stress_test_${log_file_suffix}.log
+		done
+		echo "***********************************************" 2>&1 >> ./run_st_c2h_stress_test_${log_file_suffix}.log
+	done
+}
+
+trap queue_exit EXIT
+echo "setting up environment"
+setup_env
+queue_init
+
+echo "transfer tests will run for $total_exec_time secs"
+echo "starting transfers"
+
+echo "###############################################################" > "run_mm_stress_test_${log_file_suffix}.log"
+echo "QDMA MM Stress Test on All Functions Starts" >> "run_mm_stress_test_${log_file_suffix}.log"
+echo "###############################################################" >> "run_mm_stress_test_${log_file_suffix}.log"
+run_mm_h2c_c2h &
+
+echo "###############################################################" > "run_st_h2c_stress_test_${log_file_suffix}.log"
+echo "QDMA ST H2C Stress Test on All Functions Starts" >> "run_st_h2c_stress_test_${log_file_suffix}.log"
+echo "###############################################################" >> "run_st_h2c_stress_test_${log_file_suffix}.log"
+run_st_h2c &
+
+echo "###############################################################" > "run_st_c2h_stress_test_${log_file_suffix}.log"
+echo "QDMA ST C2H Stress Test on All Functions Starts" >> "run_st_c2h_stress_test_${log_file_suffix}.log"
+echo "###############################################################" >> "run_st_c2h_stress_test_${log_file_suffix}.log"
+run_st_c2h &
+
+monitor_exec_time
+wait
+
+function print_errs() {
+	while read -r line; do
+		echo $line
+ 	done <<< "$1"
+}
+
+mm_errs=$(cat run_mm_stress_test_${log_file_suffix}.log | grep "Error\|ERROR\|FAIL\|Fail")
+st_h2c_errs=$(cat run_st_h2c_stress_test_${log_file_suffix}.log | grep "Error\|ERROR\|FAIL\|Fail")
+st_c2h_errs=$(cat run_st_c2h_stress_test_${log_file_suffix}.log | grep "Error\|ERROR\|FAIL\|Fail")
+if [ "${mm_errs}" != "" ]; then
+	echo "MM Errors:"
+fi
+print_errs "${mm_errs}"
+if [ "${st_h2c_errs}" != "" ]; then
+	echo "ST H2C Errors:"
+fi
+print_errs "${st_h2c_errs}"
+if [ "${st_c2h_errs}" != "" ]; then
+	echo "ST C2H Errors:"
+fi
+print_errs "${st_c2h_errs}"
+
+echo ""
+
+exit 0
\ No newline at end of file
diff --git a/QDMA/linux-kernel/scripts/qdma_run_test_mm_vf.sh b/QDMA/linux-kernel/scripts/qdma_run_test_mm_vf.sh
new file mode 100755
index 0000000..a2bebe2
--- /dev/null
+++ b/QDMA/linux-kernel/scripts/qdma_run_test_mm_vf.sh
@@ -0,0 +1,142 @@
+#!/bin/bash
+#
+# Simple run script to test QDMA in VF AXI-MM mode.
+# 
+# VF AXI-MM Transfer
+#	- H2C operation is performed to send data to BRAM on the FPGA. 
+#	- C2H operation is performed to reads data from BRAM.
+#       -   C2H data is stored in a local file 'out_mm0_$qid', which will be compared to original file for correctness. 
+
+################################################
+# User Configurable Parameters
+################################################
+iteration=$1 # [Optional] Iterations 
+size=$2 # [Optional] Size per payload packet
+
+################################################
+# Hard Coded Parameters
+################################################
+q_per_vf=1
+vf=00080
+size_max=4096
+host_adr_high=0
+infile='./datafile_16bit_pattern.bin'
+
+
+################################################
+# Input check
+################################################
+if [ "$1" == "-h" ]; then
+	echo "Example: qdma_run_test_st_vf.sh [iteration] [size(in byte)]"
+	echo "Example: qdma_run_test_st_vf.sh This will run VF MM test in random mode"
+        exit
+fi
+
+if [ -z $2 ] || [ $# -eq 0 ] ; then
+	echo "Run VF MM test in random mode"
+	sleep 3
+fi
+
+if [ -z $iteration ]; then
+	iteration=1 
+fi
+
+if [ ! -z $size ]; then 
+	f_size=1
+else
+   	f_size=0
+fi
+
+#################################################
+# Helper Functions
+################################################
+
+function randomize_tx_params() {
+        #random host address 
+	if [ $host_adr_high -ne 0 ]; then
+		hst_adr1=$RANDOM
+		hst_adr1=$((hst_adr1 % host_adr_high))
+	else
+		hst_adr1=0
+	fi
+
+	# byte size
+	size=$RANDOM
+        if [ $size -eq 0 ]; then
+		size=$(($RANDOM % 64 + 1)) ## for random number between 1 and 64
+        else
+		size=$((size % $size_max))
+        fi
+
+	# Correct if size is odd	
+	even=$((size%2))	
+        if [ $even -eq 1 ];then
+		size=$((size+1))
+        fi
+}
+
+
+function queue_start() {
+	echo "---- Queue Start $2 ----"
+	dmactl qdma$1 q add idx $2 mode $3 dir bi
+	dmactl qdma$1 q start idx $2 dir bi
+}
+
+function cleanup_queue() {
+	echo "---- Queue Clean up $2 ----"
+        dmactl qdma$1 q stop idx $2 dir bi
+        dmactl qdma$1 q del idx $2 dir bi
+}
+
+vfs=`dmactl dev list | grep qdmavf | cut -d'	' -f1`;
+
+echo "**** AXI-MM Start ****"
+for vfsdev in $vfs;do
+	vf="${vfsdev#*f}"
+	q_per_vf="$(dmactl dev list |grep qdmavf$vf | cut -d ' ' -f 3 | cut -d ',' -f 1 | xargs)"
+
+	for ((i=0; i< $q_per_vf; i++)) do
+	# Setup for Queues
+	qid=$i
+	dev_mm_c2h="/dev/qdmavf$vf-MM-$qid"
+	dev_mm_h2c="/dev/qdmavf$vf-MM-$qid"
+        loop=1
+
+		out_mm="out_mm0_"$qid
+		# Open the Queue for AXI-MM streaming interface.
+		queue_start vf$vf $qid mm
+
+		while [ "$loop" -le $iteration ]
+		do
+			# Determine if DMA is targeted @ random host address
+			if [ $f_size -eq 1 ]; then
+				hst_adr1=0
+			else
+				randomize_tx_params
+			fi
+
+			# H2C transfer 
+			dma_to_device -d $dev_mm_h2c -f $infile -s $size -o $hst_adr1
+
+			# C2H transfer
+			dma_from_device -d $dev_mm_c2h -f $out_mm -s $size -o $hst_adr1
+
+			# Compare file for correctness
+			cmp $out_mm $infile -n $size
+
+			if [ $? -eq 1 ]; then
+				echo "#### Test ERROR. Queue $qid data did not match ####"
+				exit 1
+			else
+				echo "**** Test pass. Queue $qid"
+			fi
+
+			wait
+
+			((loop++))
+		done
+		# Close the Queues
+		cleanup_queue vf$vf $qid
+	done
+done
+echo "**** AXI-MM completed ****"
diff --git a/QDMA/linux-kernel/scripts/qdma_run_test_pf.sh b/QDMA/linux-kernel/scripts/qdma_run_test_pf.sh
new file mode 100755
index 0000000..8e1ca2b
--- /dev/null
+++ b/QDMA/linux-kernel/scripts/qdma_run_test_pf.sh
@@ -0,0 +1,453 @@
+#!/bin/bash
+#
+# Simple run script to test QDMA in AXI-MM and AXI-St mode.
+# 
+# AXI-MM Transfer
+#	First H2C operation is performed for 1KBytes, this will write 1Kbytes of data to BRAM on card side. 
+#	Then C2H operation is performed for 1KBytes. DMA reads data from BRAM and will transfer
+#	to local file 'out_mm0_0', which will be compared to original file for correctness. 
+#
+# AXI-ST H2C Transfer
+#	for H2C Streaming transfer data needs to be a per-defined data. 16 bit incremental data. 
+#	Data file is provided with the script. 
+#	H2C operation is performed, Data is read from Host memory and send to Card side. There is a data checker
+#	on the card side which will check the data for correctness and will log the result in a register.
+#	Script then read the register to check for results.
+#	
+#
+# AXI-ST C2H Transfer
+#	For C2H operation there is a data generator on the Card side which needs to be setup to generate data.
+#	Qid, transfer length and number of paket are written before C2H transfer. Then 
+#	C2H transfer is started by writing to register. C2H operation is completed and the data is written to 'out_st0_0"
+#	file which then is compared to a per-defined data file. The data generator will only generate pre-defined 
+#	data, so data comparison will need to be done with 'datafile_16bit_pattern.bin' file only.
+#
+# 
+
+
+function print_help() {
+	echo ""
+	echo "Usage : $0 <bdf> <qid_start> <num_qs> <desc_bypass_en> <pftch_en> <pfetch_bypass_en>"
+	echo "Ex : $0 81000 0 4 1 1 1"
+	echo "<bdf> : PF Bus device function in bbddf format ex:06000"
+	echo ""
+	echo "<qid_start> : qid start"
+	echo ""
+	echo "<num_qs> : number of queue from qid_start"	
+	echo "           Default - 04 "
+	echo ""
+	echo "<desc_byapss_en> : Enable desc bypass"
+	echo "           Default - 0 "
+	echo ""
+	echo "<pftch_en> : Enable prefetch"
+	echo "           Default - 0 "
+	echo ""
+	echo "<pftch_bypass_en> : Enable prefetch bypass"
+	echo "           Default - 0 "
+	echo ""
+    echo ""
+    exit 1
+}
+
+if [ $# -lt 2 ]; then
+	echo "Invalid arguements."
+	print_help
+	exit;
+fi;
+
+pf=$1
+qid_start=$2
+num_qs=4
+desc_byp=0
+pftch=0
+pftch_byp=0
+
+if [ ! -z $3 ]; then
+	num_qs=$3
+fi
+
+if [ ! -z $4 ]; then #if arg4 is there byp enable
+	desc_byp=$4
+fi
+
+if [ ! -z $5 ]; then #if arg5 is there pfetch enable
+	pftch=$5
+fi
+
+if [ ! -z $6 ]; then #if arg6 is there pfetch byp enable
+	pftch_byp=$6
+fi
+
+echo "$pf $qid_start $num_qs $desc_byp $pftch $pftch_byp"
+size=1024
+num_pkt=1 #number of packets not more then 64
+infile='./datafile_16bit_pattern.bin'
+declare -a bypass_mode_lst=(NO_BYPASS_MODE DESC_BYPASS_MODE CACHE_BYPASS_MODE SIMPLE_BYPASS_MODE)
+
+
+function get_dev () {
+	pf_list="$(dmactl dev list | grep qdma)"
+	echo "$pf_list"
+	while read -r line; do
+		IFS=$'\t ,~' read -r -a array <<< "$line"	
+		qdmabdf=${array[0]}
+		bdf_array+=("${qdmabdf#*a}")
+		full_bdf_array+=("${array[1]}")
+		num_queue_per_pf+=("${array[4]}")
+		qbase_array+=("${array[5]}")
+ 	done <<< "$pf_list"
+
+}
+
+function set_bypass_mode() {
+	dev=$1
+	mode=$2
+	dir=$3
+	bypass=$4
+    local reg_val=0x00;
+	
+    if [ $mode == mm ]; then
+    	case $dir in
+    		h2c)
+	        	if [ $bypass == DESC_BYPASS_MODE ]; then
+	        		echo "setting DESC_BYPASS_MODE for ${mode}-$dir"
+	        		reg_val=0x1;
+	        	else
+	        		reg_val=0x0;
+	        	fi
+
+        		;;
+    		c2h)
+	        	if [ $bypass == DESC_BYPASS_MODE ]; then
+	        		echo "setting DESC_BYPASS_MODE for ${mode}-$dir"
+	        		reg_val=0x2;
+	        	else
+	        		reg_val=0x0;
+	        	fi
+
+	        	;;
+    		bi)
+	        	if [ $bypass == DESC_BYPASS_MODE ]; then
+	        		echo "setting DESC_BYPASS_MODE for ${mode}-$dir"
+	        		reg_val=0x3;
+	        	else
+	        		reg_val=0x0;
+				fi
+	        	;;
+        esac
+    else
+        case $dir in
+			h2c)
+				case $bypass in
+					CACHE_BYPASS_MODE)
+						echo "setting CACHE_BYPASS_MODE for ${mode}-$dir"
+						reg_val=0x1;
+						;;
+					SIMPLE_BYPASS_MODE)
+						echo "setting SIMPLE_BYPASS_MODE for ${mode}-$dir"
+						reg_val=0x1;
+						;;
+					*)
+						echo "setting NO_BYPASS_MODE for ${mode}-$dir"
+						reg_val=0x00;
+						;;
+					esac
+				;;
+			c2h)
+				case $bypass in
+					CACHE_BYPASS_MODE)
+						echo "setting CACHE_BYPASS_MODE for ${mode}-$dir"
+						reg_val=0x2;
+						;;
+					SIMPLE_BYPASS_MODE)
+						echo "setting SIMPLE_BYPASS_MODE for ${mode}-$dir"
+						reg_val=0x4;
+						;;
+					*)
+						echo "setting NO_BYPASS_MODE for ${mode}-$dir"
+						reg_val=0x00;
+						;;
+				esac
+				;;
+			bi)
+				case $bypass in
+					CACHE_BYPASS_MODE)
+						echo "setting CACHE_BYPASS_MODE for ${mode}-$dir"
+						reg_val=0x3;
+						;;
+					SIMPLE_BYPASS_MODE)
+						echo "setting SIMPLE_BYPASS_MODE for ${mode}-$dir"
+						reg_val=0x5;
+						;;
+					*)
+						echo "setting NO_BYPASS_MODE for ${mode}-$dir"
+						reg_val=0x00;
+						;;
+				esac
+				;;
+		esac
+	fi
+    dmactl qdma$dev reg write bar 2 0x90 $reg_val
+}
+
+function get_bypass_mode() {
+	byp_mode=0
+	if [ $1 == mm ]; then
+		if [ $desc_byp -eq 1 ]; then
+			byp_mode=1
+		fi
+	else
+		if [ $desc_byp -eq 1 ] && [ $pftch_byp -eq 0 ]; then
+			byp_mode=2
+		elif [ $desc_byp -eq 1 ] && [ $pftch_byp -eq 1 ]; then
+			byp_mode=3
+		fi
+	fi
+	echo $byp_mode
+}
+
+function queue_start() {
+	echo "setting up qdma$1-$3-$2"
+	dmactl qdma$1 q add idx $2 mode $3 dir $4 >> ./run_pf.log 2>&1
+	if [ $? -ne 0 ]; then
+		echo "q add failed for qdma$1-$3-$2"
+		return
+	fi
+	bypass_mode=$(get_bypass_mode $3 $4)
+	set_bypass_mode $1 $3 $4 ${bypass_mode_lst[${bypass_mode}]}
+	if [ $3 == mm -o $4 == h2c ]; then
+		if [ $desc_byp -eq 1 ]; then
+			dmactl qdma$1 q start idx $2 dir $4 desc_bypass_en >> ./run_pf.log 2>&1
+		else
+			dmactl qdma$1 q start idx $2 dir $4 >> ./run_pf.log 2>&1
+		fi
+	else
+		if [ $desc_byp -eq 1 ] && [ $pftch -eq 0 ]; then
+			if [ $pftch_byp -eq 0 ]; then
+				dmactl qdma$1 q start idx $2 dir $4 desc_bypass_en >> ./run_pf.log 2>&1
+			else
+				dmactl qdma$1 q start idx $2 dir $4 desc_bypass_en pfetch_bypass_en >> ./run_pf.log 2>&1
+			fi
+		elif [ $desc_byp -eq 1 ] && [ $pftch -eq 1 ]; then
+			if [ $pftch_byp -eq 0 ]; then
+				dmactl qdma$1 q start idx $2 dir $4 desc_bypass_en pfetch_en >> ./run_pf.log 2>&1
+			else
+				dmactl qdma$1 q start idx $2 dir $4 desc_bypass_en pfetch_en pfetch_bypass_en >> ./run_pf.log 2>&1
+			fi
+		elif [ $desc_byp -eq 0 ] && [ $pftch -eq 1 ] ; then #
+			if [ $pftch_byp -eq 0 ]; then
+				dmactl qdma$1 q start idx $2 dir $4 pfetch_en >> ./run_pf.log 2>&1
+			else
+				echo "Invalid case of bypass mode" >> ./run_pf.log 2>&1
+				dmactl qdma$1 q del idx $2 dir bi >> ./run_pf.log 2>&1
+				return 1
+			fi
+		else
+			if [ $pftch_byp -eq 0 ]; then
+				dmactl qdma$1 q start idx $2 dir $4>> ./run_pf.log 2>&1
+			else
+				echo "Invalid case of bypass mode" >> ./run_pf.log 2>&1
+				dmactl qdma$1 q del idx $2 dir bi >> ./run_pf.log 2>&1
+				return 1
+			fi	
+		fi
+	fi
+	if [ $? -ne 0 ]; then
+		echo "q start failed for qdma$1-$3-$2-$4"
+		dmactl qdma$1 q del idx $2 dir bi >> ./run_pf.log 2>&1
+		return $?
+	fi
+	
+	
+	return 0
+}
+
+function cleanup_queue() {
+	echo "cleaning up qdma$1-$3-$2"
+        dmactl qdma$1 q stop idx $2 dir $4 >> ./run_pf.log 2>&1
+        dmactl qdma$1 q del idx $2 dir $4 >> ./run_pf.log 2>&1
+
+}
+
+
+# Find user bar
+function get_user_bar () {
+        local pf_bdf=$1
+	tmp=`dmactl qdma$pf_bdf reg read bar 0 0x10C | grep "0x10c" | cut -d '=' -f2 | cut -d 'x' -f2 | cut -d '.' -f1`
+	bar_ext=$(printf '%x\n' "$(( 0x$tmp & 0x00000f ))")
+
+	if [ $bar_ext -eq 2 ]; then
+		usr_bar=1
+	elif [ $bar_ext -eq 4 ];then
+		usr_bar=2
+	fi
+}
+
+
+function run_mm_h2c_c2h () {
+	for pf_bdf in ${bdf_array[@]}; do 
+		echo "***********************************************" 2>&1 | tee -a ./run_pf.log
+		echo "AXI-MM for Func $pf_bdf Start" 2>&1 | tee -a ./run_pf.log
+		get_user_bar $pf_bdf
+		for ((i=$qid_start; i < (($qid_start + $num_qs)); i++)); do
+			# Setup for Queues
+			qid=$i
+			dev_mm_c2h="/dev/qdma$pf_bdf-MM-$qid"
+			dev_mm_h2c="/dev/qdma$pf_bdf-MM-$qid"
+
+			out_mm="/tmp/out_mm"$pf_bdf"_"$qid
+			# Open the Queue for AXI-MM streaming interface.
+			queue_start $pf_bdf $qid mm bi
+			if [ $? -ne 0 ]; then
+				echo "q setup for qdma$pf_bdf-MM-$qid failed"
+				continue
+			fi
+			echo "setup for qdma$pf_bdf-MM-$qid done"
+			# H2C transfer 
+			dma_to_device -d $dev_mm_h2c -f $infile -s $size >> ./run_pf.log 2>&1
+
+			# C2H transfer
+			dma_from_device -d $dev_mm_c2h -f $out_mm -s $size >> ./run_pf.log 2>&1
+			
+			# Compare file for correctness
+			cmp $out_mm $infile -n $size
+			if [ $? -eq 1 ]; then
+				echo "#### Test ERROR. Queue $qid data did not match ####"
+				dmactl qdma$pf_bdf q dump idx $qid >> ./run_pf.log 2>&1
+				dmactl qdma$pf_bdf reg dump >> ./run_pf.log 2>&1
+			else
+				echo "**** Test pass. Queue $qid"
+			fi
+			# Close the Queues
+			cleanup_queue $pf_bdf $qid st bi
+			echo "-----------------------------------------------"
+		done
+		echo "AXI-MM for Func $pf_bdf End" 2>&1 | tee -a ./run_pf.log
+		echo "***********************************************" 2>&1 | tee -a ./run_pf.log
+	done
+}
+
+
+
+function run_st_h2c () {
+
+	# AXI-ST H2C transfer
+	for pf_bdf in "${bdf_array[@]}"; do 
+		echo "***********************************************" 2>&1 | tee -a ./run_pf.log
+		echo "AXI-ST H2C for Func $pf_bdf Start" 2>&1 | tee -a ./run_pf.log
+		get_user_bar $pf_bdf
+		for ((i=$qid_start; i < (($qid_start + $num_qs)); i++)); do
+			# Setup for Queues
+			qid=$i
+			queue_start $pf_bdf $qid st h2c # open the Queue for AXI-ST streaming interface.
+
+			dev_st_h2c="/dev/qdma$pf_bdf-ST-$qid"
+
+			# Clear H2C match from previous runs. this register is in card side.
+			# MAtch clear register is on offset 0x0C 
+			dmactl qdma$pf_bdf reg write bar $usr_bar 0x0C 0x1 >> ./run_pf.log 2>&1 # clear h2c Match register.
+
+			# do H2C Transfer
+			dma_to_device -d $dev_st_h2c -f $infile -s $size >> ./run_pf.log 2>&1
+
+			if [ $? -ne 0 ]; then
+				echo "#### ERROR Test failed. Transfer failed ####"
+				cleanup_queue $pf_bdf $qid st h2c
+				continue
+			fi
+			# check for H2C data match. MAtch register is in offset 0x10.
+			pass=`dmactl qdma$pf_bdf reg read bar $usr_bar 0x10 | grep "0x10" | cut -d '=' -f2 | cut -d 'x' -f2 | cut -d '.' -f1`
+			# convert hex to bin
+			code=`echo $pass | tr 'a-z' 'A-Z'`
+ 	 		val=`echo "obase=2; ibase=16; $code" | bc`
+			check=1
+			if [ $(($val & $check)) -eq 1 ];then
+				echo "*** Test passed for Queue $qid"
+			else
+				echo "#### ERROR Test failed. pattern did not match ####"
+				dmactl qdma$pf_bdf q dump idx $qid >> ./run_pf.log 2>&1
+				dmactl qdma$pf_bdf reg dump >> ./run_pf.log 2>&1
+			fi
+			cleanup_queue $pf_bdf $qid st h2c
+			echo "-----------------------------------------------"
+		done
+		echo "AXI-ST H2C for Func $pf_bdf End" 2>&1 | tee -a ./run_pf.log
+		echo "***********************************************" 2>&1 | tee -a ./run_pf.log
+	done
+
+}
+
+function run_st_c2h () {
+	local pf=0
+
+	for pf_bdf in "${bdf_array[@]}"; do 
+
+		echo "***********************************************" 2>&1 | tee -a ./run_pf.log
+		echo "AXI-ST C2H for Func $pf_bdf Start" 2>&1 | tee -a ./run_pf.log
+
+		get_user_bar $pf_bdf
+
+		for ((i=$qid_start; i < (($qid_start + $num_qs)); i++)); do
+			# Setup for Queues
+			qid=$i
+			out_st="/tmp/out_st"$pf_bdf"_"$qid
+
+			# Each PF is assigned with 32 Queues. PF0 has queue 0 to 31, PF1 has 32 to 63 
+			# Write QID in offset 0x00 
+			hw_qid=$(($qid + ${qbase_array[$pf]} ))
+			dmactl qdma$pf_bdf reg write bar $usr_bar 0x0 $hw_qid  >> ./run_pf.log 2>&1
+
+			# open the Queue for AXI-ST streaming interface.
+			queue_start $pf_bdf $qid st c2h
+	
+			dev_st_c2h="/dev/qdma$pf_bdf-ST-$qid"
+			let "tsize= $size*$num_pkt" # if more packets are requested.
+
+			# Write transfer size to offset 0x04
+			dmactl qdma$pf_bdf reg write bar $usr_bar 0x4 $size >> ./run_pf.log 2>&1
+	
+			# Write number of packets to offset 0x20
+			dmactl qdma$pf_bdf reg write bar $usr_bar 0x20 $num_pkt >> ./run_pf.log 2>&1 
+
+			# Write to offset 0x80 bit [1] to trigger C2H data generator. 
+			dmactl qdma$pf_bdf reg write bar $usr_bar 0x08 2 >> ./run_pf.log 2>&1
+
+			# do C2H transfer 
+			dma_from_device -d $dev_st_c2h -f $out_st -s $tsize >> ./run_pf.log 2>&1
+			if [ $? -ne 0 ]; then
+				echo "#### ERROR Test failed. Transfer failed ####"
+				cleanup_queue $pf_bdf $qid st c2h
+				continue
+			fi
+	
+			cmp $out_st $infile -n $tsize
+			if [ $? -ne 0 ]; then
+				echo "#### Test ERROR. Queue $2 data did not match ####" 
+				dmactl qdma$pf_bdf q dump idx $qid dir c2h >> ./run_pf.log 2>&1
+				dmactl qdma$pf_bdf reg dump >> ./run_pf.log 2>&1
+			else
+				echo "**** Test pass. Queue $qid"
+			fi
+			# Close the Queues
+			cleanup_queue $pf_bdf $qid st c2h
+			echo "-----------------------------------------------"
+		done
+		pf=$((pf+1));
+		echo "AXI-ST C2H for Func $pf_bdf End" 2>&1 | tee -a ./run_pf.log
+		echo "***********************************************" 2>&1 | tee -a ./run_pf.log
+	done
+}
+
+
+echo "###############################################################" > "run_pf.log"
+echo "QDMA Test on All PFs Starts" >> "run_pf.log"
+echo "###############################################################" >> "run_pf.log"
+
+get_dev
+run_mm_h2c_c2h 
+run_st_h2c
+run_st_c2h
+
+exit 0
+
+
diff --git a/QDMA/linux-kernel/scripts/qdma_run_test_st_vf.sh b/QDMA/linux-kernel/scripts/qdma_run_test_st_vf.sh
new file mode 100755
index 0000000..7acce11
--- /dev/null
+++ b/QDMA/linux-kernel/scripts/qdma_run_test_st_vf.sh
@@ -0,0 +1,209 @@
+#!/bin/bash
+# Simple run script to test QDMA in VF AXI-ST mode.
+# 
+# VF AXI-ST Transfer
+#	- H2C operation is performed to send data to BRAM on the FPGA. 
+#	- C2H operation is performed to reads data from BRAM.
+#       -   C2H data is stored in a local file 'out_st_$qid', which will be compared to original file for correctness. 
+
+
+################################################
+# User Configurable Parameters
+################################################
+
+iteration=$1 # [Optional] iterations of C2H tests
+size=$2 # [Optional] Size per payload packet
+num_pkt=$3 # [Optional] number of payload packet
+
+################################################
+# Hard Coded Parameters
+################################################
+usr_bar=2 # For VF, DMA BAR is bar 0. User BAR is bar 2.
+vf=00080
+size_max=4096
+host_adr_high=0
+infile='./datafile_16bit_pattern.bin'
+logfile="loopback$1_$2.log"
+
+################################################
+# Input check
+################################################
+if [ -z $iteration ]; then
+	iteration=1 
+fi
+
+if [ ! -z $size ]; then 
+	f_size=1
+else
+   	f_size=0
+fi
+
+if [ -z $num_pkt ]; then
+	num_pkt=1
+fi
+
+#################################################
+# Helper Functions
+################################################
+function randomize_tx_params() {
+	#random host address 
+	if [ $host_adr_high -ne 0 ]; then
+		hst_adr1=$RANDOM
+		hst_adr1=$((hst_adr1 % host_adr_high))
+	else
+		hst_adr1=0
+	fi
+
+	# byte size
+	size=$RANDOM
+	if [ $size -eq 0 ]; then
+		size=$(($RANDOM % 64 + 1)) ## for random number between 1 and 64
+  	else
+		size=$((size % $size_max))
+	fi
+
+	# Correct if size is odd	
+  	even=$((size%2))	
+  	if [ $even -eq 1 ];then
+		size=$((size+1))
+  	fi
+}
+
+function queue_start() {
+	echo "---- Queue Start $2 ----"
+	dmactl qdma$1 q add idx $2 dir h2c mode $3 
+	dmactl qdma$1 q start idx $2 dir h2c 
+	dmactl qdma$1 q add idx $2 dir c2h mode $3
+	dmactl qdma$1 q start idx $2 dir c2h 
+}
+
+function cleanup_queue() {
+	echo "---- Queue Clean up $2 ----"
+	dmactl qdma$1 q stop idx $2 dir h2c 
+	dmactl qdma$1 q del idx $2 dir h2c 
+	dmactl qdma$1 q stop idx $2 dir c2h 
+	dmactl qdma$1 q del idx $2 dir c2h 
+}
+
+# Get a list of available devices
+vfs="$(dmactl dev list | grep qdmavf | cut -d '	' -f1)"
+echo "############################# AXI-ST Start #################################"
+
+for vfsdev in $vfs; do
+
+	vf="${vfsdev#*f}"
+	q_per_vf="$(dmactl dev list |grep qdmavf$vf | cut -d ' ' -f 3 | cut -d ',' -f 1 | xargs)"
+	hw_qbase="$(dmactl dev list |grep qdmavf$vf|cut -d',' -f 2 | cut -d '~' -f 1|xargs)"
+
+	for ((i=0; i<$q_per_vf; i++)) do
+
+		# Setup for Queues
+		qid=$i
+	  hw_qid=$((qid+hw_qbase))
+		dev_st_c2h="/dev/qdmavf$vf-ST-$qid"
+		dev_st_h2c="/dev/qdmavf$vf-ST-$qid"
+		out="out_st_$qid"
+		loop=1
+
+		# Open the Queue for AXI-ST streaming interface.
+		queue_start vf$vf $qid st > /dev/null
+
+		while [ "$loop" -le $iteration ]
+		do
+			# Determine if DMA is targeted @ random host address
+			if [ $f_size -eq 1 ]; then
+				hst_adr1=0
+			else
+				randomize_tx_params
+			fi
+
+			# if more packets are requested.
+			let "tsize= $size*$num_pkt"
+
+			echo ""
+			echo "########################################################################################"
+			echo "#############  H2C ST LOOP $loop : dev=$dev_st_h2c qid=$qid hw_qid=$hw_qid"
+			echo "#############               transfer_size=$tsize pkt_size=$size pkt_count=$num_pkt hst_adr=$hst_adr1"
+			echo "########################################################################################"
+
+			#clear match bit before each H2C ST transfer
+			dmactl qdmavf$vf reg write bar $usr_bar 0x0c 0x01
+
+			# H2C transfer 
+			dma_to_device -d $dev_st_h2c -f $infile -s $tsize -o $hst_adr1 &
+			re=$?
+
+			wait
+
+			# Check match bit and QID
+			hwqid_match=$(dmactl qdmavf$vf reg read bar $usr_bar 0x10 | grep "0x10" | cut -d '=' -f2 | cut -d 'x' -f2 | cut -d '.' -f1)
+			code=`echo $hwqid_match | tr 'a-z' 'A-Z'`
+			val=`echo "obase=2; ibase=16; $code" | bc`
+			if [ $(($val & 0x1)) -ne 1 ];then
+				echo "### ERROR: QID MATCH is $hwqid_match "$hw_qid_hex"1"
+				re=-1
+			fi               
+
+			if [ $re == 0 ]; then 
+				echo "######################################################"
+				echo "##############   VF H2C ST PASS QID $qid ################"
+				echo "######################################################"
+			else
+				echo "#### ERROR: VF H2C ST FAIL"
+			fi
+
+			echo ""
+			echo "########################################################################################"
+			echo "#############  C2H ST LOOP $loop : dev=$dev_st_c2h qid=$qid hw_qid=$hw_qid"
+			echo "#############               transfer_size=$tsize pkt_size=$size pkt_count=$num_pkt hst_adr=$hst_adr1"
+			echo "########################################################################################"
+
+		  dmactl qdmavf$vf reg write bar $usr_bar 0x0 $hw_qid  # for Queue 0
+		  dmactl qdmavf$vf reg write bar $usr_bar 0x4 $size
+		  dmactl qdmavf$vf reg write bar $usr_bar 0x20 $num_pkt #number of packets
+		  dmactl qdmavf$vf reg write bar $usr_bar 0x08 2 # Must set C2H start before starting transfer
+
+			dma_from_device -d $dev_st_c2h -f $out -o $hst_adr1 -s $tsize &
+
+			wait
+
+			#Check if files is there.
+			if [ ! -f $out ]; then
+				echo " #### ERROR: Queue $qid output file does not exists ####"
+				echo " #### ERROR: Queue $qid output file does not exists ####" >> $logfile
+				cleanup_queue vf$vf $qid st
+				exit -1
+			fi
+
+			# check files size
+			filesize=$(stat -c%s "$out")
+			if [ $filesize -gt $tsize ]; then
+				echo "#### ERROR: Queue $qid output file size does not match, filesize= $filesize ####"
+				echo "#### ERROR: Queue $qid output file size does not match, filesize= $filesize ####" >> $logfile
+				cleanup_queue vf$vf $qid st
+				exit -1 
+			fi
+
+		  #compare file
+		  cmp $out $infile -n $tsize
+		  if [ $? -eq 1 ]; then
+			  echo "#### Test ERROR. Queue $qid data did not match ####" 
+			  echo "#### Test ERROR. Queue $qid data did not match ####" >> $logfile
+			  dmactl qdmavf$vf q dump idx $qid mode st dir c2h
+			  dmactl qdmavf$vf reg dump
+			  cleanup_queue vf$vf $qid st
+			  exit -1
+		  else
+        echo "######################################################"
+			  echo "##############   VF C2H ST PASS QID $qid ################"
+        echo "######################################################"
+		  fi
+		  wait
+		   ((loop++))
+		done
+		cleanup_queue vf$vf $qid st > /dev/null
+  done
+done
+echo "########################## AXI-ST completed ###################################"
+exit 0
+
diff --git a/QDMA/linux-kernel/scripts/qdma_vf_auto_tst.sh b/QDMA/linux-kernel/scripts/qdma_vf_auto_tst.sh
new file mode 100644
index 0000000..95d9274
--- /dev/null
+++ b/QDMA/linux-kernel/scripts/qdma_vf_auto_tst.sh
@@ -0,0 +1,82 @@
+#!/bin/bash
+#
+# Simple script to automate the VF regression testing using gtest framework
+# 
+# This script will insert the module, configure the qmax_vfs, and instantiate
+# vfs on each PF one at a time. After instantiating the VFs, it will trigger
+# qdma_test regression test suite for VF only.
+# 
+# Inputs: 
+#	MODULE_TOP_DIR= Top directory for qdma linux module
+#	GTEST_TOP_DIR= Top directory for gtest regression test suite
+#	MASTER_PF_PCI_BDF= BDF For master PF.
+
+MODULE_DIR=$1
+GTEST_DIR=$2
+qdma_mod=$MODULE_DIR/build/qdma.ko
+qdma_mod_vf=$MODULE_DIR/build/qdma_vf.ko
+gtest_bin=$GTEST_DIR/build/src/qdma_test
+#busdev="0000:05:00"
+master_pf=0000:$3
+busdev=${master_pf%.*}
+mod_param_arr=("mode=1" "mode=2" "mode=3")
+vfs_cnt=(64 60 60 68)
+qmax_vfs=1024
+
+RED='\033[0;31m'
+NC='\033[0m'
+
+prep_test_env () {
+	rmmod qdma
+	rmmod qdma_vf
+	sleep 2
+	insmod $qdma_mod $1
+	insmod $qdma_mod_vf
+	sleep 2
+	if [ ! -f /sys/bus/pci/devices/$master_pf/qdma/qmax_vfs ];then
+		echo -e "${RED} Aborting, no /sys/bus/pci/devices/$master_pf/qdma/qmax_vfs found.${NC}"
+		exit -4
+	fi
+	echo $qmax_vfs > /sys/bus/pci/devices/$master_pf/qdma/qmax_vfs
+	echo $3 > /sys/bus/pci/devices/$busdev.$2/sriov_numvfs
+	ret=$?
+	echo 
+	echo "**********************************"
+	echo "******Doing QDMA VF Tests *******"
+	echo "**********************************"
+	echo
+	echo PF=$2, VF=$3, qmax_vfs=$qmax_vfs
+	echo module_param=$1
+	echo 
+	dmactl dev list
+
+	return $ret
+}
+
+if [ $# -lt 3 ];then
+	echo  -e "${RED}Aborting. Invalid usgae. Try $0 <MODULE_TOP_DIR> <GTEST_TOP_DIR> <MASTER_PF_PCI_BDF>. ${NC}"
+	exit -1
+fi
+
+if [ ! -f $qdma_mod ] || [ ! -f $qdma_mod_vf ];then 
+	echo -e "${RED}Aborting. Missing qdma drivers at $MODULE_DIR${NC}"
+	exit -2
+fi
+
+if [ ! -f $gtest_bin ];then 
+	echo -e "${RED}Aborting. Missing qdma_test at $GTEST_DIR${NC}"
+	exit -3
+fi
+
+for fn in `seq 0 3`;do
+	for params in "${mod_param_arr[@]}";do
+		prep_test_env "$params" $fn ${vfs_cnt[$fn]}
+		ret=$?
+		if [ $ret -ne 0 ];then
+			echo -e "${RED}FAILED VF tests, Aborting${NC}"
+			exit -1
+		fi
+		sleep 3
+		$gtest_bin --gtest_filter="*VF*"
+	done
+done
diff --git a/QDMA/linux-kernel/scripts/stress_test_top.sh b/QDMA/linux-kernel/scripts/stress_test_top.sh
new file mode 100755
index 0000000..150bbc5
--- /dev/null
+++ b/QDMA/linux-kernel/scripts/stress_test_top.sh
@@ -0,0 +1,75 @@
+#!/bin/bash
+
+if [ $# -lt 1 ]; then
+	echo "Invalid arguements."
+	echo "$0 <bbddf> [<test mask>] [<total execution time>]"
+	exit;
+fi;
+
+bdf=01000
+if [ ! -z $1 ]; then
+	bdf=$1
+fi
+test_mask=0x0f
+if [ ! -z $2 ]; then
+	test_mask=$2
+fi
+run_time="04:00:00"
+if [ ! -z $3 ]; then
+	run_time=$3
+fi
+
+cd ..
+make clean
+make
+make install-user
+
+insmod build/qdma.ko
+echo ${bdf}
+dmactl qdma${bdf} reg write bar 2 0xA0 0x01
+rmmod qdma
+cd -
+
+
+function cleanup_env()
+{
+	rmmod qdma_vf
+	rmmod qdma
+}
+
+function run_stress_test()
+{
+	drv_mode=0
+	if [ $1 == poll ]; then
+		drv_mode=1
+	elif [ $1 == intr ]; then
+		drv_mode=2
+	elif [ $1 == aggr ]; then
+		drv_mode=3
+	else
+		drv_mode=0
+	fi
+	cd ..
+	insmod build/qdma.ko mode=${drv_mode}
+	insmod build/qdma_vf.ko mode=${drv_mode}
+	cd -
+	chmod +x qdma_run_stress_test.sh
+	./qdma_run_stress_test.sh $bdf 2048 $run_time 1 $1
+	dmactl qdma$bdf reg write bar 2 0xA0 0x01
+	cleanup_env
+}
+
+trap cleanup_env EXIT
+
+if (( test_mask & 0x02 )); then
+	run_stress_test poll
+fi
+if (( test_mask & 0x04 )); then
+	run_stress_test intr
+fi
+if (( test_mask & 0x08 )); then
+	run_stress_test aggr
+fi
+if (( test_mask & 0x01 )); then
+	run_stress_test auto
+fi
diff --git a/QDMA/linux-kernel/tools/Makefile b/QDMA/linux-kernel/tools/Makefile
new file mode 100644
index 0000000..157cd16
--- /dev/null
+++ b/QDMA/linux-kernel/tools/Makefile
@@ -0,0 +1,21 @@
+CC ?= gcc
+all: dma_to_device dma_from_device dma_from_device_w_udd dmautils
+
+dma_to_device: dma_to_device.o
+	$(CC) -lrt -o $@ $< -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGE_FILE_SOURCE
+dma_from_device: dma_from_device.o
+	$(CC) -lrt -o $@ $< -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGE_FILE_SOURCE
+dma_from_device_w_udd: dma_from_device_w_udd.o
+	$(CC) -lrt -o $@ $< -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGE_FILE_SOURCE
+	
+aioutility: aioutility.o posixaio_engine.o libaio_engine.o
+	$(CC) -g -pthread -lrt -laio -o $@ $^ -D_GNU_SOURCE -D_LARGE_FILE_SOURCE -D_AIO_AIX_SOURCE
+	
+dmautils: dmautils.o
+	$(CC) -pthread -lrt -o $@ $< -laio -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGE_FILE_SOURCE
+	
+%.o: %.c
+	$(CC) -g -c -std=c99 -o $@ $< -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGE_FILE_SOURCE -D_AIO_AIX_SOURCE
+
+clean:
+	rm -rf *.o *.bin dma_to_device dma_from_device dma_from_device_w_udd dmautils
diff --git a/QDMA/linux-kernel/tools/aio_example.aio b/QDMA/linux-kernel/tools/aio_example.aio
new file mode 100644
index 0000000..cbd4146
--- /dev/null
+++ b/QDMA/linux-kernel/tools/aio_example.aio
@@ -0,0 +1,178 @@
+; anything in [] is a Job. Global Job is for Global environment setup.
+[global]
+;setup user/dmactl qdma0 reg write bar 1 0x30 0x11110000
+;setup user/dmactl qdma0 reg write bar 1 0x34 0x33332222
+;setup user/dmactl qdma0 reg write bar 1 0x38 0x55554444
+;setup user/dmactl qdma0 reg write bar 1 0x3c 0x77776666
+;setup user/dmactl qdma0 reg write bar 1 0x40 0x99998888
+;setup user/dmactl qdma0 reg write bar 1 0x44 0xbbbbaaaa
+;setup user/dmactl qdma0 reg write bar 1 0x48 0xddddcccc
+;setup user/dmactl qdma0 reg write bar 1 0x4c 0xffffeeee
+
+; Global environment setup and cleanup commands
+setup user/dmactl qdma0 q add idx 0 mode st dir c2h cmptsz 4
+setup user/dmactl qdma0 q start idx 0 dir c2h
+clean user/dmactl qdma0 q stop idx 0 dir c2h
+clean user/dmactl qdma0 q del idx 0 dir c2h
+
+[IO2]
+;select io engine to use
+ioengine=libaio
+; IO environment setup and cleanup commands
+setup user/dmactl qdma0 q add idx 0 mode st dir c2h cmptsz 3
+setup user/dmactl qdma0 q start idx 0 dir c2h
+setup user/dmactl qdma0 reg write bar 1 0x0 0
+setup user/dmactl qdma0 reg write bar 1 0x50 0x00
+setup user/dmactl qdma0 reg write bar 1 0x4 4096
+setup user/dmactl qdma0 reg write bar 1 0x20 0x2
+setup user/dmactl qdma0 reg write bar 1 0x08 0x2
+clean user/dmactl qdma0 q stop idx 0 dir c2h
+clean user/dmactl qdma0 q del idx 0 dir c2h
+; file on which IO needs to be performed
+filename=/dev/qdma0-ST-C2H-0
+; Tyep of IO opeartion
+iotype=read
+;Number of bytes for IO operations
+numread=4096
+; Block size limit for each read
+block=4096
+;Number of iterations to do for this IO
+numio=2
+; verify using a reference file or pattern
+verify=file
+; file to use for verification
+verify_file=datafile_16bit_pattern.bin
+
+[dma_from_dev_cmptsz_rsv]
+ioengine=posixaio
+setup user/dmactl qdma0 q add idx 0 mode st dir c2h cmptsz 3
+setup user/dmactl qdma0 q start idx 0 dir c2h
+setup user/dmactl qdma0 reg write bar 1 0x0 0
+setup user/dmactl qdma0 reg write bar 1 0x4 4096
+setup user/dmactl qdma0 reg write bar 1 0x20 0x2
+setup user/dmactl qdma0 reg write bar 1 0x50 0x0
+setup user/dmactl qdma0 reg write bar 1 0x08 0x2
+clean user/dmactl qdma0 q stop idx 0 dir c2h
+clean user/dmactl qdma0 q del idx 0 dir c2h
+filename=/dev/qdma0-ST-C2H-0
+iotype=read
+numread=4096
+block=4096
+numio=2
+verify=file
+verify_file=datafile_16bit_pattern.bin
+
+[dma_from_dev_cmptsz_8]
+ioengine=posixaio
+setup user/dmactl qdma0 q add idx 0 mode st dir c2h cmptsz 0
+setup user/dmactl qdma0 q start idx 0 dir c2h
+setup user/dmactl qdma0 reg write bar 1 0x0 0
+setup user/dmactl qdma0 reg write bar 1 0x4 4096
+setup user/dmactl qdma0 reg write bar 1 0x20 0x1
+setup user/dmactl qdma0 reg write bar 1 0x50 0x0
+setup user/dmactl qdma0 reg write bar 1 0x08 0x2
+clean user/dmactl qdma0 q stop idx 0 dir c2h
+clean user/dmactl qdma0 q del idx 0 dir c2h
+filename=/dev/qdma0-ST-C2H-0
+iotype=read
+numread=4096
+block=4096
+numio=1
+verify=file
+verify_file=datafile_16bit_pattern.bin
+
+[dma_from_dev_cmptsz_16]
+ioengine=posixaio
+setup user/dmactl qdma0 q add idx 0 mode st dir c2h cmptsz 1
+setup user/dmactl qdma0 q start idx 0 dir c2h
+setup user/dmactl qdma0 reg write bar 1 0x0 0
+setup user/dmactl qdma0 reg write bar 1 0x4 4096
+setup user/dmactl qdma0 reg write bar 1 0x20 0x1
+setup user/dmactl qdma0 reg write bar 1 0x50 0x1
+setup user/dmactl qdma0 reg write bar 1 0x08 0x2
+clean user/dmactl qdma0 q stop idx 0 dir c2h
+clean user/dmactl qdma0 q del idx 0 dir c2h
+filename=/dev/qdma0-ST-C2H-0
+iotype=read
+numread=4096
+block=4096
+numio=1
+verify=file
+verify_file=datafile_16bit_pattern.bin
+
+[dma_from_dev_cmptsz_32]
+ioengine=posixaio
+setup user/dmactl qdma0 q add idx 0 mode st dir c2h cmptsz 2
+setup user/dmactl qdma0 q start idx 0 dir c2h
+setup user/dmactl qdma0 reg write bar 1 0x0 0
+setup user/dmactl qdma0 reg write bar 1 0x4 4096
+setup user/dmactl qdma0 reg write bar 1 0x20 0x1
+setup user/dmactl qdma0 reg write bar 1 0x50 0x2
+setup user/dmactl qdma0 reg write bar 1 0x08 0x2
+clean user/dmactl qdma0 q stop idx 0 dir c2h
+clean user/dmactl qdma0 q del idx 0 dir c2h
+filename=/dev/qdma0-ST-C2H-0
+iotype=read
+numread=4096
+block=4096
+numio=1
+verify=file
+verify_file=datafile_16bit_pattern.bin
+
+[dma_from_dev_w_udd_cmptsz_8]
+ioengine=posixaio
+setup user/dmactl qdma0 q add idx 0 mode st dir c2h cmptsz 0
+setup user/dmactl qdma0 q start idx 0 dir c2h
+setup user/dmactl qdma0 reg write bar 1 0x0 0
+setup user/dmactl qdma0 reg write bar 1 0x4 4096
+setup user/dmactl qdma0 reg write bar 1 0x20 0x1
+setup user/dmactl qdma0 reg write bar 1 0x50 0x0
+setup user/dmactl qdma0 reg write bar 1 0x08 0x6
+clean user/dmactl qdma0 q stop idx 0 dir c2h
+clean user/dmactl qdma0 q del idx 0 dir c2h
+filename=/dev/qdma0-ST-C2H-0
+iotype=read
+numread=4096
+block=4096
+numio=1
+verify=file
+verify_file=datafile_16bit_pattern.bin
+
+[dma_from_dev_w_udd_cmptsz_16]
+ioengine=posixaio
+setup user/dmactl qdma0 q add idx 0 mode st dir c2h cmptsz 1
+setup user/dmactl qdma0 q start idx 0 dir c2h
+setup user/dmactl qdma0 reg write bar 1 0x0 0
+setup user/dmactl qdma0 reg write bar 1 0x4 4096
+setup user/dmactl qdma0 reg write bar 1 0x20 0x1
+setup user/dmactl qdma0 reg write bar 1 0x50 0x1
+setup user/dmactl qdma0 reg write bar 1 0x08 0x6
+clean user/dmactl qdma0 q stop idx 0 dir c2h
+clean user/dmactl qdma0 q del idx 0 dir c2h
+filename=/dev/qdma0-ST-C2H-0
+iotype=read
+numread=4096
+block=4096
+numio=1
+verify=file
+verify_file=datafile_16bit_pattern.bin
+
+[dma_from_dev_w_udd_cmptsz_32]
+ioengine=posixaio
+setup user/dmactl qdma0 q add idx 0 mode st dir c2h cmptsz 2
+setup user/dmactl qdma0 q start idx 0 dir c2h
+setup user/dmactl qdma0 reg write bar 1 0x0 0
+setup user/dmactl qdma0 reg write bar 1 0x4 4096
+setup user/dmactl qdma0 reg write bar 1 0x20 0x1
+setup user/dmactl qdma0 reg write bar 1 0x50 0x2
+setup user/dmactl qdma0 reg write bar 1 0x08 0x6
+clean user/dmactl qdma0 q stop idx 0 dir c2h
+clean user/dmactl qdma0 q del idx 0 dir c2h
+filename=/dev/qdma0-ST-C2H-0
+iotype=read
+numread=4096
+block=4096
+numio=1
+verify=file
+verify_file=datafile_16bit_pattern.bin
+
diff --git a/QDMA/linux-kernel/tools/aioutility.c b/QDMA/linux-kernel/tools/aioutility.c
new file mode 100644
index 0000000..cad2db9
--- /dev/null
+++ b/QDMA/linux-kernel/tools/aioutility.c
@@ -0,0 +1,950 @@
+/*
+ * This file is part of the QDMA userspace application
+ * to enable the user to execute the QDMA functionality
+ *
+ * Copyright (c) 2018-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is licensed under BSD-style license (found in the
+ * LICENSE file in the root directory of this source tree)
+ */
+
+#define _XOPEN_SOURCE 500
+#include <getopt.h>
+#include <stdint.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+#include <ctype.h>
+#include <signal.h>
+
+#include <sys/mman.h>
+#include <sys/time.h>
+
+#include "aioutility.h"
+
+
+#define DEFAULT_BLOCK_SIZE 4096
+#define SEC2NSEC           1000000000
+#define SEC2USEC           1000000
+#define DEFAULT_PAGE_SIZE  4096
+
+//#define AIO_DEBUG
+#define USE_LINUX_NATIVE_AIO 1
+
+enum env_cmd_type {
+	ENV_CMD_GLOBAL_SETUP,
+	ENV_CMD_GLOBAL_CLEANUP,
+	ENV_CMD_IO_SETUP,
+	ENV_CMD_IO_CLEANUP,
+};
+
+sem_t prev_io;
+
+static struct env_cmds *glb_setup_cmd_head = NULL;
+static struct env_cmds *glb_setup_cmd_tail = NULL;
+static struct env_cmds *glb_clean_cmd_head = NULL;
+static struct env_cmds *glb_clean_cmd_tail = NULL;
+static struct io_jobs *io_job_head = NULL;
+static struct io_jobs *io_job_tail = NULL;
+struct aio_block *aio_block_head = NULL;
+struct aio_block *aio_block_tail = NULL;
+struct aio_job *aio_task_head = NULL;
+static unsigned int num_io_jobs = 0;
+#define ENV_GLOBAL_CMD_HEAD(cmd_type) (ENV_CMD_GLOBAL_SETUP == cmd_type)? &glb_setup_cmd_head:&glb_clean_cmd_head
+#define ENV_GLOBAL_CMD_TAIL(cmd_type) (ENV_CMD_GLOBAL_SETUP == cmd_type)? &glb_setup_cmd_tail:&glb_clean_cmd_tail
+#define ENV_IO_CMD_HEAD(cmd_type) (ENV_CMD_IO_SETUP == cmd_type)? &(iojob->setup_head):&(iojob->cleanup_head)
+#define ENV_IO_CMD_TAIL(cmd_type) (ENV_CMD_IO_SETUP == cmd_type)?  &(iojob->setup_tail):&(iojob->cleanup_tail)
+
+static struct option const long_opts[] = {
+	{"config", required_argument, NULL, 'c'},
+	{0, 0, 0, 0}
+};
+
+static void usage(const char *name)
+{
+	int i = 0;
+	fprintf(stdout, "%s\n\n", name);
+	fprintf(stdout, "usage: %s [OPTIONS]\n\n", name);
+
+	fprintf(stdout, "  -%c (--%s) config file that has IO jobs to be executed\n",
+		long_opts[i].val, long_opts[i].name);
+	i++;
+}
+
+static int timespec_check(struct timespec *t)
+{
+	if ((t->tv_nsec < 0) || (t->tv_nsec >= SEC2NSEC))
+		return -1;
+	return 0;
+
+}
+
+void timespec_sub(struct timespec *t1, struct timespec *t2)
+{
+	if (timespec_check(t1) < 0) {
+		fprintf(stderr, "invalid time #1: %lld.%.9ld.\n",
+			(long long)t1->tv_sec, t1->tv_nsec);
+		return;
+	}
+	if (timespec_check(t2) < 0) {
+		fprintf(stderr, "invalid time #2: %lld.%.9ld.\n",
+			(long long)t2->tv_sec, t2->tv_nsec);
+		return;
+	}
+	t1->tv_sec -= t2->tv_sec;
+	t1->tv_nsec -= t2->tv_nsec;
+	if (t1->tv_nsec >= 1000000000) {
+		t1->tv_sec++;
+		t1->tv_nsec -= 1000000000;
+	} else if (t1->tv_nsec < 0) {
+		t1->tv_sec--;
+		t1->tv_nsec += 1000000000;
+	}
+}
+
+static void enqueue_global_env_cmd(enum env_cmd_type cmd_type,
+                               struct env_cmds *gcmd)
+{
+	struct env_cmds **gcmd_head = ENV_GLOBAL_CMD_HEAD(cmd_type);
+	struct env_cmds **gcmd_tail = ENV_GLOBAL_CMD_TAIL(cmd_type);
+
+	gcmd->prev = NULL;
+	if (NULL == *gcmd_head) {
+		*gcmd_head = gcmd;
+		(*gcmd_head)->next = NULL;
+		*gcmd_tail = *gcmd_head;
+	} else {
+		gcmd->next = *gcmd_head;
+		(*gcmd_head)->prev = gcmd;
+		*gcmd_head = gcmd;
+	}
+}
+
+static struct env_cmds * dequeue_global_env_cmd(enum env_cmd_type cmd_type)
+{
+	struct env_cmds **gcmd_head = ENV_GLOBAL_CMD_HEAD(cmd_type);
+	struct env_cmds **gcmd_tail = ENV_GLOBAL_CMD_TAIL(cmd_type);
+	struct env_cmds *gcmd = *gcmd_head;
+
+	if (*gcmd_tail == *gcmd_head) {
+		*gcmd_tail = NULL;
+		*gcmd_head = NULL;
+	} else {
+		*gcmd_head = (*gcmd_head)->next;
+		(*gcmd_head)->prev = NULL;
+	}
+
+	return gcmd;
+}
+
+static void enqueue_io_env_cmd(enum env_cmd_type cmd_type,
+                               struct io_jobs *iojob,
+                               struct env_cmds *gcmd)
+{
+	struct env_cmds **gcmd_head = ENV_IO_CMD_HEAD(cmd_type);
+	struct env_cmds **gcmd_tail = ENV_IO_CMD_TAIL(cmd_type);
+
+	gcmd->prev = NULL;
+	if (NULL == *gcmd_head) {
+		*gcmd_head = gcmd;
+		(*gcmd_head)->next = NULL;
+		*gcmd_tail = *gcmd_head;
+	} else {
+		gcmd->next = *gcmd_head;
+		(*gcmd_head)->prev = gcmd;
+		*gcmd_head = gcmd;
+	}
+}
+
+static struct env_cmds * dequeue_io_env_cmd(enum env_cmd_type cmd_type,
+                                            struct io_jobs *iojob)
+{
+	struct env_cmds **gcmd_head = ENV_IO_CMD_HEAD(cmd_type);
+	struct env_cmds **gcmd_tail = ENV_IO_CMD_TAIL(cmd_type);
+	struct env_cmds *gcmd = *gcmd_head;
+
+	if (*gcmd_tail == *gcmd_head) {
+		*gcmd_tail = NULL;
+		*gcmd_head = NULL;
+	} else {
+		*gcmd_head = (*gcmd_head)->next;
+		(*gcmd_head)->prev = NULL;
+	}
+
+	return gcmd;
+}
+
+void enqueue_io_job(struct io_jobs *iojob)
+{
+	iojob->prev = NULL;
+	if (NULL == io_job_head) {
+		io_job_head = iojob;
+		io_job_head->next = NULL;
+		io_job_tail = io_job_head;
+	} else {
+		iojob->next = io_job_head;
+		io_job_head->prev = iojob;
+		io_job_head = iojob;
+	}
+	num_io_jobs++;
+}
+
+static struct io_jobs * dequeue_io_job(void)
+{
+	struct io_jobs *iojob = io_job_head;
+
+	if (io_job_tail == io_job_head) {
+		io_job_tail = NULL;
+		io_job_head = NULL;
+	} else {
+		io_job_head = io_job_head->next;
+		io_job_head->prev = NULL;
+	}
+
+	return iojob;
+}
+
+void enqueue_aio_block(struct aio_job *aiojob, struct aio_block *aioblock)
+{
+	if (NULL == aiojob->aio_block_head) {
+		aiojob->aio_block_head = aioblock;
+		aiojob->aio_block_head->next = NULL;
+		aiojob->aio_block_tail = aiojob->aio_block_head;
+	} else {
+		aioblock->next = aiojob->aio_block_head;
+		aiojob->aio_block_head = aioblock;
+	}
+}
+
+static struct aio_block * dequeue_aio_block(struct aio_job *aiojob)
+{
+	struct aio_block *aioblock = aiojob->aio_block_head;
+
+	if (aiojob->aio_block_tail == aiojob->aio_block_head) {
+		aiojob->aio_block_head = NULL;
+		aiojob->aio_block_tail = NULL;
+	} else
+		aiojob->aio_block_head = aiojob->aio_block_head->next;
+
+	return aioblock;
+}
+
+void enqueue_aio_task(struct aio_job *aiotask)
+{
+	if (NULL == aio_task_head) {
+		aio_task_head = aiotask;
+		aio_task_head->next = NULL;
+	} else {
+		aiotask->next = aio_task_head;
+		aio_task_head = aiotask;
+	}
+}
+
+struct aio_block * get_aio_block(void *_aioblock)
+{
+	struct aio_job *aiotask = aio_task_head;
+	struct aio_block *aioblock;
+
+	while (aiotask) {
+		aioblock = aiotask->aio_block_head;
+		while (aioblock) {
+			if (aioblock->aio_entry == _aioblock)
+				break;
+			aioblock = aioblock->next;
+		}
+		aiotask = aiotask->next;
+	}
+
+	return aioblock;
+}
+
+
+static char * strip_blanks(char *word, long unsigned int *banlks)
+{
+	char *p = word;
+	unsigned int i = 0;
+
+	while (isblank(p[0])) {
+		p++;
+		i++;
+	}
+	*banlks = i;
+
+	return p;
+}
+
+static bool get_io_param_attrs(char *linebuf, size_t linelen,
+                               unsigned int *lhspos, unsigned int *rhspos)
+{
+	long unsigned int numblanks = 0;
+	char *p = strip_blanks(linebuf, &numblanks);
+	size_t i = 0;
+
+	while (i < (linelen - numblanks)) {
+		if ('=' != p[i])
+			i++;
+		else
+			break;
+	}
+	if (i == (linelen - numblanks)) {
+		printf("Error: assignment operator missing in below line:\n %s\n",
+		       linebuf);
+		return false;
+	} else {
+		*lhspos = numblanks;
+		p = strip_blanks(p + i + 1,&numblanks);
+		*rhspos = i + 1 + numblanks;
+	}
+
+	return true;
+}
+
+static void add_env_cmd(enum env_cmd_type cmd_type,
+                                     char *linebuf, size_t linelen, void *iojob)
+{
+	struct env_cmds *gcmd = malloc(sizeof(struct env_cmds));
+	size_t numblanks;
+	char *sh_cmd = strip_blanks(linebuf, &numblanks);
+	unsigned int sh_cmd_len = linelen - numblanks;
+
+	gcmd->cmd = malloc(sh_cmd_len);
+	memcpy(gcmd->cmd, sh_cmd, sh_cmd_len);
+
+
+	if ((ENV_CMD_GLOBAL_SETUP == cmd_type) ||
+			(ENV_CMD_GLOBAL_CLEANUP == cmd_type))
+		enqueue_global_env_cmd(cmd_type, gcmd);
+	else
+		enqueue_io_env_cmd(cmd_type, (struct io_jobs *)iojob, gcmd);
+}
+
+static bool parse_global_cmd_info(FILE *fp,
+                            unsigned int *linenum)
+{
+	char *linebuf = NULL;
+	char *realbuf;
+	size_t linelen = 0;
+	size_t numread;
+	size_t numblanks;
+	fpos_t prev_pos;
+
+	fgetpos(fp, &prev_pos);
+	while ((numread = getline(&linebuf, &linelen, fp)) != -1) {
+		numread--;
+		*linenum = *linenum + 1;
+		realbuf = strip_blanks(linebuf, &numblanks);
+		numread -= numblanks;
+		if (0 == numread)
+			continue;
+		else if ((realbuf[0] == ';') || (realbuf[0] == '#'))
+			continue;
+		else if (realbuf[0] == '[') { /* new job - return */
+			fsetpos(fp, &prev_pos);
+			break;
+		} else {
+			if (0 == strncmp(&realbuf[0], "setup", 5)) { /* enqueue env setup job */
+				add_env_cmd(ENV_CMD_GLOBAL_SETUP,
+				            &realbuf[5],
+				            numread - 5,
+				            NULL);
+			} else if (0 == strncmp(&realbuf[0], "clean", 5)) { /* enqueue env cleanup job */
+				add_env_cmd(ENV_CMD_GLOBAL_CLEANUP,
+					    &realbuf[5],
+					    numread - 5,
+					    NULL);
+			} else {
+				printf ("Error: unknown global command\n");
+				return false;
+			}
+		}
+		fgetpos(fp, &prev_pos);
+	}
+
+	return true;
+}
+
+static bool parse_io_job_attrs(struct io_jobs *iojob, char *linebuf, size_t numread)
+{
+	unsigned int lhspos = 0, rhspos = 0;
+	char *lhs, *rhs;
+
+	if (0 == strncmp(linebuf, "setup", 5)) { /* enqueue env setup job */
+		add_env_cmd(ENV_CMD_IO_SETUP,
+		            &linebuf[5],
+		            numread - 5,
+		            iojob);
+	} else if (0 == strncmp(linebuf, "clean", 5)) { /* enqueue env cleanup job */
+		add_env_cmd(ENV_CMD_IO_CLEANUP,
+			    &linebuf[5],
+			    numread - 5,
+		            iojob);
+	}else if (get_io_param_attrs(linebuf, numread, &lhspos, &rhspos)) {
+		lhs = linebuf + lhspos;
+		rhs = linebuf + rhspos;
+		if (0 == strncmp(lhs, "ioengine", 8)) {
+			if (0 == strncmp(rhs, "libaio", 6)) {
+				iojob->io_type = IO_ENGINE_LIBAIO;
+				iojob->commit_io = submit_naio_job;
+				iojob->cancel_io = cancel_naio_job;
+			}
+			else if (0 == strncmp(rhs, "posixaio", 8)) {
+				iojob->io_type = IO_ENGINE_POSIXAIO;
+				iojob->commit_io = submit_paio_job;
+				iojob->cancel_io = cancel_paio_job;
+			}
+			else {
+				printf ("Error: Invalid IO engine specified for %s job\n",
+				        iojob->job_name);
+				return false;
+			}
+		} else if (0 == strncmp(lhs, "filename", 8)) {
+			iojob->node = malloc(numread - rhspos);
+			memcpy(iojob->node, rhs, numread - rhspos);
+		} else if (0 == strncmp(lhs, "iotype", 6)) {
+			iojob->iotype = malloc(numread - rhspos);
+			memcpy(iojob->iotype, rhs, numread - rhspos);
+		} else if ((0 == strncmp(lhs, "numwrite", 8)) ||
+				(0 == strncmp(lhs, "numread", 7))) {
+			sscanf(rhs, "%u", &iojob->numbytes);
+		} else if (0 == strncmp(lhs, "infile", 6)) {
+			int fbuf;
+			size_t datsize = 0;
+			struct stat infile_stat;
+			ssize_t numrd = 0;
+			char *wrfilename = malloc(numread - rhspos);
+
+			memcpy(wrfilename, rhs, numread - rhspos);
+
+			fbuf = open(wrfilename, O_RDONLY);
+
+			if (0 > fbuf) {
+				printf("Error: opening %s failed\n", wrfilename);
+				return false;
+			} else {
+				if (0 > fstat(fbuf, &infile_stat)) {
+					printf("Error: File stat did not work for %s\n", wrfilename);
+					return false;
+				}
+				datsize = infile_stat.st_size;
+				if (0 > lseek(fbuf, 0, SEEK_SET)) {
+					printf("Error: Setting file descriptor to beginning for %s failed\n",
+					       wrfilename);
+					return false;
+				}
+				iojob->buf = malloc(datsize);
+
+				while (datsize) {
+					numrd = read(fbuf, iojob->buf, datsize);
+					if (0 < numrd) {
+						datsize -= numrd;
+					} else
+						break;
+				}
+				close(fbuf);
+			}
+			free(wrfilename);
+		} else if (0 == strncmp(lhs, "block", 5)) {
+			sscanf(rhs, "%u", &iojob->block_size);
+		} else if (0 == strncmp(lhs, "numio", 5)) {
+			sscanf(rhs, "%u", &iojob->numitr);
+		} else if (0 == strncmp(lhs, "verify_file", 11)) {
+			if (iojob->verify_read != READ_VERIFY_FILE) {
+				printf("Error: verify method not matching with input for %s\n",
+				       iojob->job_name);
+				return false;
+			}
+			iojob->verify_file_name = malloc(numread - rhspos);
+			memcpy(iojob->verify_file_name, rhs, numread - rhspos);
+		} else if (0 == strncmp(lhs, "verify_pattern", 14)) {
+			if (iojob->verify_read != READ_VERIFY_PATTERN) {
+				printf("Error: verify method not matching with input for %s\n",
+				       iojob->job_name);
+				return false;
+			}
+			iojob->verify_pattern = malloc(numread - rhspos);
+			memcpy(iojob->verify_pattern, rhs, numread - rhspos);
+		} else if (0 == strncmp(lhs, "verify", 6)) {
+			if (0 == strncmp(rhs, "file", 4)) {
+				iojob->verify_read = READ_VERIFY_FILE;
+			} else if (0 == strncmp(rhs, "pattern", 7)) {
+				iojob->verify_read = READ_VERIFY_PATTERN;
+			} else {
+				printf("Error: unknown read verify type in %s\n",
+				       linebuf);
+				return false;
+			}
+		} else {
+			printf("Error: Unknown IO option\n");
+		}
+	} else
+		return false;
+
+	return true;
+}
+
+static bool parse_io_job_info(struct io_jobs *iojob, FILE *fp,
+                            unsigned int *linenum)
+{
+	char *linebuf = NULL;
+	char *realbuf;
+	size_t linelen = 0;
+	size_t numread;
+	size_t numblanks;
+	fpos_t prev_pos;
+
+	fgetpos(fp, &prev_pos);
+	while ((numread = getline(&linebuf, &linelen, fp)) != -1) {
+		numread--;
+		(*linenum)++;
+		realbuf = strip_blanks(linebuf, &numblanks);
+		numread -= numblanks;
+		if (0 == numread)
+			continue;
+		else if ((realbuf[0] == ';') || (realbuf[0] == '#'))
+			continue;
+		else if (realbuf[0] == '[') { /* new job - return */
+			fsetpos(fp, &prev_pos);
+			break;
+		} else {
+			if (false == parse_io_job_attrs(iojob, linebuf, numread))
+				return false;
+		}
+		fgetpos(fp, &prev_pos);
+	}
+
+	return true;
+}
+
+static void parse_config_file(const char *cfg_fname)
+{
+	char *linebuf = NULL;
+	char *realbuf;
+	FILE *fp;
+	size_t linelen = 0;
+	size_t numread;
+	size_t numblanks;
+	unsigned int linenum = 0;
+
+	fp = fopen(cfg_fname, "r");
+	if (fp == NULL)
+		exit(EXIT_FAILURE);
+
+	while ((numread = getline(&linebuf, &linelen, fp)) != -1) {
+		numread--;
+		linenum++;
+		realbuf = strip_blanks(linebuf, &numblanks);
+		linelen -= numblanks;
+		if (0 == linelen)
+			continue;
+		else if ((';' == realbuf[0]) || ('#' == realbuf[0]))
+			continue;
+		else if (realbuf[0] == '[') { /* extract job name */
+			unsigned char job_eidx = 1;
+			char *jobname;
+
+			while (']' != realbuf[job_eidx])
+				job_eidx++;
+			if (0 == strncmp(&realbuf[1], "global", job_eidx - 1)) {
+				if (!parse_global_cmd_info(fp, &linenum)) {
+					fclose(fp);
+					exit(1);
+				}
+			} else { /* enqueue io job */
+				struct io_jobs *iojob = calloc(1, sizeof(struct io_jobs));
+
+				memset(iojob, 0 ,sizeof(struct io_jobs));
+				iojob->job_name = malloc(job_eidx - 1);
+				iojob->verify_read = READ_VERIFY_NONE;
+				memcpy(iojob->job_name, &realbuf[1], job_eidx - 1);
+				iojob->block_size = DEFAULT_BLOCK_SIZE;
+				if (!parse_io_job_info(iojob, fp, &linenum)) {
+					free(iojob->job_name);
+					free(iojob);
+					fclose(fp);
+					exit(1);
+				}
+				if (0 == strncmp(iojob->iotype, "read", 4)) {
+					if (0 == iojob->numbytes) {
+						printf ("Error:Number of bytes to read not provided for %s\n",
+						        iojob->job_name);
+						exit(0);
+					} else {
+						unsigned int num_blocks = get_io_job_num_blocks(iojob);
+
+						if (0 != posix_memalign((void **)&iojob->buf,
+								DEFAULT_PAGE_SIZE /*alignment */ ,
+						               (iojob->numitr *
+						        	num_blocks *
+						        	iojob->block_size) +
+						        	DEFAULT_PAGE_SIZE)) {
+							printf("Error: Memory could not be allocated\n");
+							exit(0);
+						}
+					}
+				}
+				enqueue_io_job(iojob);
+			}
+		}
+	}
+	fclose(fp);
+}
+
+void run_env_cmds(struct env_cmds *gcmd)
+{
+	while (NULL != gcmd) {
+		printf("Running cmd: %s\n", gcmd->cmd);
+		system(gcmd->cmd);
+		gcmd = gcmd->prev;
+	}
+}
+
+void verify_read(struct io_jobs *iojob)
+{
+	char *expected;
+	int rd_diff;
+	unsigned int i, j;
+	unsigned int total_jobs = get_io_job_num_blocks(iojob);
+
+	if (iojob->verify_read == READ_VERIFY_FILE) {
+		int fd;
+		unsigned int datsize;
+		struct stat infile_stat;
+		ssize_t numrd = 0;
+		int rc;
+
+		fd = open(iojob->verify_file_name, O_RDONLY);
+		if (0 > fstat(fd, &infile_stat)) {
+			printf("Error: File stat did not work for %s\n", iojob->verify_file_name);
+			return;
+		}
+		datsize = infile_stat.st_size;
+		if (0 > lseek(fd, 0, SEEK_SET)) {
+			printf("Error: Setting file descriptor to beginning for %s failed\n",
+			       iojob->verify_file_name);
+			return;
+		}
+		expected = malloc(datsize);
+		while (datsize) {
+			numrd = read(fd, expected, datsize);
+			if (0 < numrd) {
+				datsize -= numrd;
+			} else
+				break;
+		}
+		close(fd);
+
+		for (i = 0; i < iojob->numitr; i++) {
+			unsigned int buf_offset = (i * total_jobs * iojob->block_size);
+			unsigned int io_numbytes = iojob->numbytes;
+
+			rd_diff = memcmp(expected,
+					 &iojob->buf[buf_offset],
+					 io_numbytes);
+			if (0 != rd_diff) {
+
+				printf("Error: read verify failed for %s itr %d at %d\n",
+					       iojob->job_name, i, rd_diff);
+
+			} else
+				printf("Read validated for %s -> itr %u successfully\n", iojob->job_name, i);
+		}
+		free(expected);
+	} else if (iojob->verify_read == READ_VERIFY_PATTERN) {
+		unsigned int pat_len = strlen(iojob->verify_pattern);
+		unsigned int offset = 0;
+
+		unsigned int buf_offset = (i * iojob->block_size);
+		while (offset < iojob->numbytes) {
+			rd_diff = memcmp(iojob->verify_pattern,
+					 &iojob->buf[offset],
+					 pat_len);
+			if (0 != rd_diff)
+				printf("Error: read verify failed for %s at %d\n",
+					       iojob->job_name, offset + rd_diff);
+			offset += pat_len;
+		}
+	}
+}
+
+unsigned int get_io_job_num_blocks(struct io_jobs *iojob)
+{
+	unsigned int num_blks;
+	unsigned int extra_block = (iojob->numbytes % iojob->block_size)? 1 : 0;
+
+	num_blks = (iojob->numbytes / iojob->block_size) + extra_block;
+
+	return num_blks;
+}
+
+
+#ifdef AIO_DEBUG
+static void dump_iojob(struct io_jobs *iojob)
+{
+	struct env_cmds *gcmd;
+
+	printf("%s:\n", iojob->job_name);
+	gcmd = iojob->setup_tail;
+	while (NULL != gcmd) {
+		printf("%s\n", gcmd->cmd);
+		gcmd = gcmd->prev;
+	}
+	if (NULL == iojob->setup_tail)
+		printf("No IO setup cmds listed\n");
+	if (NULL == iojob->cleanup_tail)
+		printf("No IO cleanup cmds listed\n");
+	gcmd = iojob->cleanup_tail;
+	while (NULL != gcmd) {
+		printf("%s\n", gcmd->cmd);
+		gcmd = gcmd->prev;
+	}
+	printf("working on %s:\n", iojob->node);
+	printf("IO Operation: %s\n", iojob->iotype);
+	printf("verification type: %d\n", iojob->verify_read);
+	printf("verify_file_name: %s\n", iojob->verify_file_name);
+	printf("verify_pattern: %s\n", iojob->verify_pattern);
+	printf("numbytes: %d\n", iojob->numbytes);
+	printf("block_size: %d\n", iojob->block_size);
+	printf("numitr: %d\n", iojob->numitr);
+}
+#endif
+
+static void run_io_job(unsigned int jobnum)
+{
+	struct io_jobs *iojob = io_job_tail;
+
+	if (jobnum > num_io_jobs) {
+		printf("Error: Invalid IO job number %d\n", jobnum);
+		return;
+	}
+
+	if (0 == jobnum) {
+		while (iojob) {
+#ifdef AIO_DEBUG
+			dump_iojob(iojob);
+#endif
+			iojob->commit_io(iojob);
+			iojob = iojob->prev;
+		}
+	} else {
+		while (--jobnum) {
+			iojob = iojob->prev;
+		}
+
+#ifdef AIO_DEBUG
+		dump_iojob(iojob);
+#endif
+		iojob->commit_io(iojob);
+	}
+}
+
+static void cancel_outstanding_reqs(void)
+{
+	struct aio_block *aioblock;
+	struct aio_job *aiojob = aio_task_head;
+	struct aiocb *iocb;
+	int rc;
+
+	while (NULL != aiojob) {
+		aiojob->iojob->cancel_io(aiojob);
+		aiojob = aiojob->next;
+	}
+}
+
+bool cleanup_aiojob(struct aio_job *aiojob, bool force)
+{
+	struct aio_block *aioblock;
+	void *aio_list;
+	struct timespec ts_cur;
+	int rc;
+	struct io_jobs *iojob = aiojob->iojob;
+
+	aioblock = aiojob->aio_block_head;
+	while (force) {
+		if (NULL != aioblock) {
+			if (aiojob->mask_completed & aioblock->mask)
+				goto aioblock_next;
+			rc = clock_gettime(CLOCK_MONOTONIC, &ts_cur);
+			ts_cur.tv_nsec += SEC2USEC;
+			printf("waiting for %s iter %d block %d to cancel\n",
+			       iojob->job_name, aioblock->jobitr,
+			       aioblock->block_num);
+			sem_timedwait(&aioblock->lock, &ts_cur);
+			sem_destroy(&aioblock->lock);
+			aiojob->mask_completed |= aioblock->mask;
+		} else
+			break;
+aioblock_next:
+		aioblock = aioblock->next;
+	}
+	if (aiojob->mask_completed != aiojob->mask_expected) {
+		if (force)
+			printf("Invalid path in aio task cleanup\n");
+		return false;
+	}
+	run_env_cmds(iojob->cleanup_tail);
+	while (1) {
+		aioblock = dequeue_aio_block(aiojob);
+		if (NULL == aioblock) break;
+		if (NULL != aioblock->aio_entry) {
+			free(aioblock->aio_entry);
+			aioblock->aio_entry = NULL;
+		}
+		free(aioblock);
+		aioblock = NULL;
+	}
+	close(aiojob->fd);
+	aio_list = aiojob->aio_list;
+	aio_task_head = aio_task_head->next;
+	aiojob->aio_list = NULL;
+	free(aiojob);
+	aiojob = NULL;
+	free(aio_list);
+
+	sem_post(&prev_io);
+
+	return true;
+}
+
+void cleanup_aio_jobs(bool force)
+{
+	struct aio_job *aiojob = aio_task_head;
+
+	while (NULL != aiojob) {
+		if (false == cleanup_aiojob(aiojob, force))
+			break; /* need to clean up sequentially in reverse */
+		else
+			aiojob = aio_task_head;
+	}
+}
+
+static void cleanup(void)
+{
+	struct io_jobs *iojob;
+	struct env_cmds *gcmd;
+
+	cancel_outstanding_reqs();
+	cleanup_aio_jobs(true);
+
+	while (1) {
+		iojob = dequeue_io_job();
+		if (NULL == iojob) break;
+		if (NULL != iojob->verify_file_name)
+			free(iojob->verify_file_name);
+		if (NULL != iojob->verify_pattern)
+			free(iojob->verify_pattern);
+		free(iojob->iotype);
+		free(iojob->buf);
+		free(iojob->node);
+		free(iojob->job_name);
+		while (iojob->cleanup_head) {
+			gcmd = dequeue_io_env_cmd(ENV_CMD_IO_CLEANUP, iojob);
+			free(gcmd->cmd);
+			free(gcmd);
+		}
+		while (iojob->setup_head) {
+			gcmd = dequeue_io_env_cmd(ENV_CMD_IO_SETUP, iojob);
+			free(gcmd->cmd);
+			free(gcmd);
+		}
+		free(iojob);
+	}
+	while (1) {
+		gcmd = dequeue_global_env_cmd(ENV_CMD_GLOBAL_CLEANUP);
+		if (NULL == gcmd) break;
+		free(gcmd->cmd);
+		free(gcmd);
+	}
+	while (1) {
+		gcmd = dequeue_global_env_cmd(ENV_CMD_GLOBAL_SETUP);
+		if (NULL == gcmd) break;
+		free(gcmd->cmd);
+		free(gcmd);
+	}
+}
+
+int main(int argc, char *argv[])
+{
+	int cmd_opt;
+	char *cfg_fname;
+	unsigned int i;
+	struct io_jobs *iojob;
+
+	while ((cmd_opt = getopt_long(argc, argv, "vhxc:c:", long_opts,
+			    NULL)) != -1) {
+		switch (cmd_opt) {
+		case 0:
+			/* long option */
+			break;
+		case 'c':
+			/* condig file name */
+			cfg_fname = strdup(optarg);
+			break;
+		default:
+			usage(argv[0]);
+			exit(0);
+			break;
+		}
+	}
+
+	parse_config_file(cfg_fname);
+	sem_init(&prev_io, 0, 1);
+	atexit(cleanup);
+#ifdef AIO_DEBUG
+		{
+			struct env_cmds *gcmd;
+
+			gcmd = glb_setup_cmd_tail;
+			while (NULL != gcmd) {
+				printf("%s\n", gcmd->cmd);
+				gcmd = gcmd->prev;
+			}
+			gcmd = glb_clean_cmd_tail;
+			while (NULL != gcmd) {
+				printf("%s\n", gcmd->cmd);
+				gcmd = gcmd->prev;
+			}
+		}
+#endif
+
+	while (1) {
+		unsigned int j = 0;
+
+		printf("\nSelect the Job to run:\n");
+		printf("0. exit\n");
+		printf("1. global setup\n");
+		printf("2. global cleanup\n");
+		printf("3. All IO jobs\n");
+		i = 4;
+		iojob = io_job_tail;
+		while (iojob) {
+			printf("%d. %s\n", i, iojob->job_name);
+			iojob = iojob->prev;
+			i++;
+		}
+		scanf("%u", &j);
+		sem_wait(&prev_io);
+		if (0 == j) {
+			exit(0);
+		} else if (1 == j) {
+			run_env_cmds(glb_setup_cmd_tail);
+			sem_post(&prev_io);
+		} else if (2 == j) {
+			run_env_cmds(glb_clean_cmd_tail);
+			sem_post(&prev_io);
+		} else if (3 == j) {
+			run_io_job(0);
+		} else if (j < i) {
+			printf("Running IO Job %d\n", j-3);
+			run_io_job(j - 3);
+		} else {
+			printf ("Error: Invalid option\n");
+		}
+		sem_wait(&prev_io);
+		exit(0);
+	}
+
+	return 0;
+}
+
diff --git a/QDMA/linux-kernel/tools/aioutility.h b/QDMA/linux-kernel/tools/aioutility.h
new file mode 100644
index 0000000..f9f674b
--- /dev/null
+++ b/QDMA/linux-kernel/tools/aioutility.h
@@ -0,0 +1,110 @@
+/*
+ * This file is part of the QDMA userspace application
+ * to enable the user to execute the QDMA functionality
+ *
+ * Copyright (c) 2018-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is licensed under BSD-style license (found in the
+ * LICENSE file in the root directory of this source tree)
+ */
+
+#ifndef __AIOUTILITY_H__
+#define __AIOUTILITY_H__
+
+#include <semaphore.h>
+#include <time.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <fcntl.h>
+#include <stdbool.h>
+#include <linux/types.h>
+
+enum read_verify_type {
+	READ_VERIFY_NONE,
+	READ_VERIFY_FILE,
+	READ_VERIFY_PATTERN
+};
+
+enum io_engine {
+	IO_ENGINE_LIBAIO,
+	IO_ENGINE_POSIXAIO
+};
+
+struct env_cmds {
+	char *cmd; /* commands to be run  */
+	struct env_cmds *next;
+	struct env_cmds *prev;
+};
+
+typedef void (*submit_aio_job)(void *);
+typedef void (*cancel_aio_job)(void *);
+
+struct io_jobs {
+	char *job_name;
+	char *node;
+	char *iotype;
+	char *buf;
+	char *verify_file_name;
+	char *verify_pattern;
+	unsigned int numbytes;
+	unsigned int block_size;
+	unsigned int numitr;
+	enum read_verify_type verify_read;
+	enum io_engine io_type;
+	void *aiojob;
+	struct env_cmds *setup_head;
+	struct env_cmds *setup_tail;
+	struct env_cmds *cleanup_head;
+	struct env_cmds *cleanup_tail;
+	submit_aio_job commit_io;
+	cancel_aio_job cancel_io;
+	struct io_jobs *next;
+	struct io_jobs *prev;
+};
+
+struct aio_block {
+	sem_t lock;
+	__u64 mask;
+	void *aio_entry;
+	unsigned int jobitr;
+	unsigned int num_bytes;
+	unsigned int block_num;
+	unsigned int num_blocks_completed;
+	struct aio_job *parent;
+	void *next;
+};
+
+struct aio_job {
+	struct io_jobs *iojob;
+	int fd;
+	__u64 mask_expected;
+	__u64 mask_completed;
+	struct timespec ts_start;
+	void *aio_list;
+	void *naio_ctxt;
+	void *events;
+	struct aio_block *aio_block_head;
+	struct aio_block *aio_block_tail;
+	struct aio_job *next;
+};
+
+void submit_naio_job(void *iojob);
+void submit_paio_job(void *iojob);
+void cancel_naio_job(void *aiojob);
+void cancel_paio_job(void *aiojob);
+
+unsigned int get_io_job_num_blocks(struct io_jobs *iojob);
+void verify_read(struct io_jobs *iojob);
+bool cleanup_aiojob(struct aio_job *aiojob, bool force);
+void cleanup_aio_jobs(bool);
+void enqueue_io_job(struct io_jobs *iojob);
+void enqueue_aio_block(struct aio_job *aiojob, struct aio_block *aioblock);
+void enqueue_aio_task(struct aio_job *aiotask);
+struct aio_block * get_aio_block(void *_aioblock);
+
+void run_env_cmds(struct env_cmds *gcmd);
+
+void timespec_sub(struct timespec *t1, struct timespec *t2);
+
+#endif
diff --git a/QDMA/linux-kernel/tools/config/dmautils_config/mm-bi.zip b/QDMA/linux-kernel/tools/config/dmautils_config/mm-bi.zip
new file mode 100644
index 0000000000000000000000000000000000000000..548e1c8804b13ea7d67fb91e0fb3694e856f291e
GIT binary patch
literal 18447
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
AQvd(}

literal 0
HcmV?d00001

diff --git a/QDMA/linux-kernel/tools/config/dmautils_config/mm-c2h.zip b/QDMA/linux-kernel/tools/config/dmautils_config/mm-c2h.zip
new file mode 100644
index 0000000000000000000000000000000000000000..64f01c3f65065b11324fcbd04798e243c226efba
GIT binary patch
literal 18719
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
K!0<#5!~+1M8UarL

literal 0
HcmV?d00001

diff --git a/QDMA/linux-kernel/tools/config/dmautils_config/mm-h2c.zip b/QDMA/linux-kernel/tools/config/dmautils_config/mm-h2c.zip
new file mode 100644
index 0000000000000000000000000000000000000000..2ae62697b21ecaa3af4f58b59de729d20471f8d1
GIT binary patch
literal 17146
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

literal 0
HcmV?d00001

diff --git a/QDMA/linux-kernel/tools/config/dmautils_config/st-bi.zip b/QDMA/linux-kernel/tools/config/dmautils_config/st-bi.zip
new file mode 100644
index 0000000000000000000000000000000000000000..d7463397e04e20c4751af0b759ccf73336ee52e6
GIT binary patch
literal 90077
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

literal 0
HcmV?d00001

diff --git a/QDMA/linux-kernel/tools/config/dmautils_config/st-c2h-pfetch1.zip b/QDMA/linux-kernel/tools/config/dmautils_config/st-c2h-pfetch1.zip
new file mode 100644
index 0000000000000000000000000000000000000000..47a9e2bf22af5d74892799394bf2a083759ce543
GIT binary patch
literal 102427
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
a@DtQctZWPn3=FJ{tc-uBF)(oa1n~f<IKGAe

literal 0
HcmV?d00001

diff --git a/QDMA/linux-kernel/tools/config/dmautils_config/st-h2c.zip b/QDMA/linux-kernel/tools/config/dmautils_config/st-h2c.zip
new file mode 100644
index 0000000000000000000000000000000000000000..bd5d571360ae445644cae508235359bb653dc278
GIT binary patch
literal 83913
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
F0RSYKP`>~G

literal 0
HcmV?d00001

diff --git a/QDMA/linux-kernel/tools/dma_from_device.c b/QDMA/linux-kernel/tools/dma_from_device.c
new file mode 100644
index 0000000..2393068
--- /dev/null
+++ b/QDMA/linux-kernel/tools/dma_from_device.c
@@ -0,0 +1,233 @@
+/*
+ * This file is part of the QDMA userspace application
+ * to enable the user to execute the QDMA functionality
+ *
+ * Copyright (c) 2018-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is licensed under BSD-style license (found in the
+ * LICENSE file in the root directory of this source tree)
+ */
+
+#define _DEFAULT_SOURCE
+#define _XOPEN_SOURCE 500
+#include <assert.h>
+#include <fcntl.h>
+#include <getopt.h>
+#include <stdint.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+#include <time.h>
+
+#include <sys/mman.h>
+#include <sys/stat.h>
+#include <sys/time.h>
+#include <sys/types.h>
+#include <unistd.h>
+
+#include "dma_xfer_utils.c"
+
+#define DEVICE_NAME_DEFAULT "/dev/qdma01000-MM-0"
+#define SIZE_DEFAULT (32)
+#define COUNT_DEFAULT (1)
+
+static struct option const long_opts[] = {
+	{"device", required_argument, NULL, 'd'},
+	{"address", required_argument, NULL, 'a'},
+	{"size", required_argument, NULL, 's'},
+	{"offset", required_argument, NULL, 'o'},
+	{"count", required_argument, NULL, 'c'},
+	{"file", required_argument, NULL, 'f'},
+	{"help", no_argument, NULL, 'h'},
+	{"verbose", no_argument, NULL, 'v'},
+	{0, 0, 0, 0}
+};
+
+static int test_dma(char *devname, uint64_t addr, uint64_t size,
+		    uint64_t offset, uint64_t count, char *ofname);
+static int no_write = 0;
+
+static void usage(const char *name)
+{
+	int i = 0;
+	fprintf(stdout, "%s\n\n", name);
+	fprintf(stdout, "usage: %s [OPTIONS]\n\n", name);
+	fprintf(stdout, "Read via SGDMA, optionally save output to a file\n\n");
+
+	fprintf(stdout, "  -%c (--%s) device (defaults to %s)\n",
+		long_opts[i].val, long_opts[i].name, DEVICE_NAME_DEFAULT);
+	i++;
+	fprintf(stdout, "  -%c (--%s) the start address on the AXI bus\n",
+	       long_opts[i].val, long_opts[i].name);
+	i++;
+	fprintf(stdout,
+		"  -%c (--%s) size of a single transfer in bytes, default %d.\n",
+		long_opts[i].val, long_opts[i].name, SIZE_DEFAULT);
+	i++;
+	fprintf(stdout, "  -%c (--%s) page offset of transfer\n",
+		long_opts[i].val, long_opts[i].name);
+	i++;
+	fprintf(stdout, "  -%c (--%s) number of transfers, default is %d.\n",
+	       long_opts[i].val, long_opts[i].name, COUNT_DEFAULT);
+	i++;
+	fprintf(stdout,
+		"  -%c (--%s) file to write the data of the transfers\n",
+		long_opts[i].val, long_opts[i].name);
+	i++;
+	fprintf(stdout, "  -%c (--%s) print usage help and exit\n",
+		long_opts[i].val, long_opts[i].name);
+	i++;
+	fprintf(stdout, "  -%c (--%s) verbose output\n",
+		long_opts[i].val, long_opts[i].name);
+	i++;
+}
+
+int main(int argc, char *argv[])
+{
+	int cmd_opt;
+	char *device = DEVICE_NAME_DEFAULT;
+	uint64_t address = 0;
+	uint64_t size = SIZE_DEFAULT;
+	uint64_t offset = 0;
+	uint64_t count = COUNT_DEFAULT;
+	char *ofname = NULL;
+
+	while ((cmd_opt = getopt_long(argc, argv, "vhxc:f:d:a:s:o:", long_opts,
+			    NULL)) != -1) {
+		switch (cmd_opt) {
+		case 0:
+			/* long option */
+			break;
+		case 'd':
+			/* device node name */
+			device = strdup(optarg);
+			break;
+		case 'a':
+			/* RAM address on the AXI bus in bytes */
+			address = getopt_integer(optarg);
+			break;
+			/* RAM size in bytes */
+		case 's':
+			size = getopt_integer(optarg);
+			break;
+		case 'o':
+			offset = getopt_integer(optarg) & 4095;
+			break;
+			/* count */
+		case 'c':
+			count = getopt_integer(optarg);
+			break;
+			/* count */
+		case 'f':
+			ofname = strdup(optarg);
+			break;
+			/* print usage help and exit */
+    		case 'x':
+			no_write++;
+			break;
+		case 'v':
+			verbose = 1;
+			break;
+		case 'h':
+		default:
+			usage(argv[0]);
+			exit(0);
+			break;
+		}
+	}
+	if (verbose)
+	fprintf(stdout,
+		"dev %s, addr 0x%lx, size 0x%lx, offset 0x%lx, count %lu\n",
+		device, address, size, offset, count);
+
+	return test_dma(device, address, size, offset, count, ofname);
+}
+
+static int test_dma(char *devname, uint64_t addr, uint64_t size,
+		    uint64_t offset, uint64_t count, char *ofname)
+{
+	ssize_t rc;
+	uint64_t i;
+	char *buffer = NULL;
+	char *allocated = NULL;
+	struct timespec ts_start, ts_end;
+	int out_fd = -1;
+	int fpga_fd = open(devname, O_RDWR | O_NONBLOCK);
+	long total_time = 0;
+	float result;
+	float avg_time = 0;
+
+	if (fpga_fd < 0) {
+                fprintf(stderr, "unable to open device %s, %d.\n",
+                        devname, fpga_fd);
+		perror("open device");
+                return -EINVAL;
+        }
+
+	/* create file to write data to */
+	if (ofname) {
+		out_fd = open(ofname, O_RDWR | O_CREAT | O_TRUNC | O_SYNC,
+				0666);
+		if (out_fd < 0) {
+                        fprintf(stderr, "unable to open output file %s, %d.\n",
+                                ofname, out_fd);
+			perror("open output file");
+                        rc = -EINVAL;
+                        goto out;
+                }
+	}
+
+	posix_memalign((void **)&allocated, 4096 /*alignment */ , size + 4096);
+	if (!allocated) {
+		fprintf(stderr, "OOM %lu.\n", size + 4096);
+		rc = -ENOMEM;
+		goto out;
+	}
+
+	buffer = allocated + offset;
+	if (verbose)
+	fprintf(stdout, "host buffer 0x%lx, %p.\n", size + 4096, buffer);
+
+	for (i = 0; i < count; i++) {
+		rc = clock_gettime(CLOCK_MONOTONIC, &ts_start);
+		/* lseek & read data from AXI MM into buffer using SGDMA */
+		rc = read_to_buffer(devname, fpga_fd, buffer, size, addr);
+		if (rc < 0)
+			goto out;
+		clock_gettime(CLOCK_MONOTONIC, &ts_end);
+
+		/* subtract the start time from the end time */
+		timespec_sub(&ts_end, &ts_start);
+		total_time += ts_end.tv_nsec;
+		/* a bit less accurate but side-effects are accounted for */
+		if (verbose)
+		fprintf(stdout,
+			"#%lu: CLOCK_MONOTONIC %ld.%09ld sec. read %ld bytes\n",
+			i, ts_end.tv_sec, ts_end.tv_nsec, size);
+
+		/* file argument given? */
+		if ((out_fd >= 0) & (no_write == 0)) {
+			rc = write_from_buffer(ofname, out_fd, buffer,
+					 size, i*size);
+			if (rc < 0)
+				goto out;
+		}
+	}
+	avg_time = (float)total_time/(float)count;
+	result = ((float)size)*1000/avg_time;
+	if (verbose)
+	printf("** Avg time device %s, total time %ld nsec, avg_time = %f, size = %lu, BW = %f \n",
+		devname, total_time, avg_time, size, result);
+	printf("** Average BW = %lu, %f\n", size, result);
+	rc = 0;
+
+out:
+	close(fpga_fd);
+	if (out_fd >= 0)
+		close(out_fd);
+	free(allocated);
+
+	return rc;
+}
diff --git a/QDMA/linux-kernel/tools/dma_from_device_w_udd.c b/QDMA/linux-kernel/tools/dma_from_device_w_udd.c
new file mode 100644
index 0000000..2fb6fcd
--- /dev/null
+++ b/QDMA/linux-kernel/tools/dma_from_device_w_udd.c
@@ -0,0 +1,266 @@
+/*
+ * This file is part of the QDMA userspace application
+ * to enable the user to execute the QDMA functionality
+ *
+ * Copyright (c) 2018-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is licensed under BSD-style license (found in the
+ * LICENSE file in the root directory of this source tree)
+ */
+
+#define _DEFAULT_SOURCE
+#define _XOPEN_SOURCE 500
+#include <assert.h>
+#include <fcntl.h>
+#include <getopt.h>
+#include <stdint.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+#include <time.h>
+
+#include <sys/mman.h>
+#include <sys/stat.h>
+#include <sys/time.h>
+#include <sys/types.h>
+#include <unistd.h>
+
+#include "dma_xfer_utils.c"
+
+#define DEVICE_NAME_DEFAULT "/dev/xdma0_c2h_0"
+#define SIZE_DEFAULT (32)
+#define COUNT_DEFAULT (1)
+
+static struct option const long_opts[] = {
+	{"device", required_argument, NULL, 'd'},
+	{"address", required_argument, NULL, 'a'},
+    {"size", required_argument, NULL, 's'},
+	{"offset", required_argument, NULL, 'o'},
+	{"count", required_argument, NULL, 'c'},
+    {"file", required_argument, NULL, 'f'},
+    {"udd_file", required_argument, NULL, 'u'},
+	{"help", no_argument, NULL, 'h'},
+	{"verbose", no_argument, NULL, 'v'},
+	{0, 0, 0, 0}
+};
+
+static int test_dma(char *devname, uint64_t addr, uint64_t size,
+		    uint64_t offset, uint64_t count, char *ofname, char *uddofname);
+static int no_write = 0;
+
+static void usage(const char *name)
+{
+	int i = 0;
+	fprintf(stdout, "%s\n\n", name);
+	fprintf(stdout, "usage: %s [OPTIONS]\n\n", name);
+	fprintf(stdout, "Read via SGDMA, optionally save output to a file\n\n");
+
+	fprintf(stdout, "  -%c (--%s) device (defaults to %s)\n",
+		long_opts[i].val, long_opts[i].name, DEVICE_NAME_DEFAULT);
+	i++;
+	fprintf(stdout, "  -%c (--%s) the start address on the AXI bus\n",
+	       long_opts[i].val, long_opts[i].name);
+	i++;
+    fprintf(stdout,
+        "  -%c (--%s) size of a single packet in bytes, default %d.\n",
+        long_opts[i].val, long_opts[i].name, SIZE_DEFAULT);
+    i++;
+	fprintf(stdout, "  -%c (--%s) page offset of transfer\n",
+		long_opts[i].val, long_opts[i].name);
+	i++;
+	fprintf(stdout, "  -%c (--%s) number of transfers, default is %d.\n",
+	       long_opts[i].val, long_opts[i].name, COUNT_DEFAULT);
+    i++;
+    fprintf(stdout,
+        "  -%c (--%s) file to write the data of the transfers\n",
+        long_opts[i].val, long_opts[i].name);
+    i++;
+    fprintf(stdout,
+        "  -%c (--%s) file to write the UDD data from the transfers\n",
+        long_opts[i].val, long_opts[i].name);
+	i++;
+	fprintf(stdout, "  -%c (--%s) print usage help and exit\n",
+		long_opts[i].val, long_opts[i].name);
+	i++;
+	fprintf(stdout, "  -%c (--%s) verbose output\n",
+		long_opts[i].val, long_opts[i].name);
+	i++;
+}
+
+int main(int argc, char *argv[])
+{
+	int cmd_opt;
+	char *device = DEVICE_NAME_DEFAULT;
+	uint64_t address = 0;
+	uint64_t size = SIZE_DEFAULT;
+	uint64_t offset = 0;
+	uint64_t count = COUNT_DEFAULT;
+	uint64_t num_pkts = 1;
+    char *ofname = NULL;
+    char *uddofname = NULL;
+
+	while ((cmd_opt = getopt_long(argc, argv, "vhxc:f:d:a:s:o:u:c:", long_opts,
+			    NULL)) != -1) {
+		switch (cmd_opt) {
+		case 0:
+			/* long option */
+			break;
+		case 'd':
+			/* device node name */
+			device = strdup(optarg);
+			break;
+		case 'a':
+			/* RAM address on the AXI bus in bytes */
+			address = getopt_integer(optarg);
+			break;
+			/* RAM size in bytes */
+		case 's':
+			size = getopt_integer(optarg);
+			break;
+		case 'o':
+			offset = getopt_integer(optarg) & 4095;
+			break;
+			/* count */
+		case 'c':
+			count = getopt_integer(optarg);
+			break;
+			/* count */
+        case 'f':
+            ofname = strdup(optarg);
+            break;
+        case 'u':
+            uddofname = strdup(optarg);
+            break;
+			/* print usage help and exit */
+    		case 'x':
+			no_write++;
+			break;
+		case 'v':
+			verbose = 1;
+			break;
+		case 'h':
+		default:
+			usage(argv[0]);
+			exit(0);
+			break;
+		}
+	}
+	if (verbose)
+	fprintf(stdout,
+		"dev %s, addr 0x%lx, size 0x%lx, offset 0x%lx, count %lu\n",
+		device, address, size, offset, count);
+
+	return test_dma(device, address, size, offset, count, ofname, uddofname);
+}
+
+static int test_dma(char *devname, uint64_t addr, uint64_t size,
+		    uint64_t offset, uint64_t count, char *ofname, char *uddofname)
+{
+	ssize_t rc;
+	uint64_t i;
+	char *buffer = NULL;
+	char *allocated = NULL;
+	struct timespec ts_start, ts_end;
+	int out_fd = -1;
+	int out_udd_fd = -1;
+	int fpga_fd = open(devname, O_RDWR | O_NONBLOCK);
+	long total_time = 0;
+	float result;
+	float avg_time = 0;
+	uint64_t num_pgs = 0;
+
+	if (fpga_fd < 0) {
+                fprintf(stderr, "unable to open device %s, %d.\n",
+                        devname, fpga_fd);
+		perror("open device");
+                return -EINVAL;
+        }
+
+	/* create file to write data to */
+	if (ofname) {
+        out_fd = open(ofname, O_RDWR | O_CREAT | O_TRUNC | O_SYNC,
+                0666);
+        if (out_fd < 0) {
+                        fprintf(stderr, "unable to open output file %s, %d.\n",
+                                ofname, out_fd);
+            perror("open output file");
+                        rc = -EINVAL;
+                        goto out;
+                }
+        out_udd_fd = open(uddofname, O_RDWR | O_CREAT | O_TRUNC | O_SYNC,
+                0666);
+        if (out_udd_fd < 0) {
+                        fprintf(stderr, "unable to open output file %s, %d.\n",
+                                uddofname, out_udd_fd);
+            perror("open output file");
+                        rc = -EINVAL;
+                        goto out;
+                }
+	}
+
+	num_pgs = (((size + offset) * count) >> 12) + 1;
+	posix_memalign((void **)&allocated, 4096 /*alignment */ , num_pgs * 4096);
+	if (!allocated) {
+		fprintf(stderr, "OOM %lu.\n", num_pgs * 4096);
+		rc = -ENOMEM;
+		goto out;
+	}
+
+	if (verbose)
+	    fprintf(stdout, "host buffer 0x%lx, %p.\n", size + 4096, buffer);
+
+    buffer = allocated;
+    rc = read_to_buffer(devname, fpga_fd, buffer, ((size + offset) * count), addr);
+    if (rc < 0)
+        goto out;
+	for (i = 0; i < count; i++) {
+		rc = clock_gettime(CLOCK_MONOTONIC, &ts_start);
+		/* lseek & read data from AXI MM into buffer using SGDMA */
+		clock_gettime(CLOCK_MONOTONIC, &ts_end);
+
+		/* subtract the start time from the end time */
+		timespec_sub(&ts_end, &ts_start);
+		total_time += ts_end.tv_nsec;
+		/* a bit less accurate but side-effects are accounted for */
+		if (verbose)
+		fprintf(stdout,
+			"#%lu: CLOCK_MONOTONIC %ld.%09ld sec. read %ld bytes\n",
+			i, ts_end.tv_sec, ts_end.tv_nsec, size);
+
+		/* file argument given? */
+		if ((out_udd_fd >= 0) & (no_write == 0)) {
+		    rc = write_from_buffer(uddofname, out_udd_fd, buffer,
+			     offset, i*offset);
+		    if (rc < 0)
+			goto out;
+		}
+		buffer += offset; /* point to actual data */
+		/* file argument given? */
+		if ((out_fd >= 0) & (no_write == 0)) {
+			rc = write_from_buffer(ofname, out_fd, buffer,
+					 size, i*size);
+			if (rc < 0)
+				goto out;
+		}
+		buffer += size; /* point to next packet */
+	}
+	avg_time = (float)total_time/(float)count;
+	result = ((float)size)*1000/avg_time;
+	if (verbose)
+	printf("** Avg time device %s, total time %ld nsec, avg_time = %f, size = %lu, BW = %f \n",
+		devname, total_time, avg_time, size, result);
+	printf("** Average BW = %lu, %f\n", size, result);
+	rc = 0;
+
+out:
+	close(fpga_fd);
+    if (out_fd >= 0)
+        close(out_fd);
+    if (out_udd_fd >= 0)
+        close(out_udd_fd);
+	free(allocated);
+
+	return rc;
+}
diff --git a/QDMA/linux-kernel/tools/dma_to_device.c b/QDMA/linux-kernel/tools/dma_to_device.c
new file mode 100644
index 0000000..b8710f8
--- /dev/null
+++ b/QDMA/linux-kernel/tools/dma_to_device.c
@@ -0,0 +1,266 @@
+/*
+ * This file is part of the QDMA userspace application
+ * to enable the user to execute the QDMA functionality
+ *
+ * Copyright (c) 2018-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is licensed under BSD-style license (found in the
+ * LICENSE file in the root directory of this source tree)
+ */
+
+#define _DEFAULT_SOURCE
+#define _XOPEN_SOURCE 500
+#include <assert.h>
+#include <fcntl.h>
+#include <getopt.h>
+#include <stdint.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+#include <errno.h>
+#include <time.h>
+
+#include <sys/mman.h>
+#include <sys/stat.h>
+#include <sys/time.h>
+#include <sys/types.h>
+#include <unistd.h>
+
+#include "dma_xfer_utils.c"
+
+static struct option const long_opts[] = {
+	{"device", required_argument, NULL, 'd'},
+	{"address", required_argument, NULL, 'a'},
+	{"size", required_argument, NULL, 's'},
+	{"offset", required_argument, NULL, 'o'},
+	{"count", required_argument, NULL, 'c'},
+	{"data infile", required_argument, NULL, 'f'},
+	{"data outfile", required_argument, NULL, 'w'},
+	{"help", no_argument, NULL, 'h'},
+	{"verbose", no_argument, NULL, 'v'},
+	{0, 0, 0, 0}
+};
+
+#define DEVICE_NAME_DEFAULT "/dev/qdma01000-MM-0"
+#define SIZE_DEFAULT (32)
+#define COUNT_DEFAULT (1)
+
+
+static int test_dma(char *devname, uint64_t addr, uint64_t size,
+		    uint64_t offset, uint64_t count, char *filename, char *);
+
+static void usage(const char *name)
+{
+	int i = 0;
+
+	fprintf(stdout, "%s\n\n", name);
+	fprintf(stdout, "usage: %s [OPTIONS]\n\n", name);
+	fprintf(stdout, 
+		"Write via SGDMA, optionally read input from a file.\n\n");
+
+	fprintf(stdout, "  -%c (--%s) device (defaults to %s)\n",
+		long_opts[i].val, long_opts[i].name, DEVICE_NAME_DEFAULT);
+	i++;
+	fprintf(stdout, "  -%c (--%s) the start address on the AXI bus\n",
+		long_opts[i].val, long_opts[i].name);
+	i++;
+	fprintf(stdout,
+		"  -%c (--%s) size of a single transfer in bytes, default %d,\n",
+		long_opts[i].val, long_opts[i].name, SIZE_DEFAULT);
+	i++;
+	fprintf(stdout, "  -%c (--%s) page offset of transfer\n",
+		long_opts[i].val, long_opts[i].name);
+	i++;
+	fprintf(stdout, "  -%c (--%s) number of transfers, default %d\n",
+		long_opts[i].val, long_opts[i].name, COUNT_DEFAULT);
+	i++;
+	fprintf(stdout, "  -%c (--%s) filename to read the data from.\n",
+		long_opts[i].val, long_opts[i].name);
+	i++;
+	fprintf(stdout,
+		"  -%c (--%s) filename to write the data of the transfers\n",
+		long_opts[i].val, long_opts[i].name);
+	i++;
+	fprintf(stdout, "  -%c (--%s) print usage help and exit\n",
+		long_opts[i].val, long_opts[i].name);
+	i++;
+	fprintf(stdout, "  -%c (--%s) verbose output\n",
+		long_opts[i].val, long_opts[i].name);
+	i++;
+}
+
+int main(int argc, char *argv[])
+{
+	int cmd_opt;
+	char *device = DEVICE_NAME_DEFAULT;
+	uint64_t address = 0;
+	uint64_t size = SIZE_DEFAULT;
+	uint64_t offset = 0;
+	uint64_t count = COUNT_DEFAULT;
+	char *infname = NULL;
+	char *ofname = NULL;
+
+	while ((cmd_opt =
+		getopt_long(argc, argv, "vhc:f:d:a:s:o:w:", long_opts,
+			    NULL)) != -1) {
+		switch (cmd_opt) {
+		case 0:
+			/* long option */
+			break;
+		case 'd':
+			/* device node name */
+			//fprintf(stdout, "'%s'\n", optarg);
+			device = strdup(optarg);
+			break;
+		case 'a':
+			/* RAM address on the AXI bus in bytes */
+			address = getopt_integer(optarg);
+			break;
+		case 's':
+			/* size in bytes */
+			size = getopt_integer(optarg);
+			break;
+		case 'o':
+			offset = getopt_integer(optarg) & 4095;
+			break;
+			/* count */
+		case 'c':
+			count = getopt_integer(optarg);
+			break;
+			/* count */
+		case 'f':
+			infname = strdup(optarg);
+			break;
+		case 'w':
+			ofname = strdup(optarg);
+			break;
+			/* print usage help and exit */
+		case 'v':
+			verbose = 1;
+			break;
+		case 'h':
+		default:
+			usage(argv[0]);
+			exit(0);
+			break;
+		}
+	}
+
+	if (verbose)
+		fprintf(stdout, 
+		"dev %s, address 0x%lx, size 0x%lx, offset 0x%lx, count %lu\n",
+		device, address, size, offset, count);
+
+	return test_dma(device, address, size, offset, count, infname, ofname);
+}
+
+static int test_dma(char *devname, uint64_t addr, uint64_t size,
+		    uint64_t offset, uint64_t count, char *infname,
+		    char *ofname)
+{
+	uint64_t i;
+	ssize_t rc;
+	char *buffer = NULL;
+	char *allocated = NULL;
+	struct timespec ts_start, ts_end;
+	int infile_fd = -1;
+	int outfile_fd = -1;
+	int fpga_fd = open(devname, O_RDWR);
+	long total_time = 0;
+	float result;
+	float avg_time = 0;
+
+	if (fpga_fd < 0) {
+		fprintf(stderr, "unable to open device %s, %d.\n",
+			devname, fpga_fd);
+		perror("open device");
+		return -EINVAL;
+	}
+
+	if (infname) {
+		infile_fd = open(infname, O_RDONLY);
+		if (infile_fd < 0) {
+			fprintf(stderr, "unable to open input file %s, %d.\n",
+				infname, infile_fd);
+			perror("open input file");
+			rc = -EINVAL;
+			goto out;
+		}
+	}
+
+	if (ofname) {
+		outfile_fd =
+		    open(ofname, O_RDWR | O_CREAT | O_TRUNC | O_SYNC,
+			 0666);
+		if (outfile_fd < 0) {
+			fprintf(stderr, "unable to open output file %s, %d.\n",
+				ofname, outfile_fd);
+			perror("open output file");
+			rc = -EINVAL;
+			goto out;
+		}
+	}
+
+	posix_memalign((void **)&allocated, 4096 /*alignment */ , size + 4096);
+	if (!allocated) {
+		fprintf(stderr, "OOM %lu.\n", size + 4096);
+		rc = -ENOMEM;
+		goto out;
+	}
+	buffer = allocated + offset;
+	if (verbose)
+		fprintf(stdout, "host buffer 0x%lx = %p\n",
+			size + 4096, buffer); 
+
+	if (infile_fd >= 0) {
+		rc = read_to_buffer(infname, infile_fd, buffer, size, 0);
+		if (rc < 0)
+			goto out;
+	}
+
+	for (i = 0; i < count; i++) {
+		/* write buffer to AXI MM address using SGDMA */
+		rc = clock_gettime(CLOCK_MONOTONIC, &ts_start);
+
+		rc = write_from_buffer(devname, fpga_fd, buffer, size, addr);
+		if (rc < 0)
+			goto out;
+
+		rc = clock_gettime(CLOCK_MONOTONIC, &ts_end);
+		/* subtract the start time from the end time */
+		timespec_sub(&ts_end, &ts_start);
+		total_time += ts_end.tv_nsec;
+		/* a bit less accurate but side-effects are accounted for */
+		if (verbose)
+		fprintf(stdout,
+			"#%lu: CLOCK_MONOTONIC %ld.%09ld sec. write %ld bytes\n",
+			i, ts_end.tv_sec, ts_end.tv_nsec, size); 
+			
+		if (outfile_fd >= 0) {
+			rc = write_from_buffer(ofname, outfile_fd, buffer,
+						 size, i * size);
+			if (rc < 0)
+				goto out;
+		}
+	}
+	avg_time = (float)total_time/(float)count;
+	result = ((float)size)*1000/avg_time;
+	if (verbose)
+	printf("** Avg time device %s, total time %ld nsec, avg_time = %f, size = %lu, BW = %f \n",
+		devname, total_time, avg_time, size, result);
+
+	printf("** Average BW = %lu, %f\n",size, result);
+	rc = 0;
+
+out:
+	close(fpga_fd);
+	if (infile_fd >= 0)
+		close(infile_fd);
+	if (outfile_fd >= 0)
+		close(outfile_fd);
+	free(allocated);
+
+	return rc;
+}
diff --git a/QDMA/linux-kernel/tools/dma_xfer_utils.c b/QDMA/linux-kernel/tools/dma_xfer_utils.c
new file mode 100644
index 0000000..ceff6d9
--- /dev/null
+++ b/QDMA/linux-kernel/tools/dma_xfer_utils.c
@@ -0,0 +1,198 @@
+/*
+ * This file is part of the QDMA userspace application
+ * to enable the user to execute the QDMA functionality
+ *
+ * Copyright (c) 2018-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is licensed under BSD-style license (found in the
+ * LICENSE file in the root directory of this source tree)
+ */
+
+#include <stdio.h>
+#include <stdint.h>
+#include <unistd.h>
+#include <time.h>
+#include <errno.h>
+#include <sys/types.h>
+
+/*
+ * man 2 write:
+ * On Linux, write() (and similar system calls) will transfer at most
+ * 	0x7ffff000 (2,147,479,552) bytes, returning the number of bytes
+ *	actually transferred.  (This is true on both 32-bit and 64-bit
+ *	systems.)
+ */
+
+#define RW_MAX_SIZE	0x7ffff000
+
+int verbose = 0;
+
+uint64_t getopt_integer(char *optarg)
+{
+	int rc;
+	uint64_t value;
+
+	rc = sscanf(optarg, "0x%lx", &value);
+	if (rc <= 0)
+		rc = sscanf(optarg, "%lu", &value);
+	//printf("sscanf() = %d, value = 0x%lx\n", rc, value);
+
+	return value;
+}
+
+ssize_t read_to_buffer(char *fname, int fd, char *buffer, uint64_t size,
+			uint64_t base)
+{
+	ssize_t rc;
+	uint64_t count = 0;
+	char *buf = buffer;
+	off_t offset = base;
+
+	do { /* Support zero byte transfer */
+		uint64_t bytes = size - count;
+
+		if (bytes > RW_MAX_SIZE)
+			bytes = RW_MAX_SIZE;
+
+		if (offset) {
+			rc = lseek(fd, offset, SEEK_SET);
+			if (rc < 0) {
+				fprintf(stderr,
+					"%s, seek off 0x%lx failed %zd.\n",
+					fname, offset, rc);
+				perror("seek file");
+				return -EIO;
+			}
+			if (rc != offset) {
+				fprintf(stderr,
+					"%s, seek off 0x%lx != 0x%lx.\n",
+					fname, rc, offset);
+				return -EIO;
+			}
+		}
+
+		/* read data from file into memory buffer */
+		rc = read(fd, buf, bytes);
+		if (rc < 0) {
+			fprintf(stderr,
+				"%s, read off 0x%lx + 0x%lx failed %zd.\n",
+				fname, offset, bytes, rc);
+			perror("read file");
+			return -EIO;
+		}
+		if (rc != bytes) {
+			fprintf(stderr,
+				"%s, R off 0x%lx, 0x%lx != 0x%lx.\n",
+				fname, count, rc, bytes);
+			return -EIO;
+		}
+
+		count += bytes;
+		buf += bytes;
+		offset += bytes;
+	} while (count < size);
+
+	if (count != size) {
+		fprintf(stderr, "%s, R failed 0x%lx != 0x%lx.\n",
+				fname, count, size);
+		return -EIO;
+	}
+	return count;
+}
+
+ssize_t write_from_buffer(char *fname, int fd, char *buffer, uint64_t size,
+			uint64_t base)
+{
+	ssize_t rc;
+	uint64_t count = 0;
+	char *buf = buffer;
+	off_t offset = base;
+
+	do { /* Support zero byte transfer */
+		uint64_t bytes = size - count;
+
+		if (bytes > RW_MAX_SIZE)
+			bytes = RW_MAX_SIZE;
+
+		if (offset) {
+			rc = lseek(fd, offset, SEEK_SET);
+			if (rc < 0) {
+				fprintf(stderr,
+					"%s, seek off 0x%lx failed %zd.\n",
+					fname, offset, rc);
+				perror("seek file");
+				return -EIO;
+			}
+			if (rc != offset) {
+				fprintf(stderr,
+					"%s, seek off 0x%lx != 0x%lx.\n",
+					fname, rc, offset);
+				return -EIO;
+			}
+		}
+
+		/* write data to file from memory buffer */
+		rc = write(fd, buf, bytes);
+		if (rc < 0) {
+			fprintf(stderr, "%s, W off 0x%lx, 0x%lx failed %zd.\n",
+				fname, offset, bytes, rc);
+			perror("write file");
+			return -EIO;
+		}
+		if (rc != bytes) {
+			fprintf(stderr, "%s, W off 0x%lx, 0x%lx != 0x%lx.\n",
+				fname, offset, rc, bytes);
+			return -EIO;
+		}
+
+		count += bytes;
+		buf += bytes;
+		offset += bytes;
+	} while (count < size);
+
+	if (count != size) {
+		fprintf(stderr, "%s, R failed 0x%lx != 0x%lx.\n",
+				fname, count, size);
+		return -EIO;
+	}
+	return count;
+}
+
+
+/* Subtract timespec t2 from t1
+ *
+ * Both t1 and t2 must already be normalized
+ * i.e. 0 <= nsec < 1000000000
+ */
+static int timespec_check(struct timespec *t)
+{
+	if ((t->tv_nsec < 0) || (t->tv_nsec >= 1000000000))
+		return -1;
+	return 0;
+
+}
+
+void timespec_sub(struct timespec *t1, struct timespec *t2)
+{
+	if (timespec_check(t1) < 0) {
+		fprintf(stderr, "invalid time #1: %lld.%.9ld.\n",
+			(long long)t1->tv_sec, t1->tv_nsec);
+		return;
+	}
+	if (timespec_check(t2) < 0) {
+		fprintf(stderr, "invalid time #2: %lld.%.9ld.\n",
+			(long long)t2->tv_sec, t2->tv_nsec);
+		return;
+	}
+	t1->tv_sec -= t2->tv_sec;
+	t1->tv_nsec -= t2->tv_nsec;
+	if (t1->tv_nsec >= 1000000000) {
+		t1->tv_sec++;
+		t1->tv_nsec -= 1000000000;
+	} else if (t1->tv_nsec < 0) {
+		t1->tv_sec--;
+		t1->tv_nsec += 1000000000;
+	}
+}
+
diff --git a/QDMA/linux-kernel/tools/dmautils.c b/QDMA/linux-kernel/tools/dmautils.c
new file mode 100644
index 0000000..df81356
--- /dev/null
+++ b/QDMA/linux-kernel/tools/dmautils.c
@@ -0,0 +1,1489 @@
+/*
+ * This file is part of the QDMA userspace application
+ * to enable the user to execute the QDMA functionality
+ *
+ * Copyright (c) 2018-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is licensed under BSD-style license (found in the
+ * LICENSE file in the root directory of this source tree)
+ */
+
+#include <semaphore.h>
+#include <time.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <sys/shm.h>
+#include <sys/wait.h>
+#include <fcntl.h>
+#include <stdbool.h>
+#include <linux/types.h>
+#include <getopt.h>
+#include <stdint.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+#include <ctype.h>
+#include <signal.h>
+#include <stddef.h>
+#include <errno.h>
+#include <error.h>
+#include <sys/mman.h>
+#include <sys/time.h>
+#include <sys/ioctl.h>
+#include </usr/include/pthread.h>
+#include <libaio.h>
+#include <sys/sysinfo.h>
+
+#define SEC2NSEC           1000000000
+#define SEC2USEC           1000000
+#define DEFAULT_PAGE_SIZE  4096
+#define PAGE_SHIFT         12
+
+#define DATA_VALIDATION 0
+
+static struct option const long_opts[] = {
+	{"config", required_argument, NULL, 'c'},
+	{0, 0, 0, 0}
+};
+
+static void prep_reg_dump(void);
+static void prep_pci_dump(void);
+
+static void usage(const char *name)
+{
+	int i = 0;
+	fprintf(stdout, "%s\n\n", name);
+	fprintf(stdout, "usage: %s [OPTIONS]\n\n", name);
+
+	fprintf(stdout, "  -%c (--%s) config file that has configration for IO\n",
+		long_opts[i].val, long_opts[i].name);
+	i++;
+}
+
+static char * strip_blanks(char *word, long unsigned int *banlks)
+{
+    char *p = word;
+    unsigned int i = 0;
+
+    while (isblank(p[0])) {
+        p++;
+        i++;
+    }
+    *banlks = i;
+
+    return p;
+}
+
+static unsigned int copy_value(char *src, char *dst, unsigned int max_len)
+{
+    char *p = src;
+    unsigned int i = 0;
+
+    while (max_len && !isspace(p[0])) {
+        dst[i] = p[0];
+        p++;
+        i++;
+        max_len--;
+    }
+
+    return i;
+}
+
+static char * strip_comments(char *word)
+{
+	char *p = strtok(word, "#");
+
+	return p;
+}
+
+#define MSEC2NSEC 1000000
+#define Q_ADD_CMD_LEN 100
+#define Q_START_CMD_LEN 500
+#define Q_STOP_CMD_LEN 200
+#define Q_DEL_CMD_LEN 200
+#define Q_DUMP_CMD_LEN 200
+#define REG_DUMP_CMD_LEN 200
+#define CMPL_STATUS_ACC_CMD_LEN 200
+#define PCI_DUMP_CMD_LEN 100
+
+#define QDMA_UL_IMM_DUMP_C2H_DATA      (1 << 17)
+#define QDMA_UL_STOP_C2H_TRANSFER      (1 << 18)
+#define QDMA_UL_DROP_ENABLE            (1 << 19)
+#define QDMA_UL_IMM_DUMP_CMPT_FIFO     (1 << 20)
+#define QDMA_UL_STOP_CMPT_TRANSFER     (1 << 21)
+
+//#define DEBUG
+
+enum q_mode {
+	Q_MODE_MM,
+	Q_MODE_ST,
+	Q_MODES
+};
+
+enum q_dir {
+	Q_DIR_H2C,
+	Q_DIR_C2H,
+	Q_DIR_BI,
+	Q_DIRS
+};
+
+#define THREADS_SET_CPU_AFFINITY 0
+
+struct io_info {
+	unsigned int num_req_submitted;
+	unsigned int num_req_completed;
+	struct list_head *head;
+	struct list_head *tail;
+	sem_t llock;
+	int pid;
+	pthread_t evt_id;
+	char q_name[20];
+	char q_add[Q_ADD_CMD_LEN];
+	char q_start[Q_START_CMD_LEN];
+	char q_stop[Q_STOP_CMD_LEN];
+	char q_del[Q_DEL_CMD_LEN];
+	char q_dump[Q_DUMP_CMD_LEN];
+	char trig_mode[10];
+	unsigned char q_ctrl;
+	unsigned int q_added;
+	unsigned int q_started;
+	unsigned int q_wait_for_stop;
+	int fd;
+	unsigned int pf;
+	unsigned int qid;
+	enum q_mode mode;
+	enum q_dir dir;
+	unsigned int idx_tmr;
+	unsigned int idx_cnt;
+	unsigned int idx_rngsz;
+	unsigned int pfetch_en;
+	unsigned int pkt_burst;
+	unsigned int pkt_sz;
+	unsigned int cmptsz;
+#ifdef DEBUG
+	unsigned long long total_nodes;
+	unsigned long long freed_nodes;
+#endif
+	unsigned int thread_id;
+#if THREADS_SET_CPU_AFFINITY
+	int cpu;
+#endif
+};
+
+struct list_head {
+	struct list_head *next;
+	unsigned int max_events;
+	unsigned int completed_events;
+	io_context_t ctxt;
+};
+
+#define container_of(ptr, type, member) ({                      \
+        const struct iocb *__mptr = (ptr);    \
+        (type *)( (char *)__mptr - offsetof(type,member) );})
+
+static unsigned int io_exit = 0;
+static unsigned int force_exit = 0;
+static unsigned int num_q = 0;
+static unsigned int pkt_sz = 0;
+static unsigned int num_pkts;
+static unsigned int tsecs = 0;
+struct io_info *info = NULL;
+static char cfg_name[20];
+static unsigned int pci_bus = 0;
+static unsigned int pci_dev = 0;
+unsigned int num_thrds = 0;
+unsigned int num_thrds_per_q = 1;
+int shmid;
+int base_pid;
+enum q_mode mode;
+enum q_dir dir;
+unsigned int num_pf = 0;
+unsigned int pf_start = 0;
+unsigned int q_start = 0;
+unsigned int idx_rngsz = 0;
+unsigned int idx_tmr = 0;
+unsigned int idx_cnt = 0;
+unsigned int pfetch_en = 0;
+unsigned int cmptsz = 0;
+unsigned int no_memcpy = 1;
+char trigmode[10];
+char reg_dump[REG_DUMP_CMD_LEN];
+char pci_dump[PCI_DUMP_CMD_LEN];
+unsigned int dump_en = 0;
+static struct timespec g_ts_start;
+static unsigned char *q_lst_stop = NULL;
+int q_lst_stop_mid;
+int *child_pid_lst = NULL;
+#if THREADS_SET_CPU_AFFINITY
+unsigned int num_processors = 1;
+#endif
+#if DATA_VALIDATION
+unsigned short valid_data[2*1024];
+#endif
+
+static void clear_events(struct io_info *_info, struct list_head *node);
+static int setup_thrd_env(struct io_info *_info, unsigned char is_new_fd);
+static int setup_pf_env(struct io_info *_info);
+
+static int arg_read_int(char *s, uint32_t *v)
+{
+    char *p = NULL;
+
+
+    *v = strtoul(s, &p, 0);
+    if (*p && (*p != '\n') && !isblank(*p)) {
+	printf("Error:something not right%s %s %s",s, p, isblank(*p)? "true": "false");
+        return -EINVAL;
+    }
+    return 0;
+}
+
+static void dump_thrd_info(struct io_info *_info) {
+	unsigned int i;
+
+	printf("q_name = %s\n", info->q_name);
+	printf("dir = %u\n", _info->dir);
+	printf("mode = %u\n", _info->mode);
+	printf("idx_cnt = %u\n", _info->idx_cnt);
+	printf("idx_rngsz = %u\n", _info->idx_rngsz);
+	printf("idx_tmr = %u\n", _info->idx_tmr);
+	printf("pf = %x\n", _info->pf);
+	printf("qid = %u\n", _info->qid);
+	printf("fd = %u\n", _info->fd);
+	printf("trig_mode = %s\n", _info->trig_mode);
+	printf("q_ctrl = %u\n", _info->q_ctrl);
+	printf("q_added = %u\n", _info->q_added);
+	printf("q_started = %u\n", _info->q_started);
+#if THREADS_SET_CPU_AFFINITY
+	printf("cpu = %u\n", _info->cpu);
+#endif
+}
+
+struct dma_meminfo {
+	void *memptr;
+	unsigned int num_blks;
+};
+
+#define USE_MEMPOOL
+
+struct mempool_handle {
+	void *mempool;
+	unsigned int mempool_blkidx;
+	unsigned int mempool_blksz;
+	unsigned int total_memblks;
+	struct dma_meminfo *mempool_info;
+#ifdef DEBUG
+	unsigned int id;
+	unsigned int loop;
+#endif
+};
+
+static struct mempool_handle ctxhandle;
+static struct mempool_handle iocbhandle;
+static struct mempool_handle datahandle;
+
+static void mempool_create(struct mempool_handle *mpool, unsigned int entry_size, unsigned int max_entries)
+{
+#ifdef USE_MEMPOOL
+	if (posix_memalign((void **)&mpool->mempool, DEFAULT_PAGE_SIZE,
+			   max_entries * (entry_size + sizeof(struct dma_meminfo)))) {
+		printf("OOM\n");
+		exit(1);
+	}
+	mpool->mempool_info = (struct dma_meminfo *)(((char *)mpool->mempool) + (max_entries * entry_size));
+#endif
+	mpool->mempool_blksz = entry_size;
+	mpool->total_memblks = max_entries;
+	mpool->mempool_blkidx = 0;
+}
+
+static void mempool_free(struct mempool_handle *mpool)
+{
+#ifdef USE_MEMPOOL
+	free(mpool->mempool);
+	mpool->mempool = NULL;
+#endif
+}
+
+static void *dma_memalloc(struct mempool_handle *mpool, unsigned int num_blks)
+{
+	unsigned int _mempool_blkidx = mpool->mempool_blkidx;
+	unsigned int tmp_blkidx = _mempool_blkidx;
+	unsigned int max_blkcnt = tmp_blkidx + num_blks;
+	unsigned int i, avail = 0;
+	void *memptr = NULL;
+	char *mempool = mpool->mempool;
+	struct dma_meminfo *_mempool_info = mpool->mempool_info;
+	unsigned int _total_memblks = mpool->total_memblks;
+
+#ifdef USE_MEMPOOL
+	if (max_blkcnt > _total_memblks) {
+		tmp_blkidx = 0;
+		max_blkcnt = num_blks;
+	}
+	for (i = tmp_blkidx; (i < _total_memblks) && (i < max_blkcnt); i++) {
+		if (_mempool_info[i].memptr) { /* occupied blks ahead */
+			i += _mempool_info[i].num_blks;
+			max_blkcnt = i + num_blks;
+			avail = 0;
+			tmp_blkidx = i;
+		} else
+			avail++;
+		if (max_blkcnt > _total_memblks) { /* reached the end of mempool. circle through*/
+			if (num_blks > _mempool_blkidx) return NULL; /* Continuous num_blks not available */
+			i = 0;
+			avail = 0;
+			max_blkcnt = num_blks;
+			tmp_blkidx = 0;
+		}
+	}
+	if (avail < num_blks) { /* no required available blocks */
+		return NULL;
+	}
+
+	memptr = &(mempool[tmp_blkidx * mpool->mempool_blksz]);
+	_mempool_info[tmp_blkidx].memptr = memptr;
+	_mempool_info[tmp_blkidx].num_blks = num_blks;
+	mpool->mempool_blkidx = tmp_blkidx + num_blks;
+#else
+	memptr = calloc(num_blks, mpool->mempool_blksz);
+#endif
+
+	return memptr;
+}
+
+static void dma_free(struct mempool_handle *mpool, void *memptr)
+{
+#ifdef USE_MEMPOOL
+	struct dma_meminfo *_meminfo = mpool->mempool_info;
+	unsigned int _total_memblks = mpool->total_memblks;
+	unsigned int idx;
+
+	if (!memptr) return;
+
+	idx = (memptr - mpool->mempool)/mpool->mempool_blksz;
+#ifdef DEBUG
+	if (idx >= _total_memblks) {
+		printf("Asserting: %u:Invalid memory index %u acquired\n", mpool->id, idx);
+		while(1);
+	}
+#endif
+
+	_meminfo[idx].num_blks = 0;
+	_meminfo[idx].memptr = NULL;
+#else
+	free(memptr);
+#endif
+}
+
+static void create_thread_info(void)
+{
+	unsigned int base = 0;
+	unsigned int dir_factor = 1;
+	unsigned int q_ctrl = 1;
+	unsigned int i, j, k;
+	struct io_info *_info;
+	int last_fd = -1;
+	int s;
+	unsigned char is_new_fd = 1;
+	char reg_cmd[100] = {'\0'};
+#if THREADS_SET_CPU_AFFINITY
+	int h2c_cpu = 0;
+	int max_h2c_cpu = (num_processors / 2);
+	int c2h_cpu = max_h2c_cpu;
+	int max_c2h_cpu = (num_processors / 2) + ((num_processors % 2) ? 1 : 0);
+#endif
+
+	if (dir == Q_DIR_BI)
+		dir_factor = 2;
+	if ((shmid = shmget(IPC_PRIVATE, num_thrds * sizeof(struct io_info), IPC_CREAT | 0666)) < 0)
+	{
+		perror("smget returned -1\n");
+		error(-1, errno, " ");
+		exit(-1);
+	}
+	if ((q_lst_stop_mid = shmget(IPC_PRIVATE, dir_factor * num_q * num_pf, IPC_CREAT | 0666)) < 0)
+	{
+		perror("smget returned -1\n");
+		error(-1, errno, " ");
+		exit(-1);
+	}
+	if ((q_lst_stop = (unsigned char *) shmat(q_lst_stop_mid, NULL, 0)) == (unsigned char *) -1) {
+		perror("Process shmat returned NULL\n");
+		error(-1, errno, " ");
+		exit(1);
+	}
+	memset(q_lst_stop, 0 , num_q);
+	if (shmdt(q_lst_stop) == -1) {
+		perror("shmdt returned -1\n");
+	        error(-1, errno, " ");
+	}
+	if ((_info = (struct io_info *) shmat(shmid, NULL, 0)) == (struct io_info *) -1) {
+		perror("Process shmat returned NULL\n");
+		error(-1, errno, " ");
+	}
+	prep_pci_dump();
+	prep_reg_dump();
+	if ((mode == Q_MODE_ST) && (dir != Q_DIR_H2C)) {
+		snprintf(reg_cmd, 100, "dmactl qdma%05x reg write bar 2 0x%x %d",
+			 (pci_bus << 12) | (pci_dev << 4) | pf_start, 0x50,
+			 cmptsz/* | QDMA_UL_DROP_ENABLE*/);
+		system(reg_cmd);
+		memset(reg_cmd, '\0', 100);
+		snprintf(reg_cmd, 100, "dmactl qdma%05x reg write bar 2 0x%x %d",
+			 (pci_bus << 12) | (pci_dev << 4) | pf_start, 0x90, pkt_sz);
+		printf("%s\n", reg_cmd);
+		system(reg_cmd);
+		usleep(1000);
+		memset(reg_cmd, '\0', 100);
+	}
+
+	base = 0;
+	for (k = 0; k < num_pf; k++) {
+		for (i = 0 ; i < num_q; i++) {
+			q_ctrl = 1;
+#if THREADS_SET_CPU_AFFINITY
+			if (h2c_cpu >= max_h2c_cpu)
+				h2c_cpu = 0;
+			if (c2h_cpu >= (max_h2c_cpu + max_h2c_cpu))
+				c2h_cpu = max_h2c_cpu;
+#endif
+			for (j = 0; j < num_thrds_per_q; j++) {
+				is_new_fd = 1;
+				if ((dir == Q_DIR_H2C) || (dir == Q_DIR_BI)) {
+					snprintf(_info[base].q_name, 20, "qdma%02x%02x%01x-%s-%d", pci_bus, pci_dev,
+						pf_start+k, (mode == Q_MODE_MM) ? "MM" : "ST", q_start + i);
+					_info[base].dir = Q_DIR_H2C;
+					_info[base].mode = mode;
+					_info[base].idx_rngsz = idx_rngsz;
+					_info[base].pf = (pci_bus << 12) | (pci_dev << 4) | (pf_start + k);
+					_info[base].qid = q_start + i;
+					_info[base].q_ctrl = q_ctrl;
+					_info[base].fd = last_fd;
+					_info[base].pkt_burst = num_pkts;
+					_info[base].pkt_sz = pkt_sz;
+#if THREADS_SET_CPU_AFFINITY
+					_info[base].cpu = h2c_cpu;
+#endif
+					sem_init(&_info[base].llock, 0, 1);
+					if (q_ctrl != 0) {
+						last_fd = setup_thrd_env(&_info[base], is_new_fd);
+					}
+					_info[base].thread_id = base;
+//					dump_thrd_info(&_info[base]);
+					base++;
+					is_new_fd = 0;
+				}
+				if (dir != Q_DIR_H2C)
+				{
+					snprintf(_info[base].q_name, 20, "qdma%02x%02x%01x-%s-%d", pci_bus, pci_dev,
+						pf_start+k, (mode == Q_MODE_MM) ? "MM" : "ST", q_start + i);
+					_info[base].dir = Q_DIR_C2H;
+					_info[base].mode = mode;
+					_info[base].idx_rngsz = idx_rngsz;
+					_info[base].pf = (pci_bus << 12) | (pci_dev << 4) | (pf_start + k);
+					_info[base].qid = q_start + i;
+					_info[base].q_ctrl = q_ctrl;
+					_info[base].pkt_burst = num_pkts;
+					_info[base].pkt_sz = pkt_sz;
+#if THREADS_SET_CPU_AFFINITY
+					_info[base].cpu = c2h_cpu;
+#endif
+					if (_info[base].mode == Q_MODE_ST) {
+						_info[base].pfetch_en = pfetch_en;
+						_info[base].idx_cnt = idx_cnt;
+						_info[base].idx_tmr = idx_tmr;
+						_info[base].cmptsz = cmptsz;
+						strncpy(_info[base].trig_mode, trigmode, 10);
+					}
+					sem_init(&_info[base].llock, 0, 1);
+					_info[base].fd = last_fd;
+					if (q_ctrl != 0) {
+						last_fd = setup_thrd_env(&_info[base], is_new_fd);
+					}
+					_info[base].thread_id = base;
+//					dump_thrd_info(&_info[base]);
+					base++;
+				}
+				q_ctrl = 0;
+			}
+#if THREADS_SET_CPU_AFFINITY
+			h2c_cpu++;
+			c2h_cpu++;
+#endif
+		}
+	}
+	if ((mode == Q_MODE_ST) && (dir != Q_DIR_H2C)) {
+		snprintf(reg_cmd, 100, "dmactl qdma%05x reg write bar 2 0x%x %d",
+			 (pci_bus << 12) | (pci_dev << 4) | pf_start, 0x08,
+			 QDMA_UL_IMM_DUMP_C2H_DATA | QDMA_UL_IMM_DUMP_CMPT_FIFO/* | QDMA_UL_DROP_ENABLE*/);
+		system(reg_cmd);
+		memset(reg_cmd, '\0', 100);
+		usleep(1000);
+	}
+	if (shmdt(_info) == -1) {
+		perror("shmdt returned -1\n");
+	        error(-1, errno, " ");
+	}
+}
+
+static void parse_config_file(const char *cfg_fname)
+{
+	char *linebuf = NULL;
+	char *realbuf;
+	FILE *fp;
+	size_t linelen = 0;
+	size_t numread;
+	size_t numblanks;
+	unsigned int linenum = 0;
+	char *config, *value;
+	unsigned int dir_factor = 1;
+
+	fp = fopen(cfg_fname, "r");
+	if (fp == NULL)
+		exit(EXIT_FAILURE);
+
+	while ((numread = getline(&linebuf, &linelen, fp)) != -1) {
+		numread--;
+		linenum++;
+		linebuf = strip_comments(linebuf);
+		realbuf = strip_blanks(linebuf, &numblanks);
+		linelen -= numblanks;
+		if (0 == linelen)
+			continue;
+		config = strtok(realbuf, "=");
+		value = strtok(NULL, "=");
+		if (!strncmp(config, "mode", 4)) {
+			if (!strncmp(value, "mm", 2))
+				mode = Q_MODE_MM;
+			else if(!strncmp(value, "st", 2))
+				mode = Q_MODE_ST;
+			else {
+				printf("Error: Unkown mode");
+				goto prase_cleanup;
+			}
+		} else if (!strncmp(config, "dir", 3)) {
+			if (!strncmp(value, "h2c", 3))
+				dir = Q_DIR_H2C;
+			else if(!strncmp(value, "c2h", 3))
+				dir = Q_DIR_C2H;
+			else if(!strncmp(value, "bi", 2))
+				dir = Q_DIR_BI;
+			else {
+				printf("Error: Unkown dir");
+				goto prase_cleanup;
+			}
+		} else if (!strncmp(config, "name", 3)) {
+			copy_value(value, cfg_name, 20);
+		} else if (!strncmp(config, "pf_range", 8)) {
+			char *pf_range_start = strtok(value, ":");
+			char *pf_range_end = strtok(NULL, ":");
+			unsigned int start;
+			unsigned int end;
+			if (arg_read_int(pf_range_start, &start)) {
+				printf("Error: Invalid pf range start:%s\n", pf_range_start);
+				goto prase_cleanup;
+			}
+			if (arg_read_int(pf_range_end, &end)) {
+				printf("Error: Invalid pf range end:%s\n", pf_range_end);
+				goto prase_cleanup;
+			}
+
+			pf_start = start;
+			num_pf = end - start + 1;
+		} else if (!strncmp(config, "q_range", 7)) {
+			char *q_range_start = strtok(value, ":");
+			char *q_range_end = strtok(NULL, ":");
+			unsigned int start;
+			unsigned int end;
+			if (arg_read_int(q_range_start, &start)) {
+				printf("Error: Invalid q range start:%s\n", q_range_start);
+				goto prase_cleanup;
+			}
+			if (arg_read_int(q_range_end, &end)) {
+				printf("Error: Invalid q range end:%s\n", q_range_end);
+				goto prase_cleanup;
+			}
+
+			q_start = start;
+			num_q = end - start + 1;
+		} else if (!strncmp(config, "rngidx", 6)) {
+			if (arg_read_int(value, &idx_rngsz)) {
+				printf("Error: Invalid idx_rngsz:%s\n", value);
+				goto prase_cleanup;
+			}
+		} else if (!strncmp(config, "tmr_idx", 7)) {
+			if (arg_read_int(value, &idx_tmr)) {
+				printf("Error: Invalid idx_tmr:%s\n", value);
+				goto prase_cleanup;
+			}
+		}
+		if (!strncmp(config, "cntr_idx", 8)) {
+		    if (arg_read_int(value, &idx_cnt)) {
+			printf("Error: Invalid idx_cnt:%s\n", value);
+			goto prase_cleanup;
+		    }
+		} else if (!strncmp(config, "pfetch_en", 9)) {
+		    if (arg_read_int(value, &pfetch_en)) {
+			printf("Error: Invalid pfetch_en:%s\n", value);
+			goto prase_cleanup;
+		    }
+		} else if (!strncmp(config, "cmptsz", 5)) {
+		    if (arg_read_int(value, &cmptsz)) {
+			printf("Error: Invalid cmptsz:%s\n", value);
+			goto prase_cleanup;
+		    }
+		} else if (!strncmp(config, "dump_en", 5)) {
+		    if (arg_read_int(value, &dump_en)) {
+			printf("Error: Invalid dump_en:%s\n", value);
+			goto prase_cleanup;
+		    }
+		} else if (!strncmp(config, "trig_mode", 9)) {
+		    copy_value(value, trigmode, 10);
+		} else if (!strncmp(config, "runtime", 9)) {
+			if (arg_read_int(value, &tsecs)) {
+				printf("Error: Invalid tsecs:%s\n", value);
+				goto prase_cleanup;
+			}
+		} else if (!strncmp(config, "num_threads", 11)) {
+			if (arg_read_int(value, &num_thrds_per_q)) {
+				printf("Error: Invalid num_threads:%s\n", value);
+				goto prase_cleanup;
+			}
+		} else if (!strncmp(config, "pkt_sz", 6)) {
+			if (arg_read_int(value, &pkt_sz)) {
+				printf("Error: Invalid pkt_sz:%s\n", value);
+				goto prase_cleanup;
+			}
+		} else if (!strncmp(config, "num_pkt", 7)) {
+			if (arg_read_int(value, &num_pkts)) {
+				printf("Error: Invalid io_sz:%s\n", value);
+				goto prase_cleanup;
+			}
+		} else if (!strncmp(config, "no_memcpy", 9)) {
+			if (arg_read_int(value, &no_memcpy)) {
+				printf("Error: Invalid io_sz:%s\n", value);
+				goto prase_cleanup;
+			}
+		} else if (!strncmp(config, "pci_bus", 7)) {
+			char *p;
+
+			pci_bus = strtoul(value, &p, 16);
+			if (*p && (*p != '\n')) {
+				printf("Error: bad parameter \"%s\", integer expected", value);
+				goto prase_cleanup;
+			}
+		} else if (!strncmp(config, "pci_dev", 7)) {
+			char *p;
+
+			pci_dev = strtoul(value, &p, 16);
+			if (*p && (*p != '\n')) {
+				printf("Error: bad parameter \"%s\", integer expected", value);
+				goto prase_cleanup;
+			}
+		}
+	}
+	fclose(fp);
+
+	if (!pci_bus && !pci_dev) {
+		printf("Error: PCI bus information not provided\n");
+		exit(1);
+	}
+	if (dir == Q_DIR_BI)
+		dir_factor = 2;
+	num_thrds = num_pf * num_q * dir_factor * num_thrds_per_q;
+	create_thread_info();
+	return;
+	/*dump_thrd_info();
+	exit(1);*/
+prase_cleanup:
+	fclose(fp);
+}
+
+#define MAX_AIO_EVENTS 65536
+
+static void list_add_tail(struct io_info *_info, struct list_head *node)
+{
+    sem_wait(&_info->llock);
+    if (_info->head == NULL) {
+        _info->head = node;
+        _info->tail = node;
+    } else {
+        _info->tail->next = node;
+        _info->tail = node;
+    }
+#ifdef DEBUG
+    _info->total_nodes++;
+#endif
+    sem_post( &_info->llock);
+}
+
+static void list_add_head(struct io_info *_info, struct list_head *node)
+{
+    sem_wait(&_info->llock);
+    node->next = _info->head;
+    if (_info->head == NULL) {
+        _info->tail = node;
+    }
+    _info->head = node;
+    sem_post( &_info->llock);
+}
+
+static struct list_head *list_pop(struct io_info *_info)
+{
+	struct list_head *node = NULL;
+
+	sem_wait(&_info->llock);
+	node = _info->head;
+	if (_info->head == _info->tail)
+		_info->tail = NULL;
+
+	if (node)
+		_info->head = node->next;
+
+	sem_post(&_info->llock);
+
+	return node;
+}
+
+static void list_free(struct io_info *_info)
+{
+	struct list_head *node = NULL;
+	struct list_head *prev_node = NULL;
+	unsigned int i;
+
+	sem_wait(&_info->llock);
+#ifdef DEBUG
+	printf("Need to free %llu nodes in thrd%u\n", _info->total_nodes - _info->freed_nodes, _info->thread_id);
+#endif
+	node = _info->head;
+
+	while (node != NULL) {
+		clear_events(_info, node);
+		io_destroy(node->ctxt);
+		prev_node = node;
+		node = node->next;
+		dma_free(&ctxhandle, prev_node);
+#ifdef DEBUG
+		_info->freed_nodes++;
+#endif
+	}
+	sem_post(&_info->llock);
+}
+
+/* Subtract timespec t2 from t1
+ *
+ * Both t1 and t2 must already be normalized
+ * i.e. 0 <= nsec < 1000000000
+ */
+static int timespec_check(struct timespec *t)
+{
+	if ((t->tv_nsec < 0) || (t->tv_nsec >= 1000000000))
+		return -1;
+	return 0;
+
+}
+
+void timespec_sub(struct timespec *t1, struct timespec *t2)
+{
+	if (timespec_check(t1) < 0) {
+		fprintf(stderr, "invalid time #1: %lld.%.9ld.\n",
+			(long long)t1->tv_sec, t1->tv_nsec);
+		return;
+	}
+	if (timespec_check(t2) < 0) {
+		fprintf(stderr, "invalid time #2: %lld.%.9ld.\n",
+			(long long)t2->tv_sec, t2->tv_nsec);
+		return;
+	}
+	t1->tv_sec -= t2->tv_sec;
+	t1->tv_nsec -= t2->tv_nsec;
+	if (t1->tv_nsec >= 1000000000) {
+		t1->tv_sec++;
+		t1->tv_nsec -= 1000000000;
+	} else if (t1->tv_nsec < 0) {
+		t1->tv_sec--;
+		t1->tv_nsec += 1000000000;
+	}
+}
+
+static void clear_events(struct io_info *_info, struct list_head *node) {
+	struct io_event *events = NULL;
+	int num_events = 0;
+	unsigned int i, j, bufcnt;
+	struct timespec ts_cur = {1, 0};
+
+	if (node->max_events <= node->completed_events)
+		return;
+#ifdef DEBUG
+	printf("Thrd%u: Need to clear %u/%u events in node %p\n",
+	       _info->thread_id, node->max_events - node->completed_events,
+	       node->max_events, node);
+#endif
+	events = calloc(node->max_events - node->completed_events, sizeof(struct io_event));
+	if (events == NULL) {
+		printf("OOM\n");
+		return;
+	}
+	do {
+		num_events = io_getevents(node->ctxt, 1,
+					  node->max_events - node->completed_events, events,
+					  &ts_cur);
+		for (j = 0; (num_events > 0) && (j < num_events); j++) {
+			struct iocb *iocb = (struct iocb *)events[j].obj;
+			struct iovec *iov;
+
+			node->completed_events++;
+			if (!iocb) {
+				printf("Error: Invalid IOCB from events\n");
+				continue;
+			}
+
+			iov = (struct iovec *)iocb->u.c.buf;
+
+			for (bufcnt = 0; bufcnt < iocb->u.c.nbytes; bufcnt++)
+				dma_free(&datahandle, iov[bufcnt].iov_base);
+			dma_free(&iocbhandle, iocb);
+		}
+	} while ((num_events > 0) && (node->max_events > node->completed_events));
+
+	free(events);
+}
+
+static void *event_mon(void *argp)
+{
+	struct io_info *_info = (struct io_info *)argp;
+	unsigned int i, j, bufcnt;
+	struct io_event *events = NULL;
+	int num_events = 0;
+	int ret;
+	struct timespec ts_cur = {0, 0};
+#if DATA_VALIDATION
+	unsigned short *rcv_data;
+	unsigned int k;
+#endif
+
+	events = calloc(MAX_AIO_EVENTS, sizeof(struct io_event));
+	if (events == NULL) {
+		printf("OOM\n");
+		exit(1);
+	}
+	while ((0 == io_exit) && (0 == force_exit)) {
+		struct list_head *node = list_pop(_info);
+
+		if (!node)
+			continue;
+
+		memset(events, 0, MAX_AIO_EVENTS * sizeof(struct io_event));
+		do {
+			num_events = io_getevents(node->ctxt, 1,
+						  node->max_events - node->completed_events, events,
+						  &ts_cur);
+			for (j = 0; (num_events > 0) && (j < num_events); j++) {
+				struct iocb *iocb = (struct iocb *)events[j].obj;
+				struct iovec *iov = NULL;
+
+				if (!iocb) {
+					printf("Error: Invalid IOCB from events\n");
+					continue;
+				}
+				_info->num_req_completed += events[j].res;
+
+				iov = (struct iovec *)(iocb->u.c.buf);
+				if (!iov) {
+					printf("invalid buffer\n");
+					continue;
+				}
+#if DATA_VALIDATION
+				rcv_data = iov[0].iov_base;
+				for (k = 0; k < (iov[0].iov_len/2) && events[j].res && !(events[j].res2); k += 8) {
+					printf("%04x: %04x %04x %04x %04x %04x %04x %04x %04x\n", k,
+							rcv_data[k], rcv_data[k+1], rcv_data[k+2],
+							rcv_data[k+3], rcv_data[k+4], rcv_data[k+5],
+							rcv_data[k+6], rcv_data[k+7]);
+				}
+#endif
+				for (bufcnt = 0; (bufcnt < iocb->u.c.nbytes) && iov; bufcnt++)
+					dma_free(&datahandle, iov[bufcnt].iov_base);
+				dma_free(&iocbhandle, iocb);
+			}
+			if (num_events > 0)
+			    node->completed_events += num_events;
+			if (node->completed_events >= node->max_events) {
+				io_destroy(node->ctxt);
+				dma_free(&ctxhandle, node);
+				break;
+			}
+		} while ((0 == io_exit) && (0 == force_exit));
+
+		if (node->completed_events < node->max_events)
+		    list_add_head(_info, node);
+	}
+	free(events);
+#ifdef DEBUG
+	printf("Exiting evt_thrd: %d\n", _info->thread_id);
+#endif
+
+	return NULL;
+}
+
+static void io_proc_cleanup(struct io_info *_info)
+{
+	unsigned int i, j = 0;
+	int s;
+	unsigned int q_offset;
+	unsigned int dir_factor = (dir == Q_DIR_BI) ? 1 : 2;
+	unsigned int q_lst_idx_base;
+	unsigned char is_q_stop = (_info->q_ctrl && _info->q_started);
+	char reg_cmd[100] = {'\0'};
+
+	io_exit = 1;
+	pthread_join(_info->evt_id, NULL);
+
+	q_offset = (_info->dir == Q_DIR_H2C)? 0 : num_q;
+	if (dir != Q_DIR_BI)
+		q_offset = 0;
+	q_lst_idx_base = ((((_info->pf & 0x0000F) - pf_start) * num_q * dir_factor) + q_offset);
+	_info->q_wait_for_stop = 1;
+
+	while (is_q_stop) {
+		j = 0;
+		for (i = 0; i < num_thrds; i++) {
+			if ((info[i].pf != _info->pf) ||
+					(info[i].qid != _info->qid) ||
+					(info[i].dir != _info->dir))
+				continue;
+			if (info[i].q_wait_for_stop)
+				j++;
+			else
+				break;
+		}
+		if (j != num_thrds_per_q)
+			sched_yield();
+		else
+			break;
+	}
+	if ((mode == Q_MODE_ST) && (dir != Q_DIR_H2C)) {
+		do {
+			for (i = 0; i < num_thrds; i++) {
+				if (!info[i].q_wait_for_stop)
+					break;
+			}
+			if (i == num_thrds)
+				break;
+		} while (1);
+	}
+	if (is_q_stop) {
+		if (dump_en) {
+			s = system(_info->q_dump);
+			if (s != 0) {
+				printf("Failed: %s\nerrcode = %d\n",
+				       _info->q_dump, s);
+			}
+		}
+		printf("%s\n", _info->q_stop);
+		s = system(_info->q_stop);
+		if (s != 0) {
+			printf("Failed: %s\nerrcode = %d\n",_info->q_stop, s);
+		}
+		snprintf(reg_cmd, 100, "dmactl qdma%05x reg write bar 2 0x%x %d",
+					 _info->pf, 0x08, QDMA_UL_STOP_C2H_TRANSFER | QDMA_UL_STOP_CMPT_TRANSFER);
+		system(reg_cmd);
+		_info->q_started = 0;
+		q_lst_stop[q_lst_idx_base + _info->qid - q_start] = 1;
+	}
+	while (!(q_lst_stop[q_lst_idx_base + _info->qid - q_start])) {
+		sched_yield();
+	}
+	if (shmdt(q_lst_stop) == -1) {
+		perror("shmdt returned -1\n");
+	        error(-1, errno, " ");
+	}
+	list_free(_info);
+
+	mempool_free(&iocbhandle);
+	mempool_free(&ctxhandle);
+	mempool_free(&datahandle);
+}
+
+static void *io_thread(void *argp)
+{
+	struct io_info *_info = (struct io_info *)argp;
+	struct iocb *iocb;
+	int ret;
+	int s;
+	unsigned int max_io = MAX_AIO_EVENTS;
+	unsigned int cnt = 0;
+	pthread_attr_t attr;
+	unsigned int io_sz = _info->pkt_sz;
+	unsigned int burst_cnt = _info->pkt_burst;
+	unsigned int num_desc;
+	unsigned int max_reqs;
+	struct iocb *io_list[1];
+
+	if ((_info->mode == Q_MODE_ST) && (_info->dir == Q_DIR_C2H)) {
+		io_sz = _info->pkt_burst * _info->pkt_sz;
+		burst_cnt = 1;
+	}
+	num_desc = (io_sz + DEFAULT_PAGE_SIZE - 1) >> PAGE_SHIFT;
+	max_reqs = (64 << idx_rngsz);
+	mempool_create(&datahandle, num_desc*DEFAULT_PAGE_SIZE,  max_reqs + (burst_cnt * num_desc));
+	mempool_create(&ctxhandle, sizeof(struct list_head), max_reqs);
+	mempool_create(&iocbhandle, sizeof(struct iocb) + (burst_cnt * sizeof(struct iovec)), max_reqs + (burst_cnt * num_desc));
+#ifdef DEBUG
+	ctxhandle.id = 1;
+	datahandle.id = 0;
+	iocbhandle.id = 2;
+#endif
+	s = pthread_attr_init(&attr);
+	if (s != 0)
+		printf("pthread_attr_init failed\n");
+	if (pthread_create(&_info->evt_id, &attr, event_mon, _info))
+		exit(1);
+
+	do {
+		struct list_head *node = NULL;
+		struct timespec ts_cur;
+
+		if (tsecs) {
+			ret = clock_gettime(CLOCK_MONOTONIC, &ts_cur);
+			timespec_sub(&ts_cur, &g_ts_start);
+			if (ts_cur.tv_sec >= tsecs)
+				break;
+		}
+		node = dma_memalloc(&ctxhandle, 1);
+		if (!node) {
+			continue;
+		}
+		ret = io_queue_init(max_io, &node->ctxt);
+		if (ret != 0) {
+			printf("Error: io_setup error %d on %u\n", ret, _info->thread_id);
+			dma_free(&ctxhandle, node);
+			sched_yield();
+			continue;
+		}
+		cnt = 0;
+		node->max_events = max_io;
+		list_add_tail(_info, node);
+		do {
+			struct iovec *iov = NULL;
+			unsigned int iovcnt;
+			if (tsecs) {
+				ret = clock_gettime(CLOCK_MONOTONIC, &ts_cur);
+				timespec_sub(&ts_cur, &g_ts_start);
+				if (ts_cur.tv_sec >= tsecs) {
+					node->max_events = cnt;
+					break;
+				}
+			}
+
+			if (((_info->num_req_submitted - _info->num_req_completed) *
+					num_desc) > max_reqs) {
+				sched_yield();
+				continue;
+			}
+
+			io_list[0] = dma_memalloc(&iocbhandle, 1);
+			if (io_list[0] == NULL) {
+				if (cnt) {
+					node->max_events = cnt;
+					break;
+				}
+				else {
+					sched_yield();
+					continue;
+				}
+			}
+			iov = (struct iovec *)(io_list[0] + 1);
+			for (iovcnt = 0; iovcnt < burst_cnt; iovcnt++) {
+				iov[iovcnt].iov_base = dma_memalloc(&datahandle, 1);
+				if (iov[iovcnt].iov_base == NULL)
+					break;
+				iov[iovcnt].iov_len = io_sz;
+			}
+			if (iovcnt == 0) {
+				dma_free(&iocbhandle, io_list[0]);
+				continue;
+			}
+			if (_info->dir == Q_DIR_H2C) {
+				io_prep_pwritev(io_list[0],
+					       _info->fd,
+					       iov,
+					       iovcnt,
+					       0);
+			} else {
+				io_prep_preadv(io_list[0],
+					       _info->fd,
+					       iov,
+					       iovcnt,
+					       0);
+			}
+
+			ret = io_submit(node->ctxt, 1, io_list);
+			if(ret != 1) {
+				printf("Error: io_submit error:%d on %s for %u\n", ret, _info->q_name, cnt);
+				for (; iovcnt > 0; iovcnt--)
+					dma_free(&datahandle, iov[iovcnt].iov_base);
+				dma_free(&iocbhandle, io_list[0]);
+				node->max_events = cnt;
+				break;
+			} else {
+				cnt++;
+				_info->num_req_submitted += iovcnt;
+			}
+		} while (tsecs && !force_exit && (cnt < max_io));
+	} while (tsecs && !force_exit);
+
+	io_proc_cleanup(_info);
+
+	return NULL;
+}
+
+static void prep_q_add(struct io_info *_info)
+{
+	memset(_info->q_add, '\0', Q_ADD_CMD_LEN);
+	snprintf(_info->q_add, Q_ADD_CMD_LEN, "dmactl qdma%05x q add idx %d mode %s dir %s",
+		 _info->pf, _info->qid, (_info->mode == Q_MODE_MM) ? "mm" : "st",
+				 (_info->dir == Q_DIR_H2C) ? "h2c" : "c2h");
+}
+
+static void prep_q_start(struct io_info *_info)
+{
+	int nwr;
+	memset(_info->q_start, '\0', Q_START_CMD_LEN);
+	if ((_info->dir == Q_DIR_C2H) && (_info->mode == Q_MODE_ST)) {
+		nwr = snprintf(_info->q_start, Q_START_CMD_LEN, "dmactl qdma%05x q start idx %d dir %s idx_ringsz %d cmptsz %u idx_tmr %d idx_cntr %d trigmode %s",
+			 _info->pf, _info->qid, (_info->dir == Q_DIR_H2C) ? "h2c" : "c2h",
+					 _info->idx_rngsz, _info->cmptsz, _info->idx_tmr, _info->idx_cnt, _info->trig_mode);
+		if (_info->pfetch_en)
+		    nwr = sprintf(_info->q_start + nwr, " pfetch_en");
+	} else {
+			snprintf(_info->q_start, Q_START_CMD_LEN, "dmactl qdma%05x q start idx %d dir %s idx_ringsz %d",
+				 _info->pf, _info->qid, (_info->dir == Q_DIR_H2C) ? "h2c" : "c2h",
+						 _info->idx_rngsz);
+	}
+}
+
+static void prep_q_stop(struct io_info *_info)
+{
+	memset(_info->q_stop, '\0', Q_STOP_CMD_LEN);
+	snprintf(_info->q_stop, Q_STOP_CMD_LEN, "dmactl qdma%05x q stop idx %d dir %s",
+		 _info->pf, _info->qid, (_info->dir == Q_DIR_H2C) ? "h2c" : "c2h");
+}
+
+static void prep_q_del(struct io_info *_info)
+{
+    memset(_info->q_del, '\0', Q_DEL_CMD_LEN);
+    snprintf(_info->q_del, Q_DEL_CMD_LEN, "dmactl qdma%05x q del idx %d dir %s",
+         _info->pf, _info->qid, (_info->dir == Q_DIR_H2C) ? "h2c" : "c2h");
+}
+
+static void prep_q_dump(struct io_info *_info)
+{
+    memset(_info->q_dump, '\0', Q_DEL_CMD_LEN);
+    snprintf(_info->q_dump, Q_DEL_CMD_LEN, "dmactl qdma%05x q dump idx %d dir %s",
+         _info->pf, _info->qid, (_info->dir == Q_DIR_H2C) ? "h2c" : "c2h");
+}
+
+static void prep_reg_dump(void)
+{
+    memset(reg_dump, '\0', REG_DUMP_CMD_LEN);
+    snprintf(reg_dump, REG_DUMP_CMD_LEN, "dmactl qdma%02x%02x%01x reg dump", pci_bus, pci_dev, pf_start);
+}
+
+static void prep_pci_dump(void)
+{
+    memset(pci_dump, '\0', PCI_DUMP_CMD_LEN);
+    snprintf(pci_dump, PCI_DUMP_CMD_LEN, "lspci -s %02x:%02x.%01x -vvv", pci_bus, pci_dev, pf_start);
+}
+
+static int setup_thrd_env(struct io_info *_info, unsigned char is_new_fd)
+{
+	int s;
+	int last_fd = -1;
+
+	char node[25] = {'\0'};
+	char thrd_name[50] = {'\0'};
+
+	prep_q_add(_info);
+	prep_q_start(_info);
+	prep_q_stop(_info);
+	prep_q_del(_info);
+	prep_q_dump(_info);
+
+	/* add queue */
+	printf("%s\n", _info->q_add);
+	s = system(_info->q_add);
+	if (s != 0) {
+		exit(1);
+	}
+	_info->q_added++;
+
+	/* start queue */
+	printf("%s\n", _info->q_start);
+	s= system(_info->q_start);
+	if (s != 0) {
+		exit(1);
+	}
+	_info->q_started++;
+
+	if (is_new_fd) {
+		snprintf(node, 25, "/dev/%s", _info->q_name);
+		_info->fd = open(node, O_RDWR);
+		if (_info->fd < 0) {
+			printf("Error: Cannot find %s\n", node);
+			exit(1);
+		}
+	}
+
+	s = ioctl(_info->fd, 0, &no_memcpy);
+	if (s != 0) {
+		printf("failed to set non memcpy\n");
+		exit(1);
+	}
+
+	return _info->fd;
+}
+
+static void dump_result(unsigned long long total_io_sz)
+{
+	unsigned long long gig_div = ((unsigned long long)tsecs * 1000000000);
+	unsigned long long meg_div = ((unsigned long long)tsecs * 1000000);
+	unsigned long long kil_div = ((unsigned long long)tsecs * 1000);
+	unsigned long long byt_div = ((unsigned long long)tsecs);
+
+	if ((total_io_sz/gig_div)) {
+		printf("BW = %llu.%llu GB/sec\n", (total_io_sz/gig_div),
+		       ((total_io_sz % gig_div)/meg_div));
+	} else if ((total_io_sz/meg_div)) {
+		printf("BW = %llu.%llu MB/sec\n", (total_io_sz/meg_div),
+		       ((total_io_sz % meg_div)/kil_div));
+	} else if ((total_io_sz/kil_div)) {
+		printf("BW = %llu.%llu KB/sec\n", (total_io_sz/kil_div),
+		       ((total_io_sz % kil_div)/byt_div));
+	} else
+		printf("BW = %llu Bytes/sec\n", (total_io_sz/byt_div));
+}
+
+int is_valid_fd(int fd)
+{
+    return fcntl(fd, F_GETFL) != -1 || errno != EBADF;
+}
+
+static void cleanup(void)
+{
+	int i;
+	unsigned long long total_num_h2c_ios = 0;
+	unsigned long long total_num_c2h_ios = 0;
+	unsigned long long total_io_sz = 0;
+	int s;
+
+	if ((io_exit == 0)) {
+		printf("force exit: cleaning up\n");
+		force_exit = 1;
+		if (getpid() != base_pid) {
+			if (shmdt(info) == -1){
+				perror("shmdt returned -1\n");
+				error(-1, errno, " ");
+			}
+			if ((shmdt(q_lst_stop) == -1)) {
+				perror("shmdt returned -1\n");
+				error(-1, errno, " ");
+			}
+		} else
+			for (i = 1; i < num_thrds; i++)
+				wait(NULL);
+	}/* else
+		printf("normal exit: cleaning up\n");*/
+
+	if (getpid() != base_pid) return;
+
+	if (child_pid_lst != NULL)
+		free(child_pid_lst);
+	if (shmctl(q_lst_stop_mid, IPC_RMID, NULL) == -1) {
+		perror("shmctl returned -1\n");
+	        error(-1, errno, " ");
+	}
+	if (info == NULL) return;
+
+	if (dump_en) {
+		s = system(pci_dump);
+		if (s != 0) {
+		    printf("Failed: %s\nerrcode = %d\n", pci_dump, s);
+		}
+		s = system(reg_dump);
+		if (s != 0) {
+		    printf("Failed: %s\nerrcode = %d\n", reg_dump, s);
+		}
+	}
+	for (i = 0; i < num_thrds; i++) {
+		if (info[i].q_ctrl && info[i].q_started) {
+			if (dump_en) {
+				s = system(info[i].q_dump);
+				if (s != 0) {
+					printf("Failed: %s\nerrcode = %d\n",
+					       info[i].q_dump, s);
+				}
+			}
+			printf("%s\n", info[i].q_stop);
+			s = system(info[i].q_stop);
+			if (s != 0) {
+				printf("Failed: %s\nerrcode = %d\n",info[i].q_stop, s);
+			}
+			info[i].q_started = 0;
+		}
+		if ((info[i].q_ctrl != 0) && (info[i].fd > 0) && is_valid_fd(info[i].fd))
+			close(info[i].fd);
+		if (info[i].q_ctrl && info[i].q_added) {
+			printf("%s\n", info[i].q_del);
+			s = system(info[i].q_del);
+			if (s != 0) {
+				printf("Failed: %s\nerrcode = %d\n",info[i].q_del, s);
+			}
+			info[i].q_added = 0;
+		}
+	}
+
+	/* accumulate the statistics */
+	for (i = 0; i < num_thrds; i++) {
+		if (info[i].dir == Q_DIR_H2C)
+			total_num_h2c_ios += info[i].num_req_completed;
+		else {
+			if (info[i].mode == Q_MODE_ST)
+				info[i].num_req_completed *= info[i].pkt_burst;
+			total_num_c2h_ios += info[i].num_req_completed;
+		}
+	}
+	if (shmdt(info) == -1){
+		perror("shmdt returned -1\n");
+		error(-1, errno, " ");
+	}
+	if (shmctl(shmid, IPC_RMID, NULL) == -1) {
+		perror("shmctl returned -1\n");
+	        error(-1, errno, " ");
+	}
+
+	if (tsecs == 0) tsecs = 1;
+	if (0 != total_num_h2c_ios) {
+		total_io_sz = (total_num_h2c_ios*pkt_sz);
+		printf("WRITE: total pps = %llu", total_num_h2c_ios/tsecs);
+		printf(" ");
+		dump_result(total_io_sz);
+	}
+	if (0 != total_num_c2h_ios) {
+		total_io_sz = (total_num_c2h_ios*pkt_sz);
+		printf("READ: total pps = %llu", total_num_c2h_ios/tsecs);
+		printf(" ");
+		dump_result(total_io_sz);
+	}
+	if ((0 == total_num_h2c_ios) && (0 == total_num_c2h_ios))
+		printf("No IOs happened\n");
+}
+
+int main(int argc, char *argv[])
+{
+	int cmd_opt;
+	char *cfg_fname = NULL;
+	unsigned int i, j;
+	int s;
+	int last_fd = -1;
+	unsigned int aio_max_nr = 0xFFFFFFFF;
+	char aio_max_nr_cmd[100] = {'\0'};
+	int pid;
+#if THREADS_SET_CPU_AFFINITY
+	cpu_set_t set;
+#endif
+
+	while ((cmd_opt = getopt_long(argc, argv, "vhxc:c:", long_opts,
+			    NULL)) != -1) {
+		switch (cmd_opt) {
+		case 0:
+			/* long option */
+			break;
+		case 'c':
+			/* config file name */
+			cfg_fname = strdup(optarg);
+			break;
+		default:
+			usage(argv[0]);
+			exit(0);
+			break;
+		}
+	}
+	if (cfg_fname == NULL)
+		return 1;
+
+#if THREADS_SET_CPU_AFFINITY
+	num_processors = get_nprocs_conf();
+	CPU_ZERO(&set);
+#endif
+#if DATA_VALIDATION
+	for (i = 0; i < 2*1024; i++)
+		valid_data[i] = i;
+#endif
+	parse_config_file(cfg_fname);
+	atexit(cleanup);
+
+	snprintf(aio_max_nr_cmd, 100, "echo %u > /proc/sys/fs/aio-max-nr", aio_max_nr);
+	system(aio_max_nr_cmd);
+
+	printf("dmautils(%u) threads\n", num_thrds);
+	child_pid_lst = calloc(num_thrds, sizeof(int));
+	base_pid = getpid();
+	child_pid_lst[0] = base_pid;
+	for (i = 1; i < num_thrds; i++) {
+		if (getpid() == base_pid)
+			child_pid_lst[i] = fork();
+		else
+			break;
+	}
+	if ((info = (struct io_info *) shmat(shmid, NULL, 0)) == (struct io_info *) -1) {
+		perror("Process shmat returned NULL\n");
+		error(-1, errno, " ");
+		exit(1);
+	}
+	if ((q_lst_stop = (unsigned char *) shmat(q_lst_stop_mid, NULL, 0)) == (unsigned char *) -1) {
+		perror("Process shmat returned NULL\n");
+		error(-1, errno, " ");
+		exit(1);
+	}
+
+	clock_gettime(CLOCK_MONOTONIC, &g_ts_start);
+	if (getpid() == base_pid) {
+		io_thread(&info[0]);
+#if THREADS_SET_CPU_AFFINITY
+		for (j = 0; j < num_processors; j++) {
+			if (j != info[0].cpu)
+				CPU_SET(j, &set);
+		}
+		if (sched_setaffinity(base_pid, sizeof(set), &set) == -1)
+			printf("setaffinity for thrd%u failed\n", info[i].thread_id);
+#endif
+	        for(i = 1; i < num_thrds; i++) {
+	            waitpid(child_pid_lst[i], NULL, 0);
+	        }
+	        free(child_pid_lst);
+	        child_pid_lst = NULL;
+	} else {
+		info[i].pid = getpid();
+#if THREADS_SET_CPU_AFFINITY
+		for (j = 0; j < num_processors; j++) {
+			if (j != info[i].cpu)
+				CPU_SET(j, &set);
+		}
+		if (sched_setaffinity(getpid(), sizeof(set), &set) == -1)
+			printf("setaffinity for thrd%u failed\n", info[i].thread_id);
+#endif
+		io_thread(&info[i - 1]);
+		if ((shmdt(info) == -1)) {
+			perror("shmdt returned -1\n");
+			error(-1, errno, " ");
+		}
+	}
+
+	io_exit = 1;
+	return 0;
+}
+
diff --git a/QDMA/linux-kernel/tools/libaio_engine.c b/QDMA/linux-kernel/tools/libaio_engine.c
new file mode 100644
index 0000000..51d8ec5
--- /dev/null
+++ b/QDMA/linux-kernel/tools/libaio_engine.c
@@ -0,0 +1,249 @@
+/*
+ * This file is part of the QDMA userspace application
+ * to enable the user to execute the QDMA functionality
+ *
+ * Copyright (c) 2018-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is licensed under BSD-style license (found in the
+ * LICENSE file in the root directory of this source tree)
+ */
+
+#include <stdint.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <unistd.h>
+#include <ctype.h>
+
+#include <sys/mman.h>
+#include <sys/time.h>
+#include <string.h>
+#include "aioutility.h"
+
+#include <libaio.h>
+
+#define MSEC2NSEC 1000000
+
+static void aio_completion_handler(io_context_t io_ctx, struct iocb *iocb, long res, long res2)
+{
+	struct aio_block *aioblock;
+	struct aio_job *aiojob;
+	struct io_jobs *iojob;
+
+	aioblock = get_aio_block(iocb);
+	if (NULL == aioblock) return;
+	aiojob = aioblock->parent;
+	iojob = aiojob->iojob;
+
+	/* Did the request complete? */
+	aiojob->mask_completed |= aioblock->mask;
+	if (0 == res2) {
+		ssize_t rc;
+		struct timespec ts_end;
+		long total_time = 0;
+		float result;
+		float avg_time = 0;
+
+		if (0 <= res) {
+			printf("%s iteration %d block %d completed successfully\n",
+			   iojob->job_name, aioblock->jobitr, aioblock->block_num);
+			if (aiojob->mask_expected == aiojob->mask_completed) {
+				rc = clock_gettime(CLOCK_MONOTONIC, &ts_end);
+				timespec_sub(&ts_end, &(aiojob->ts_start));
+				total_time += ts_end.tv_nsec;
+				result = ((float)(iojob->numbytes * iojob->numitr))*1000/total_time;
+				printf("** %s Job, total time %ld nsec, for bytes = %u, BW = %fMB/s \n",
+						iojob->job_name, total_time,
+						(iojob->numbytes * iojob->numitr),
+						result);
+				close(aiojob->fd);
+				verify_read(iojob);
+			} else
+				printf("Expected mask = %llx vs complete mask = %llx\n", aiojob->mask_expected, aiojob->mask_completed);
+		} else
+			printf("Error: %s job itr %d block %d completed with error\n",
+			       iojob->job_name, aioblock->jobitr, aioblock->block_num);
+	} else
+		printf("Error: %s job itr %d block %d failed with error %ld\n",
+		       iojob->job_name, aioblock->jobitr,
+		       aioblock->block_num, res2);
+
+	sem_post(&aioblock->lock); /* ready for destruction */
+}
+
+static bool create_naio_job(struct iocb **io_list, struct io_jobs *iojob)
+{
+	int fd;
+	unsigned int i;
+	struct aio_block *aioblock; /* one per block */
+	struct aio_job *aiojob; /* one per job */
+	ssize_t rc;
+	unsigned int blk_idx = 0;
+	unsigned int blk_num;
+
+	fd = open(iojob->node, O_RDWR);
+	if (0 > fd) {
+		printf("Error: Opening %s node\n", iojob->node);
+		return false;
+	}
+
+	aiojob = calloc(1, sizeof(struct aio_job));
+
+	iojob->aiojob = aiojob;
+	blk_num = get_io_job_num_blocks(iojob);
+	aiojob->mask_completed = 0;
+	aiojob->mask_expected = 0;
+	aiojob->iojob = iojob;
+
+	aiojob->aio_list = (void *)io_list;
+
+	for (i = 0; i < iojob->numitr; i++) {
+		unsigned int j;
+
+		for (j = 0; j < blk_num; j++) {
+			struct iocb *aio_entry;
+			unsigned int buf_off = (i * blk_num * iojob->block_size) + (j * iojob->block_size);
+			unsigned int io_numbytes = iojob->block_size;
+
+			if (j == (blk_num - 1) &&
+					(iojob->numbytes % iojob->block_size))
+				io_numbytes = (iojob->numbytes % iojob->block_size);
+
+			aioblock = calloc(1, sizeof(struct aio_block));
+			aioblock->parent = aiojob;
+			sem_init(&aioblock->lock, 0, 1); /* to track completion */
+			aioblock->jobitr = i;
+			aioblock->block_num = j;
+			io_list[blk_idx] = calloc(1, sizeof(struct iocb));
+			aio_entry = io_list[blk_idx];
+			aioblock->aio_entry =  io_list[blk_idx];
+
+			if (0 == strncmp(iojob->iotype, "read", 5)) {
+				io_prep_pread(aio_entry,
+				              fd,
+				              iojob->buf + buf_off,
+				              io_numbytes,
+				              0);
+			} else if (0 == strncmp(iojob->iotype, "write", 4)) {
+				io_prep_pwrite(aio_entry,
+				              fd,
+					      iojob->buf + buf_off,
+					      io_numbytes,
+					      0);
+			} else {
+				printf("Error: Invalid IO operation specified for %s IO job\n",
+				       iojob->job_name);
+				goto ret_false;
+			}
+
+			io_set_callback(aio_entry, aio_completion_handler);
+
+			aioblock->mask = (((__u64)1) << blk_idx);
+			aiojob->mask_expected |= aioblock->mask;
+			sem_wait(&aioblock->lock);
+			enqueue_aio_block(aiojob, aioblock);
+			blk_idx++;
+		}
+		/* since all IOs are submitted at once, start time shall almost be same */
+		rc = clock_gettime(CLOCK_MONOTONIC, &(aiojob->ts_start));
+	}
+	enqueue_aio_task(aiojob);
+	return true;
+ret_false:
+	if (aiojob) {
+		aiojob->mask_completed = aiojob->mask_expected;
+		cleanup_aiojob(aiojob, false);
+	}
+
+	return false;
+}
+
+void submit_naio_job(void *_iojob)
+{
+	struct io_jobs *iojob = (struct io_jobs *)_iojob;
+	struct iocb **io_list;
+	unsigned int numb_blks = get_io_job_num_blocks(iojob);
+	unsigned int total_jobs = (iojob->numitr * numb_blks);
+	struct io_event *events;
+	io_context_t io_ctxt;
+	int ret;
+	struct timespec ts_cur;
+	int i;
+
+	/* setup IO job env */
+	run_env_cmds(iojob->setup_tail);
+
+	io_list = (struct iocb **)calloc(total_jobs,
+	                                   sizeof(struct iocb *));
+
+	events = calloc(total_jobs, sizeof(struct io_event));
+
+	if (false == create_naio_job(io_list, iojob)) {
+		printf("Error: Failed to create IO job %s\n", iojob->job_name);
+		run_env_cmds(iojob->cleanup_tail);
+		return;
+	}
+
+	memset(&io_ctxt, 0, sizeof(io_ctxt));
+	if(io_queue_init(total_jobs, &io_ctxt)!=0){//init
+	    printf("Error: io_setup error\n");
+	    return;
+	}
+	ret = io_submit(io_ctxt, total_jobs, io_list);
+	if(ret != total_jobs) {
+	    printf("Error: io_submit error:%d\n", ret);
+	    return;
+	}
+
+	ret = clock_gettime(CLOCK_MONOTONIC, &ts_cur);
+	for (i = 0; i < total_jobs; i++) {
+		if (ts_cur.tv_nsec > (ts_cur.tv_nsec + (50 * MSEC2NSEC))) {
+			ts_cur.tv_sec += 1;
+		}
+		ts_cur.tv_nsec += (50 * MSEC2NSEC);  /*50 msec/io*/
+	}
+	if (io_getevents(io_ctxt,
+			   total_jobs,
+			   total_jobs,
+			   events,
+			   &ts_cur) == total_jobs) {
+		for (i = 0; i < total_jobs; i++) {
+			((io_callback_t)(events[i].data))(io_ctxt,
+					events[i].obj,
+					events[i].res,
+					events[i].res2);
+		}
+	} else {
+		printf("AIO completion not received\n");
+	}
+	io_destroy(io_ctxt);
+	cleanup_aio_jobs(true);
+}
+
+void cancel_naio_job(void *_aiojob)
+{
+	struct aio_job *aiojob = (struct aio_job *)_aiojob;
+	int rc;
+	struct iocb *iocb;
+	struct aio_block *aioblock;
+
+	aioblock = aiojob->aio_block_head;
+	while (1) {
+		if (NULL == aioblock) break;
+		if (aioblock->mask != (aiojob->mask_expected &
+				aioblock->mask)) {
+			iocb = (struct iocb *)aioblock->aio_entry;
+
+			rc = io_cancel((io_context_t)aiojob->naio_ctxt,
+			               iocb,
+			               (struct io_event *)(aiojob->events));
+			if (0 != rc)
+				printf("Warning: %s job block %d itr %d not cancelled. Will wait until cancelled\n",
+				       aiojob->iojob->job_name,
+				       aioblock->block_num, aioblock->jobitr);
+			sem_post(&aioblock->lock); /* ready for destruction */
+		}
+		aioblock = aioblock->next;
+	}
+}
+
diff --git a/QDMA/linux-kernel/tools/posixaio_engine.c b/QDMA/linux-kernel/tools/posixaio_engine.c
new file mode 100644
index 0000000..39d54c8
--- /dev/null
+++ b/QDMA/linux-kernel/tools/posixaio_engine.c
@@ -0,0 +1,224 @@
+/*
+ * This file is part of the QDMA userspace application
+ * to enable the user to execute the QDMA functionality
+ *
+ * Copyright (c) 2018-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is licensed under BSD-style license (found in the
+ * LICENSE file in the root directory of this source tree)
+ */
+
+#define _XOPEN_SOURCE 600
+#include <stdint.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <unistd.h>
+#include <ctype.h>
+#include <signal.h>
+#include <string.h>
+
+#include <sys/mman.h>
+#include <sys/time.h>
+#include <aio.h>
+#include "aioutility.h"
+
+
+static void aio_completion_handler( sigval_t sigval )
+{
+	struct aiocb *req;
+	struct io_jobs *iojob;
+	struct aio_block *aioblock;
+	struct aio_job *aiojob;
+	ssize_t ret;
+	int req_err;
+
+	aioblock = (struct aio_block *)(sigval.sival_ptr);
+	if (NULL == aioblock) return;
+	req = (struct aiocb *)aioblock->aio_entry;
+	if (NULL == aioblock->aio_entry) return;
+	aiojob = aioblock->parent;
+	iojob = aiojob->iojob;
+
+	/* Did the request complete? */
+	req_err = aio_error( req );
+	aiojob->mask_completed |= aioblock->mask;
+	if (0 == req_err) {
+		ssize_t rc;
+		struct timespec ts_end;
+		long total_time = 0;
+		float result;
+		float avg_time = 0;
+
+		ret = aio_return( req );
+
+		if (0 <= ret) {
+			printf("%s iteration %d block %d completed successfully\n",
+			   iojob->job_name, aioblock->jobitr, aioblock->block_num);
+			if (aiojob->mask_expected == aiojob->mask_completed) {
+				rc = clock_gettime(CLOCK_MONOTONIC, &ts_end);
+				timespec_sub(&ts_end, &(aiojob->ts_start));
+				total_time += ts_end.tv_nsec;
+				result = ((float)(iojob->numbytes * iojob->numitr))*1000/total_time;
+				printf("** %s Job, total time %ld nsec, for bytes = %u, BW = %fMB/s \n",
+						iojob->job_name, total_time,
+						(iojob->numbytes * iojob->numitr),
+						result);
+				verify_read(iojob);
+			} else
+				printf("Expected mask = %llx vs complete mask = %llx\n", aiojob->mask_expected, aiojob->mask_completed);
+		} else
+			printf("Error: %s job itr %d block %d completed with error\n",
+			       iojob->job_name, aioblock->jobitr, aioblock->block_num);
+	} else
+		printf("Error: %s job itr %d block %d failed with error %d\n",
+		       iojob->job_name, aioblock->jobitr,
+		       aioblock->block_num, req_err);
+
+	sem_post(&aioblock->lock); /* ready for destruction */
+	cleanup_aio_jobs(false);
+}
+
+static bool create_paio_job(struct aiocb **aio_list, struct io_jobs *iojob)
+{
+	int fd;
+	unsigned int i;
+	struct aio_block *aioblock; /* one per block */
+	struct aio_job *aiojob; /* one per job */
+	ssize_t rc;
+	unsigned int blk_idx = 0;
+	unsigned int blk_num;
+
+	fd = open(iojob->node, O_RDWR);
+	if (0 > fd) {
+		printf("Error: Opening %s node\n", iojob->node);
+		return false;
+	}
+	aiojob = calloc(1, sizeof(struct aio_job));
+
+	iojob->aiojob = aiojob;
+	blk_num = get_io_job_num_blocks(iojob);
+	aiojob->mask_completed = 0;
+	aiojob->mask_expected = 0;
+	aiojob->iojob = iojob;
+
+	aiojob->aio_list = (void *)aio_list;
+
+	for (i = 0; i < iojob->numitr; i++) {
+		unsigned int j;
+
+		for (j = 0; j < blk_num; j++) {
+			struct aiocb *aio_entry;
+            unsigned int buf_off = (i * blk_num * iojob->block_size) + (j * iojob->block_size);
+            unsigned int io_numbytes = iojob->block_size;
+
+			aioblock = calloc(1, sizeof(struct aio_block));
+			aioblock->parent = aiojob;
+			sem_init(&aioblock->lock, 0, 1); /* to track completion */
+			aioblock->jobitr = i;
+			aioblock->block_num = j;
+			aio_list[blk_idx] = calloc(1, sizeof(struct aiocb));
+			aio_entry = aio_list[blk_idx];
+
+			aioblock->aio_entry = aio_list[blk_idx];
+			/* Set up the AIO request */
+			aio_entry->aio_fildes = fd;
+			aio_entry->aio_buf = iojob->buf + buf_off;
+			aio_entry->aio_nbytes = io_numbytes;
+
+			/* Link the AIO request with a thread callback */
+			aio_entry->aio_sigevent.sigev_notify = SIGEV_THREAD;
+			aio_entry->aio_sigevent._sigev_un._sigev_thread._function = aio_completion_handler;
+			aio_entry->aio_sigevent._sigev_un._sigev_thread._attribute = NULL;
+			aio_entry->aio_sigevent.sigev_value.sival_ptr = aioblock;
+
+			if (0 == strncmp(iojob->iotype, "write", 5)) {
+				aio_entry->aio_lio_opcode = LIO_WRITE;
+			} else if (0 == strncmp(iojob->iotype, "read", 4)) {
+				aio_entry->aio_lio_opcode = LIO_READ;
+			} else {
+				printf("Error: Invalid IO operation specified for %s IO job\n",
+				       iojob->job_name);
+				goto ret_false;
+			}
+			sem_wait(&aioblock->lock);
+			aioblock->mask = (((__u64)1) << blk_idx);
+			aiojob->mask_expected |= aioblock->mask;
+			enqueue_aio_block(aiojob, aioblock);
+			blk_idx++;
+		}
+		/* since all IOs are submitted at once, start time shall almost be same */
+		rc = clock_gettime(CLOCK_MONOTONIC, &(aiojob->ts_start));
+	}
+	enqueue_aio_task(aiojob);
+	return true;
+ret_false:
+	if (aiojob) {
+		aiojob->mask_completed = aiojob->mask_expected;
+		cleanup_aiojob(aiojob, false);
+	}
+
+	return false;
+}
+
+void submit_paio_job(void *_iojob)
+{
+	struct io_jobs *iojob = (struct io_jobs *)_iojob;
+	struct aiocb **aio_list;
+	unsigned int numb_blks = get_io_job_num_blocks(iojob);
+	unsigned int total_jobs = (iojob->numitr * numb_blks);
+
+	printf("setting up environment for %s\n", iojob->job_name);
+	/* setup IO job env */
+	run_env_cmds(iojob->setup_tail);
+
+	aio_list = (struct aiocb **)calloc(total_jobs,
+	                                   sizeof(struct aiocb *));
+	if (false == create_paio_job(aio_list, iojob)) {
+		printf("\nError: Could not create %s IO job. Skipping.\n", iojob->job_name);
+		run_env_cmds(iojob->cleanup_tail);
+	}
+	else {
+		int s = 0;
+		int i;
+
+		/* submit all jobs at once */
+		s = lio_listio(LIO_WAIT, aio_list, total_jobs, NULL);
+		if (0 <= s)
+			printf("\nSuccessfully submitted %s IO job.\n", iojob->job_name);
+		else {
+			printf("\nError: Could not submit %s IO job.\n",
+			       iojob->job_name);
+			for (i = 0; i < total_jobs; i++)
+				printf("    block %d - error %d.\n",
+				       i, aio_error(aio_list[i]));
+			free(aio_list);
+			aio_list = NULL;
+		}
+	}
+}
+
+void cancel_paio_job(void *_aiojob)
+{
+	struct aio_job *aiojob = (struct aio_job *)_aiojob;
+	int rc;
+	struct aiocb *iocb;
+	struct aio_block *aioblock;
+
+	aioblock = aiojob->aio_block_head;
+	while (1) {
+		if (NULL == aioblock) break;
+		if (aioblock->mask !=
+				(aiojob->mask_expected &
+						aioblock->mask)) {
+			iocb = (struct aiocb *)aioblock->aio_entry;
+
+			rc = aio_cancel(aiojob->fd, iocb);
+			if (AIO_NOTCANCELED == rc)
+				printf("Warning: %s job block %d itr %d not cancelled. Will wait until cancelled\n",
+				       aiojob->iojob->job_name,
+				       aioblock->block_num, aioblock->jobitr);
+		}
+		aioblock = aioblock->next;
+	}
+}
diff --git a/QDMA/linux-kernel/user/Makefile b/QDMA/linux-kernel/user/Makefile
new file mode 100644
index 0000000..5a3ceb9
--- /dev/null
+++ b/QDMA/linux-kernel/user/Makefile
@@ -0,0 +1,19 @@
+SHELL = /bin/bash
+
+CFLAGS += -g
+#CFLAGS += -O2 -fno-inline -Wall -Wstrict-prototypes
+CFLAGS += -I. -I../include
+CFLAGS += $(EXTRA_FLAGS)
+
+DMACTL = dmactl
+DMACTL_OBJS := $(patsubst %.c,%.o,$(wildcard cli/*.c))
+
+all: clean dmactl
+
+dmactl: $(DMACTL_OBJS)
+	@mkdir -p -m 755 $(build_dir)
+	$(CC) $^ -o $(DMACTL)
+	@cp -f $(DMACTL) $(build_dir)
+
+clean:
+	@rm -f *.o */*.o $(DMACTL) $(build_dir)/$(DMACTL)*
diff --git a/QDMA/linux-kernel/user/bash/decode_hw_ctxt.sh b/QDMA/linux-kernel/user/bash/decode_hw_ctxt.sh
new file mode 100755
index 0000000..e82ebc5
--- /dev/null
+++ b/QDMA/linux-kernel/user/bash/decode_hw_ctxt.sh
@@ -0,0 +1,42 @@
+#!/bin/bash
+
+if [ $# -lt 2 ]; then
+	echo "$0: <w1> <w0>"
+	exit
+fi
+
+w1=$1
+w0=$2
+
+let "w0 = $w0 + 0"
+let "w1 = $w1 + 0"
+
+printf '\n0x%08x 0x%08x\n\n' $w1 $w0
+
+printf '\nW1 0x%08x:\n' $w1
+
+let "v = ($w1 >> 15) & 0x1"
+printf '[47]     (W1[15])     rsvd        0x%x\n' $v
+
+let "v = ($w1 >> 11) & 0xF"
+printf '[46:43]  (W1[14:11])  fetch_pnd   0x%x\n' $v
+
+let "v = ($w1 >> 10) & 0x1"
+printf '[42]     (W1[10])     evt_pnd     0x%x\n' $v
+
+let "v = ($w1 >> 9) & 0x1"
+printf '[41]     (W1[9])      idl_stp_b   0x%x\n' $v
+
+let "v = ($w1 >> 8) & 0x1"
+printf '[40]     (W1[8])      dsc_pnd     0x%x\n' $v
+
+let "v = $w1 & 0xFF"
+printf '[39:32]  (W1[7:0])    rsvd        0x%x\n' $v
+
+printf '\nW0 0x%08x:\n' $w0
+
+let "v = ($w0 >> 16) & 0xFFFF"
+printf '[31:16]  (W0[31:16]   crd_use     0x%x\n' $v
+
+let "v = $w0 & 0xFFFF"
+printf '[15:0]   (W0[15:0]    cidx        0x%x\n' $v
diff --git a/QDMA/linux-kernel/user/bash/decode_preftch_ctxt.sh b/QDMA/linux-kernel/user/bash/decode_preftch_ctxt.sh
new file mode 100755
index 0000000..5a2cf5d
--- /dev/null
+++ b/QDMA/linux-kernel/user/bash/decode_preftch_ctxt.sh
@@ -0,0 +1,40 @@
+#!/bin/bash
+
+if [ $# -lt 2 ]; then
+	echo "$0: <w1> <w0>"
+	exit
+fi
+
+w1=$1
+w0=$2
+
+let "w0 = $w0 + 0"
+let "w1 = $w1 + 0"
+
+printf '\n0x%08x 0x%08x\n\n' $w1 $w0
+
+let "v = ($w1 >> 13) & 0x1"
+printf '[45]     (W1[13])                valid              0x%x\n' $v
+
+let "v = $w1 & 0x1FFF"
+let "v1 = ($w0 >> 29) & 0x7"
+let "v2 = ($v << 3) | $v1"
+printf '[44:29]  (W1[12:0] W0[31:29])    sw_crdt            0x%x\n' $v2
+
+let "v = ($w0 >> 28) & 0x1"
+printf '[28]   (W0[28]                   q_is_in_pftch      0x%x\n' $v
+
+let "v = ($w0 >> 27) & 0x1"
+printf '[27]   (W0[27]                   en_pftch           0x%x\n' $v
+
+let "v = ($w0 >> 8) & 0x3FFFF"
+printf '[25:8]   (W0[25:8]               rsvd               0x%x\n' $v
+
+let "v = ($w0 >> 5) & 0x7"
+printf '[7:5]    (W0[7:5]                port_id            0x%x\n' $v
+
+let "v = ($w0 >> 1) & 0xF"
+printf '[4:1]    (W0[4:1]                buf_size_idx       0x%x\n' $v
+
+let "v = $w0 & 0x1"
+printf '[0]      (W0[0]                  bypass             0x%x\n' $v
diff --git a/QDMA/linux-kernel/user/bash/decode_sw_ctxt.sh b/QDMA/linux-kernel/user/bash/decode_sw_ctxt.sh
new file mode 100755
index 0000000..028c2bc
--- /dev/null
+++ b/QDMA/linux-kernel/user/bash/decode_sw_ctxt.sh
@@ -0,0 +1,106 @@
+#!/bin/bash
+
+if [ $# -lt 5 ]; then
+	echo "$0: <w4> <w3> <w2> <w1> <w0>"
+	exit
+fi
+
+w4=$1
+w3=$2
+w2=$3
+w1=$4
+w0=$5
+
+let "w0 = $w0 + 0"
+let "w1 = $w1 + 0"
+let "w2 = $w2 + 0"
+let "w3 = $w3 + 0"
+let "w4 = $w4 + 0"
+
+printf '\n0x%08x 0x%08x 0x%08x 0x%08x 0x%08x\n\n' $w4 $w3 $w2 $w1 $w0
+
+printf '\nW4 0x%08x:\n' $w4
+
+let "v = ($w4 >> 11) & 0x1"
+printf '[139]     (W4[11])    int_aggr    0x%x\n' $v
+
+let "v = ($w4 >> 0) & 0x7FF"
+printf '[138:128] (W3[10:0]   dsc_base_h  0x%x\n' $v
+
+printf '\n[127:64] (W3,W2)      dsc_base    0x%08x%08x\n' $w3 $w2
+
+printf '\nW1 0x%08x:\n' $w1
+
+let "v = ($w1 >> 31) & 0x1"
+printf '[63]     (W1[31])     is_mm       0x%x\n' $v
+
+let "v = ($w1 >> 30) & 0x1"
+printf '[62]     (W1[30])     mrkr_dis    0x%x\n' $v
+
+let "v = ($w1 >> 29) & 0x1"
+printf '[61]     (W1[29])     irq_req     0x%x\n' $v
+
+let "v = ($w1 >> 28) & 0x1"
+printf '[60]     (W1[28])     err_cmpl_status_sent 0x%x\n' $v
+
+let "v = ($w1 >> 26) & 0x3"
+printf '[59:58]  (W1[27:26]   err         0x%x\n' $v
+
+let "v = ($w1 >> 25) & 0x1"
+printf '[57]     (W1[25])     irq_no_last 0x%x\n' $v
+
+let "v = ($w1 >> 22) & 0x7"
+printf '[56:54]  (W1[23:22]   port_id     0x%x\n' $v
+
+let "v = ($w1 >> 21) & 0x1"
+printf '[53]     (W1[21])     irq_en      0x%x\n' $v
+
+let "v = ($w1 >> 20) & 0x1"
+printf '[52]     (W1[20])     cmpl_status_en      0x%x\n' $v
+
+let "v = ($w1 >> 19) & 0x1"
+printf '[51]     (W1[19])     mm_chn      0x%x\n' $v
+
+let "v = ($w1 >> 18) & 0x1"
+printf '[50]     (W1[18])     byp         0x%x\n' $v
+
+let "v = ($w1 >> 16) & 0x3"
+printf '[49:48]  (W1[17:16]   dsc_sz      0x%x\n' $v
+
+let "v = ($w1 >> 12) & 0xF"
+printf '[47:44]  (W1[15:12]   rng_sz      0x%x\n' $v
+
+let "v = ($w1 >> 8) & 0xF"
+printf '[43:40]  (W1[11:8]    rsvd        0x%x\n' $v
+
+let "v = ($w1 >> 5) & 0x7"
+printf '[39:37]  (W1[7:5]     fetch_max   0x%x\n' $v
+
+let "v = ($w1 >> 4) & 0x1"
+printf '[36]  (W1[4]          at          0x%x\n' $v
+
+let "v = ($w1 >> 3) & 0x1"
+printf '[35]     (W1[3])      cmpl_status_acc_en       0x%x\n' $v
+
+let "v = ($w1 >> 2) & 0x1"
+printf '[34]     (W1[2])      cmpl_status_pend_chk     0x%x\n' $v
+
+let "v = ($w1 >> 1) & 0x1"
+printf '[33]     (W1[1])      fcrd_en     0x%x\n' $v
+
+let "v = $w1 & 0x1"
+printf '[32]     (W1[0])      qen         0x%x\n' $v
+
+printf '\nW0 0x%08x:\n' $w0
+
+let "v = ($w0 >> 25) & 0x7F"
+printf '[31:25]  (W0[31:25]   reserved    0x%x\n' $v
+
+let "v = ($w0 >> 17) & 0xFF"
+printf '[24:17]  (W0[24:17]   fnc_id      0x%x\n' $v
+
+let "v = ($w0 >> 16) & 0x1"
+printf '[16]     (W0[16])     irq_arm     0x%x\n' $v
+
+let "v = $w0 & 0xFF"
+printf '[15:0]   (W0[15:0]    pidx        0x%x\n' $v
diff --git a/QDMA/linux-kernel/user/bash/decode_wrb_ctxt.sh b/QDMA/linux-kernel/user/bash/decode_wrb_ctxt.sh
new file mode 100755
index 0000000..763a943
--- /dev/null
+++ b/QDMA/linux-kernel/user/bash/decode_wrb_ctxt.sh
@@ -0,0 +1,91 @@
+#!/bin/bash
+
+if [ $# -lt 4 ]; then
+	echo "$0: <w3> <w2> <w1> <w0>"
+	exit
+fi
+
+w4=$1
+w3=$2
+w2=$3
+w1=$4
+w0=$5
+
+let "w0 = $w0 + 0"
+let "w1 = $w1 + 0"
+let "w2 = $w2 + 0"
+let "w3 = $w3 + 0"
+let "w4 = $w4 + 0"
+
+printf '\n0x%08x 0x%08x 0x%08x 0x%08x 0x%08x\n\n' $w4 $w3 $w2 $w1 $w0
+
+let "v = ($w4 >> 3) & 0x1"
+printf '[131]     (W4[3])                       at           0x%x\n' $v
+
+let "v = ($w4 >> 2) & 0x1"
+printf '[130]     (W4[2])                       ovf_chk_dis  0x%x\n' $v
+
+let "v = ($w4 >> 1) & 0x1"
+printf '[129]     (W4[1])                       full_upd     0x%x\n' $v
+
+let "v = ($w4 >> 0) & 0x1"
+printf '[128]     (W4[0])                       tmr_runnig   0x%x\n' $v
+
+let "v = ($w3 >> 31) & 0x1"
+printf '[127]     (W3[31])                      user_trig_pend        0x%x\n' $v
+
+let "v = ($w3 >> 29) & 0xFFFF"
+printf '[126:125] (W3[30:29])                   err          0x%x\n' $v
+
+let "v = ($w3 >> 28) & 0x1"
+printf '[124]     (W3[28])                      valid        0x%x\n' $v
+
+let "v = ($w3 >> 12) & 0xFFFF"
+printf '[123:108] (W3[27:12])                   cidx         0x%x\n' $v
+
+let "v = $w3 & 0xFFF"
+let "v1 = ($w2 >> 28) & 0xF"
+let "v2 = ($v << 4) | $v1"
+printf '[107:92]  (W3[11:0] W2[31:28])          pidx         0x%x\n' $v2
+
+let "v = ($w2 >> 26) & 0x3"
+printf '[91:90]   (W2[27:26])                   desc_size    0x%x\n' $v
+
+let "v2 = $w2 & 0x3FFFFFF"
+let "v1 = ($w1 >> 6) & 0x3FFFFFF"
+printf '[89:38]   (W2[25:0] W1[31:6])           baddr_64     '
+printf '0x%08x ' $v2
+printf '0x%08x \n' $v1
+
+let "v = ($w1 >> 0) & 0x3F"
+printf '[37:32]   (W0[5:0])                     rsvd         0x%x\n' $v
+
+let "v = ($w0 >> 28) & 0xF"
+printf '[31:28]   (W0[31:28])                   rng_sz       0x%x\n' $v
+
+let "v = ($w0 >> 27) & 0x1"
+printf '[27]      (W0[27])                      color        0x%x\n' $v
+
+let "v = ($w0 >> 25) & 0x3"
+printf '[26:25]   (W0[26:25])                   int_st       0x%x\n' $v
+
+let "v = ($w0 >> 21) & 0xF"
+printf '[24:21]   (W0[24:21])                   timer_idx    0x%x\n' $v
+
+let "v = ($w0 >> 17) & 0xF"
+printf '[20:17]   (W0[20:17])                   counter_idx  0x%x\n' $v
+
+let "v = ($w0 >> 13) & 0xF"
+printf '[16:13]    (W0[16:`3])                  rsvd         0x%x\n' $v
+
+let "v = ($w0 >> 5) & 0xF"
+printf '[12:5]    (W0[12:5])                    fnc_id       0x%x\n' $v
+
+let "v = ($w0 >> 2) & 0x7"
+printf '[4:2]     (W0[4:2])                     trig_mode    0x%x\n' $v
+
+let "v = ($w0 >> 1) & 0x1"
+printf '[1]       (W0[1])                       en_int       0x%x\n' $v
+
+let "v = $w0 & 0x1"
+printf '[0]       (W0[0])                       en_stat_desc 0x%x\n' $v
diff --git a/QDMA/linux-kernel/user/bash/qdma_run_test_st_vf.sh b/QDMA/linux-kernel/user/bash/qdma_run_test_st_vf.sh
new file mode 100755
index 0000000..88a95ab
--- /dev/null
+++ b/QDMA/linux-kernel/user/bash/qdma_run_test_st_vf.sh
@@ -0,0 +1,198 @@
+#!/bin/bash
+
+if [ -z $1 ] || [ $1 == '-h' ]
+then
+	echo "ERROR:   Invalid Command Line"
+	echo "Example: run_st_c2h_vf.sh pfn vfn size(in byte) num_pkt iteration"
+	exit 
+fi
+
+################################################
+# User Configurable Parameters
+################################################
+
+pfn=$1 # PF number
+vfn=$2 # VF number
+size=$3 # Size per payload packet
+num_pkt=$4 # number of payload packet
+iteration=$5 # iterations of C2H tests
+num_qs=4
+logfile="loopback$1_$2.log"
+infile='/root/Desktop/datafile_16bit_pattern.bin'
+
+if [ -z $iteration ]; then
+	iteration=1 
+fi
+
+if [ ! -z $size ]; then 
+	f_size=1
+else
+   	f_size=0
+fi
+
+#################################################
+# Helper Functions
+################################################
+
+usr_bar=1
+vf=0
+host_adr_high=4094
+mem_div=16384
+s_high=$mem_div
+
+function randomize_tx_params() {
+        #random host address between 0 to 3094
+        hst_adr1=$random
+        let "hst_adr1 %= $host_adr_high"
+        hst_adr1=0;
+        # byte size
+        f1=$random
+        let "f1 %= 2"
+        if [ $f1 -eq 0 ]; then
+                size=$(( ($random %64) +1 )) ## for random number between 1 and 64
+        else
+                size=$(( ($random<<15)|($random+1) ))
+        fi
+        let "size %= $s_high"
+        echo "size = $size"
+        even=$size
+        let "even %= 2"
+        if [ $even -eq 1 ];then
+                let "size = $size+1"
+        fi
+
+ 	num_pkt=$(( ($RANDOM % 9) +1))
+	echo " num_pkt = $num_pkt"
+
+}
+
+function queue_start() {
+	echo "---- Queue Start $2 ----"
+	dmactl qdma$1 q add idx $2 mode $3 dir h2c
+	dmactl qdma$1 q start idx $2 dir h2c mode $3
+	dmactl qdma$1 q add idx $2 mode $3 dir c2h
+	dmactl qdma$1 q start idx $2 dir c2h mode $3
+}
+
+function cleanup_queue() {
+	echo "---- Queue Clean up $2 ----"
+        dmactl qdma$1 q stop idx $2 dir h2c mode $3
+        dmactl qdma$1 q del idx $2 dir h2c mode $3
+        dmactl qdma$1 q stop idx $2 dir c2h mode $3
+        dmactl qdma$1 q del idx $2 dir c2h mode $3
+}
+
+
+echo "############################# AXI-ST Start #################################"
+
+
+for ((i=0; i< $num_qs; i++)) do
+	# Setup for Queues
+	qid=$i
+        hw_qid=$(($qid + $(($vfn*8)) + 128))
+	dev_st_c2h="/dev/qdmavf0-ST-C2H-$qid"
+	dev_st_h2c="/dev/qdmavf0-ST-H2C-$qid"
+	out="out$qid"
+        loop=1
+
+	# Open the Queue for AXI-ST streaming interface.
+	queue_start vf$vf $qid st > /dev/null
+
+	while [ "$loop" -le $iteration ]
+	do
+		# Determine if DMA is targeted @ random host address
+		if [ $f_size -eq 1 ]; then
+			hst_adr1=0
+		else
+			randomize_tx_params
+		fi
+
+		# if more packets are requested.
+		let "tsize= $size*$num_pkt"
+ 
+                echo ""
+                echo "########################################################################################"
+		echo "#############  H2C ST LOOP $loop : dev=$dev_st_h2c pfn=$pfn vfn=$vfn qid=$qid hw_qid=$hw_qid"
+		echo "#############               transfer_size=$tsize pkt_size=$size pkt_count=$num_pkt hst_adr=$hst_adr1"
+                echo "########################################################################################"
+
+                #clear match bit before each H2C ST transfer
+		dmactl qdmavf0 reg write bar $usr_bar 0x0c 0x01
+
+
+		# H2C transfer 
+		dma_to_device -d $dev_st_h2c -f $infile -s $tsize &
+                re=$?
+
+		wait
+
+	        # Check match bit and QID
+		hwqid_match=$(dmactl qdmavf0 reg read bar $usr_bar 0x10 | grep -o '0x[0-9][0-9][0-9]')
+                hw_qid_hex=$(printf '%x' $hw_qid)
+                if [ $hwqid_match != 0x$hw_qid_hex'1' ]; then
+                  echo "#### ERROR: QID MATCH is $hwqid_match"
+                  re=-1
+                fi               
+
+                if [ $re == 0 ]; then 
+                  echo "######################################################"
+		  echo "##############   VF H2C ST PASS QID $qid ################"
+                  echo "######################################################"
+                else
+                  echo "#### ERROR: VF H2C ST FAIL"
+                fi
+
+                echo ""
+                echo "########################################################################################"
+		echo "#############  C2H ST LOOP $loop : dev=$dev_st_c2h pfn=$pfn vfn=$vfn qid=$qid hw_qid=$hw_qid"
+		echo "#############               transfer_size=$tsize pkt_size=$size pkt_count=$num_pkt hst_adr=$hst_adr1"
+                echo "########################################################################################"
+
+		dmactl qdmavf0 reg write bar $usr_bar 0x0 $hw_qid  # for Queue 0
+		dmactl qdmavf0 reg write bar $usr_bar 0x4 $size
+		dmactl qdmavf0 reg write bar $usr_bar 0x20 $num_pkt #number of packets
+		dmactl qdmavf0 reg write bar $usr_bar 0x08 2 # Must set C2H start before starting transfer
+
+		dma_from_device -d $dev_st_c2h -f $out -o $hst_adr1 -s $tsize &
+
+		wait
+
+		#Check if files is there.
+		if [ ! -f $out ]; then
+			echo " #### ERROR: Queue $qid output file does not exists ####"
+			echo " #### ERROR: Queue $qid output file does not exists ####" >> $logfile
+			cleanup_queue vf$vf $qid st
+			exit -1
+		fi
+
+		# check files size
+		filesize=$(stat -c%s "$out")
+		if [ $filesize -gt $tsize ]; then
+			echo "#### ERROR: Queue $qid output file size does not match, filesize= $filesize ####"
+			echo "#### ERROR: Queue $qid output file size does not match, filesize= $filesize ####" >> $logfile
+			cleanup_queue vf$vf $qid st
+			exit -1 
+		fi
+
+		#compare file
+		cmp $out $infile -n $tsize
+		if [ $? -eq 1 ]; then
+			echo "#### Test ERROR. Queue $qid data did not match ####" 
+			echo "#### Test ERROR. Queue $qid data did not match ####" >> $logfile
+			dmactl qdmavf0 q dump idx $qid mode st dir c2h
+			dmactl qdmavf0 reg dump
+			cleanup_queue vf$vf $qid st
+			exit -1
+		else
+                        echo "######################################################"
+			echo "##############   VF C2H ST PASS QID $qid ################"
+                        echo "######################################################"
+		fi
+		wait
+		((loop++))
+	done
+	cleanup_queue vf$vf $qid st > /dev/null
+done
+echo "########################## AXI-ST completed ###################################"
+exit 0
+
diff --git a/QDMA/linux-kernel/user/cli/cmd_parse.c b/QDMA/linux-kernel/user/cli/cmd_parse.c
new file mode 100644
index 0000000..88d123d
--- /dev/null
+++ b/QDMA/linux-kernel/user/cli/cmd_parse.c
@@ -0,0 +1,1201 @@
+/*
+ * This file is part of the QDMA userspace application
+ * to enable the user to execute the QDMA functionality
+ *
+ * Copyright (c) 2018-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is licensed under BSD-style license (found in the
+ * LICENSE file in the root directory of this source tree)
+ */
+
+#include <ctype.h>
+#include <err.h>
+#include <errno.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include "cmd_parse.h"
+#include "nl_user.h"
+#include "version.h"
+
+static int read_range(int argc, char *argv[], int i, unsigned int *v1,
+			unsigned int *v2);
+
+static const char *progname;
+
+#define Q_ADD_ATTR_IGNORE_MASK ~((1 << QPARM_IDX)  | \
+				(1 << QPARM_MODE)  | \
+				(1 << QPARM_DIR))
+#define Q_START_ATTR_IGNORE_MASK ((1 << QPARM_MODE)  | \
+                                  (1 << QPARM_DESC) | \
+                                  (1 << QPARM_CMPT))
+#define Q_STOP_ATTR_IGNORE_MASK ~((1 << QPARM_IDX) | \
+				(1 << QPARM_DIR))
+#define Q_DEL_ATTR_IGNORE_MASK ~((1 << QPARM_IDX)  | \
+				(1 << QPARM_DIR))
+#define Q_DUMP_ATTR_IGNORE_MASK ~((1 << QPARM_IDX)  | \
+				(1 << QPARM_DIR) | \
+				(1 << QPARM_DESC) | \
+				(1 << QPARM_CMPT))
+#define Q_DUMP_PKT_ATTR_IGNORE_MASK ~((1 << QPARM_IDX)  | \
+					(1 << QPARM_DIR))
+#define Q_H2C_ATTR_IGNORE_MASK ((1 << QPARM_C2H_BUFSZ_IDX) | \
+				(1 << QPARM_CMPT_TMR_IDX) | \
+				(1 << QPARM_CMPT_CNTR_IDX) | \
+				(1 << QPARM_CMPT_TRIG_MODE) | \
+				(1 << QPARM_CMPTSZ))
+
+#define Q_ADD_FLAG_IGNORE_MASK ~(XNL_F_QMODE_ST | \
+				XNL_F_QMODE_MM | \
+				XNL_F_QDIR_BOTH)
+#define Q_START_FLAG_IGNORE_MASK (XNL_F_QMODE_ST | \
+                                  XNL_F_QMODE_MM)
+#define Q_STOP_FLAG_IGNORE_MASK ~(XNL_F_QMODE_ST | \
+					XNL_F_QMODE_MM | \
+					XNL_F_QDIR_BOTH)
+#define Q_DEL_FLAG_IGNORE_MASK  ~(XNL_F_QMODE_ST | \
+					XNL_F_QMODE_MM | \
+					XNL_F_QDIR_BOTH)
+#define Q_DUMP_FLAG_IGNORE_MASK  ~(XNL_F_QMODE_ST | \
+					XNL_F_QMODE_MM | \
+					XNL_F_QDIR_BOTH)
+#define Q_DUMP_PKT_FLAG_IGNORE_MASK ~(XNL_F_QMODE_ST | \
+					XNL_F_QMODE_MM | \
+					XNL_F_QDIR_C2H)
+#define Q_H2C_FLAG_IGNORE_MASK  (XNL_F_C2H_CMPL_INTR_EN | \
+				XNL_F_CMPL_UDD_EN)
+
+#ifdef ERR_DEBUG
+char *qdma_err_str[qdma_errs] = {
+	"err_ram_sbe",
+	"err_ram_dbe",
+	"err_dsc",
+	"err_trq",
+	"err_h2c_mm_0",
+	"err_h2c_mm_1",
+	"err_c2h_mm_0",
+	"err_c2h_mm_1",
+	"err_c2h_st",
+	"ind_ctxt_cmd_err",
+	"err_bdg",
+	"err_h2c_st",
+	"poison",
+	"ur_ca",
+	"param",
+	"addr",
+	"tag",
+	"flr",
+	"timeout",
+	"dat_poison",
+	"flr_cancel",
+	"dma",
+	"dsc",
+	"rq_cancel",
+	"dbe",
+	"sbe",
+	"unmapped",
+	"qid_range",
+	"vf_access_err",
+	"tcp_timeout",
+	"mty_mismatch",
+	"len_mismatch",
+	"qid_mismatch",
+	"desc_rsp_err",
+	"eng_wpl_data_par_err",
+	"msi_int_fail",
+	"err_desc_cnt",
+	"portid_ctxt_mismatch",
+	"portid_byp_in_mismatch",
+	"cmpt_inv_q_err",
+	"cmpt_qfull_err",
+	"cmpt_cidx_err",
+	"cmpt_prty_err",
+	"fatal_mty_mismatch",
+	"fatal_len_mismatch",
+	"fatal_qid_mismatch",
+	"timer_fifo_ram_rdbe",
+	"fatal_eng_wpl_data_par_err",
+	"pfch_II_ram_rdbe",
+	"cmpt_ctxt_ram_rdbe",
+	"pfch_ctxt_ram_rdbe",
+	"desc_req_fifo_ram_rdbe",
+	"int_ctxt_ram_rdbe",
+	"cmpt_coal_data_ram_rdbe",
+	"tuser_fifo_ram_rdbe",
+	"qid_fifo_ram_rdbe",
+	"payload_fifo_ram_rdbe",
+	"wpl_data_par_err",
+	"zero_len_desc_err",
+	"csi_mop_err",
+	"no_dma_dsc_err",
+	"sb_mi_h2c0_dat",
+	"sb_mi_c2h0_dat",
+	"sb_h2c_rd_brg_dat",
+	"sb_h2c_wr_brg_dat",
+	"sb_c2h_rd_brg_dat",
+	"sb_c2h_wr_brg_dat",
+	"sb_func_map",
+	"sb_dsc_hw_ctxt",
+	"sb_dsc_crd_rcv",
+	"sb_dsc_sw_ctxt",
+	"sb_dsc_cpli",
+	"sb_dsc_cpld",
+	"sb_pasid_ctxt_ram",
+	"sb_timer_fifo_ram",
+	"sb_payload_fifo_ram",
+	"sb_qid_fifo_ram",
+	"sb_tuser_fifo_ram",
+	"sb_wrb_coal_data_ram",
+	"sb_int_qid2vec_ram",
+	"sb_int_ctxt_ram",
+	"sb_desc_req_fifo_ram",
+	"sb_pfch_ctxt_ram",
+	"sb_wrb_ctxt_ram",
+	"sb_pfch_ll_ram",
+	"sb_h2c_pend_fifo",
+	"db_mi_h2c0_dat",
+	"db_mi_c2h0_dat",
+	"db_h2c_rd_brg_dat",
+	"db_h2c_wr_brg_dat",
+	"db_c2h_rd_brg_dat",
+	"db_c2h_wr_brg_dat",
+	"db_func_map",
+	"db_dsc_hw_ctxt",
+	"db_dsc_crd_rcv",
+	"db_dsc_sw_ctxt",
+	"db_dsc_cpli",
+	"db_dsc_cpld",
+	"db_pasid_ctxt_ram",
+	"db_timer_fifo_ram",
+	"db_payload_fifo_ram",
+	"db_qid_fifo_ram",
+	"db_tuser_fifo_ram",
+	"db_wrb_coal_data_ram",
+	"db_int_qid2vec_ram",
+	"db_int_ctxt_ram",
+	"db_desc_req_fifo_ram",
+	"db_pfch_ctxt_ram",
+	"db_wrb_ctxt_ram",
+	"db_pfch_ll_ram",
+	"db_h2c_pend_fifo",
+};
+#endif
+
+static void __attribute__((noreturn)) usage(FILE *fp)
+{
+	fprintf(fp, "Usage: %s [dev|qdma[vf]<N>] [operation] \n", progname);
+	fprintf(fp, "\tdev [operation]: system wide FPGA operations\n");
+	fprintf(fp, 
+		"\t\tlist                    list all qdma functions\n");
+	fprintf(fp,
+		"\tqdma[N] [operation]: per QDMA FPGA operations\n");
+	fprintf(fp,
+		"\t\tversion                 lists the Hardware and Software version\n"
+		"\t\tstat                    statistics of qdma[N] device\n"
+		"\t\tstat clear              clear all statistics data of qdma[N} device\n"
+		"\t\tq list                  list all queues\n"
+		"\t\tq add idx <N> [mode <mm|st>] [dir <h2c|c2h|bi>] - add a queue\n"
+		"\t\t                                                  *mode default to mm\n"
+		"\t\t                                                  *dir default to h2c\n"
+	        "\t\tq add list <start_idx> <num_Qs> [mode <mm|st>] [dir <h2c|c2h|bi>] - add multiple queues at once\n"
+	        "\t\tq start idx <N> [dir <h2c|c2h|bi>] [idx_ringsz <0:15>] [idx_bufsz <0:15>] [idx_tmr <0:15>]\n"
+		"                                    [idx_cntr <0:15>] [trigmode <every|usr_cnt|usr|usr_tmr|dis>] [cmptsz <0|1|2|3>] [sw_desc_sz <3>]\n"
+	        "                                    [desc_bypass_en] [pfetch_en] [pfetch_bypass_en] [dis_cmpl_status]\n"
+	        "                                    [dis_cmpl_status_acc] [dis_cmpl_status_pend_chk] [c2h_udd_en]\n"
+	        "                                    [cmpl_ovf_dis] [dis_fetch_credit] [dis_cmpl_status] [c2h_cmpl_intr_en] - start a single queue\n"
+	        "\t\tq start list <start_idx> <num_Qs> [dir <h2c|c2h|bi>] [idx_bufsz <0:15>] [idx_tmr <0:15>]\n"
+		"                                    [idx_cntr <0:15>] [trigmode <every|usr_cnt|usr|usr_tmr|dis>] [cmptsz <0|1|2|3>] [sw_desc_sz <3>]\n"
+	        "                                    [desc_bypass_en] [pfetch_en] [pfetch_bypass_en] [dis_cmpl_status]\n"
+	        "                                    [dis_cmpl_status_acc] [dis_cmpl_status_pend_chk] [cmpl_ovf_dis]\n"
+	        "                                    [dis_fetch_credit] [dis_cmpl_status] [c2h_cmpl_intr_en] - start multiple queues at once\n"
+	        "\t\tq stop idx <N> dir [<h2c|c2h|bi>] - stop a single queue\n"
+	        "\t\tq stop list <start_idx> <num_Qs> dir [<h2c|c2h|bi>] - stop list of queues at once\n"
+	        "\t\tq del idx <N> dir [<h2c|c2h|bi>] - delete a queue\n"
+	        "\t\tq del list <start_idx> <num_Qs> dir [<h2c|c2h|bi>] - delete list of queues at once\n"
+		"\t\tq dump idx <N> dir [<h2c|c2h|bi>]   dump queue param\n"
+		"\t\tq dump list <start_idx> <num_Qs> dir [<h2c|c2h|bi>] - dump queue param\n"
+		"\t\tq dump idx <N> dir [<h2c|c2h|bi>] desc <x> <y> - dump desc ring entry x ~ y\n"
+		"\t\tq dump list <start_idx> <num_Qs> dir [<h2c|c2h|bi>] desc <x> <y> - dump desc ring entry x ~ y\n"
+		"\t\tq dump idx <N> dir [<h2c|c2h|bi>] cmpt <x> <y> - dump cmpt ring entry x ~ y\n"
+		"\t\tq dump list <start_idx> <num_Qs> dir [<h2c|c2h|bi>] cmpt <x> <y> - dump cmpt ring entry x ~ y\n"
+#ifdef ERR_DEBUG
+		"\t\tq err help - help to induce errors  \n"
+		"\t\tq err idx <N> [<err <[1|0]>>] dir <[h2c|c2h|bi]> - induce errors on q idx <N>  \n"
+#endif
+		);
+	fprintf(fp,
+		"\t\treg dump [dmap <Q> <N>]          - register dump. Only dump dmap registers if dmap is specified.\n"
+		"\t\t                                   specify dmap range to dump: Q=queue, N=num of queues\n"
+		"\t\treg read [bar <N>] <addr>        - read a register\n"
+		"\t\treg write [bar <N>] <addr> <val> - write a register\n");
+	fprintf(fp,
+		"\t\tintring dump vector <N> <start_idx> <end_idx> - interrupt ring dump for vector number <N>  \n"
+		"\t\t                                                for intrrupt entries :<start_idx> --- <end_idx>\n");
+
+	exit(fp == stderr ? 1 : 0);
+}
+
+static int arg_read_int(char *s, uint32_t *v)
+{
+    char *p;
+
+    *v = strtoul(s, &p, 0);
+    if (*p) {
+        warnx("bad parameter \"%s\", integer expected", s);
+        return -EINVAL;
+    }
+    return 0;
+}
+
+static int parse_ifname(char *name, struct xcmd_info *xcmd)
+{
+	int rv;
+	int len = strlen(name);
+	int pos, i;
+	uint32_t v;
+	char *p;
+
+	/* qdmaN of qdmavfN*/
+	if (len > 11) {
+		warnx("interface name %s too long, expect qdma<N>.\n", name);
+		return -EINVAL;
+	}
+	if (strncmp(name, "qdma", 4)) {
+		warnx("bad interface name %s, expect qdma<N>.\n", name);
+		return -EINVAL;
+	}
+	if (name[4] == 'v' && name[5] == 'f') {
+		xcmd->vf = 1;
+		pos = 6;
+	} else {
+		xcmd->vf = 0;
+		pos = 4;
+	}
+	for (i = pos; i < len; i++) {
+		if (!isxdigit(name[i])) {
+			warnx("%s unexpected <qdmaN>, %d.\n", name, i);
+			return -EINVAL;
+		}
+	}
+
+	v = strtoul(name + pos, &p, 16);
+	if (*p) {
+		warnx("bad parameter \"%s\", integer expected", name + pos);
+		return -EINVAL;
+	}
+
+	xcmd->if_bdf = v;
+	return 0;
+}
+
+#define get_next_arg(argc, argv, i) \
+	if (++(*i) >= argc) { \
+		warnx("%s missing parameter after \"%s\".\n", __FUNCTION__, argv[--(*i)]); \
+		return -EINVAL; \
+	}
+
+#define __get_next_arg(argc, argv, i) \
+	if (++i >= argc) { \
+		warnx("%s missing parameter aft \"%s\".\n", __FUNCTION__, argv[--i]); \
+		return -EINVAL; \
+	}
+
+static int next_arg_read_int(int argc, char *argv[], int *i, unsigned int *v)
+{
+	get_next_arg(argc, argv, i);
+	return arg_read_int(argv[*i], v);
+}
+
+static int next_arg_read_pair(int argc, char *argv[], int *start, char *s,
+			unsigned int *v, int optional)
+{
+	int rv;
+	int i = *start;
+
+	/* string followed by an int */
+	if ((i + 2) >= argc) {
+		if (optional) {
+			warnx("No optional parm %s after \"%s\".\n", s, argv[i]);
+			return 0;
+		} else {
+			warnx("missing parameter after \"%s\".\n", argv[i]);
+			return -EINVAL;
+		}
+	}
+
+	__get_next_arg(argc, argv, i);
+
+	if (!strcmp(s, argv[i])) {
+		get_next_arg(argc, argv, &i);
+		*start = i;
+		return arg_read_int(argv[i], v);
+	}
+
+	warnx("bad parameter, \"%s\".\n", argv[i]);
+	return -EINVAL;
+}
+
+static int validate_regcmd(enum xnl_op_t qcmd, struct xcmd_reg	*regcmd)
+{
+	int invalid = 0;
+
+	switch(qcmd) {
+		case XNL_CMD_REG_DUMP:
+			break;
+		case XNL_CMD_REG_RD:
+		case XNL_CMD_REG_WRT:
+			if ((regcmd->bar != 0) && (regcmd->bar != 2)) {
+				printf("dmactl: bar %d number out of range\n",
+				       regcmd->bar);
+				invalid = -EINVAL;
+				break;
+			}
+#if 0
+			if ((regcmd->bar == 0) &&
+				!is_valid_addr(regcmd->bar, regcmd->reg)) {
+				printf("dmactl: Invalid address 0x%x in bar %u\n",
+				       regcmd->reg, regcmd->bar);
+				invalid = -EINVAL;
+			}
+#endif
+			break;
+		default:
+			invalid = -EINVAL;
+			break;
+	}
+
+	return invalid;
+}
+
+static int parse_reg_cmd(int argc, char *argv[], int i, struct xcmd_info *xcmd)
+{
+	struct xcmd_reg	*regcmd = &xcmd->u.reg;
+	int rv;
+	int args_valid;
+
+	/*
+	 * reg dump
+	 * reg read [bar <N>] <addr> 
+	 * reg write [bar <N>] <addr> <val> 
+	 */
+
+	memset(regcmd, 0, sizeof(struct xcmd_reg));
+	if (!strcmp(argv[i], "dump")) {
+		xcmd->op = XNL_CMD_REG_DUMP;
+		i++;
+
+		if (i < argc) {
+			if (!strcmp(argv[i], "dmap")) {
+				get_next_arg(argc, argv, &i);
+				rv = read_range(argc, argv, i, &regcmd->range_start,
+					&regcmd->range_end);
+				if (rv < 0)
+					return rv;
+				i = rv;
+			}
+		}
+
+	} else if (!strcmp(argv[i], "read")) {
+		xcmd->op = XNL_CMD_REG_RD;
+
+		get_next_arg(argc, argv, &i);
+		if (!strcmp(argv[i], "bar")) {
+			rv = next_arg_read_int(argc, argv, &i, &regcmd->bar);
+			if (rv < 0)
+				return rv;
+			regcmd->sflags |= XCMD_REG_F_BAR_SET;
+			get_next_arg(argc, argv, &i);
+		}
+		rv = arg_read_int(argv[i], &regcmd->reg);
+		if (rv < 0)
+			return rv;
+		regcmd->sflags |= XCMD_REG_F_REG_SET;
+
+		i++;
+
+	} else if (!strcmp(argv[i], "write")) {
+		xcmd->op = XNL_CMD_REG_WRT;
+
+		get_next_arg(argc, argv, &i);
+		if (!strcmp(argv[i], "bar")) {
+			rv = next_arg_read_int(argc, argv, &i, &regcmd->bar);
+			if (rv < 0)
+				return rv;
+			regcmd->sflags |= XCMD_REG_F_BAR_SET;
+			get_next_arg(argc, argv, &i);
+		}
+		rv = arg_read_int(argv[i], &xcmd->u.reg.reg);
+		if (rv < 0)
+			return rv;
+		regcmd->sflags |= XCMD_REG_F_REG_SET;
+
+		rv = next_arg_read_int(argc, argv, &i, &xcmd->u.reg.val);
+		if (rv < 0)
+			return rv;
+		regcmd->sflags |= XCMD_REG_F_VAL_SET;
+
+		i++;
+	}
+
+	args_valid = validate_regcmd(xcmd->op, regcmd);
+
+	return (args_valid == 0) ? i : args_valid;
+}
+
+static int read_range(int argc, char *argv[], int i, unsigned int *v1,
+			unsigned int *v2)
+{
+	int rv;
+
+	/* range */
+	rv = arg_read_int(argv[i], v1);
+	if (rv < 0)
+		return rv;
+
+	get_next_arg(argc, argv, &i);
+	rv = arg_read_int(argv[i], v2);
+	if (rv < 0)
+		return rv;
+
+	if (v2 < v1) {
+		warnx("invalid range %u ~ %u.\n", *v1, *v2);
+		return -EINVAL;
+	}
+
+	return ++i;
+}
+
+static char *qparm_type_str[QPARM_MAX] = {
+	"idx",
+	"mode",
+	"dir",
+	"desc",
+	"cmpt",
+	"cmptsz",
+	"sw_desc_sz",
+	"idx_ringsz",
+	"idx_bufsz",
+	"idx_tmr",
+	"idx_cntr",
+	"trigmode",
+	"pip_gl_max",
+	"pip_flow_id",
+	"pipe_slr_id",
+	"pipe_tdest",
+#ifdef ERR_DEBUG
+	"err_no"
+#endif
+};
+
+static char *qflag_type_str[MAX_QFLAGS] = {
+	"mode",
+	"mode",
+	"dir",
+	"dir",
+	"pfetch_en",
+	"bypass",
+	"fetch_credit",
+	"dis_fetch_credit",
+	"dis_cmpl_status_acc",
+	"dis_cmpl_status",
+	"dis_cmpl_status_pend_chk",
+	"dis_cmpl_status",
+	"c2h_cmpl_intr_en",
+	"c2h_udd_en",
+	"cmpl_ovf_dis"
+};
+
+#define IS_SIZE_IDX_VALID(x) (x < 16)
+
+static void print_ignored_params(uint32_t ignore_mask, uint8_t isflag)
+{
+	unsigned int maxcount = isflag ? MAX_QFLAGS : QPARM_MAX;
+	char **qparam = isflag ? qflag_type_str : qparm_type_str;
+	char *pdesc = isflag ? "flag" : "attr";
+	unsigned int i;
+
+	for (i = 0; ignore_mask && (i < maxcount); i++) {
+		if (ignore_mask & 0x01)
+			warnx("Warn: Ignoring %s: %s", pdesc, qparam[i]);
+		ignore_mask >>= 1;
+	}
+}
+
+static int validate_qcmd(enum xnl_op_t qcmd, struct xcmd_q_parm *qparm)
+{
+	int invalid = 0;
+	switch(qcmd) {
+		case XNL_CMD_Q_LIST:
+			if (qparm->sflags)
+				warnx("Warn: Ignoring all attributes and flags");
+			break;
+		case XNL_CMD_Q_ADD:
+			print_ignored_params(qparm->sflags &
+					     Q_ADD_ATTR_IGNORE_MASK, 0);
+			print_ignored_params(qparm->flags &
+					     Q_ADD_FLAG_IGNORE_MASK, 1);
+			break;
+		case XNL_CMD_Q_START:
+			if (!IS_SIZE_IDX_VALID(qparm->c2h_bufsz_idx)) {
+				warnx("dmactl: C2H Buf index out of range");
+				invalid = -EINVAL;
+			}
+			if (!IS_SIZE_IDX_VALID(qparm->qrngsz_idx)) {
+				warnx("dmactl: Queue ring size index out of range");
+				invalid = -EINVAL;
+			}
+			if (!IS_SIZE_IDX_VALID(qparm->cmpt_cntr_idx)) {
+				warnx("dmactl: CMPT counter index out of range");
+				invalid = -EINVAL;
+			}
+			if (!IS_SIZE_IDX_VALID(qparm->cmpt_tmr_idx)) {
+				warnx("dmactl: CMPT timer index out of range");
+				invalid = -EINVAL;
+			}
+			if (qparm->cmpt_entry_size >=
+					XNL_ST_C2H_NUM_CMPT_DESC_SIZES) {
+				warnx("dmactl: CMPT entry size out of range");
+				invalid = -EINVAL;
+			}
+			if (qparm->flags & XNL_F_PFETCH_BYPASS_EN) {
+				if (!(qparm->flags & XNL_F_DESC_BYPASS_EN)) {
+					printf("Error:desc bypass enable must be enabled for configuring pfetch bypass enable\n");
+					invalid = -EINVAL;
+					break;
+				}
+			}
+			if (qparm->flags & XNL_F_CMPL_UDD_EN) {
+				if (!(qparm->sflags & (1 << QPARM_CMPTSZ))) {
+					printf("Error: cmptsz required for enabling c2h udd packet\n");
+					invalid = -EINVAL;
+					break;
+				}
+			}
+			if (qparm->flags & XNL_F_QDIR_H2C) {
+				print_ignored_params(qparm->sflags &
+						     (Q_START_ATTR_IGNORE_MASK |
+						     Q_H2C_ATTR_IGNORE_MASK), 0);
+				print_ignored_params(qparm->flags &
+						     (Q_START_FLAG_IGNORE_MASK |
+						     Q_H2C_FLAG_IGNORE_MASK), 1);
+			}
+			if ((qparm->sflags & (1 << QPARM_SW_DESC_SZ))) {
+				/* TODO: in 2018.3 RTL1 , only 64B sw_desc_size is supported */
+				if (qparm->sw_desc_sz != DESC_SIZE_64B) {
+					warnx("dmactl: desc size out of range");
+					invalid = -EINVAL;
+				}
+			}
+
+			break;
+		case XNL_CMD_Q_STOP:
+			print_ignored_params(qparm->sflags &
+					     Q_STOP_ATTR_IGNORE_MASK, 0);
+			print_ignored_params(qparm->flags &
+					     Q_STOP_FLAG_IGNORE_MASK, 1);
+			break;
+		case XNL_CMD_Q_DEL:
+			print_ignored_params(qparm->sflags &
+					     Q_DEL_ATTR_IGNORE_MASK, 0);
+			print_ignored_params(qparm->flags &
+					     Q_DEL_FLAG_IGNORE_MASK, 1);
+			break;
+		case XNL_CMD_Q_CMPT:
+		case XNL_CMD_Q_DUMP:
+			if ((qparm->sflags & ((1 << QPARM_DESC) |
+					(1 << QPARM_CMPT))) == ((1 << QPARM_DESC) |
+							(1 << QPARM_CMPT))) {
+				invalid = -EINVAL;
+				printf("Error: Both desc and cmpt attr cannot be taken for Q DUMP\n");
+				break;
+			}
+		case XNL_CMD_Q_DESC:
+			print_ignored_params(qparm->sflags &
+					     Q_DUMP_ATTR_IGNORE_MASK, 0);
+			print_ignored_params(qparm->flags &
+					     Q_DUMP_FLAG_IGNORE_MASK, 1);
+			break;
+		case XNL_CMD_Q_RX_PKT:
+			if (qparm->flags & XNL_F_QDIR_H2C) {
+				printf("Rx dump packet is st c2h only command\n");
+				invalid = -EINVAL;
+				break;
+			}
+			print_ignored_params(qparm->sflags &
+					     Q_DUMP_PKT_ATTR_IGNORE_MASK, 0);
+			print_ignored_params(qparm->flags &
+					     Q_DUMP_PKT_FLAG_IGNORE_MASK, 1);
+			break;
+#ifdef ERR_DEBUG
+		case XNL_CMD_Q_ERR_INDUCE:
+			break;
+#endif
+		default:
+			invalid = -EINVAL;
+			break;
+	}
+
+	return invalid;
+}
+
+#ifdef ERR_DEBUG
+static unsigned char get_err_num(char *err)
+{
+	uint32_t i;
+
+	for (i = 0; i < qdma_errs; i++)
+		if (!strcmp(err, qdma_err_str[i]))
+			break;
+
+	return i;
+}
+#endif
+
+static int read_qparm(int argc, char *argv[], int i, struct xcmd_q_parm *qparm,
+			unsigned int f_arg_required)
+{
+	int rv;
+	uint32_t v1, v2;
+	unsigned int f_arg_set = 0;;
+	unsigned int mask;
+
+	/*
+	 * idx <val>
+	 * list <start_idx> <num_q>
+	 * ringsz <val>
+	 * bufsz <val>
+	 * mode <mm|st>
+	 * dir <h2c|c2h|bi>
+	 * cdev <0|1>
+	 * bypass <0|1>
+	 * desc <x> <y>
+	 * cmpt <x> <y>
+	 * cmptsz <0|1|2|3>
+	 */
+
+	qparm->idx = XNL_QIDX_INVALID;
+
+	while (i < argc) {
+#ifdef ERR_DEBUG
+		if ((f_arg_required & (1 << QPARAM_ERR_NO)) &&
+				(!strcmp(argv[i], "help"))) {
+			uint32_t j;
+
+			fprintf(stdout, "q err idx <N> <num_errs> [list of <err <[1|0]>>] dir <[h2c|c2h|bi]>\n");
+			fprintf(stdout, "Supported errors:\n");
+			for (j = 0; j < qdma_errs; j++)
+				fprintf(stdout, "\t%s\n", qdma_err_str[j]);
+
+			return argc;
+		}
+#endif
+		if (!strcmp(argv[i], "idx")) {
+			rv = next_arg_read_int(argc, argv, &i, &v1);
+			if (rv < 0)
+				return rv;
+
+			qparm->idx = v1;
+			f_arg_set |= 1 << QPARM_IDX;
+			qparm->num_q = 1;
+#ifdef ERR_DEBUG
+			if (f_arg_required & (1 << QPARAM_ERR_NO)) {
+				unsigned char err_no;
+
+				get_next_arg(argc, argv, &i);
+
+				err_no = get_err_num(argv[i]);
+				if (err_no >= qdma_errs) {
+					fprintf(stderr,
+						"unknown err %s.\n",
+						argv[i]);
+					return -EINVAL;
+				}
+
+				rv = next_arg_read_int(argc, argv, &i, &v1);
+				if (rv < 0)
+					return rv;
+
+				qparm->err.en = v1 ? 1 : 0;
+				qparm->err.err_no = err_no;
+				printf("%s-%u: err_no/en: %u/%u\n", argv[i], qparm->idx, qparm->err.err_no, qparm->err.en);
+				i++;
+				f_arg_set |= 1 << QPARAM_ERR_NO;
+			} else
+				i++;
+#else
+			i++;
+#endif
+
+		} else if (!strcmp(argv[i], "list")) {
+			rv = next_arg_read_int(argc, argv, &i, &v1);
+			if (rv < 0)
+				return rv;
+
+			qparm->idx = v1;
+			f_arg_set |= 1 << QPARM_IDX;
+			rv = next_arg_read_int(argc, argv, &i, &v1);
+			if (rv < 0)
+				return rv;
+
+			qparm->num_q = v1;
+			i++;
+
+		} else if (!strcmp(argv[i], "mode")) {
+			get_next_arg(argc, argv, (&i));
+
+			if (!strcmp(argv[i], "mm")) {
+				qparm->flags |= XNL_F_QMODE_MM;
+			} else if (!strcmp(argv[i], "st")) {
+				qparm->flags |= XNL_F_QMODE_ST;
+			} else {
+				warnx("unknown q mode %s.\n", argv[i]);
+				return -EINVAL;
+			}
+			f_arg_set |= 1 << QPARM_MODE;
+			i++;
+
+		} else if (!strcmp(argv[i], "dir")) {
+			get_next_arg(argc, argv, (&i));
+
+			if (!strcmp(argv[i], "h2c")) {
+				qparm->flags |= XNL_F_QDIR_H2C;
+			} else if (!strcmp(argv[i], "c2h")) {
+				qparm->flags |= XNL_F_QDIR_C2H;
+			} else if (!strcmp(argv[i], "bi")) {
+				qparm->flags |= XNL_F_QDIR_BOTH;
+			} else {
+				warnx("unknown q dir %s.\n", argv[i]);
+				return -EINVAL;
+			}
+			f_arg_set |= 1 << QPARM_DIR;
+			i++;
+
+		} else if (!strcmp(argv[i], "idx_bufsz")) {
+			rv = next_arg_read_int(argc, argv, &i, &v1);
+			if (rv < 0)
+				return rv;
+
+			qparm->c2h_bufsz_idx = v1;
+
+			f_arg_set |= 1 << QPARM_C2H_BUFSZ_IDX;
+			i++;
+		
+		} else if (!strcmp(argv[i], "idx_ringsz")) {
+			rv = next_arg_read_int(argc, argv, &i, &v1);
+			if (rv < 0)
+				return rv;
+
+			qparm->qrngsz_idx = v1;
+			f_arg_set |= 1 << QPARM_RNGSZ_IDX;
+			i++;
+		} else if (!strcmp(argv[i], "idx_tmr")) {
+			rv = next_arg_read_int(argc, argv, &i, &v1);
+			if (rv < 0)
+				return rv;
+
+			qparm->cmpt_tmr_idx = v1;
+			f_arg_set |= 1 << QPARM_CMPT_TMR_IDX;
+			i++;
+		} else if (!strcmp(argv[i], "idx_cntr")) {
+			rv = next_arg_read_int(argc, argv, &i, &v1);
+			if (rv < 0)
+				return rv;
+
+			qparm->cmpt_cntr_idx = v1;
+			f_arg_set |= 1 << QPARM_CMPT_CNTR_IDX;
+			i++;
+		} else if (!strcmp(argv[i], "pipe_gl_max")) {
+			rv = next_arg_read_int(argc, argv, &i, &v1);
+			if (rv < 0)
+				return rv;
+			qparm->pipe_gl_max = v1;
+			f_arg_set |= 1 << QPARM_PIPE_GL_MAX;
+			i++;
+
+
+		} else if (!strcmp(argv[i], "pipe_flow_id")) {
+			rv = next_arg_read_int(argc, argv, &i, &v1);
+			if (rv < 0)
+				return rv;
+			qparm->pipe_flow_id = v1;
+			f_arg_set |= 1 << QPARM_PIPE_FLOW_ID;
+			i++;
+		} else if (!strcmp(argv[i], "pipe_slr_id")) {
+			rv = next_arg_read_int(argc, argv, &i, &v1);
+			if (rv < 0)
+				return rv;
+			qparm->pipe_slr_id = v1;
+			f_arg_set |= 1 << QPARM_PIPE_SLR_ID;
+			i++;
+		} else if (!strcmp(argv[i], "pipe_tdest")) {
+			rv = next_arg_read_int(argc, argv, &i, &v1);
+			if (rv < 0)
+				return rv;
+			qparm->pipe_tdest = v1;
+			f_arg_set |= 1 << QPARM_PIPE_TDEST;
+			i++;
+		} else if (!strcmp(argv[i], "cmpl_ovf_dis")) {
+			qparm->flags |= XNL_F_CMPT_OVF_CHK_DIS;
+			i++;
+		} else if (!strcmp(argv[i], "trigmode")) {
+			get_next_arg(argc, argv, (&i));
+
+			if (!strcmp(argv[i], "every")) {
+				v1 = 1;
+			} else if (!strcmp(argv[i], "usr_cnt")) {
+				v1 = 2;
+			} else if (!strcmp(argv[i], "usr")) {
+				v1 = 3;
+			} else if (!strcmp(argv[i], "usr_tmr")) {
+				v1=4;
+			} else if (!strcmp(argv[i], "cntr_tmr")) {
+				v1=5;
+			} else if (!strcmp(argv[i], "dis")) {
+				v1 = 0;
+			} else {
+				warnx("unknown q trigmode %s.\n", argv[i]);
+				return -EINVAL;
+			}
+
+			qparm->cmpt_trig_mode = v1;
+			f_arg_set |= 1 << QPARM_CMPT_TRIG_MODE;
+			i++;
+		} else if (!strcmp(argv[i], "desc")) {
+			get_next_arg(argc, argv, &i);
+			rv = read_range(argc, argv, i, &qparm->range_start,
+					&qparm->range_end);
+			if (rv < 0)
+				return rv;
+			i = rv;
+			f_arg_set |= 1 << QPARM_DESC;
+
+		} else if (!strcmp(argv[i], "cmpt")) {
+		    get_next_arg(argc, argv, &i);
+		    rv = read_range(argc, argv, i, &qparm->range_start,
+			    &qparm->range_end);
+		    if (rv < 0)
+			return rv;
+		    i = rv;
+		    f_arg_set |= 1 << QPARM_CMPT;
+
+		} else if (!strcmp(argv[i], "cmptsz")) {
+		    get_next_arg(argc, argv, &i);
+		    sscanf(argv[i], "%hhu", &qparm->cmpt_entry_size);
+		    f_arg_set |= 1 << QPARM_CMPTSZ;
+		    i++;
+		} else if (!strcmp(argv[i], "sw_desc_sz")) {
+		    get_next_arg(argc, argv, &i);
+		    sscanf(argv[i], "%hhu", &qparm->sw_desc_sz);
+		    f_arg_set |= 1 << QPARM_SW_DESC_SZ;
+		    i++;
+		} else if (!strcmp(argv[i], "pfetch_en")) {
+			qparm->flags |= XNL_F_PFETCH_EN;
+			i++;
+		} else if (!strcmp(argv[i], "pfetch_bypass_en")) {
+			qparm->flags |= XNL_F_PFETCH_BYPASS_EN;
+			i++;
+		} else if (!strcmp(argv[i], "desc_bypass_en")) {
+			qparm->flags |= XNL_F_DESC_BYPASS_EN;
+			i++;
+		} else if (!strcmp(argv[i], "c2h_cmpl_intr_en")) {
+			qparm->flags |= XNL_F_C2H_CMPL_INTR_EN;
+			i++;
+		} else if (!strcmp(argv[i], "dis_cmpl_status")) {
+			qparm->flags &= ~XNL_F_CMPL_STATUS_EN;
+			i++;
+		} else if (!strcmp(argv[i], "dis_cmpl_status_acc")) {
+			qparm->flags &= ~XNL_F_CMPL_STATUS_ACC_EN;
+			i++;
+		} else if (!strcmp(argv[i], "dis_cmpl_status_pend_chk")) {
+			qparm->flags &= ~XNL_F_CMPL_STATUS_PEND_CHK;
+			i++;
+		} else if (!strcmp(argv[i], "dis_fetch_credit")) {
+			qparm->flags &= ~XNL_F_FETCH_CREDIT;
+			i++;
+		} else if (!strcmp(argv[i], "dis_cmpl_status")) {
+			qparm->flags &= ~XNL_F_CMPL_STATUS_DESC_EN;
+			i++;
+		} else if (!strcmp(argv[i], "c2h_udd_en")) {
+			qparm->flags |= XNL_F_CMPL_UDD_EN;
+			i++;
+		} else {
+			warnx("unknown q parameter %s.\n", argv[i]);
+			return -EINVAL;
+		}
+	}
+	if ((f_arg_required & (1 << QPARM_RNGSZ_IDX)) &&
+			!(f_arg_set & (1 << QPARM_RNGSZ_IDX))) {
+		warnx("Info: Default ring size set to 2048");
+		qparm->qrngsz_idx = 5;
+		f_arg_set |= 1 << QPARM_RNGSZ_IDX;
+	}
+	/* check for any missing mandatory parameters */
+	mask = f_arg_set & f_arg_required;
+	if (mask != f_arg_required) {
+		int i;
+		unsigned int bit_mask = 1;
+
+		mask = (mask ^ f_arg_required) & f_arg_required;	
+
+		for (i = 0; i < QPARM_MAX; i++, bit_mask <<= 1) {
+			if (!(bit_mask & f_arg_required))
+				continue;
+			warnx("missing q parameter %s.\n", qparm_type_str[i]);
+			return -EINVAL;
+		}
+	}
+
+	if (!(f_arg_set & 1 << QPARM_DIR)) {
+		/* default to H2C */
+		warnx("Warn: Default dir set to \'h2c\'");
+		f_arg_set |= 1 << QPARM_DIR;
+		qparm->flags |=  XNL_F_QDIR_H2C;
+	}
+
+	qparm->sflags = f_arg_set;
+
+	return argc;
+}
+
+static int parse_q_cmd(int argc, char *argv[], int i, struct xcmd_info *xcmd)
+{
+	struct xcmd_q_parm *qparm = &xcmd->u.qparm;
+	int rv;
+	int args_valid;
+
+	/*
+	 * q list
+	 * q add idx <N> mode <mm|st> [dir <h2c|c2h|bi>] [cdev <0|1>] [cmptsz <0|1|2|3>]
+	 * q start idx <N> dir <h2c|c2h|bi>
+	 * q stop idx <N> dir <h2c|c2h|bi>
+	 * q del idx <N> dir <h2c|c2h|bi>
+	 * q dump idx <N> dir <h2c|c2h|bi>
+	 * q dump idx <N> dir <h2c|c2h|bi> desc <x> <y>
+	 * q dump idx <N> dir <h2c|c2h|bi> cmpt <x> <y>
+	 * q pkt idx <N>
+	 */
+
+	if (!strcmp(argv[i], "list")) {
+		xcmd->op = XNL_CMD_Q_LIST;
+		return ++i;
+	} else if (!strcmp(argv[i], "add")) {
+		unsigned int mask;
+
+		xcmd->op = XNL_CMD_Q_ADD;
+		get_next_arg(argc, argv, &i);
+		rv = read_qparm(argc, argv, i, qparm, (1 << QPARM_IDX));
+		/* error checking of parameter values */
+		if (qparm->sflags & (1 << QPARM_MODE)) {
+			mask = XNL_F_QMODE_MM | XNL_F_QMODE_ST;
+			if ((qparm->flags & mask) == mask) {
+				warnx("mode mm/st cannot be combined.\n");
+				return -EINVAL;
+			}
+		} else {
+			/* default to MM */
+			warnx("Warn: Default mode set to \'mm\'");
+			qparm->sflags |= 1 << QPARM_MODE;
+			qparm->flags |=  XNL_F_QMODE_MM;
+		}
+
+	} else if (!strcmp(argv[i], "start")) {
+		xcmd->op = XNL_CMD_Q_START;
+		get_next_arg(argc, argv, &i);
+		rv = read_qparm(argc, argv, i, qparm, ((1 << QPARM_IDX) |
+				(1 << QPARM_RNGSZ_IDX)));
+		qparm->flags |= (XNL_F_CMPL_STATUS_EN | XNL_F_CMPL_STATUS_ACC_EN |
+				XNL_F_CMPL_STATUS_PEND_CHK | XNL_F_CMPL_STATUS_DESC_EN |
+				XNL_F_FETCH_CREDIT);
+		if (qparm->flags & (XNL_F_QDIR_C2H | XNL_F_QMODE_ST) ==
+				(XNL_F_QDIR_C2H | XNL_F_QMODE_ST)) {
+			if (!(qparm->sflags & (1 << QPARM_CMPTSZ))) {
+					/* default to 8B */
+					qparm->cmpt_entry_size = XNL_ST_C2H_CMPT_DESC_SIZE_8B;
+					qparm->sflags |=
+						(1 << QPARM_CMPTSZ);
+			}
+		}
+	} else if (!strcmp(argv[i], "stop")) {
+		xcmd->op = XNL_CMD_Q_STOP;
+		get_next_arg(argc, argv, &i);
+		rv = read_qparm(argc, argv, i, qparm, (1 << QPARM_IDX));
+
+	} else if (!strcmp(argv[i], "del")) {
+		xcmd->op = XNL_CMD_Q_DEL;
+		get_next_arg(argc, argv, &i);
+		rv = read_qparm(argc, argv, i, qparm, (1 << QPARM_IDX));
+
+	} else if (!strcmp(argv[i], "dump")) {
+		xcmd->op = XNL_CMD_Q_DUMP;
+		get_next_arg(argc, argv, &i);
+		rv = read_qparm(argc, argv, i, qparm, (1 << QPARM_IDX));
+	} else if (!strcmp(argv[i], "pkt")) {
+		xcmd->op = XNL_CMD_Q_RX_PKT;
+		get_next_arg(argc, argv, &i);
+		rv = read_qparm(argc, argv, i, qparm, (1 << QPARM_IDX));
+#ifdef ERR_DEBUG
+	} else if (!strcmp(argv[i], "err")) {
+		xcmd->op = XNL_CMD_Q_ERR_INDUCE;
+		get_next_arg(argc, argv, &i);
+		rv = read_qparm(argc, argv, i, qparm, ((1 << QPARM_IDX) |
+		                (1 << QPARAM_ERR_NO)));
+#endif
+	} else {
+		printf("Error: Unknown q command\n");
+		return -EINVAL;
+	}
+	
+	if (rv < 0)
+		return rv;
+	i = rv;
+
+	if (xcmd->op == XNL_CMD_Q_DUMP) {
+		unsigned int mask = (1 << QPARM_DESC) | (1 << QPARM_CMPT);
+
+		if ((qparm->sflags & mask) == mask) {
+			warnx("dump cmpt/desc cannot be combined.\n");
+			return -EINVAL;
+		}
+		if ((qparm->sflags & (1 << QPARM_DESC)))
+			xcmd->op = XNL_CMD_Q_DESC;
+		else if ((qparm->sflags & (1 << QPARM_CMPT)))
+			xcmd->op = XNL_CMD_Q_CMPT;
+	}
+
+	args_valid = validate_qcmd(xcmd->op, qparm);
+
+	return (args_valid == 0) ? i : args_valid;
+
+	return i;
+}
+
+static int parse_dev_cmd(int argc, char *argv[], int i, struct xcmd_info *xcmd)
+{
+	if (!strcmp(argv[i], "list")) {
+		xcmd->op = XNL_CMD_DEV_LIST;
+		i++;
+	}
+
+	return i;
+}
+
+static int parse_stat_cmd(int argc, char *argv[], int i, struct xcmd_info *xcmd)
+{
+	int rv;
+
+	xcmd->op = XNL_CMD_DEV_STAT;
+	if (i >= argc)
+		return i;
+	if (!strcmp(argv[i], "clear")) {
+		xcmd->op = XNL_CMD_DEV_STAT_CLEAR;
+		i++;
+	}
+	return i;
+}
+
+static int parse_intr_cmd(int argc, char *argv[], int i, struct xcmd_info *xcmd)
+{
+	struct xcmd_intr	*intrcmd = &xcmd->u.intr;
+	int rv;
+
+	/*
+	 * intr dump vector <N>
+	 */
+
+	memset(intrcmd, 0, sizeof(struct xcmd_intr));
+	if (!strcmp(argv[i], "dump")) {
+		xcmd->op = XNL_CMD_INTR_RING_DUMP;
+
+		get_next_arg(argc, argv, &i);
+		if (!strcmp(argv[i], "vector")) {
+			rv = next_arg_read_int(argc, argv, &i, &intrcmd->vector);
+			if (rv < 0)
+				return rv;
+		}
+		rv = next_arg_read_int(argc, argv, &i, &intrcmd->start_idx);
+		if (rv < 0) {
+			intrcmd->start_idx = 0;
+			intrcmd->end_idx = QDMA_MAX_INT_RING_ENTRIES - 1;
+			goto func_ret;
+		}
+		rv = next_arg_read_int(argc, argv, &i, &intrcmd->end_idx);
+		if (rv < 0)
+			intrcmd->end_idx = QDMA_MAX_INT_RING_ENTRIES - 1;
+	}
+func_ret:
+	i++;
+	return i;
+}
+
+int parse_cmd(int argc, char *argv[], struct xcmd_info *xcmd)
+{
+	char *ifname;
+	int i;
+	int rv;
+
+	memset(xcmd, 0, sizeof(struct xcmd_info));
+
+	progname = argv[0];
+
+	if (argc == 1) 
+		usage(stderr);
+
+	if (argc == 2) {
+		if (!strcmp(argv[1], "?") || !strcmp(argv[1], "-h") ||
+		    !strcmp(argv[1], "help") || !strcmp(argv[1], "--help"))
+			usage(stdout);
+
+		if (!strcmp(argv[1], "-v") || !strcmp(argv[1], "--version")) {
+			printf("%s version %s\n", PROGNAME, VERSION);
+			printf("%s\n", COPYRIGHT);
+			exit(0);
+		}
+	}
+
+	if (!strcmp(argv[1], "dev")) {
+		rv = parse_dev_cmd(argc, argv, 2, xcmd);
+		goto done;
+	}
+
+	/* which dma fpga */
+	ifname = argv[1];
+	rv = parse_ifname(ifname, xcmd);
+	if (rv < 0)
+		return rv;
+
+	if (argc == 2) {
+		rv = 2;
+		xcmd->op = XNL_CMD_DEV_INFO;
+		goto done;
+	}
+
+	i = 3;
+	if (!strcmp(argv[2], "reg")) {
+		rv = parse_reg_cmd(argc, argv, i, xcmd);
+	} else if (!strcmp(argv[2], "stat")) {
+		rv = parse_stat_cmd(argc, argv, i, xcmd);
+	} else if (!strcmp(argv[2], "q")) {
+		rv = parse_q_cmd(argc, argv, i, xcmd);
+	} else if (!strcmp(argv[2], "intring")){
+		rv = parse_intr_cmd(argc, argv, i, xcmd);
+	} else if (!strcmp(argv[2], "version")){
+		rv = 3;
+		xcmd->op = XNL_CMD_VERSION;
+	} else {
+		warnx("bad parameter \"%s\".\n", argv[2]);
+		return -EINVAL;
+	}
+
+done:
+	if (rv < 0)
+		return rv;
+	i = rv;
+	
+	if (i < argc) {
+		warnx("unexpected parameter \"%s\".\n", argv[i]);
+		return -EINVAL;
+	}
+	return 0;
+}
diff --git a/QDMA/linux-kernel/user/cli/cmd_parse.h b/QDMA/linux-kernel/user/cli/cmd_parse.h
new file mode 100644
index 0000000..3a4e3e5
--- /dev/null
+++ b/QDMA/linux-kernel/user/cli/cmd_parse.h
@@ -0,0 +1,40 @@
+/*
+ * This file is part of the QDMA userspace application
+ * to enable the user to execute the QDMA functionality
+ *
+ * Copyright (c) 2018-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is licensed under BSD-style license (found in the
+ * LICENSE file in the root directory of this source tree)
+ */
+
+#ifndef USER_CLI_CMD_PARSE_H_
+#define USER_CLI_CMD_PARSE_H_
+
+#include "qdma_nl.h"
+#include "reg_cmd.h"
+#include "nl_user.h"
+
+struct xcmd_info {
+	unsigned char vf:1;
+	unsigned char op:7;
+	unsigned char config_bar;
+	unsigned char user_bar;
+	unsigned short qmax;
+	char stm_bar;
+	char ifname[8];
+	union {
+		struct xcmd_intr intr;
+		struct xcmd_reg reg;
+		struct xcmd_q_parm qparm;
+	} u;
+	uint32_t if_bdf;
+	uint32_t attr_mask;
+	uint32_t attrs[XNL_ATTR_MAX];
+	char drv_str[128];
+};
+
+int parse_cmd(int argc, char *argv[], struct xcmd_info *xcmd);
+
+#endif /* USER_CLI_CMD_PARSE_H_ */
diff --git a/QDMA/linux-kernel/user/cli/main.c b/QDMA/linux-kernel/user/cli/main.c
new file mode 100644
index 0000000..0da10b1
--- /dev/null
+++ b/QDMA/linux-kernel/user/cli/main.c
@@ -0,0 +1,76 @@
+/*
+ * This file is part of the QDMA userspace application
+ * to enable the user to execute the QDMA functionality
+ *
+ * Copyright (c) 2018-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is licensed under BSD-style license (found in the
+ * LICENSE file in the root directory of this source tree)
+ */
+
+#include <string.h>
+
+#include "nl_user.h"
+#include "cmd_parse.h"
+#include "reg_cmd.h"
+
+int main(int argc, char *argv[])
+{
+	struct xnl_cb cb;
+	struct xcmd_info xcmd;
+	unsigned char op;
+	int rv = 0;
+
+	memset(&xcmd, 0, sizeof(xcmd));
+
+	rv = parse_cmd(argc, argv, &xcmd);
+	if (rv < 0)
+		return rv;
+
+#if 0
+	printf("cmd op %s, 0x%x, ifname %s.\n",
+		xnl_op_str[xcmd.op], xcmd.op, xcmd.ifname);
+#endif
+
+	memset(&cb, 0, sizeof(struct xnl_cb));
+
+	if (xcmd.op == XNL_CMD_DEV_LIST) {
+		/* try pf nl server */
+		rv = xnl_connect(&cb, 0);
+		if (!rv)
+			rv = xnl_send_cmd(&cb, &xcmd);
+		xnl_close(&cb);
+
+		/* try vf nl server */
+		memset(&cb, 0, sizeof(struct xnl_cb));
+		rv = xnl_connect(&cb, 1);
+		if (!rv)
+			rv = xnl_send_cmd(&cb, &xcmd);
+		xnl_close(&cb);
+
+		goto close;
+	}
+
+	/* for all other command, query the target device info first */
+	rv = xnl_connect(&cb, xcmd.vf);
+	if (rv < 0)
+		goto close;
+
+ 	op = xcmd.op;
+	xcmd.op = XNL_CMD_DEV_INFO;
+	rv = xnl_send_cmd(&cb, &xcmd);
+	xcmd.op = op;
+	if (rv < 0)
+		goto close;
+
+	if ((xcmd.op == XNL_CMD_REG_DUMP) || (xcmd.op == XNL_CMD_REG_RD) ||
+	    (xcmd.op == XNL_CMD_REG_WRT))
+		rv = proc_reg_cmd(&xcmd);
+	else
+		rv = xnl_send_cmd(&cb, &xcmd);
+
+close:
+	xnl_close(&cb);
+	return rv;
+}
diff --git a/QDMA/linux-kernel/user/cli/nl_user.c b/QDMA/linux-kernel/user/cli/nl_user.c
new file mode 100644
index 0000000..24746df
--- /dev/null
+++ b/QDMA/linux-kernel/user/cli/nl_user.c
@@ -0,0 +1,575 @@
+/*
+ * This file is part of the QDMA userspace application
+ * to enable the user to execute the QDMA functionality
+ *
+ * Copyright (c) 2018-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is licensed under BSD-style license (found in the
+ * LICENSE file in the root directory of this source tree)
+ */
+
+#include <stdlib.h>
+#include <stdio.h>
+#include <stddef.h>
+#include <stdint.h>
+#include <ctype.h>
+#include <string.h>
+#include <unistd.h>
+#include <err.h>
+#include <errno.h>
+#include <sys/socket.h>
+#include <linux/genetlink.h>
+#include <qdma_nl.h>
+
+#include "nl_user.h"
+#include "cmd_parse.h"
+
+/* Generic macros for dealing with netlink sockets. Might be duplicated
+ * elsewhere. It is recommended that commercial grade applications use
+ * libnl or libnetlink and use the interfaces provided by the library
+ */
+
+/*
+ * netlink message
+ */
+struct xnl_hdr {
+	struct nlmsghdr n;
+	struct genlmsghdr g;
+};
+
+struct xnl_gen_msg {
+	struct xnl_hdr hdr;
+	char data[0];
+};
+
+void xnl_close(struct xnl_cb *cb)
+{
+	close(cb->fd);
+}
+
+static int xnl_send(struct xnl_cb *cb, struct xnl_hdr *hdr)
+{
+	int rv;
+	struct sockaddr_nl addr = {
+		.nl_family = AF_NETLINK,
+	};
+
+	hdr->n.nlmsg_seq = cb->snd_seq;
+	cb->snd_seq++;
+
+	rv = sendto(cb->fd, (char *)hdr, hdr->n.nlmsg_len, 0,
+			(struct sockaddr *)&addr, sizeof(addr));
+        if (rv != hdr->n.nlmsg_len) {
+		perror("nl send err");
+		return -1;
+	}
+
+	return 0;
+}
+
+static int xnl_recv(struct xnl_cb *cb, struct xnl_hdr *hdr, int dlen, int print)
+{
+	int rv;
+	struct sockaddr_nl addr = {
+		.nl_family = AF_NETLINK,
+	};
+
+	memset(hdr, 0, sizeof(struct xnl_gen_msg) + dlen);
+
+	rv = recv(cb->fd, hdr, dlen, 0);
+	if (rv < 0) {
+		perror("nl recv err");
+		return -1;
+	}
+	/* as long as there is attribute, even if it is shorter than expected */
+	if (!NLMSG_OK((&hdr->n), rv) && (rv <= sizeof(struct xnl_hdr))) {
+		if (print)
+			fprintf(stderr,
+				"nl recv:, invalid message, cmd 0x%x, %d,%d.\n",
+				hdr->g.cmd, dlen, rv);
+		return -1;
+	}
+
+	if (hdr->n.nlmsg_type == NLMSG_ERROR) {
+		if (print)
+			fprintf(stderr, "nl recv, msg error, cmd 0x%x\n",
+				hdr->g.cmd);
+		return -1;
+	}
+
+	return 0;
+}
+
+static inline struct xnl_gen_msg *xnl_msg_alloc(int dlen)
+{
+	struct xnl_gen_msg *msg;
+
+	msg = malloc(sizeof(struct xnl_gen_msg) + dlen);
+	if (!msg) {
+		fprintf(stderr, "%s: OOM, %d.\n", __FUNCTION__, dlen);
+		return NULL;
+	}
+
+	memset(msg, 0, sizeof(struct xnl_gen_msg) + dlen);
+	return msg;
+}
+
+int xnl_connect(struct xnl_cb *cb, int vf)
+{
+	int fd;	
+	struct sockaddr_nl addr;
+	struct xnl_gen_msg *msg = xnl_msg_alloc(XNL_RESP_BUFLEN_MIN);
+	struct xnl_hdr *hdr;
+	struct nlattr *attr;
+	int rv = -1;
+
+	if (!msg) {
+		fprintf(stderr, "%s, msg OOM.\n", __FUNCTION__);
+		return -ENOMEM;
+	}
+	hdr = (struct xnl_hdr *)msg;
+
+	fd = socket(AF_NETLINK, SOCK_RAW, NETLINK_GENERIC);
+	if (fd < 0) {
+                perror("nl socket err");
+		rv = fd;
+		goto out;
+        }
+	cb->fd = fd;
+
+	memset(&addr, 0, sizeof(struct sockaddr_nl));	
+	addr.nl_family = AF_NETLINK;
+	rv = bind(fd, (struct sockaddr *)&addr, sizeof(struct sockaddr_nl));
+	if (rv < 0) {
+		perror("nl bind err");
+		goto out;
+	}
+
+	hdr->n.nlmsg_type = GENL_ID_CTRL;
+	hdr->n.nlmsg_flags = NLM_F_REQUEST;
+	hdr->n.nlmsg_pid = getpid();
+	hdr->n.nlmsg_len = NLMSG_LENGTH(GENL_HDRLEN);
+
+        hdr->g.cmd = CTRL_CMD_GETFAMILY;
+        hdr->g.version = XNL_VERSION;
+
+	attr = (struct nlattr *)(msg->data);
+	attr->nla_type = CTRL_ATTR_FAMILY_NAME;
+
+	if (vf) {
+        	attr->nla_len = strlen(XNL_NAME_VF) + 1 + NLA_HDRLEN;
+        	strcpy((char *)(attr + 1), XNL_NAME_VF);
+
+	} else {
+        	attr->nla_len = strlen(XNL_NAME_PF) + 1 + NLA_HDRLEN;
+        	strcpy((char *)(attr + 1), XNL_NAME_PF);
+	}
+        hdr->n.nlmsg_len += NLMSG_ALIGN(attr->nla_len);
+
+	rv = xnl_send(cb, (struct xnl_hdr *)hdr);	
+	if (rv < 0)
+		goto out;
+
+	rv = xnl_recv(cb, hdr, XNL_RESP_BUFLEN_MIN, 0);
+	if (rv < 0)
+		goto out;
+
+#if 0
+	/* family name */
+        if (attr->nla_type == CTRL_ATTR_FAMILY_NAME)
+		printf("family name: %s.\n", (char *)(attr + 1));
+#endif
+
+	attr = (struct nlattr *)((char *)attr + NLA_ALIGN(attr->nla_len));
+	/* family ID */
+        if (attr->nla_type == CTRL_ATTR_FAMILY_ID) {
+		cb->family = *(__u16 *)(attr + 1);
+//		printf("family id: 0x%x.\n", cb->family);
+	}
+
+	rv = 0;
+
+out:
+	free(msg);
+	return rv;
+}
+
+static void xnl_msg_set_hdr(struct xnl_hdr *hdr, int family, int op)
+{
+	hdr->n.nlmsg_len = NLMSG_LENGTH(GENL_HDRLEN);
+	hdr->n.nlmsg_type = family;
+	hdr->n.nlmsg_flags = NLM_F_REQUEST;
+	hdr->n.nlmsg_pid = getpid();
+
+	hdr->g.cmd = op;
+}
+
+static int xnl_send_op(struct xnl_cb *cb, int op)
+{
+	struct xnl_hdr req;
+	int rv;
+
+	memset(&req, 0, sizeof(struct xnl_hdr));
+
+	xnl_msg_set_hdr(&req, cb->family, op);
+
+	rv = xnl_send(cb, &req);	
+
+	return rv;
+}
+
+static int xnl_msg_add_int_attr(struct xnl_hdr *hdr, enum xnl_attr_t type,
+				unsigned int v)
+{
+	struct nlattr *attr = (struct nlattr *)((char *)hdr + hdr->n.nlmsg_len);
+
+        attr->nla_type = (__u16)type;
+        attr->nla_len = sizeof(__u32) + NLA_HDRLEN;
+	*(__u32 *)(attr+ 1) = v;
+
+        hdr->n.nlmsg_len += NLMSG_ALIGN(attr->nla_len);
+	return 0;
+}
+
+static int xnl_msg_add_str_attr(struct xnl_hdr *hdr, enum xnl_attr_t type,
+				char *s)
+{
+	struct nlattr *attr = (struct nlattr *)((char *)hdr + hdr->n.nlmsg_len);
+	int len = strlen(s);	
+
+        attr->nla_type = (__u16)type;
+        attr->nla_len = len + 1 + NLA_HDRLEN;
+
+	strcpy((char *)(attr + 1), s);
+
+        hdr->n.nlmsg_len += NLMSG_ALIGN(attr->nla_len);
+	return 0;
+}
+
+static int recv_attrs(struct xnl_hdr *hdr, struct xcmd_info *xcmd)
+{
+	unsigned char *p = (unsigned char *)(hdr + 1);
+	int maxlen = hdr->n.nlmsg_len - NLMSG_LENGTH(GENL_HDRLEN);
+
+#if 0
+	printf("nl recv, hdr len %d, data %d, gen op 0x%x, %s, ver 0x%x.\n",
+		hdr->n.nlmsg_len, maxlen, hdr->g.cmd, xnl_op_str[hdr->g.cmd],
+		hdr->g.version);
+#endif
+
+	xcmd->attr_mask = 0;
+	while (maxlen > 0) {
+		struct nlattr *na = (struct nlattr *)p;
+		int len = NLA_ALIGN(na->nla_len);
+
+		if (na->nla_type >= XNL_ATTR_MAX) {
+			fprintf(stderr, "unknown attr type %d, len %d.\n",
+				na->nla_type, na->nla_len);
+			return -EINVAL;
+		}
+
+		xcmd->attr_mask |= 1 << na->nla_type;
+
+		if (na->nla_type == XNL_ATTR_GENMSG) {
+			printf("\n%s\n", (char *)(na + 1));
+
+		} else if (na->nla_type == XNL_ATTR_DRV_INFO) {
+			strncpy(xcmd->drv_str, (char *)(na + 1), 128);
+		} else {
+			xcmd->attrs[na->nla_type] = *(uint32_t *)(na + 1);
+		}
+
+		p += len;
+		maxlen -= len;
+	}
+
+	return 0;
+}
+
+static void get_dev_stat(struct xcmd_info *xcmd)
+{
+	unsigned long long mmh2c_pkts;
+	unsigned long long mmc2h_pkts;
+	unsigned long long sth2c_pkts;
+	unsigned long long stc2h_pkts;
+	unsigned int pkts;
+
+	pkts = xcmd->attrs[XNL_ATTR_DEV_STAT_MMH2C_PKTS1];
+	mmh2c_pkts = pkts;
+	pkts = xcmd->attrs[XNL_ATTR_DEV_STAT_MMH2C_PKTS2];
+	mmh2c_pkts |= (((unsigned long long)pkts) << 32);
+
+	pkts = xcmd->attrs[XNL_ATTR_DEV_STAT_MMC2H_PKTS1];
+	mmc2h_pkts = pkts;
+	pkts = xcmd->attrs[XNL_ATTR_DEV_STAT_MMC2H_PKTS2];
+	mmc2h_pkts |= (((unsigned long long)pkts) << 32);
+
+	pkts = xcmd->attrs[XNL_ATTR_DEV_STAT_STH2C_PKTS1];
+	sth2c_pkts = pkts;
+	pkts = xcmd->attrs[XNL_ATTR_DEV_STAT_STH2C_PKTS2];
+	sth2c_pkts |= (((unsigned long long)pkts) << 32);
+
+	pkts = xcmd->attrs[XNL_ATTR_DEV_STAT_STC2H_PKTS1];
+	stc2h_pkts = pkts;
+	pkts = xcmd->attrs[XNL_ATTR_DEV_STAT_STC2H_PKTS2];
+	stc2h_pkts |= (((unsigned long long)pkts) << 32);
+
+	printf("qdma%s%05x:statistics\n", xcmd->vf ? "vf" : "", xcmd->if_bdf);
+	printf("Total MM H2C packets processed = %llu\n", mmh2c_pkts);
+	printf("Total MM C2H packets processed = %llu\n", mmc2h_pkts);
+	printf("Total ST H2C packets processed = %llu\n", sth2c_pkts);
+	printf("Total ST C2H packets processed = %llu\n", stc2h_pkts);
+}
+
+static int recv_nl_msg(struct xnl_hdr *hdr, struct xcmd_info *xcmd)
+{
+	unsigned int op = hdr->g.cmd;
+	unsigned int usr_bar;
+
+	recv_attrs(hdr, xcmd);
+
+	switch(op) {
+	case XNL_CMD_DEV_LIST:
+		break;
+	case XNL_CMD_DEV_INFO:
+		xcmd->config_bar = xcmd->attrs[XNL_ATTR_DEV_CFG_BAR];
+		usr_bar = (int)xcmd->attrs[XNL_ATTR_DEV_USR_BAR];
+		xcmd->qmax = xcmd->attrs[XNL_ATTR_DEV_QSET_MAX];
+		xcmd->stm_bar = xcmd->attrs[XNL_ATTR_DEV_STM_BAR];
+
+		if (usr_bar+1 == 0)
+			xcmd->user_bar = 2;
+		else
+			xcmd->user_bar = usr_bar;
+
+#ifdef DEBUG
+		printf("qdma%s%05x:\t%02x:%02x.%02x\t",
+			xcmd->vf ? "vf" : "", xcmd->if_bdf,
+			xcmd->attrs[XNL_ATTR_PCI_BUS],
+			xcmd->attrs[XNL_ATTR_PCI_DEV],
+			xcmd->attrs[XNL_ATTR_PCI_FUNC]);
+		printf("config bar: %d, user bar: %d, max #. QP: %d\n",
+			xcmd->config_bar, xcmd->user_bar, xcmd->qmax);
+#endif
+		break;
+	case XNL_CMD_DEV_STAT:
+		get_dev_stat(xcmd);
+		break;
+	case XNL_CMD_DEV_STAT_CLEAR:
+		break;
+	case XNL_CMD_VERSION:
+		break;
+	case XNL_CMD_Q_LIST:
+		break;
+	case XNL_CMD_Q_ADD:
+		break;
+	case XNL_CMD_Q_START:
+		break;
+	case XNL_CMD_Q_STOP:
+		break;
+	case XNL_CMD_Q_DEL:
+		break;
+	case XNL_CMD_REG_RD:
+		xcmd->u.reg.val = xcmd->attrs[XNL_ATTR_REG_VAL];
+		break;
+	case XNL_CMD_REG_WRT:
+		xcmd->u.reg.val = xcmd->attrs[XNL_ATTR_REG_VAL];
+		break;
+	default:
+		break;
+	}
+
+	return 0;
+}
+
+static void xnl_msg_add_extra_config_attrs(struct xnl_hdr *hdr,
+                                       struct xcmd_info *xcmd)
+{
+	if (xcmd->u.qparm.sflags & (1 << QPARM_RNGSZ_IDX))
+		xnl_msg_add_int_attr(hdr, XNL_ATTR_QRNGSZ_IDX,
+		                     xcmd->u.qparm.qrngsz_idx);
+	if (xcmd->u.qparm.sflags & (1 << QPARM_C2H_BUFSZ_IDX))
+		xnl_msg_add_int_attr(hdr, XNL_ATTR_C2H_BUFSZ_IDX,
+		                     xcmd->u.qparm.c2h_bufsz_idx);
+	if (xcmd->u.qparm.sflags & (1 << QPARM_CMPTSZ))
+		xnl_msg_add_int_attr(hdr,  XNL_ATTR_CMPT_DESC_SIZE,
+		                     xcmd->u.qparm.cmpt_entry_size);
+	if (xcmd->u.qparm.sflags & (1 << QPARM_SW_DESC_SZ))
+		xnl_msg_add_int_attr(hdr,  XNL_ATTR_SW_DESC_SIZE,
+		                     xcmd->u.qparm.sw_desc_sz);
+	if (xcmd->u.qparm.sflags & (1 << QPARM_CMPT_TMR_IDX))
+		xnl_msg_add_int_attr(hdr,  XNL_ATTR_CMPT_TIMER_IDX,
+		                     xcmd->u.qparm.cmpt_tmr_idx);
+	if (xcmd->u.qparm.sflags & (1 << QPARM_CMPT_CNTR_IDX))
+		xnl_msg_add_int_attr(hdr,  XNL_ATTR_CMPT_CNTR_IDX,
+		                     xcmd->u.qparm.cmpt_cntr_idx);
+	if (xcmd->u.qparm.sflags & (1 << QPARM_CMPT_TRIG_MODE))
+		xnl_msg_add_int_attr(hdr,  XNL_ATTR_CMPT_TRIG_MODE,
+		                     xcmd->u.qparm.cmpt_trig_mode);
+	if (xcmd->u.qparm.sflags & (1 << QPARM_PIPE_GL_MAX))
+		xnl_msg_add_int_attr(hdr,  XNL_ATTR_PIPE_GL_MAX,
+		                     xcmd->u.qparm.pipe_gl_max);
+	if (xcmd->u.qparm.sflags & (1 << QPARM_PIPE_FLOW_ID))
+		xnl_msg_add_int_attr(hdr,  XNL_ATTR_PIPE_FLOW_ID,
+		                     xcmd->u.qparm.pipe_flow_id);
+	if (xcmd->u.qparm.sflags & (1 << QPARM_PIPE_SLR_ID))
+		xnl_msg_add_int_attr(hdr,  XNL_ATTR_PIPE_SLR_ID,
+		                     xcmd->u.qparm.pipe_slr_id);
+	if (xcmd->u.qparm.sflags & (1 << QPARM_PIPE_TDEST))
+		xnl_msg_add_int_attr(hdr,  XNL_ATTR_PIPE_TDEST,
+		                     xcmd->u.qparm.pipe_tdest);
+}
+
+static int get_cmd_resp_buf_len(struct xcmd_info *xcmd)
+{
+	int buf_len = XNL_RESP_BUFLEN_MAX;
+	unsigned int row_len = 50;
+
+	switch (xcmd->op) {
+	        case XNL_CMD_Q_DESC:
+	        	row_len *= 2;
+	        case XNL_CMD_Q_CMPT:
+	        	buf_len += ((xcmd->u.qparm.range_end -
+	        			xcmd->u.qparm.range_start)*row_len);
+	        	break;
+	        case XNL_CMD_INTR_RING_DUMP:
+	        	buf_len += ((xcmd->u.intr.end_idx -
+					     xcmd->u.intr.start_idx)*row_len);
+	        	break;
+	        case XNL_CMD_DEV_LIST:
+	        case XNL_CMD_Q_START:
+	        case XNL_CMD_Q_STOP:
+	        case XNL_CMD_Q_DEL:
+	        	return buf_len;
+	        case XNL_CMD_Q_LIST:
+	        case XNL_CMD_Q_DUMP:
+	        	break;
+	        default:
+	        	buf_len = XNL_RESP_BUFLEN_MIN;
+	        	break;
+	}
+	if ((xcmd->u.qparm.flags & XNL_F_QDIR_BOTH) == XNL_F_QDIR_BOTH)
+		buf_len *= 2;
+	if (xcmd->u.qparm.flags & XNL_F_QDIR_BOTH)
+		buf_len *= xcmd->u.qparm.num_q;
+
+	return buf_len;
+}
+
+int xnl_send_cmd(struct xnl_cb *cb, struct xcmd_info *xcmd)
+{
+	struct xnl_gen_msg *msg;
+	struct xnl_hdr *hdr;
+	struct nlattr *attr;
+	int dlen = get_cmd_resp_buf_len(xcmd);
+	int i;
+	int rv;
+	enum xnl_st_c2h_cmpt_desc_size cmpt_desc_size;
+
+#if 0
+	printf("%s: op %s, 0x%x, ifname %s.\n", __FUNCTION__,
+		xnl_op_str[xcmd->op], xcmd->op, xcmd->ifname);
+#endif
+
+	msg = xnl_msg_alloc(dlen);
+	if (!msg) {
+		fprintf(stderr, "%s: OOM, %s, op %s,0x%x.\n", __FUNCTION__,
+			xcmd->ifname, xnl_op_str[xcmd->op], xcmd->op);
+		return -ENOMEM;
+	}
+
+	hdr = (struct xnl_hdr *)msg;
+	attr = (struct nlattr *)(msg->data);
+
+	xnl_msg_set_hdr(hdr, cb->family, xcmd->op);
+
+	xnl_msg_add_int_attr(hdr, XNL_ATTR_DEV_IDX, xcmd->if_bdf);
+
+	switch(xcmd->op) {
+        case XNL_CMD_DEV_LIST:
+        case XNL_CMD_DEV_INFO:
+        case XNL_CMD_DEV_STAT:
+        case XNL_CMD_DEV_STAT_CLEAR:
+        case XNL_CMD_Q_LIST:
+		/* no parameter */
+		break;
+        case XNL_CMD_Q_ADD:
+		xnl_msg_add_int_attr(hdr, XNL_ATTR_QIDX, xcmd->u.qparm.idx);
+		xnl_msg_add_int_attr(hdr, XNL_ATTR_NUM_Q, xcmd->u.qparm.num_q);
+		xnl_msg_add_int_attr(hdr, XNL_ATTR_QFLAG, xcmd->u.qparm.flags);
+		break;
+        case XNL_CMD_Q_START:
+        	xnl_msg_add_extra_config_attrs(hdr, xcmd);
+        case XNL_CMD_Q_STOP:
+        case XNL_CMD_Q_DEL:
+        case XNL_CMD_Q_DUMP:
+		xnl_msg_add_int_attr(hdr, XNL_ATTR_QIDX, xcmd->u.qparm.idx);
+		xnl_msg_add_int_attr(hdr, XNL_ATTR_NUM_Q, xcmd->u.qparm.num_q);
+		xnl_msg_add_int_attr(hdr, XNL_ATTR_QFLAG, xcmd->u.qparm.flags);
+		break;
+        case XNL_CMD_Q_DESC:
+        case XNL_CMD_Q_CMPT:
+		xnl_msg_add_int_attr(hdr, XNL_ATTR_QIDX, xcmd->u.qparm.idx);
+		xnl_msg_add_int_attr(hdr, XNL_ATTR_NUM_Q, xcmd->u.qparm.num_q);
+		xnl_msg_add_int_attr(hdr, XNL_ATTR_QFLAG, xcmd->u.qparm.flags);
+		xnl_msg_add_int_attr(hdr, XNL_ATTR_RANGE_START,
+					xcmd->u.qparm.range_start);
+		xnl_msg_add_int_attr(hdr, XNL_ATTR_RANGE_END,
+					xcmd->u.qparm.range_end);
+		xnl_msg_add_int_attr(hdr, XNL_ATTR_RSP_BUF_LEN, dlen);
+		break;
+        case XNL_CMD_Q_RX_PKT:
+		xnl_msg_add_int_attr(hdr, XNL_ATTR_QIDX, xcmd->u.qparm.idx);
+		xnl_msg_add_int_attr(hdr, XNL_ATTR_NUM_Q, xcmd->u.qparm.num_q);
+		/* hard coded to C2H */
+		xnl_msg_add_int_attr(hdr, XNL_ATTR_QFLAG, XNL_F_QDIR_C2H);
+		break;
+        case XNL_CMD_INTR_RING_DUMP:
+		xnl_msg_add_int_attr(hdr, XNL_ATTR_INTR_VECTOR_IDX,
+		                     xcmd->u.intr.vector);
+		xnl_msg_add_int_attr(hdr, XNL_ATTR_INTR_VECTOR_START_IDX,
+		                     xcmd->u.intr.start_idx);
+		xnl_msg_add_int_attr(hdr, XNL_ATTR_INTR_VECTOR_END_IDX,
+		                     xcmd->u.intr.end_idx);
+		xnl_msg_add_int_attr(hdr, XNL_ATTR_RSP_BUF_LEN, dlen);
+		break;
+        case XNL_CMD_REG_RD:
+		xnl_msg_add_int_attr(hdr, XNL_ATTR_REG_BAR_NUM,
+    							 xcmd->u.reg.bar);
+		xnl_msg_add_int_attr(hdr, XNL_ATTR_REG_ADDR,
+							 xcmd->u.reg.reg);
+		break;
+        case XNL_CMD_REG_WRT:
+		xnl_msg_add_int_attr(hdr, XNL_ATTR_REG_BAR_NUM,
+    							 xcmd->u.reg.bar);
+		xnl_msg_add_int_attr(hdr, XNL_ATTR_REG_ADDR,
+							 xcmd->u.reg.reg);
+		xnl_msg_add_int_attr(hdr, XNL_ATTR_REG_VAL,
+							 xcmd->u.reg.val);
+		break;
+#ifdef ERR_DEBUG
+        case XNL_CMD_Q_ERR_INDUCE:
+		xnl_msg_add_int_attr(hdr, XNL_ATTR_QIDX, xcmd->u.qparm.idx);
+		xnl_msg_add_int_attr(hdr, XNL_ATTR_QFLAG, xcmd->u.qparm.flags);
+		xnl_msg_add_int_attr(hdr, XNL_ATTR_QPARAM_ERR_INFO,
+		                     xcmd->u.qparm.err_info);
+		break;
+#endif
+	default:
+		break;
+	}
+
+	rv = xnl_send(cb, hdr);	
+	if (rv < 0)
+		goto out;
+
+	rv = xnl_recv(cb, hdr, dlen, 1);
+	if (rv < 0)
+		goto out;
+
+	rv = recv_nl_msg(hdr, xcmd);
+out:
+	free(msg);
+	return rv;
+}
diff --git a/QDMA/linux-kernel/user/cli/nl_user.h b/QDMA/linux-kernel/user/cli/nl_user.h
new file mode 100644
index 0000000..69fd122
--- /dev/null
+++ b/QDMA/linux-kernel/user/cli/nl_user.h
@@ -0,0 +1,95 @@
+/*
+ * This file is part of the QDMA userspace application
+ * to enable the user to execute the QDMA functionality
+ *
+ * Copyright (c) 2018-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is licensed under BSD-style license (found in the
+ * LICENSE file in the root directory of this source tree)
+ */
+
+#ifndef __NL_USER_H__
+#define __NL_USER_H__
+
+#include <stdint.h>
+#ifdef ERR_DEBUG
+#include "qdma_nl.h"
+#endif
+
+#define DESC_SIZE_64B	3
+
+struct xcmd_info;
+
+enum q_parm_type {
+	QPARM_IDX,
+	QPARM_MODE,
+	QPARM_DIR,
+	QPARM_DESC,
+	QPARM_CMPT,
+	QPARM_CMPTSZ,
+	QPARM_SW_DESC_SZ,
+	QPARM_RNGSZ_IDX,
+	QPARM_C2H_BUFSZ_IDX,
+	QPARM_CMPT_TMR_IDX,
+	QPARM_CMPT_CNTR_IDX,
+	QPARM_CMPT_TRIG_MODE,
+	QPARM_PIPE_GL_MAX,
+	QPARM_PIPE_FLOW_ID,
+	QPARM_PIPE_SLR_ID,
+	QPARM_PIPE_TDEST,
+#ifdef ERR_DEBUG
+	QPARAM_ERR_NO,
+#endif
+
+	QPARM_MAX,
+};
+
+struct xcmd_q_parm {
+	unsigned int sflags;
+	uint32_t flags;
+	uint32_t idx;
+	uint32_t num_q;
+	uint32_t range_start;
+	uint32_t range_end;
+	unsigned char sw_desc_sz;
+	unsigned char cmpt_entry_size;
+	unsigned char qrngsz_idx;
+	unsigned char c2h_bufsz_idx;
+	unsigned char cmpt_tmr_idx;
+	unsigned char cmpt_cntr_idx;
+	unsigned char cmpt_trig_mode;
+	unsigned char is_qp;
+	uint8_t pipe_gl_max;
+	uint8_t pipe_flow_id;
+	uint8_t pipe_slr_id;
+	uint16_t pipe_tdest;
+#ifdef ERR_DEBUG
+	union {
+		unsigned int err_info;
+		struct {
+			unsigned int err_no:31;
+			unsigned int en:1;
+		} err;
+	};
+#endif
+};
+
+struct xcmd_intr {
+	unsigned int vector;
+	int start_idx;
+	int end_idx;
+};
+
+struct xnl_cb {
+	int fd;
+	unsigned short family;
+	unsigned int snd_seq;
+	unsigned int rcv_seq;
+};
+
+int xnl_connect(struct xnl_cb *cb, int vf);
+void xnl_close(struct xnl_cb *cb);
+int xnl_send_cmd(struct xnl_cb *cb, struct xcmd_info *xcmd);
+
+#endif /* ifndef __NL_USER_H__ */
diff --git a/QDMA/linux-kernel/user/cli/reg_cmd.c b/QDMA/linux-kernel/user/cli/reg_cmd.c
new file mode 100644
index 0000000..c54e8ae
--- /dev/null
+++ b/QDMA/linux-kernel/user/cli/reg_cmd.c
@@ -0,0 +1,401 @@
+/*
+ * This file is part of the QDMA userspace application
+ * to enable the user to execute the QDMA functionality
+ *
+ * Copyright (c) 2018-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is licensed under BSD-style license (found in the
+ * LICENSE file in the root directory of this source tree)
+ */
+
+#include <endian.h>
+#include <err.h>
+#include <errno.h>
+#include <fcntl.h>
+#include <sys/mman.h>
+#include <unistd.h>
+#include <stdio.h>
+#include <string.h>
+
+#include "reg_cmd.h"
+#include "cmd_parse.h"
+#include "xdev_regs.h"
+
+#define QDMA_CFG_BAR_SIZE 0xB400
+#define QDMA_USR_BAR_SIZE 0x100
+#define STM_BAR_SIZE	0x0200003C
+
+struct xdev_info {
+	unsigned char bus;
+	unsigned char dev;
+	unsigned char func;
+	unsigned char config_bar;
+	unsigned char user_bar;
+	char stm_bar;
+};
+
+static struct xreg_info qdma_dmap_regs[] = {
+/* QDMA_TRQ_SEL_QUEUE_PF (0x6400) */
+	{"DMAP_SEL_INT_CIDX",				0x6400, 512, 0x10, 0, 0,},
+	{"DMAP_SEL_H2C_DSC_PIDX",			0x6404, 512, 0x10, 0, 0,},
+	{"DMAP_SEL_C2H_DSC_PIDX",			0x6408, 512, 0x10, 0, 0,},
+	{"DMAP_SEL_CMPT_CIDX",				0x640C, 512, 0x10, 0, 0,},
+	{"", 0, 0, 0 }
+};
+
+/*
+ * INTERNAL: for debug testing only
+ */
+static struct xreg_info stm_regs[] = {
+	{"H2C_DATA_0",					0x02000000, 0, 0, 0, 0,},
+	{"H2C_DATA_1",					0x02000004, 0, 0, 0, 0,},
+	{"H2C_DATA_2",					0x02000008, 0, 0, 0, 0,},
+	{"H2C_DATA_3",					0x0200000C, 0, 0, 0, 0,},
+	{"H2C_DATA_4",					0x02000010, 0, 0, 0, 0,},
+	{"IND_CTXT_CMD",				0x02000014, 0, 0, 0, 0,},
+	{"STM_REV",					0x02000018, 0, 0, 0, 0,},
+	{"CAM_CLR_STATUS",				0x0200001C, 0, 0, 0, 0,},
+	{"C2H_DATA8",					0x02000020, 0, 0, 0, 0,},
+	{"H2C_DATA_5",					0x02000024, 0, 0, 0, 0,},
+	{"STATUS",					0x0200002C, 0, 0, 0, 0,},
+	{"H2C_MODE",					0x02000030, 0, 0, 0, 0,},
+	{"H2C_STATUS",					0x02000034, 0, 0, 0, 0,},
+	{"C2H_MODE",					0x02000038, 0, 0, 0, 0,},
+	{"C2H_STATUS",					0x0200003C, 0, 0, 0, 0,},
+	{"H2C_PORT0_DEBUG0",                            0x02000040, 0, 0, 0, 0,},
+	{"H2C_PORT1_DEBUG0",                            0x02000044, 0, 0, 0, 0,},
+	{"H2C_PORT2_DEBUG0",                            0x02000048, 0, 0, 0, 0,},
+	{"C2H_PORT0_DEBUG0",                            0x02000050, 0, 0, 0, 0,},
+	{"C2H_PORT1_DEBUG0",                            0x02000054, 0, 0, 0, 0,},
+	{"C2H_PORT2_DEBUG0",                            0x02000058, 0, 0, 0, 0,},
+	{"H2C_DEBUG0",                                  0x02000060, 0, 0, 0, 0,},
+	{"H2C_DEBUG1",                                  0x02000064, 0, 0, 0, 0,},
+	{"AWERR",                                       0x02000068, 0, 0, 0, 0,},
+	{"ARERR",                                       0x0200006C, 0, 0, 0, 0,},
+	{"H2C_PORT0_DEBUG1",                            0x02000070, 0, 0, 0, 0,},
+	{"H2C_PORT1_DEBUG1",                            0x02000074, 0, 0, 0, 0,},
+	{"H2C_PORT2_DEBUG1",                            0x02000078, 0, 0, 0, 0,},
+	{"", 0, 0, 0 }
+};
+
+
+/*
+ * Register I/O through mmap of BAR0.
+ */
+
+/* /sys/bus/pci/devices/0000:<bus>:<dev>.<func>/resource<bar#> */
+#define get_syspath_bar_mmap(s, bus,dev,func,bar) \
+	snprintf(s, sizeof(s), \
+		"/sys/bus/pci/devices/0000:%02x:%02x.%x/resource%u", \
+		bus, dev, func, bar)
+
+static uint32_t *mmap_bar(char *fname, size_t len, int prot)
+{
+	int fd;
+	uint32_t *bar;
+
+	fd = open(fname, (prot & PROT_WRITE) ? O_RDWR : O_RDONLY);
+	if (fd < 0)
+		return NULL;
+
+	bar = mmap(NULL, len, prot, MAP_SHARED, fd, 0);
+	close(fd);
+
+	return bar == MAP_FAILED ? NULL : bar;
+}
+
+static int32_t reg_read_mmap(struct xdev_info *xdev,
+			     unsigned char barno,
+			     struct xcmd_info *xcmd,
+			     unsigned int *val)
+{
+	uint32_t *bar;
+	struct xnl_cb cb;
+	char fname[256];
+	int rv = 0;
+
+	memset(&cb, 0, sizeof(struct xnl_cb));
+
+	get_syspath_bar_mmap(fname, xdev->bus, xdev->dev, xdev->func, barno);
+
+	bar = mmap_bar(fname, xcmd->u.reg.reg + 4, PROT_READ);
+	if (!bar) {
+		if (xcmd->op == XNL_CMD_REG_WRT)
+			xcmd->op = XNL_CMD_REG_RD;
+
+		rv = xnl_connect(&cb, 0);
+		if (rv < 0)
+			return -1;
+		rv = xnl_send_cmd(&cb, xcmd);
+		if(rv != 0)
+			return -1;
+		xnl_close(&cb);
+
+		*val = le32toh(xcmd->u.reg.val);
+		return rv;
+	}
+
+	*val = le32toh(bar[xcmd->u.reg.reg / 4]);
+	munmap(bar, xcmd->u.reg.reg + 4);
+
+	return rv;
+}
+
+static int32_t reg_write_mmap(struct xdev_info *xdev,
+			      unsigned char barno,
+			      struct xcmd_info *xcmd)
+{
+	uint32_t *bar;
+	struct xnl_cb cb;
+	char fname[256];
+	int rv = 0;
+
+	memset(&cb, 0, sizeof(struct xnl_cb));
+	get_syspath_bar_mmap(fname, xdev->bus, xdev->dev, xdev->func, barno);
+
+	bar = mmap_bar(fname, xcmd->u.reg.reg + 4, PROT_WRITE);
+	if (!bar) {
+		rv = xnl_connect(&cb, 0);
+		if (rv < 0)
+			return -1;
+		rv = xnl_send_cmd(&cb, xcmd);
+		if (rv != 0)
+			return -1;
+		xnl_close(&cb);
+
+		return 0;
+	}
+
+	bar[xcmd->u.reg.reg / 4] = htole32(xcmd->u.reg.val);
+	munmap(bar, xcmd->u.reg.reg + 4);
+	return 0;
+}
+
+static void print_repeated_reg(uint32_t *bar, struct xreg_info *xreg,
+		unsigned start, unsigned limit, struct xdev_info *xdev, struct xcmd_info *xcmd)
+{
+	int i;
+	int end = start + limit;
+	int step = xreg->step ? xreg->step : 4;
+	uint32_t val;
+	int32_t rv = 0;
+
+	for (i = start; i < end; i++) {
+		uint32_t addr = xreg->addr + (i * step);
+		char name[40];
+		int l = sprintf(name, "%s_%d",
+				xreg->name, i);
+
+		if (xcmd == NULL) {
+			val = le32toh(bar[addr / 4]);
+		} else {
+			xcmd->u.reg.reg = addr;
+			rv = reg_read_mmap(xdev, xcmd->u.reg.bar, xcmd, &val);
+			if (rv < 0) {
+				printf("\n");
+				continue;
+			}
+		}
+		printf("[%#7x] %-47s %#-10x %u\n",
+			addr, name, val, val);
+	}
+}
+
+static void dump_regs(uint32_t *bar, struct xreg_info *reg_list, struct xdev_info *xdev, struct xcmd_info *xcmd)
+{
+	struct xreg_info *xreg = reg_list;
+	uint32_t val;
+	int32_t rv = 0;
+
+	for (xreg = reg_list; strlen(xreg->name); xreg++) {
+		if (!xreg->len) {
+			if (xreg->repeat) {
+				if (xcmd == NULL)
+					print_repeated_reg(bar, xreg, 0, xreg->repeat, NULL, NULL);
+				else
+					print_repeated_reg(NULL, xreg, 0, xreg->repeat, xdev, xcmd);
+			} else {
+				uint32_t addr = xreg->addr;
+				if (xcmd == NULL) {
+					val = le32toh(bar[addr / 4]);
+				} else {
+					xcmd->u.reg.reg = addr;
+					rv = reg_read_mmap(xdev, xcmd->u.reg.bar, xcmd, &val);
+					if (rv < 0)
+						continue;
+				}
+				printf("[%#7x] %-47s %#-10x %u\n",
+					addr, xreg->name, val, val);
+			}
+		} else {
+			uint32_t addr = xreg->addr;
+			if (xcmd == NULL) {
+				uint32_t val = le32toh(bar[addr / 4]);
+			} else {
+				xcmd->u.reg.reg = addr;
+				rv = reg_read_mmap(xdev, xcmd->u.reg.bar, xcmd, &val);
+				if (rv < 0)
+					continue;
+			}
+
+			uint32_t v = (val >> xreg->shift) &
+					((1 << xreg->len) - 1);
+
+			printf("    %*u:%u %-47s %#-10x %u\n",
+				xreg->shift < 10 ? 3 : 2,
+				xreg->shift + xreg->len - 1,
+				xreg->shift, xreg->name, v, v);
+		}
+	}
+}
+
+static void reg_dump_mmap(struct xdev_info *xdev, unsigned char barno,
+			struct xreg_info *reg_list, unsigned int max,  struct xcmd_info *xcmd)
+{
+	uint32_t *bar;
+	char fname[256];
+
+	get_syspath_bar_mmap(fname, xdev->bus, xdev->dev, xdev->func, barno);
+
+	bar = mmap_bar(fname, max, PROT_READ);
+	if (!bar) {
+		xcmd->op = XNL_CMD_REG_RD;
+		xcmd->u.reg.bar = barno;
+		dump_regs(NULL, reg_list, xdev, xcmd);
+		return;
+	}
+
+	dump_regs(bar, reg_list, NULL, NULL);
+	munmap(bar, max);
+}
+
+static void reg_dump_range(struct xdev_info *xdev, unsigned char barno,
+			 unsigned int max, struct xreg_info *reg_list,
+			 unsigned int start, unsigned int limit,  struct xcmd_info *xcmd)
+{
+	struct xreg_info *xreg = reg_list;
+	uint32_t *bar;
+	char fname[256];
+
+	get_syspath_bar_mmap(fname, xdev->bus, xdev->dev, xdev->func, barno);
+
+	bar = mmap_bar(fname, max, PROT_READ);
+	if (!bar) {
+		xcmd->op = XNL_CMD_REG_RD;
+		xcmd->u.reg.bar = barno;
+		for (xreg = reg_list; strlen(xreg->name); xreg++) {
+			print_repeated_reg(NULL, xreg, start, limit, xdev, xcmd);
+		}
+		return;
+	}
+
+	for (xreg = reg_list; strlen(xreg->name); xreg++) {
+		print_repeated_reg(bar, xreg, start, limit, NULL, NULL);
+	}
+
+	munmap(bar, max);
+}
+
+static inline void print_seperator(void)
+{
+	char buffer[81];
+
+	memset(buffer, '#', 80);
+	buffer[80] = '\0';
+
+	fprintf(stdout, "%s\n", buffer);
+}
+
+int is_valid_addr(unsigned char bar_no, unsigned int reg_addr)
+{
+	struct xreg_info *rinfo = (bar_no == 0) ? qdma_config_regs:
+			qdma_user_regs;
+	unsigned int i;
+	unsigned int size = (bar_no == 0) ?
+			(sizeof(qdma_config_regs) / sizeof(struct xreg_info)):
+			(sizeof(qdma_user_regs) / sizeof(struct xreg_info));
+
+	for (i = 0; i < size; i++)
+		if (reg_addr == rinfo[i].addr)
+			return 1;
+
+	return 0;
+}
+
+int proc_reg_cmd(struct xcmd_info *xcmd)
+{
+	struct xcmd_reg *regcmd = &xcmd->u.reg;
+	struct xdev_info xdev;
+	int32_t rv = 0;
+	unsigned int mask = (1 << XNL_ATTR_PCI_BUS) | (1 << XNL_ATTR_PCI_DEV) |
+			(1 << XNL_ATTR_PCI_FUNC) | (1 << XNL_ATTR_DEV_CFG_BAR) |
+			(1 << XNL_ATTR_DEV_USR_BAR);
+	unsigned int barno;
+	int32_t v;
+
+	if ((xcmd->attr_mask & mask) != mask) {
+		fprintf(stderr, "%s: device info missing, 0x%x/0x%x.\n",
+			__FUNCTION__, xcmd->attr_mask, mask);
+		return -EINVAL;
+	}
+
+	memset(&xdev, 0, sizeof(struct xdev_info));
+	xdev.bus = xcmd->attrs[XNL_ATTR_PCI_BUS];
+	xdev.dev = xcmd->attrs[XNL_ATTR_PCI_DEV];
+	xdev.func = xcmd->attrs[XNL_ATTR_PCI_FUNC];
+	xdev.config_bar = xcmd->attrs[XNL_ATTR_DEV_CFG_BAR];
+	xdev.user_bar = xcmd->attrs[XNL_ATTR_DEV_USR_BAR];
+	xdev.stm_bar = xcmd->attrs[XNL_ATTR_DEV_STM_BAR];
+
+	barno = (regcmd->sflags & XCMD_REG_F_BAR_SET) ?
+			 regcmd->bar : xdev.config_bar;
+
+	switch (xcmd->op) {
+	case XNL_CMD_REG_RD:
+		rv = reg_read_mmap(&xdev, barno, xcmd, &v);
+		if (rv < 0)
+			return -1;
+		fprintf(stdout, "qdma%05x, %02x:%02x.%02x, bar#%u, 0x%x = 0x%x.\n",
+			xcmd->if_bdf, xdev.bus, xdev.dev, xdev.func, barno,
+			regcmd->reg, v);
+		break;
+	case XNL_CMD_REG_WRT:
+		v = reg_write_mmap(&xdev, barno, xcmd);
+		if (v < 0)
+			return -1;
+		rv = reg_read_mmap(&xdev, barno, xcmd, &v);
+		if (rv < 0)
+			return -1;
+		fprintf(stdout, "qdma%05x, %02x:%02x.%02x, bar#%u, reg 0x%x -> 0x%x, read back 0x%x.\n",
+			xcmd->if_bdf, xdev.bus, xdev.dev, xdev.func, barno,
+			regcmd->reg, regcmd->val, v);
+		break;
+	case XNL_CMD_REG_DUMP:
+		print_seperator();
+		fprintf(stdout, "###\t\tqdma%05x, pci %02x:%02x.%02x, reg dump\n",
+			xcmd->if_bdf, xdev.bus, xdev.dev, xdev.func);
+		print_seperator();
+
+		fprintf(stdout, "\nUSER BAR #%d\n", xdev.user_bar);
+		reg_dump_mmap(&xdev, xdev.user_bar, qdma_user_regs,
+				QDMA_USR_BAR_SIZE, xcmd);
+
+		if (xdev.stm_bar != -1) {
+			fprintf(stdout, "\nSTM BAR #%d\n", xdev.stm_bar);
+			reg_dump_mmap(&xdev, xdev.stm_bar, stm_regs,
+				      STM_BAR_SIZE, xcmd);
+		}
+
+		fprintf(stdout, "\nCONFIG BAR #%d\n", xdev.config_bar);
+		reg_dump_mmap(&xdev, xdev.config_bar, qdma_config_regs,
+				QDMA_CFG_BAR_SIZE, xcmd);
+		reg_dump_range(&xdev, xdev.config_bar, QDMA_CFG_BAR_SIZE,
+				qdma_dmap_regs, regcmd->range_start,
+				regcmd->range_end, xcmd);
+		break;
+	default:
+		break;
+	}
+	return 0;
+}
diff --git a/QDMA/linux-kernel/user/cli/reg_cmd.h b/QDMA/linux-kernel/user/cli/reg_cmd.h
new file mode 100644
index 0000000..bdbf487
--- /dev/null
+++ b/QDMA/linux-kernel/user/cli/reg_cmd.h
@@ -0,0 +1,34 @@
+/*
+ * This file is part of the QDMA userspace application
+ * to enable the user to execute the QDMA functionality
+ *
+ * Copyright (c) 2018-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is licensed under BSD-style license (found in the
+ * LICENSE file in the root directory of this source tree)
+ */
+
+#ifndef USER_CLI_REG_CMD_H_
+#define USER_CLI_REG_CMD_H_
+
+#include <stdint.h>
+
+struct xcmd_info;
+
+struct xcmd_reg {
+	unsigned int sflags;
+#define XCMD_REG_F_BAR_SET	0x1
+#define XCMD_REG_F_REG_SET	0x2
+#define XCMD_REG_F_VAL_SET	0x4
+	unsigned int bar;
+	unsigned int reg;
+	unsigned int val;
+	unsigned int range_start;
+	unsigned int range_end;
+};
+
+int proc_reg_cmd(struct xcmd_info *xcmd);
+int is_valid_addr(unsigned char bar_no, unsigned int reg_addr);
+
+#endif /* USER_CLI_REG_CMD_H_ */
diff --git a/QDMA/linux-kernel/user/cli/version.h b/QDMA/linux-kernel/user/cli/version.h
new file mode 100644
index 0000000..521d80e
--- /dev/null
+++ b/QDMA/linux-kernel/user/cli/version.h
@@ -0,0 +1,19 @@
+/*
+ * This file is part of the QDMA userspace application
+ * to enable the user to execute the QDMA functionality
+ *
+ * Copyright (c) 2018-present,  Xilinx, Inc.
+ * All rights reserved.
+ *
+ * This source code is licensed under BSD-style license (found in the
+ * LICENSE file in the root directory of this source tree)
+ */
+
+#ifndef __XDMATOOL_VERSION_H
+#define __XDMATOOL_VERSION_H
+
+#define PROGNAME "dmatool"
+#define VERSION "1.0.13"
+#define COPYRIGHT "Copyright (c) 2018 Xilinx Inc."
+
+#endif
diff --git a/README.md b/README.md
index 4435ad5..1c8a426 100644
--- a/README.md
+++ b/README.md
@@ -1 +1,18 @@
-# dma_ip_drivers
\ No newline at end of file
+==============
+Xilinx DMA IP Reference drivers
+==============
+
+-------------------------------------------------------------------------------
+The Xilinx PCI Express Multi Queue DMA (QDMA) IP provides high-performance direct memory access (DMA) via PCI Express. The PCIe QDMA can be implemented in UltraScale devices.
+
+Both the linux kernel driver and the DPDK driver can be run on a PCI Express root port host PC to interact with the QDMA endpoint IP via PCI Express.
+
+-------------------------------------------------------------------------------
+
+`QDMA DPDK Reference Driver User Guide <QDMA/DPDK/docs/DPDK_qdma_driver_user_guide.pdf>`_
+
+-------------------------------------------------------------------------------
+
+`QDMA Linux Kernel Reference Driver User Guide <QDMA/linux-kernel/docs/linux_qdma_driver_user_guide.pdf>`_
+
+-------------------------------------------------------------------------------
-- 
GitLab