]> pilppa.org Git - linux-2.6-omap-h63xx.git/log
linux-2.6-omap-h63xx.git
17 years agoixgbe: fix bug with lots of tx queues
Jesse Brandeburg [Fri, 12 Sep 2008 02:58:29 +0000 (19:58 -0700)]
ixgbe: fix bug with lots of tx queues

when using more than 8 tx queues you can overrun the 8 bit v_idx
field, so change it to 16 bits to represent the maximum number
of queues (one for each bit)

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agoixgbe: fix initial interrupt throttle settings
Jesse Brandeburg [Fri, 12 Sep 2008 02:58:14 +0000 (19:58 -0700)]
ixgbe: fix initial interrupt throttle settings

ixgbe was incorrectly setting the throttle rate setting for all tx
queues and the driver has been refreshed to better handle a dynamic
interrupt mode as well as multiple queues.

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agoixgbe: fix ethtool disable csum for ipv6
Jesse Brandeburg [Fri, 12 Sep 2008 02:57:17 +0000 (19:57 -0700)]
ixgbe: fix ethtool disable csum for ipv6

ethtool was not disabling the correct netif flags when setting
checksum disable.

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agoixgbe: fix pci_resource allocation as in other drivers
Jeff Kirsher [Fri, 12 Sep 2008 02:57:00 +0000 (19:57 -0700)]
ixgbe: fix pci_resource allocation as in other drivers

Form: Jesse Brandeburg <jesse.brandeburg@intel.com>

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agoixgbe: fix ethtool register dump
Jesse Brandeburg [Fri, 12 Sep 2008 02:56:41 +0000 (19:56 -0700)]
ixgbe: fix ethtool register dump

1) reading some of the registers in our hardware causes them to clear,
so don't read ICR in the ethtool register dump function.
2) several register iterators were not iterating

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agoixgbe: limit small mtu to minimum for ipv4 support
Jesse Brandeburg [Fri, 12 Sep 2008 02:56:28 +0000 (19:56 -0700)]
ixgbe: limit small mtu to minimum for ipv4 support

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agoixgbe: fix bug with shared interrupts
Jesse Brandeburg [Fri, 12 Sep 2008 02:56:14 +0000 (19:56 -0700)]
ixgbe: fix bug with shared interrupts

fix ixgbe bug reported with shared legacy interrupts

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agoixgbe: link change interrupt was not causing link event
Jesse Brandeburg [Fri, 12 Sep 2008 02:55:58 +0000 (19:55 -0700)]
ixgbe: link change interrupt was not causing link event

Upon review a buglet was found where link change was not causing
an immediate link change event as it should.

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agoixgbe: Update watchdog thread to accomodate longerlink_up events
Jesse Brandeburg [Fri, 12 Sep 2008 02:55:32 +0000 (19:55 -0700)]
ixgbe: Update watchdog thread to accomodate longerlink_up events

This patch updates the link_up code and watchdog thread so that link_up
doesn't cause stack overflows due to long waits in interrupt context.

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agoixgbe: fix multicast address update
Jesse Brandeburg [Fri, 12 Sep 2008 02:55:14 +0000 (19:55 -0700)]
ixgbe: fix multicast address update

after the most recent patches, the driver was not using the
correct iterator for updating the receive address registers (RAR)

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agoixgbe: fix dca defines to not have spaces
Jesse Brandeburg [Fri, 12 Sep 2008 02:54:48 +0000 (19:54 -0700)]
ixgbe: fix dca defines to not have spaces

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agoixgbe: fix bug where using wake queue instead of start
Jesse Brandeburg [Fri, 12 Sep 2008 02:54:23 +0000 (19:54 -0700)]
ixgbe: fix bug where using wake queue instead of start

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agonetxen: add pci ids
Dhananjay Phadke [Fri, 12 Sep 2008 13:55:14 +0000 (06:55 -0700)]
netxen: add pci ids

Define old and new pci vendor and device ids.

Signed-off-by: Dhananjay Phadke <dhananjay@netxen.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agomyri10ge: Rename DCA-related firmware counters
Brice Goglin [Fri, 12 Sep 2008 17:48:06 +0000 (19:48 +0200)]
myri10ge: Rename DCA-related firmware counters

Rename the cryptic "dca_capable" to "dca_capable_firmware"
and "dca_enabled" to "dca_device_present" in the firmware
counters.

Signed-off-by: Brice Goglin <brice@myri.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agomyri10ge: Stop scaring people when DCA is built but absent
Brice Goglin [Fri, 12 Sep 2008 17:47:26 +0000 (19:47 +0200)]
myri10ge: Stop scaring people when DCA is built but absent

Stop scaring people with what looks like a fatal message when DCA support
is compiled into their kernel, but the DCA device is not present.

Signed-off-by: Brice Goglin <brice@myri.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agosmc911x: remove duplicate debug printout
Magnus Damm [Mon, 8 Sep 2008 05:03:16 +0000 (14:03 +0900)]
smc911x: remove duplicate debug printout

Remove duplicated debug printout.

Signed-off-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agor6040: fix bad usage of udelay
Florian Fainelli [Wed, 3 Sep 2008 14:50:03 +0000 (16:50 +0200)]
r6040: fix bad usage of udelay

This patch fixes the bad usage of udelay(5000), which in turns is a
mdelay(5). It causes compilation for ARM where udelay maximum value
is checked.

Reported-by: Martin Michlmayr <tbm@cyrius.com>
Signed-off-by: Florian Fainelli <florian.fainelli@telecomint.eu>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agosfc: Fix type of FALCON_SPI_MAX_LEN
Ben Hutchings [Wed, 3 Sep 2008 14:37:01 +0000 (15:37 +0100)]
sfc: Fix type of FALCON_SPI_MAX_LEN

FALCON_SPI_MAX_LEN has type size_t while other SPI lengths have type
unsigned int.  This results in warnings from min() on 64-bit
architectures where they are different.  Add a cast to make it match.

