Commit Graph

6981 Commits

Author SHA1 Message Date
Rod Whitby
e22b04fb6b [ARM] 3597/1: ixp4xx/nslu2: Board support for new LED subsystem
Patch from Rod Whitby

This patch implements NEW_LEDS support for the Linksys NSLU2.  The
NSLU2 has four LED indicators, which are the only form of output for
an unmodified device - there is no keyboard or display on an NSLU2.
For an NSLU2 which has been modified to bring out the serial port
console, it is important to register that device first separately, to
enable debugging of other device support.

Signed-off-by: John Bowler <jbowler@acm.org>
Signed-off-by: Rod Whitby <rod@whitby.id.au>
Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-22 22:21:02 +01:00
Rod Whitby
df6934b33c [ARM] 3595/1: ixp4xx/nas100d: Board support for new LED subsystem
Patch from Rod Whitby

This patch implements NEW_LEDS support for the IOMega NAS100d.  The
NAS100d has three LED indicators, which are the only form of output
for an unmodified device - there is no keyboard or display on an
NAS100d.  For an NAS100d which has been modified to bring out the
serial port console, it is important to register that device first
separately, to enable debugging of other device support.

Signed-off-by: John Bowler <jbowler@acm.org>
Signed-off-by: Rod Whitby <rod@whitby.id.au>
Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-22 22:21:01 +01:00
Nicolas Pitre
f606a6ff22 [ARM] 3626/1: ARM EABI: fix syscall restarting
Patch from Nicolas Pitre

The RESTARTBLOCK case currently store some code on the stack to invoke
sys_restart_syscall.  However this is ABI dependent and there is a
mismatch with the way __NR_restart_syscall gets defined when the kernel
is compiled for EABI.

There is also a long standing bug in the thumb case since with OABI the
__NR_restart_syscall value includes __NR_SYSCALL_BASE which should not
be the case for Thumb syscalls.

Credits to Yauheni Kaliuta <yauheni.kaliuta@gmail.com> for finding the
EABI bug.

Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-22 22:18:45 +01:00
Ben Dooks
92b7eb8ffc [ARM] 3628/1: S3C24XX: add get_rate call to struct clk
Patch from Ben Dooks

Add a get_rate call to allow an given clock
to over-ride the clk_get_rate() call.

This provides support for clocks which rely on
division of their parent to correctly report
their frequency when the parent can also change.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-22 22:18:21 +01:00
Ben Dooks
99c13853ff [ARM] 3627/1: S3C24XX: split s3c2410 clocks from core clocks
Patch from Ben Dooks

Split the s3c2410 specific clocks from the core
clock code, as part of the work to support more
of the Samsung line of SoCs.

The patch does not use the sysdev mechanism as
the clocks are needed for the timer init, which
is very early in the kernel init sequence.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-22 22:18:20 +01:00
Ben Dooks
a341305e94 [ARM] 3613/1: S3C2410: Add sysdev and sysclass
Patch from Ben Dooks

The S3C2440 and S3C2442 both have their own sysdev
and sysclass for differentiating them from the
currently default S3C2410.

Add a sysdev for the S3C2410 as part of the work
to make the code be non-dependant on the S3C2410.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-22 22:18:13 +01:00
Lennert Buytenhek
8b76a68c6c [ARM] 3620/2: ixp23xx: add uengine loader support
Patch from Lennert Buytenhek

This patch allows the ixp2000 uengine loader that is already in the
tree to also be used on the ixp23xx.

Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-22 10:30:56 +01:00
Lennert Buytenhek
744da2cb59 [ARM] 3618/1: add defconfig for logicpd pxa270 card engine
Patch from Lennert Buytenhek

As it's slightly nontrivial to make it possible to build a single
kernel image for both the mainstone and the logicpd pxa270 card engine,
add a separate defconfig for the logicpd pxa270 card engine for now.

Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-22 10:30:55 +01:00
Lennert Buytenhek
a059e33ce6 [ARM] 3617/1: ep93xx: fix slightly incorrect timer tick rate
Patch from Lennert Buytenhek

The tick rate of timers 1-3 isn't exactly 508 kHz as some parts of the
relevant documentation claim, but more like 508.469 kHz (14.7456 MHz
divided by 29.)

Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-22 10:30:54 +01:00
Lennert Buytenhek
f869afab8f [ARM] 3616/1: fix timer handler wrap logic for a number of platforms
Patch from Lennert Buytenhek

A couple of platforms aren't using the right comparison type in their
timer interrupt handlers (as we're comparing two wrapping timestamps,
we need a bmi/bpl-type comparison, not an unsigned comparison) -- this
patch fixes them up.

Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-22 10:30:53 +01:00
Lennert Buytenhek
84b61f6d3a [ARM] 3615/1: ixp23xx: use platform devices for physmap flash
Patch from Lennert Buytenhek

Now that the physmap platform device rewrite is in, make the ixp23xx
boards use platform devices for physmap flash.

Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-22 10:30:52 +01:00
Lennert Buytenhek
0967b5f079 [ARM] 3614/1: ep93xx: use platform devices for physmap flash
Patch from Lennert Buytenhek

Now that the physmap platform device rewrite is in, make the ep93xx
boards use platform devices for physmap flash.

Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-22 10:30:51 +01:00
Vitaly Wool
b741483d7d [ARM] 3623/1: pnx4008: move GPIO-related defines to gpio.h
Patch from Vitaly Wool

This patch moves GPIO-related defines and static inline funcs from include/asm-arm/arch-pnx4008/pm.h to include/asm-arm/arch-pnx4008/gpio.h.
Also, some more GPIO-related defines are added to include/asm-arm/arch-pnx4008/gpio.h as they are needed for the USB host driver (coming soon...)

Signed-off-by: Vitaly Wool <vwool@ru.mvista.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-22 10:26:21 +01:00
Vitaly Wool
e9931b5da6 [ARM] 3622/1: pnx4008: remove clk_use/clk_unuse
Patch from Vitaly Wool

clk_use/clk_unuse functions are no longer needed, so removing those from arch/arm/mach-pnx4008/clock.c.
Also, the order of functions is rearranged a bit, to avoid forward declarations.

Signed-off-by: Vitaly Wool <vwool@ru.mvista.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-22 10:26:20 +01:00
Russell King
1a6be26d5b [ARM] Enable VFP to be built when non-VFP capable CPUs are selected
Since we pass flags to the compiler to control code generation based
on the least capable selected CPU, if we want to include VFP support,
we must tweak the assembler flags to allow the VFP instructions.
Moreover, we must not use the mrrc/mcrr versions since these will not
be recognised by the assembler.

We do not convert all instructions to the VFP-equivalent (yet) since
binutils appears to barf on "fmrx rn, fpinst" and doesn't provide any
other way (other than using the mrc equivalent) to encode this
instruction - which is rather a problem when you have a VFP
implementation which requires these instructions.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-22 10:24:24 +01:00
Russell King
d6551e884c [ARM] Add thread_notify infrastructure
Some machine classes need to allow VFP support to be built into the
kernel, but still allow the kernel to run even though VFP isn't
present.  Unfortunately, the kernel hard-codes VFP instructions
into the thread switch, which prevents this being run-time selectable.

Solve this by introducing a notifier which things such as VFP can
hook into to be informed of events which affect the VFP subsystem
(eg, creation and destruction of threads, switches between threads.)

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-22 10:24:18 +01:00
Kumar Gala
01cced2507 [PATCH] USB: allow multiple types of EHCI controllers to be built as modules
In some systems we may have both a platform EHCI controller and PCI EHCI
controller.  Previously we couldn't build the EHCI support as a module due
to conflicting module_init() calls in the code.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-06-21 15:04:09 -07:00
Tony Luck
1323523f50 Pull rework-memory-attribute-aliasing into release branch 2006-06-21 14:50:10 -07:00
Ian Wienand
9ba8933455 [IA64] SKI Simulator boot
Sorry I didn't notice earlier, but that BUG_ON triggers for me on the
simulator.  AFAICS the mask for itv is set in cpu_init(), which comes
after sal_init().  Consequently on the simulator the itv still has its
start value of zero.  I've probably missed something, but I wonder why
at this stage of the boot you even need to save and restore the itv?

Signed-Off-By: Ian Wienand <ianw@gelato.unsw.edu.au>
Signed-off-by: Tony Luck <tony.luck@intel.com>
2006-06-21 14:48:34 -07:00
Mike Habeck
f640f94ec4 [IA64-SGI] fix SGI Altix tioce_bus_fixup() bug
The following patch fixes a bug in the SGI Altix tioce_bus_fixup()
code.  ce_dre_comp_err_addr needs to be zero'd out not ~0ULL.  As
a result completion errors weren't being captured.

Signed-off-by: Mike Habeck <habeck@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
2006-06-21 14:47:06 -07:00
Keith Owens
d270acbc24 [IA64] Sanitize assembler code for ia64_sal_os_state
struct ia64_sal_os_state has three semi-independent sections.  The code
in mca_asm.S assumes that these three sections are contiguous, which
makes it very awkward to add new data to this structure.  Remove the
assumption that the sections are contiguous.  Define a macro to shorten
references to offsets in ia64_sal_os_state.

This patch does not change the way that the code behaves.  It just
makes it easier to update the code in future and to add fields to
ia64_sal_os_state when debugging the MCA/INIT handlers.

Signed-off-by: Keith Owens <kaos@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
2006-06-21 14:44:26 -07:00
Kenji Kaneshige
b7bb575c3f [IA64] Make PCI Express support selectable
When I tried to use PCI Express Hotplug driver on my ia64 box, I
noticed that "PCI Express support" is not even selectable on ia64.
This patch makes PCI Express support selectable.

Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
2006-06-21 14:42:24 -07:00
David Mosberger-Tang
6588473490 [IA64] make efi_stub.S fit in 80 cols
Just a trivial cleanup patch

