[dpdk-dev,v4,1/3] doc: add platform device

Message ID 20171020152124.14746-2-santosh.shukla@caviumnetworks.com (mailing list archive)
State Superseded, archived
Headers

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK

Commit Message

Santosh Shukla Oct. 20, 2017, 3:21 p.m. UTC
  This commit adds a section to the docs listing the platform
device PMDs available.

It then adds the octeontx platform driver to the listed platform
devices.

Patch also removes platform specific duplicate setup information from
eventdev/octeontx.rst, nics/octeontx.rst and update to
plaform/octeontx.rst.

Cc: John McNamara <john.mcnamara@intel.com>

Signed-off-by: Santosh Shukla <santosh.shukla@caviumnetworks.com>
---
v3 --> v4:
- Added doc/guide/platform/ as per v3 discussion.
- Moved common content of "Prerequisite" section from eventdev/octeontx.rst
  to platform/octeontx.rst.

 doc/guides/eventdevs/octeontx.rst | 28 +--------------
 doc/guides/index.rst              |  1 +
 doc/guides/nics/octeontx.rst      | 29 +--------------
 doc/guides/platform/index.rst     | 40 +++++++++++++++++++++
 doc/guides/platform/octeontx.rst  | 75 +++++++++++++++++++++++++++++++++++++++
 5 files changed, 118 insertions(+), 55 deletions(-)
 create mode 100644 doc/guides/platform/index.rst
 create mode 100644 doc/guides/platform/octeontx.rst
  

Comments

Jerin Jacob Oct. 21, 2017, 9:41 a.m. UTC | #1
-----Original Message-----
> Date: Fri, 20 Oct 2017 20:51:22 +0530
> From: Santosh Shukla <santosh.shukla@caviumnetworks.com>
> To: dev@dpdk.org
> Cc: thomas@monjalon.net, jerin.jacob@caviumnetworks.com,
>  john.mcnamara@intel.com, Santosh Shukla
>  <santosh.shukla@caviumnetworks.com>
> Subject: [PATCH v4 1/3] doc: add platform device
> X-Mailer: git-send-email 2.14.1
> 
> This commit adds a section to the docs listing the platform
> device PMDs available.
> 
> It then adds the octeontx platform driver to the listed platform
> devices.
> 
> Patch also removes platform specific duplicate setup information from
> eventdev/octeontx.rst, nics/octeontx.rst and update to
> plaform/octeontx.rst.
> 
> Cc: John McNamara <john.mcnamara@intel.com>
> 
> Signed-off-by: Santosh Shukla <santosh.shukla@caviumnetworks.com>
> ---
> v3 --> v4:
> - Added doc/guide/platform/ as per v3 discussion.
> - Moved common content of "Prerequisite" section from eventdev/octeontx.rst
>   to platform/octeontx.rst.
> 
>  doc/guides/eventdevs/octeontx.rst | 28 +--------------
>  doc/guides/index.rst              |  1 +
>  doc/guides/nics/octeontx.rst      | 29 +--------------
>  doc/guides/platform/index.rst     | 40 +++++++++++++++++++++
>  doc/guides/platform/octeontx.rst  | 75 +++++++++++++++++++++++++++++++++++++++
>  5 files changed, 118 insertions(+), 55 deletions(-)
>  create mode 100644 doc/guides/platform/index.rst
>  create mode 100644 doc/guides/platform/octeontx.rst
> 
> diff --git a/doc/guides/eventdevs/octeontx.rst b/doc/guides/eventdevs/octeontx.rst
> index b43d5155e..e834372af 100644
> --- a/doc/guides/eventdevs/octeontx.rst
> +++ b/doc/guides/eventdevs/octeontx.rst
> @@ -63,33 +63,7 @@ Supported OCTEONTX SoCs
>  Prerequisites
>  -------------
>  
> -There are three main pre-perquisites for executing SSOVF PMD on a OCTEONTX
> -compatible board:
> -
> -1. **OCTEONTX Linux kernel PF driver for Network acceleration HW blocks**
> -
> -   The OCTEONTX Linux kernel drivers (including the required PF driver for the
> -   SSOVF) are available on Github at `octeontx-kmod <https://github.com/caviumnetworks/octeontx-kmod>`_
> -   along with build, install and dpdk usage instructions.
> -
> -2. **ARM64 Tool Chain**
> -
> -   For example, the *aarch64* Linaro Toolchain, which can be obtained from
> -   `here <https://releases.linaro.org/components/toolchain/binaries/4.9-2017.01/aarch64-linux-gnu>`_.
> -
> -3. **Rootfile system**
> -
> -   Any *aarch64* supporting filesystem can be used. For example,
> -   Ubuntu 15.10 (Wily) or 16.04 LTS (Xenial) userland which can be obtained
> -   from `<http://cdimage.ubuntu.com/ubuntu-base/releases/16.04/release/ubuntu-base-16.04.1-base-arm64.tar.gz>`_.
> -
> -   As an alternative method, SSOVF PMD can also be executed using images provided
> -   as part of SDK from Cavium. The SDK includes all the above prerequisites necessary
> -   to bring up a OCTEONTX board.
> -
> -   SDK and related information can be obtained from: `Cavium support site <https://support.cavium.com/>`_.
> -
> -- Follow the DPDK :ref:`Getting Started Guide for Linux <linux_gsg>` to setup the basic DPDK environment.
> +Ref: `OCTEONTX Platform Driver` for setup information of PMD.

