pandora-kernel.git
18 years ago[PATCH] PCI: Reduce nr of ptr derefs in drivers/pci/hotplug/pciehprm_acpi.c
Jesper Juhl [Sun, 11 Dec 2005 05:43:09 +0000 (06:43 +0100)]
[PATCH] PCI: Reduce nr of ptr derefs in drivers/pci/hotplug/pciehprm_acpi.c

Here's a small patch to reduce the nr. of pointer dereferences in
drivers/pci/hotplug/pciehprm_acpi.c

Benefits:
 - micro speed optimization due to fewer pointer derefs
 - generated code is slightly smaller
 - better readability

Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] PCI: Reduce nr of ptr derefs in drivers/pci/hotplug/rpaphp_pci.c
Jesper Juhl [Sun, 11 Dec 2005 05:42:38 +0000 (06:42 +0100)]
[PATCH] PCI: Reduce nr of ptr derefs in drivers/pci/hotplug/rpaphp_pci.c

Here's a small patch to reduce the nr. of pointer dereferences in
drivers/pci/hotplug/rpaphp_pci.c

Benefits:
 - micro speed optimization due to fewer pointer derefs
 - generated code should be slightly smaller
 - better readability

note: due to lack of both hardware and cross-compile tools this patch is,
      unfortunately, completely untested.

Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] PCI: Reduce nr of ptr derefs in drivers/pci/hotplug/cpqphp_core.c
Jesper Juhl [Sun, 11 Dec 2005 05:42:18 +0000 (06:42 +0100)]
[PATCH] PCI: Reduce nr of ptr derefs in drivers/pci/hotplug/cpqphp_core.c

Here's a small patch to reduce the nr of pointer dereferences in
drivers/pci/hotplug/cpqphp_core.c

Benefits of this patch:
 - micro speed optimization due to fewer pointer derefs
 - generated code is slightly smaller
 - tiny line length and whitespace cleanup
 - better readability

Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] PCI: document sysfs rom file interface
Jesse Barnes [Fri, 9 Dec 2005 19:55:03 +0000 (11:55 -0800)]
[PATCH] PCI: document sysfs rom file interface

idr gently pointed out today that not only is the sysfs rom file
interface somewhat unintuitive (despite my efforts and initial
implementation), but it's also undocumented!  This patch to
Documentation/filesystems/sysfs-pci.txt corrects the latter problem; the
former is a userland ABI now though, so we're stuck with it for awhile
at least.

Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] PCI: Export pci_cfg_space_size
Benjamin Herrenschmidt [Tue, 13 Dec 2005 07:09:16 +0000 (18:09 +1100)]
[PATCH] PCI: Export pci_cfg_space_size

The powerpc PCI code sets up the PCI tree without doing config space
accesses in most cases, from the firmware tree. However, it still wants
to call pci_cfg_space_size() under some conditions, thus it needs to
be made non-static (though I don't see a point to export it to modules).

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] PCI: use bus numbers sparsely, if necessary
Dominik Brodowski [Thu, 8 Dec 2005 15:53:12 +0000 (16:53 +0100)]
[PATCH] PCI: use bus numbers sparsely, if necessary

Add a warning if a child bus may be inaccessible because the
parent bridge has wrong secondary or subordinate bus numbers.
Note that this may or may not happen on "transparent" bridges,
as can be seen in bug #5557.

Also, if we do not fix up the assignment of bus numbers, try to
make use of the bus number space available.

Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] pciehp: allow bridged card hotplug
Rajesh Shah [Thu, 8 Dec 2005 20:12:25 +0000 (12:12 -0800)]
[PATCH] pciehp: allow bridged card hotplug

This patch fixes bugs in the pciehp driver that prevent hot-add
of a card with PCI bridges on it.

Signed-off-by: Rajesh Shah <rajesh.shah@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] pciehp: handle sticky power-fault status
Thomas Schaefer [Thu, 8 Dec 2005 19:55:57 +0000 (11:55 -0800)]
[PATCH] pciehp: handle sticky power-fault status

This patch disables power fault, MRL sensor and presence detection
interrupts when a PCIe slot is powered-off and enables those
interrupts when it is powered-on again. This is necessary to prevent
the associated events from causing an endless cycle of interrupts
due to the power-fault bit, which stays set till power is restored
to the slot.

Signed-off-by: Thomas Schaefer <thomas.schaefer@kontron.com>
Signed-off-by: Rajesh Shah <rajesh.shah@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] PCI Quirk: 1K I/O space granularity on Intel P64H2
Daniel Yeisley [Mon, 5 Dec 2005 12:06:43 +0000 (07:06 -0500)]
[PATCH] PCI Quirk: 1K I/O space granularity on Intel P64H2

I've implemented a quirk to take advantage of the 1KB I/O space
granularity option on the Intel P64H2 PCI Bridge.  I had to change
probe.c because it sets the resource start and end to be aligned on 4k
boundaries (after the quirk sets them to 1k boundaries).  I've tested
this patch on a Unisys ES7000-600 both with and without the 1KB option
enabled.  I also tested this on a 2 processor Dell box that doesn't have
a P64H2 to make sure there were no negative affects there.

Signed-off-by: Dan Yeisley <dan.yeisley@unisys.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] shpchp: Implement get_address callback
Kenji Kaneshige [Mon, 5 Dec 2005 10:31:00 +0000 (19:31 +0900)]
[PATCH] shpchp: Implement get_address callback

The following patch implements .get_address callback of
hotplug_slot_ops for SHPCHP driver. With this patch, we
can see bus address of hotplug slots as follows:

$ cat address
0000:0b:01

Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] PCI Hotplug/powerpc: more removal of duplicated code
linas@austin.ibm.com [Fri, 2 Dec 2005 00:59:58 +0000 (18:59 -0600)]
[PATCH] PCI Hotplug/powerpc: more removal of duplicated code

The RPAPHP code contains two routines that appear to be gratuitous copies
of very similar pci code.  In particular,

   rpaphp_claim_resource ~~ pci_claim_resource
      (there is a minor, non-functional difference)

   rpadlpar_claim_one_bus == pcibios_claim_one_bus
      (the code is identical)

This patch removes the rpaphp versions of the code.

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Acked-by: John Rose <johnrose@austin.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] PCI Hotplug/powerpc: remove duplicated code
linas@austin.ibm.com [Fri, 2 Dec 2005 00:56:14 +0000 (18:56 -0600)]
[PATCH] PCI Hotplug/powerpc: remove duplicated code

The RPAPHP code contains a routine that duplicates some existing code.
This patch removes the rpaphp version of the code.

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Acked-by: John Rose <johnrose@austin.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] PCI: irq.c: trivial printk and DBG updates
Daniel Marjamäki [Thu, 1 Dec 2005 17:01:28 +0000 (18:01 +0100)]
[PATCH] PCI: irq.c: trivial printk and DBG updates