From: Steve Hodgson <shodgson@solarflare.com>
Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agosfc: Use CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS where appropriate
Ben Hutchings [Mon, 1 Sep 2008 11:50:28 +0000 (12:50 +0100)]
sfc: Use CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS where appropriate

For some buffers we use a starting offset of either NET_IP_ALIGN or 0
depending on whether we believe the architecture supports efficient
access to unaligned words.  There is now a config macro specifying
whether this is the case, so check that rather than checking for
specific architectures.

Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agosfc: Remove obsolete comment about PCI modes
Ben Hutchings [Mon, 1 Sep 2008 11:50:18 +0000 (12:50 +0100)]
sfc: Remove obsolete comment about PCI modes

Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agosfc: Disable interrupts after a fatal interrupt occurs until reset
Ben Hutchings [Mon, 1 Sep 2008 11:50:14 +0000 (12:50 +0100)]
sfc: Disable interrupts after a fatal interrupt occurs until reset

This should avoid an interrupt storm, which has been observed in the
field with one faulty board.

Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agosfc: Insert read memory barrier after checking MAC statistics flag
Ben Hutchings [Mon, 1 Sep 2008 11:50:08 +0000 (12:50 +0100)]
sfc: Insert read memory barrier after checking MAC statistics flag

This prevents speculative reading of the statistics before the
completion flag.

From: Neil Turton <nturton@solarflare.com>
Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agosfc: Stop generating bogus events in tenxpress_check_hw()
Ben Hutchings [Mon, 1 Sep 2008 11:50:01 +0000 (12:50 +0100)]
sfc: Stop generating bogus events in tenxpress_check_hw()

mdio_clause45_links_ok() correctly checks efx_phy_mode_disabled(), so
tenxpress_link_ok() doesn't need to.

From: Steve Hodgson <shodgson@solarflare.com>
Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agosfc: Don't include net_driver.h from falcon_io.h
Steve Hodgson [Mon, 1 Sep 2008 11:49:54 +0000 (12:49 +0100)]
sfc: Don't include net_driver.h from falcon_io.h

Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agosfc: Make queue flushes more reliable
Ben Hutchings [Mon, 1 Sep 2008 11:49:37 +0000 (12:49 +0100)]
sfc: Make queue flushes more reliable

Increase the potential retry count for RX flushes from 5 to 100.

Stop polling the RX_DESC_PTR_TBL to infer that a flush might have
happened. Instead absolutely rely on the flush events, unless bug 7803
applies (Falcon rev A only).

To keep things quick, request flushes for every TX and RX queue up
front, and match up the events to requests.

Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agosfc: Don't use EFX_OWORD_FIELD on an event (64-bit, quad-word)
Steve Hodgson [Mon, 1 Sep 2008 11:49:29 +0000 (12:49 +0100)]
sfc: Don't use EFX_OWORD_FIELD on an event (64-bit, quad-word)

Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agosfc: Serialise tenxpress_special_reset() with statistics fetches
Ben Hutchings [Mon, 1 Sep 2008 11:49:25 +0000 (12:49 +0100)]
sfc: Serialise tenxpress_special_reset() with statistics fetches

On some boards 10Xpress feeds a 156 MHz clock to the Falcon XMAC.  MAC
statistics DMA can fail while this clock is stopped during a PHY reset.

From: Steve Hodgson <shodgson@solarflare.com>
Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agosfc: Remove workaround for old firmware bug
Ben Hutchings [Mon, 1 Sep 2008 11:49:20 +0000 (12:49 +0100)]
sfc: Remove workaround for old firmware bug

There was a bug in XAUI synchronisation in early 10Xpress firmware
versions.  This is fixed in released firmware and we do not need to
work around it.

Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agosfc: Fix memory BAR release call on error path
Ben Hutchings [Mon, 1 Sep 2008 11:49:15 +0000 (12:49 +0100)]
sfc: Fix memory BAR release call on error path

Match pci_request_region() with pci_release_region(), not
release_mem_region().

From: Steve Hodgson <shodgson@solarflare.com>
Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agosfc: Add check for memory allocation failure in falcon_probe_nic()
Ben Hutchings [Wed, 3 Sep 2008 14:07:50 +0000 (15:07 +0100)]
sfc: Add check for memory allocation failure in falcon_probe_nic()

Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agonetfilter: ip6t_{hbh,dst}: Rejects not-strict mode on rule insertion
Yasuyuki Kozakai [Wed, 24 Sep 2008 22:53:39 +0000 (15:53 -0700)]
netfilter: ip6t_{hbh,dst}: Rejects not-strict mode on rule insertion

The current code ignores rules for internal options in HBH/DST options
header in packet processing if 'Not strict' mode is specified (which is not
implemented). Clearly it is not expected by user.

Kernel should reject HBH/DST rule insertion with 'Not strict' mode
in the first place.

Signed-off-by: Yasuyuki Kozakai <yasuyuki.kozakai@toshiba.co.jp>
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago8139too: [cosmetic] fix incorrect register for flash-rom
Mats Erik Andersson [Wed, 16 Jul 2008 23:05:43 +0000 (01:05 +0200)]
8139too: [cosmetic] fix incorrect register for flash-rom

I would like to submit a correction to the driver

     drivers/net/8139too.c,

which in no way changes the compiled driver, but does change
the value of a previously incorrect value for the configuration
register address of Flash PROM on the network processor rtl8139C.
This corrected value is in accordance with the datasheet
for rtl8139C, and in addition this new value is indeed used
in other functional drivers that use this adapter for
programming a Flash memory chip in situ. But as said,
the two new constants are never referenced in the driver
maintained by you: they are only informational and correct!

Mats Erik Andersson, meand@users.sourceforge.net

Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agos2io: Fix enabling VLAN tag stripping at driver initialization
Breno Leitao [Thu, 4 Sep 2008 20:52:54 +0000 (17:52 -0300)]
s2io: Fix enabling VLAN tag stripping at driver initialization

VLAN doesn't work except if you'd opened the interface in promiscuous
mode before.  This happens because VLAN tag stripping is not correctly
marked as enabled at device startup

