Skip to content

Commit

Permalink
Merge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/ker…
Browse files Browse the repository at this point in the history
…nel/git/jgarzik/netdev-2.6

* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6: (217 commits)
  net/ieee80211: fix more crypto-related build breakage
  [PATCH] Spidernet: add ethtool -S (show statistics)
  [NET] GT96100: Delete bitrotting ethernet driver
  [PATCH] mv643xx_eth: restrict to 32-bit PPC_MULTIPLATFORM
  [PATCH] Cirrus Logic ep93xx ethernet driver
  r8169: the MMIO region of the 8167 stands behin BAR#1
  e1000, ixgb: Remove pointless wrappers
  [PATCH] Remove powerpc specific parts of 3c509 driver
  [PATCH] s2io: Switch to pci_get_device
  [PATCH] gt96100: move to pci_get_device API
  [PATCH] ehea: bugfix for register access functions
  [PATCH] e1000 disable device on PCI error
  drivers/net/phy/fixed: #if 0 some incomplete code
  drivers/net: const-ify ethtool_ops declarations
  [PATCH] ethtool: allow const ethtool_ops
  [PATCH] sky2: big endian
  [PATCH] sky2: fiber support
  [PATCH] sky2: tx pause bug fix
  drivers/net: Trim trailing whitespace
  [PATCH] ehea: IBM eHEA Ethernet Device Driver
  ...

Manually resolved conflicts in drivers/net/ixgb/ixgb_main.c and
drivers/net/sky2.c related to CHECKSUM_HW/CHECKSUM_PARTIAL changes by
commit 84fa793 that just happened to be
next to unrelated changes in this update.
  • Loading branch information
Linus Torvalds committed Sep 24, 2006
2 parents e18fa70 + 1837987 commit a319a27
Show file tree
Hide file tree
Showing 360 changed files with 40,596 additions and 28,263 deletions.
46 changes: 46 additions & 0 deletions Documentation/networking/LICENSE.qla3xxx
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
Copyright (c) 2003-2006 QLogic Corporation
QLogic Linux Networking HBA Driver

This program includes a device driver for Linux 2.6 that may be
distributed with QLogic hardware specific firmware binary file.
You may modify and redistribute the device driver code under the
GNU General Public License as published by the Free Software
Foundation (version 2 or a later version).

You may redistribute the hardware specific firmware binary file
under the following terms:

1. Redistribution of source code (only if applicable),
must retain the above copyright notice, this list of
conditions and the following disclaimer.

2. Redistribution in binary form must reproduce the above
copyright notice, this list of conditions and the
following disclaimer in the documentation and/or other
materials provided with the distribution.

3. The name of QLogic Corporation may not be used to
endorse or promote products derived from this software
without specific prior written permission

REGARDLESS OF WHAT LICENSING MECHANISM IS USED OR APPLICABLE,
THIS PROGRAM IS PROVIDED BY QLOGIC CORPORATION "AS IS'' AND ANY
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR
BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.

USER ACKNOWLEDGES AND AGREES THAT USE OF THIS PROGRAM WILL NOT
CREATE OR GIVE GROUNDS FOR A LICENSE BY IMPLICATION, ESTOPPEL, OR
OTHERWISE IN ANY INTELLECTUAL PROPERTY RIGHTS (PATENT, COPYRIGHT,
TRADE SECRET, MASK WORK, OR OTHER PROPRIETARY RIGHT) EMBODIED IN
ANY OTHER QLOGIC HARDWARE OR SOFTWARE EITHER SOLELY OR IN
COMBINATION WITH THIS PROGRAM.

37 changes: 32 additions & 5 deletions MAINTAINERS
Original file line number Diff line number Diff line change
Expand Up @@ -457,9 +457,9 @@ L: [email protected]
W: http://www.baycom.org/~tom/ham/ham.html
S: Maintained

BCM43XX WIRELESS DRIVER
P: Michael Buesch
M: [email protected]
BCM43XX WIRELESS DRIVER (SOFTMAC BASED VERSION)
P: Larry Finger
M: [email protected]
P: Stefano Brivio
M: [email protected]
W: http://bcm43xx.berlios.de/
Expand Down Expand Up @@ -2389,6 +2389,12 @@ M: [email protected]
L: [email protected]
S: Supported

QLOGIC QLA3XXX NETWORK DRIVER
P: Ron Mercer
M: [email protected]
L: [email protected]
S: Supported

