docs: better docs, mv doxygen to sphinx

This patch refactors the VPP sphinx docs
in order to make it easier to consume
for external readers as well as VPP developers.

It also makes sphinx the single source
of documentation, which simplifies maintenance
and operation.

Most important updates are:

- reformat the existing documentation as rst
- split RELEASE.md and move it into separate rst files
- remove section 'events'
- remove section 'archive'
- remove section 'related projects'
- remove section 'feature by release'
- remove section 'Various links'
- make (Configuration reference, CLI docs,
  developer docs) top level items in the list
- move 'Use Cases' as part of 'About VPP'
- move 'Troubleshooting' as part of 'Getting Started'
- move test framework docs into 'Developer Documentation'
- add a 'Contributing' section for gerrit,
  docs and other contributer related infos
- deprecate doxygen and test-docs targets
- redirect the "make doxygen" target to "make docs"

Type: refactor

Change-Id: I552a5645d5b7964d547f99b1336e2ac24e7c209f
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
diff --git a/docs/usecases/simpleperf/iperf3.rst b/docs/usecases/simpleperf/iperf3.rst
index 6f5d345..d485a5e 100644
--- a/docs/usecases/simpleperf/iperf3.rst
+++ b/docs/usecases/simpleperf/iperf3.rst
@@ -60,7 +60,7 @@
    csp2s22c03$ sudo ip link set dev ens802f0 up
    csp2s22c03$ sudo ip addr add 10.10.2.1/24 dev ens802f1
    csp2s22c03$ sudo ip link set dev ens802f1 up
-    
+
 List the route table:
 
 .. code-block:: console
@@ -123,7 +123,7 @@
              TX packets:1179 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000
              RX bytes:262230 (262.2 KB)  TX bytes:139975 (139.9 KB)
-   
+
    ens802    Link encap:Ethernet  HWaddr 68:05:ca:2e:76:e0
              inet addr:10.10.1.2  Bcast:0.0.0.0  Mask:255.255.255.0
              inet6 addr: fe80::6a05:caff:fe2e:76e0/64 Scope:Link
@@ -132,7 +132,7 @@
              TX packets:40 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000
              RX bytes:0 (0.0 B)  TX bytes:5480 (5.4 KB)
-   
+
    lo        Link encap:Local Loopback
              inet addr:127.0.0.1  Mask:255.0.0.0
              inet6 addr: ::1/128 Scope:Host
@@ -233,5 +233,5 @@
    [ ID] Interval           Transfer     Bandwidth       Retr
    [  4]   0.00-10.00  sec  9.45 GBytes  8.12 Gbits/sec  16474             sender
    [  4]   0.00-10.00  sec  9.44 GBytes  8.11 Gbits/sec                  receiver
-   
+
    iperf Done.
diff --git a/docs/usecases/simpleperf/iperf31.rst b/docs/usecases/simpleperf/iperf31.rst
index 50abfdf..dbd0e72 100644
--- a/docs/usecases/simpleperf/iperf31.rst
+++ b/docs/usecases/simpleperf/iperf31.rst
@@ -22,38 +22,38 @@
 .. code-block:: console
 
    csp2s22c03$ ./install-vpp-native/dpdk/sbin/dpdk-devbind -s
-   
+
    Network devices using DPDK-compatible driver
    ============================================
    <none>
-   
+
    Network devices using kernel driver
    ===================================
    0000:03:00.0 'Ethernet Controller 10-Gigabit X540-AT2' if=enp3s0f0 drv=ixgbe unused=vfio-pci,uio_pci_generic *Active*
    0000:03:00.1 'Ethernet Controller 10-Gigabit X540-AT2' if=enp3s0f1 drv=ixgbe unused=vfio-pci,uio_pci_generic *Active*