See last comment

>  
>  Pre-Installation Configuration
>  ------------------------------
> diff --git a/doc/guides/index.rst b/doc/guides/index.rst
> index 5b6eb7ec5..9c24dcb46 100644
> --- a/doc/guides/index.rst
> +++ b/doc/guides/index.rst
> @@ -47,3 +47,4 @@ DPDK documentation
>     contributing/index
>     rel_notes/index
>     faq/index
> +   platform/index
> diff --git a/doc/guides/nics/octeontx.rst b/doc/guides/nics/octeontx.rst
> index a6631cd0e..2527aa3e3 100644
> --- a/doc/guides/nics/octeontx.rst
> +++ b/doc/guides/nics/octeontx.rst
> @@ -71,34 +71,7 @@ The features supported by the device and not yet supported by this PMD include:
>  Prerequisites
>  -------------
>  
> -There are three main pre-perquisites for executing OCTEONTX PMD on a OCTEONTX
> -compatible board:
> -
> -1. **OCTEONTX Linux kernel PF driver for Network acceleration HW blocks**
> -
> -   The OCTEONTX Linux kernel drivers (including the required PF driver for the
> -   all network acceleration blocks) are available on GitHub at
> -   `octeontx-kmod <https://github.com/caviumnetworks/octeontx-kmod>`_
> -   along with build, install and dpdk usage instructions.
> -
> -2. **ARM64 Tool Chain**
> -
> -   For example, the *aarch64* Linaro Toolchain, which can be obtained from
> -   `here <https://releases.linaro.org/components/toolchain/binaries/4.9-2017.01/aarch64-linux-gnu>`_.
> -
> -3. **Rootfile system**
> -
> -   Any *aarch64* supporting filesystem can be used. For example,
> -   Ubuntu 15.10 (Wily) or 16.04 LTS (Xenial) userland which can be obtained
> -   from `<http://cdimage.ubuntu.com/ubuntu-base/releases/16.04/release/ubuntu-base-16.04.1-base-arm64.tar.gz>`_.
> -
> -   As an alternative method, OCTEONTX PMD can also be executed using images provided
> -   as part of SDK from Cavium. The SDK includes all the above prerequisites necessary
> -   to bring up a OCTEONTX board.
> -
> -   SDK and related information can be obtained from: `Cavium support site <https://support.cavium.com/>`_.
> -
> -Follow the DPDK :ref:`Getting Started Guide for Linux <linux_gsg>` to setup the basic DPDK environment.
> +Ref: `OCTEONTX Platform Driver` for setup information of PMD.

See last comment

>  
>  Pre-Installation Configuration
>  ------------------------------
> diff --git a/doc/guides/platform/index.rst b/doc/guides/platform/index.rst
> new file mode 100644
> index 000000000..27b64e57d
> --- /dev/null
> +++ b/doc/guides/platform/index.rst
> @@ -0,0 +1,40 @@
> +..  BSD LICENSE
> +    Copyright (C) Cavium, Inc. 2017. 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

s/Intel Corporation/Cavium, Inc/g
Similar instance found in patch 2 as well.

