<?xml version="1.0" encoding="UTF-8"?>
<!--
  ~ Copyright 2016-present Open Networking Laboratory
  ~
  ~ 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="ON.Lab" 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"/>
    </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.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.behaviour.VlanQuery"
                   impl="org.onosproject.driver.query.FullVlanAvailable" />
        <behaviour api="org.onosproject.net.behaviour.MplsQuery"
                   impl="org.onosproject.driver.query.FullMplsAvailable" />
    </driver>
    <driver name="ovs-corsa" extends="ovs"
            manufacturer="Corsa" hwVersion="emulation" swVersion="0.0.0">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.OVSCorsaPipeline"/>
    </driver>
    <!--  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>
    <driver name="linc-oe" extends="default"
            manufacturer="FlowForwarding.org" hwVersion="Unknown"
            swVersion="LINC-OE OpenFlow Software Switch 1.1">
        <behaviour api="org.onosproject.openflow.controller.driver.OpenFlowSwitchDriver"
                   impl="org.onosproject.driver.handshaker.OfOpticalSwitchImplLinc13"/>
        <behaviour api="org.onosproject.net.behaviour.LambdaQuery"
                   impl="org.onosproject.driver.query.LincOELambdaQuery"/>
    </driver>
    <driver name="corsa"
            manufacturer="Corsa" hwVersion="Corsa Element" swVersion="2.3.1">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.CorsaPipeline"/>
        <behaviour api="org.onosproject.openflow.controller.driver.OpenFlowSwitchDriver"
                   impl="org.onosproject.driver.handshaker.CorsaSwitchHandshaker"/>
    </driver>
    <driver name="corsa-v1"
            manufacturer="Corsa" hwVersion="Corsa Element" swVersion="2.3.1">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.CorsaPipeline"/>
        <behaviour api="org.onosproject.openflow.controller.driver.OpenFlowSwitchDriver"
                   impl="org.onosproject.driver.handshaker.CorsaSwitchHandshaker"/>
    </driver>
    <driver name="corsa-v3"
            manufacturer="Corsa" hwVersion="Corsa Element" swVersion="2.3.1">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.CorsaPipelineV3"/>
        <behaviour api="org.onosproject.openflow.controller.driver.OpenFlowSwitchDriver"
                   impl="org.onosproject.driver.handshaker.CorsaSwitchHandshaker"/>
    </driver>
    <driver name="ofdpa" extends="default"
            manufacturer="Broadcom Corp." hwVersion="OF-DPA.*" swVersion="OF-DPA.*">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.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" />
    </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="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="" swVersion="">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.OltPipeline"/>
    </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="centec-V350" extends="default"
            manufacturer=".*Centec.*" hwVersion=".*" swVersion="3.1.*">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.CentecV350Pipeline"/>
    </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>
    <!--  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.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.CpqdOfdpa2VlanPipeline"/>
    </driver>
    <driver name="calient" extends="default"
            manufacturer="calient technologies inc" hwVersion="calient hardware.*"
            swVersion="ocs software version.*">
        <behaviour api="org.onosproject.openflow.controller.driver.OpenFlowSwitchDriver"
                   impl="org.onosproject.driver.handshaker.CalientFiberSwitchHandshaker"/>
        <behaviour api="org.onosproject.net.behaviour.LambdaQuery"
                   impl="org.onosproject.driver.query.CalientLambdaQuery"/>
    </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="eci" extends="default"
            manufacturer="ECI Telecom" hwVersion="Optical.*" swVersion="V_1_0">
        <behaviour api="org.onosproject.openflow.controller.driver.OpenFlowSwitchDriver"
                   impl="org.onosproject.driver.handshaker.OFOpticalSwitch13"/>
        <behaviour api="org.onosproject.net.behaviour.TributarySlotQuery"
                   impl="org.onosproject.driver.query.DefaultTributarySlotQuery" />
        <behaviour api="org.onosproject.net.behaviour.LambdaQuery"
                   impl="org.onosproject.driver.query.OFOpticalSwitch13LambdaQuery"/>
    </driver>
    <driver name="aos" extends="ofdpa"
            manufacturer="Accton" hwVersion=".*" swVersion="1.*">
    </driver>
    <driver name="sona" extends="ovs"
            manufacturer="" hwVersion="" swVersion="">
        <behaviour api="org.onosproject.net.behaviour.Pipeliner"
                   impl="org.onosproject.driver.pipeline.OpenstackPipeline"/>
    </driver>
    <driver name="oplk-roadm" extends="default"
            manufacturer="Oplink a Molex company" hwVersion="ROADM"
            swVersion="of-agent">
        <behaviour api="org.onosproject.openflow.controller.driver.OpenFlowSwitchDriver"
                   impl="org.onosproject.driver.handshaker.OplinkRoadmHandshaker"/>
    </driver>
</drivers>