-   0000:82:00.0 'Ethernet Controller XL710 for 40GbE QSFP+' if=ens802f0d1,ens802f0 drv=i40e unused=uio_pci_generic                       
-   0000:82:00.1 'Ethernet Controller XL710 for 40GbE QSFP+' if=ens802f1d1,ens802f1 drv=i40e unused=uio_pci_generic                        
-   
+   0000:82:00.0 'Ethernet Controller XL710 for 40GbE QSFP+' if=ens802f0d1,ens802f0 drv=i40e unused=uio_pci_generic
+   0000:82:00.1 'Ethernet Controller XL710 for 40GbE QSFP+' if=ens802f1d1,ens802f1 drv=i40e unused=uio_pci_generic
+
    Other network devices
    =====================
    <none>
-   
+
    csp2s22c03$ sudo modprobe uio_pci_generic
    csp2s22c03$ sudo ./install-vpp-native/dpdk/sbin/dpdk-devbind --bind uio_pci_generic 82:00.0
    csp2s22c03$ sudo ./install-vpp-native/dpdk/sbin/dpdk-devbind --bind uio_pci_generic 82:00.1
 
    csp2s22c03$ sudo ./install-vpp-native/dpdk/sbin/dpdk-devbind -s
-   
+
    Network devices using DPDK-compatible driver
    ============================================
    0000:82:00.0 'Ethernet Controller XL710 for 40GbE QSFP+' drv=uio_pci_generic unused=i40e,vfio-pci
    0000:82:00.1 'Ethernet Controller XL710 for 40GbE QSFP+' drv=uio_pci_generic unused=i40e,vfio-pci
-   
+
    Network devices using kernel driver
    ===================================
    0000:03:00.0 'Ethernet Controller 10-Gigabit X540-AT2' if=enp3s0f0 drv=ixgbe unused=vfio-pci,uio_pci_generic *Active*
    0000:03:00.1 'Ethernet Controller 10-Gigabit X540-AT2' if=enp3s0f1 drv=ixgbe unused=vfio-pci,uio_pci_generic *Active*
-   
+
 Start the VPP service, and verify that VPP is running:
 
 .. code-block:: console
@@ -63,7 +63,7 @@
    root     105655      1 98 17:34 ?        00:00:02 /usr/bin/vpp -c /etc/vpp/startup.conf
    :w
             105675 105512  0 17:34 pts/4    00:00:00 grep --color=auto vpp
-   
+
 To access the VPP CLI, issue the command sudo vppctl . From the VPP interface, list
 all interfaces that are bound to DPDK using the command show interface:
 
@@ -109,7 +109,7 @@
    [ ID] Interval           Transfer     Bandwidth       Retr
    [  4]   0.00-10.00  sec  23.7 GBytes  20.3 Gbits/sec  13434             sender
    [  4]   0.00-10.00  sec  23.7 GBytes  20.3 Gbits/sec                  receiver
-   
+
    iperf Done.
 
 The **show run** command displays the graph runtime statistics. Observe that the
diff --git a/docs/usecases/simpleperf/trex.rst b/docs/usecases/simpleperf/trex.rst
index 996ed15..6d38ce5 100644
--- a/docs/usecases/simpleperf/trex.rst
+++ b/docs/usecases/simpleperf/trex.rst
@@ -65,7 +65,7 @@
            default_gw: 10.10.2.1
          - ip: 10.10.1.2
            default_gw: 10.10.1.1
-   
+
 Stop the previous VPP session and start it again in order to add a route for new
 IP addresses 16.0.0.0/8 and 48.0.0.0/8, according to Figure 2. Those IP addresses
 are needed because TRex generates packets that use these addresses. Refer to the
@@ -81,13 +81,13 @@
     __/ __/ _ \  (_)__    | | / / _ \/ _ \
     _/ _// // / / / _ \   | |/ / ___/ ___/
     /_/ /____(_)_/\___/   |___/_/  /_/
-   
+
    vpp# sho int
                  Name               Idx       State          Counter          Count
    FortyGigabitEthernet82/0/0        1        down
    FortyGigabitEthernet82/0/1        2        down
    local0                            0        down
