• Anirban Chakraborty's avatar
    qlcnic: NIC Partitioning - Add basic infrastructure support · 2e9d722d
    Anirban Chakraborty authored
    Following changes have been added to enable the adapter to work in
    NIC partitioning mode where multiple PCI functions of an adapter port can
    be configured to work as NIC functions. The first function that is enumerated on
    the PCI bus assumes the role of management function which, besides being able
    to do all the NIC functionality, can configure other NIC partitions. Other NIC
    functions can be configured as privileged or non privileged functions.
    Privileged function can not configure other NIC functions but can do all the
    NIC functionality including any firmware initialization, chip reset etc. Non
    privileged functions can do only basic IO. For chip reset etc, it depends on the
    privilege or management function.
    
    1. Added code to determine PCI function number independent of kernel API.
    2. Added Driver - FW version 2.0 support.
    3. Changed producer and consumer register offset calculation.
    4. Added management and privileged operation modes for npar functions. A module
     parameter has been added to control it.
    5. Added support for configuring the eswitch in the adapter.
    Signed-off-by: default avatarAnirban Chakraborty <anirban.chakraborty@qlogic.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    2e9d722d
qlcnic_hw.c 31.9 KB