Commit 97e72829 authored by David S. Miller's avatar David S. Miller

Merge branch 'be2net-next'

Sathya Perla says:

====================
be2net: patch set

This patch set contains the following modificatons:
* three patches (1/7 to 3/7) that fix indentation style issues
* convert the u8 vlan[] array to a bit-map to reduce memory usage
* use MCCQ instead of MBOX in be_cmd_rss_config() as the MCCQ is already
  created by that time
* include rx-comp-error counter in ethtool stats
* remove the unused promiscuous setting from be_cmd_vlan_config()

Pls apply to net-next tree. Thanks!
====================
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parents fe6f397c b51aa367
...@@ -455,7 +455,7 @@ struct be_adapter { ...@@ -455,7 +455,7 @@ struct be_adapter {
struct be_drv_stats drv_stats; struct be_drv_stats drv_stats;
struct be_aic_obj aic_obj[MAX_EVT_QS]; struct be_aic_obj aic_obj[MAX_EVT_QS];
u16 vlans_added; u16 vlans_added;
u8 vlan_tag[VLAN_N_VID]; unsigned long vids[BITS_TO_LONGS(VLAN_N_VID)];
u8 vlan_prio_bmap; /* Available Priority BitMap */ u8 vlan_prio_bmap; /* Available Priority BitMap */
u16 recommended_prio; /* Recommended Priority */ u16 recommended_prio; /* Recommended Priority */
struct be_dma_mem rx_filter; /* Cmd DMA mem for rx-filter */ struct be_dma_mem rx_filter; /* Cmd DMA mem for rx-filter */
......
This diff is collapsed.
...@@ -2060,7 +2060,7 @@ int be_cmd_get_fw_ver(struct be_adapter *adapter, char *fw_ver, ...@@ -2060,7 +2060,7 @@ int be_cmd_get_fw_ver(struct be_adapter *adapter, char *fw_ver,
char *fw_on_flash); char *fw_on_flash);
int be_cmd_modify_eqd(struct be_adapter *adapter, struct be_set_eqd *, int num); int be_cmd_modify_eqd(struct be_adapter *adapter, struct be_set_eqd *, int num);
int be_cmd_vlan_config(struct be_adapter *adapter, u32 if_id, u16 *vtag_array, int be_cmd_vlan_config(struct be_adapter *adapter, u32 if_id, u16 *vtag_array,
u32 num, bool promiscuous); u32 num);
int be_cmd_rx_filter(struct be_adapter *adapter, u32 flags, u32 status); int be_cmd_rx_filter(struct be_adapter *adapter, u32 flags, u32 status);
int be_cmd_set_flow_control(struct be_adapter *adapter, u32 tx_fc, u32 rx_fc); int be_cmd_set_flow_control(struct be_adapter *adapter, u32 tx_fc, u32 rx_fc);
int be_cmd_get_flow_control(struct be_adapter *adapter, u32 *tx_fc, u32 *rx_fc); int be_cmd_get_flow_control(struct be_adapter *adapter, u32 *tx_fc, u32 *rx_fc);
......
...@@ -132,6 +132,7 @@ static const struct be_ethtool_stat et_rx_stats[] = { ...@@ -132,6 +132,7 @@ static const struct be_ethtool_stat et_rx_stats[] = {
{DRVSTAT_RX_INFO(rx_bytes)},/* If moving this member see above note */ {DRVSTAT_RX_INFO(rx_bytes)},/* If moving this member see above note */
{DRVSTAT_RX_INFO(rx_pkts)}, /* If moving this member see above note */ {DRVSTAT_RX_INFO(rx_pkts)}, /* If moving this member see above note */
{DRVSTAT_RX_INFO(rx_compl)}, {DRVSTAT_RX_INFO(rx_compl)},
{DRVSTAT_RX_INFO(rx_compl_err)},
{DRVSTAT_RX_INFO(rx_mcast_pkts)}, {DRVSTAT_RX_INFO(rx_mcast_pkts)},
/* Number of page allocation failures while posting receive buffers /* Number of page allocation failures while posting receive buffers
* to HW. * to HW.
...@@ -201,8 +202,7 @@ static void be_get_drvinfo(struct net_device *netdev, ...@@ -201,8 +202,7 @@ static void be_get_drvinfo(struct net_device *netdev,
drvinfo->eedump_len = 0; drvinfo->eedump_len = 0;
} }
static u32 static u32 lancer_cmd_get_file_len(struct be_adapter *adapter, u8 *file_name)
lancer_cmd_get_file_len(struct be_adapter *adapter, u8 *file_name)
{ {
u32 data_read = 0, eof; u32 data_read = 0, eof;
u8 addn_status; u8 addn_status;
...@@ -212,13 +212,13 @@ lancer_cmd_get_file_len(struct be_adapter *adapter, u8 *file_name) ...@@ -212,13 +212,13 @@ lancer_cmd_get_file_len(struct be_adapter *adapter, u8 *file_name)
memset(&data_len_cmd, 0, sizeof(data_len_cmd)); memset(&data_len_cmd, 0, sizeof(data_len_cmd));
/* data_offset and data_size should be 0 to get reg len */ /* data_offset and data_size should be 0 to get reg len */
status = lancer_cmd_read_object(adapter, &data_len_cmd, 0, 0, status = lancer_cmd_read_object(adapter, &data_len_cmd, 0, 0,
file_name, &data_read, &eof, &addn_status); file_name, &data_read, &eof,
&addn_status);
return data_read; return data_read;
} }
static int static int lancer_cmd_read_file(struct be_adapter *adapter, u8 *file_name,
lancer_cmd_read_file(struct be_adapter *adapter, u8 *file_name,
u32 buf_len, void *buf) u32 buf_len, void *buf)
{ {
struct be_dma_mem read_cmd; struct be_dma_mem read_cmd;
...@@ -242,8 +242,8 @@ lancer_cmd_read_file(struct be_adapter *adapter, u8 *file_name, ...@@ -242,8 +242,8 @@ lancer_cmd_read_file(struct be_adapter *adapter, u8 *file_name,
LANCER_READ_FILE_CHUNK); LANCER_READ_FILE_CHUNK);
chunk_size = ALIGN(chunk_size, 4); chunk_size = ALIGN(chunk_size, 4);
status = lancer_cmd_read_object(adapter, &read_cmd, chunk_size, status = lancer_cmd_read_object(adapter, &read_cmd, chunk_size,
total_read_len, file_name, &read_len, total_read_len, file_name,
&eof, &addn_status); &read_len, &eof, &addn_status);
if (!status) { if (!status) {
memcpy(buf + total_read_len, read_cmd.va, read_len); memcpy(buf + total_read_len, read_cmd.va, read_len);
total_read_len += read_len; total_read_len += read_len;
...@@ -259,8 +259,7 @@ lancer_cmd_read_file(struct be_adapter *adapter, u8 *file_name, ...@@ -259,8 +259,7 @@ lancer_cmd_read_file(struct be_adapter *adapter, u8 *file_name,
return status; return status;
} }
static int static int be_get_reg_len(struct net_device *netdev)
be_get_reg_len(struct net_device *netdev)
{ {
struct be_adapter *adapter = netdev_priv(netdev); struct be_adapter *adapter = netdev_priv(netdev);
u32 log_size = 0; u32 log_size = 0;
...@@ -337,8 +336,7 @@ static int be_set_coalesce(struct net_device *netdev, ...@@ -337,8 +336,7 @@ static int be_set_coalesce(struct net_device *netdev,
return 0; return 0;
} }
static void static void be_get_ethtool_stats(struct net_device *netdev,
be_get_ethtool_stats(struct net_device *netdev,
struct ethtool_stats *stats, uint64_t *data) struct ethtool_stats *stats, uint64_t *data)
{ {
struct be_adapter *adapter = netdev_priv(netdev); struct be_adapter *adapter = netdev_priv(netdev);
...@@ -390,8 +388,7 @@ be_get_ethtool_stats(struct net_device *netdev, ...@@ -390,8 +388,7 @@ be_get_ethtool_stats(struct net_device *netdev,
} }
} }
static void static void be_get_stat_strings(struct net_device *netdev, uint32_t stringset,
be_get_stat_strings(struct net_device *netdev, uint32_t stringset,
uint8_t *data) uint8_t *data)
{ {
struct be_adapter *adapter = netdev_priv(netdev); struct be_adapter *adapter = netdev_priv(netdev);
...@@ -649,8 +646,7 @@ be_set_pauseparam(struct net_device *netdev, struct ethtool_pauseparam *ecmd) ...@@ -649,8 +646,7 @@ be_set_pauseparam(struct net_device *netdev, struct ethtool_pauseparam *ecmd)
return status; return status;
} }
static int static int be_set_phys_id(struct net_device *netdev,
be_set_phys_id(struct net_device *netdev,
enum ethtool_phys_id_state state) enum ethtool_phys_id_state state)
{ {
struct be_adapter *adapter = netdev_priv(netdev); struct be_adapter *adapter = netdev_priv(netdev);
...@@ -708,8 +704,7 @@ static int be_set_dump(struct net_device *netdev, struct ethtool_dump *dump) ...@@ -708,8 +704,7 @@ static int be_set_dump(struct net_device *netdev, struct ethtool_dump *dump)
return status; return status;
} }
static void static void be_get_wol(struct net_device *netdev, struct ethtool_wolinfo *wol)
be_get_wol(struct net_device *netdev, struct ethtool_wolinfo *wol)
{ {
struct be_adapter *adapter = netdev_priv(netdev); struct be_adapter *adapter = netdev_priv(netdev);
...@@ -723,8 +718,7 @@ be_get_wol(struct net_device *netdev, struct ethtool_wolinfo *wol) ...@@ -723,8 +718,7 @@ be_get_wol(struct net_device *netdev, struct ethtool_wolinfo *wol)
memset(&wol->sopass, 0, sizeof(wol->sopass)); memset(&wol->sopass, 0, sizeof(wol->sopass));
} }
static int static int be_set_wol(struct net_device *netdev, struct ethtool_wolinfo *wol)
be_set_wol(struct net_device *netdev, struct ethtool_wolinfo *wol)
{ {
struct be_adapter *adapter = netdev_priv(netdev); struct be_adapter *adapter = netdev_priv(netdev);
...@@ -744,8 +738,7 @@ be_set_wol(struct net_device *netdev, struct ethtool_wolinfo *wol) ...@@ -744,8 +738,7 @@ be_set_wol(struct net_device *netdev, struct ethtool_wolinfo *wol)
return 0; return 0;
} }
static int static int be_test_ddr_dma(struct be_adapter *adapter)
be_test_ddr_dma(struct be_adapter *adapter)
{ {
int ret, i; int ret, i;
struct be_dma_mem ddrdma_cmd; struct be_dma_mem ddrdma_cmd;
...@@ -775,18 +768,15 @@ be_test_ddr_dma(struct be_adapter *adapter) ...@@ -775,18 +768,15 @@ be_test_ddr_dma(struct be_adapter *adapter)
static u64 be_loopback_test(struct be_adapter *adapter, u8 loopback_type, static u64 be_loopback_test(struct be_adapter *adapter, u8 loopback_type,
u64 *status) u64 *status)
{ {
be_cmd_set_loopback(adapter, adapter->hba_port_num, be_cmd_set_loopback(adapter, adapter->hba_port_num, loopback_type, 1);
loopback_type, 1);
*status = be_cmd_loopback_test(adapter, adapter->hba_port_num, *status = be_cmd_loopback_test(adapter, adapter->hba_port_num,
loopback_type, 1500, loopback_type, 1500, 2, 0xabc);
2, 0xabc); be_cmd_set_loopback(adapter, adapter->hba_port_num, BE_NO_LOOPBACK, 1);
be_cmd_set_loopback(adapter, adapter->hba_port_num,
BE_NO_LOOPBACK, 1);
return *status; return *status;
} }
static void static void be_self_test(struct net_device *netdev, struct ethtool_test *test,
be_self_test(struct net_device *netdev, struct ethtool_test *test, u64 *data) u64 *data)
{ {
struct be_adapter *adapter = netdev_priv(netdev); struct be_adapter *adapter = netdev_priv(netdev);
int status; int status;
...@@ -801,12 +791,10 @@ be_self_test(struct net_device *netdev, struct ethtool_test *test, u64 *data) ...@@ -801,12 +791,10 @@ be_self_test(struct net_device *netdev, struct ethtool_test *test, u64 *data)
memset(data, 0, sizeof(u64) * ETHTOOL_TESTS_NUM); memset(data, 0, sizeof(u64) * ETHTOOL_TESTS_NUM);
if (test->flags & ETH_TEST_FL_OFFLINE) { if (test->flags & ETH_TEST_FL_OFFLINE) {
if (be_loopback_test(adapter, BE_MAC_LOOPBACK, if (be_loopback_test(adapter, BE_MAC_LOOPBACK, &data[0]) != 0)
&data[0]) != 0)
test->flags |= ETH_TEST_FL_FAILED; test->flags |= ETH_TEST_FL_FAILED;
if (be_loopback_test(adapter, BE_PHY_LOOPBACK, if (be_loopback_test(adapter, BE_PHY_LOOPBACK, &data[1]) != 0)
&data[1]) != 0)
test->flags |= ETH_TEST_FL_FAILED; test->flags |= ETH_TEST_FL_FAILED;
if (test->flags & ETH_TEST_FL_EXTERNAL_LB) { if (test->flags & ETH_TEST_FL_EXTERNAL_LB) {
...@@ -832,16 +820,14 @@ be_self_test(struct net_device *netdev, struct ethtool_test *test, u64 *data) ...@@ -832,16 +820,14 @@ be_self_test(struct net_device *netdev, struct ethtool_test *test, u64 *data)
} }
} }
static int static int be_do_flash(struct net_device *netdev, struct ethtool_flash *efl)
be_do_flash(struct net_device *netdev, struct ethtool_flash *efl)
{ {
struct be_adapter *adapter = netdev_priv(netdev); struct be_adapter *adapter = netdev_priv(netdev);
return be_load_fw(adapter, efl->data); return be_load_fw(adapter, efl->data);
} }
static int static int be_get_eeprom_len(struct net_device *netdev)
be_get_eeprom_len(struct net_device *netdev)
{ {
struct be_adapter *adapter = netdev_priv(netdev); struct be_adapter *adapter = netdev_priv(netdev);
...@@ -860,9 +846,8 @@ be_get_eeprom_len(struct net_device *netdev) ...@@ -860,9 +846,8 @@ be_get_eeprom_len(struct net_device *netdev)
} }
} }
static int static int be_read_eeprom(struct net_device *netdev,
be_read_eeprom(struct net_device *netdev, struct ethtool_eeprom *eeprom, struct ethtool_eeprom *eeprom, uint8_t *data)
uint8_t *data)
{ {
struct be_adapter *adapter = netdev_priv(netdev); struct be_adapter *adapter = netdev_priv(netdev);
struct be_dma_mem eeprom_cmd; struct be_dma_mem eeprom_cmd;
......
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment