
This patch adds a public API for a network driver to work on top of QED. The interface itself is very minimal - it's mostly infrastructure, as the only content it has after this patch is a query for HW-based information required for the creation of a network interface [I.e., no actual protocol-specific configurations are supported]. Signed-off-by: Manish Chopra <Manish.Chopra@qlogic.com> Signed-off-by: Yuval Mintz <Yuval.Mintz@qlogic.com> Signed-off-by: Ariel Elior <Ariel.Elior@qlogic.com> Signed-off-by: David S. Miller <davem@davemloft.net>
39 lines
789 B
C
39 lines
789 B
C
/* QLogic qed NIC Driver
|
|
* Copyright (c) 2015 QLogic Corporation
|
|
*
|
|
* This software is available under the terms of the GNU General Public License
|
|
* (GPL) Version 2, available from the file COPYING in the main directory of
|
|
* this source tree.
|
|
*/
|
|
|
|
#ifndef _QED_ETH_IF_H
|
|
#define _QED_ETH_IF_H
|
|
|
|
#include <linux/list.h>
|
|
#include <linux/if_link.h>
|
|
#include <linux/qed/eth_common.h>
|
|
#include <linux/qed/qed_if.h>
|
|
|
|
struct qed_dev_eth_info {
|
|
struct qed_dev_info common;
|
|
|
|
u8 num_queues;
|
|
u8 num_tc;
|
|
|
|
u8 port_mac[ETH_ALEN];
|
|
u8 num_vlan_filters;
|
|
};
|
|
|
|
struct qed_eth_ops {
|
|
const struct qed_common_ops *common;
|
|
|
|
int (*fill_dev_info)(struct qed_dev *cdev,
|
|
struct qed_dev_eth_info *info);
|
|
|
|
};
|
|
|
|
const struct qed_eth_ops *qed_get_eth_ops(u32 version);
|
|
void qed_put_eth_ops(void);
|
|
|
|
#endif
|