Also, the vlan_strip_flag field was moved to the private network
structure.

Signed-off-by: Breno Leitao <leitao@linux.vnet.ibm.com>
Signed-off-by: Jay Vosburgh <fubar@us.ibm.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agocs89x0: fix warning release_irq label
Yoichi Yuasa [Mon, 25 Aug 2008 14:37:36 +0000 (23:37 +0900)]
cs89x0: fix warning release_irq label

release_irq label is only used when ALLOW_DMA is defined.

drivers/net/cs89x0.c: In function 'net_open':
drivers/net/cs89x0.c:1401: warning: label 'release_irq' defined but not used

Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years ago[netdrvr/usb] hso_create_bulk_serial_device(): fix a double free
Adrian Bunk [Wed, 27 Aug 2008 22:02:37 +0000 (01:02 +0300)]
[netdrvr/usb] hso_create_bulk_serial_device(): fix a double free

hso_serial_common_free() mustn't be called if
hso_serial_common_create() fails.

Reported-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agowan/hdlc_x25.c: fix a NULL dereference
Krzysztof Halasa [Wed, 3 Sep 2008 16:21:56 +0000 (18:21 +0200)]
wan/hdlc_x25.c: fix a NULL dereference

WAN: fixes a NULL dereference in hdlc_x25.

Reported-by: Adrian Bunk <bunk@kernel.org>.
Signed-off-by: Krzysztof Halasa <khc@pm.waw.pl>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agobonding: Do not tx-balance some IPv6 packets on ALB/TLB bonds
Vlad Yasevich [Thu, 28 Aug 2008 19:38:41 +0000 (15:38 -0400)]
bonding: Do not tx-balance some IPv6 packets on ALB/TLB bonds

IPv6 all-node-multicasts and DAD probes should not be tx-balanced
on ALB/TLB bonds.  The all-node-multicast is an equivalent to IPv4
broadcasts.  DAD probes have to be sent only on the primary so that
we don't get false-positive detections.

Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years ago[netdrvr] atl1e: Don't take the mdio_lock in atl1e_probe
Matthew Wilcox [Tue, 12 Aug 2008 13:13:14 +0000 (07:13 -0600)]
[netdrvr] atl1e: Don't take the mdio_lock in atl1e_probe

Lockdep warns about the mdio_lock taken with interrupts enabled then later
taken from interrupt context.  Initially, I considered changing these
to spin_lock_irq/spin_unlock_irq, but then I looked at atl1e_phy_init()
and saw that it calls msleep().  Sleeping while holding a spinlock is
not allowed either.

In the probe path, we haven't registered the interrupt handler, so
it can't poke at this card yet.  It's before we call register_netdev(),
so I don't think any other threads can reach this card either.  If I'm
right, we don't need a spinlock at all.

Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agoehea: Fix DLPAR memory handling
Hannes Hering [Fri, 5 Sep 2008 14:36:26 +0000 (16:36 +0200)]
ehea: Fix DLPAR memory handling

The ehea busmap must be allocated only once in the first of many calls of the
ehea_create_busmap_callback.

Signed-off-by: Hannes Hering <hering2@de.ibm.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years ago[netdrvr] ne: Fix suspend and resume for ISA PnP cards.
David Fries [Tue, 9 Sep 2008 03:01:14 +0000 (22:01 -0500)]
[netdrvr] ne: Fix suspend and resume for ISA PnP cards.

A call to pnp_stop_dev and pnp_start_dev now shuts down and
initializes plug and play devices for suspend and resume.

Signed-off-by: David Fries <david@fries.net>
Cc: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Cc: Paul Gortmaker <p_gortmaker@yahoo.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years ago[netdrvr] au1000_eth: Spinlock initialisation fix
Martin Gebert [Wed, 23 Jul 2008 07:40:09 +0000 (09:40 +0200)]
[netdrvr] au1000_eth: Spinlock initialisation fix

Seems like the spinlock for the AU1x00 ethernet device is initialised too
late, as it is already used in enable_mac(), which is called via
mii_probe() before the init takes place.

The attached patch is working here for a Linux Au1100 2.6.22.6 kernel,
and as far as I checked should also be applicable to the current head
(just line numbers differ).

Signed-off-by: Martin Gebert <Martin.Gebert@alpha-bit.de>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agoMAINTAINERS: add Atheros maintainer for atlx
Chris Snook [Tue, 9 Sep 2008 07:26:57 +0000 (03:26 -0400)]
MAINTAINERS: add Atheros maintainer for atlx

Jie Yang at Atheros is getting more directly involved with upstream work on the
atl* drivers.  This patch changes the ATL1 entry to ATLX (atl2 support posted
to netdev today) and adds him as a maintainer.

Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agodrivers/net/mlx4/alloc.c needs mm.h
Andrew Morton [Fri, 5 Sep 2008 21:04:07 +0000 (14:04 -0700)]
drivers/net/mlx4/alloc.c needs mm.h

sparc32 allmodconfig with linux-next:

drivers/net/mlx4/alloc.c: In function 'mlx4_buf_alloc':
drivers/net/mlx4/alloc.c:164: error: 'PAGE_KERNEL' undeclared (first use in this function)
drivers/net/mlx4/alloc.c:164: error: (Each undeclared identifier is reported only once
drivers/net/mlx4/alloc.c:164: error: for each function it appears in.)

this is due to some header shuffle in linux-next.  I didn't look to see what
it was.  I'd sugges that this patch be merged ahead of a linux-next merge to
avoid bisection breaks.

We strictly only need asm/pgtable.h, but going direct to asm includes always
seems grubby.

Cc: Jeff Garzik <jeff@garzik.org>
Cc: "David S. Miller" <davem@davemloft.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agodrivers/net/skfp/pmf.c: Use offsetof() macro
Takashi Iwai [Fri, 5 Sep 2008 21:04:04 +0000 (14:04 -0700)]
drivers/net/skfp/pmf.c: Use offsetof() macro

Self-baked macros cause bunch of compile warnings like below:

  CC [M]  drivers/net/skfp/pmf.o
  CC      net/ipv4/fib_semantics.o