-   
+
    vpp#
    vpp# set interface ip address FortyGigabitEthernet82/0/0 10.10.1.1/24
    vpp# set interface ip address FortyGigabitEthernet82/0/1 10.10.2.1/24
@@ -109,7 +109,7 @@
     Total-tx-bytes       : 166886 bytes
     Total-tx-sw-bytes    : 166716 bytes
     Total-rx-bytes       : 166886 byte
-   
+
     Total-tx-pkt         : 2528 pkts
     Total-rx-pkt         : 2528 pkts
     Total-sw-tx-pkt      : 2526 pkts
diff --git a/docs/usecases/simpleperf/trex1.rst b/docs/usecases/simpleperf/trex1.rst
index 0daa57f..1704b3f 100644
--- a/docs/usecases/simpleperf/trex1.rst
+++ b/docs/usecases/simpleperf/trex1.rst
@@ -15,7 +15,7 @@
     Total-tx-bytes       : 251062132504 bytes
     Total-tx-sw-bytes    : 21426636 bytes
     Total-rx-bytes       : 251040139922 byte
-   
+
     Total-tx-pkt         : 430598064 pkts
     Total-rx-pkt         : 430554755 pkts
     Total-sw-tx-pkt      : 324646 pkts
diff --git a/docs/usecases/simpleperf/trex2.rst b/docs/usecases/simpleperf/trex2.rst
index 590bfd0..e1ff98f 100644
--- a/docs/usecases/simpleperf/trex2.rst
+++ b/docs/usecases/simpleperf/trex2.rst
@@ -18,36 +18,36 @@
 
     # cd v2.46/
     # ./trex -i
-    -Per port stats table 
-          ports |               0 |               1 |               2 |               3 
+    -Per port stats table
+          ports |               0 |               1 |               2 |               3
      -----------------------------------------------------------------------------------------
-       opackets |               0 |               0 |               0 |               0 
-         obytes |               0 |               0 |               0 |               0 
-       ipackets |               6 |               6 |               5 |               5 
-         ibytes |             384 |             384 |             320 |             320 
-        ierrors |               0 |               0 |               0 |               0 
-        oerrors |               0 |               0 |               0 |               0 
-          Tx Bw |       0.00  bps |       0.00  bps |       0.00  bps |       0.00  bps 
-    
-    -Global stats enabled 
+       opackets |               0 |               0 |               0 |               0
+         obytes |               0 |               0 |               0 |               0
+       ipackets |               6 |               6 |               5 |               5
+         ibytes |             384 |             384 |             320 |             320
+        ierrors |               0 |               0 |               0 |               0
+        oerrors |               0 |               0 |               0 |               0
+          Tx Bw |       0.00  bps |       0.00  bps |       0.00  bps |       0.00  bps
+
+    -Global stats enabled
      Cpu Utilization : 0.0  %
-     Platform_factor : 1.0  
-     Total-Tx        :       0.00  bps  
-     Total-Rx        :     238.30  bps  
-     Total-PPS       :       0.00  pps  
-     Total-CPS       :       0.00  cps  
-    
-     Expected-PPS    :       0.00  pps  
-     Expected-CPS    :       0.00  cps  
-     Expected-BPS    :       0.00  bps  
-    
-     Active-flows    :        0  Clients :        0   Socket-util : 0.0000 %    
-     Open-flows      :        0  Servers :        0   Socket :        0 Socket/Clients :  -nan 
-     drop-rate       :       0.00  bps   
-     current time    : 21.4 sec  
-     test duration   : 0.0 sec  
+     Platform_factor : 1.0
+     Total-Tx        :       0.00  bps
+     Total-Rx        :     238.30  bps
+     Total-PPS       :       0.00  pps
+     Total-CPS       :       0.00  cps
+
+     Expected-PPS    :       0.00  pps
+     Expected-CPS    :       0.00  cps
+     Expected-BPS    :       0.00  bps
+
+     Active-flows    :        0  Clients :        0   Socket-util : 0.0000 %
+     Open-flows      :        0  Servers :        0   Socket :        0 Socket/Clients :  -nan
+     drop-rate       :       0.00  bps
+     current time    : 21.4 sec
+     test duration   : 0.0 sec
      *** TRex is shutting down - cause: 'CTRL + C detected'
