|
@@ -1824,22 +1824,44 @@ struct qlcnic_hardware_ops {
|
|
|
u32 (*get_cap_size)(void *, int);
|
|
|
void (*set_sys_info)(void *, int, u32);
|
|
|
void (*store_cap_mask)(void *, u32);
|
|
|
+ bool (*encap_rx_offload) (struct qlcnic_adapter *adapter);
|
|
|
+ bool (*encap_tx_offload) (struct qlcnic_adapter *adapter);
|
|
|
};
|
|
|
|
|
|
extern struct qlcnic_nic_template qlcnic_vf_ops;
|
|
|
|
|
|
-static inline bool qlcnic_encap_tx_offload(struct qlcnic_adapter *adapter)
|
|
|
+static inline bool qlcnic_83xx_encap_tx_offload(struct qlcnic_adapter *adapter)
|
|
|
{
|
|
|
return adapter->ahw->extra_capability[0] &
|
|
|
QLCNIC_83XX_FW_CAPAB_ENCAP_TX_OFFLOAD;
|
|
|
}
|
|
|
|
|
|
-static inline bool qlcnic_encap_rx_offload(struct qlcnic_adapter *adapter)
|
|
|
+static inline bool qlcnic_83xx_encap_rx_offload(struct qlcnic_adapter *adapter)
|
|
|
{
|
|
|
return adapter->ahw->extra_capability[0] &
|
|
|
QLCNIC_83XX_FW_CAPAB_ENCAP_RX_OFFLOAD;
|
|
|
}
|
|
|
|
|
|
+static inline bool qlcnic_82xx_encap_tx_offload(struct qlcnic_adapter *adapter)
|
|
|
+{
|
|
|
+ return false;
|
|
|
+}
|
|
|
+
|
|
|
+static inline bool qlcnic_82xx_encap_rx_offload(struct qlcnic_adapter *adapter)
|
|
|
+{
|
|
|
+ return false;
|
|
|
+}
|
|
|
+
|
|
|
+static inline bool qlcnic_encap_rx_offload(struct qlcnic_adapter *adapter)
|
|
|
+{
|
|
|
+ return adapter->ahw->hw_ops->encap_rx_offload(adapter);
|
|
|
+}
|
|
|
+
|
|
|
+static inline bool qlcnic_encap_tx_offload(struct qlcnic_adapter *adapter)
|
|
|
+{
|
|
|
+ return adapter->ahw->hw_ops->encap_tx_offload(adapter);
|
|
|
+}
|
|
|
+
|
|
|
static inline int qlcnic_start_firmware(struct qlcnic_adapter *adapter)
|
|
|
{
|
|
|
return adapter->nic_ops->start_firmware(adapter);
|