drivers/net/skfp/pmf.c:86: warning: cast from pointer to integer of different size
drivers/net/skfp/pmf.c:87: warning: cast from pointer to integer of different size
...

Use the standard offsetof() macro instead.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Acked-by: Alan Cox <alan@redhat.com>
Cc: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agosmc91x: SMC_IO_SHIFT platform data support for default case
Magnus Damm [Mon, 8 Sep 2008 05:02:34 +0000 (14:02 +0900)]
smc91x: SMC_IO_SHIFT platform data support for default case

Commit 159198862adad7109bb347bb30a620f67beac45f added SMC_IO_SHIFT
platform data support. After that ARM board support was added.

The default case is still missing though, so on SuperH SMC_IO_SHIFT
is constantly zero regardless of what you pass as platform data.

Signed-off-by: Magnus Damm <damm@igel.co.jp>
Test-by: Luca Santini <luca.santini@spesonline.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agosmc91x: fix nowait printout
Magnus Damm [Mon, 8 Sep 2008 05:02:56 +0000 (14:02 +0900)]
smc91x: fix nowait printout

Commit c4f0e76747e80578a8f7fddd82fd0ce8127bd2f8 added nowait platform
data support. The printout code was however not updated, so the value
of SMC_NOWAIT is still used. This patch makes sure that nowait is printed
accordingly to platform data.

Signed-off-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agor8169: fix RxMissed register access
Francois Romieu [Wed, 10 Sep 2008 20:28:56 +0000 (22:28 +0200)]
r8169: fix RxMissed register access

- the register is defined for the 8169 chipset only and there is
  no 8169 beyond RTL_GIGA_MAC_VER_06.
- only the lower 3 bytes of the register are valid

Fixes:
1. http://bugzilla.kernel.org/show_bug.cgi?id=10180
2. http://bugzilla.kernel.org/show_bug.cgi?id=11062 (bits of)

Tested by Hermann Gausterer and Adam Huffman.

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Cc: Edward Hsu <edward_hsu@realtek.com.tw>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agoehea: fix phyp debugging typo
Sebastien Dugue [Thu, 11 Sep 2008 13:34:39 +0000 (15:34 +0200)]
ehea: fix phyp debugging typo

  Fix typo in ehea_h_query_ehea() which prevents building when DEBUG is on.

Signed-off-by: Sebastien Dugue <sebastien.dugue@bull.net>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agotulip: Fix dead 21041 ethernet after ifconfig down
Thomas Bogendoerfer [Sat, 13 Sep 2008 19:06:42 +0000 (15:06 -0400)]
tulip: Fix dead 21041 ethernet after ifconfig down

The de2104x did a pci_disable_device() in it's close function, but
the open function never does a pci_enable_device() and assumes that
the device is already enabled. Considering that downing the interface
is just a temporary thing the pci_disable_device() isn't a pretty good
idea and removing it from the close function just fixes the bug.

Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Acked-by: Grant Grundler <grundler@parisc-linux.org>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh...
Linus Torvalds [Wed, 24 Sep 2008 22:33:50 +0000 (15:33 -0700)]
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs:
  9p: fix put_data error handling
  9p: use an IS_ERR test rather than a NULL test
  9p: introduce missing kfree
  9p-trans_fd: fix and clean up module init/exit paths
  9p-trans_fd: don't do fs segment mangling in p9_fd_poll()
  9p-trans_fd: clean up p9_conn_create()
  9p-trans_fd: fix trans_fd::p9_conn_destroy()
  9p: implement proper trans module refcounting and unregistration

17 years agoPOWERPC: Allow 32-bit hashed pgtable code to support 36-bit physical
Becky Bruce [Wed, 24 Sep 2008 16:01:24 +0000 (11:01 -0500)]
POWERPC: Allow 32-bit hashed pgtable code to support 36-bit physical

This rearranges a bit of code, and adds support for
36-bit physical addressing for configs that use a
hashed page table.  The 36b physical support is not
enabled by default on any config - it must be
explicitly enabled via the config system.

This patch *only* expands the page table code to accomodate
large physical addresses on 32-bit systems and enables the
PHYS_64BIT config option for 86xx.  It does *not*
allow you to boot a board with more than about 3.5GB of
RAM - for that, SWIOTLB support is also required (and
coming soon).

Signed-off-by: Becky Bruce <becky.bruce@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
17 years agopowerpc/mm: Implement _PAGE_SPECIAL & pte_special() for 32-bit
Kumar Gala [Thu, 31 Jul 2008 13:41:10 +0000 (08:41 -0500)]
powerpc/mm: Implement _PAGE_SPECIAL & pte_special() for 32-bit

Implement _PAGE_SPECIAL and pte_special() for 32-bit powerpc. This bit will
be used by the fast get_user_pages() to differenciate PTEs that correspond
to a valid struct page from special mappings that don't such as IO mappings
obtained via io_remap_pfn_ranges().

We currently only implement this on sub-arch that support SMP or will so
in the future (6xx, 44x, FSL-BookE) and not (8xx, 40x).

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
17 years agopowerpc: Fixes for CONFIG_PTE_64BIT for SMP support
Kumar Gala [Wed, 16 Jul 2008 20:54:21 +0000 (15:54 -0500)]
powerpc: Fixes for CONFIG_PTE_64BIT for SMP support

There are some minor issues with support 64-bit PTEs on a 32-bit processor
when dealing with SMP.

* We need to order the stores in set_pte_at to make sure the flag word
  is set second.
* Change pte_clear to use pte_update so only the flag word is cleared
* Added a WARN_ON to set_pte_at to ensure the pte isn't present for
  the 64-bit pte/SMP case (to ensure our assumption of this fact).

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Acked-by: Becky Bruce <becky.bruce@freescale.com>
17 years agopowerpc: Introduce local (non-broadcast) forms of tlb invalidates
Kumar Gala [Tue, 15 Jul 2008 21:12:25 +0000 (16:12 -0500)]
powerpc: Introduce local (non-broadcast) forms of tlb invalidates