-     All cores stopped !! 
+     All cores stopped !!
 
 In the other terminal start the TRex console. With this console we will execute the TRex commands.
 
@@ -55,28 +55,28 @@
 
     # cd v2.46/
     # ./trex -console
-    
+
     Using 'python' as Python interpreter
-    
-    
+
+
     Connecting to RPC server on localhost:4501                   [SUCCESS]
-    
-    
+
+
     Connecting to publisher server on localhost:4500             [SUCCESS]
-    
-    
+
+
     Acquiring ports [0, 1, 2, 3]:                                [SUCCESS]
-    
-    
+
+
     Server Info:
-    
+
     Server version:   v2.46 @ STL
     Server mode:      Stateless
     Server CPU:       2 x Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz
-    Ports count:      4 x 10Gbps @ VMXNET3 Ethernet Controller	
-    
+    Ports count:      4 x 10Gbps @ VMXNET3 Ethernet Controller
+
     -=TRex Console v3.0=-
-    
+
     Type 'help' or '?' for supported actions
     trex>
 
@@ -85,26 +85,26 @@
 .. code-block:: console
 
     trex>start -f ./stl/imix.py -p 0 1 2 3 -m 9475mbps
-    
+
     Removing all streams from port(s) [0, 1, 2, 3]:              [SUCCESS]
-    
-    
+
+
     Attaching 3 streams to port(s) [0]:                          [SUCCESS]
-    
-    
+
+
     Attaching 3 streams to port(s) [1]:                          [SUCCESS]
-    
-    
+
+
     Attaching 3 streams to port(s) [2]:                          [SUCCESS]
-    
-    
+
+
     Attaching 3 streams to port(s) [3]:                          [SUCCESS]
-    
-    
+
+
     Starting traffic on port(s) [0, 1, 2, 3]:                    [SUCCESS]
-    
+
     80.94 [ms]
-    
+
     trex>
 
 The **-f ./stl/imix.py** argument specifies the file that is used to create the
@@ -116,77 +116,77 @@
 
 .. code-block:: console
 
-    -Per port stats table 
+    -Per port stats table
           ports |               0 |               1 |               2 |               3
      -----------------------------------------------------------------------------------------
-       opackets |       789907304 |       789894738 |       790017701 |       790017132 
-         obytes |    285397726750 |    285392406754 |    285406864578 |    285405883070 
-       ipackets |      1563501970 |              45 |      1563504693 |              44 
-         ibytes |    564870783050 |            2880 |    564873491682 |            2816 
-        ierrors |        15728759 |               0 |        15732451 |               0 
-        oerrors |               0 |               0 |               0 |               0 
-          Tx Bw |     606.55 Mbps |     606.19 Mbps |     606.25 Mbps |     606.51 Mbps 
+       opackets |       789907304 |       789894738 |       790017701 |       790017132
+         obytes |    285397726750 |    285392406754 |    285406864578 |    285405883070
+       ipackets |      1563501970 |              45 |      1563504693 |              44
+         ibytes |    564870783050 |            2880 |    564873491682 |            2816
+        ierrors |        15728759 |               0 |        15732451 |               0
+        oerrors |               0 |               0 |               0 |               0
+          Tx Bw |     606.55 Mbps |     606.19 Mbps |     606.25 Mbps |     606.51 Mbps
 