Signed-off-by: Tony Luck <tony.luck@intel.com>
2006-06-21 14:35:28 -07:00
Randy Dunlap
9ed059e155 [CPUFREQ] Fix powernow-k8 SMP kernel on UP hardware bug.
Fix powernow-k8 doesn't load bug.
Reference: https://launchpad.net/distros/ubuntu/+source/linux-source-2.6.15/+bug/35145

Signed-off-by: Ben Collins <bcollins@ubuntu.com>
Signed-off-by: Dave Jones <davej@redhat.com>
2006-06-21 17:34:25 -04:00
Jeremy Fitzhardinge
491b07c98f [PATCH] redirect speedstep-centrino maintainer mail to cpufreq list
I haven't really maintained this driver for a while, and I'm not
keeping up with the latest in Intel power management.  I get a steady
stream of mail which I don't really do anything useful with; the
cpufreq list seems like a better destination, unless someone wants to
get the mail directly.

Also clean up a couple of ancient comments which don't really apply
anymore (as far as I know, nobody has ever damaged a CPU with this
driver).

Signed-off-by: Jeremy Fitzhardinge <jeremy@goop.org>
Signed-off-by: Dave Jones <davej@redhat.com>
2006-06-21 17:34:25 -04:00
Jack Steiner
a1d7057727 [IA64-SGI] SN topology fix for large systems
There is an SN bug in sn_hwperf.c that affects systems with 1024n or 1024p.
The bug manifests itself 2 ways: IO interrupts are not always
targeted to the nearest node, and 2) the "cat /proc/sgi_sn/sn_topology"
commands fails with "cannot allocate memory".

The code is using the wrong macros for validating node numbers.

Signed-off-by: Jack Steiner <steiner@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
2006-06-21 14:33:56 -07:00
Alex Williamson
5eb1d63f5f [IA64] sanity check reserved region usage
One more trivial, stand-alone patch from the Xen/ia64 review.  Sanity
check usage of the reserved region numbers.

Signed-off-by: Alex Williamson <alex.williamson@hp.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
2006-06-21 14:32:25 -07:00
Alex Williamson
120b286d3c [IA64] add vmlinuz target
This is a trivial stand-alone patch out of the Xen/ia64 patches.  Add
a vmlinuz build target to be more compatible with x86-ish targets.

Signed-off-by: Alex Williamson <alex.williamson@hp.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
2006-06-21 14:31:07 -07:00
Chuck Ebbert
ead2bfeb7f [PATCH] PCI: fix issues with extended conf space when MMCONFIG disabled because of e820
On 15 Jun 2006 03:45:10 +0200, Andi Kleen wrote:

> Anyways I would say that if the BIOS can't get MCFG right then
> it's likely not been validated on that board and shouldn't be used.

According to Petr Vandrovec:

 ... "What is important (and checked) is address of MMCONFIG reported by MCFG
 table...  Unfortunately code does not bother with printing that address :-(

 "Another problem is that code has hardcoded that MMCONFIG area is 256MB large.
 Unfortunately for the code PCI specification allows any power of two between 2MB
 and 256MB if vendor knows that such amount of busses (from 2 to 128) will be
 sufficient for system.  With notebook it is quite possible that not full 8 bits
 are implemented for MMCONFIG bus number."

So here is a patch.  Unfortunately my system still fails the test because
it doesn't reserve any part of the MMCONFIG area, but this may fix others.

Booted on x86_64, only compiled on i386.  x86_64 still remaps the max area
(256MB) even though only 2MB is checked... but 2.6.16 had no check at all
so it is still better.

PCI: reduce size of x86 MMCONFIG reserved area check

1.  Print the address of the MMCONFIG area when the test for that area
    being reserved fails.

2.  Only check if the first 2MB is reserved, as that is the minimum.

Signed-off-by: Chuck Ebbert <76306.1226@compuserve.com>
Acked-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-06-21 12:00:01 -07:00
Konrad Rzeszutek
acc7c2e0b7 [PATCH] PCI: fix memory leak in MMCONFIG error path
This a bit late (yours patch was posted about a year ago), but
a co-worker of spotted part of the code that looks like a memory
leak. Looking at the code it seems that pci_mmcfg_config should
be free-ed if MMCONFIG is above 4GB.

From: Konrad Rzeszutek <konradr@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-06-21 12:00:01 -07:00
Greg Kroah-Hartman
4d15a1779d [PATCH] PCI: fix error with pci_get_device() call in the mpc85xx driver
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-06-21 12:00:01 -07:00
Rajesh Shah
53e4d30dd6 [PATCH] PCI: i386/x86_84: disable PCI resource decode on device disable
When a PCI device is disabled via pci_disable_device(), it's still
left decoding its BAR resource ranges even though its driver
will have likely released those regions (and may even have
unloaded). pci_enable_device() already explicitly enables
BAR resource decode for the device being enabled. This patch
disables resource decode for the PCI device being disabled,
making it symmetric with the enable call.

I saw this while doing something else, not because of a
problem report. Still, seems to be the correct thing to do.

Signed-off-by: Rajesh Shah <rajesh.shah@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-06-21 11:59:59 -07:00
Mark Maule
83821d3f55 [PATCH] PCI: altix: msi support
MSI callouts for altix.  Involves a fair amount of code reorg in sn irq.c
code as well as adding some extensions to the altix PCI provider abstaction.

Signed-off-by: Mark Maule <maule@sgi.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-06-21 11:59:59 -07:00
Mark Maule
10083072bf [PATCH] PCI: per-platform IA64_{FIRST,LAST}_DEVICE_VECTOR definitions
Abstract IA64_FIRST_DEVICE_VECTOR/IA64_LAST_DEVICE_VECTOR since SN platforms
use a subset of the IA64 range.  Implement this by making the above macros
global variables which the platform can override in it setup code.

Also add a reserve_irq_vector() routine used by SN to mark a vector's as
in-use when that weren't allocated through assign_irq_vector().

Signed-off-by: Mark Maule <maule@sgi.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-06-21 11:59:59 -07:00
Kelly Daly
2191fe3e39 [POWERPC] re-enable OProfile for iSeries, using timer interrupt
This patch removes the changes from an earlier patch that disables
oProfile for iSeries within the oProfile KConfig (submitted Feb 23,
2006).  Checks within the arch init for iSeries, still allowing profiling
for timer interrupts (using firmware_has_feature).

Signed-off-by: Kelly Daly <kelly@au.ibm.com>
Acked-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:33 +10:00
Anton Blanchard
0bb474a48e [POWERPC] support ibm,extended-*-frequency properties
Support the ibm,extended-*-frequency properties found in recent POWER5
firmware:

cpus/PowerPC,POWER5@0/clock-frequency
                 59aa5880 (1504336000)
cpus/PowerPC,POWER5@0/ibm,extended-clock-frequency
                 00000000 59aa5880
cpus/PowerPC,POWER5@0/timebase-frequency
                 0b354b10 (188042000)
cpus/PowerPC,POWER5@0/ibm,extended-timebase-frequency
                 00000000 0b354b10

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:33 +10:00
Nathan Lynch
ccba051c37 [POWERPC] Extra sanity check in EEH code
Don't dereference a device node that isn't there.  A "shouldn't
happen" case, but someone ran into it with a possibly misconfigured
device tree.

Signed-off-by: Nathan Lynch <ntl@pobox.com>
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:33 +10:00
Anton Blanchard
d3c58fb177 [POWERPC] Dont look for class-code in pci children
Looking for class-code in PCI children breaks with direct slots. Lets
just count all children.

Signed-off-by: Anton Blanchard <anton@samba.org>
Acked-by: Olof Johansson <olof@lixom.net>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:33 +10:00
Andreas Schwab
72abd54035 [POWERPC] Unify ppc syscall tables
Avoid duplication of the syscall table for the cell platform.  Based on an
idea from David Woodhouse.

Signed-off-by: Andreas Schwab <schwab@suse.de>
Acked-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:32 +10:00
Mark A. Greer
868ea0c925 [POWERPC] mpic: add support for serial mode interrupts
On Tue, Jun 20, 2006 at 02:01:26PM +1000, Benjamin Herrenschmidt wrote:
> On Mon, 2006-06-19 at 13:08 -0700, Mark A. Greer wrote:
> > MPC10x-style interrupt controllers have a serial mode that allows
> > several interrupts to be clocked in through one INT signal.
> >
> > This patch adds the software support for that mode.
>
> You hard code the clock ratio... why not add a separate call to be
> called after mpic_init,
> something like mpic_set_serial_int(int mpic, int enable, int
> clock_ratio) ?

How's this?
--

MPC10x-style interrupt controllers have a serial mode that allows
several interrupts to be clocked in through one INT signal.

This patch adds the software support for that mode.

Signed-off-by: Mark A. Greer <mgreer@mvista.com>
--

 arch/powerpc/sysdev/mpic.c |   20 ++++++++++++++++++++
 include/asm-powerpc/mpic.h |   10 ++++++++++
 2 files changed, 30 insertions(+)
--
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:32 +10:00
Linas Vepstas
0aa8d15b01 [POWERPC] pseries: Print PCI slot location code on failure
The PCI error recovery code will printk diagnostic info when
a PCI error event occurs. Change the messages to include the slot
location code, which is how most sysadmins will know the device.

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:32 +10:00
arnd@arndb.de
379507181a [POWERPC] spufs: one more fix for 64k pages
The SPU context save/restore code is currently built
for a 4k page size and we provide a _shipped version
of it since most people don't have the spu toolchain
that is needed to rebuild that code.

This patch hardcodes the data structures to a 64k
page alignment, which also guarantees 4k alignment
but unfortunately wastes 60k of memory per SPU
context that is created in the running system.

We will follow up on this with another patch to
reduce that overhead or maybe redo the context
save/restore logic to do this part entirely different,
but for now it should make experimental systems
work with either page size.

Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:32 +10:00
arnd@arndb.de
c983294872 [POWERPC] spufs: fail spu_create with invalid flags
At this time, all flags are invalid. Since we are
planning to actually add valid flags in the future,
we better check if any were passed by the user.

Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:32 +10:00
Masato Noguchi
ba723fe2b2 [POWERPC] spufs: clear class2 interrupt status before wakeup
SPU interrupt status must be cleared before handle it.
Otherwise, kernel may drop some interrupt packet.

Currently, class2 interrupt treated like:
 1) call callback to wake up waiting process
 2) mask raised mailbox interrupt
 3) clear interrupt status