> +    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.
> +
> +Platform Device Drivers
> +=======================

IMO, We should not limit to Platform specific drivers. I think, all
platform specific information can go here. For x86 case, may be x86 tuning 
guide can be moved here from QSG.


> +
> +The following are a list of platform device PMD, That has information about
> +their common hw blocks and steps to setup platform device.
> +
> +.. toctree::
> +    :maxdepth: 2
> +    :numbered:
> +
> +    octeontx
> diff --git a/doc/guides/platform/octeontx.rst b/doc/guides/platform/octeontx.rst
> new file mode 100644
> index 000000000..11cff6a11
> --- /dev/null
> +++ b/doc/guides/platform/octeontx.rst
> @@ -0,0 +1,75 @@
> +..  BSD LICENSE
> +    Copyright (C) Cavium, Inc. 2017. 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 Cavium, Inc 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.
> +
> +OCTEONTX Platform Driver
> +========================

I think, it would more appropriate to call "OCTEONTX Board Support Package"
or something similar as it has details for PF driver, ARM64 toolchain and
Rootfile system etc

> +
> +OCTEONTX Platform driver has information about common offload hw
> +block drivers of **Cavium OCTEONTX** SoC family and has steps to setup platform
> +driver.
> +
> +More information about SoC can be found at `Cavium, Inc Official Website
> +<http://www.cavium.com/OCTEON-TX_ARM_Processors.html>`_.
> +
> +Common Offload HW Block Drivers
> +-------------------------------
> +
> +1. **Eventdev Driver**
> +   Ref:`OCTEONTX SSOVF Eventdev Driver`
> +
> +Steps To Setup Platform Driver
> +------------------------------
> +
> +There are three main pre-prerequisites for setting up Platform drivers on
> +OCTEONTX compatible board:
> +
> +1. **OCTEONTX Linux kernel PF driver for Network acceleration HW blocks**
> +
> +   The OCTEONTX Linux kernel drivers (includes the required PF driver for the
> +   Platform drivers) are available on Github at `octeontx-kmod <https://github.com/caviumnetworks/octeontx-kmod>`_
> +   along with build, install and dpdk usage instructions.
> +
> +2. **ARM64 Tool Chain**
> +
> +   For example, the *aarch64* Linaro Toolchain, which can be obtained from
> +   `here <https://releases.linaro.org/components/toolchain/binaries/4.9-2017.01/aarch64-linux-gnu>`_.
> +
> +3. **Rootfile system**
> +
> +   Any *aarch64* supporting filesystem can be used. For example,
> +   Ubuntu 15.10 (Wily) or 16.04 LTS (Xenial) userland which can be obtained
> +   from `<http://cdimage.ubuntu.com/ubuntu-base/releases/16.04/release/ubuntu-base-16.04.1-base-arm64.tar.gz>`_.
> +
> +   As an alternative method, Platform drivers can also be executed using images provided
> +   as part of SDK from Cavium. The SDK includes all the above prerequisites necessary
> +   to bring up a OCTEONTX board.
> +
> +   SDK and related information can be obtained from: `Cavium support site <https://support.cavium.com/>`_.
> +
> +- Follow the DPDK :ref:`Getting Started Guide for Linux <linux_gsg>` to setup the basic DPDK environment.
> -- 
> 2.14.1
>
  
Thomas Monjalon Oct. 21, 2017, 9:09 p.m. UTC | #2
21/10/2017 11:41, Jerin Jacob:
> > +Platform Device Drivers
> > +=======================
> 
> IMO, We should not limit to Platform specific drivers. I think, all
> platform specific information can go here. For x86 case, may be x86 tuning 
> guide can be moved here from QSG.

+1

It must become a place to describe any platform-specific stuff.
  
John McNamara Oct. 23, 2017, 2:35 p.m. UTC | #3
> -----Original Message-----
> From: Santosh Shukla [mailto:santosh.shukla@caviumnetworks.com]
> Sent: Friday, October 20, 2017 4:21 PM
> To: dev@dpdk.org
> Cc: thomas@monjalon.net; jerin.jacob@caviumnetworks.com; Mcnamara, John
> <john.mcnamara@intel.com>; Santosh Shukla
> <santosh.shukla@caviumnetworks.com>
> Subject: [PATCH v4 1/3] doc: add platform device
> 
> This commit adds a section to the docs listing the platform device PMDs
> available.
> 
> It then adds the octeontx platform driver to the listed platform devices.
> 
> Patch also removes platform specific duplicate setup information from
> eventdev/octeontx.rst, nics/octeontx.rst and update to
> plaform/octeontx.rst.
> 