Updated printk and DBG with appropriate KERN_*.

Signed-off-by: Daniel Marjamäki <daniel.marjamaki@comhem.se>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] shpchp: fix improper wait for command completion
Kenji Kaneshige [Fri, 25 Nov 2005 03:28:53 +0000 (12:28 +0900)]
[PATCH] shpchp: fix improper wait for command completion

Current SHPCHP driver uses msleep_interruptible() function to wait for
a command completion event. But I think this would cause an unnecessary
long wait until timeout, if command completion interrupt came before
task state was changed to TASK_INTERRUPTIBLE. This patch fixes this
issue. With this patch, command completion becomes faster as follows:

o Without this patch

# time echo 1 > power

real    0m4.708s
user    0m0.000s
sys     0m0.524s

o With this patch

# time echo 1 > power

real    0m2.221s
user    0m0.000s
sys     0m0.532s

Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] shpchp: fix improper write to Command Completion Detect bit
Kenji Kaneshige [Thu, 24 Nov 2005 02:39:29 +0000 (11:39 +0900)]
[PATCH] shpchp: fix improper write to Command Completion Detect bit

Current SHPCHP driver writes a '0' to the Command Completion Detect
bit to clear the Command Complete Interrupt Pending. But according to
the SHPC spec (See 4.7.3.1 System Interrupts), SHPCHP driver must
write '1'. This patch fixes this bug.

Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] shpchp: fix improper mmio mapping
Kenji Kaneshige [Thu, 24 Nov 2005 02:36:59 +0000 (11:36 +0900)]
[PATCH] shpchp: fix improper mmio mapping

Current SHPCHP driver seems not to map MMIO region properly. This
patch fixes this bug. This patch also cleanup the code.

Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] shpchp: fix improper reference to Mode 1 ECC Capability" bit
Kenji Kaneshige [Thu, 24 Nov 2005 02:35:05 +0000 (11:35 +0900)]
[PATCH] shpchp: fix improper reference to Mode 1 ECC Capability" bit

The hpc_get_mode1_ECC_cap() function of SHPCHP driver seems to refer
the wrong bit for refering the "Mode 1 ECC Capability" bit. This bug
seems not to cause any problem so far. But I think this should be
fixed. This patch fixes this bug.

Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] shpchp: fix improper reference to Slot Avail Regsister
Kenji Kaneshige [Thu, 24 Nov 2005 04:44:01 +0000 (13:44 +0900)]
[PATCH] shpchp: fix improper reference to Slot Avail Regsister

The hpc_get_max_bus_speed() function of the SHPCHP driver seems to
refer wrong bits in the "Slot Avail Register I" and "Slot Avail
Register II". This patch fixes this bug. And this also cleanup the
code.

Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] shpchp: replace pci_find_slot() with pci_get_slot()
Kenji Kaneshige [Fri, 25 Nov 2005 03:21:25 +0000 (12:21 +0900)]
[PATCH] shpchp: replace pci_find_slot() with pci_get_slot()

This patch replaces pci_find_slot() with pci_get_slot() in the SHPCHP
driver. This enables SHPCHP driver to work on multiple PCI segment
systems.

Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] PCI Hotplug: cpqphp_ctrl.c: remove dead code
Adrian Bunk [Sun, 20 Nov 2005 23:05:21 +0000 (00:05 +0100)]
[PATCH] PCI Hotplug: cpqphp_ctrl.c: remove dead code

The Coverity checker spotted that we already did return -ENOMEM
if (!p_mem_node).

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] PCI Hotplug: ibmphp_pci.c copy-n-paste fix
Jordan, William P [Tue, 22 Nov 2005 06:51:57 +0000 (22:51 -0800)]
[PATCH] PCI Hotplug: ibmphp_pci.c copy-n-paste fix

I noticed what appears to be a cut/paste error in
drivers/pci/hotplug/ibmphp_pci.c:

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] PCIE: make bus_id for PCI Express devices unique
Sergey Vlasov [Mon, 14 Nov 2005 17:30:50 +0000 (20:30 +0300)]
[PATCH] PCIE: make bus_id for PCI Express devices unique

The bus_id string must be unique for all devices of that bus in the
system, not just for devices with the same parent - otherwise multiple
symlinks with identical names appear in /sys/bus/pci_express/devices.

Signed-off-by: Sergey Vlasov <vsu@altlinux.ru>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] PCI: arch/i386/pci/acpi.c: use for_each_pci_dev
Hanna Linder [Mon, 7 Nov 2005 07:39:36 +0000 (23:39 -0800)]
[PATCH] PCI: arch/i386/pci/acpi.c: use for_each_pci_dev

Signed-off-by: Hanna Linder <hannal@us.ibm.com>
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Domen Puncer <domen@coderock.org>
Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] PCI: arch: pci_find_device remove (frv/mb93090-mb00/pci-irq.c)
Jiri Slaby [Mon, 7 Nov 2005 07:39:33 +0000 (23:39 -0800)]
[PATCH] PCI: arch: pci_find_device remove (frv/mb93090-mb00/pci-irq.c)

Signed-off-by: Jiri Slaby <xslaby@fi.muni.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] PCI: pci_find_device remove (sparc64/kernel/ebus.c)
Jiri Slaby [Mon, 7 Nov 2005 07:39:35 +0000 (23:39 -0800)]
[PATCH] PCI: pci_find_device remove (sparc64/kernel/ebus.c)

Signed-off-by: Jiri Slaby <xslaby@fi.muni.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] PCI: pci_find_device remove (frv/mb93090-mb00/pci-frv.c)
Jiri Slaby [Mon, 7 Nov 2005 07:39:33 +0000 (23:39 -0800)]
[PATCH] PCI: pci_find_device remove (frv/mb93090-mb00/pci-frv.c)

Signed-off-by: Jiri Slaby <xslaby@fi.muni.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] PCI: pci_find_device remove (ppc/platforms/85xx/mpc85xx_cds_common.c)
Jiri Slaby [Mon, 7 Nov 2005 07:39:35 +0000 (23:39 -0800)]
[PATCH] PCI: pci_find_device remove (ppc/platforms/85xx/mpc85xx_cds_common.c)

Signed-off-by: Jiri Slaby <xslaby@fi.muni.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] PCI: pci_find_device remove (ppc/kernel/pci.c)
Jiri Slaby [Mon, 7 Nov 2005 07:39:34 +0000 (23:39 -0800)]
[PATCH] PCI: pci_find_device remove (ppc/kernel/pci.c)

Signed-off-by: Jiri Slaby <xslaby@fi.muni.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
 arch/ppc/kernel/pci.c |   21 +++++++++++----------
 1 file changed, 11 insertions(+), 10 deletions(-)