QNX4 FILESYSTEM
P: Anders Larsen
M: [email protected]
Expand Down Expand Up @@ -2641,6 +2647,18 @@ P: Nicolas Pitre
M: [email protected]
S: Maintained

SOFTMAC LAYER (IEEE 802.11)
P: Johannes Berg
M: [email protected]
P: Joe Jezak
M: [email protected]
P: Daniel Drake
M: [email protected]
W: http://softmac.sipsolutions.net/
L: [email protected]
L: [email protected]
S: Maintained

SOFTWARE RAID (Multiple Disks) SUPPORT
P: Ingo Molnar
M: [email protected]
Expand Down Expand Up @@ -2922,8 +2940,8 @@ W: http://www.auk.cx/tms380tr/
S: Maintained

TULIP NETWORK DRIVER
P: Jeff Garzik
M: jgarzik@pobox.com
P: Valerie Henson
M: [email protected].com
L: [email protected]
W: http://sourceforge.net/projects/tulip/
S: Maintained
Expand Down Expand Up @@ -3374,6 +3392,15 @@ W: http://www.qsl.net/dl1bke/
L: [email protected]
S: Maintained

ZD1211RW WIRELESS DRIVER
P: Daniel Drake
M: [email protected]
P: Ulrich Kunitz
M: [email protected]
W: http://zd1211.ath.cx/wiki/DriverRewrite
L: [email protected] (subscribers-only)
S: Maintained

ZF MACHZ WATCHDOG
P: Fernando Fuganti
M: [email protected]
Expand Down
1 change: 1 addition & 0 deletions drivers/isdn/i4l/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
config ISDN_PPP
bool "Support synchronous PPP"
depends on INET
select SLHC
help
Over digital connections such as ISDN, there is no need to
synchronize sender and recipient's clocks with start and stop bits
Expand Down
61 changes: 30 additions & 31 deletions drivers/net/3c501.c
Original file line number Diff line number Diff line change
Expand Up @@ -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 <[email protected]>
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 <[email protected]>
Check up pass for 2.5. Nothing significant changed
20021009 Alan Cox <[email protected]>
Fixed zero fill corner case
Fixed zero fill corner case
20030104 Alan Cox <[email protected]>
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
Expand All @@ -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
Expand All @@ -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
Expand Down Expand Up @@ -120,7 +120,6 @@ static const char version[] =
#include <linux/slab.h>
#include <linux/string.h>
#include <linux/errno.h>
#include <linux/config.h> /* for CONFIG_IP_MULTICAST */
#include <linux/spinlock.h>
#include <linux/ethtool.h>
#include <linux/delay.h>
Expand All @@ -146,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
Expand All @@ -156,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));
Expand Down Expand Up @@ -201,7 +200,7 @@ struct net_device * __init el1_probe(int unit)
}

/**
* el1_probe1:
* el1_probe1:
* @dev: The device structure to use
* @ioaddr: An I/O address to probe at.
*
Expand Down Expand Up @@ -308,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.
*/
Expand All @@ -329,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.
*
Expand Down Expand Up @@ -368,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));
Expand All @@ -386,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
Expand Down Expand Up @@ -422,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.
*/
Expand All @@ -435,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;
Expand All @@ -464,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) */
Expand All @@ -473,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. */
Expand All @@ -499,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.
Expand Down Expand Up @@ -527,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 ?
*/
Expand Down Expand Up @@ -795,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;
Expand All @@ -804,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.
*/
Expand All @@ -825,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);
Expand All @@ -836,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.
Expand Down Expand Up @@ -882,7 +881,7 @@ static void netdev_set_msglevel(struct net_device *dev, u32 level)
debug = level;
}

static struct ethtool_ops netdev_ethtool_ops = {
static const struct ethtool_ops netdev_ethtool_ops = {
.get_drvinfo = netdev_get_drvinfo,
.get_msglevel = netdev_get_msglevel,
.set_msglevel = netdev_set_msglevel,
Expand All @@ -908,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);
Expand All @@ -919,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;
Expand Down
4 changes: 2 additions & 2 deletions drivers/net/3c501.h
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ static void el_reset(struct net_device *dev);
static int el1_close(struct net_device *dev);
static struct net_device_stats *el1_get_stats(struct net_device *dev);
static void set_multicast_list(struct net_device *dev);
static struct ethtool_ops netdev_ethtool_ops;
static const struct ethtool_ops netdev_ethtool_ops;

#define EL1_IO_EXTENT 16

Expand All @@ -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)
Expand Down
Loading

0 comments on commit a319a27

Please sign in to comment.