> ...
> diff --git a/doc/guides/index.rst b/doc/guides/index.rst index
> 5b6eb7ec5..9c24dcb46 100644
> --- a/doc/guides/index.rst
> +++ b/doc/guides/index.rst
> @@ -47,3 +47,4 @@ DPDK documentation
>     contributing/index
>     rel_notes/index
>     faq/index
> +   platform/index

The new doc should go after the Event Device section and before the
Contributors guide.


> ...
> +Platform Device Drivers
> +=======================
> +
> +The following are a list of platform device PMD, That has information
> +about their common hw blocks and steps to setup platform device.


Maybe something like this instead:


Platform Specific Guides
========================

The following are platform specific guides and setup information.


John
  

Patch

diff --git a/doc/guides/eventdevs/octeontx.rst b/doc/guides/eventdevs/octeontx.rst
index b43d5155e..e834372af 100644
--- a/doc/guides/eventdevs/octeontx.rst
+++ b/doc/guides/eventdevs/octeontx.rst
@@ -63,33 +63,7 @@  Supported OCTEONTX SoCs
 Prerequisites
 -------------
 
-There are three main pre-perquisites for executing SSOVF PMD on a OCTEONTX
-compatible board:
-
-1. **OCTEONTX Linux kernel PF driver for Network acceleration HW blocks**
-
-   The OCTEONTX Linux kernel drivers (including the required PF driver for the
-   SSOVF) are available on Github at `octeontx-kmod <https://github.com/caviumnetworks/octeontx-kmod>`_
-   along with build, install and dpdk usage instructions.
-
-2. **ARM64 Tool Chain**
-
-   For example, the *aarch64* Linaro Toolchain, which can be obtained from
-   `here <https://releases.linaro.org/components/toolchain/binaries/4.9-2017.01/aarch64-linux-gnu>`_.
-
-3. **Rootfile system**
-
-   Any *aarch64* supporting filesystem can be used. For example,
-   Ubuntu 15.10 (Wily) or 16.04 LTS (Xenial) userland which can be obtained
-   from `<http://cdimage.ubuntu.com/ubuntu-base/releases/16.04/release/ubuntu-base-16.04.1-base-arm64.tar.gz>`_.
-
-   As an alternative method, SSOVF PMD can also be executed using images provided
-   as part of SDK from Cavium. The SDK includes all the above prerequisites necessary
-   to bring up a OCTEONTX board.
-
-   SDK and related information can be obtained from: `Cavium support site <https://support.cavium.com/>`_.
-
-- Follow the DPDK :ref:`Getting Started Guide for Linux <linux_gsg>` to setup the basic DPDK environment.
+Ref: `OCTEONTX Platform Driver` for setup information of PMD.
 
 Pre-Installation Configuration
 ------------------------------
diff --git a/doc/guides/index.rst b/doc/guides/index.rst
index 5b6eb7ec5..9c24dcb46 100644
--- a/doc/guides/index.rst
+++ b/doc/guides/index.rst
@@ -47,3 +47,4 @@  DPDK documentation
    contributing/index
    rel_notes/index
    faq/index
+   platform/index
diff --git a/doc/guides/nics/octeontx.rst b/doc/guides/nics/octeontx.rst
index a6631cd0e..2527aa3e3 100644
--- a/doc/guides/nics/octeontx.rst
+++ b/doc/guides/nics/octeontx.rst
@@ -71,34 +71,7 @@  The features supported by the device and not yet supported by this PMD include:
 Prerequisites
 -------------
 
