mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-03 17:40:04 +00:00
liquidio: remove duplicate code
Remove code duplicated in PF and VF; define that code once only in a common header file included by PF and VF. Signed-off-by: Satanand Burla <satananda.burla@cavium.com> Signed-off-by: Felix Manlunas <felix.manlunas@cavium.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
03e1de5030
commit
1f697ab109
3 changed files with 36 additions and 72 deletions
|
@ -60,12 +60,6 @@ MODULE_PARM_DESC(fw_type, "Type of firmware to be loaded. Default \"nic\"");
|
||||||
|
|
||||||
static int ptp_enable = 1;
|
static int ptp_enable = 1;
|
||||||
|
|
||||||
/* Bit mask values for lio->ifstate */
|
|
||||||
#define LIO_IFSTATE_DROQ_OPS 0x01
|
|
||||||
#define LIO_IFSTATE_REGISTERED 0x02
|
|
||||||
#define LIO_IFSTATE_RUNNING 0x04
|
|
||||||
#define LIO_IFSTATE_RX_TIMESTAMP_ENABLED 0x08
|
|
||||||
|
|
||||||
/* Polling interval for determining when NIC application is alive */
|
/* Polling interval for determining when NIC application is alive */
|
||||||
#define LIQUIDIO_STARTER_POLL_INTERVAL_MS 100
|
#define LIQUIDIO_STARTER_POLL_INTERVAL_MS 100
|
||||||
|
|
||||||
|
@ -530,36 +524,6 @@ static void liquidio_deinit_pci(void)
|
||||||
pci_unregister_driver(&liquidio_pci_driver);
|
pci_unregister_driver(&liquidio_pci_driver);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* \brief check interface state
|
|
||||||
* @param lio per-network private data
|
|
||||||
* @param state_flag flag state to check
|
|
||||||
*/
|
|
||||||
static inline int ifstate_check(struct lio *lio, int state_flag)
|
|
||||||
{
|
|
||||||
return atomic_read(&lio->ifstate) & state_flag;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* \brief set interface state
|
|
||||||
* @param lio per-network private data
|
|
||||||
* @param state_flag flag state to set
|
|
||||||
*/
|
|
||||||
static inline void ifstate_set(struct lio *lio, int state_flag)
|
|
||||||
{
|
|
||||||
atomic_set(&lio->ifstate, (atomic_read(&lio->ifstate) | state_flag));
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* \brief clear interface state
|
|
||||||
* @param lio per-network private data
|
|
||||||
* @param state_flag flag state to clear
|
|
||||||
*/
|
|
||||||
static inline void ifstate_reset(struct lio *lio, int state_flag)
|
|
||||||
{
|
|
||||||
atomic_set(&lio->ifstate, (atomic_read(&lio->ifstate) & ~(state_flag)));
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief Stop Tx queues
|
* \brief Stop Tx queues
|
||||||
* @param netdev network device
|
* @param netdev network device
|
||||||
|
|
|
@ -39,12 +39,6 @@ MODULE_PARM_DESC(debug, "NETIF_MSG debug bits");
|
||||||
|
|
||||||
#define DEFAULT_MSG_ENABLE (NETIF_MSG_DRV | NETIF_MSG_PROBE | NETIF_MSG_LINK)
|
#define DEFAULT_MSG_ENABLE (NETIF_MSG_DRV | NETIF_MSG_PROBE | NETIF_MSG_LINK)
|
||||||
|
|
||||||
/* Bit mask values for lio->ifstate */
|
|
||||||
#define LIO_IFSTATE_DROQ_OPS 0x01
|
|
||||||
#define LIO_IFSTATE_REGISTERED 0x02
|
|
||||||
#define LIO_IFSTATE_RUNNING 0x04
|
|
||||||
#define LIO_IFSTATE_RX_TIMESTAMP_ENABLED 0x08
|
|
||||||
|
|
||||||
struct liquidio_if_cfg_context {
|
struct liquidio_if_cfg_context {
|
||||||
int octeon_id;
|
int octeon_id;
|
||||||
|
|
||||||
|
@ -335,36 +329,6 @@ static struct pci_driver liquidio_vf_pci_driver = {
|
||||||
.err_handler = &liquidio_vf_err_handler, /* For AER */
|
.err_handler = &liquidio_vf_err_handler, /* For AER */
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
|
||||||
* \brief check interface state
|
|
||||||
* @param lio per-network private data
|
|
||||||
* @param state_flag flag state to check
|
|
||||||
*/
|
|
||||||
static int ifstate_check(struct lio *lio, int state_flag)
|
|
||||||
{
|
|
||||||
return atomic_read(&lio->ifstate) & state_flag;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* \brief set interface state
|
|
||||||
* @param lio per-network private data
|
|
||||||
* @param state_flag flag state to set
|
|
||||||
*/
|
|
||||||
static void ifstate_set(struct lio *lio, int state_flag)
|
|
||||||
{
|
|
||||||
atomic_set(&lio->ifstate, (atomic_read(&lio->ifstate) | state_flag));
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* \brief clear interface state
|
|
||||||
* @param lio per-network private data
|
|
||||||
* @param state_flag flag state to clear
|
|
||||||
*/
|
|
||||||
static void ifstate_reset(struct lio *lio, int state_flag)
|
|
||||||
{
|
|
||||||
atomic_set(&lio->ifstate, (atomic_read(&lio->ifstate) & ~(state_flag)));
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief Stop Tx queues
|
* \brief Stop Tx queues
|
||||||
* @param netdev network device
|
* @param netdev network device
|
||||||
|
|
|
@ -28,6 +28,12 @@
|
||||||
#define LIO_MAX_MTU_SIZE (OCTNET_MAX_FRM_SIZE - OCTNET_FRM_HEADER_SIZE)
|
#define LIO_MAX_MTU_SIZE (OCTNET_MAX_FRM_SIZE - OCTNET_FRM_HEADER_SIZE)
|
||||||
#define LIO_MIN_MTU_SIZE ETH_MIN_MTU
|
#define LIO_MIN_MTU_SIZE ETH_MIN_MTU
|
||||||
|
|
||||||
|
/* Bit mask values for lio->ifstate */
|
||||||
|
#define LIO_IFSTATE_DROQ_OPS 0x01
|
||||||
|
#define LIO_IFSTATE_REGISTERED 0x02
|
||||||
|
#define LIO_IFSTATE_RUNNING 0x04
|
||||||
|
#define LIO_IFSTATE_RX_TIMESTAMP_ENABLED 0x08
|
||||||
|
|
||||||
struct oct_nic_stats_resp {
|
struct oct_nic_stats_resp {
|
||||||
u64 rh;
|
u64 rh;
|
||||||
struct oct_link_stats stats;
|
struct oct_link_stats stats;
|
||||||
|
@ -438,4 +444,34 @@ static inline void octeon_fast_packet_next(struct octeon_droq *droq,
|
||||||
get_rbd(droq->recv_buf_list[idx].buffer), copy_len);
|
get_rbd(droq->recv_buf_list[idx].buffer), copy_len);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* \brief check interface state
|
||||||
|
* @param lio per-network private data
|
||||||
|
* @param state_flag flag state to check
|
||||||
|
*/
|
||||||
|
static inline int ifstate_check(struct lio *lio, int state_flag)
|
||||||
|
{
|
||||||
|
return atomic_read(&lio->ifstate) & state_flag;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* \brief set interface state
|
||||||
|
* @param lio per-network private data
|
||||||
|
* @param state_flag flag state to set
|
||||||
|
*/
|
||||||
|
static inline void ifstate_set(struct lio *lio, int state_flag)
|
||||||
|
{
|
||||||
|
atomic_set(&lio->ifstate, (atomic_read(&lio->ifstate) | state_flag));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* \brief clear interface state
|
||||||
|
* @param lio per-network private data
|
||||||
|
* @param state_flag flag state to clear
|
||||||
|
*/
|
||||||
|
static inline void ifstate_reset(struct lio *lio, int state_flag)
|
||||||
|
{
|
||||||
|
atomic_set(&lio->ifstate, (atomic_read(&lio->ifstate) & ~(state_flag)));
|
||||||
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in a new issue