-    -Global stats enabled 
-     Cpu Utilization : 100.0  %  2.4 Gb/core 
-     Platform_factor : 1.0  
-     Total-Tx        :       2.43 Gbps  
-     Total-Rx        :       2.40 Gbps  
-     Total-PPS       :     841.44 Kpps  
-     Total-CPS       :       0.00  cps  
-    
-     Expected-PPS    :       0.00  pps  
-     Expected-CPS    :       0.00  cps  
-     Expected-BPS    :       0.00  bps  
-    
-     Active-flows    :        0  Clients :        0   Socket-util : 0.0000 %    
-     Open-flows      :        0  Servers :        0   Socket :        0 Socket/Clients :  -nan 
-     Total_queue_full : 6529970196         
-     drop-rate       :       0.00  bps   
-     current time    : 4016.8 sec  
-     test duration   : 0.0 sec  
-    
+    -Global stats enabled
+     Cpu Utilization : 100.0  %  2.4 Gb/core
+     Platform_factor : 1.0
+     Total-Tx        :       2.43 Gbps
+     Total-Rx        :       2.40 Gbps
+     Total-PPS       :     841.44 Kpps
+     Total-CPS       :       0.00  cps
+
+     Expected-PPS    :       0.00  pps
+     Expected-CPS    :       0.00  cps
+     Expected-BPS    :       0.00  bps
+
+     Active-flows    :        0  Clients :        0   Socket-util : 0.0000 %
+     Open-flows      :        0  Servers :        0   Socket :        0 Socket/Clients :  -nan
+     Total_queue_full : 6529970196
+     drop-rate       :       0.00  bps
+     current time    : 4016.8 sec
+     test duration   : 0.0 sec
+
 More statistics can be displayed on the TRex console using the **tui** command.
 
 .. code-block:: console
 
     trex>tui
-    
+
     Global Statistics
-    
-    connection   : localhost, Port 4501                  total_tx_L2  : 2.45 Gb/sec                    
-    version      : STL @ v2.46                           total_tx_L1  : 2.59 Gb/sec                    
-    cpu_util.    : 99.89% @ 2 cores (1 per port)         total_rx     : 2.42 Gb/sec                    
-    rx_cpu_util. : 4.03% / 837.39 Kpkt/sec               total_pps    : 846.96 Kpkt/sec                
-    async_util.  : 0.05% / 1.76 KB/sec                   drop_rate    : 0 b/sec                        
-                                                         queue_full   : 42,750,771 pkts                
-    
+
+    connection   : localhost, Port 4501                  total_tx_L2  : 2.45 Gb/sec
+    version      : STL @ v2.46                           total_tx_L1  : 2.59 Gb/sec
+    cpu_util.    : 99.89% @ 2 cores (1 per port)         total_rx     : 2.42 Gb/sec
+    rx_cpu_util. : 4.03% / 837.39 Kpkt/sec               total_pps    : 846.96 Kpkt/sec
+    async_util.  : 0.05% / 1.76 KB/sec                   drop_rate    : 0 b/sec
+                                                         queue_full   : 42,750,771 pkts
+
     Port Statistics
-    
-       port    |         0         |         1         |         2         |         3         |       total       
+
+       port    |         0         |         1         |         2         |         3         |       total
     -----------+-------------------+-------------------+-------------------+-------------------+------------------