I changed like:
 1) mask raised mailbox interrupt
 2) clear interrupt status
 3) call callback to wake up waiting process

Clearing status before masking will make spurious interrupt.
Thus, it is necessary to hold by steps I described above, I think.

Signed-off-by: Masato Noguchi <Masato.Noguchi@jp.sony.com>
Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:32 +10:00
Masato Noguchi
6e18b27bd0 [POWERPC] spufs: fix Makefile for "make clean"
added spu_{save,restore}_dump.h to target of 'make clean'

Signed-off-by: Masato Noguchi <Masato.Noguchi@jp.sony.com>
Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:31 +10:00
Masato Noguchi
2eabbbd33e [POWERPC] spufs: remove stop_code from struct spu
This patch remove 'stop_code' -- discarded member of struct spu.
It is written at initialize and interrupt, but never read
in current implementation.

Signed-off-by: Masato Noguchi <Masato.Noguchi@jp.sony.com>
Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:31 +10:00
Geoff Levand
a91942ae7e [POWERPC] spufs: fix spu irq affinity setting
This changes the hypervisor abstraction of setting cpu affinity to a
higher level to avoid platform dependent interrupt controller
routines.  I replaced spu_priv1_ops:spu_int_route_set() with a
new routine spu_priv1_ops:spu_cpu_affinity_set().

As a by-product, this change eliminated what looked like an
existing bug in the set affinity code where spu_int_route_set()
mistakenly called int_stat_get().

Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com>
Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:31 +10:00
Geoff Levand
540270d82d [POWERPC] spufs: further abstract priv1 register access
To support muti-platform binaries the spu hypervisor accessor
routines must have runtime binding.

I removed the existing statically linked routines in spu.h
and spu_priv1_mmio.c and created new accessor routines in spu_priv1.h
that operate indirectly through an ops struct spu_priv1_ops.
spu_priv1_mmio.c contains the instance of the accessor routines
for running on raw hardware.

Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com>
Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:31 +10:00
Geoff Levand
c01ea72a3b [POWERPC] spufs: split the Cell BE support into generic and platform dependant parts
Creates new config variables PPC_CELL_NATIVE and PPC_IBM_CELL_BLADE.
The existing CONFIG_PPC_CELL is now used to denote the generic
Cell processor support.

PPC_CELL = make descends into platforms/cell
PPC_CELL_NATIVE = add bare metal support
PPC_IBM_CELL_BLADE = add blade device drivers, etc.