-There are three main pre-perquisites for executing OCTEONTX PMD on a OCTEONTX
-compatible board:
-
-1. **OCTEONTX Linux kernel PF driver for Network acceleration HW blocks**
-
-   The OCTEONTX Linux kernel drivers (including the required PF driver for the
-   all network acceleration blocks) are available on GitHub at
-   `octeontx-kmod <https://github.com/caviumnetworks/octeontx-kmod>`_
-   along with build, install and dpdk usage instructions.
-
-2. **ARM64 Tool Chain**
-
-   For example, the *aarch64* Linaro Toolchain, which can be obtained from
-   `here <https://releases.linaro.org/components/toolchain/binaries/4.9-2017.01/aarch64-linux-gnu>`_.
-
-3. **Rootfile system**
-
-   Any *aarch64* supporting filesystem can be used. For example,
-   Ubuntu 15.10 (Wily) or 16.04 LTS (Xenial) userland which can be obtained
-   from `<http://cdimage.ubuntu.com/ubuntu-base/releases/16.04/release/ubuntu-base-16.04.1-base-arm64.tar.gz>`_.
-
-   As an alternative method, OCTEONTX PMD can also be executed using images provided
-   as part of SDK from Cavium. The SDK includes all the above prerequisites necessary
-   to bring up a OCTEONTX board.
-
-   SDK and related information can be obtained from: `Cavium support site <https://support.cavium.com/>`_.
-
-Follow the DPDK :ref:`Getting Started Guide for Linux <linux_gsg>` to setup the basic DPDK environment.
+Ref: `OCTEONTX Platform Driver` for setup information of PMD.
 
 Pre-Installation Configuration
 ------------------------------
diff --git a/doc/guides/platform/index.rst b/doc/guides/platform/index.rst
new file mode 100644
index 000000000..27b64e57d
--- /dev/null
+++ b/doc/guides/platform/index.rst
@@ -0,0 +1,40 @@ 
+..  BSD LICENSE
+    Copyright (C) Cavium, Inc. 2017. 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.
+
+Platform Device Drivers
+=======================
+
+The following are a list of platform device PMD, That has information about
+their common hw blocks and steps to setup platform device.
+
+.. toctree::
+    :maxdepth: 2
+    :numbered:
+
+    octeontx
diff --git a/doc/guides/platform/octeontx.rst b/doc/guides/platform/octeontx.rst
new file mode 100644
index 000000000..11cff6a11
--- /dev/null
+++ b/doc/guides/platform/octeontx.rst
@@ -0,0 +1,75 @@ 
+..  BSD LICENSE
+    Copyright (C) Cavium, Inc. 2017. 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 Cavium, Inc 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.
+
+OCTEONTX Platform Driver
+========================
+
+OCTEONTX Platform driver has information about common offload hw
+block drivers of **Cavium OCTEONTX** SoC family and has steps to setup platform
+driver.
+
+More information about SoC can be found at `Cavium, Inc Official Website
+<http://www.cavium.com/OCTEON-TX_ARM_Processors.html>`_.
+
+Common Offload HW Block Drivers
+-------------------------------
+
+1. **Eventdev Driver**
+   Ref:`OCTEONTX SSOVF Eventdev Driver`
+
+Steps To Setup Platform Driver
+------------------------------
+
+There are three main pre-prerequisites for setting up Platform drivers on
+OCTEONTX compatible board:
+
+1. **OCTEONTX Linux kernel PF driver for Network acceleration HW blocks**
+
+   The OCTEONTX Linux kernel drivers (includes the required PF driver for the
+   Platform drivers) are available on Github at `octeontx-kmod <https://github.com/caviumnetworks/octeontx-kmod>`_
+   along with build, install and dpdk usage instructions.
+
+2. **ARM64 Tool Chain**
+
+   For example, the *aarch64* Linaro Toolchain, which can be obtained from
+   `here <https://releases.linaro.org/components/toolchain/binaries/4.9-2017.01/aarch64-linux-gnu>`_.
+
+3. **Rootfile system**
+
+   Any *aarch64* supporting filesystem can be used. For example,
+   Ubuntu 15.10 (Wily) or 16.04 LTS (Xenial) userland which can be obtained
+   from `<http://cdimage.ubuntu.com/ubuntu-base/releases/16.04/release/ubuntu-base-16.04.1-base-arm64.tar.gz>`_.
+
+   As an alternative method, Platform drivers can also be executed using images provided
+   as part of SDK from Cavium. The SDK includes all the above prerequisites necessary
+   to bring up a OCTEONTX board.
+
+   SDK and related information can be obtained from: `Cavium support site <https://support.cavium.com/>`_.
+
+- Follow the DPDK :ref:`Getting Started Guide for Linux <linux_gsg>` to setup the basic DPDK environment.