Introduced a new set of low level tlb invalidate functions that do not
broadcast invalidates on the bus:

_tlbil_all - invalidate all
_tlbil_pid - invalidate based on process id (or mm context)
_tlbil_va  - invalidate based on virtual address (ea + pid)

On non-SMP configs _tlbil_all should be functionally equivalent to _tlbia and
_tlbil_va should be functionally equivalent to _tlbie.

The intent of this change is to handle SMP based invalidates via IPIs instead
of broadcasts as the mechanism scales better for larger number of cores.

On e500 (fsl-booke mmu) based cores move to using MMUCSR for invalidate alls
and tlbsx/tlbwe for invalidate virtual address.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
17 years agopowerpc: Make dma_addr_t a u64 if CONFIG_PHYS_64BIT is set
Becky Bruce [Fri, 12 Sep 2008 10:53:43 +0000 (10:53 +0000)]
powerpc: Make dma_addr_t a u64 if CONFIG_PHYS_64BIT is set

Signed-off-by: Becky Bruce <becky.bruce@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
17 years agopowerpc: Merge 32 and 64-bit dma code
Becky Bruce [Fri, 12 Sep 2008 10:34:46 +0000 (10:34 +0000)]
powerpc: Merge 32 and 64-bit dma code

We essentially adopt the 64-bit dma code, with some changes to support
32-bit systems, including HIGHMEM.  dma functions on 32-bit are now
invoked via accessor functions which call the correct op for a device based
on archdata dma_ops.  If there is no archdata dma_ops, this defaults
to dma_direct_ops.

In addition, the dma_map/unmap_page functions are added to dma_ops
because we can't just fall back on map/unmap_single when HIGHMEM is
enabled. In the case of dma_direct_*, we stop using map/unmap_single
and just use the page version - this saves a lot of ugly
ifdeffing.  We leave map/unmap_single in the dma_ops definition,
though, because they are needed by the iommu code, which does not
implement map/unmap_page.  Ideally, going forward, we will completely
eliminate map/unmap_single and just have map/unmap_page, if it's
workable for 64-bit.

Signed-off-by: Becky Bruce <becky.bruce@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
17 years agopowerpc: Drop archdata numa_node
Becky Bruce [Mon, 8 Sep 2008 09:09:54 +0000 (09:09 +0000)]
powerpc: Drop archdata numa_node

Use the struct device's numa_node instead; use accessor functions
to get/set numa_node.

Signed-off-by: Becky Bruce <becky.bruce@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
17 years agopowerpc: Move iommu dma ops from dma.c to dma-iommu.c
Becky Bruce [Mon, 8 Sep 2008 09:09:53 +0000 (09:09 +0000)]
powerpc: Move iommu dma ops from dma.c to dma-iommu.c

32-bit platforms are about to start using dma.c; move the iommu
dma ops into their own file to make this a bit cleaner.

Signed-off-by: Becky Bruce <becky.bruce@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
17 years agopowerpc: Rename dma_64.c to dma.c
Becky Bruce [Mon, 8 Sep 2008 09:09:52 +0000 (09:09 +0000)]
powerpc: Rename dma_64.c to dma.c

This is in preparation for the merge of the 32 and 64-bit
dma code in arch/powerpc.

Signed-off-by: Becky Bruce <becky.bruce@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
17 years ago9p: fix put_data error handling
Eric Van Hensbergen [Wed, 24 Sep 2008 21:22:22 +0000 (16:22 -0500)]
9p: fix put_data error handling

Abhishek Kulkarni pointed out an inconsistency in the way
errors are returned from p9_put_data.  On deeper exploration it
seems the error handling for this path was completely wrong.
This patch adds checks for allocation problems and propagates
errors correctly.

Signed-off-by: Eric Van Hensbergen <ericvh@gmail.com>
17 years ago9p: use an IS_ERR test rather than a NULL test
Julien Brunel [Wed, 24 Sep 2008 21:22:22 +0000 (16:22 -0500)]
9p: use an IS_ERR test rather than a NULL test

In case of error, the function p9_client_walk returns an ERR pointer, but
never returns a NULL pointer.  So a NULL test that comes after an IS_ERR
test should be deleted.

