]> git.baikalelectronics.ru Git - kernel.git/commit
enic: Update driver to use __dev_uc/mc_sync/unsync calls
authorAlexander Duyck <alexander.h.duyck@intel.com>
Thu, 29 May 2014 01:44:52 +0000 (18:44 -0700)
committerDavid S. Miller <davem@davemloft.net>
Mon, 2 Jun 2014 17:40:54 +0000 (10:40 -0700)
commit6e6e69951e2bd86ba7c23827fc8b70b9cf8bc2a3
tree4d2d007d8db76503f01665c2fe5ad5e9d3e6e492
parent54542e1610184556c8098782d4826bbdcadaf6e8
enic: Update driver to use __dev_uc/mc_sync/unsync calls

This change updates the enic driver to make use of __dev_uc_sync and
__dev_mc_sync calls.  Previously the driver was doing its own list
management by storing the mc_addr and uc_addr list in a 32 address array.
With this change the sync data is stored in the netdev_addr_list structures
and instead we just track how many addresses we have written to the device.
When we encounter 32 we stop and print a message as occurred previously with
the old approach.

Other than the core change the only other bit needed was to propagate the
constant attribute with the MAC address as there were several spots where
is twas only passed as a u8 * instead of a const u8 *.

This patch is meant to maintain the original functionality without the use
of the mc_addr and uc_addr arrays.

Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Acked-by: Govindarajulu Varadarajan <_govind@gmx.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/cisco/enic/enic.h
drivers/net/ethernet/cisco/enic/enic_dev.c
drivers/net/ethernet/cisco/enic/enic_dev.h
drivers/net/ethernet/cisco/enic/enic_main.c
drivers/net/ethernet/cisco/enic/vnic_dev.c
drivers/net/ethernet/cisco/enic/vnic_dev.h