18 years ago[PATCH] PCI: pci_find_device remove (alpha/kernel/sys_alcor.c)
Jiri Slaby [Mon, 7 Nov 2005 07:39:30 +0000 (23:39 -0800)]
[PATCH] PCI: pci_find_device remove (alpha/kernel/sys_alcor.c)

Signed-off-by: Jiri Slaby <xslaby@fi.muni.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] PCI: pci_find_device remove (alpha/kernel/sys_sio.c)
Jiri Slaby [Mon, 7 Nov 2005 07:39:32 +0000 (23:39 -0800)]
[PATCH] PCI: pci_find_device remove (alpha/kernel/sys_sio.c)

Signed-off-by: Jiri Slaby <xslaby@fi.muni.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] pci: call pci_read_irq for bridges
Kristen Accardi [Thu, 3 Nov 2005 00:55:49 +0000 (16:55 -0800)]
[PATCH] pci: call pci_read_irq for bridges

Call pci_read_irq() for bridges too, so that the pin value
is stored for bridges that require interrupts.

Signed-off-by: Kristen Carlson Accardi <kristen.c.accardi@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] pci: use pin stored in pci_dev
Kristen Accardi [Thu, 3 Nov 2005 00:24:39 +0000 (16:24 -0800)]
[PATCH] pci: use pin stored in pci_dev

Use the stored value of the interrupt pin rather than try to read
the config again.

Signed-off-by: Kristen Carlson Accardi <kristen.c.accardi@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] apci: use pin stored in pci_dev
Kristen Accardi [Thu, 3 Nov 2005 00:24:35 +0000 (16:24 -0800)]
[PATCH] apci: use pin stored in pci_dev

Use the stored value of the Interrupt Pin, rather than try to read
it again.

Signed-off-by: Kristen Carlson Accardi <kristen.c.accardi@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] pci: store PCI_INTERRUPT_PIN in pci_dev
Kristen Accardi [Thu, 3 Nov 2005 00:24:32 +0000 (16:24 -0800)]
[PATCH] pci: store PCI_INTERRUPT_PIN in pci_dev

Store the value of the INTERRUPT_PIN in the pci_dev structure
so that it can be retrieved later.

Signed-off-by: Kristen Carlson Accardi <kristen.c.accardi@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc-merge
Linus Torvalds [Mon, 9 Jan 2006 18:03:44 +0000 (10:03 -0800)]
Merge git://git./linux/kernel/git/paulus/powerpc-merge

18 years ago[PATCH] Update cyblafb driver
Knut Petersen [Mon, 9 Jan 2006 14:04:20 +0000 (15:04 +0100)]
[PATCH] Update cyblafb driver

This is a major update to the cyblafb framebuffer driver. Most
of the stuff has been tested in the mm tree.

Main advantages:
============
  - vxres > xres support
  - ywrap and xpan support
  - much faster for almost all modes (e.g. 1280x1024-16bpp
     draws more than 41 full screens of text instead of about 25
     full screens of text per second on authors Epia 5000)
  - module init/exit code fixed
  - bugs triggered by console rotation fixed
  - lots of minor improvements
  - startup modes suitable for high performance scrolling
     in all directions

This diff  also contains a lot of white space fixes.

No side effects are possible, only one single graphics core is affected.

Signed-off-by: Knut Petersen <Knut_Petersen@t-online.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years agoMerge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
Linus Torvalds [Mon, 9 Jan 2006 17:39:55 +0000 (09:39 -0800)]
Merge branch 'upstream-linus' of /linux/kernel/git/jgarzik/libata-dev

18 years agoMerge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
Linus Torvalds [Mon, 9 Jan 2006 17:39:05 +0000 (09:39 -0800)]
Merge branch 'upstream-linus' of /linux/kernel/git/jgarzik/netdev-2.6

18 years ago[PATCH] netlink oops fix due to incorrect error code
Kirill Korotaev [Mon, 9 Jan 2006 14:42:42 +0000 (17:42 +0300)]
[PATCH] netlink oops fix due to incorrect error code

Fixed oops after failed netlink socket creation.

Wrong parathenses in if() statement caused err to be 1,
instead of negative value.

Trivial fix, not trivial to find though.

Signed-Off-By: Dmitry Mishin <dim@sw.ru>
Signed-Off-By: Kirill Korotaev <dev@openvz.org>
Signed-Off-By: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] rcu: uninline __rcu_pending()
Oleg Nesterov [Sun, 8 Jan 2006 19:19:16 +0000 (22:19 +0300)]
[PATCH] rcu: uninline __rcu_pending()

__rcu_pending() is rather fat and called twice from rcu_pending().

rcu_pending() has multiple callers, and not that small too.

This patch uninlines both of them.

Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
Acked-by: Paul E. McKenney <paulmck@us.ibm.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years agoMerge branch 'blk-softirq' of git://brick.kernel.dk/data/git/linux-2.6-block
Linus Torvalds [Mon, 9 Jan 2006 17:26:40 +0000 (09:26 -0800)]
Merge branch 'blk-softirq' of git://brick.kernel.dk/data/git/linux-2.6-block

Manual merge for trivial #include changes

18 years ago[patch] ipw2100: support WEXT-18 enc_capa v3
Dan Williams [Mon, 9 Jan 2006 16:04:31 +0000 (11:04 -0500)]
[patch] ipw2100: support WEXT-18 enc_capa v3

This patch allows ipw2100 driver to advertise the WPA-related encryption
options that it does really support.  It's necessary to work correctly
with NetworkManager and other programs that actually check driver & card
capabilities.

Signed-off-by: Dan Williams <dcbw@redhat.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
18 years ago[PATCH] fix a few "warning: 'cleanup_card' defined but not used"
Denis Vlasenko [Fri, 6 Jan 2006 06:45:47 +0000 (22:45 -0800)]
[PATCH] fix a few "warning: 'cleanup_card' defined but not used"

These warnings are emitted if non-modular network drivers are built.
Fixes just move cleanup_card() definitions into #ifdef MODULE region.