Also renames spu_priv1.c to spu_priv1_mmio.c.

Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com>
Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:31 +10:00
arnd@arndb.de
e46a0237fd [POWERPC] spufs: dont try to access SPE channel 1 count
The save/restore sequence for SPE contexts currently attempts to save
and restore the channel count for SPE channel 1 (the SPU_WriteEventMask
channel.  But the CBE architecture (section 9.11.2) clearly states
that this channel does not have an associated count.  Hardware simply
ignores the attempt to write this count, but the simulator generates
a warning message.

WARNING: 279721590: SPE7: Attempt to write channel count for CH 1 with
no associated count is ignored.

Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:31 +10:00
Jeremy Kerr
ecec21770d [POWERPC] spufs: use kzalloc in create_spu
Clean up create_spu() a little by using kzalloc instead of kmalloc +
assignments.

Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:30 +10:00
arnd@arndb.de
970f1baae7 [POWERPC] spufs: fix initial state of wbox file
The wbox channel count of an spu is now initialized
to four for the saved context. This makes it possible
to write to the mailbox right away without waiting
for the SPE to become scheduled first.

Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:30 +10:00
arnd@arndb.de
7b1a701480 [POWERPC] spufs: add a phys-id attribute to each SPU context
For performance analysis, it is often interesting to know
which physical SPE a thread is currently running on, and,
more importantly, if it is running at all.

This patch adds a simple attribute to each SPU directory
with that information.
The attribute is read-only and called 'phys-id'. It contains
an ascii string with the number of the physical SPU (e.g.
"0x5"), or alternatively the string "0xffffffff" (32 bit -1)
when it is not running at all at the time that the file
is read.

Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:30 +10:00
arnd@arndb.de
724bd80e81 [POWERPC] spufs: set up correct SLB entries for 64k pages
spufs currently knows only 4k pages and 16M hugetlb
pages. Make it use the regular methods for deciding on
the SLB bits.

Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:30 +10:00
Michael Ellerman
0309f02d8e [POWERPC] spufs: fix deadlock in spu_create error path
spufs_rmdir tries to acquire the spufs root
i_mutex, which is already held by spufs_create_thread.

This was tracked as Bug #H9512.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:30 +10:00
arnd@arndb.de
d9379c4bce [POWERPC] spufs: restore mapping of mssync register
A recent change to the way that the mfc file gets mapped made it
impossible to map the SPE Multi-Source Synchronization register
into user space, but that may be needed by some applications.

This restores the missing functionality.

Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:30 +10:00
arnd@arndb.de
91edfa49b9 [POWERPC] cell: always build spu base into the kernel
The spu_base module is rather deeply intermixed with the
core kernel, so it makes sense to have that built-in.
This will let us extend the base in the future without
having to export more core symbols just for it.

Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:30 +10:00
Jeremy Kerr
1d64093f66 [POWERPC] cell: register SPUs as sysdevs
SPUs are registered as system devices, exposing attributes through
sysfs. Since the sysdev includes a kref, we can remove the one in
struct spu (it isn't used at the moment anyway).

Currently only the interrupt source and numa node attributes are added.

Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:29 +10:00
arnd@arndb.de
0f0f90c304 [POWERPC] cell: update defconfig
Enable some of the most requested features in defconfig
and refresh with the latest powerpc.git Kconfig files.

Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:29 +10:00
arnd@arndb.de
b40feec8ef [POWERPC] cell: fix interrupt priority handling
Checking the priority field to test for irq validity is
completely bogus and breaks with future external interrupt
controllers.

Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:29 +10:00
Benjamin Herrenschmidt
acf7d76827 [POWERPC] cell: add RAS support
This is a first version of support for the Cell BE "Reliability,
Availability and Serviceability" features.

It doesn't yet handle some of the RAS interrupts (the ones described in
iic_is/iic_irr), I'm still working on a proper way to expose these. They
are essentially a cascaded controller by themselves (sic !) though I may
just handle them locally to the iic driver. I need also to sync with
David Erb on the way he hooked in the performance monitor interrupt.

So that's all for 2.6.17 and I'll do more work on that with my rework of
the powerpc interrupt layer that I'm hacking on at the moment.

Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:29 +10:00
Jon Loeliger
b809b3e86f [POWERPC] Add mpc8641hpcn PCI/PCI-Express platform files.
Signed-off-by: Xianghua Xiao <x.xiao@freescale.com>
Signed-off-by: Wei Zhang <Wei.Zhang@freescale.com>
Signed-off-by: Haiying Wang <Haiying.Wang@freescale.com>
Signed-off-by: Jon Loeliger <jdl@freescale.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:28 +10:00
Jon Loeliger
4ca4b6274c [POWERPC] Add the MPC8641 HPCN platform files.
Signed-off-by: Xianghua Xiao <x.xiao@freescale.com>
Signed-off-by: Haiying Wang <Haiying.Wang@freescale.com>
Signed-off-by: Wei Zhang <Wei.Zhang@freescale.com>
Signed-off-by: Jon Loeliger <jdl@freescale.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:28 +10:00
Jon Loeliger
ee0339f205 [POWERPC] Add starting of secondary 86xx CPUs.
Clear the high BATS during load_up_mmu if FTR_HAS_HIGH_BATS.
Allow just a bit more time for secondary CPUs to phone home.

Signed-off-by: Wei Zhang <Wei.Zhang@freescale.com>
Signed-off-by: Haiying Wang <Haiying.Wang@freescale.com>
Signed-off-by: Jon Loeliger <jdl@freescale.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:28 +10:00
Jon Loeliger
9674ed38d8 [POWERPC] Add 8641 CPU table entry.
Signed-off-by: Wei Zhang <Wei.Zhang@freescale.com>
Signed-off-by: Xianghua Xiao <x.xiao@freescale.com>
Signed-off-by: Jon Loeliger <jdl@freescale.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:28 +10:00
Jon Loeliger
96abe9358b [POWERPC] Add mpc8641_hpcn_defconfig config file.
Signed-off-by: Jon Loeliger <jdl@freescale.com>
Signed-off-by: Haiying Wang <Haiying.Wang@freescale.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:28 +10:00
Jon Loeliger
c9b484b5c1 [POWERPC] Add the mpc8641 hpcn Kconfig and Makefiles.
Signed-off-by: Xianghua Xiao <x.xiao@freescale.com>
Signed-off-by: Jon Loeliger <jdl@freescale.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:27 +10:00
Jon Loeliger
8a30088794 [POWERPC] Prevent duplicate lmb reservations for Device Tree blob.
Signed-off-by: Jon Loeliger <jdl@freescale.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:27 +10:00
Jon Loeliger
2198c07049 [POWERPC] Guard L3CR references with CPU_FTR_L3CR.
Signed-off-by: Jon Loeliger <jdl@freescale.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:27 +10:00
John Rose
7932f0b82f [POWERPC] RTAS delay, fix module build breaks
Export both news RTAS delay functions, and change the scanlog module to
use the new delay functions.

Signed-off-by: John Rose <johnrose@austin.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-21 15:01:27 +10:00
Linus Torvalds
050335db2a Merge branch 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm
* 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm: (42 commits)
  [ARM] Fix tosa build error
  [ARM] 3610/1: Make reboot work on Versatile
  [ARM] 3609/1: S3C24XX: defconfig update for s3c2410_defconfig
  [ARM] 3591/1: Anubis: IDE device definitions
  [ARM] Include asm/hardware.h not asm/arch/hardware.h
  [ARM] 3594/1: Poodle: Add touchscreen support + other updates
  [ARM] 3564/1: sharpsl_pm: Abstract some machine specific parameters
  [ARM] 3561/1: Poodle: Correct the MMC/SD power control
  [ARM] 3593/1: Add reboot and shutdown handlers for Zaurus handhelds
  [ARM] 3599/1: AT91RM9200 remove global variables
  [ARM] 3607/1: AT91RM9200 misc fixes
  [ARM] 3605/1: AT91RM9200 Power Management
  [ARM] 3604/1: AT91RM9200 New boards
  [ARM] 3603/1: AT91RM9200 remove old files
  [ARM] 3592/1: AT91RM9200 Serial driver update
  [ARM] 3590/1: AT91RM9200 Platform devices support
  [ARM] 3589/1: AT91RM9200 DK/EK board update
  [ARM] 3588/1: AT91RM9200 CSB337/637 board update
  [ARM] 3587/1: AT91RM9200 hardware headers
  [ARM] 3586/1: AT91RM9200 header update
  ...
2006-06-20 17:52:36 -07:00
Linus Torvalds
be883da759 Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
* master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:
  [SPARC64]: Update defconfig.
  [SPARC64]: Don't double-export synchronize_irq.
  [SPARC64]: Move over to GENERIC_HARDIRQS.
  [SPARC64]: Virtualize IRQ numbers.
  [SPARC64]: Kill ino_bucket->pil
  [SPARC]: Kill __irq_itoa().
  [SPARC64]: bp->pil can never be zero
  [SPARC64]: Send all device interrupts via one PIL.
  [SPARC]: Fix iommu_flush_iotlb end address
  [SPARC]: Mark smp init functions as cpuinit
  [SPARC]: Add missing rw can_lock macros
  [SPARC]: Setup cpu_possible_map
  [SPARC]: Add topology_init()
2006-06-20 17:39:28 -07:00
Russell King
905f14672e [ARM] Fix tosa build error
tosa.c references mdelay(), but was missing linux/delay.h

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-20 23:27:37 +01:00
Linus Torvalds
2edc322d42 Merge git://git.infradead.org/~dwmw2/rbtree-2.6
* git://git.infradead.org/~dwmw2/rbtree-2.6:
  [RBTREE] Switch rb_colour() et al to en_US spelling of 'color' for consistency
  Update UML kernel/physmem.c to use rb_parent() accessor macro
  [RBTREE] Update hrtimers to use rb_parent() accessor macro.
  [RBTREE] Add explicit alignment to sizeof(long) for struct rb_node.
  [RBTREE] Merge colour and parent fields of struct rb_node.
  [RBTREE] Remove dead code in rb_erase()
  [RBTREE] Update JFFS2 to use rb_parent() accessor macro.
  [RBTREE] Update eventpoll.c to use rb_parent() accessor macro.
  [RBTREE] Update key.c to use rb_parent() accessor macro.
  [RBTREE] Update ext3 to use rb_parent() accessor macro.
  [RBTREE] Change rbtree off-tree marking in I/O schedulers.
  [RBTREE] Add accessor macros for colour and parent fields of rb_node
2006-06-20 14:51:22 -07:00
Linus Torvalds
ff9144530e Merge master.kernel.org:/home/rmk/linux-2.6-arm
* master.kernel.org:/home/rmk/linux-2.6-arm: (22 commits)
  [ARM] 3559/1: S3C2442: core and serial port
  [ARM] 3557/1: S3C24XX: centralise and cleanup uart registration
  [ARM] 3558/1: SMDK24XX: LED platform devices
  [ARM] 3534/1: add spi support to lubbock platform
  [ARM] 3554/1: ARM: Fix dyntick locking
  [ARM] 3553/1: S3C24XX: earlier print of cpu idcode info
  [ARM] 3552/1: S3C24XX: Move VA of GPIO for low-level debug
  [ARM] 3551/1: S3C24XX: PM code failes to compile with CONFIG_DCACHE_WRITETHROUGH
  [ARM] 3550/1: OSIRIS: fix serial port map for 1:1
  [ARM] 3548/1: Fix the ARMv6 CPU id in compressed/head.S
  [ARM] 3335/1: Old-abi Thumb sys_syscall broken
  [ARM] 3467/1: [3/3] Support for Philips PNX4008 platform: defconfig
  [ARM] 3466/1: [2/3] Support for Philips PNX4008 platform: chip support
  [ARM] 3465/1: [1/3] Support for Philips PNX4008 platform: headers
  [ARM] 3407/1: lpd7x: documetation update
  [ARM] 3406/1: lpd7x: compilation fix for smc91x
  [ARM] 3405/1: lpd7a40x: CPLD ssp driver
  [ARM] 3404/1: lpd7a40x: AMBA CLCD support
  [ARM] 3403/1: lpd7a40x: updated default configurations
  [ARM] 3402/1: lpd7a40x: serial driver bug fix
  ...
2006-06-20 14:49:00 -07:00
Deepak Saxena
4af6fee188 [ARM] 3610/1: Make reboot work on Versatile
Patch from Deepak Saxena

This patch makes soft reboot work on the Versatile board. Thanks to
Catalin Marinas @ ARM for pointing out the proper way to do this.

Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-20 21:30:44 +01:00
Russell King
098a4cb7c0 Merge S3Cxxxx branch 2006-06-20 20:57:34 +01:00
Russell King
ea75ee9ab8 [ARM] Include asm/hardware.h not asm/arch/hardware.h
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-20 19:53:16 +01:00
Russell King
3a8182bd88 Merge Zaurus branch 2006-06-20 19:49:07 +01:00
Russell King
695a9d236a Merge AT91 branch 2006-06-20 19:48:18 +01:00
Andrew Victor
55c20c0af7 [ARM] 3599/1: AT91RM9200 remove global variables
Patch from Andrew Victor

This patch removes some now unnecessary global variables -
at91_master_clock, at91_serial_map, at91_console_port.

Signed-off-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-20 19:31:39 +01:00
Ben Dooks
ec57b709c3 [ARM] 3609/1: S3C24XX: defconfig update for s3c2410_defconfig
Patch from Ben Dooks

Update s3c2410_defconfig to latest kernel with the
latest patches

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-20 19:31:06 +01:00
Andrew Victor
5c3fddced9 [ARM] 3607/1: AT91RM9200 misc fixes
Patch from Andrew Victor

This final patch includes some general fixes.

1. Link in pm.o if CONFIG_PM is enabled.  [Should have been included in
patch 3605/1].
2. Use __raw_readl()/__raw_writel() when accessing System Peripheral
registers.
3. Removed some unnecessary includes

Signed-off-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-20 19:30:20 +01:00
Andrew Victor
907d6deb62 [ARM] 3605/1: AT91RM9200 Power Management
Patch from Andrew Victor

This patch adds the core Power Management support for the AT91RM9200
processor.  It will support suspend-to-RAM and standby modes.

The suspend-to-RAM functionality is not 100% complete.  The code that
needs to be execute from the internal SRAM to restore the system is
outstanding.  For now we just fall through to Standby mode.

The AT91-specific at91_suspend_entering_slow_clock() function will
eventually be replaced by clk_must_disable() once that functionality is
added to mainline clock API.

Patch from David Brownell.

Signed-off-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-20 19:30:19 +01:00
Andrew Victor
6902f523a3 [ARM] 3604/1: AT91RM9200 New boards
Patch from Andrew Victor

This patch adds support for an additional 4 AT91RM9200-based boards:

1. Conitec ARM&EVA  [MACH_CARMEVA]
   (http://www.conitec.net/english/linuxboard.htm)

2. KwikByte KB920x  [MACH_KB9200]
   (http://kwikbyte.com/KB9202_description_new.htm)

3. Embest ATEB9200  [MACH_ATEB9200]
   (http://www.embedinfo.com/english/product/ATEB9200.asp)

4. Sperry-Sun KAFA board  [MACH_KAFA]
   (unknown)

Signed-off-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-20 19:30:18 +01:00
David S. Miller
4c5eb38af2 [SPARC64]: Update defconfig.
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-06-20 01:27:08 -07:00
David S. Miller
c8bfcd95de [SPARC64]: Don't double-export synchronize_irq.
It is done by the generic IRQ layer now.

Signed-off-by: David S. Miller <davem@davemloft.net>
2006-06-20 01:23:56 -07:00
David S. Miller
e18e2a00ef [SPARC64]: Move over to GENERIC_HARDIRQS.
This is the long overdue conversion of sparc64 over to
the generic IRQ layer.

The kernel image is slightly larger, but the BSS is ~60K
smaller due to the reduced size of struct ino_bucket.

A lot of IRQ implementation details, including ino_bucket,
were moved out of asm-sparc64/irq.h and are now private to
arch/sparc64/kernel/irq.c, and most of the code in irq.c
totally disappeared.

One thing that's different at the moment is IRQ distribution,
we do it at enable_irq() time.  If the cpu mask is ALL then
we round-robin using a global rotating cpu counter, else
we pick the first cpu in the mask to support single cpu
targetting.  This is similar to what powerpc's XICS IRQ
support code does.

This works fine on my UP SB1000, and the SMP build goes
fine and runs on that machine, but lots of testing on
different setups is needed.

Signed-off-by: David S. Miller <davem@davemloft.net>
2006-06-20 01:23:32 -07:00
David S. Miller
8047e247c8 [SPARC64]: Virtualize IRQ numbers.
Inspired by PowerPC XICS interrupt support code.

All IRQs are virtualized in order to keep NR_IRQS from needing
to be too large.  Interrupts on sparc64 are arbitrary 11-bit
values, but we don't need to define NR_IRQS to 2048 if we
virtualize the IRQs.

As PCI and SBUS controller drivers build device IRQs, we divy
out virtual IRQ numbers incrementally starting at 1.  Zero is
a special virtual IRQ used for the timer interrupt.

So device drivers all see virtual IRQs, and all the normal
interfaces such as request_irq(), enable_irq(), etc. translate
that into a real IRQ number in order to configure the IRQ.

At this point knowledge of the struct ino_bucket is almost
entirely contained within arch/sparc64/kernel/irq.c  There are
a few small bits in the PCI controller drivers that need to
be swept away before we can remove ino_bucket's definition
out of asm-sparc64/irq.h and privately into kernel/irq.c

Signed-off-by: David S. Miller <davem@davemloft.net>
2006-06-20 01:22:35 -07:00
David S. Miller
37cdcd9e82 [SPARC64]: Kill ino_bucket->pil
And reuse that struct member for virt_irq, which will
be used in future changesets for the implementation of
mapping between real and virtual IRQ numbers.

This nicely kills off a ton of SBUS and PCI controller
PIL assignment code which is no longer necessary.

Signed-off-by: David S. Miller <davem@davemloft.net>
2006-06-20 01:21:57 -07:00
David S. Miller
c6387a48cf [SPARC]: Kill __irq_itoa().
This ugly hack was long overdue to die.

It was a way to print out Sparc interrupts in a more freindly format,
since IRQ numbers were arbitrary opaque 32-bit integers which vectored
into PIL levels.  These 32-bit integers were not necessarily in the
0-->NR_IRQS range, but the PILs they vectored to were.

The idea now is that we will increase NR_IRQS a little bit and use a
virtual<-->real IRQ number mapping scheme similar to PowerPC.

That makes this IRQ printing hack irrelevant, and furthermore only a
handful of drivers actually used __irq_itoa() making it even less
useful.

Signed-off-by: David S. Miller <davem@davemloft.net>
2006-06-20 01:21:29 -07:00
David S. Miller
6a76267f0e [SPARC64]: bp->pil can never be zero
Only pil0_dummy_bucket had a pil of zero and we just killed that
off, so we can delete all special case code that used bp->pil==0
as a way to identify a dummy bucket.

Signed-off-by: David S. Miller <davem@davemloft.net>
2006-06-20 01:20:30 -07:00
David S. Miller
fd0504c321 [SPARC64]: Send all device interrupts via one PIL.
This is the first in a series of cleanups that will hopefully
allow a seamless attempt at using the generic IRQ handling
infrastructure in the Linux kernel.

Define PIL_DEVICE_IRQ and vector all device interrupts through
there.

Get rid of the ugly pil0_dummy_{bucket,desc}, instead vector
the timer interrupt directly to a specific handler since the
timer interrupt is the only event that will be signaled on
PIL 14.

The irq_worklist is now in the per-cpu trap_block[].

Signed-off-by: David S. Miller <davem@davemloft.net>
2006-06-20 01:20:00 -07:00
Bob Breuer
3185d4d287 [SPARC]: Fix iommu_flush_iotlb end address
Fix the calculation of the end address when flushing iotlb entries to
ram.  This bug has been a cause of esp dma errors, and it affects
HyperSPARC systems much worse than SuperSPARC systems.

Signed-off-by: Bob Breuer <breuerr@mc.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-06-20 00:36:56 -07:00
Bob Breuer
92d452f0eb [SPARC]: Mark smp init functions as cpuinit
Fix the smp related section mismatch warnings by marking the smp init
functions as cpuinit.

Signed-off-by: Bob Breuer <breuerr@mc.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-06-20 00:36:10 -07:00
Bob Breuer
7202fb496a [SPARC]: Setup cpu_possible_map
Setup cpu_possible_map so the secondary cpus will get started.

Signed-off-by: Bob Breuer <breuerr@mc.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-06-20 00:30:31 -07:00
Bob Breuer
a8cbdcea34 [SPARC]: Add topology_init()
Fix a crash in SMP mode by adding the missing topology_init.
Also makes /proc/cpuinfo backwards compatible with 2.4.

Signed-off-by: Bob Breuer <breuerr@mc.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-06-20 00:28:33 -07:00
Langsdorf, Mark
6cad647da2 [CPUFREQ] correct powernow-k8 fid/vid masks for extended parts
The fid/vid masks for parts using the extended parts are slightly incorrect and can result in
incorrect fid/vid codes being applied.  No instances of this problem have been reported in
the field but it could be a problem with future parts.

Signed-off-by: Mark Langsdorf <mark.langsdorf@amd.com>
Signed-off-by: Dave Jones <davej@redhat.com>
2006-06-20 01:46:04 -04:00
Langsdorf, Mark
e7bdd7a531 [CPUFREQ] Clarify powernow-k8 cpu_family statements
This patch clarifies the meaning of the cpu_family if
statements in the hw pstate driver patch for powernow-k8

Signed-off-by: Mark Langsdorf <mark.langsdorf@amd.com>
Signed-off-by: Dave Jones <davej@redhat.com>
2006-06-20 01:46:04 -04:00
Linus Torvalds
25f42b6af0 Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus
* 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: (51 commits)
  [MIPS] Make timer interrupt frequency configurable from kconfig.
  [MIPS] Correct HAL2 Kconfig description
  [MIPS] Fix R4K cache macro names
  [MIPS] Add Missing R4K Cache Macros to IP27 & IP32
  [MIPS] Support for the RM9000-based Basler eXcite smart camera platform.
  [MIPS] Support for the R5500-based NEC EMMA2RH Mark-eins board
  [MIPS] Support SNI RM200C SNI in big endian mode and R5000 processors.
  [MIPS] SN: include asm/sn/types.h for nasid_t.
  [MIPS] Random fixes for sb1250
  [MIPS] Fix bcm1480 compile
  [MIPS] Remove support for NEC DDB5476.
  [MIPS] Remove support for NEC DDB5074.
  [MIPS] Cleanup memory managment initialization.
  [MIPS] SN: Declare bridge_pci_ops.
  [MIPS] Remove unused function alloc_pci_controller.
  [MIPS] IP27: Extract pci_ops into separate file.
  [MIPS] IP27: Use symbolic constants instead of magic numbers.
  [MIPS] vr41xx: remove unnecessay items from vr41xx/Kconfig.
  [MIPS] IP27: Cleanup N/M mode configuration.
  [MIPS] IP27: Throw away old unused hacks.
  ...
2006-06-19 19:07:12 -07:00
Linus Torvalds
bbf70132db Merge master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreq
* master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreq:
  [CPUFREQ] sets nforce2 minimum PLL divider to 2.
  [CPUFREQ] Make powernow-k7 work on SMP kernels.
  [CPUFREQ] cpufreq core {d,}printk adjustments
  [CPUFREQ] dprintk adjustments to cpufreq-speedstep-centrino
  [CPUFREQ] dprintk adjustments to cpufreq-nforce2
  [CPUFREQ] Prepare powernow-k8 for future CPUs.
  [CPUFREQ] Make acpi-cpufreq 'sticky'.
  [CPUFREQ] Remove strange No-op from longrun.c
  [CPUFREQ] Remove more freq_table reinitialisations.
  [CPUFREQ] Fix another redundant initialisation in freq_table
  [CPUFREQ] Remove duplicate assignment in freq_table
  [CPUFREQ] CodingStyle nits in cpufreq_stats.c
  [CPUFREQ] Remove duplicate assignment from cpufreq-nforce2
  [CPUFREQ] Remove pointless reinitialisations in acpi-cpufreq
  [CPUFREQ] Remove pointless reinitialisation from powernow-k8
  [CPUFREQ] Remove redundant initialisation from longhaul.
  [CPUFREQ] Clean up longhaul's speed pretty-printer
  [CPUFREQ] Disambiguate loop indexes in powernow-k7
  [CPUFREQ] Typo in powernow-k8
2006-06-19 18:51:21 -07:00
Len Brown
ae6c859b7d merge linus into release branch 2006-06-19 18:01:24 -04:00
Richard Purdie
faed568413 [ARM] 3594/1: Poodle: Add touchscreen support + other updates
Patch from Richard Purdie

Poodle Updates:
* Update corgi_ssp to make the GPIO chip selects optional
* Enable corgi_ssp for use by poodle
* Add corgi touchscreen platform device for poodle
* Export locomo platform device.
* Set framebuffer device parent correctly

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-19 20:46:05 +01:00
Richard Purdie
f8703dc8cb [ARM] 3564/1: sharpsl_pm: Abstract some machine specific parameters
Patch from Richard Purdie

Abstract some machine specific parameters from the sharpsl_pm core
into the machine specific drivers. This allows the core to support
tosa/poodle.

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-19 19:58:52 +01:00
Richard Purdie
88660351cb [ARM] 3561/1: Poodle: Correct the MMC/SD power control
Patch from Richard Purdie

Correct the Poodle power control for the MMC/SD port. Also
add write protection switch support.

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-19 19:58:51 +01:00
Richard Purdie
74617fb6b8 [ARM] 3593/1: Add reboot and shutdown handlers for Zaurus handhelds
Patch from Richard Purdie

Add functionality to allow machine specific reboot handlers on ARM.
Add machine specific reboot and poweroff handlers for all PXA Zaurus
models.

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-19 19:57:12 +01:00
Ben Dooks
bf1c56a3aa [ARM] 3591/1: Anubis: IDE device definitions
Patch from Ben Dooks

Platform device definitions for the two IDE ports
on the Simtec Anubis board.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-19 18:30:04 +01:00
Andrew Victor
067bbada4c [ARM] 3589/1: AT91RM9200 DK/EK board update
Patch from Andrew Victor

This patch updates the support for the Atmel DK and EK boards.

The changes include:
1. Use the new at91_uart_config structure and device registration
functions for the UARTs.
2. Registration of I2C and SPI platform devices.
3. The USB Device pullup line is connected to reset, so multidrive needs
to be enabled on the line.  [Patch from David Brownell].

Signed-off-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-19 18:16:45 +01:00
Atsushi Nemoto
1723b4a34a [MIPS] Make timer interrupt frequency configurable from kconfig.
Make HZ configurable.  DECSTATION can select 128/256/1024 HZ, JAZZ can
only select 100 HZ, others can select 100/128/250/256/1000/1024 HZ if
not explicitly specified).  Also remove all mach-xxx/param.h files and
update all defconfigs according to current HZ value.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:27 +01:00
Ralf Baechle
35189fad3c [MIPS] Support for the RM9000-based Basler eXcite smart camera platform.
Signed-off-by: Thomas Koeller <thomas.koeller@baslerweb.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:26 +01:00
dmitry pervushin
355c471f2f [MIPS] Support for the R5500-based NEC EMMA2RH Mark-eins board
Signed-off-by: dmitry pervushin  <dpervushin@ru.mvista.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:26 +01:00
Thomas Bogendoerfer
4a0312fca6 [MIPS] Support SNI RM200C SNI in big endian mode and R5000 processors.
Added support for RM200C machines with big endian firmware
Added support for RM200-C40 (R5000 support)
    
Signed-off-by: Florian Lohoff <flo@rfc822.org>
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:24 +01:00
Thiemo Seufer
4fb60a4b80 [MIPS] Random fixes for sb1250
Random improvements for sb1250: Silence compiler warnings, a bugfix for
the profiling code, and a comment typo.

Signed-off-by: Thiemo Seufer <ths@networkno.de>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:24 +01:00
Thiemo Seufer
b75d4c1d68 [MIPS] Fix bcm1480 compile
Fix compilation for bcm1480, a hpt is only available on sb1250/bcm112x.

Signed-off-by: Thiemo Seufer <ths@networkno.de>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:24 +01:00
Ralf Baechle
470b160364 [MIPS] Remove support for NEC DDB5476.
As warned several times before.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:24 +01:00
Ralf Baechle
eaff388874 [MIPS] Remove support for NEC DDB5074.
As warned several times before.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:24 +01:00
Ralf Baechle
2925aba422 [MIPS] Cleanup memory managment initialization.
Historically plat_mem_setup did the entire platform initialization.  This
was rather impractical because it meant plat_mem_setup had to get away
without any kind of memory allocator.  To keep old code from breaking
plat_setup was just renamed to plat_setup and a second platform
initialization hook for anything else was introduced.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:23 +01:00
Ralf Baechle
610019badd [MIPS] Remove unused function alloc_pci_controller.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:23 +01:00
Ralf Baechle
9e0c7afd0e [MIPS] IP27: Extract pci_ops into separate file.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:23 +01:00
Ralf Baechle
3a11545615 [MIPS] IP27: Use symbolic constants instead of magic numbers.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:23 +01:00
Yoichi Yuasa
c340cc504c [MIPS] vr41xx: remove unnecessay items from vr41xx/Kconfig.
Remove unnecessary items from vr41xx/Kconfig.  SYS_HA_CPU_VR41XX has
already been selected by MACH_VR41XX.

Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:23 +01:00
Ralf Baechle
f456acae4f [MIPS] IP27: Cleanup N/M mode configuration.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:23 +01:00
Rodolfo Giometti
952fa954a6 [MIPS] APM emu support
Signed-off-by: Rodolfo Giometti <giometti@linux.it>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:22 +01:00
Ralf Baechle
aa9772e330 [MIPS] SN: Rename SGI_SN0_N_MODE -> SGI_SN_N_MODE.
It's not SN0-specific.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:22 +01:00
Ralf Baechle
d8cb4e119f [MIPS] Cleanup ARCH_DISCONTIGMEM_ENABLE and NUMA configuration.
IP27 configuration isn't the only NUMA system - it just happens to be
the currently only supported MIPS NUMA system.  So move the necessary
options back into the main MIPS Kconfig file.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:21 +01:00
Ralf Baechle
5e46c3aefe [MIPS] C99-ify struct resource initialization.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:20 +01:00
Ralf Baechle
cbb306962e [MIPS] Remove duplicate declarations from Alchemy code.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:20 +01:00
Sergei Shtylyov
fbd7a38ffb [MIPS] arch/mips/au1000/time.c cleanup
Mark au1xxx_timer_setup() __init, just because it is. Get rid of
unneeded extern's (note that (*do_gettimeoffset)() is already declared by
<asm/time.c>) and an unused variable. Kill some whitespace...

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:19 +01:00
Ralf Baechle
b0b0e13e7d [MIPS] Remove unused instances of prom_build_cpu_map.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:19 +01:00
Thiemo Seufer
c583122c26 [MIPS] Qemu system shutdown support
Signed-off-by: Thiemo Seufer <ths@networkno.de>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:19 +01:00
Atsushi Nemoto
eae89076e6 [MIPS] Unify mips_fpu_soft_struct and mips_fpu_hard_structs.
The struct mips_fpu_soft_struct and mips_fpu_hard_struct are
completely same now and the kernel fpu emulator assumes that.  This
patch unifies them to mips_fpu_struct and get rid of mips_fpu_union.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:18 +01:00
Ralf Baechle
5deee2dbf4 [MIPS] Remove prototype for non-existing function.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:18 +01:00
Mark.Zhan
a240a46964 [MIPS] Wind River 4KC PPMC Eval Board Support
Support for the GT-64120-based Wind River 4KC PPMC Evaluation board.

Signed-off-by: Rongkai.Zhan <Rongkai.zhan@windriver.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:18 +01:00
Herbert Valerio Riedel
a643d2b574 [MIPS] Au1xxx: board specific irq code cleanup
Convert sizeof/sizeof use to use of ARRAY_SIZE macro, and annotate
irqmap structures as __initdata.

Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:17 +01:00
Ralf Baechle
3c0094426f [MIPS] IP27: Fix collision with hardcoded interrupt number.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:17 +01:00
[MIPS] James E Wilson
e1701fb2e2 [PATCH] Fix BCM1480 doubled process accounting times.
Running a UP kernel on a bcm1480 board, I get nonsensical timing
results, like this:
release@unknown:~/tmp$ time ./a.out
real    0m22.906s
user    0m45.792s
sys     0m0.010s
According to my watch, this program took 23 seconds to run, so the real
time clock is OK.  It is process accounting that is broken.

I tracked this down to a problem with the function
bcm1480_timer_interrupt in the file sibyte/bcm1480/time.c.  This
function calls ll_timer_interrupt for cpu0, and ll_local_timer_interrupt
for all cpus.  However, both of these functions do process accounting.
Thus processes running on cpu0 end up with doubled times.  This is very
obvious in a UP kernel where all processes run on cpu0.

The correct way to do this is to only call ll_local_timer interrupt if
this is not cpu0.  This can be seen in the mips-board/generic/time.c
file, and also in the sibyte/sb1250/time.c file, both of which handle
this correctly.  I fixed the bcm1480/time.c file by copying over the
correct code from the sb1250/time.c file.

With this fix, I now get sensible results.
release@unknown:~/tmp$ time ./a.out
real    0m22.903s
user    0m22.894s
sys     0m0.006s

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:16 +01:00
Ralf Baechle
4b29f6043d [MIPS] Mark PNX8550 support broken.
Broken in too many way for me to fix it for 2.6.17.
    
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:16 +01:00
Ralf Baechle
72fbfb2601 [MIPS] Fix optimization for size build.
It took a while longer than on other architectures but gcc has finally
started to strike us as well ...
    
This also fixes the damage by 6edfba1b33.
    
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:16 +01:00
Ralf Baechle
aac076f880 [MIPS] IP22: Fix ISA driver builds if CONFIG_EISA is selected.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:15 +01:00
Yoichi Yuasa
973c789742 [MIPS] Cobalt: Fix undefined reference to disable_early_printk.
Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:14 +01:00
Atsushi Nemoto
c138e12f3a [MIPS] Fix fpu_save_double on 64-bit.
> Without this fix, _save_fp() in 64-bit kernel is seriously broken.
>
> ffffffff8010bec0 <_save_fp>:
> ffffffff8010bec0:       400d6000        mfc0    t1,c0_status
> ffffffff8010bec4:       000c7140        sll     t2,t0,0x5
> ffffffff8010bec8:       05c10011        bgez    t2,ffffffff8010bf10 <_save_fp+0x50>
> ffffffff8010becc:       00000000        nop
> ffffffff8010bed0:       f4810328        sdc1    $f1,808(a0)
> ...

Fix register usage in fpu_save_double() and make fpu_restore_double()
more symmetric with fpu_save_double().

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:13 +01:00
Elizabeth Oldham
734996820f [MIPS] Malta: Handle byteswapping hardare bug in big endian mode.
The SOC-it system controller running in big endian mode might forget
byteswapping when DMAing to the last word of physical memory.  Fixed by
ignoring the last page of memory.
    
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2006-06-19 17:39:13 +01:00
Andrew Victor
466e6227e6 [ARM] 3588/1: AT91RM9200 CSB337/637 board update
Patch from Andrew Victor

This patch updates the support for the Cogent CSB337 and CSB637 boards.

The changes include:
1. Use the new at91_uart_config structure and device registration
functions for the UARTs.
2. Registration of I2C and SPI platform devices.
3. The CSB337 board uses PB0 & PB1 (and not PB2) for the LEDs.  [Patch
from David Brownell]

Signed-off-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-19 17:26:23 +01:00
Andrew Victor
2e83640270 [ARM] 3585/1: AT91RM9200 Platform devices
Patch from Andrew Victor

This patch updates the platform device support for the AT91RM9200.

The changes include:

1. USB Host device renamed to "at91_ohci" since the driver is also
usable on the AT91SAM9261 processor.
2. Enabling multidrive on the USB Device's pullup pin should not be done
for all boards.  Moved into board-specific files.  [Patch from David
Brownell]
3. Move enabling of PCMCIA/Compact Flash pins out of the driver.
4. Added SPI device and resources.
5. Added Watchdog device and resources.  [Patch from David Brownell]
6. Added UART device and resources.
7. The simple devices (watchdog, rtc, i2c) are now automatically
registered and don't have to be registered separately in each
board-specific file. [Patch from David Brownell]

Signed-off-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-19 16:31:55 +01:00
Sascha Hauer
5e64238717 [ARM] 3577/1: netX: Default config for netx based boards
Patch from Sascha Hauer

This patch adds the default config file for netx based boards.

Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-19 15:30:21 +01:00
Sascha Hauer
2697c5e1f7 [ARM] 3576/1: netX: board support for NXEB500HMI development board
Patch from Sascha Hauer

This patch adds the board specific code for the Hilscher NXEB500HMI
development board.

Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-19 15:29:45 +01:00
Sascha Hauer
af614ba072 [ARM] 3575/1: netX: board support for NXDB500 development board
Patch from Sascha Hauer

This patch adds the board specific code for the Hilscher NXDB500
development board.

Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-19 15:29:44 +01:00
Sascha Hauer
693532dcff [ARM] 3574/1: netX: board support for NXDKN development board
Patch from Sascha Hauer

This patch adds the board specific code for the Hilscher NXDKN
development board.

Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-19 15:29:43 +01:00
Sascha Hauer
8e77da68a6 [ARM] 3569/2: netX: driver for XMAC/XPEC engines
Patch from Sascha Hauer

The netX processors have generic network bitstream engines (XMAC/XPEC).
This driver adds support for firmware loading and start, stop, reset
commands.

Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-19 15:28:20 +01:00
Sascha Hauer
ef70cd4d24 [ARM] 3568/2: netX: pointer fifo driver
Patch from Sascha Hauer

This patch adds support for the pointer FIFOs on netX.

Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-19 15:28:19 +01:00
Sascha Hauer
bb6d8c8828 [ARM] 3567/2: arm: base support for Hilscher netX
Patch from Sascha Hauer

This patch adds the base support for Hilscher's netX network
processors.

Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-19 15:27:53 +01:00
Andrew Victor
814138ffa4 [ARM] 3584/1: AT91RM9200 GPIO suspend/resume support
Patch from Andrew Victor

This patch adds suspend/resume/set_wake support for the AT91RM9200's
GPIO interrupts.

Original patch from David Brownell.

Signed-off-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-19 15:26:54 +01:00
Andrew Victor
683c66bf75 [ARM] 3583/1: AT91RM9200 IRQ suspend/resume support
Patch from Andrew Victor

Added suspend/resume/set_wake support for the AT91RM9200's AIC interrupt
controller.

Signed-off-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-19 15:26:53 +01:00
Andrew Victor
37f2e4bc12 [ARM] 3582/1: AT91RM9200 IRQ trigger types
Patch from Andrew Victor

The AIC interrupt controller's set_irq_type() can also be used for
internal interrupts.  IRQT_LOW and IRQT_FALLING are the only options not
supported for the internal interrupts.

[Original patch from Karl Olsen]

Signed-off-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-19 15:26:52 +01:00
Andrew Victor
10e8e1fb75 [ARM] 3581/1: AT91RM9200 Internal SRAM
Patch from Andrew Victor

This patch maps the AT91RM9200's internal SRAM into the virtual memory
address space - just below the internal peripheral registers.

Signed-off-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-19 15:26:51 +01:00
Andrew Victor
2a6f9902c6 [ARM] 3580/1: AT91RM9200 Timer suspend/resume support
Patch from Andrew Victor

Added suspend/resume support for the AT91RM9200 timer.

Signed-off-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-19 15:26:50 +01:00
Andrew Victor
963151f247 [ARM] 3579/1: AT91RM9200 Timer simplification
Patch from Andrew Victor

Use a global variable 'last_crtr' to store the time of the last timer
tick instead of the ST_RTAR register.
It's faster, frees up the ST_RTAR register for other uses, and hopefully
makes the code more understandable.  [Patch from Peter Menzebach]

Also add the SA_TIMER flag to Timer IRQ.  (It seems to be required for
the realtime preempt patch).

Signed-off-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-19 15:23:41 +01:00
Sascha Hauer
3095faf529 [ARM] 3572/1: netX: framebuffer driver for Hilscher netX
Patch from Sascha Hauer

This patch adds framebuffer support for Hilscher's netX network
processors.

Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-19 13:30:58 +01:00
Andrew Victor
91f8ed835f [ARM] 3578/1: AT91RM9200 Clock update
Patch from Andrew Victor

Some updates to the clock infrastructure for the AT91RM9200.

1. Hard-coded values replaced with names defined in at91rm9200_sys.h.
2. Added the four PIO clocks, which are enabled at startup.
3. At startup, disable all unused clocks.
4. Minor bugfix for usage counts associated with MCK. [Patch from David
Brownell]
5. Added at91_clock_associate() function to associate device & function
with a particular clock.  [Patch from David Brownell]

Signed-off-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-19 13:20:23 +01:00
Ben Dooks
96ce2385dd [ARM] 3559/1: S3C2442: core and serial port
Patch from Ben Dooks

Core support for the Samsung S3C2442, and the
serial port driver update to allow the serial
port blocks to be used.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-18 23:06:41 +01:00
Ben Dooks
66a9b49a37 [ARM] 3557/1: S3C24XX: centralise and cleanup uart registration
Patch from Ben Dooks

All the S3C24XX based devices currently have similar
uart blocks, in the same location. Make the process
of adding new uart blocks easier by commonising the
device definitions and adding a new init function
for the cpu code.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-18 23:04:05 +01:00
Ben Dooks
810c894f2b [ARM] 3558/1: SMDK24XX: LED platform devices
Patch from Ben Dooks

Platform devices for the LEDs on all the SMDK24XX boards

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-18 22:56:37 +01:00
David Brownell
9df5db80a7 [ARM] 3534/1: add spi support to lubbock platform
Patch from David Brownell

This adds the platform device for SSP/SPI controller, and declares
the ads7846 device hooked up to it.  Not all Lubbock boards appear
to populate the connector needed to use this instead of the ucb1400
chip, but it can always be used as a temperature sensor.

In short, this is probably most useful as an example of how to
provide the configuration data used by the pxa2xx_spi driver.
(Last tested against a slightly earlier version of that driver.)

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-18 16:39:33 +01:00
Tony Lindgren
ebc67da65f [ARM] 3554/1: ARM: Fix dyntick locking
Patch from Tony Lindgren

This patch fixes some dyntick locking issues on ARM as pointed
out by Russell King.

Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-18 16:26:58 +01:00
Ben Dooks
36fe6a83b4 [ARM] 3553/1: S3C24XX: earlier print of cpu idcode info
Patch from Ben Dooks

Move the printk of the CPU information and IDCODE
before the checking of the table entry validity
to aide in debugging new cpu entries.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-18 16:21:53 +01:00
Ben Dooks
4833acb2e1 [ARM] 3551/1: S3C24XX: PM code failes to compile with CONFIG_DCACHE_WRITETHROUGH
Patch from Ben Dooks

If CONFIG_CPU_DCACHE_WRITETHOUGH is set, then the
S3C24XX PM code fails to compile, as there is no
need to flush the D-cache, the flush function
arm920_flush_kern_cache_all() is not compiled.

Fix the code to not use this if the config is set.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-18 16:21:51 +01:00
Ben Dooks
e2e5810f41 [ARM] 3550/1: OSIRIS: fix serial port map for 1:1
Patch from Ben Dooks

The default serial port-mapping for the Osiris has
the port 2 mapped onto the first serial port, and
no port1. Correct this so port 1 is port.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-18 16:21:50 +01:00
Catalin Marinas
45a7b9cf8e [ARM] 3548/1: Fix the ARMv6 CPU id in compressed/head.S
Patch from Catalin Marinas

This code was still using the old format for the ARMv6 CPU id and it wasn't
flushing the caches on the MPCore CPU (and other ARM1176 cores). The patch
changes the mask bits to cope with the new id format.

Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-18 16:21:50 +01:00
Russell King
aca6ca1097 [ARM] Gather common sigframe saving code into setup_sigframe()
Gather the common sigmask savbing code inside setup_sigcontext(), and
rename the function setup_sigframe().  Pass it a sigframe structure.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-18 16:17:45 +01:00
Russell King
680714844f [ARM] Gather common sigframe restoration code into restore_sigframe()
Gather the sigmask restoration code inside restore_sigcontext(), and
rename the function restore_sigframe().  Pass it a sigframe structure.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-18 16:17:44 +01:00
Russell King
cb3504e8fa [ARM] Re-use sigframe within rt_sigframe
sigframe is now a contained subset of rt_sigframe, so we can start
to re-use code which accesses sigframe data for both rt and non-rt
signals.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-18 16:17:43 +01:00
Russell King
7d4fdc19fc [ARM] Merge sigcontext and sigmask members of sigframe
ucontext contains both the sigcontext and sigmask structures, and
is also used for rt signal contexts.  Re-use this structure for
non-rt signals.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-18 16:17:42 +01:00
Russell King
cc1a852137 [ARM] Replace extramask with a full copy of the sigmask
There's not much point in splitting the sigmask between two different
locations, so copy it entirely into a proper sigset_t.  This will
eventually allow rt_sigframe and sigframe to share more code.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-18 16:17:42 +01:00
Russell King
ce7a3fdc5c [ARM] Remove rt_sigframe puc and pinfo pointers
These two members appear to be surplus to requirements.  Discussing
this issue with glibc folk:

| > Additionally, do you see any need for these weird "puc" and "pinfo"
| > pointers in the kernels rt_sigframe structure?  Can we kill them?
|
| We can kill them.  I checked with Phil B. about them last week, and he
| didn't remember any reason they still needed to be there.  And nothing
| should know where they are on the stack.  Unfortunately, doing this
| will upset GDB, which knows that the saved registers are 0x88 bytes
| above the stack pointer on entrance to an rt signal trampoline; but,
| since puc and pinfo are quite recognizable, I can adapt GDB to support
| the new layout if you want to remove them.

So remove them.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-18 16:17:41 +01:00
Paul Brook
5247593c96 [ARM] 3335/1: Old-abi Thumb sys_syscall broken
Patch from Paul Brook

The old-abi sys_syscall syscall is broken when called from Thumb mode. It
assumes the syscall number is an Arm syscall number (ie. starts from
__NR_OABI_SYSCALL_BASE).  In thumb mode syscall numbers start from zero.

The patch below fixes this by clearing the nigh bits of the syscall number
instead of inverting them. Technically this means we accept some invalid
syscall numbers, but I can't see how that could be a problem. The two sets of
numbers far apart that unimplemented syscalls should still be rejected.

Signed-off-by: Paul Brook <paul@codesourcery.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-18 16:16:57 +01:00
Vitaly Wool
254a1564fb [ARM] 3467/1: [3/3] Support for Philips PNX4008 platform: defconfig
Patch from Vitaly Wool

This patch adds default configuration file PNX4008 ARM platform.
It\'s basically the same as the previos one.

Signed-off-by: Vitaly Wool <vwool@ru.mvista.com>
Signed-off-by: Dmitry Pervushin <dpervushin@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-18 16:16:56 +01:00
Vitaly Wool
78818e477b [ARM] 3466/1: [2/3] Support for Philips PNX4008 platform: chip support
Patch from Vitaly Wool

This patch adds basic chip support for PNX4008 ARM platform.
It's basically the same as the previous one, but with the rmk's
comments taken into account.

Signed-off-by: Vitaly Wool <vwool@ru.mvista.com>
Signed-off-by: Dmitry Pervushin <dpervushin@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-18 16:16:55 +01:00
Marc Singer
c97898614b [ARM] 3405/1: lpd7a40x: CPLD ssp driver
Patch from Marc Singer

Driver for operating SSP devices through LPD7A40X CPLD chip.  This
driver is used by the audio codecs.

Signed-off-by: Marc Singer <elf@buici.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-18 16:16:49 +01:00
Marc Singer
903e2bbda9 [ARM] 3404/1: lpd7a40x: AMBA CLCD support
Patch from Marc Singer

Board support and LCD panel configurations to integrate lh7a40x's with
the amba clcd driver.

Signed-off-by: Marc Singer <elf@buici.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-18 16:16:48 +01:00
Marc Singer
2514581eb1 [ARM] 3403/1: lpd7a40x: updated default configurations
Patch from Marc Singer

Revised default configuration files.

Signed-off-by: Marc Singer <elf@buici.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-18 16:16:47 +01:00
Marc Singer
638b266630 [ARM] 3401/1: lpd7a40x: platform update
Patch from Marc Singer

Updates to the lpd7a40x_platform files.  Includes support for new
architecture, lpd7a400.

Signed-off-by: Marc Singer <elf@buici.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-18 16:16:45 +01:00
Marc Singer
2295196c30 [ARM] 3400/1: lpd7a40x: platform headers update
Patch from Marc Singer

Updates to the lpd7a40x platform headers.  Includes support for new
architecture, lpd7a400.

Signed-off-by: Marc Singer <elf@buici.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-06-18 16:16:44 +01:00
Arnd Bergmann
19242b2407 [PATCH] powerpc: Fix 64k pages on non-partitioned machines
The page size encoding passed to tlbie is incorrect for new-style
large pages.  This fixes it.  This doesn't affect anything on older
machines because mmu_psize_defs[psize].penc (the page size encoding)
is 0 for 4k and 16M pages (the two are distinguished by a separate "is
a large page" bit).

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-06-17 10:56:24 -07:00
Len Brown
d42510a0f5 Pull bugzilla-5737 into release branch
Conflicts:

	arch/x86_64/kernel/acpi/processor.c
2006-06-15 21:39:25 -04:00
Len Brown
bf891bd65d Pull trivial2 into release branch 2006-06-15 21:31:17 -04:00
Len Brown
3e8e7c93d7 Pull bugzilla-5653 into release branch 2006-06-15 15:41:53 -04:00
Len Brown
4e8f10b7cc Pull novell-bugzilla-156426 into release branch
Conflicts:

	arch/i386/kernel/acpi/boot.c
2006-06-15 15:38:30 -04:00
Len Brown
1465887cfe Pull Kconfig into release branch 2006-06-15 15:35:57 -04:00
Len Brown
b3899c6613 Pull acpica into release branch 2006-06-15 15:19:48 -04:00
Matthias Fuchs
2ba73b1d6f [POWERPC] ppc32: fix CPCI405 board support
Hi,

this patch brings the CPCI405 board support up to date and fixes several
outstanding issues:

       -add bios_fixup()
       -enable RTC only when CONFIG_GEN_RTC defined
       -corrected CompactPCI interrupt map
       -added cpci405_early_serial_map for correct UART clocking
       -removed unused code

Matthias

Signed-off-by: Matthias Fuchs <matthias.fuchs@esd-electronics.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-15 19:31:27 +10:00
Johannes Berg
4312dc76a8 [POWERPC] make pmf irq_client functions safe against pmf interrupts coming in
This fixes the pmf irq_client functions to be safe against pmf interrupts coming
in while a client is registered/unregistered.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-15 19:31:27 +10:00
Dave C Boutcher
368a6ba5d1 [POWERPC] check firmware state before suspending
Currently the kernel blindly halts all the processors and calls the
ibm,suspend-me rtas call.  If the firmware is not in the correct
state, we then re-start all the processors and return.  It is much
smarter to first check the firmware state, and only if it is waiting,
call the ibm,suspend-me call.

Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-15 19:31:27 +10:00
Amos Waterland
0e4aa9c200 [POWERPC] Fix builtin command line interaction with firmware
It seems that prom_init's early_cmdline_parse is broken on at least
Apple 970 xserves and IBM JS20 blades with SLOF.  The firmware of these
machines returns -1 and 1 respectively when getprop is called for the
bootargs property of /chosen, causing Linux to ignore its builtin
command line in favor of a null string.  This patch makes Linux use its
builtin command line if getprop returns an error or a null string.

Signed-off-by: Amos Waterland <apw@us.ibm.com>
Acked-by: Segher Boessenkool <segher@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-15 19:31:26 +10:00
Anton Blanchard
6fe8767531 [POWERPC] update pmac32_defconfig
Some updates to the pmac32_defconfig to make it more useful:

- Enable LSF (large single files) since we enable LBD (large block devices)
- Enable IPSEC related options
- Enable remaining raid/dm options as modules
- Disable eth1394, I doubt any has that hardware and it has a nasty habit of
  auto loading first and skewing network device numbering
- Enable dummy and tun as modules, always useful to have them around
- Enable EHCI, no wonder my usb2 disk was so slow
- Enable USB storage
- Enable ext3 acls
- Disable autofs and enable autofsv4 instead
- Enable nfs v3/v4 client and server. Dont want to be left in the dark ages
  of pre v3
- Enable all crypto as modules, things like cryptsetup want some of them

I havent enabled the BCM43xx, perhaps we should now?

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-15 19:31:26 +10:00
Anton Blanchard
bd19c8994a [POWERPC] system call micro optimisation
In the syscall path we currently have:

       crclr   so
       mfcr    r9

If we shift the crclr up we can avoid a stall on some CPUs.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-15 19:31:26 +10:00
Anton Blanchard
df310656c7 [POWERPC] cleanup dma_mapping_ops
For pseries IOMMU bypass I want to be able to fall back to the regular
IOMMU ops. Do this by creating a dma_mapping_ops struct, and convert
the others while at it.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-15 19:31:26 +10:00
Anton Blanchard
ca1588e71b [POWERPC] node local IOMMU tables
Allocate IOMMU tables local to the relevant node.

Signed-off-by: Anton Blanchard <anton@samba.org>
Acked-by: Olof Johansson <olof@lixom.net>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-15 19:31:26 +10:00
Anton Blanchard
357518fa34 [POWERPC] pcibus_to_node fixes
of_node_to_nid returns -1 if the associativity cannot be found. This
means pcibus_to_cpumask has to be careful not to pass a negative index into
node_to_cpumask.

Since pcibus_to_node could be used a lot, and of_node_to_nid is slow (it
walks a list doing strcmps), lets also cache the node in the
pci_controller struct.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-15 19:31:26 +10:00
Anton Blanchard
f2b09c8189 [POWERPC] Update pseries defconfig
pseries defconfig updates:

- Enable jsm and re-enable qlogic FC drivers as modules.
- Enable ocfs2, autofs4 and fuse filesystems as modules.
- Enable Kprobes.
- Enable ebus, binfmt_misc, sas attrs, md5 reshape, hvc rtas backend and
  some infiniband options.
- Finally disable debug options: DEBUG_MUTEXES and DEBUG_STACK_USAGE.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-15 19:31:26 +10:00
Anton Blanchard
227318bbde [POWERPC] Remove stale 64bit on 32bit kernel code
Remove some stale POWER3/POWER4/970 on 32bit kernel support.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-06-15 19:31:26 +10:00