drivers/net/ethernet/sfc: use standard __{clear,set}_bit_le() functions
There are now standard functions for dealing with little-endian bit arrays, so use them instead of our own implementations. Signed-off-by: Ben Hutchings <bhutchings@solarflare.com> Signed-off-by: Takuya Yoshikawa <yoshikawa.takuya@oss.ntt.co.jp> Cc: David Miller <davem@davemloft.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
52e842432f
commit
32766ec819
@ -2019,14 +2019,14 @@ static void efx_set_rx_mode(struct net_device *net_dev)
|
|||||||
netdev_for_each_mc_addr(ha, net_dev) {
|
netdev_for_each_mc_addr(ha, net_dev) {
|
||||||
crc = ether_crc_le(ETH_ALEN, ha->addr);
|
crc = ether_crc_le(ETH_ALEN, ha->addr);
|
||||||
bit = crc & (EFX_MCAST_HASH_ENTRIES - 1);
|
bit = crc & (EFX_MCAST_HASH_ENTRIES - 1);
|
||||||
set_bit_le(bit, mc_hash->byte);
|
__set_bit_le(bit, mc_hash);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Broadcast packets go through the multicast hash filter.
|
/* Broadcast packets go through the multicast hash filter.
|
||||||
* ether_crc_le() of the broadcast address is 0xbe2612ff
|
* ether_crc_le() of the broadcast address is 0xbe2612ff
|
||||||
* so we always add bit 0xff to the mask.
|
* so we always add bit 0xff to the mask.
|
||||||
*/
|
*/
|
||||||
set_bit_le(0xff, mc_hash->byte);
|
__set_bit_le(0xff, mc_hash);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (efx->port_enabled)
|
if (efx->port_enabled)
|
||||||
|
@ -1101,18 +1101,6 @@ static inline struct efx_rx_buffer *efx_rx_buffer(struct efx_rx_queue *rx_queue,
|
|||||||
return &rx_queue->buffer[index];
|
return &rx_queue->buffer[index];
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Set bit in a little-endian bitfield */
|
|
||||||
static inline void set_bit_le(unsigned nr, unsigned char *addr)
|
|
||||||
{
|
|
||||||
addr[nr / 8] |= (1 << (nr % 8));
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Clear bit in a little-endian bitfield */
|
|
||||||
static inline void clear_bit_le(unsigned nr, unsigned char *addr)
|
|
||||||
{
|
|
||||||
addr[nr / 8] &= ~(1 << (nr % 8));
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* EFX_MAX_FRAME_LEN - calculate maximum frame length
|
* EFX_MAX_FRAME_LEN - calculate maximum frame length
|
||||||
|
@ -472,9 +472,9 @@ void efx_nic_init_tx(struct efx_tx_queue *tx_queue)
|
|||||||
|
|
||||||
efx_reado(efx, ®, FR_AA_TX_CHKSM_CFG);
|
efx_reado(efx, ®, FR_AA_TX_CHKSM_CFG);
|
||||||
if (tx_queue->queue & EFX_TXQ_TYPE_OFFLOAD)
|
if (tx_queue->queue & EFX_TXQ_TYPE_OFFLOAD)
|
||||||
clear_bit_le(tx_queue->queue, (void *)®);
|
__clear_bit_le(tx_queue->queue, ®);
|
||||||
else
|
else
|
||||||
set_bit_le(tx_queue->queue, (void *)®);
|
__set_bit_le(tx_queue->queue, ®);
|
||||||
efx_writeo(efx, ®, FR_AA_TX_CHKSM_CFG);
|
efx_writeo(efx, ®, FR_AA_TX_CHKSM_CFG);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user