/.1/usr/srcdevel/kernel/linux-2.6.15-rc7.src/drivers/net/wd.c:131: warning: 'cleanup_card' defined but not used
/.1/usr/srcdevel/kernel/linux-2.6.15-rc7.src/drivers/net/3c503.c:152: warning: 'cleanup_card' defined but not used
/.1/usr/srcdevel/kernel/linux-2.6.15-rc7.src/drivers/net/ne.c:216: warning: 'cleanup_card' defined but not used
/.1/usr/srcdevel/kernel/linux-2.6.15-rc7.src/drivers/net/hp.c:106: warning: 'cleanup_card' defined but not used
/.1/usr/srcdevel/kernel/linux-2.6.15-rc7.src/drivers/net/hp-plus.c:142: warning: 'cleanup_card' defined but not used
/.1/usr/srcdevel/kernel/linux-2.6.15-rc7.src/drivers/net/smc-ultra.c:172: warning: 'cleanup_card' defined but not used
/.1/usr/srcdevel/kernel/linux-2.6.15-rc7.src/drivers/net/e2100.c:144: warning: 'cleanup_card' defined but not used
/.1/usr/srcdevel/kernel/linux-2.6.15-rc7.src/drivers/net/es3210.c:159: warning: 'cleanup_card' defined but not used
/.1/usr/srcdevel/kernel/linux-2.6.15-rc7.src/drivers/net/lne390.c:149: warning: 'cleanup_card' defined but not used
/.1/usr/srcdevel/kernel/linux-2.6.15-rc7.src/drivers/net/lance.c:313: warning: 'cleanup_card' defined but not used
/.1/usr/srcdevel/kernel/linux-2.6.15-rc7.src/drivers/net/ac3200.c:127: warning: 'cleanup_card' defined but not used

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
18 years ago[PATCH] forcedeth: TSO fix for large buffers
Ayaz Abdulla [Fri, 6 Jan 2006 06:45:45 +0000 (22:45 -0800)]
[PATCH] forcedeth: TSO fix for large buffers

This contains a bug fix for large buffers.  Originally, if a tx buffer to
be sent was larger then the maximum size of the tx descriptor, it would
overwrite other control bits.  In this patch, the buffer is split over
multiple descriptors.  Also, the fragments are now setup in forward order.

Signed-off-by: Ayaz Abdulla <aabdulla@nvidia.com>
Signed-off-by: Manfred Spraul <manfred@colorfullife.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
18 years ago[PATCH] remove bouncing mail address of mv643xx_eth maintainer
Olaf Hering [Fri, 6 Jan 2006 06:45:45 +0000 (22:45 -0800)]
[PATCH] remove bouncing mail address of mv643xx_eth maintainer

Remove bouncing mail address of mv643xx maintainer.

Signed-off-by: Olaf Hering <olh@suse.de>
Cc: Jeff Garzik <jgarzik@pobox.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
18 years ago[PATCH] e1000: Fix invalid memory reference
Kenji Kaneshige [Fri, 6 Jan 2006 06:45:44 +0000 (22:45 -0800)]
[PATCH] e1000: Fix invalid memory reference

Fix an invalid memory reference in the e1000 driver which would cause
kernel panic.

Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Cc: Jeb Cramer <cramerj@intel.com>
Cc: John Ronciak <john.ronciak@intel.com>
Cc: Ganesh Venkatesan <ganesh.venkatesan@intel.com>
Cc: Jeff Garzik <jgarzik@pobox.com>
Acked-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
18 years ago[PATCH] drivers/net/gianfar.h: "extern inline" -> "static inline"
Adrian Bunk [Fri, 6 Jan 2006 06:45:43 +0000 (22:45 -0800)]
[PATCH] drivers/net/gianfar.h: "extern inline" -> "static inline"

"extern inline" doesn't make much sense.

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Jeff Garzik <jgarzik@pobox.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
18 years ago[PATCH] drivers/net/bonding/bonding.h: "extern inline" -> "static inline"
Adrian Bunk [Fri, 6 Jan 2006 06:45:42 +0000 (22:45 -0800)]
[PATCH] drivers/net/bonding/bonding.h: "extern inline" -> "static inline"

"extern inline" doesn't make much sense.

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Jeff Garzik <jgarzik@pobox.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
18 years ago[PATCH] drivers/net/Kconfig: indentation fix
Adrian Bunk [Fri, 6 Jan 2006 06:45:41 +0000 (22:45 -0800)]
[PATCH] drivers/net/Kconfig: indentation fix

This patch fixes a wrong indentation.

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Cc: "David S. Miller" <davem@davemloft.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
18 years ago[PATCH] Add MIPS dependency for dm9000 driver
Franck [Fri, 6 Jan 2006 06:45:39 +0000 (22:45 -0800)]
[PATCH] Add MIPS dependency for dm9000 driver

Add MIPS dependency for dm9000 ethernet controller.  Indeed this controller
is used by some embedded platforms based on MIPS CPUs.

Signed-off-by: Franck Bui-Huu <franck.bui@gmail.com>
Cc: Jeff Garzik <jgarzik@pobox.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
18 years ago[PATCH] update bonding.txt to not show ip address on slaves
Eric Paris [Fri, 6 Jan 2006 16:57:11 +0000 (11:57 -0500)]
[PATCH] update bonding.txt to not show ip address on slaves

ifenslave, as of abi version 2, does not set the ip address on the slave
interfaces.  The documentation example however still shows that the
ensalved interfaces should have the same IP as the master.  The patch
simply removes the lines from the example which should no longer appear.

Signed-off-by: Eric Paris <eparis@redhat.com>
 bonding.txt |    2 --
 1 files changed, 2 deletions(-)
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
18 years ago[PATCH] tulip: enable multiport NIC BIOS fixups for x86_64
Christoph Dworzak [Fri, 6 Jan 2006 19:49:22 +0000 (14:49 -0500)]
[PATCH] tulip: enable multiport NIC BIOS fixups for x86_64

A BIOS bug affecting some multiport tulip NICs requires an irq fixup
in tulip_core.c.  This has only been enabled for i686, but it is
needed for x86_64 as well.

Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
18 years ago[PATCH] sata_nv, spurious interrupts at system startup with MAXTOR 6H500F0 drive
Andrew Chew [Thu, 5 Jan 2006 03:13:04 +0000 (19:13 -0800)]
[PATCH] sata_nv, spurious interrupts at system startup with MAXTOR 6H500F0 drive

This patch works around a problem with spurious interrupts seen at boot time when
a MAXTOR 6H500F0 drive is present.  An ATA interrupt condition is mysteriously
present at start of day.  If we took too long in issuing the first command,
the kernel would basically get tired of the spurious interrupts and turn the interrupt
off.  Issuing the first command essentially causes the interrupt condition to
get acknowledged.

I haven't seen this happen with any other drives.

What I basically do is ack ATA status by reading it regardless of whether we're
expecting to have to handle an interrupt.  This clears the start-of-day anomalous
interrupt condition, and keeps the kernel from disabling that interrupt due to
too many spurious interrupts.

Also, I fixed a bug where hotplug interrupts weren't getting acknowledged as handled
in the ISR.  This was not the cause of the spurious interrupts, but it's the right
thing to do anyway.

Signed-Off-By: Andrew Chew
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
18 years ago[PATCH] PPC44x EMAC driver: disable TX status deferral in half-duplex mode
Eugene Surovegin [Tue, 27 Dec 2005 20:36:41 +0000 (12:36 -0800)]
[PATCH] PPC44x EMAC driver: disable TX status deferral in half-duplex mode