-    owner      |              root |              root |              root |              root |                   
-    link       |                UP |                UP |                UP |                UP |                   
-    state      |      TRANSMITTING |      TRANSMITTING |      TRANSMITTING |      TRANSMITTING |                   
-    speed      |           10 Gb/s |           10 Gb/s |           10 Gb/s |           10 Gb/s |                   
-    CPU util.  |            99.89% |            99.89% |            99.89% |            99.89% |                   
-    --         |                   |                   |                   |                   |                   
-    Tx bps L2  |       612.76 Mbps |       613.07 Mbps |       612.52 Mbps |       612.77 Mbps |         2.45 Gbps 
-    Tx bps L1  |       646.64 Mbps |       646.96 Mbps |        646.4 Mbps |       646.64 Mbps |         2.59 Gbps 
-    Tx pps     |       211.72 Kpps |        211.8 Kpps |       211.73 Kpps |       211.71 Kpps |       846.96 Kpps 
-    Line Util. |            6.47 % |            6.47 % |            6.46 % |            6.47 % |                   
-    ---        |                   |                   |                   |                   |                   
-    Rx bps     |         1.21 Gbps |     \u25bc\u25bc\u25bc 23.03 bps |         1.21 Gbps |          5.94 bps |         2.42 G    bps 
-    Rx pps     |       418.59 Kpps |          0.04 pps |       418.77 Kpps |          0.01 pps |       837.36 Kpps 
-    ----       |                   |                   |                   |                   |                   
-    opackets   |           5227126 |           5227271 |           5432528 |           5432354 |          21319279 
-    ipackets   |          10526000 |                 5 |          10527054 |                 4 |          21053063 
-    obytes     |        1890829910 |        1891039152 |        1965259162 |        1965124338 |        7712252562 
-    ibytes     |        3807894454 |               320 |        3808149896 |               256 |        7616044926 
-    tx-pkts    |        5.23 Mpkts |        5.23 Mpkts |        5.43 Mpkts |        5.43 Mpkts |       21.32 Mpkts 
-    rx-pkts    |       10.53 Mpkts |            5 pkts |       10.53 Mpkts |            4 pkts |       21.05 Mpkts 
-    tx-bytes   |           1.89 GB |           1.89 GB |           1.97 GB |           1.97 GB |           7.71 GB 
-    rx-bytes   |           3.81 GB |             320 B |           3.81 GB |             256 B |           7.62 GB 
-    -----      |                   |                   |                   |                   |                   
-    oerrors    |                 0 |                 0 |                 0 |                 0 |                 0 
-    ierrors    |           133,370 |                 0 |           132,529 |                 0 |           265,899 
+    owner      |              root |              root |              root |              root |
+    link       |                UP |                UP |                UP |                UP |
+    state      |      TRANSMITTING |      TRANSMITTING |      TRANSMITTING |      TRANSMITTING |
+    speed      |           10 Gb/s |           10 Gb/s |           10 Gb/s |           10 Gb/s |
+    CPU util.  |            99.89% |            99.89% |            99.89% |            99.89% |
+    --         |                   |                   |                   |                   |
+    Tx bps L2  |       612.76 Mbps |       613.07 Mbps |       612.52 Mbps |       612.77 Mbps |         2.45 Gbps
+    Tx bps L1  |       646.64 Mbps |       646.96 Mbps |        646.4 Mbps |       646.64 Mbps |         2.59 Gbps
+    Tx pps     |       211.72 Kpps |        211.8 Kpps |       211.73 Kpps |       211.71 Kpps |       846.96 Kpps
+    Line Util. |            6.47 % |            6.47 % |            6.46 % |            6.47 % |
+    ---        |                   |                   |                   |                   |
+    Rx bps     |         1.21 Gbps |     \u25bc\u25bc\u25bc 23.03 bps |         1.21 Gbps |          5.94 bps |         2.42 G    bps
+    Rx pps     |       418.59 Kpps |          0.04 pps |       418.77 Kpps |          0.01 pps |       837.36 Kpps
+    ----       |                   |                   |                   |                   |
+    opackets   |           5227126 |           5227271 |           5432528 |           5432354 |          21319279
+    ipackets   |          10526000 |                 5 |          10527054 |                 4 |          21053063
+    obytes     |        1890829910 |        1891039152 |        1965259162 |        1965124338 |        7712252562
+    ibytes     |        3807894454 |               320 |        3808149896 |               256 |        7616044926
+    tx-pkts    |        5.23 Mpkts |        5.23 Mpkts |        5.43 Mpkts |        5.43 Mpkts |       21.32 Mpkts
+    rx-pkts    |       10.53 Mpkts |            5 pkts |       10.53 Mpkts |            4 pkts |       21.05 Mpkts
+    tx-bytes   |           1.89 GB |           1.89 GB |           1.97 GB |           1.97 GB |           7.71 GB
+    rx-bytes   |           3.81 GB |             320 B |           3.81 GB |             256 B |           7.62 GB
+    -----      |                   |                   |                   |                   |
+    oerrors    |                 0 |                 0 |                 0 |                 0 |                 0
+    ierrors    |           133,370 |                 0 |           132,529 |                 0 |           265,899