MWC fabric setup

Change-Id: I312e3d280aa17ef854eb057d6a34e89dbeef0902
diff --git a/drivers/barefoot-pro/src/main/resources/barefoot-pro-drivers.xml b/drivers/barefoot-pro/src/main/resources/barefoot-pro-drivers.xml
index 30a0110..03f65c4 100644
--- a/drivers/barefoot-pro/src/main/resources/barefoot-pro-drivers.xml
+++ b/drivers/barefoot-pro/src/main/resources/barefoot-pro-drivers.xml
@@ -18,6 +18,7 @@
     <driver name="barefoot-pro" manufacturer="Barefoot Networks" hwVersion="1.0" swVersion="1.0" extends="barefoot">
         <behaviour api="org.onosproject.net.behaviour.PiPipelineProgrammable"
                    impl="org.onosproject.drivers.barefoot.pro.TofinoProPipelineProgrammable"/>
+        <property name="supportTableCounters">true</property>
     </driver>
 </drivers>
 
diff --git a/drivers/mellanox-pro/src/main/resources/mellanox-pro-drivers.xml b/drivers/mellanox-pro/src/main/resources/mellanox-pro-drivers.xml
index a3b8f0e..fab5c12 100644
--- a/drivers/mellanox-pro/src/main/resources/mellanox-pro-drivers.xml
+++ b/drivers/mellanox-pro/src/main/resources/mellanox-pro-drivers.xml
@@ -18,6 +18,7 @@
     <driver name="mellanox-pro" manufacturer="Mellanox" hwVersion="1.0" swVersion="1.0" extends="p4runtime">
         <behaviour api="org.onosproject.net.behaviour.PiPipelineProgrammable"
                    impl="org.onosproject.drivers.mellanox.pro.SpectrumProPipelineProgrammable"/>
+        <property name="noHashedTable">true</property>
     </driver>
 </drivers>
 