Disable TX status deferral (EMACx_MR[MWSW=001]) in half-duplex mode.
I have two reports when EMAC stops transmitting when connected to a
hub. TX ring debug printouts show complete mess when this happens,
probably hardware collision handling doesn't work quite well in this
mode.

This is relevant only for SoCs with EMAC4 core (440GX, 440SP, 440SPe).
Tested on 440GX.

Signed-off-by: Eugene Surovegin <ebs@ebshome.net>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
18 years ago[PATCH] ieee80211: enable hw wep where host has to build IV
Johannes Berg [Sat, 31 Dec 2005 10:35:20 +0000 (11:35 +0100)]
[PATCH] ieee80211: enable hw wep where host has to build IV

This patch fixes some of the ieee80211 crypto related code so that
instead of having the host fully do crypto operations, the host_build_iv
flag works properly (for WEP in this patch) which, if turned on,
requires the hardware to do all crypto operations, but the ieee80211
layer builds the IV. The hardware also has to build the ICV.

Previously, the host_build_iv flag couldn't be used at all for WEP, and
not alone (with both host_decrypt and host_encrypt disabled) because the
crypto algorithm wasn't assigned. This is also fixed.

I have tested this patch both in host crypto mode and in hw crypto mode
(with the Broadcom chipset).

[resent, signing digitally caused it to be MIME-junked, sorry]

Signed-Off-By: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
18 years ago[PATCH] sk98lin: error handling of pci setup
Stephen Hemminger [Sat, 7 Jan 2006 00:57:44 +0000 (16:57 -0800)]
[PATCH] sk98lin: error handling of pci setup

Don't enable the pci device twice (already done in the probe
routine).  Propogate the error codes from pci_request_region
back to initial probing.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
18 years ago[PATCH] sk98lin: error handling on probe
Stephen Hemminger [Sat, 7 Jan 2006 00:57:43 +0000 (16:57 -0800)]
[PATCH] sk98lin: error handling on probe

The sk98lin driver doesn't do proper error number handling
during initialization. Note: -EAGAIN is a bogus return value for
hardware errors.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
18 years ago[PATCH] sk98lin: use kzalloc
Stephen Hemminger [Sat, 7 Jan 2006 00:57:42 +0000 (16:57 -0800)]
[PATCH] sk98lin: use kzalloc

Trivial use of kzalloc.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
18 years ago[PATCH] sk98lin: error handling on dual port board
Stephen Hemminger [Sat, 7 Jan 2006 00:57:41 +0000 (16:57 -0800)]
[PATCH] sk98lin: error handling on dual port board

Sk98lin driver error recovery on two port boards is bad.
If it fails the second allocation, it will not release resources
properly. Also it registers the second port in the pci driver data

If second port fails, might as well go with one port.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
18 years ago[PATCH] sk98lin: not doing high dma properly
Stephen Hemminger [Sat, 7 Jan 2006 00:57:40 +0000 (16:57 -0800)]
[PATCH] sk98lin: not doing high dma properly

Sk98lin 64bit memory handling is wrong. It doesn't set the
highdma flag; i.e. the kernel always does bounce buffers.
It doesn't fallback to 32 bit mask if it can't get 64 bit mask.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
18 years ago[PATCH] sk98lin: routine called from probe marked __init
Stephen Hemminger [Sat, 7 Jan 2006 00:57:39 +0000 (16:57 -0800)]
[PATCH] sk98lin: routine called from probe marked __init

Sk98lin driver has a routine marked __init that is called from
the probe code. If using pci hotplug, this could be called after
the initialization so it needs to be marked __devinit.
So if you hot added a sk98lin board, the kernel would crash.
I don't have hot plug hardware to actually try this feat.

Also, there are two routines, only called from SkGeBoardInit that can
be marked __devinit.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
18 years ago[BLOCK] CCISS: update for blk softirq completions
Jens Axboe [Mon, 9 Jan 2006 15:04:06 +0000 (16:04 +0100)]
[BLOCK] CCISS: update for blk softirq completions

Signed-off-by: Jens Axboe <axboe@suse.de>
18 years ago[IDE] Use the block layer deferred softirq request completion
Jens Axboe [Mon, 9 Jan 2006 15:03:35 +0000 (16:03 +0100)]
[IDE] Use the block layer deferred softirq request completion

This patch makes IDE use the new blk_complete_request() interface.
There's still room for improvement, as __ide_end_request() really
could drop the lock after getting HWGROUP->rq (why does it need to
hold it in the first place? If ->rq access isn't serialized, we are
screwed anyways).

Signed-off-by: Jens Axboe <axboe@suse.de>
18 years ago[SCSI] Kill the SCSI softirq handling
Jens Axboe [Mon, 9 Jan 2006 15:03:03 +0000 (16:03 +0100)]
[SCSI] Kill the SCSI softirq handling

This patch moves the SCSI softirq handling to the block layer version.
There should be no functional changes.

Signed-off-by: Jens Axboe <axboe@suse.de>
18 years ago[BLOCK] ll_rw_blk: Enable out-of-order request completions through softirq
Jens Axboe [Mon, 9 Jan 2006 15:02:34 +0000 (16:02 +0100)]
[BLOCK] ll_rw_blk: Enable out-of-order request completions through softirq

Request completion can be a quite heavy process, since it needs to
iterate through the entire request and complete the bio's it holds.
This patch adds blk_complete_request() which moves this processing
into a dedicated block softirq.

Signed-off-by: Jens Axboe <axboe@suse.de>
18 years ago[BLOCK] Kill blk_attempt_remerge()
Jens Axboe [Mon, 9 Jan 2006 14:30:20 +0000 (15:30 +0100)]
[BLOCK] Kill blk_attempt_remerge()

It's a broken interface, it's done way too late. And apparently it triggers
slab problems in recent kernels as well (most likely after the generic dispatch
code was merged). So kill it, ide-cd is the only user of it.

Signed-off-by: Jens Axboe <axboe@suse.de>
18 years ago[BLOCK] scsi_ioctl: file can be NULL from ioctl_by_bdev()
Jens Axboe [Mon, 9 Jan 2006 13:52:21 +0000 (14:52 +0100)]
[BLOCK] scsi_ioctl: file can be NULL from ioctl_by_bdev()

Signed-off-by: Jens Axboe <axboe@suse.de>
18 years ago[BLOCK] bio: init ->bi_bdev in bio_init()
Jens Axboe [Mon, 9 Jan 2006 13:45:10 +0000 (14:45 +0100)]
[BLOCK] bio: init ->bi_bdev in bio_init()

