You've already forked linux-apfs
mirror of
https://github.com/linux-apfs/linux-apfs.git
synced 2026-05-01 15:00:59 -07:00
drivers/net: Trim trailing whitespace
Signed-off-by: Jeff Garzik <jeff@garzik.org>
This commit is contained in:
+29
-29
@@ -30,17 +30,17 @@
|
||||
with a TX-TX optimisation to see if we can touch 180-200K/second as seems
|
||||
theoretically maximum.
|
||||
19950402 Alan Cox <Alan.Cox@linux.org>
|
||||
|
||||
Cleaned up for 2.3.x because we broke SMP now.
|
||||
|
||||
Cleaned up for 2.3.x because we broke SMP now.
|
||||
20000208 Alan Cox <alan@redhat.com>
|
||||
|
||||
Check up pass for 2.5. Nothing significant changed
|
||||
20021009 Alan Cox <alan@redhat.com>
|
||||
|
||||
Fixed zero fill corner case
|
||||
Fixed zero fill corner case
|
||||
20030104 Alan Cox <alan@redhat.com>
|
||||
|
||||
|
||||
|
||||
|
||||
For the avoidance of doubt the "preferred form" of this code is one which
|
||||
is in an open non patent encumbered format. Where cryptographic key signing
|
||||
forms part of the process of creating an executable the information
|
||||
@@ -58,7 +58,7 @@
|
||||
* Some documentation is available from 3Com. Due to the boards age
|
||||
* standard responses when you ask for this will range from 'be serious'
|
||||
* to 'give it to a museum'. The documentation is incomplete and mostly
|
||||
* of historical interest anyway.
|
||||
* of historical interest anyway.
|
||||
*
|
||||
* The basic system is a single buffer which can be used to receive or
|
||||
* transmit a packet. A third command mode exists when you are setting
|
||||
@@ -80,7 +80,7 @@
|
||||
* out with those too).
|
||||
*
|
||||
* DOC: Problems
|
||||
*
|
||||
*
|
||||
* There are a wide variety of undocumented error returns from the card
|
||||
* and you basically have to kick the board and pray if they turn up. Most
|
||||
* only occur under extreme load or if you do something the board doesn't
|
||||
@@ -145,7 +145,7 @@ static int mem_start;
|
||||
|
||||
/**
|
||||
* el1_probe: - probe for a 3c501
|
||||
* @dev: The device structure passed in to probe.
|
||||
* @dev: The device structure passed in to probe.
|
||||
*
|
||||
* This can be called from two places. The network layer will probe using
|
||||
* a device structure passed in with the probe information completed. For a
|
||||
@@ -155,7 +155,7 @@ static int mem_start;
|
||||
* Returns 0 on success. ENXIO if asked not to probe and ENODEV if asked to
|
||||
* probe and failing to find anything.
|
||||
*/
|
||||
|
||||
|
||||
struct net_device * __init el1_probe(int unit)
|
||||
{
|
||||
struct net_device *dev = alloc_etherdev(sizeof(struct net_local));
|
||||
@@ -200,7 +200,7 @@ out:
|
||||
}
|
||||
|
||||
/**
|
||||
* el1_probe1:
|
||||
* el1_probe1:
|
||||
* @dev: The device structure to use
|
||||
* @ioaddr: An I/O address to probe at.
|
||||
*
|
||||
@@ -307,7 +307,7 @@ static int __init el1_probe1(struct net_device *dev, int ioaddr)
|
||||
memset(dev->priv, 0, sizeof(struct net_local));
|
||||
lp = netdev_priv(dev);
|
||||
spin_lock_init(&lp->lock);
|
||||
|
||||
|
||||
/*
|
||||
* The EL1-specific entries in the device structure.
|
||||
*/
|
||||
@@ -328,7 +328,7 @@ static int __init el1_probe1(struct net_device *dev, int ioaddr)
|
||||
* @dev: device that is being opened
|
||||
*
|
||||
* When an ifconfig is issued which changes the device flags to include
|
||||
* IFF_UP this function is called. It is only called when the change
|
||||
* IFF_UP this function is called. It is only called when the change
|
||||
* occurs, not when the interface remains up. #el1_close will be called
|
||||
* when it goes down.
|
||||
*
|
||||
@@ -367,12 +367,12 @@ static int el_open(struct net_device *dev)
|
||||
* violence and prayer
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
static void el_timeout(struct net_device *dev)
|
||||
{
|
||||
struct net_local *lp = netdev_priv(dev);
|
||||
int ioaddr = dev->base_addr;
|
||||
|
||||
|
||||
if (el_debug)
|
||||
printk (KERN_DEBUG "%s: transmit timed out, txsr %#2x axsr=%02x rxsr=%02x.\n",
|
||||
dev->name, inb(TX_STATUS), inb(AX_STATUS), inb(RX_STATUS));
|
||||
@@ -385,7 +385,7 @@ static void el_timeout(struct net_device *dev)
|
||||
netif_wake_queue(dev);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* el_start_xmit:
|
||||
* @skb: The packet that is queued to be sent
|
||||
@@ -421,7 +421,7 @@ static int el_start_xmit(struct sk_buff *skb, struct net_device *dev)
|
||||
*/
|
||||
|
||||
spin_lock_irqsave(&lp->lock, flags);
|
||||
|
||||
|
||||
/*
|
||||
* Avoid timer-based retransmission conflicts.
|
||||
*/
|
||||
@@ -434,10 +434,10 @@ static int el_start_xmit(struct sk_buff *skb, struct net_device *dev)
|
||||
int pad = 0;
|
||||
int gp_start;
|
||||
unsigned char *buf = skb->data;
|
||||
|
||||
|
||||
if (len < ETH_ZLEN)
|
||||
pad = ETH_ZLEN - len;
|
||||
|
||||
|
||||
gp_start = 0x800 - ( len + pad );
|
||||
|
||||
lp->tx_pkt_start = gp_start;
|
||||
@@ -463,7 +463,7 @@ static int el_start_xmit(struct sk_buff *skb, struct net_device *dev)
|
||||
*/
|
||||
|
||||
spin_unlock_irqrestore(&lp->lock, flags);
|
||||
|
||||
|
||||
outw(0x00, RX_BUF_CLR); /* Set rx packet area to 0. */
|
||||
outw(gp_start, GP_LOW); /* aim - packet will be loaded into buffer start */
|
||||
outsb(DATAPORT,buf,len); /* load buffer (usual thing each byte increments the pointer) */
|
||||
@@ -472,7 +472,7 @@ static int el_start_xmit(struct sk_buff *skb, struct net_device *dev)
|
||||
outb(0, DATAPORT);
|
||||
}
|
||||
outw(gp_start, GP_LOW); /* the board reuses the same register */
|
||||
|
||||
|
||||
if(lp->loading != 2)
|
||||
{
|
||||
outb(AX_XMIT, AX_CMD); /* fire ... Trigger xmit. */
|
||||
@@ -498,7 +498,7 @@ static int el_start_xmit(struct sk_buff *skb, struct net_device *dev)
|
||||
* @dev_id: The 3c501 that burped
|
||||
* @regs: Register data (surplus to our requirements)
|
||||
*
|
||||
* Handle the ether interface interrupts. The 3c501 needs a lot more
|
||||
* Handle the ether interface interrupts. The 3c501 needs a lot more
|
||||
* hand holding than most cards. In particular we get a transmit interrupt
|
||||
* with a collision error because the board firmware isnt capable of rewinding
|
||||
* its own transmit buffer pointers. It can however count to 16 for us.
|
||||
@@ -526,7 +526,7 @@ static irqreturn_t el_interrupt(int irq, void *dev_id, struct pt_regs *regs)
|
||||
lp = netdev_priv(dev);
|
||||
|
||||
spin_lock(&lp->lock);
|
||||
|
||||
|
||||
/*
|
||||
* What happened ?
|
||||
*/
|
||||
@@ -794,7 +794,7 @@ static void el_reset(struct net_device *dev)
|
||||
* of the rest will be cleaned up by #el1_open. Always returns 0 indicating
|
||||
* a success.
|
||||
*/
|
||||
|
||||
|
||||
static int el1_close(struct net_device *dev)
|
||||
{
|
||||
int ioaddr = dev->base_addr;
|
||||
@@ -803,7 +803,7 @@ static int el1_close(struct net_device *dev)
|
||||
printk(KERN_INFO "%s: Shutting down Ethernet card at %#x.\n", dev->name, ioaddr);
|
||||
|
||||
netif_stop_queue(dev);
|
||||
|
||||
|
||||
/*
|
||||
* Free and disable the IRQ.
|
||||
*/
|
||||
@@ -824,7 +824,7 @@ static int el1_close(struct net_device *dev)
|
||||
*
|
||||
* Returns the statistics for the card from the card private data
|
||||
*/
|
||||
|
||||
|
||||
static struct net_device_stats *el1_get_stats(struct net_device *dev)
|
||||
{
|
||||
struct net_local *lp = netdev_priv(dev);
|
||||
@@ -835,7 +835,7 @@ static struct net_device_stats *el1_get_stats(struct net_device *dev)
|
||||
* set_multicast_list:
|
||||
* @dev: The device to adjust
|
||||
*
|
||||
* Set or clear the multicast filter for this adaptor to use the best-effort
|
||||
* Set or clear the multicast filter for this adaptor to use the best-effort
|
||||
* filtering supported. The 3c501 supports only three modes of filtering.
|
||||
* It always receives broadcasts and packets for itself. You can choose to
|
||||
* optionally receive all packets, or all multicast packets on top of this.
|
||||
@@ -907,7 +907,7 @@ MODULE_PARM_DESC(irq, "EtherLink IRQ number");
|
||||
* Returns 0 for success or -EIO if a card is not found. Returning an error
|
||||
* here also causes the module to be unloaded
|
||||
*/
|
||||
|
||||
|
||||
int __init init_module(void)
|
||||
{
|
||||
dev_3c501 = el1_probe(-1);
|
||||
@@ -918,11 +918,11 @@ int __init init_module(void)
|
||||
|
||||
/**
|
||||
* cleanup_module:
|
||||
*
|
||||
*
|
||||
* The module is being unloaded. We unhook our network device from the system
|
||||
* and then free up the resources we took when the card was found.
|
||||
*/
|
||||
|
||||
|
||||
void cleanup_module(void)
|
||||
{
|
||||
struct net_device *dev = dev_3c501;
|
||||
|
||||
+1
-1
@@ -37,7 +37,7 @@ struct net_local
|
||||
spinlock_t lock; /* Serializing lock */
|
||||
};
|
||||
|
||||
|
||||
|
||||
#define RX_STATUS (ioaddr + 0x06)
|
||||
#define RX_CMD RX_STATUS
|
||||
#define TX_STATUS (ioaddr + 0x07)
|
||||
|
||||
+6
-6
@@ -81,7 +81,7 @@ static void el2_get_8390_hdr(struct net_device *dev, struct e8390_pkt_hdr *hdr,
|
||||
int ring_page);
|
||||
static struct ethtool_ops netdev_ethtool_ops;
|
||||
|
||||
|
||||
|
||||
/* This routine probes for a memory-mapped 3c503 board by looking for
|
||||
the "location register" at the end of the jumpered boot PROM space.
|
||||
This works even if a PROM isn't there.
|
||||
@@ -96,7 +96,7 @@ static int __init do_el2_probe(struct net_device *dev)
|
||||
int irq = dev->irq;
|
||||
|
||||
SET_MODULE_OWNER(dev);
|
||||
|
||||
|
||||
if (base_addr > 0x1ff) /* Check a single specified location. */
|
||||
return el2_probe1(dev, base_addr);
|
||||
else if (base_addr != 0) /* Don't probe at all. */
|
||||
@@ -127,7 +127,7 @@ static int __init do_el2_probe(struct net_device *dev)
|
||||
|
||||
/* Try all of the locations that aren't obviously empty. This touches
|
||||
a lot of locations, and is much riskier than the code above. */
|
||||
static int __init
|
||||
static int __init
|
||||
el2_pio_probe(struct net_device *dev)
|
||||
{
|
||||
int i;
|
||||
@@ -173,7 +173,7 @@ out:
|
||||
/* Probe for the Etherlink II card at I/O port base IOADDR,
|
||||
returning non-zero on success. If found, set the station
|
||||
address and memory parameters in DEVICE. */
|
||||
static int __init
|
||||
static int __init
|
||||
el2_probe1(struct net_device *dev, int ioaddr)
|
||||
{
|
||||
int i, iobase_reg, membase_reg, saved_406, wordlength, retval;
|
||||
@@ -367,7 +367,7 @@ out:
|
||||
release_region(ioaddr, EL2_IO_EXTENT);
|
||||
return retval;
|
||||
}
|
||||
|
||||
|
||||
static int
|
||||
el2_open(struct net_device *dev)
|
||||
{
|
||||
@@ -385,7 +385,7 @@ el2_open(struct net_device *dev)
|
||||
outb_p(0x04 << ((*irqp == 9) ? 2 : *irqp), E33G_IDCFR);
|
||||
outb_p(0x00, E33G_IDCFR);
|
||||
if (*irqp == probe_irq_off(cookie) /* It's a good IRQ line! */
|
||||
&& ((retval = request_irq(dev->irq = *irqp,
|
||||
&& ((retval = request_irq(dev->irq = *irqp,
|
||||
ei_interrupt, 0, dev->name, dev)) == 0))
|
||||
break;
|
||||
}
|
||||
|
||||
+2
-2
@@ -14,7 +14,7 @@
|
||||
|
||||
/* Shared memory management parameters. NB: The 8 bit cards have only
|
||||
one bank (MB1) which serves both Tx and Rx packet space. The 16bit
|
||||
cards have 2 banks, MB0 for Tx packets, and MB1 for Rx packets.
|
||||
cards have 2 banks, MB0 for Tx packets, and MB1 for Rx packets.
|
||||
You choose which bank appears in the sh. mem window with EGACFR_MBSn */
|
||||
|
||||
#define EL2_MB0_START_PG (0x00) /* EL2/16 Tx packets go in bank 0 */
|
||||
@@ -82,7 +82,7 @@
|
||||
0 1 0 0x4000 -- bank 2, not used
|
||||
0 1 1 0x6000 -- bank 3, not used
|
||||
|
||||
There was going to be a 32k card that used bank 2 and 3, but it
|
||||
There was going to be a 32k card that used bank 2 and 3, but it
|
||||
never got produced.
|
||||
|
||||
*/
|
||||
|
||||
+11
-11
@@ -315,11 +315,11 @@ static inline void check_3c505_dma(struct net_device *dev)
|
||||
spin_lock_irqsave(&adapter->lock, flags);
|
||||
adapter->dmaing = 0;
|
||||
adapter->busy = 0;
|
||||
|
||||
|
||||
f=claim_dma_lock();
|
||||
disable_dma(dev->dma);
|
||||
release_dma_lock(f);
|
||||
|
||||
|
||||
if (adapter->rx_active)
|
||||
adapter->rx_active--;
|
||||
outb_control(adapter->hcr_val & ~(DMAE | TCEN | DIR), dev);
|
||||
@@ -660,7 +660,7 @@ static irqreturn_t elp_interrupt(int irq, void *dev_id, struct pt_regs *reg_ptr)
|
||||
|
||||
dev = dev_id;
|
||||
adapter = (elp_device *) dev->priv;
|
||||
|
||||
|
||||
spin_lock(&adapter->lock);
|
||||
|
||||
do {
|
||||
@@ -712,7 +712,7 @@ static irqreturn_t elp_interrupt(int irq, void *dev_id, struct pt_regs *reg_ptr)
|
||||
timeout = jiffies + 3*HZ/100;
|
||||
while ((inb_status(dev->base_addr) & ACRF) != 0 && time_before(jiffies, timeout)) {
|
||||
if (receive_pcb(dev, &adapter->irx_pcb)) {
|
||||
switch (adapter->irx_pcb.command)
|
||||
switch (adapter->irx_pcb.command)
|
||||
{
|
||||
case 0:
|
||||
break;
|
||||
@@ -889,7 +889,7 @@ static int elp_open(struct net_device *dev)
|
||||
adapter->send_pcb_semaphore = 0;
|
||||
adapter->rx_backlog.in = 0;
|
||||
adapter->rx_backlog.out = 0;
|
||||
|
||||
|
||||
spin_lock_init(&adapter->lock);
|
||||
|
||||
/*
|
||||
@@ -1003,7 +1003,7 @@ static int send_packet(struct net_device *dev, struct sk_buff *skb)
|
||||
}
|
||||
|
||||
adapter->stats.tx_bytes += nlen;
|
||||
|
||||
|
||||
/*
|
||||
* send the adapter a transmit packet command. Ignore segment and offset
|
||||
* and make sure the length is even
|
||||
@@ -1044,7 +1044,7 @@ static int send_packet(struct net_device *dev, struct sk_buff *skb)
|
||||
outb_control(adapter->hcr_val | DMAE | TCEN, dev);
|
||||
enable_dma(dev->dma);
|
||||
release_dma_lock(flags);
|
||||
|
||||
|
||||
if (elp_debug >= 3)
|
||||
printk(KERN_DEBUG "%s: DMA transfer started\n", dev->name);
|
||||
|
||||
@@ -1054,7 +1054,7 @@ static int send_packet(struct net_device *dev, struct sk_buff *skb)
|
||||
/*
|
||||
* The upper layer thinks we timed out
|
||||
*/
|
||||
|
||||
|
||||
static void elp_timeout(struct net_device *dev)
|
||||
{
|
||||
elp_device *adapter = dev->priv;
|
||||
@@ -1080,7 +1080,7 @@ static int elp_start_xmit(struct sk_buff *skb, struct net_device *dev)
|
||||
{
|
||||
unsigned long flags;
|
||||
elp_device *adapter = dev->priv;
|
||||
|
||||
|
||||
spin_lock_irqsave(&adapter->lock, flags);
|
||||
check_3c505_dma(dev);
|
||||
|
||||
@@ -1088,7 +1088,7 @@ static int elp_start_xmit(struct sk_buff *skb, struct net_device *dev)
|
||||
printk(KERN_DEBUG "%s: request to send packet of length %d\n", dev->name, (int) skb->len);
|
||||
|
||||
netif_stop_queue(dev);
|
||||
|
||||
|
||||
/*
|
||||
* send the packet at skb->data for skb->len
|
||||
*/
|
||||
@@ -1235,7 +1235,7 @@ static void elp_set_mc_list(struct net_device *dev)
|
||||
printk(KERN_DEBUG "%s: request to set multicast list\n", dev->name);
|
||||
|
||||
spin_lock_irqsave(&adapter->lock, flags);
|
||||
|
||||
|
||||
if (!(dev->flags & (IFF_PROMISC | IFF_ALLMULTI))) {
|
||||
/* send a "load multicast list" command to the board, max 10 addrs/cmd */
|
||||
/* if num_addrs==0 the list will be cleared */
|
||||
|
||||
+1
-1
@@ -72,7 +72,7 @@
|
||||
/*****************************************************************
|
||||
*
|
||||
* timeout value
|
||||
* this is a rough value used for loops to stop them from
|
||||
* this is a rough value used for loops to stop them from
|
||||
* locking up the whole machine in the case of failure or
|
||||
* error conditions
|
||||
*
|
||||
|
||||
+5
-5
@@ -301,7 +301,7 @@ static int io = 0x300;
|
||||
static int irq;
|
||||
static int mem_start;
|
||||
|
||||
|
||||
|
||||
/* Check for a network adaptor of this type, and return '0' iff one exists.
|
||||
If dev->base_addr == 0, probe all likely locations.
|
||||
If dev->base_addr == 1, always return failure.
|
||||
@@ -379,7 +379,7 @@ static int __init el16_probe1(struct net_device *dev, int ioaddr)
|
||||
if (!request_region(ioaddr, EL16_IO_EXTENT, DRV_NAME))
|
||||
return -ENODEV;
|
||||
|
||||
if ((inb(ioaddr) != '*') || (inb(ioaddr + 1) != '3') ||
|
||||
if ((inb(ioaddr) != '*') || (inb(ioaddr + 1) != '3') ||
|
||||
(inb(ioaddr + 2) != 'C') || (inb(ioaddr + 3) != 'O')) {
|
||||
retval = -ENODEV;
|
||||
goto out;
|
||||
@@ -575,7 +575,7 @@ static irqreturn_t el16_interrupt(int irq, void *dev_id, struct pt_regs *regs)
|
||||
while (lp->tx_pkts_in_ring) {
|
||||
unsigned short tx_status = readw(shmem+lp->tx_reap);
|
||||
if (!(tx_status & 0x8000)) {
|
||||
if (net_debug > 5)
|
||||
if (net_debug > 5)
|
||||
printk("Tx command incomplete (%#x).\n", lp->tx_reap);
|
||||
break;
|
||||
}
|
||||
@@ -825,7 +825,7 @@ static void hardware_send_packet(struct net_device *dev, void *buf, short length
|
||||
}
|
||||
|
||||
/* Grimly block further packets if there has been insufficient reaping. */
|
||||
if (++lp->tx_pkts_in_ring < NUM_TX_BUFS)
|
||||
if (++lp->tx_pkts_in_ring < NUM_TX_BUFS)
|
||||
netif_wake_queue(dev);
|
||||
}
|
||||
|
||||
@@ -953,7 +953,7 @@ cleanup_module(void)
|
||||
#endif /* MODULE */
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* Local variables:
|
||||
* compile-command: "gcc -D__KERNEL__ -I/usr/src/linux/net/inet -I/usr/src/linux/drivers/net -Wall -Wstrict-prototypes -O6 -m486 -c 3c507.c"
|
||||
|
||||
+20
-20
@@ -28,7 +28,7 @@
|
||||
FIXES:
|
||||
Alan Cox: Removed the 'Unexpected interrupt' bug.
|
||||
Michael Meskes: Upgraded to Donald Becker's version 1.07.
|
||||
Alan Cox: Increased the eeprom delay. Regardless of
|
||||
Alan Cox: Increased the eeprom delay. Regardless of
|
||||
what the docs say some people definitely
|
||||
get problems with lower (but in card spec)
|
||||
delays
|
||||
@@ -162,7 +162,7 @@ enum RxFilter {
|
||||
#define WN4_MEDIA 0x0A /* Window 4: Various transcvr/media bits. */
|
||||
#define MEDIA_TP 0x00C0 /* Enable link beat and jabber for 10baseT. */
|
||||
#define WN4_NETDIAG 0x06 /* Window 4: Net diagnostic */
|
||||
#define FD_ENABLE 0x8000 /* Enable full-duplex ("external loopback") */
|
||||
#define FD_ENABLE 0x8000 /* Enable full-duplex ("external loopback") */
|
||||
|
||||
/*
|
||||
* Must be a power of two (we use a binary and in the
|
||||
@@ -350,7 +350,7 @@ static int __init el3_common_init(struct net_device *dev)
|
||||
{
|
||||
const char *if_names[] = {"10baseT", "AUI", "undefined", "BNC"};
|
||||
printk("%s: 3c5x9 found at %#3.3lx, %s port, address ",
|
||||
dev->name, dev->base_addr,
|
||||
dev->name, dev->base_addr,
|
||||
if_names[(dev->if_port & 0x03)]);
|
||||
}
|
||||
|
||||
@@ -528,7 +528,7 @@ no_pnp:
|
||||
SET_MODULE_OWNER(dev);
|
||||
|
||||
netdev_boot_setup_check(dev);
|
||||
|
||||
|
||||
/* Set passed-in IRQ or I/O Addr. */
|
||||
if (dev->irq > 1 && dev->irq < 16)
|
||||
irq = dev->irq;
|
||||
@@ -630,7 +630,7 @@ static int __init el3_mca_probe(struct device *device)
|
||||
if_port = pos4 & 0x03;
|
||||
|
||||
irq = mca_device_transform_irq(mdev, irq);
|
||||
ioaddr = mca_device_transform_ioport(mdev, ioaddr);
|
||||
ioaddr = mca_device_transform_ioport(mdev, ioaddr);
|
||||
if (el3_debug > 2) {
|
||||
printk("3c529: irq %d ioaddr 0x%x ifport %d\n", irq, ioaddr, if_port);
|
||||
}
|
||||
@@ -667,7 +667,7 @@ static int __init el3_mca_probe(struct device *device)
|
||||
el3_cards++;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
#endif /* CONFIG_MCA */
|
||||
|
||||
#ifdef CONFIG_EISA
|
||||
@@ -684,7 +684,7 @@ static int __init el3_eisa_probe (struct device *device)
|
||||
/* Yeepee, The driver framework is calling us ! */
|
||||
edev = to_eisa_device (device);
|
||||
ioaddr = edev->base_addr;
|
||||
|
||||
|
||||
if (!request_region(ioaddr, EL3_IO_EXTENT, "3c509"))
|
||||
return -EBUSY;
|
||||
|
||||
@@ -751,7 +751,7 @@ static int __devexit el3_device_remove (struct device *device)
|
||||
static ushort read_eeprom(int ioaddr, int index)
|
||||
{
|
||||
outw(EEPROM_READ + index, ioaddr + 10);
|
||||
/* Pause for at least 162 us. for the read to take place.
|
||||
/* Pause for at least 162 us. for the read to take place.
|
||||
Some chips seem to require much longer */
|
||||
mdelay(2);
|
||||
return inw(ioaddr + 12);
|
||||
@@ -769,7 +769,7 @@ static ushort __init id_read_eeprom(int index)
|
||||
/* Pause for at least 162 us. for the read to take place. */
|
||||
/* Some chips seem to require much longer */
|
||||
mdelay(4);
|
||||
|
||||
|
||||
for (bit = 15; bit >= 0; bit--)
|
||||
word = (word << 1) + (inb(id_port) & 0x01);
|
||||
|
||||
@@ -838,7 +838,7 @@ el3_start_xmit(struct sk_buff *skb, struct net_device *dev)
|
||||
netif_stop_queue (dev);
|
||||
|
||||
lp->stats.tx_bytes += skb->len;
|
||||
|
||||
|
||||
if (el3_debug > 4) {
|
||||
printk("%s: el3_start_xmit(length = %u) called, status %4.4x.\n",
|
||||
dev->name, skb->len, inw(ioaddr + EL3_STATUS));
|
||||
@@ -1024,7 +1024,7 @@ el3_get_stats(struct net_device *dev)
|
||||
* This is fast enough not to bother with disable IRQ
|
||||
* stuff.
|
||||
*/
|
||||
|
||||
|
||||
spin_lock_irqsave(&lp->lock, flags);
|
||||
update_stats(dev);
|
||||
spin_unlock_irqrestore(&lp->lock, flags);
|
||||
@@ -1168,7 +1168,7 @@ el3_close(struct net_device *dev)
|
||||
{
|
||||
int ioaddr = dev->base_addr;
|
||||
struct el3_private *lp = netdev_priv(dev);
|
||||
|
||||
|
||||
if (el3_debug > 2)
|
||||
printk("%s: Shutting down ethercard.\n", dev->name);
|
||||
|
||||
@@ -1187,7 +1187,7 @@ el3_close(struct net_device *dev)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int
|
||||
static int
|
||||
el3_link_ok(struct net_device *dev)
|
||||
{
|
||||
int ioaddr = dev->base_addr;
|
||||
@@ -1204,9 +1204,9 @@ el3_netdev_get_ecmd(struct net_device *dev, struct ethtool_cmd *ecmd)
|
||||
{
|
||||
u16 tmp;
|
||||
int ioaddr = dev->base_addr;
|
||||
|
||||
|
||||
EL3WINDOW(0);
|
||||
/* obtain current transceiver via WN4_MEDIA? */
|
||||
/* obtain current transceiver via WN4_MEDIA? */
|
||||
tmp = inw(ioaddr + WN0_ADDR_CONF);
|
||||
ecmd->transceiver = XCVR_INTERNAL;
|
||||
switch (tmp >> 14) {
|
||||
@@ -1391,7 +1391,7 @@ el3_up(struct net_device *dev)
|
||||
{
|
||||
int i, sw_info, net_diag;
|
||||
int ioaddr = dev->base_addr;
|
||||
|
||||
|
||||
/* Activating the board required and does no harm otherwise */
|
||||
outw(0x0001, ioaddr + 4);
|
||||
|
||||
@@ -1411,7 +1411,7 @@ el3_up(struct net_device *dev)
|
||||
/* Combine secondary sw_info word (the adapter level) and primary
|
||||
sw_info word (duplex setting plus other useless bits) */
|
||||
EL3WINDOW(0);
|
||||
sw_info = (read_eeprom(ioaddr, 0x14) & 0x400f) |
|
||||
sw_info = (read_eeprom(ioaddr, 0x14) & 0x400f) |
|
||||
(read_eeprom(ioaddr, 0x0d) & 0xBff0);
|
||||
|
||||
EL3WINDOW(4);
|
||||
@@ -1483,7 +1483,7 @@ el3_suspend(struct device *pdev, pm_message_t state)
|
||||
struct net_device *dev;
|
||||
struct el3_private *lp;
|
||||
int ioaddr;
|
||||
|
||||
|
||||
dev = pdev->driver_data;
|
||||
lp = netdev_priv(dev);
|
||||
ioaddr = dev->base_addr;
|
||||
@@ -1507,7 +1507,7 @@ el3_resume(struct device *pdev)
|
||||
struct net_device *dev;
|
||||
struct el3_private *lp;
|
||||
int ioaddr;
|
||||
|
||||
|
||||
dev = pdev->driver_data;
|
||||
lp = netdev_priv(dev);
|
||||
ioaddr = dev->base_addr;
|
||||
@@ -1519,7 +1519,7 @@ el3_resume(struct device *pdev)
|
||||
|
||||
if (netif_running(dev))
|
||||
netif_device_attach(dev);
|
||||
|
||||
|
||||
spin_unlock_irqrestore(&lp->lock, flags);
|
||||
return 0;
|
||||
}
|
||||
|
||||
+30
-30
@@ -12,12 +12,12 @@
|
||||
Annapolis MD 21403
|
||||
|
||||
|
||||
2000/2/2- Added support for kernel-level ISAPnP
|
||||
2000/2/2- Added support for kernel-level ISAPnP
|
||||
by Stephen Frost <sfrost@snowman.net> and Alessandro Zummo
|
||||
Cleaned up for 2.3.x/softnet by Jeff Garzik and Alan Cox.
|
||||
|
||||
|
||||
2001/11/17 - Added ethtool support (jgarzik)
|
||||
|
||||
|
||||
2002/10/28 - Locking updates for 2.5 (alan@redhat.com)
|
||||
|
||||
*/
|
||||
@@ -187,9 +187,9 @@ enum corkscrew_cmd {
|
||||
TotalReset = 0 << 11, SelectWindow = 1 << 11, StartCoax = 2 << 11,
|
||||
RxDisable = 3 << 11, RxEnable = 4 << 11, RxReset = 5 << 11,
|
||||
UpStall = 6 << 11, UpUnstall = (6 << 11) + 1, DownStall = (6 << 11) + 2,
|
||||
DownUnstall = (6 << 11) + 3, RxDiscard = 8 << 11, TxEnable = 9 << 11,
|
||||
TxDisable = 10 << 11, TxReset = 11 << 11, FakeIntr = 12 << 11,
|
||||
AckIntr = 13 << 11, SetIntrEnb = 14 << 11, SetStatusEnb = 15 << 11,
|
||||
DownUnstall = (6 << 11) + 3, RxDiscard = 8 << 11, TxEnable = 9 << 11,
|
||||
TxDisable = 10 << 11, TxReset = 11 << 11, FakeIntr = 12 << 11,
|
||||
AckIntr = 13 << 11, SetIntrEnb = 14 << 11, SetStatusEnb = 15 << 11,
|
||||
SetRxFilter = 16 << 11, SetRxThreshold = 17 << 11,
|
||||
SetTxThreshold = 18 << 11, SetTxStart = 19 << 11, StartDMAUp = 20 << 11,
|
||||
StartDMADown = (20 << 11) + 1, StatsEnable = 21 << 11,
|
||||
@@ -338,15 +338,15 @@ static struct media_table {
|
||||
mask:8, /* The transceiver-present bit in Wn3_Config. */
|
||||
next:8; /* The media type to try next. */
|
||||
short wait; /* Time before we check media status. */
|
||||
} media_tbl[] = {
|
||||
{ "10baseT", Media_10TP, 0x08, XCVR_10base2, (14 * HZ) / 10 },
|
||||
{ "10Mbs AUI", Media_SQE, 0x20, XCVR_Default, (1 * HZ) / 10},
|
||||
{ "undefined", 0, 0x80, XCVR_10baseT, 10000},
|
||||
{ "10base2", 0, 0x10, XCVR_AUI, (1 * HZ) / 10},
|
||||
{ "100baseTX", Media_Lnk, 0x02, XCVR_100baseFx, (14 * HZ) / 10},
|
||||
{ "100baseFX", Media_Lnk, 0x04, XCVR_MII, (14 * HZ) / 10},
|
||||
{ "MII", 0, 0x40, XCVR_10baseT, 3 * HZ},
|
||||
{ "undefined", 0, 0x01, XCVR_10baseT, 10000},
|
||||
} media_tbl[] = {
|
||||
{ "10baseT", Media_10TP, 0x08, XCVR_10base2, (14 * HZ) / 10 },
|
||||
{ "10Mbs AUI", Media_SQE, 0x20, XCVR_Default, (1 * HZ) / 10},
|
||||
{ "undefined", 0, 0x80, XCVR_10baseT, 10000},
|
||||
{ "10base2", 0, 0x10, XCVR_AUI, (1 * HZ) / 10},
|
||||
{ "100baseTX", Media_Lnk, 0x02, XCVR_100baseFx, (14 * HZ) / 10},
|
||||
{ "100baseFX", Media_Lnk, 0x04, XCVR_MII, (14 * HZ) / 10},
|
||||
{ "MII", 0, 0x40, XCVR_10baseT, 3 * HZ},
|
||||
{ "undefined", 0, 0x01, XCVR_10baseT, 10000},
|
||||
{ "Default", 0, 0xFF, XCVR_10baseT, 10000},
|
||||
};
|
||||
|
||||
@@ -380,9 +380,9 @@ static void update_stats(int addr, struct net_device *dev);
|
||||
static struct net_device_stats *corkscrew_get_stats(struct net_device *dev);
|
||||
static void set_rx_mode(struct net_device *dev);
|
||||
static struct ethtool_ops netdev_ethtool_ops;
|
||||
|
||||
|
||||
/*
|
||||
|
||||
/*
|
||||
Unfortunately maximizing the shared code between the integrated and
|
||||
module version of the driver results in a complicated set of initialization
|
||||
procedures.
|
||||
@@ -612,7 +612,7 @@ static int corkscrew_setup(struct net_device *dev, int ioaddr,
|
||||
printk(KERN_INFO "%s: 3Com %s at %#3x,", dev->name, vp->product_name, ioaddr);
|
||||
|
||||
spin_lock_init(&vp->lock);
|
||||
|
||||
|
||||
/* Read the station address from the EEPROM. */
|
||||
EL3WINDOW(0);
|
||||
for (i = 0; i < 0x18; i++) {
|
||||
@@ -691,7 +691,7 @@ static int corkscrew_setup(struct net_device *dev, int ioaddr,
|
||||
|
||||
return register_netdev(dev);
|
||||
}
|
||||
|
||||
|
||||
|
||||
static int corkscrew_open(struct net_device *dev)
|
||||
{
|
||||
@@ -715,7 +715,7 @@ static int corkscrew_open(struct net_device *dev)
|
||||
} else if (vp->autoselect) {
|
||||
/* Find first available media type, starting with 100baseTx. */
|
||||
dev->if_port = 4;
|
||||
while (!(vp->available_media & media_tbl[dev->if_port].mask))
|
||||
while (!(vp->available_media & media_tbl[dev->if_port].mask))
|
||||
dev->if_port = media_tbl[dev->if_port].next;
|
||||
|
||||
if (corkscrew_debug > 1)
|
||||
@@ -871,7 +871,7 @@ static void corkscrew_timer(unsigned long data)
|
||||
dev->name, media_tbl[dev->if_port].name);
|
||||
|
||||
spin_lock_irqsave(&vp->lock, flags);
|
||||
|
||||
|
||||
{
|
||||
int old_window = inw(ioaddr + EL3_CMD) >> 13;
|
||||
int media_status;
|
||||
@@ -911,7 +911,7 @@ static void corkscrew_timer(unsigned long data)
|
||||
media_tbl[dev->if_port].next;
|
||||
}
|
||||
while (!(vp->available_media & media_tbl[dev->if_port].mask));
|
||||
|
||||
|
||||
if (dev->if_port == 8) { /* Go back to default. */
|
||||
dev->if_port = vp->default_media;
|
||||
if (corkscrew_debug > 1)
|
||||
@@ -940,7 +940,7 @@ static void corkscrew_timer(unsigned long data)
|
||||
}
|
||||
EL3WINDOW(old_window);
|
||||
}
|
||||
|
||||
|
||||
spin_unlock_irqrestore(&vp->lock, flags);
|
||||
if (corkscrew_debug > 1)
|
||||
printk("%s: Media selection timer finished, %s.\n",
|
||||
@@ -1026,7 +1026,7 @@ static int corkscrew_start_xmit(struct sk_buff *skb,
|
||||
outw(DownStall, ioaddr + EL3_CMD);
|
||||
/* Wait for the stall to complete. */
|
||||
for (i = 20; i >= 0; i--)
|
||||
if ((inw(ioaddr + EL3_STATUS) & CmdInProgress) == 0)
|
||||
if ((inw(ioaddr + EL3_STATUS) & CmdInProgress) == 0)
|
||||
break;
|
||||
if (prev_entry)
|
||||
prev_entry->next = isa_virt_to_bus(&vp->tx_ring[entry]);
|
||||
@@ -1102,7 +1102,7 @@ static int corkscrew_start_xmit(struct sk_buff *skb,
|
||||
int j;
|
||||
outw(TxReset, ioaddr + EL3_CMD);
|
||||
for (j = 20; j >= 0; j--)
|
||||
if (!(inw(ioaddr + EL3_STATUS) & CmdInProgress))
|
||||
if (!(inw(ioaddr + EL3_STATUS) & CmdInProgress))
|
||||
break;
|
||||
}
|
||||
outw(TxEnable, ioaddr + EL3_CMD);
|
||||
@@ -1130,7 +1130,7 @@ static irqreturn_t corkscrew_interrupt(int irq, void *dev_id,
|
||||
latency = inb(ioaddr + Timer);
|
||||
|
||||
spin_lock(&lp->lock);
|
||||
|
||||
|
||||
status = inw(ioaddr + EL3_STATUS);
|
||||
|
||||
if (corkscrew_debug > 4)
|
||||
@@ -1249,7 +1249,7 @@ static irqreturn_t corkscrew_interrupt(int irq, void *dev_id,
|
||||
outw(AckIntr | IntReq | IntLatch, ioaddr + EL3_CMD);
|
||||
|
||||
} while ((status = inw(ioaddr + EL3_STATUS)) & (IntLatch | RxComplete));
|
||||
|
||||
|
||||
spin_unlock(&lp->lock);
|
||||
|
||||
if (corkscrew_debug > 4)
|
||||
@@ -1308,7 +1308,7 @@ static int corkscrew_rx(struct net_device *dev)
|
||||
vp->stats.rx_bytes += pkt_len;
|
||||
/* Wait a limited time to go to next packet. */
|
||||
for (i = 200; i >= 0; i--)
|
||||
if (! (inw(ioaddr + EL3_STATUS) & CmdInProgress))
|
||||
if (! (inw(ioaddr + EL3_STATUS) & CmdInProgress))
|
||||
break;
|
||||
continue;
|
||||
} else if (corkscrew_debug)
|
||||
@@ -1567,7 +1567,7 @@ static struct ethtool_ops netdev_ethtool_ops = {
|
||||
.set_msglevel = netdev_set_msglevel,
|
||||
};
|
||||
|
||||
|
||||
|
||||
#ifdef MODULE
|
||||
void cleanup_module(void)
|
||||
{
|
||||
@@ -1584,7 +1584,7 @@ void cleanup_module(void)
|
||||
}
|
||||
}
|
||||
#endif /* MODULE */
|
||||
|
||||
|
||||
/*
|
||||
* Local variables:
|
||||
* compile-command: "gcc -DMODULE -D__KERNEL__ -Wall -Wstrict-prototypes -O6 -c 3c515.c"
|
||||
|
||||
+12
-12
@@ -83,7 +83,7 @@
|
||||
Stuart Adamson <stuart.adamson@compsoc.net>
|
||||
Nov 2001
|
||||
added support for ethtool (jgarzik)
|
||||
|
||||
|
||||
$Header: /fsys2/home/chrisb/linux-1.3.59-MCA/drivers/net/RCS/3c523.c,v 1.1 1996/02/05 01:53:46 chrisb Exp chrisb $
|
||||
*/
|
||||
|
||||
@@ -434,14 +434,14 @@ static int __init do_elmc_probe(struct net_device *dev)
|
||||
|
||||
dev->irq=irq_table[(status & ELMC_STATUS_IRQ_SELECT) >> 6];
|
||||
dev->base_addr=csr_table[(status & ELMC_STATUS_CSR_SELECT) >> 1];
|
||||
|
||||
|
||||
/*
|
||||
If we're trying to match a specified irq or IO address,
|
||||
we'll reject a match unless it's what we're looking for.
|
||||
Also reject it if the card is already in use.
|
||||
*/
|
||||
|
||||
if ((irq && irq != dev->irq) ||
|
||||
if ((irq && irq != dev->irq) ||
|
||||
(base_addr && base_addr != dev->base_addr)) {
|
||||
slot = mca_find_adapter(ELMC_MCA_ID, slot + 1);
|
||||
continue;
|
||||
@@ -540,7 +540,7 @@ static int __init do_elmc_probe(struct net_device *dev)
|
||||
|
||||
/* dump all the assorted information */
|
||||
printk(KERN_INFO "%s: IRQ %d, %sternal xcvr, memory %#lx-%#lx.\n", dev->name,
|
||||
dev->irq, dev->if_port ? "ex" : "in",
|
||||
dev->irq, dev->if_port ? "ex" : "in",
|
||||
dev->mem_start, dev->mem_end - 1);
|
||||
|
||||
/* The hardware address for the 3c523 is stored in the first six
|
||||
@@ -564,7 +564,7 @@ static int __init do_elmc_probe(struct net_device *dev)
|
||||
dev->set_multicast_list = NULL;
|
||||
#endif
|
||||
dev->ethtool_ops = &netdev_ethtool_ops;
|
||||
|
||||
|
||||
/* note that we haven't actually requested the IRQ from the kernel.
|
||||
That gets done in elmc_open(). I'm not sure that's such a good idea,
|
||||
but it works, so I'll go with it. */
|
||||
@@ -583,7 +583,7 @@ err_out:
|
||||
release_region(dev->base_addr, ELMC_IO_EXTENT);
|
||||
return retval;
|
||||
}
|
||||
|
||||
|
||||
static void cleanup_card(struct net_device *dev)
|
||||
{
|
||||
mca_set_adapter_procfn(((struct priv *) (dev->priv))->slot, NULL, NULL);
|
||||
@@ -926,7 +926,7 @@ elmc_interrupt(int irq, void *dev_id, struct pt_regs *reg_ptr)
|
||||
|
||||
p = (struct priv *) dev->priv;
|
||||
|
||||
while ((stat = p->scb->status & STAT_MASK))
|
||||
while ((stat = p->scb->status & STAT_MASK))
|
||||
{
|
||||
p->scb->cmd = stat;
|
||||
elmc_attn586(); /* ack inter. */
|
||||
@@ -1102,7 +1102,7 @@ static void startrecv586(struct net_device *dev)
|
||||
/******************************************************
|
||||
* timeout
|
||||
*/
|
||||
|
||||
|
||||
static void elmc_timeout(struct net_device *dev)
|
||||
{
|
||||
struct priv *p = (struct priv *) dev->priv;
|
||||
@@ -1129,7 +1129,7 @@ static void elmc_timeout(struct net_device *dev)
|
||||
elmc_open(dev);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/******************************************************
|
||||
* send frame
|
||||
*/
|
||||
@@ -1146,7 +1146,7 @@ static int elmc_send_packet(struct sk_buff *skb, struct net_device *dev)
|
||||
netif_stop_queue(dev);
|
||||
|
||||
len = (ETH_ZLEN < skb->len) ? skb->len : ETH_ZLEN;
|
||||
|
||||
|
||||
if (len != skb->len)
|
||||
memset((char *) p->xmit_cbuffs[p->xmit_count], 0, ETH_ZLEN);
|
||||
memcpy((char *) p->xmit_cbuffs[p->xmit_count], (char *) (skb->data), skb->len);
|
||||
@@ -1177,7 +1177,7 @@ static int elmc_send_packet(struct sk_buff *skb, struct net_device *dev)
|
||||
#else
|
||||
next_nop = (p->nop_point + 1) & 0x1;
|
||||
p->xmit_buffs[0]->size = TBD_LAST | len;
|
||||
|
||||
|
||||
p->xmit_cmds[0]->cmd_link = p->nop_cmds[next_nop]->cmd_link
|
||||
= make16((p->nop_cmds[next_nop]));
|
||||
p->xmit_cmds[0]->cmd_status = p->nop_cmds[next_nop]->cmd_status = 0;
|
||||
@@ -1281,7 +1281,7 @@ int __init init_module(void)
|
||||
{
|
||||
int this_dev,found = 0;
|
||||
|
||||
/* Loop until we either can't find any more cards, or we have MAX_3C523_CARDS */
|
||||
/* Loop until we either can't find any more cards, or we have MAX_3C523_CARDS */
|
||||
for(this_dev=0; this_dev<MAX_3C523_CARDS; this_dev++) {
|
||||
struct net_device *dev = alloc_etherdev(sizeof(struct priv));
|
||||
if (!dev)
|
||||
|
||||
+7
-7
@@ -130,7 +130,7 @@ struct rfd_struct
|
||||
/*
|
||||
* Receive Buffer Descriptor (RBD)
|
||||
*/
|
||||
struct rbd_struct
|
||||
struct rbd_struct
|
||||
{
|
||||
unsigned short status; /* status word,number of used bytes in buff */
|
||||
unsigned short next; /* pointeroffset to next RBD */
|
||||
@@ -182,7 +182,7 @@ struct nop_cmd_struct
|
||||
/*
|
||||
* IA Setup command
|
||||
*/
|
||||
struct iasetup_cmd_struct
|
||||
struct iasetup_cmd_struct
|
||||
{
|
||||
unsigned short cmd_status;
|
||||
unsigned short cmd_cmd;
|
||||
@@ -191,7 +191,7 @@ struct iasetup_cmd_struct
|
||||
};
|
||||
|
||||
/*
|
||||
* Configure command
|
||||
* Configure command
|
||||
*/
|
||||
struct configure_cmd_struct
|
||||
{
|
||||
@@ -213,9 +213,9 @@ struct configure_cmd_struct
|
||||
};
|
||||
|
||||
/*
|
||||
* Multicast Setup command
|
||||
* Multicast Setup command
|
||||
*/
|
||||
struct mcsetup_cmd_struct
|
||||
struct mcsetup_cmd_struct
|
||||
{
|
||||
unsigned short cmd_status;
|
||||
unsigned short cmd_cmd;
|
||||
@@ -225,9 +225,9 @@ struct mcsetup_cmd_struct
|
||||
};
|
||||
|
||||
/*
|
||||
* transmit command
|
||||
* transmit command
|
||||
*/
|
||||
struct transmit_cmd_struct
|
||||
struct transmit_cmd_struct
|
||||
{
|
||||
unsigned short cmd_status;
|
||||
unsigned short cmd_cmd;
|
||||
|
||||
+266
-266
File diff suppressed because it is too large
Load Diff
+2
-2
@@ -5,7 +5,7 @@
|
||||
/*
|
||||
* Registers
|
||||
*/
|
||||
|
||||
|
||||
#define HOST_CMD 0
|
||||
#define HOST_CMD_START_RX (1<<3)
|
||||
#define HOST_CMD_SUSPND_RX (3<<3)
|
||||
@@ -63,7 +63,7 @@ struct mc32_stats
|
||||
u32 tx_underrun_errors;
|
||||
u32 tx_cts_errors;
|
||||
u32 tx_timeout_errors;
|
||||
|
||||
|
||||
/* various cruft */
|
||||
u32 dataA[6];
|
||||
u16 dataB[5];
|
||||
|
||||
+14
-14
@@ -796,7 +796,7 @@ static void poll_vortex(struct net_device *dev)
|
||||
local_irq_disable();
|
||||
(vp->full_bus_master_rx ? boomerang_interrupt:vortex_interrupt)(dev->irq,dev,NULL);
|
||||
local_irq_restore(flags);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_PM
|
||||
@@ -904,7 +904,7 @@ static int vortex_eisa_remove(struct device *device)
|
||||
|
||||
vp = netdev_priv(dev);
|
||||
ioaddr = vp->ioaddr;
|
||||
|
||||
|
||||
unregister_netdev(dev);
|
||||
iowrite16(TotalReset|0x14, ioaddr + EL3_CMD);
|
||||
release_region(dev->base_addr, VORTEX_TOTAL_SIZE);
|
||||
@@ -935,7 +935,7 @@ static int __init vortex_eisa_init(void)
|
||||
eisa_found = 1;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
/* Special code to work-around the Compaq PCI BIOS32 problem. */
|
||||
if (compaq_ioaddr) {
|
||||
vortex_probe1(NULL, ioport_map(compaq_ioaddr, VORTEX_TOTAL_SIZE),
|
||||
@@ -953,7 +953,7 @@ static int __devinit vortex_init_one(struct pci_dev *pdev,
|
||||
struct vortex_chip_info *vci;
|
||||
void __iomem *ioaddr;
|
||||
|
||||
/* wake up and enable device */
|
||||
/* wake up and enable device */
|
||||
rc = pci_enable_device(pdev);
|
||||
if (rc < 0)
|
||||
goto out;
|
||||
@@ -1089,7 +1089,7 @@ static int __devinit vortex_probe1(struct device *gendev,
|
||||
if (request_region(dev->base_addr, vci->io_size, print_name) != NULL)
|
||||
vp->must_free_region = 1;
|
||||
|
||||
/* enable bus-mastering if necessary */
|
||||
/* enable bus-mastering if necessary */
|
||||
if (vci->flags & PCI_USES_MASTER)
|
||||
pci_set_master(pdev);
|
||||
|
||||
@@ -1131,7 +1131,7 @@ static int __devinit vortex_probe1(struct device *gendev,
|
||||
vp->tx_ring_dma = vp->rx_ring_dma + sizeof(struct boom_rx_desc) * RX_RING_SIZE;
|
||||
|
||||
/* if we are a PCI driver, we store info in pdev->driver_data
|
||||
* instead of a module list */
|
||||
* instead of a module list */
|
||||
if (pdev)
|
||||
pci_set_drvdata(pdev, dev);
|
||||
if (edev)
|
||||
@@ -1393,7 +1393,7 @@ static int __devinit vortex_probe1(struct device *gendev,
|
||||
dev->tx_timeout = vortex_tx_timeout;
|
||||
dev->watchdog_timeo = (watchdog * HZ) / 1000;
|
||||
#ifdef CONFIG_NET_POLL_CONTROLLER
|
||||
dev->poll_controller = poll_vortex;
|
||||
dev->poll_controller = poll_vortex;
|
||||
#endif
|
||||
if (pdev) {
|
||||
vp->pm_state_valid = 1;
|
||||
@@ -1875,11 +1875,11 @@ static void vortex_tx_timeout(struct net_device *dev)
|
||||
vp->stats.tx_dropped++;
|
||||
netif_wake_queue(dev);
|
||||
}
|
||||
|
||||
|
||||
/* Issue Tx Enable */
|
||||
iowrite16(TxEnable, ioaddr + EL3_CMD);
|
||||
dev->trans_start = jiffies;
|
||||
|
||||
|
||||
/* Switch to register set 7 for normal use. */
|
||||
EL3WINDOW(7);
|
||||
}
|
||||
@@ -2316,10 +2316,10 @@ boomerang_interrupt(int irq, void *dev_id, struct pt_regs *regs)
|
||||
if ((vp->tx_ring[entry].status & DN_COMPLETE) == 0)
|
||||
break; /* It still hasn't been processed. */
|
||||
#endif
|
||||
|
||||
|
||||
if (vp->tx_skbuff[entry]) {
|
||||
struct sk_buff *skb = vp->tx_skbuff[entry];
|
||||
#if DO_ZEROCOPY
|
||||
#if DO_ZEROCOPY
|
||||
int i;
|
||||
for (i=0; i<=skb_shinfo(skb)->nr_frags; i++)
|
||||
pci_unmap_single(VORTEX_PCI(vp),
|
||||
@@ -2633,7 +2633,7 @@ vortex_close(struct net_device *dev)
|
||||
"not using them!\n", dev->name);
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
free_irq(dev->irq, dev);
|
||||
|
||||
if (vp->full_bus_master_rx) { /* Free Boomerang bus master Rx buffers. */
|
||||
@@ -2675,7 +2675,7 @@ dump_tx_ring(struct net_device *dev)
|
||||
if (vortex_debug > 0) {
|
||||
struct vortex_private *vp = netdev_priv(dev);
|
||||
void __iomem *ioaddr = vp->ioaddr;
|
||||
|
||||
|
||||
if (vp->full_bus_master_tx) {
|
||||
int i;
|
||||
int stalled = ioread32(ioaddr + PktStatus) & 0x04; /* Possible racy. But it's only debug stuff */
|
||||
@@ -3190,7 +3190,7 @@ static void __exit vortex_eisa_cleanup(void)
|
||||
/* Take care of the EISA devices */
|
||||
eisa_driver_unregister(&vortex_eisa_driver);
|
||||
#endif
|
||||
|
||||
|
||||
if (compaq_net_device) {
|
||||
vp = compaq_net_device->priv;
|
||||
ioaddr = ioport_map(compaq_net_device->base_addr,
|
||||
|
||||
+30
-30
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* 7990.c -- LANCE ethernet IC generic routines.
|
||||
/*
|
||||
* 7990.c -- LANCE ethernet IC generic routines.
|
||||
* This is an attempt to separate out the bits of various ethernet
|
||||
* drivers that are common because they all use the AMD 7990 LANCE
|
||||
* drivers that are common because they all use the AMD 7990 LANCE
|
||||
* (Local Area Network Controller for Ethernet) chip.
|
||||
*
|
||||
* Copyright (C) 05/1998 Peter Maydell <pmaydell@chiark.greenend.org.uk>
|
||||
@@ -9,7 +9,7 @@
|
||||
* Most of this stuff was obtained by looking at other LANCE drivers,
|
||||
* in particular a2065.[ch]. The AMD C-LANCE datasheet was also helpful.
|
||||
* NB: this was made easy by the fact that Jes Sorensen had cleaned up
|
||||
* most of a2025 and sunlance with the aim of merging them, so the
|
||||
* most of a2025 and sunlance with the aim of merging them, so the
|
||||
* common code was pretty obvious.
|
||||
*/
|
||||
#include <linux/crc32.h>
|
||||
@@ -109,10 +109,10 @@ do { \
|
||||
ib->btx_ring[t].length,\
|
||||
ib->btx_ring[t].misc, ib->btx_ring[t].tmd1_bits);\
|
||||
}\
|
||||
} while (0)
|
||||
} while (0)
|
||||
#else
|
||||
#define PRINT_RINGS()
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* Load the CSR registers. The LANCE has to be STOPped when we do this! */
|
||||
static void load_csrs (struct lance_private *lp)
|
||||
@@ -157,7 +157,7 @@ static void lance_init_ring (struct net_device *dev)
|
||||
* a2065 and atarilance do the byteswap and lance.c (PC) doesn't.
|
||||
* However, the datasheet says that the BSWAP bit doesn't affect
|
||||
* the init block, so surely it should be low byte first for
|
||||
* everybody? Um.]
|
||||
* everybody? Um.]
|
||||
* We could define the ib->physaddr as three 16bit values and
|
||||
* use (addr[1] << 8) | addr[0] & co, but this is more efficient.
|
||||
*/
|
||||
@@ -171,11 +171,11 @@ static void lance_init_ring (struct net_device *dev)
|
||||
#else
|
||||
for (i=0; i<6; i++)
|
||||
ib->phys_addr[i] = dev->dev_addr[i];
|
||||
#endif
|
||||
#endif
|
||||
|
||||
if (DEBUG_IRING)
|
||||
printk ("TX rings:\n");
|
||||
|
||||
|
||||
lp->tx_full = 0;
|
||||
/* Setup the Tx ring entries */
|
||||
for (i = 0; i < (1<<lp->lance_log_tx_bufs); i++) {
|
||||
@@ -185,7 +185,7 @@ static void lance_init_ring (struct net_device *dev)
|
||||
ib->btx_ring [i].tmd1_bits = 0;
|
||||
ib->btx_ring [i].length = 0xf000; /* The ones required by tmd2 */
|
||||
ib->btx_ring [i].misc = 0;
|
||||
if (DEBUG_IRING)
|
||||
if (DEBUG_IRING)
|
||||
printk ("%d: 0x%8.8x\n", i, leptr);
|
||||
}
|
||||
|
||||
@@ -206,14 +206,14 @@ static void lance_init_ring (struct net_device *dev)
|
||||
}
|
||||
|
||||
/* Setup the initialization block */
|
||||
|
||||
|
||||
/* Setup rx descriptor pointer */
|
||||
leptr = LANCE_ADDR(&aib->brx_ring);
|
||||
ib->rx_len = (lp->lance_log_rx_bufs << 13) | (leptr >> 16);
|
||||
ib->rx_ptr = leptr;
|
||||
if (DEBUG_IRING)
|
||||
printk ("RX ptr: %8.8x\n", leptr);
|
||||
|
||||
|
||||
/* Setup tx descriptor pointer */
|
||||
leptr = LANCE_ADDR(&aib->btx_ring);
|
||||
ib->tx_len = (lp->lance_log_tx_bufs << 13) | (leptr >> 16);
|
||||
@@ -256,7 +256,7 @@ static int lance_reset (struct net_device *dev)
|
||||
{
|
||||
struct lance_private *lp = netdev_priv(dev);
|
||||
int status;
|
||||
|
||||
|
||||
/* Stop the lance */
|
||||
WRITERAP(lp, LE_CSR0);
|
||||
WRITERDP(lp, LE_C0_STOP);
|
||||
@@ -297,7 +297,7 @@ static int lance_rx (struct net_device *dev)
|
||||
#endif
|
||||
#ifdef CONFIG_HP300
|
||||
blinken_leds(0x40, 0);
|
||||
#endif
|
||||
#endif
|
||||
WRITERDP(lp, LE_C0_RINT | LE_C0_INEA); /* ack Rx int, reenable ints */
|
||||
for (rd = &ib->brx_ring [lp->rx_new]; /* For each Rx ring we own... */
|
||||
!((bits = rd->rmd1_bits) & LE_R1_OWN);
|
||||
@@ -330,7 +330,7 @@ static int lance_rx (struct net_device *dev)
|
||||
lp->rx_new = (lp->rx_new + 1) & lp->rx_ring_mod_mask;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
skb->dev = dev;
|
||||
skb_reserve (skb, 2); /* 16 byte align */
|
||||
skb_put (skb, len); /* make room */
|
||||
@@ -374,10 +374,10 @@ static int lance_tx (struct net_device *dev)
|
||||
/* If we hit a packet not owned by us, stop */
|
||||
if (td->tmd1_bits & LE_T1_OWN)
|
||||
break;
|
||||
|
||||
|
||||
if (td->tmd1_bits & LE_T1_ERR) {
|
||||
status = td->misc;
|
||||
|
||||
|
||||
lp->stats.tx_errors++;
|
||||
if (status & LE_T3_RTY) lp->stats.tx_aborted_errors++;
|
||||
if (status & LE_T3_LCOL) lp->stats.tx_window_errors++;
|
||||
@@ -429,7 +429,7 @@ static int lance_tx (struct net_device *dev)
|
||||
|
||||
lp->stats.tx_packets++;
|
||||
}
|
||||
|
||||
|
||||
j = (j + 1) & lp->tx_ring_mod_mask;
|
||||
}
|
||||
lp->tx_old = j;
|
||||
@@ -450,7 +450,7 @@ lance_interrupt (int irq, void *dev_id, struct pt_regs *regs)
|
||||
csr0 = READRDP(lp);
|
||||
|
||||
PRINT_RINGS();
|
||||
|
||||
|
||||
if (!(csr0 & LE_C0_INTR)) { /* Check if any interrupt has */
|
||||
spin_unlock (&lp->devlock);
|
||||
return IRQ_NONE; /* been generated by the Lance. */
|
||||
@@ -476,7 +476,7 @@ lance_interrupt (int irq, void *dev_id, struct pt_regs *regs)
|
||||
if (csr0 & LE_C0_MISS)
|
||||
lp->stats.rx_errors++; /* Missed a Rx frame. */
|
||||
if (csr0 & LE_C0_MERR) {
|
||||
printk("%s: Bus master arbitration failure, status %4.4x.\n",
|
||||
printk("%s: Bus master arbitration failure, status %4.4x.\n",
|
||||
dev->name, csr0);
|
||||
/* Restart the chip. */
|
||||
WRITERDP(lp, LE_C0_STRT);
|
||||
@@ -486,7 +486,7 @@ lance_interrupt (int irq, void *dev_id, struct pt_regs *regs)
|
||||
lp->tx_full = 0;
|
||||
netif_wake_queue (dev);
|
||||
}
|
||||
|
||||
|
||||
WRITERAP(lp, LE_CSR0);
|
||||
WRITERDP(lp, LE_C0_BABL|LE_C0_CERR|LE_C0_MISS|LE_C0_MERR|LE_C0_IDON|LE_C0_INEA);
|
||||
|
||||
@@ -498,7 +498,7 @@ int lance_open (struct net_device *dev)
|
||||
{
|
||||
struct lance_private *lp = netdev_priv(dev);
|
||||
int res;
|
||||
|
||||
|
||||
/* Install the Interrupt handler. Or we could shunt this out to specific drivers? */
|
||||
if (request_irq(lp->irq, lance_interrupt, 0, lp->name, dev))
|
||||
return -EAGAIN;
|
||||
@@ -513,7 +513,7 @@ int lance_open (struct net_device *dev)
|
||||
int lance_close (struct net_device *dev)
|
||||
{
|
||||
struct lance_private *lp = netdev_priv(dev);
|
||||
|
||||
|
||||
netif_stop_queue (dev);
|
||||
|
||||
/* Stop the LANCE */
|
||||
@@ -553,7 +553,7 @@ int lance_start_xmit (struct sk_buff *skb, struct net_device *dev)
|
||||
/* dump the packet */
|
||||
{
|
||||
int i;
|
||||
|
||||
|
||||
for (i = 0; i < 64; i++) {
|
||||
if ((i % 16) == 0)
|
||||
printk ("\n");
|
||||
@@ -565,11 +565,11 @@ int lance_start_xmit (struct sk_buff *skb, struct net_device *dev)
|
||||
entry = lp->tx_new & lp->tx_ring_mod_mask;
|
||||
ib->btx_ring [entry].length = (-len) | 0xf000;
|
||||
ib->btx_ring [entry].misc = 0;
|
||||
|
||||
|
||||
if (skb->len < ETH_ZLEN)
|
||||
memset((char *)&ib->tx_buf[entry][0], 0, ETH_ZLEN);
|
||||
memcpy ((char *)&ib->tx_buf [entry][0], skb->data, skblen);
|
||||
|
||||
|
||||
/* Now, give the packet to the lance */
|
||||
ib->btx_ring [entry].tmd1_bits = (LE_T1_POK|LE_T1_OWN);
|
||||
lp->tx_new = (lp->tx_new+1) & lp->tx_ring_mod_mask;
|
||||
@@ -579,7 +579,7 @@ int lance_start_xmit (struct sk_buff *skb, struct net_device *dev)
|
||||
WRITERDP(lp, LE_C0_INEA | LE_C0_TDMD);
|
||||
dev->trans_start = jiffies;
|
||||
dev_kfree_skb (skb);
|
||||
|
||||
|
||||
spin_lock_irqsave (&lp->devlock, flags);
|
||||
if (TX_BUFFS_AVAIL)
|
||||
netif_start_queue (dev);
|
||||
@@ -607,9 +607,9 @@ static void lance_load_multicast (struct net_device *dev)
|
||||
char *addrs;
|
||||
int i;
|
||||
u32 crc;
|
||||
|
||||
|
||||
/* set all multicast bits */
|
||||
if (dev->flags & IFF_ALLMULTI){
|
||||
if (dev->flags & IFF_ALLMULTI){
|
||||
ib->filter [0] = 0xffffffff;
|
||||
ib->filter [1] = 0xffffffff;
|
||||
return;
|
||||
@@ -626,7 +626,7 @@ static void lance_load_multicast (struct net_device *dev)
|
||||
/* multicast address? */
|
||||
if (!(*addrs & 1))
|
||||
continue;
|
||||
|
||||
|
||||
crc = ether_crc_le(6, addrs);
|
||||
crc = crc >> 26;
|
||||
mcast_table [crc >> 4] |= 1 << (crc & 0xf);
|
||||
|
||||
+12
-12
@@ -1,9 +1,9 @@
|
||||
/*
|
||||
/*
|
||||
* 7990.h -- LANCE ethernet IC generic routines.
|
||||
* This is an attempt to separate out the bits of various ethernet
|
||||
* drivers that are common because they all use the AMD 7990 LANCE
|
||||
* (Local Area Network Controller for Ethernet) chip.
|
||||
*
|
||||
*
|
||||
* Copyright (C) 05/1998 Peter Maydell <pmaydell@chiark.greenend.org.uk>
|
||||
*
|
||||
* Most of this stuff was obtained by looking at other LANCE drivers,
|
||||
@@ -55,7 +55,7 @@ struct lance_rx_desc {
|
||||
*/
|
||||
volatile unsigned short mblength; /* Actual number of bytes received */
|
||||
};
|
||||
|
||||
|
||||
/* Ditto for TMD: */
|
||||
struct lance_tx_desc {
|
||||
volatile unsigned short tmd0; /* low address of packet */
|
||||
@@ -80,8 +80,8 @@ struct lance_init_block {
|
||||
volatile unsigned short rx_len; /* receive len and high addr */
|
||||
volatile unsigned short tx_ptr; /* transmit descriptor addr */
|
||||
volatile unsigned short tx_len; /* transmit len and high addr */
|
||||
|
||||
/* The Tx and Rx ring entries must be aligned on 8-byte boundaries.
|
||||
|
||||
/* The Tx and Rx ring entries must be aligned on 8-byte boundaries.
|
||||
* This will be true if this whole struct is 8-byte aligned.
|
||||
*/
|
||||
volatile struct lance_tx_desc btx_ring[TX_RING_SIZE];
|
||||
@@ -104,21 +104,21 @@ struct lance_private
|
||||
unsigned long base;
|
||||
volatile struct lance_init_block *init_block; /* CPU address of RAM */
|
||||
volatile struct lance_init_block *lance_init_block; /* LANCE address of RAM */
|
||||
|
||||
|
||||
int rx_new, tx_new;
|
||||
int rx_old, tx_old;
|
||||
|
||||
|
||||
int lance_log_rx_bufs, lance_log_tx_bufs;
|
||||
int rx_ring_mod_mask, tx_ring_mod_mask;
|
||||
|
||||
|
||||
struct net_device_stats stats;
|
||||
int tpe; /* TPE is selected */
|
||||
int auto_select; /* cable-selection is by carrier */
|
||||
unsigned short busmaster_regval;
|
||||
|
||||
unsigned int irq; /* IRQ to register */
|
||||
|
||||
/* This is because the HP LANCE is disgusting and you have to check
|
||||
|
||||
/* This is because the HP LANCE is disgusting and you have to check
|
||||
* a DIO-specific register every time you read/write the LANCE regs :-<
|
||||
* [could we get away with making these some sort of macro?]
|
||||
*/
|
||||
@@ -148,7 +148,7 @@ struct lance_private
|
||||
#define LE_C0_RINT 0x0400 /* Receive Interrupt */
|
||||
#define LE_C0_TINT 0x0200 /* Transmit Interrupt */
|
||||
#define LE_C0_IDON 0x0100 /* Initialization Done */
|
||||
#define LE_C0_INTR 0x0080 /* Interrupt Flag
|
||||
#define LE_C0_INTR 0x0080 /* Interrupt Flag
|
||||
= BABL | MISS | MERR | RINT | TINT | IDON */
|
||||
#define LE_C0_INEA 0x0040 /* Interrupt Enable */
|
||||
#define LE_C0_RXON 0x0020 /* Receive On */
|
||||
@@ -185,7 +185,7 @@ struct lance_private
|
||||
#define LE_MO_PSEL1 0x0100 /* port selection bit1 */
|
||||
#define LE_MO_PSEL0 0x0080 /* port selection bit0 */
|
||||
/* and this one is from the C-LANCE data sheet... */
|
||||
#define LE_MO_EMBA 0x0080 /* Enable Modified Backoff Algorithm
|
||||
#define LE_MO_EMBA 0x0080 /* Enable Modified Backoff Algorithm
|
||||
(C-LANCE, not original LANCE) */
|
||||
#define LE_MO_INTL 0x0040 /* Internal Loopback */
|
||||
#define LE_MO_DRTY 0x0020 /* Disable Retry */
|
||||
|
||||
+6
-6
@@ -444,7 +444,7 @@ static inline int wait_cmd(struct net_device *dev, struct i596_private *lp, int
|
||||
static inline int wait_cfg(struct net_device *dev, struct i596_cmd *cmd, int delcnt, char *str)
|
||||
{
|
||||
volatile struct i596_cmd *c = cmd;
|
||||
|
||||
|
||||
while (--delcnt && c->command)
|
||||
udelay(10);
|
||||
if (!delcnt) {
|
||||
@@ -455,7 +455,7 @@ static inline int wait_cfg(struct net_device *dev, struct i596_cmd *cmd, int del
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
static void i596_display_data(struct net_device *dev)
|
||||
{
|
||||
struct i596_private *lp = dev->priv;
|
||||
@@ -787,7 +787,7 @@ static inline int i596_rx(struct net_device *dev)
|
||||
}
|
||||
DEB(DEB_RXFRAME, printk(KERN_DEBUG " rfd %p, rfd.rbd %p, rfd.stat %04x\n",
|
||||
rfd, rfd->rbd, rfd->stat));
|
||||
|
||||
|
||||
if (rbd != I596_NULL && ((rfd->stat) & STAT_OK)) {
|
||||
/* a good frame */
|
||||
int pkt_len = rbd->count & 0x3fff;
|
||||
@@ -1208,7 +1208,7 @@ struct net_device * __init i82596_probe(int unit)
|
||||
Some other boards trip the checksum.. but then appear as
|
||||
ether address 0. Trap these - AC */
|
||||
|
||||
if ((checksum % 0x100) ||
|
||||
if ((checksum % 0x100) ||
|
||||
(memcmp(eth_addr, "\x00\x00\x49", 3) != 0)) {
|
||||
err = -ENODEV;
|
||||
goto out1;
|
||||
@@ -1545,7 +1545,7 @@ static void set_multicast_list(struct net_device *dev)
|
||||
printk(KERN_ERR "%s: Only %d multicast addresses supported",
|
||||
dev->name, cnt);
|
||||
}
|
||||
|
||||
|
||||
if (dev->mc_count > 0) {
|
||||
struct dev_mc_list *dmi;
|
||||
unsigned char *cp;
|
||||
@@ -1609,7 +1609,7 @@ void __exit cleanup_module(void)
|
||||
}
|
||||
|
||||
#endif /* MODULE */
|
||||
|
||||
|
||||
/*
|
||||
* Local variables:
|
||||
* compile-command: "gcc -D__KERNEL__ -I/usr/src/linux/net/inet -Wall -Wstrict-prototypes -O6 -m486 -c 82596.c"
|
||||
|
||||
+118
-118
File diff suppressed because it is too large
Load Diff
+1
-1
@@ -106,7 +106,7 @@ struct ei_device {
|
||||
* Only generate indirect loads given a machine that needs them.
|
||||
* - removed AMIGA_PCMCIA from this list, handled as ISA io now
|
||||
*/
|
||||
|
||||
|
||||
#if defined(CONFIG_MAC) || \
|
||||
defined(CONFIG_ZORRO8390) || defined(CONFIG_ZORRO8390_MODULE) || \
|
||||
defined(CONFIG_HYDRA) || defined(CONFIG_HYDRA_MODULE)
|
||||
|
||||
+12
-12
@@ -18,7 +18,7 @@
|
||||
* - struct init cleanup, enable multiple ISA autoprobes.
|
||||
* Arnaldo Carvalho de Melo <acme@conectiva.com.br> - 09/1999
|
||||
* - fix sbni: s/device/net_device/
|
||||
* Paul Gortmaker (06/98):
|
||||
* Paul Gortmaker (06/98):
|
||||
* - sort probes in a sane way, make sure all (safe) probes
|
||||
* get run once & failed autoprobes don't autoprobe again.
|
||||
*
|
||||
@@ -91,7 +91,7 @@ extern struct net_device *mac89x0_probe(int unit);
|
||||
extern struct net_device *mc32_probe(int unit);
|
||||
extern struct net_device *cops_probe(int unit);
|
||||
extern struct net_device *ltpc_probe(void);
|
||||
|
||||
|
||||
/* Detachable devices ("pocket adaptors") */
|
||||
extern struct net_device *de620_probe(int unit);
|
||||
|
||||
@@ -129,10 +129,10 @@ static int __init probe_list2(int unit, struct devprobe2 *p, int autoprobe)
|
||||
*/
|
||||
|
||||
static struct devprobe2 eisa_probes[] __initdata = {
|
||||
#ifdef CONFIG_ULTRA32
|
||||
{ultra32_probe, 0},
|
||||
#ifdef CONFIG_ULTRA32
|
||||
{ultra32_probe, 0},
|
||||
#endif
|
||||
#ifdef CONFIG_AC3200
|
||||
#ifdef CONFIG_AC3200
|
||||
{ac3200_probe, 0},
|
||||
#endif
|
||||
#ifdef CONFIG_ES3210
|
||||
@@ -167,14 +167,14 @@ static struct devprobe2 mca_probes[] __initdata = {
|
||||
static struct devprobe2 isa_probes[] __initdata = {
|
||||
#ifdef CONFIG_HP100 /* ISA, EISA & PCI */
|
||||
{hp100_probe, 0},
|
||||
#endif
|
||||
#endif
|
||||
#ifdef CONFIG_3C515
|
||||
{tc515_probe, 0},
|
||||
#endif
|
||||
#ifdef CONFIG_ULTRA
|
||||
#ifdef CONFIG_ULTRA
|
||||
{ultra_probe, 0},
|
||||
#endif
|
||||
#ifdef CONFIG_WD80x3
|
||||
#ifdef CONFIG_WD80x3
|
||||
{wd_probe, 0},
|
||||
#endif
|
||||
#ifdef CONFIG_EL2 /* 3c503 */
|
||||
@@ -199,7 +199,7 @@ static struct devprobe2 isa_probes[] __initdata = {
|
||||
#ifdef CONFIG_SMC9194
|
||||
{smc_init, 0},
|
||||
#endif
|
||||
#ifdef CONFIG_SEEQ8005
|
||||
#ifdef CONFIG_SEEQ8005
|
||||
{seeq8005_probe, 0},
|
||||
#endif
|
||||
#ifdef CONFIG_CS89x0
|
||||
@@ -295,7 +295,7 @@ static struct devprobe2 m68k_probes[] __initdata = {
|
||||
* Unified ethernet device probe, segmented per architecture and
|
||||
* per bus interface. This drives the legacy devices only for now.
|
||||
*/
|
||||
|
||||
|
||||
static void __init ethif_probe2(int unit)
|
||||
{
|
||||
unsigned long base_addr = netdev_boot_base("eth", unit);
|
||||
@@ -349,7 +349,7 @@ static void __init trif_probe2(int unit)
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* The loopback device is global so it can be directly referenced
|
||||
* by the network code. Also, it must be first on device list.
|
||||
@@ -365,7 +365,7 @@ static int __init net_olddevs_init(void)
|
||||
printk(KERN_ERR "Network loopback device setup failed\n");
|
||||
}
|
||||
|
||||
|
||||
|
||||
#ifdef CONFIG_SBNI
|
||||
for (num = 0; num < 8; ++num)
|
||||
sbni_probe(num);
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user