diff --git a/p4-pod-configs/dev-pod/cavium-spine2.json b/p4-pod-configs/dev-pod/cavium-spine2.json
new file mode 100644
index 0000000..e2a7daa
--- /dev/null
+++ b/p4-pod-configs/dev-pod/cavium-spine2.json
@@ -0,0 +1,40 @@
+{
+  "devices": {
+    "device:cavium:spine2": {
+      "generalprovider": {
+        "p4runtime": {
+          "ip": "10.92.0.194",
+          "deviceKeyId": "p4runtime:device:cavium:spine2",
+          "port": 50051,
+          "deviceId": 1
+        }
+      },
+      "piPipeconf": {
+        "piPipeconfId": "org.onosproject.pipelines.fabric.bmv2"
+      },
+      "ports": {
+        "1": {
+          "name": "s227-eth1",
+          "speed": 100000,
+          "enabled": true,
+          "number": 1,
+          "removed": false,
+          "type": "copper"
+        },
+        "2": {
+          "name": "s227-eth2",
+          "speed": 100000,
+          "enabled": true,
+          "number": 2,
+          "removed": false,
+          "type": "copper"
+        }
+      },
+      "basic": {
+        "driver": "cavium-pro",
+        "name": "spine2"
+      }
+    }
+  }
+}
+
diff --git a/p4-pod-configs/dev-pod/dev-pod.json b/p4-pod-configs/dev-pod/dev-pod.json
new file mode 100644
index 0000000..dcfd6f8
--- /dev/null
+++ b/p4-pod-configs/dev-pod/dev-pod.json
@@ -0,0 +1,76 @@
+{
+  "devices": {
+    "device:tofino:leaf1": {
+      "segmentrouting": {
+        "name": "leaf1",
+        "ipv4NodeSid": 204,
+        "ipv4Loopback": "192.168.0.204",
+        "ipv6NodeSid": 214,
+        "ipv6Loopback": "2000::c0a8:0204",
+        "routerMac": "00:00:00:00:02:04",
+        "isEdgeRouter": true,
+        "adjacencySids": []
+      }
+    },
+    "device:tofino:leaf2": {
+      "segmentrouting": {
+        "name": "leaf2",
+        "ipv4NodeSid": 205,
+        "ipv4Loopback": "192.168.0.205",
+        "ipv6NodeSid": 215,
+        "ipv6Loopback": "2000::c0a8:0205",
+        "routerMac": "00:00:00:00:02:05",
+        "isEdgeRouter": true,
+        "adjacencySids": []
+      }
+    },
+    "device:mellanox:spine1": {
+      "segmentrouting": {
+        "name": "spine1",
+        "ipv4NodeSid": 226,
+        "ipv4Loopback": "192.168.0.226",
+        "ipv6NodeSid": 236,
+        "ipv6Loopback": "2000::c0a8:0226",
+        "routerMac": "00:00:00:00:02:26",
+        "isEdgeRouter": false,
+        "adjacencySids": []
+      }
+    },
+    "device:cavium:spine2": {
+      "segmentrouting": {
+        "name": "spine2",
+        "ipv4NodeSid": 227,
+        "ipv4Loopback": "192.168.0.227",
+        "ipv6NodeSid": 237,
+        "ipv6Loopback": "2000::c0a8:0227",
+        "routerMac": "00:00:00:00:02:27",
+        "isEdgeRouter": false,
+        "adjacencySids": []
+      }
+    }
+  },
+  "ports": {
+    "device:tofino:leaf1/180": {
+      "interfaces": [
+        {
+          "name": "leaf1-3/0",
+          "ips": [
+            "10.6.1.254/24"
+          ],
+          "vlan-untagged": 10
+        }
+      ]
+    },
+    "device:tofino:leaf2/180": {
+      "interfaces": [
+        {
+          "name": "leaf2-3/0",
+          "ips": [
+            "10.6.2.254/24"
+          ],
+          "vlan-untagged": 20
+        }
+      ]
+    }
+  }
+}
diff --git a/p4-pod-configs/dev-pod/mellanox-spine1.json b/p4-pod-configs/dev-pod/mellanox-spine1.json
new file mode 100644
index 0000000..6c07b4d
--- /dev/null
+++ b/p4-pod-configs/dev-pod/mellanox-spine1.json
@@ -0,0 +1,39 @@
+{
+  "devices": {
+    "device:mellanox:spine1": {
+      "generalprovider": {
+        "p4runtime": {
+          "ip": "10.92.0.61",
+          "deviceKeyId": "p4runtime:device:mellanox:spine1",
+          "port": 50051,
+          "deviceId": 0
+        }
+      },
+      "piPipeconf": {
+        "piPipeconfId": "org.onosproject.pipelines.fabric.bmv2"
+      },
+      "ports": {
+        "1/0": {
+          "name": "1/0",
+          "speed": 100000,
+          "enabled": true,
+          "number": 1,
+          "removed": false,
+          "type": "copper"
+        },
+        "2/0": {
+          "name": "2/0",
+          "speed": 100000,
+          "enabled": true,
+          "number": 2,
+          "removed": false,
+          "type": "copper"
+        }
+      },
+      "basic": {
+        "driver": "mellanox-pro",
+        "name": "spine1"
+      }
+    }
+  }
+}
diff --git a/p4-pod-configs/dev-pod/tofino-leaf1-netcfg.json b/p4-pod-configs/dev-pod/tofino-leaf1-netcfg.json
new file mode 100644
index 0000000..44868dc
--- /dev/null
+++ b/p4-pod-configs/dev-pod/tofino-leaf1-netcfg.json
@@ -0,0 +1,71 @@
+{
+  "devices": {
+    "device:tofino:leaf1": {
+      "generalprovider": {
+        "p4runtime": {
+          "ip": "10.6.0.211",
+          "deviceKeyId": "p4runtime:device:tofino:leaf1",
+          "port": 50051,
+          "deviceId": 0
+        }
+      },
+      "piPipeconf": {
+        "piPipeconfId": "org.onosproject.pipelines.fabric.mavericks"
+      },
+      "ports": {
+        "1/0": {
+          "name": "1/0",
+          "speed": 100000,
+          "enabled": true,
+          "number": 188,
+          "removed": false,
+          "type": "copper"
+        },
+        "2/0": {
+          "name": "2/0",
+          "speed": 100000,
+          "enabled": true,
+          "number": 184,
+          "removed": false,
+          "type": "copper"
+        },
+        "3/0": {
+          "name": "3/0",
+          "speed": 10000,
+          "enabled": true,
+          "number": 180,
+          "removed": false,
+          "type": "copper"
+        },
+        "3/1": {
+          "name": "3/1",
+          "speed": 10000,
+          "enabled": true,
+          "number": 181,
+          "removed": false,
+          "type": "copper"
+        },
+        "3/2": {
+          "name": "3/2",
+          "speed": 10000,
+          "enabled": true,
+          "number": 182,
+          "removed": false,
+          "type": "copper"
+        },
+        "3/3": {
+          "name": "3/3",
+          "speed": 10000,
+          "enabled": true,
+          "number": 183,
+          "removed": false,
+          "type": "copper"
+        }
+      },
+      "basic": {
+        "driver": "barefoot-pro",
+        "name": "leaf1"
+      }
+    }
+  }
+}
diff --git a/p4-pod-configs/dev-pod/tofino-leaf2-netcfg.json b/p4-pod-configs/dev-pod/tofino-leaf2-netcfg.json
new file mode 100644
index 0000000..a1cb7aa
--- /dev/null
+++ b/p4-pod-configs/dev-pod/tofino-leaf2-netcfg.json
@@ -0,0 +1,71 @@
+{
+  "devices": {
+    "device:tofino:leaf2": {
+      "generalprovider": {
+        "p4runtime": {
+          "ip": "10.6.0.212",
+          "deviceKeyId": "p4runtime:device:tofino:leaf2",
+          "port": 50051,
+          "deviceId": 0
+        }
+      },
+      "piPipeconf": {
+        "piPipeconfId": "org.onosproject.pipelines.fabric.mavericks"
+      },
+      "ports": {
+        "1/0": {
+          "name": "1/0",
+          "speed": 100000,
+          "enabled": true,
+          "number": 188,
+          "removed": false,
+          "type": "copper"
+        },
+        "2/0": {
+          "name": "2/0",
+          "speed": 100000,
+          "enabled": true,
+          "number": 184,
+          "removed": false,
+          "type": "copper"
+        },
+        "3/0": {
+          "name": "3/0",
+          "speed": 10000,
+          "enabled": true,
+          "number": 180,
+          "removed": false,
+          "type": "copper"
+        },
+        "3/1": {
+          "name": "3/1",
+          "speed": 10000,
+          "enabled": true,
+          "number": 181,
+          "removed": false,
+          "type": "copper"
+        },
+        "3/2": {
+          "name": "3/2",
+          "speed": 10000,
+          "enabled": true,
+          "number": 182,
+          "removed": false,
+          "type": "copper"
+        },
+        "3/3": {
+          "name": "3/3",
+          "speed": 10000,
+          "enabled": true,
+          "number": 183,
+          "removed": false,
+          "type": "copper"
+        }
+      },
+      "basic": {
+        "driver": "barefoot-pro",
+        "name": "leaf2"
+      }
+    }
+  }
+}
diff --git a/p4-pod-configs/mwc-pod/cavium-spine1.json b/p4-pod-configs/mwc-pod/cavium-spine1.json
new file mode 100644
index 0000000..c8943fa
--- /dev/null
+++ b/p4-pod-configs/mwc-pod/cavium-spine1.json
@@ -0,0 +1,41 @@
+{
+  "devices": {
+    "device:cavium:spine1": {
+      "chassisId": "000000000226",
+      "generalprovider": {
+        "p4runtime": {
+          "ip": "10.128.13.101",
+          "deviceKeyId": "p4runtime:device:cavium:spine1",
+          "port": 50051,
+          "deviceId": 1
+        }
+      },
+      "piPipeconf": {
+        "piPipeconfId": "org.onosproject.pipelines.fabric"
+      },
+      "ports": {
+        "1": {
+          "name": "s226-eth1",
+          "speed": 100000,
+          "enabled": true,
+          "number": 1,
+          "removed": false,
+          "type": "copper"
+        },
+        "2": {
+          "name": "s226-eth2",
+          "speed": 100000,
+          "enabled": true,
+          "number": 2,
+          "removed": false,
+          "type": "copper"
+        }
+      },
+      "basic": {
+        "driver": "cavium-pro",
+        "name": "spine1"
+      }
+    }
+  }
+}
+
diff --git a/p4-pod-configs/mwc-pod/cavium-spine2.json b/p4-pod-configs/mwc-pod/cavium-spine2.json
new file mode 100644
index 0000000..889c4b5
--- /dev/null
+++ b/p4-pod-configs/mwc-pod/cavium-spine2.json
@@ -0,0 +1,41 @@
+{
+  "devices": {
+    "device:cavium:spine2": {
+      "chassisId": "000000000227",
+      "generalprovider": {
+        "p4runtime": {
+          "ip": "10.128.13.102",
+          "deviceKeyId": "p4runtime:device:cavium:spine2",
+          "port": 50051,
+          "deviceId": 1
+        }
+      },
+      "piPipeconf": {
+        "piPipeconfId": "org.onosproject.pipelines.fabric.bmv2"
+      },
+      "ports": {
+        "1": {
+          "name": "s227-eth1",
+          "speed": 100000,
+          "enabled": true,
+          "number": 1,
+          "removed": false,
+          "type": "copper"
+        },
+        "2": {
+          "name": "s227-eth2",
+          "speed": 100000,
+          "enabled": true,
+          "number": 2,
+          "removed": false,
+          "type": "copper"
+        }
+      },
+      "basic": {
+        "driver": "cavium-pro",
+        "name": "spine2"
+      }
+    }
+  }
+}
+
diff --git a/p4-pod-configs/mwc-pod/mellanox-spine1.json b/p4-pod-configs/mwc-pod/mellanox-spine1.json
new file mode 100644
index 0000000..6c07b4d
--- /dev/null
+++ b/p4-pod-configs/mwc-pod/mellanox-spine1.json
@@ -0,0 +1,39 @@
+{
+  "devices": {
+    "device:mellanox:spine1": {
+      "generalprovider": {
+        "p4runtime": {
+          "ip": "10.92.0.61",
+          "deviceKeyId": "p4runtime:device:mellanox:spine1",
+          "port": 50051,
+          "deviceId": 0
+        }
+      },
+      "piPipeconf": {
+        "piPipeconfId": "org.onosproject.pipelines.fabric.bmv2"
+      },
+      "ports": {
+        "1/0": {
+          "name": "1/0",
+          "speed": 100000,
+          "enabled": true,
+          "number": 1,
+          "removed": false,
+          "type": "copper"
+        },
+        "2/0": {
+          "name": "2/0",
+          "speed": 100000,
+          "enabled": true,
+          "number": 2,
+          "removed": false,
+          "type": "copper"
+        }
+      },
+      "basic": {
+        "driver": "mellanox-pro",
+        "name": "spine1"
+      }
+    }
+  }
+}
diff --git a/p4-pod-configs/mwc-pod/mwc-demo-two-cavium.json b/p4-pod-configs/mwc-pod/mwc-demo-two-cavium.json
new file mode 100644
index 0000000..5db7aee
--- /dev/null
+++ b/p4-pod-configs/mwc-pod/mwc-demo-two-cavium.json
@@ -0,0 +1,150 @@
+{
+  "devices": {
+    "device:tofino:leaf1": {
+      "segmentrouting": {
+        "name": "leaf1",
+        "ipv4NodeSid": 204,
+        "ipv4Loopback": "192.168.0.204",
+        "ipv6NodeSid": 214,
+        "ipv6Loopback": "2000::c0a8:0204",
+        "routerMac": "00:00:00:00:02:04",
+        "isEdgeRouter": true,
+        "adjacencySids": []
+      }
+    },
+    "device:tofino:leaf2": {
+      "segmentrouting": {
+        "name": "leaf2",
+        "ipv4NodeSid": 205,
+        "ipv4Loopback": "192.168.0.205",
+        "ipv6NodeSid": 215,
+        "ipv6Loopback": "2000::c0a8:0205",
+        "routerMac": "00:00:00:00:02:05",
+        "isEdgeRouter": true,
+        "adjacencySids": []
+      }
+    },
+    "device:cavium:spine1": {
+      "segmentrouting": {
+        "name": "spine1",
+        "ipv4NodeSid": 226,
+        "ipv4Loopback": "192.168.0.226",
+        "ipv6NodeSid": 236,
+        "ipv6Loopback": "2000::c0a8:0226",
+        "routerMac": "00:00:00:00:02:26",
+        "isEdgeRouter": false,
+        "adjacencySids": []
+      }
+    },
+    "device:cavium:spine2": {
+      "segmentrouting": {
+        "name": "spine2",
+        "ipv4NodeSid": 227,
+        "ipv4Loopback": "192.168.0.227",
+        "ipv6NodeSid": 237,
+        "ipv6Loopback": "2000::c0a8:0227",
+        "routerMac": "00:00:00:00:02:27",
+        "isEdgeRouter": false,
+        "adjacencySids": []
+      }
+    }
+  },
+  "ports": {
+    "device:tofino:leaf1/144": {
+      "interfaces": [
+        {
+          "name": "leaf1-3/0",
+          "ips": [
+            "10.6.1.254/24"
+          ],
+          "vlan-untagged": 10
+        }
+      ]
+    },
+    "device:tofino:leaf1/145": {
+      "interfaces": [
+        {
+          "name": "leaf1-3/1",
+          "ips": [
+            "10.6.1.254/24"
+          ],
+          "vlan-untagged": 10
+        }
+      ]
+    },
+    "device:tofino:leaf1/146": {
+      "interfaces": [
+        {
+          "name": "leaf1-3/2",
+          "ips": [
+            "10.6.1.254/24"
+          ],
+          "vlan-untagged": 10
+        }
+      ]
+    },
+    "device:tofino:leaf1/147": {
+      "interfaces": [
+        {
+          "name": "leaf1-3/3",
+          "ips": [
+            "10.6.1.254/24"
+          ],
+          "vlan-untagged": 10
+        }
+      ]
+    },
+    "device:tofino:leaf2/144": {
+      "interfaces": [
+        {
+          "name": "leaf2-3/0",
+          "ips": [
+            "10.6.2.254/24",
+            "118.0.0.1/24",
+            "119.0.0.1/24"
+          ],
+          "vlan-untagged": 20
+        }
+      ]
+    },
+    "device:tofino:leaf2/145": {
+      "interfaces": [
+        {
+          "name": "leaf2-3/1",
+          "ips": [
+            "10.6.2.254/24",
+            "118.0.0.1/24",
+            "119.0.0.1/24"
+          ],
+          "vlan-untagged": 20
+        }
+      ]
+    },
+    "device:tofino:leaf2/146": {
+      "interfaces": [
+        {
+          "name": "leaf2-3/2",
+          "ips": [
+            "10.6.2.254/24",
+            "118.0.0.1/24",
+            "119.0.0.1/24"
+          ],
+          "vlan-untagged": 20
+        }
+      ]
+    },
+    "device:tofino:leaf2/147": {
+      "interfaces": [
+        {
+          "name": "leaf2-3/3",
+          "ips": [
+            "10.6.2.254/24",
+            "118.0.0.1/24",
+            "119.0.0.1/24"
+          ],
+          "vlan-untagged": 20
+        }
+      ]
+    }
+  }
+}
diff --git a/p4-pod-configs/mwc-pod/mwc-demo.json b/p4-pod-configs/mwc-pod/mwc-demo.json
new file mode 100644
index 0000000..88ee7d5
--- /dev/null
+++ b/p4-pod-configs/mwc-pod/mwc-demo.json
@@ -0,0 +1,137 @@
+{
+  "devices": {
+    "device:tofino:leaf1": {
+      "segmentrouting": {
+        "name": "leaf1",
+        "ipv4NodeSid": 204,
+        "ipv4Loopback": "192.168.0.204",
+        "ipv6NodeSid": 214,
+        "ipv6Loopback": "2000::c0a8:0204",
+        "routerMac": "00:00:00:00:02:04",
+        "isEdgeRouter": true,
+        "adjacencySids": []
+      }
+    },
+    "device:tofino:leaf2": {
+      "segmentrouting": {
+        "name": "leaf2",
+        "ipv4NodeSid": 205,
+        "ipv4Loopback": "192.168.0.205",
+        "ipv6NodeSid": 215,
+        "ipv6Loopback": "2000::c0a8:0205",
+        "routerMac": "00:00:00:00:02:05",
+        "isEdgeRouter": true,
+        "adjacencySids": []
+      }
+    },
+    "device:cavium:spine1": {
+      "segmentrouting": {
+        "name": "spine1",
+        "ipv4NodeSid": 226,
+        "ipv4Loopback": "192.168.0.226",
+        "ipv6NodeSid": 236,
+        "ipv6Loopback": "2000::c0a8:0226",
+        "routerMac": "00:00:00:00:02:26",
+        "isEdgeRouter": false,
+        "adjacencySids": []
+      }
+    },
+    "device:mellanox:spine2": {
+      "segmentrouting": {
+        "name": "spine2",
+        "ipv4NodeSid": 227,
+        "ipv4Loopback": "192.168.0.227",
+        "ipv6NodeSid": 237,
+        "ipv6Loopback": "2000::c0a8:0227",
+        "routerMac": "00:00:00:00:02:27",
+        "isEdgeRouter": false,
+        "adjacencySids": []
+      }
+    }
+  },
+  "ports": {
+    "device:tofino:leaf1/144": {
+      "interfaces": [
+        {
+          "name": "leaf1-3/0",
+          "ips": [
+          ],
+          "vlan-untagged": 10
+        }
+      ]
+    },
+    "device:tofino:leaf1/145": {
+      "interfaces": [
+        {
+          "name": "leaf1-3/1",
+          "ips": [
+          ],
+          "vlan-untagged": 10
+        }
+      ]
+    },
+    "device:tofino:leaf1/146": {
+      "interfaces": [
+        {
+          "name": "leaf1-3/2",
+          "ips": [
+          ],
+          "vlan-untagged": 10
+        }
+      ]
+    },
+    "device:tofino:leaf1/147": {
+      "interfaces": [
+        {
+          "name": "leaf1-3/3",
+          "ips": [
+          ],
+          "vlan-untagged": 10
+        }
+      ]
+    },
+    "device:tofino:leaf2/144": {
+      "interfaces": [
+        {
+          "name": "leaf2-3/0",
+          "ips": [
+          ],
+          "vlan-untagged": 20
+        }
+      ]
+    },
+    "device:tofino:leaf2/145": {
+      "interfaces": [
+        {
+          "name": "leaf2-3/1",
+          "ips": [
+            "10.6.1.254/24"
+          ],
+          "vlan-untagged": 20
+        }
+      ]
+    },
+    "device:tofino:leaf2/146": {
+      "interfaces": [
+        {
+          "name": "leaf2-3/2",
+          "ips": [
+            "10.6.1.254/24"
+          ],
+          "vlan-untagged": 20
+        }
+      ]
+    },
+    "device:tofino:leaf2/147": {
+      "interfaces": [
+        {
+          "name": "leaf2-3/3",
+          "ips": [
+            "10.6.1.254/24"
+          ],
+          "vlan-untagged": 20
+        }
+      ]
+    }
+  }
+}
diff --git a/p4-pod-configs/mwc-pod/tofino-leaf1-netcfg.json b/p4-pod-configs/mwc-pod/tofino-leaf1-netcfg.json
new file mode 100644
index 0000000..a9d2923
--- /dev/null
+++ b/p4-pod-configs/mwc-pod/tofino-leaf1-netcfg.json
@@ -0,0 +1,72 @@
+{
+  "devices": {
+    "device:tofino:leaf1": {
+      "chassisId": "000000000204",
+      "generalprovider": {
+        "p4runtime": {
+          "ip": "10.6.0.221",
+          "deviceKeyId": "p4runtime:device:tofino:leaf1",
+          "port": 50051,
+          "deviceId": 0
+        }
+      },
+      "piPipeconf": {
+        "piPipeconfId": "org.onosproject.pipelines.fabric.montana"
+      },
+      "ports": {
+        "1/0": {
+          "name": "1/0",
+          "speed": 100000,
+          "enabled": true,
+          "number": 128,
+          "removed": false,
+          "type": "copper"
+        },
+        "2/0": {
+          "name": "2/0",
+          "speed": 100000,
+          "enabled": true,
+          "number": 136,
+          "removed": false,
+          "type": "copper"
+        },
+        "3/0": {
+          "name": "4/0",
+          "speed": 10000,
+          "enabled": true,
+          "number": 144,
+          "removed": false,
+          "type": "copper"
+        },
+        "3/1": {
+          "name": "3/1",
+          "speed": 10000,
+          "enabled": true,
+          "number": 145,
+          "removed": false,
+          "type": "copper"
+        },
+        "3/2": {
+          "name": "3/2",
+          "speed": 10000,
+          "enabled": true,
+          "number": 146,
+          "removed": false,
+          "type": "copper"
+        },
+        "3/3": {
+          "name": "3/3",
+          "speed": 10000,
+          "enabled": true,
+          "number": 147,
+          "removed": false,
+          "type": "copper"
+        }
+      },
+      "basic": {
+        "driver": "barefoot-pro",
+        "name": "leaf1"
+      }
+    }
+  }
+}
diff --git a/p4-pod-configs/mwc-pod/tofino-leaf2-netcfg.json b/p4-pod-configs/mwc-pod/tofino-leaf2-netcfg.json
new file mode 100644
index 0000000..4f09e43
--- /dev/null
+++ b/p4-pod-configs/mwc-pod/tofino-leaf2-netcfg.json
@@ -0,0 +1,72 @@
+{
+  "devices": {
+    "device:tofino:leaf2": {
+      "chassisId": "000000000205",
+      "generalprovider": {
+        "p4runtime": {
+          "ip": "10.6.0.222",
+          "deviceKeyId": "p4runtime:device:tofino:leaf2",
+          "port": 50051,
+          "deviceId": 0
+        }
+      },
+      "piPipeconf": {
+        "piPipeconfId": "org.onosproject.pipelines.fabric-spgw.montana"
+      },
+      "ports": {
+        "1/0": {
+          "name": "1/0",
+          "speed": 100000,
+          "enabled": true,
+          "number": 128,
+          "removed": false,
+          "type": "copper"
+        },
+        "2/0": {
+          "name": "2/0",
+          "speed": 100000,
+          "enabled": true,
+          "number": 136,
+          "removed": false,
+          "type": "copper"
+        },
+        "3/0": {
+          "name": "4/0",
+          "speed": 10000,
+          "enabled": true,
+          "number": 144,
+          "removed": false,
+          "type": "copper"
+        },
+        "3/1": {
+          "name": "3/1",
+          "speed": 10000,
+          "enabled": true,
+          "number": 145,
+          "removed": false,
+          "type": "copper"
+        },
+        "3/2": {
+          "name": "3/2",
+          "speed": 10000,
+          "enabled": true,
+          "number": 146,
+          "removed": false,
+          "type": "copper"
+        },
+        "3/3": {
+          "name": "3/3",
+          "speed": 10000,
+          "enabled": true,
+          "number": 147,
+          "removed": false,
+          "type": "copper"
+        }
+      },
+      "basic": {
+        "driver": "barefoot-pro",
+        "name": "leaf2"
+      }
+    }
+  }
+}
diff --git a/tools/test/cells/mcord-head b/tools/test/cells/mcord-head
new file mode 100644
index 0000000..64dc8af
--- /dev/null
+++ b/tools/test/cells/mcord-head
@@ -0,0 +1,8 @@
+# Local VirtualBox-based ONOS instances 1,2 & ONOS mininet box
+
+export ONOS_NIC=10.92.0.*
+export OC1="10.92.0.20"
+export ONOS_GROUP="cord"
+export ONOS_USER="ubuntu"
+export ONOS_APPS="drivers"
+
diff --git a/tools/test/cells/mwc-head b/tools/test/cells/mwc-head
new file mode 100644
index 0000000..04642a1
--- /dev/null
+++ b/tools/test/cells/mwc-head
@@ -0,0 +1,8 @@
+# Local VirtualBox-based ONOS instances 1,2 & ONOS mininet box
+
+export ONOS_NIC=10.128.13.*
+export OC1="10.128.13.3"
+export ONOS_GROUP="cord"
+export ONOS_USER="cord"
+export ONOS_APPS="drivers"
+