For SG_IO requests, bio->bi_bdev may not be explicitly initialized. So make
bio_init() clear the field to make sure it's always NULL or valid.

Signed-off-by: Jens Axboe <axboe@suse.de>
18 years agomake elv_try_merge() static, kill the dead declaration of
Coywolf Qi Hunt [Wed, 28 Dec 2005 09:55:49 +0000 (10:55 +0100)]
make elv_try_merge() static, kill the dead declaration of

elv_try_last_merge().

Signed-off-by: Coywolf Qi Hunt <qiyong@fc-cn.com>
Signed-off-by: Jens Axboe <axboe@suse.de>
18 years ago[BLOCK][TRIVIAL] ll_rw_blk: header included twice
Nicolas Kaiser [Mon, 28 Nov 2005 08:40:20 +0000 (09:40 +0100)]
[BLOCK][TRIVIAL] ll_rw_blk: header included twice

linux/blkdev.h included twice

Signed-off-by: Nicolas Kaiser <nikai@nikai.net>
Signed-off-by: Jens Axboe <axboe@suse.de>
18 years agopowerpc: unbreak iSeries compilation again
Paul Mackerras [Mon, 9 Jan 2006 10:32:42 +0000 (21:32 +1100)]
powerpc: unbreak iSeries compilation again

We don't set CONFIG_PPC_MULTIPLATFORM on iSeries (yet).  Avoid
compiling in the prom_init stuff on iSeries.

Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] powerpc: Don't use KERNELBASE in add_memory()
Michael Ellerman [Mon, 9 Jan 2006 07:19:49 +0000 (18:19 +1100)]
[PATCH] powerpc: Don't use KERNELBASE in add_memory()

In add_memory() we should be using __va() to get a virtual address.
Spotted by Mike Kravetz.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years agopowerpc: set CONFIG_PPC_OF=y always for ARCH=powerpc
Paul Mackerras [Mon, 9 Jan 2006 09:17:01 +0000 (20:17 +1100)]
powerpc: set CONFIG_PPC_OF=y always for ARCH=powerpc

The CONFIG_PPC_OF symbol is used to mean that the firmware device tree
access functions are available.  Since we always have a device tree
with ARCH=powerpc, make CONFIG_PPC_OF always Y for ARCH=powerpc.

This fixes some compile errors reported by Kumar Gala, but in a
different way to his patch.  This also makes prom_parse.o be compiled
only if CONFIG_PPC_OF so that non-OF ARCH=ppc platforms will compile.

Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] powerpc: DABR exceptions should report the address not the PC
Anton Blanchard [Mon, 9 Jan 2006 04:47:04 +0000 (15:47 +1100)]
[PATCH] powerpc: DABR exceptions should report the address not the PC

When taking a DABR exception we were reporting the PC. It makes more
sense to report the address that caused the exception, and the gdb guys
would like it that way.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] ppc64: POWER5+ oprofile support
Anton Blanchard [Mon, 9 Jan 2006 04:42:30 +0000 (15:42 +1100)]
[PATCH] ppc64: POWER5+ oprofile support

POWER5+ adds new PMU groups and as such needs to be treated differently
by oprofile userspace. Change it to report itself as power5+.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] ppc64: Fix oprofile when compiled as a module
Anton Blanchard [Mon, 9 Jan 2006 04:41:31 +0000 (15:41 +1100)]
[PATCH] ppc64: Fix oprofile when compiled as a module

My recent changes to oprofile broke it when built as a module. Fix it by
using an enum instead of a function pointer. This way we still retain
the oprofile configuration in the cputable.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] 4/5 powerpc: Add cpufreq support for all desktop G5
Benjamin Herrenschmidt [Sat, 7 Jan 2006 00:45:28 +0000 (11:45 +1100)]
[PATCH] 4/5 powerpc: Add cpufreq support for all desktop G5

This patch adds cpufreq support for all desktop "tower" G5 models. The
only G5 models still lacking cpufreq support at this point are the
Xserve and possibly the new iMac iSight (not tested). I'll have those
added soon. That patch uses the new platform functions interpreter to
implement frequency and voltage switching on most models.

Note that in order to find the low frequency value, I had to hack
something that might now work properly on all models, so if the
frequency value reported when running low speed looks bogus to you,
please report it to me. (Appart from a bogus reported value, things
should work fine).

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] 3/5 powerpc: Add platform functions interpreter
Benjamin Herrenschmidt [Sat, 7 Jan 2006 00:41:02 +0000 (11:41 +1100)]
[PATCH] 3/5 powerpc: Add platform functions interpreter

This is the platform function interpreter itself along with the backends
for UniN/U3/U4, mac-io, GPIOs and i2c. It adds the ability to execute
those do-platform-* scripts in the device-tree (at least for most
devices for which a backend is provided). This should replace the clock
spreading hacks properly. It might also have an impact on all sort of
machines since some of the scripts marked "at init" will now be executed
on boot (or some other on sleep/wakeup), those will possibly do things
that the kernel didn't do at all, like setting some values into some i2c
devices (changing thermal sensor calibration or conversion rate) etc...
Thus regression testing is MUCH welcome. Also loook for errors in dmesg.
That's also why I've left rather verbose debugging enabled in this
version of the patch.

(I do expect some Windtunnel G4s to show some errors as they have an i2c
clock chip on the PMU bus that uses some primitives that the i2c backend
doesn't implement yet. I really need users that have one of those
machine to come back to me so we can get that done right, though the
errors themselves should be harmless, I suspect the machine might not
run at full speed).

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] 2/5 powerpc: Rework PowerMac i2c part 2
Benjamin Herrenschmidt [Sat, 7 Jan 2006 00:35:26 +0000 (11:35 +1100)]
[PATCH] 2/5 powerpc: Rework PowerMac i2c part 2

This is the continuation of the previous patch. This one removes the old
PowerMac i2c drivers (i2c-keywest and i2c-pmac-smu) and replaces them
both with a single stub driver that uses the new PowerMac low i2c layer.

Now that i2c-keywest is gone, the low-i2c code is extended to support
interrupt driver transfers. All i2c busses now appear as platform
devices. Compatibility with existing drivers should be maintained as the
i2c bus names have been kept identical, except for the SMU bus but in
that later case, all users has been fixed.

With that patch added, matching a device node to an i2c_adapter becomes
trivial.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] 1/5 powerpc: Rework PowerMac i2c part 1
Benjamin Herrenschmidt [Sat, 7 Jan 2006 00:30:44 +0000 (11:30 +1100)]
[PATCH] 1/5 powerpc: Rework PowerMac i2c part 1

This is the first part of a rework of the PowerMac i2c code. It
completely reworks the "low_i2c" layer. It is now more flexible,
supports KeyWest, SMU and PMU i2c busses, and provides functions to
match device nodes to i2c busses and adapters.