The semantic match that finds this problem is as follows:
(http://www.emn.fr/x-info/coccinelle/)

// <smpl>
@match_bad_null_test@
expression x, E;
statement S1,S2;
@@
x = p9_client_walk(...)
... when != x = E
*  if (x != NULL)
S1 else S2
// </smpl>

Signed-off-by: Julien Brunel <brunel@diku.dk>
Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Eric Van Hensbergen <ericvh@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
17 years ago9p: introduce missing kfree
Julia Lawall [Wed, 24 Sep 2008 21:22:22 +0000 (16:22 -0500)]
9p: introduce missing kfree

Error handling code following a kmalloc should free the allocated data.

The semantic match that finds the problem is as follows:
(http://www.emn.fr/x-info/coccinelle/)

// <smpl>
@r exists@
local idexpression x;
statement S;
expression E;
identifier f,l;
position p1,p2;
expression *ptr != NULL;
@@

(
if ((x@p1 = \(kmalloc\|kzalloc\|kcalloc\)(...)) == NULL) S
|
x@p1 = \(kmalloc\|kzalloc\|kcalloc\)(...);
...
if (x == NULL) S
)
<... when != x
     when != if (...) { <+...x...+> }
x->f = E
...>
(
 return \(0\|<+...x...+>\|ptr\);
|
 return@p2 ...;
)

@script:python@
p1 << r.p1;
p2 << r.p2;
@@

print "* file: %s kmalloc %s return %s" % (p1[0].file,p1[0].line,p2[0].line)
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Eric Van Hensbergen <ericvh@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
17 years ago9p-trans_fd: fix and clean up module init/exit paths
Tejun Heo [Wed, 24 Sep 2008 21:22:23 +0000 (16:22 -0500)]
9p-trans_fd: fix and clean up module init/exit paths

trans_fd leaked p9_mux_wq on module unload.  Fix it.  While at it,
collapse p9_mux_global_init() into p9_trans_fd_init().  It's easier to
follow this way and the global poll_tasks array is about to removed
anyway.

Signed-off-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Eric Van Hensbergen <ericvh@gmail.com>
17 years ago9p-trans_fd: don't do fs segment mangling in p9_fd_poll()
Tejun Heo [Wed, 24 Sep 2008 21:22:23 +0000 (16:22 -0500)]
9p-trans_fd: don't do fs segment mangling in p9_fd_poll()

p9_fd_poll() is never called with user pointers and f_op->poll()
doesn't expect its arguments to be from userland.  There's no need to
set kernel ds before calling f_op->poll() from p9_fd_poll().  Remove
it.

Signed-off-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Eric Van Hensbergen <ericvh@gmail.com>
17 years ago9p-trans_fd: clean up p9_conn_create()
Tejun Heo [Wed, 24 Sep 2008 21:22:23 +0000 (16:22 -0500)]
9p-trans_fd: clean up p9_conn_create()

* Use kzalloc() to allocate p9_conn and remove 0/NULL initializations.

* Clean up error return paths.

Signed-off-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Eric Van Hensbergen <ericvh@gmail.com>
17 years ago9p-trans_fd: fix trans_fd::p9_conn_destroy()
Tejun Heo [Wed, 24 Sep 2008 21:22:23 +0000 (16:22 -0500)]
9p-trans_fd: fix trans_fd::p9_conn_destroy()

p9_conn_destroy() first kills all current requests by calling
p9_conn_cancel(), then waits for the request list to be cleared by
waiting on p9_conn->equeue.  After that, polling is stopped and the
trans is destroyed.  This sequence has a few problems.

* Read and write works were never cancelled and the p9_conn can be
  destroyed while the works are running as r/w works remove requests
  from the list and dereference the p9_conn from them.

* The list emptiness wait using p9_conn->equeue wouldn't trigger
  because p9_conn_cancel() always clears all the lists and the only
  way the wait can be triggered is to have another task to issue a
  request between the slim window between p9_conn_cancel() and the
  wait, which isn't safe under the current implementation with or
  without the wait.

This patch fixes the problem by first stopping poll, which can
schedule r/w works, first and cancle r/w works which guarantees that
r/w works are not and will not run from that point and then calling
p9_conn_cancel() and do the rest of destruction.

Signed-off-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Eric Van Hensbergen <ericvh@gmail.com>
17 years ago9p: implement proper trans module refcounting and unregistration
Tejun Heo [Wed, 24 Sep 2008 21:22:23 +0000 (16:22 -0500)]
9p: implement proper trans module refcounting and unregistration

9p trans modules aren't refcounted nor were they unregistered
properly.  Fix it.

* Add 9p_trans_module->owner and reference the module on each trans
  instance creation and put it on destruction.

* Protect v9fs_trans_list with a spinlock.  This isn't strictly
  necessary as the list is manipulated only during module loading /
  unloading but it's a good idea to make the API safe.

* Unregister trans modules when the corresponding module is being
  unloaded.

* While at it, kill unnecessary EXPORT_SYMBOL on p9_trans_fd_init().

Signed-off-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Eric Van Hensbergen <ericvh@gmail.com>
17 years agocifs: explicitly revoke SPNEGO key after session setup
Jeff Layton [Wed, 24 Sep 2008 15:32:59 +0000 (11:32 -0400)]
cifs: explicitly revoke SPNEGO key after session setup

cifs: explicitly revoke SPNEGO key after session setup

The SPNEGO blob returned by an upcall can only be used once. Explicitly
revoke it to make sure that we never pick it up again after session
setup exits.

This doesn't seem to be that big an issue on more recent kernels, but
older kernels seem to link keys into the session keyring by default.
That said, explicitly revoking the key seems like a reasonable thing
to do here.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
17 years agoiwlwifi: don't fail if scan is issued too early
Tomas Winkler [Wed, 24 Sep 2008 05:57:46 +0000 (13:57 +0800)]
iwlwifi: don't fail if scan is issued too early

This patch returns success and empty scan on scans requests that were
rejected because issued too early. The cached bss list from previous
scanning will be returned by mac80211.

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoiwlagn: downgrade BUG_ON in interrupt
Johannes Berg [Tue, 23 Sep 2008 17:18:43 +0000 (19:18 +0200)]
iwlagn: downgrade BUG_ON in interrupt

This BUG_ON really shouldn't trigger, but if it does, as on my machine,
it leaves you wondering what happened because you won't see it. Let's
instead leak a bit of state and memory and at least make it possible to
report it to the kerneloops project to track it.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agopcmcia: Fix up legacy driver IRQs
Alan Cox [Tue, 23 Sep 2008 12:53:09 +0000 (13:53 +0100)]
pcmcia: Fix up legacy driver IRQs

The PCMCIA layer obsoleted asking for per device private IRQS some years
ago and all the drivers by inspection correctly use dev_id and handle
shared interrupts [they get em anyway in most PCI bridged PCMCIA/Cardbus]
so can be adjusted.

This gets rid of the various bugs reported where there is spewage about
conflicting irq types and sometimes the driver won't load.

(Note I don't have all of these devices to test each one beyond by inspection)

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agowireless: a global static to local static improvement
Denis ChengRq [Mon, 22 Sep 2008 18:35:37 +0000 (02:35 +0800)]
wireless: a global static to local static improvement

There are two improvements in this simple patch:
1. wiphy_counter is a static var only used in one function, so
   can use local static instead of global static;
2. wiphy_counter wrap handling killed one comparision;

Signed-off-by: Denis ChengRq <crquan@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agort2x00: Fix HW crypto key handling
Ivo van Doorn [Mon, 22 Sep 2008 17:40:04 +0000 (19:40 +0200)]
rt2x00: Fix HW crypto key handling

When a crypto key is being removed, rt2x00mac should not
reset the key->hw_key_idx value because that will prevent
the driver from removing the correct key from the hardware.

Furthermore ffz() starts counting at 0 instead of 1, so we don't
need to substract 1 from the resulting value.

Signed-off-by: Stephen Blackheath <tramp.enshrine.stephen@blacksapphire.com>
Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agomac80211: fix led behavior in IBSS
Emmanuel Grumbach [Mon, 22 Sep 2008 14:10:10 +0000 (17:10 +0300)]
mac80211: fix led behavior in IBSS

This patch fixes the led behavior in IBSS. After we joined an IBSS cell we
need to inform the led that we got associated. Although there is no 802.11
association in IBSS mode, the semantic of "There is a link" is relevant.
This allows the led to blink in IBSS mode (at least this solves a bug for
iwlwifi).

Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Reviewed-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoath9k: Add a few comments about mibevents
Luis R. Rodriguez [Mon, 22 Sep 2008 08:14:02 +0000 (01:14 -0700)]
ath9k: Add a few comments about mibevents

Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agomac80211: probe with correct SSID
Johannes Berg [Fri, 19 Sep 2008 03:10:34 +0000 (05:10 +0200)]
mac80211: probe with correct SSID

While associated, we should probe with the SSID we're associated to,
not the scan SSID.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Acked-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agomac80211: clean up rate control API
Johannes Berg [Thu, 18 Sep 2008 16:14:18 +0000 (18:14 +0200)]
mac80211: clean up rate control API

Long awaited, hard work. This patch totally cleans up the rate control
API to remove the requirement to include internal headers outside of
net/mac80211/.

There's one internal use in the PID algorithm left for mesh networking,
we'll have to figure out a way to clean that one up and decide how to
do the peer link evaluation, possibly independent of the rate control
algorithm or via new API.

Additionally, ath9k is left using the cross-inclusion hack for now, we
will add new API where necessary to make this work properly, but right
now I'm not expert enough to do it. It's still off better than before.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agomac80211: fix mesh action frame handling
Johannes Berg [Thu, 18 Sep 2008 10:24:20 +0000 (12:24 +0200)]
mac80211: fix mesh action frame handling

When I split off the action frame handling I made the code drop
all action frames we don't want to handle. This is wrong since
some action frames are actually handled via rx_h_mgmt through
being queued to the sta/mesh implementations.

Thanks to Li YanBo for noticing the problem.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Cc: Li YanBo <dreamfly281@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agomac80211: mesh portal functionality support
YanBo [Mon, 22 Sep 2008 05:30:32 +0000 (13:30 +0800)]
mac80211: mesh portal functionality support

Currently the mesh code doesn't support bridging mesh point interfaces
with wired ethernet or AP to construct an MPP or MAP. This patch adds
code to support the "6 address frame format packet" functionality to
mesh point interfaces. Now the mesh network can be used as backhaul
for end to end communication.

Signed-off-by: Li YanBo <dreamfly281@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoath9k: Fix TSF Adjust usage
Sujith [Wed, 17 Sep 2008 04:46:07 +0000 (10:16 +0530)]
ath9k: Fix TSF Adjust usage

TSF adjust is needed only for AP mode when staggered beacons
are used. Since we support only a single interface in IBSS mode,
disable setting the TSF adjust register.

Signed-off-by: Sujith <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoath9k: Fix nexttbtt calculation
Sujith [Wed, 17 Sep 2008 04:45:36 +0000 (10:15 +0530)]
ath9k: Fix nexttbtt calculation

nexttbtt has to be obtained from the timestamp of the beacon
obtained from mac80211. Fix this.
And <asm/unaligned.h> is not needed anymore.

Signed-off-by: Sujith <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoath9k: Whitespace cleanup
Sujith [Wed, 17 Sep 2008 04:45:09 +0000 (10:15 +0530)]
ath9k: Whitespace cleanup

Also, remove comments that are not relevant anymore.

Signed-off-by: Sujith <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoiwlwifi: remove HT flags from RXON when not in HT anymore
Emmanuel Grumbach [Wed, 17 Sep 2008 02:10:05 +0000 (10:10 +0800)]
iwlwifi: remove HT flags from RXON when not in HT anymore

This patch removes the HT flags from RXON when moving from HT to legacy.
This avoids keeping those flags set and possibly miss configuring firmware.

If we are configured in HT, fat channel: channel 1 above, and move later
to legacy channel 11, we need to clear the FAT channel control flags in
RXON. If we don't, the firmware will understand this as channel 11 above
which is not possible due to regulatory constraints, leading to firmware
crash.

Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Reviewed-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agolibertas: Reduce the WPA key installation time (fixups)
Javier Cardona [Wed, 17 Sep 2008 01:08:39 +0000 (18:08 -0700)]
libertas: Reduce the WPA key installation time (fixups)

This patch addresses comments from Dan Williams about the patch
committed as "libertas: Reduce the WPA key installation time."

Signed-off-by: Javier Cardona <javier@cozybit.com>
Acked-by: Dan Williams <dcbw@redhat.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoath5k: Fix bad udelay calls on AR5210 code
Nick Kossifidis [Wed, 17 Sep 2008 00:33:19 +0000 (03:33 +0300)]
ath5k: Fix bad udelay calls on AR5210 code

 * Fix bad udelay calls (using > 2000us) in AR5210 code and clean up
 some bits on nic_reset (AR5210 support is still in bad shape)

 Changes-licensed-under: ISC
Signed-off-by: Nick Kossifidis <mickflemm@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agocfg80211: reject invalid configuration items
Johannes Berg [Tue, 16 Sep 2008 18:39:36 +0000 (20:39 +0200)]
cfg80211: reject invalid configuration items

Reject configuring mesh-id for non-mesh, monitor flags for non-monitor.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agomac80211: allow interface settings changes only when down
Johannes Berg [Tue, 16 Sep 2008 18:22:21 +0000 (20:22 +0200)]
mac80211: allow interface settings changes only when down

We currently allow monitor flags changes and mesh ID changes when
the interface is up, which can lead to trouble. Change it to only
allow when down.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agocfg80211: allow set_interface without type
Johannes Berg [Tue, 16 Sep 2008 18:22:09 +0000 (20:22 +0200)]
cfg80211: allow set_interface without type

Which then causes no type change.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agocfg80211: show interface type
Johannes Berg [Tue, 16 Sep 2008 12:55:09 +0000 (14:55 +0200)]
cfg80211: show interface type

This patch makes cfg80211 show the interface in the nl80211
information about a specific interface. API users are required
to keep the type updated (everything else is fairly complicated)
but you will get a warning if you fail to keep it updated.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agomac80211: make master iface not wireless
Johannes Berg [Tue, 16 Sep 2008 12:18:59 +0000 (14:18 +0200)]
mac80211: make master iface not wireless

There's no need to register the master netdev with cfg80211,
in fact, this is quite dangerous and lead to having to add
checks for the master interface all over the config handlers.
This patch removes the "ieee80211_ptr" from the master iface
in favour of having a small netdev_priv() associated with
the master interface that stores the ieee80211_local pointer.
Because of this, a lot of code in the configuration handlers
can go away. To make this patch easier to verify I have also
removed a number of wiphy_priv() calls in favour of getting
the sdata first and then the local pointer from that.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoiwlwifi: make PS use named constants
Tomas Winkler [Tue, 16 Sep 2008 06:01:04 +0000 (14:01 +0800)]
iwlwifi: make PS use named constants

This patch adds named constants for configuring MIMO power save
chain settings.

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoiwlwifi: don't delay scan in IBSS mode
Tomas Winkler [Tue, 16 Sep 2008 06:01:03 +0000 (14:01 +0800)]
iwlwifi: don't delay scan in IBSS mode

Scan need to be delayed only after association to allow EAPOL
exchange. We don't need the delay for IBSS mode.

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agob43: Issue warning when RFKILL_INPUT is not enabled
Larry Finger [Tue, 16 Sep 2008 19:56:49 +0000 (14:56 -0500)]
b43: Issue warning when RFKILL_INPUT is not enabled

If the system is misconfigured with CONFIG_RFKILL set but CONFIG_RFKILL_INPUT
not set, the built-in radio LEDs will not work. In the current code, no warning
is issued.

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agocfg80211: fix code ordering in header file
Johannes Berg [Mon, 15 Sep 2008 11:11:19 +0000 (13:11 +0200)]
cfg80211: fix code ordering in header file

Luis added the regulatory hint stuff to this file without
observing that __ieee80211_get_channel and ieee80211_get_channel
really belong together.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agocfg80211: clean up static regdomain mess
Johannes Berg [Mon, 15 Sep 2008 09:26:47 +0000 (11:26 +0200)]
cfg80211: clean up static regdomain mess

The statically defined regdomains are used in a very convoluted
way, use them instead to prime the information we have and then
continue operating normally.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agocfg80211: fix regulatory code const
Johannes Berg [Mon, 15 Sep 2008 09:10:52 +0000 (11:10 +0200)]
cfg80211: fix regulatory code const

A few pointers and structures in the regulatory code are const,
but because it wasn't done properly a whole bunch of bogus
casts were needed to compile without warning. Mark everything
const properly to avoid that kind of junk code.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agocfg80211: clean up regulatory mess
Johannes Berg [Mon, 15 Sep 2008 08:56:48 +0000 (10:56 +0200)]
cfg80211: clean up regulatory mess

The recent code from Luis is an #ifdef hell and contains lots of
code that's stuffed into the wrong file making a whole bunch of
things needlessly non-static, and besides, what is it doing in
core.c??

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agocfg80211: fix static regdomains
Johannes Berg [Mon, 15 Sep 2008 08:30:34 +0000 (10:30 +0200)]
cfg80211: fix static regdomains

When Luis added the static regdomains back he used +/-20
of the centre frequencies to account for 40MHz bandwidth
neglecting the fact that 40MHz bandwidth cannot be used
on the channels close to the allowed band edges.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agowireless: Read scan flags correctly on x86-64
David Kilroy [Sat, 13 Sep 2008 11:22:05 +0000 (12:22 +0100)]
wireless: Read scan flags correctly on x86-64

The SIOCSIWSCAN handler is passed data in an iw_point structure. Some
drivers erronously use an iw_param instead.

On 32 bit architectures the difference isn't noticed as the flags
parameter tends to be the only one used by scan handlers and is at the
same offset.

On 64 bit architectures the pointer in the iw_point structure means the
flag parameter is at different offsets in these structures.

Thanks to Jean Tourrilhes for tracking this down for orinoco, and Pavel
Roskin for confirming the fix and identifying other suspect handlers.

Signed-off-by: David Kilroy <kilroyd@googlemail.com>
Acked-by: Pavel Roskin <proski@gnu.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoath9k: disable MIB interrupts to fix interrupt storm
Luis R. Rodriguez [Tue, 23 Sep 2008 21:28:16 +0000 (14:28 -0700)]
ath9k: disable MIB interrupts to fix interrupt storm

Enabling the MIB interrupts has proven to cause an
interrupt storm after 7 hours of run. We will make use of the
MIB interrupt once we have ANI supported added so for now
to cure this we disable the interrupt.

The interrupt storm can be seen as follows after 7 hours of run
as reported by  Steven Noonan <steven@uplinklabs.net>:

18:28:38          sum   1106.00
18:28:39          sum   1037.62
18:28:40          sum   1069.00
18:28:41          sum   1167.00
18:28:42          sum   1155.00
18:28:43          sum   1339.00
18:28:44          sum  18355.00
18:28:45          sum  17845.45
18:28:46          sum  15285.00
18:28:47          sum  17511.00
18:28:48          sum  17568.69
18:28:49          sum  17704.04
18:28:50          sum  18566.67
18:28:51          sum  18913.13

at 18:28:44 the MIB interrupt kicked off and caused huge
latency which can be seen even on a video he submitted:

http://www.youtube.com/watch?v=4GeCx1gZMpA

Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>