net: use bitrev8
Use bitrev8 for bmac, mace, macmace, macsonic, and skfp drivers. [akpm@osdl.org: use the API, not the array] Cc: Jeff Garzik <jgarzik@pobox.com> Cc: Paul Mackerras <paulus@samba.org> Cc: Mirko Lindner <mlindner@syskonnect.de> Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de> Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
This commit is contained in:
committed by
Jeff Garzik
parent
079ca7da1e
commit
bc63eb9c7e
@ -22,6 +22,7 @@
|
||||
#include <linux/delay.h>
|
||||
#include <linux/string.h>
|
||||
#include <linux/crc32.h>
|
||||
#include <linux/bitrev.h>
|
||||
#include <asm/io.h>
|
||||
#include <asm/pgtable.h>
|
||||
#include <asm/irq.h>
|
||||
@ -81,19 +82,6 @@ static irqreturn_t mace_interrupt(int irq, void *dev_id);
|
||||
static irqreturn_t mace_dma_intr(int irq, void *dev_id);
|
||||
static void mace_tx_timeout(struct net_device *dev);
|
||||
|
||||
/* Bit-reverse one byte of an ethernet hardware address. */
|
||||
|
||||
static int bitrev(int b)
|
||||
{
|
||||
int d = 0, i;
|
||||
|
||||
for (i = 0; i < 8; ++i, b >>= 1) {
|
||||
d = (d << 1) | (b & 1);
|
||||
}
|
||||
|
||||
return d;
|
||||
}
|
||||
|
||||
/*
|
||||
* Load a receive DMA channel with a base address and ring length
|
||||
*/
|
||||
@ -219,12 +207,12 @@ struct net_device *mace_probe(int unit)
|
||||
addr = (void *)MACE_PROM;
|
||||
|
||||
for (j = 0; j < 6; ++j) {
|
||||
u8 v=bitrev(addr[j<<4]);
|
||||
u8 v = bitrev8(addr[j<<4]);
|
||||
checksum ^= v;
|
||||
dev->dev_addr[j] = v;
|
||||
}
|
||||
for (; j < 8; ++j) {
|
||||
checksum ^= bitrev(addr[j<<4]);
|
||||
checksum ^= bitrev8(addr[j<<4]);
|
||||
}
|
||||
|
||||
if (checksum != 0xFF) {
|
||||
|
Reference in New Issue
Block a user