This patch also extends & fix some bugs in the SMU driver related to i2c
support and removes the clock spreading hacks from the pmac feature code
rather than adapting them to the new API since they'll be replaced by
the platform function code completely in patch 3/5

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] ppc64: fix time syscall
Anton Blanchard [Fri, 6 Jan 2006 13:49:49 +0000 (00:49 +1100)]
[PATCH] ppc64: fix time syscall

ppc64 has its own version of sys_time. It looks pretty scary, touching
a whole bunch of variables without any locking or memory ordering.

In fact, a recent bugreport has shown it can actually go backwards. Time
to remove it and just use the generic sys_time, which is implemented on
top of do_gettimeofday.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] ppc32: Put cache flush routines back into .relocate_code section
Paul Janzen [Thu, 5 Jan 2006 05:40:48 +0000 (21:40 -0800)]
[PATCH] ppc32: Put cache flush routines back into .relocate_code section

In 2.6.14, we had the following definition of _GLOBAL() in
include/asm-ppc/processor.h:

#define _GLOBAL(n)\
        .stabs __stringify(n:F-1),N_FUN,0,0,n;\
        .globl n;\
n:

In 2.6.15, as part of the great powerpc merge, we moved this definition to
include/asm-powerpc/ppc_asm.h, where it appears (to 32-bit code) as:

#define _GLOBAL(n)      \
        .text;          \
        .stabs __stringify(n:F-1),N_FUN,0,0,n;\
        .globl n;       \
n:

Mostly, this is fine.  However, we also have the following, in
arch/ppc/boot/common/util.S:

        .section ".relocate_code","xa"
[...]
_GLOBAL(flush_instruction_cache)
[...]
_GLOBAL(flush_data_cache)
[...]

The addition of the .text section definition in the definition of
_GLOBAL overrides the .relocate_code section definition.  As a result,
these two functions don't end up in .relocate_code, so they don't get
relocated correctly, and the boot fails.

There's another suspicious-looking usage at kernel/swsusp.S:37 that
someone should look into.  I did not exhaustively search the source
tree, though.

The following is the minimal patch that fixes the immediate problem.
I could easily be convinced that the _GLOBAL definition should be
modified to remove the ".text;" line either instead of, or in addition
to, this fix.

Signed-off-by: Paul Janzen <pcj@linux.sez.to>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] spufs: set irq affinity for running threads
Arnd Bergmann [Thu, 5 Jan 2006 14:05:29 +0000 (14:05 +0000)]
[PATCH] spufs: set irq affinity for running threads

For far, all SPU triggered interrupts always end up on
the first SMT thread, which is a bad solution.

This patch implements setting the affinity to the
CPU that was running last when entering execution on
an SPU. This should result in a significant reduction
in IPI calls and better cache locality for SPE thread
specific data.

Signed-off-by: Arnd Bergmann <arndb@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] spufs: fix allocation on 64k pages
Arnd Bergmann [Wed, 4 Jan 2006 19:31:32 +0000 (20:31 +0100)]
[PATCH] spufs: fix allocation on 64k pages

The size of the local store is architecture defined
and independent from the page size, so it should
not be defined in terms of pages in the first place.

This mistake broke a few places when building for
64kb pages.

Signed-off-by: Arnd Bergmann <arndb@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] spufs: fix sparse warnings
Arnd Bergmann [Wed, 4 Jan 2006 19:31:31 +0000 (20:31 +0100)]
[PATCH] spufs: fix sparse warnings

One local variable is missing an __iomem modifier,
in another place, we pass a completely unused argument
with a missing __user modifier.

Signed-off-by: Arnd Bergmann <arndb@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] spufs: abstract priv1 register access.
Arnd Bergmann [Wed, 4 Jan 2006 19:31:30 +0000 (20:31 +0100)]
[PATCH] spufs: abstract priv1 register access.

In a hypervisor based setup, direct access to the first
priviledged register space can typically not be allowed
to the kernel and has to be implemented through hypervisor
calls.

As suggested by Masato Noguchi, let's abstract the register
access trough a number of function calls. Since there is
currently no public specification of actual hypervisor
calls to implement this, I only provide a place that
makes it easier to hook into.

Cc: Masato Noguchi <Masato.Noguchi@jp.sony.com>
Cc: Geoff Levand <geoff.levand@am.sony.com>
Signed-off-by: Arnd Bergmann <arndb@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] spufs: move spu_run call to its own file
Arnd Bergmann [Wed, 4 Jan 2006 19:31:29 +0000 (20:31 +0100)]
[PATCH] spufs: move spu_run call to its own file

The logic for sys_spu_run keeps growing and it does
not really belong into file.c any more since we
moved away from using regular file operations to our
own syscall.

No functional change in here.

Signed-off-by: Arnd Bergmann <arndb@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] spufs: clean up use of bitops
Arnd Bergmann [Wed, 4 Jan 2006 19:31:28 +0000 (20:31 +0100)]
[PATCH] spufs: clean up use of bitops

checking bits manually might not be synchonized with
the use of set_bit/clear_bit. Make sure we always use
the correct bitops by removing the unnecessary
identifiers.

Signed-off-by: Arnd Bergmann <arndb@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] spufs: fix spufs_fill_dir error path
Arnd Bergmann [Wed, 4 Jan 2006 19:31:27 +0000 (20:31 +0100)]
[PATCH] spufs: fix spufs_fill_dir error path

If creating one entry failed in spufs_fill_dir,
we never cleaned up the freshly created entries.
Fix this by calling the cleanup function on error.

Noticed by Al Viro.

Signed-off-by: Arnd Bergmann <arndb@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] spufs: dont leak directories in failed spu_create
Arnd Bergmann [Wed, 4 Jan 2006 19:31:26 +0000 (20:31 +0100)]
[PATCH] spufs: dont leak directories in failed spu_create

If get_unused_fd failed in sys_spu_create, we never cleaned
up the created directory. Fix that by restructuring the
error path.

Noticed by Al Viro.

Signed-off-by: Arnd Bergmann <arndb@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] spufs fix spu_acquire_runnable error path
Arnd Bergmann [Wed, 4 Jan 2006 19:31:25 +0000 (20:31 +0100)]
[PATCH] spufs fix spu_acquire_runnable error path

When spu_activate fails in spu_acquire_runnable, the
state must still be SPU_STATE_SAVED, we were
incorrectly setting it to SPU_STATE_RUNNABLE.

Signed-off-by: Arnd Bergmann <arndb@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] spufs: serialize sys_spu_run per spu
Arnd Bergmann [Wed, 4 Jan 2006 19:31:24 +0000 (20:31 +0100)]
[PATCH] spufs: serialize sys_spu_run per spu

