Intel(R) Dynamic Device Personalization Tool
============================================
October 21, 2020
Contents
========
- OVERVIEW
- COMMAND LINE PARAMETERS
- EXAMPLES
- EXIT CODES
- INSTALLATION
- CUSTOMER SUPPORT
- LEGAL
OVERVIEW
========
The Intel(R) Dynamic Device Personalization Tool is a utility for detecting the Dynamic Device Personalization (DDP)
profiles loaded on the following devices:
- Intel(R) Ethernet 800 Series
- Intel(R) Ethernet X710 Series
Dynamic Device Personalization (DDP) allows you to change the packet processing pipeline of a device by applying a profile
package to the device at runtime. Profiles can be used to, for example, add support for new protocols, change existing
protocols, or change default settings. See the Linux ice or i40e driver README for more information.
NOTE: The Intel Dynamic Device Personalization Tool requires the following:
- ice devices: NVM version 2.2 or later
- i40e devices: Linux i40e base driver version 2.7.27 or later
The output of this tool can be sent to the console or to an XML or JSON file.
COMMAND LINE PARAMETERS
=======================
When run with no parameters, the Intel Dynamic Device Personalization Tool displays information about all supported devices.
Usage: ddptool [parameters] [argument]
-a
Display information about all functions for all supported devices. This parameter cannot be used with -f.
-h, --help, -?
Display command line help.
- f FILENAME
Displays information about the profile contained in the specified package file. This parameter cannot be used with -a, -i,
or -s.
-i DEVNAME
Display information for the specified network interface name. Running ddptool without any parameters will provide network
interface names. This parameter cannot be used with -f.
-j [FILENAME]
Output in JSON format to a file. If [FILENAME] is not specified, output is sent to standard output.
-l
Silent mode
-s dddd:bb:ss.f
Display information about the device located at the specified PCI location (all numbers in hex). This parameter cannot be
used with -f.
Where:
d - domain
b - bus
s - slot
f - function
-v
Display the version of the DDP tool.
-x [FILENAME]
Output in XML format to a file. If [FILENAME] is not specified, output is sent to standard output.
EXAMPLES
========
# ddptool
Intel(R) Dynamic Device Personalization Tool
DDPTool version 1.0.1.4
Copyright (C) 2019 - 2020 Intel Corporation.
NIC DevId D:B:S.F DevName TrackId Version Name
==== ===== ============ =============== ======== ============ ==============================
01) 1588 0000:01:00.0 enp1s0f0 80000008 1.0.3.0 GTPv1-C/U IPv4/IPv6 payload
02) 1588 0000:01:00.1 enp1s0f1 80000008 1.0.3.0 GTPv1-C/U IPv4/IPv6 payload
03) 1584 0000:03:00.0 enp3s0f2 - - Unsupported FW version
04) 1584 0000:05:00.0 enp5s0f3 DE010001 1.0.0.0 MPLSoUDP/GRE tunnels demo
05) 1584 0000:06:00.0 N/A 80000008 1.0.3.0 GTPv1-C/U IPv4/IPv6 payload
06) 1584 0000:07:00.0 enp8s0f4 - - No profile loaded
07) 1593 0000:60:00.0 ens261f0 C0000002 1.3.17.0 ICE COMMS Package
08) 1593 0000:60:00.1 ens261f1 C0000002 1.3.17.0 ICE COMMS Package
To send the output to the console in JSON format:
# ddptool -j
Intel(R) Dynamic Device Personalization Tool
DDPTool version 1.0.1.4
Copyright (C) 2019 - 2020 Intel Corporation.
{
"DDPInventory": [
{
"device": "158B",
"address": "0000:02:00.0",
"name": "enp1s0f0",
"display": "Intel(R) Ethernet Network Adapter XXV710-2",
"DDPpackage": {
"track_id": "80000008",
"version": "1.0.3.0",
"name": "GTPv1-C/U IPv4/IPv6 payload"
}
},
{
"device": "1584",
"address": "0000:86:00.0",
"display": "Intel(R) Ethernet Network Adapter XL710-Q1",
"DDPpackage": [
{
"track_id": "DE010001",
"version": "1.0.0.0",
"name": "MPLSoUDP/GRE tunnels demo"
},
{
"track_id": "DE010002",
"version": "1.0.0.0",
"name": "MPLSoUDP/GRE PTYPE demo"
},
{
"track_id": "DE010003",
"version": "1.0.0.0",
"name": "MPLSoUDP/GRE decap demo"
}
]
}
]
}
To send the output to the ddpout.xml file:
# ddptool -x ddpout.xml
The ddpout.xml file will look like the following:
-f Examples
-----------
The following are examples of using the -f parameter.
# ddptool -f gtk.pkgo
File Name TrackId Version Name
================== ============ ============ ==============================
gtk.pkgo 80000008 1.0.3.0 GTPv1-C/U IPv4/IPv6 payload
# ddptool -f gtk.pkgo -j
{
"DDPInventory": {
"file_name": "gtp.pkgo"
"DDPpackage": {
"track_id": "80000008",
"version": "1.0.3.0",
"name": "GTPv1-C/U IPv4/IPv6 payload"
}
}
}
# ddptool -f gtk.pkgo -x
EXIT CODES
==========
Upon exit, when possible, the Intel Dynamic Device Personalization Tool reports an overall status code to indicate the
results of the operation. In general, a non-zero return code indicates an error occurred during processing.
Value Description
0 Success
1 Bad command line parameter
2 An Internal error has occurred
3 Insufficient privileges to run the tool
4 No supported adapter found
5 No driver available
6 Unsupported base driver version
7 Cannot communicate with one or more adapters
8 Lack of DDP profiles on all devices
9 Cannot read all information from one or more devices
10 Cannot create output file
11 Cannot find specific devices
12 Cannot parse the DDP package file
INSTALLATION
=============
Installing the tool on Linux*
----------------------------
In order to run this tool on Linux*, the base driver must be installed on the system.
CUSTOMER SUPPORT
================
- Main Intel web support site: http://support.intel.com
- Network products information: http://www.intel.com/network
Intel Wired Networking project hosted by Sourceforge: http://sourceforge.net/projects/e1000
LEGAL / DISCLAIMERS
===================
Copyright (C) 2019 - 2020, Intel Corporation. All rights reserved.
This software and the related documents are Intel copyrighted materials, and your use of them is governed by the express
license under which they were provided to you ("License"). Unless the License provides otherwise, you may not use, modify,
copy, publish, distribute, disclose or transmit this software or the related documents without Intel's prior written
permission.
This software and the related documents are provided as is, with no express or implied warranties, other than those that are
expressly stated in the License.
Intel technologies may require enabled hardware, software or service activation.
No product or component can be absolutely secure.
Your costs and results may vary.
Intel, the Intel logo, and other Intel marks are trademarks of Intel Corporation or its subsidiaries.
*Other names and brands may be claimed as the property of others.