<?xml version="1.0" encoding="UTF-8"?>
<!--
  ~ Copyright 2016-present Open Networking Foundation
  ~
  ~ Licensed under the Apache License, Version 2.0 (the "License");
  ~ you may not use this file except in compliance with the License.
  ~ You may obtain a copy of the License at
  ~
  ~     http://www.apache.org/licenses/LICENSE-2.0
  ~
  ~ Unless required by applicable law or agreed to in writing, software
  ~ distributed under the License is distributed on an "AS IS" BASIS,
  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  ~ See the License for the specific language governing permissions and
  ~ limitations under the License.
  -->
<drivers>
    <driver name="default"
            manufacturer="Open Networking Foundation" hwVersion="0.0.1" swVersion="0.0.1">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.DefaultSingleTablePipeline"/>
        <behaviour api="org.onosproject.openflow.controller.driver.OpenFlowSwitchDriver"
                   impl="org.onosproject.driver.handshaker.DefaultSwitchHandshaker"/>
        <property name="supportPacketRequest">true</property>
    </driver>
    <driver name="ovs" extends="default"
            manufacturer="Nicira, Inc\." hwVersion="Open vSwitch" swVersion="2\..*">
        <behaviour api="org.onosproject.openflow.controller.driver.OpenFlowSwitchDriver"
                   impl="org.onosproject.driver.handshaker.NiciraSwitchHandshaker"/>
        <behaviour api="org.onosproject.openflow.controller.ExtensionTreatmentInterpreter"
                   impl="org.onosproject.driver.extensions.NiciraExtensionTreatmentInterpreter" />
        <behaviour api="org.onosproject.net.behaviour.ExtensionTreatmentResolver"
                   impl="org.onosproject.driver.extensions.NiciraExtensionTreatmentInterpreter" />
        <behaviour api="org.onosproject.net.flow.ExtensionTreatmentCodec"
                   impl="org.onosproject.driver.extensions.NiciraExtensionTreatmentInterpreter" />
        <behaviour api="org.onosproject.openflow.controller.ExtensionSelectorInterpreter"
                   impl="org.onosproject.driver.extensions.NiciraExtensionSelectorInterpreter" />
        <behaviour api="org.onosproject.net.behaviour.ExtensionSelectorResolver"
                   impl="org.onosproject.driver.extensions.NiciraExtensionSelectorInterpreter" />
        <behaviour api="org.onosproject.net.flow.ExtensionSelectorCodec"
                   impl="org.onosproject.driver.extensions.NiciraExtensionSelectorInterpreter" />
        <behaviour api="org.onosproject.net.behaviour.VlanQuery"
                   impl="org.onosproject.driver.query.FullVlanAvailable" />
        <behaviour api="org.onosproject.net.behaviour.MplsQuery"
                   impl="org.onosproject.driver.query.FullMplsAvailable" />
    </driver>

    <!-- Lagopus software OpenFlow 1.3 switch
           http://www.lagopus.org/ -->
    <driver name="lagopus" extends="default"
            manufacturer="Lagopus project"
            hwVersion=".*" swVersion=".*">
        <behaviour api="org.onosproject.net.behaviour.VlanQuery"
                   impl="org.onosproject.driver.query.FullVlanAvailable" />
        <behaviour api="org.onosproject.net.behaviour.MplsQuery"
                   impl="org.onosproject.driver.query.FullMplsAvailable" />
    </driver>

    <!--  Driver for OFDPA i12_1.7.
       ~  TODO: version number in i12_1.7 is 2.0. Change it back when we can distinguish 3.0.
      -->
    <driver name="ofdpa" extends="default"
            manufacturer="Broadcom Corp\." hwVersion="OF-DPA i12_1.7" swVersion="OF-DPA i12_1.7">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.ofdpa.Ofdpa2Pipeline"/>
        <behaviour api="org.onosproject.openflow.controller.ExtensionTreatmentInterpreter"
                   impl="org.onosproject.driver.extensions.OfdpaExtensionTreatmentInterpreter" />
        <behaviour api="org.onosproject.net.behaviour.ExtensionTreatmentResolver"
                   impl="org.onosproject.driver.extensions.OfdpaExtensionTreatmentInterpreter" />
        <behaviour api="org.onosproject.openflow.controller.ExtensionSelectorInterpreter"
                   impl="org.onosproject.driver.extensions.OfdpaExtensionSelectorInterpreter" />
        <behaviour api="org.onosproject.net.behaviour.ExtensionSelectorResolver"
                   impl="org.onosproject.driver.extensions.OfdpaExtensionSelectorInterpreter" />
        <property name="meterCapable">false</property>
    </driver>

    <!--  Driver for OFDPA 3.0 EA*.
       ~  TODO: version number from switch is still 2.0. Update when 3.0 is GA.
       ~  TODO: remove Ofdpa3SwitchHandshaker when bug for GroupStats is fixed.
      -->
    <driver name="ofdpa3" extends="ofdpa"
            manufacturer="Broadcom Corp\." hwVersion="OF-DPA 2.0" swVersion="OF-DPA 2.0">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.ofdpa.Ofdpa3Pipeline"/>
        <behaviour api="org.onosproject.openflow.controller.ExtensionTreatmentInterpreter"
                   impl="org.onosproject.driver.extensions.Ofdpa3ExtensionTreatmentInterpreter" />
        <behaviour api="org.onosproject.net.behaviour.ExtensionTreatmentResolver"
                   impl="org.onosproject.driver.extensions.Ofdpa3ExtensionTreatmentInterpreter" />
        <behaviour api="org.onosproject.openflow.controller.ExtensionSelectorInterpreter"
                   impl="org.onosproject.driver.extensions.Ofdpa3ExtensionSelectorInterpreter" />
        <behaviour api="org.onosproject.net.behaviour.ExtensionSelectorResolver"
                   impl="org.onosproject.driver.extensions.Ofdpa3ExtensionSelectorInterpreter" />
        <behaviour api="org.onosproject.net.flow.ExtensionTreatmentCodec"
                   impl="org.onosproject.driver.extensions.Ofdpa3ExtensionTreatmentInterpreter" />
        <behaviour api="org.onosproject.net.flow.ExtensionSelectorCodec"
                   impl="org.onosproject.driver.extensions.Ofdpa3ExtensionSelectorInterpreter" />
        <behaviour api="org.onosproject.openflow.controller.driver.OpenFlowSwitchDriver"
                   impl="org.onosproject.driver.handshaker.Ofdpa3SwitchHandshaker"/>
    </driver>

    <driver name="xpliant" extends="ofdpa3"
            manufacturer="Cavium, Inc\." hwVersion=".*" swVersion=".*">
        <behaviour api="org.onosproject.openflow.controller.driver.OpenFlowSwitchDriver"
                   impl="org.onosproject.driver.handshaker.NiciraSwitchHandshaker"/>
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.XpliantPipeline"/>
    </driver>

    <!--  Driver for OFDPA 3.0 EA* for Qumran based switches.
       ~  Note: driver needs to be configured using onos-netcfg.
      -->
    <driver name="qmx-ofdpa3" extends="ofdpa3"
            manufacturer="Broadcom Corp\." hwVersion="Qmx" swVersion="Qmx">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
               impl="org.onosproject.driver.pipeline.ofdpa.Ofdpa3QmxPipeline"/>
    </driver>

    <!-- Driver for OFDPA Premium version -->
    <driver name="as7712-32x-premium" extends="ofdpa3"
            manufacturer="^Broadcom Ltd\.$" hwVersion=".*[Aa][Ss]7712-32[Xx].*" swVersion="^OF-DPA Premium.*">
    </driver>

    <driver name="as5912-54x-premium" extends="qmx-ofdpa3"
            manufacturer="^Broadcom Ltd\.$" hwVersion=".*[Aa][Ss]5912-54[Xx].*" swVersion="^OF-DPA Premium.*">
    </driver>

    <driver name="as5916-54x-premium" extends="qmx-ofdpa3"
            manufacturer="^Broadcom Ltd\.$" hwVersion=".*[Aa][Ss]5916-54[Xx].*" swVersion="^OF-DPA Premium.*">
    </driver>

    <!-- OFDPA drivers from vendors -->
    <driver name="accton-ofdpa3" extends="ofdpa3"
            manufacturer="Accton Corp\." hwVersion=".*" swVersion="ofdpa .*">
    </driver>

    <driver name="znyx-ofdpa" extends="ofdpa3"
            manufacturer="ZNYX Networks" hwVersion=".*" swVersion=".*OF-DPA.*">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.ofdpa.Ofdpa3Pipeline"/>
        <behaviour api="org.onosproject.openflow.controller.ExtensionTreatmentInterpreter"
                   impl="org.onosproject.driver.extensions.Ofdpa3ExtensionTreatmentInterpreter" />
        <behaviour api="org.onosproject.net.behaviour.ExtensionTreatmentResolver"
                   impl="org.onosproject.driver.extensions.Ofdpa3ExtensionTreatmentInterpreter" />
        <behaviour api="org.onosproject.openflow.controller.ExtensionSelectorInterpreter"
                   impl="org.onosproject.driver.extensions.OfdpaExtensionSelectorInterpreter" />
        <behaviour api="org.onosproject.net.behaviour.ExtensionSelectorResolver"
                   impl="org.onosproject.driver.extensions.OfdpaExtensionSelectorInterpreter" />
    </driver>

    <!--  Emulation of the OF-DPA pipeline using a OVS 2.5.0+ software switch.
       ~  To use this driver, configure ONOS with the dpid of the device.
     -->
    <driver name="ofdpa-ovs" extends="default"
            manufacturer="ONF"
            hwVersion="OFDPA OVS" swVersion="OFDPA OVS">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.ofdpa.OvsOfdpa2Pipeline"/>
    </driver>

    <driver name="celestica" extends="default"
            manufacturer="PMC GPON Networks" hwVersion="PAS5211 v2" swVersion="vOLT version 1.5.3.*">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.OltPipeline"/>
    </driver>
    <driver name="pmc-olt" extends="default"
            manufacturer="PMC GPON Networks" hwVersion="PASffffffff v-1" swVersion="vOLT.*">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.OltPipeline"/>
    </driver>
    <driver name="voltha" extends="default"
            manufacturer="cord project" hwVersion=".*" swVersion="logical device for .*">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.OltPipeline"/>
    </driver>
    <driver name="fj-olt" extends="default"
            manufacturer="Fujitsu" hwVersion="svkOLT" swVersion="v1.0">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.OltPipeline"/>
    </driver>
    <driver name="nokia-olt" extends="default"
            manufacturer="Nokia" hwVersion="SDOLT" swVersion="5.2.1">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.NokiaOltPipeline"/>
    </driver>
    <driver name="g.fast" extends="default"
            manufacturer="TEST1" hwVersion="TEST2" swVersion="TEST3">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.OltPipeline"/>
    </driver>
    <!--  The SoftRouter driver is meant to be used by any software/NPU based
       ~  switch that wishes to implement a simple 2-table router. To use this
       ~  driver, configure ONOS with the dpid of the device, or extend the
       ~  driver declaration with the manufacturer/hwVersion/swVersion of the
       ~  device (see 'noviflow' example).
      -->
    <driver name="softrouter" extends="default"
            manufacturer="Various" hwVersion="various" swVersion="0.0.0">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.SoftRouterPipeline"/>
    </driver>
    <driver name="pica" extends="default"
            manufacturer="Pica8, Inc." hwVersion=".*" swVersion="PicOS 2.6">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.PicaPipeline"/>
    </driver>
    <driver name="noviflow" extends="softrouter"
            manufacturer="NoviFlow Inc" hwVersion="NS.*" swVersion="NW.*">
    </driver>
    <driver name="onosfw" extends="ovs"
            manufacturer="" hwVersion="" swVersion="">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.OpenVSwitchPipeline"/>
    </driver>
    <driver name="aos" extends="ofdpa"
            manufacturer="Accton" hwVersion=".*" swVersion="1.*">
    </driver>

    <!-- The abstract driver is meant as a base driver containing classes that are
       ~ present in the default drivers module. These classes are needed by other
       ~ drivers but not loaded by any of the base ones.
       ~ The abstract driver is NOT meant to be used by itself with any device.
       ~ Policies will be put in place in the DriverManager so that this driver
       ~ is not assigned to any device from the southbound or the net-cfg.
    -->
    <driver name="abstract"
            manufacturer="abstract" hwVersion="abstract" swVersion="abstract">
        <behaviour api="org.onosproject.net.behaviour.MeterQuery"
                   impl="org.onosproject.driver.query.FullMetersAvailable"/>
    </driver>

    <!-- Deprecated CpqD drivers. CORD-1625 -->

    <!-- Emulation of the spring-open pipeline using a CPqD OF 1.3 software switch.
       ~ This driver is the default driver assigned to the CPqD switch.
      -->
    <driver name="spring-open-cpqd" extends="default"
            manufacturer="Stanford University, Ericsson Research and CPqD Research"
            hwVersion="OpenFlow 1.3 Reference Userspace Switch" swVersion=".*">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.SpringOpenTTP"/>
    </driver>
    <driver name="spring-open" extends="default"
            manufacturer="Dell " hwVersion="OpenFlow switch HW ver. 1.0"
            swVersion="OpenFlow switch SW ver. 1.0 and 1.3">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.SpringOpenTTPDell"/>
    </driver>

    <!-- Emulation of the OFDPA pipeline using a CPqD OF 1.3 software switch.
       ~ Use this driver when MPLS functionality is required.
       ~ To use this driver, configure ONOS with the dpid of the device.
      -->
    <driver name="ofdpa-cpqd" extends="default"
            manufacturer="ONF"
            hwVersion="OF1.3 Software Switch from CPqD" swVersion="for Group Chaining">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.ofdpa.CpqdOfdpa2Pipeline"/>
    </driver>

    <!-- Emulation of the OFDPA pipeline using a CPqD OF 1.3 software switch.
       ~ Use this driver when VLAN functionality is required.
       ~ To use this driver, configure ONOS with the dpid of the device.
      -->
    <driver name="ofdpa-cpqd-vlan" extends="default"
            manufacturer="ONF"
            hwVersion="OF1.3 Software Switch from CPqD" swVersion="for Group Chaining">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.ofdpa.CpqdOfdpa2VlanPipeline"/>
    </driver>

      <!-- The following is a demo-specific driver with very limited pipeline capabilities
    <driver name="centec-V350" extends="default"
            manufacturer=".*Centec.*" hwVersion=".*" swVersion="3.1.*">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.CentecV350Pipeline"/>
    </driver>
    -->
</drivers>