During an earlier cleanup, we lost the serialization
of multiple spu_run calls performed on the same
spu_context. In order to get this back, introduce a
mutex in the spu_context that is held inside of spu_run.

Noticed by Al Viro.

Signed-off-by: Arnd Bergmann <arndb@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] spufs: check for proper file pointer in sys_spu_run
Arnd Bergmann [Wed, 4 Jan 2006 19:31:23 +0000 (20:31 +0100)]
[PATCH] spufs: check for proper file pointer in sys_spu_run

Only checking for SPUFS_MAGIC is not reliable, because
it might not be unique in theory. Worse than that,
we accidentally allow spu_run to be performed on
any file in spufs, not just those returned from
spu_create as intended.

Noticed by Al Viro.

Signed-off-by: Arnd Bergmann <arndb@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] spufs: dont hold root->isem in spu_forget
Arnd Bergmann [Wed, 4 Jan 2006 19:31:22 +0000 (20:31 +0100)]
[PATCH] spufs: dont hold root->isem in spu_forget

spu_forget will do mmput on the DMA address space,
which can lead to lots of other stuff getting triggered.
We better not hold a semaphore here that we might
need in the process.

Noticed by Al Viro.

Signed-off-by: Arnd Bergmann <arndb@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] spufs: fix locking in spu_acquire_runnable
Arnd Bergmann [Wed, 4 Jan 2006 19:31:21 +0000 (20:31 +0100)]
[PATCH] spufs: fix locking in spu_acquire_runnable

We need to check for validity of owner under down_write,
down_read is not enough.

Noticed by Al Viro.

Signed-off-by: Arnd Bergmann <arndb@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] cell: enable pause(0) in cpu_idle
Arnd Bergmann [Wed, 4 Jan 2006 19:55:53 +0000 (19:55 +0000)]
[PATCH] cell: enable pause(0) in cpu_idle

This patch enables support for pause(0) power management state
for the Cell Broadband Processor, which is import for power efficient
operation. The pervasive infrastructure will in the future enable
us to introduce more functionality specific to the Cell's
pervasive unit.

From: Maximino Aguilar <maguilar@us.ibm.com>
Signed-off-by: Arnd Bergmann <arndb@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] powerpc: fixing compile issue with !CONFIG_PCI in legacy_serial.c
Kumar Gala [Tue, 3 Jan 2006 22:15:21 +0000 (16:15 -0600)]
[PATCH] powerpc: fixing compile issue with !CONFIG_PCI in legacy_serial.c

Only build in support for ISA and PCI cases if we have enabled CONFIG_ISA
and CONFIG_PCI.  Additionally, isa_bridge is a global so we shouldn't use
it a parameter name since it gets redefined to NULL when !CONFIG_PCI.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] ppc32: cpm_uart: fix xchar sending
Aristeu Sergio Rozanski Filho [Thu, 29 Dec 2005 21:18:49 +0000 (19:18 -0200)]
[PATCH] ppc32: cpm_uart: fix xchar sending

while using SCC as uart and as serial console at same time I got this:

[  138.214258] Oops: kernel access of bad area, sig: 11 [#1]
[  138.218832] PREEMPT
[  138.221021] NIP: C0105C48 LR: C0105E60 SP: C03D5D10 REGS: c03d5c60 TRAP: 0300    Not tainted
[  138.229280] MSR: 00009032 EE: 1 PR: 0 FP: 0 ME: 1 IR/DR: 11
[  138.234713] DAR: 00000000, DSISR: C0000000
[  138.238745] TASK = c0349420[693] 'sh' THREAD: c03d4000
[  138.243754] Last syscall: 6
[  138.246402] GPR00: FEFFFFFF C03D5D10 C0349420 C01FB094 00000011 00000000 C1ECFBBC C01F24B0
[  138.254602] GPR08: FF002820 00000000 FF0028C0 00000000 19133615 A0CBCD5E 02000300 00000000
[  138.262804] GPR16: 00000000 01FF9E4C 00000000 7FA9A770 00000000 00000000 1003E2A8 00000000
[  138.271003] GPR24: 100562F4 7F9B6EF4 C0210000 C02A5338 C01FB094 00000000 C01FB094 C1F14574
[  138.279376] NIP [c0105c48] cpm_uart_tx_pump+0x4c/0x22c
[  138.284419] LR [c0105e60] cpm_uart_start_tx+0x38/0xb0
[  138.289361] Call trace:
[  138.291762]  [c0105e60] cpm_uart_start_tx+0x38/0xb0
[  138.296547]  [c010277c] uart_send_xchar+0x88/0x118
[  138.301244]  [c01029a0] uart_unthrottle+0x6c/0x138
[  138.305942]  [c00ece10] check_unthrottle+0x60/0x64
[  138.310641]  [c00ecec4] reset_buffer_flags+0xb0/0x138
[  138.315595]  [c00ecf64] n_tty_flush_buffer+0x18/0x78
[  138.320465]  [c00e81b0] tty_ldisc_flush+0x64/0x7c
[  138.325078]  [c010410c] uart_close+0xf0/0x2c8
[  138.329348]  [c00e9c48] release_dev+0x724/0x8d4
[  138.333790]  [c00e9e18] tty_release+0x20/0x3c
[  138.338061]  [c006e544] __fput+0x178/0x1e0
[  138.342076]  [c006c43c] filp_close+0x54/0xac
[  138.346261]  [c0002d90] ret_from_syscall+0x0/0x44
[  138.352386] note: sh[693] exited with preempt_count 2

a easy way to reproduce it is log into the system using ssh and do:
cat >/dev/ttyCPM0
then, switch to minicom and write some stuff on it back to ssh, a control C
produce the oops

this happens because uart_close calls uart_shutdown which frees xmit.buf,
currently used by xchar sending in cpm_uart_tx_pump(), which seems wrong.

the attached patch fixes the oops and also fixes xchar sending.

Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] Small fix in eeh definitions when CONFIG_EEH not enabled
Haren Myneni [Wed, 28 Dec 2005 02:58:29 +0000 (18:58 -0800)]
[PATCH] Small fix in eeh definitions when CONFIG_EEH not enabled

Undefined symbols (eeh_add_device_tree_early and eeh_remove_bus_device)
when EEH is not enabled. This small patch will fix this.

Acked-by: Linas Vepstas <linas@austin.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] powerpc: Fix search for the main interrupt controller
Haren Myneni [Tue, 27 Dec 2005 23:51:07 +0000 (15:51 -0800)]
[PATCH] powerpc: Fix search for the main interrupt controller

At present, we are not looking at all interrupt controller nodes in the
device tree even though the proper node was not found. This is causing
the system panic. The attached patch will scan all nodes until it finds
the proper interrupt controller type.

Signed-off-by: Haren Myneni <haren@us.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>