Please pull powerpc.git 'merge' branch
Paul Mackerras
paulus at samba.org
Thu Aug 31 14:34:25 EST 2006
Linus,
Please do:
git pull \
git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc.git merge
to get some more PowerPC updates for 2.6.18.
I have included the full commit messages this time. There are
(unfortunately) quite a few commits, because:
* People have been finding bugs. :P This includes the fix for Olaf's
problem where time wasn't advancing, plus one found recently where
memcpy not returning the correct value was causing an oops in the
ipsec code.
* Some of the embedded board maintainers have only just caught up with
Ben H's irq rework that went in near the end of the merge window.
Since their platforms don't compile without the fixes, and changes
in their code aren't going to affect a lot of users, I put them in.
* I have included some "device tree source" files, which are
essentially documentation as far as the kernel is concerned. They
don't directly affect any kernel code, but can be useful as a
reference when reading the code. (They would normally be compiled
to a binary form and supplied by board firmware to the kernel at boot.)
Thanks,
Paul.
Documentation/powerpc/booting-without-of.txt | 6
arch/powerpc/Kconfig | 20 -
arch/powerpc/boot/dts/mpc7448hpc2.dts | 190 ++++++
arch/powerpc/boot/dts/mpc8349emds.dts | 328 +++++++++++
arch/powerpc/configs/mpc834x_mds_defconfig | 0
arch/powerpc/kernel/fpu.S | 5
arch/powerpc/kernel/irq.c | 84 ++-
arch/powerpc/kernel/pci_64.c | 11
arch/powerpc/kernel/ppc_ksyms.c | 4
arch/powerpc/kernel/prom_init.c | 10
arch/powerpc/kernel/prom_parse.c | 17 -
arch/powerpc/kernel/smp-tbsync.c | 5
arch/powerpc/kernel/time.c | 25 -
arch/powerpc/lib/memcpy_64.S | 11
arch/powerpc/mm/44x_mmu.c | 4
arch/powerpc/platforms/83xx/mpc834x_itx.c | 49 --
arch/powerpc/platforms/83xx/mpc834x_sys.c | 56 --
arch/powerpc/platforms/83xx/mpc83xx.h | 1
arch/powerpc/platforms/83xx/pci.c | 9
arch/powerpc/platforms/86xx/mpc86xx_hpcn.c | 26 -
arch/powerpc/platforms/86xx/pci.c | 3
arch/powerpc/platforms/embedded6xx/Kconfig | 1
arch/powerpc/platforms/embedded6xx/mpc7448_hpc2.c | 2
arch/powerpc/sysdev/Makefile | 4
arch/powerpc/sysdev/ipic.c | 303 +++++++---
arch/powerpc/sysdev/ipic.h | 23 +
arch/powerpc/sysdev/mpic.c | 223 +++++--
arch/ppc/kernel/smp-tbsync.c | 7
arch/ppc/syslib/Makefile | 2
arch/ppc/syslib/ipic.c | 646 +++++++++++++++++++++
arch/ppc/syslib/ipic.h | 47 ++
include/asm-powerpc/io.h | 7
include/asm-powerpc/ipic.h | 12
include/asm-powerpc/mpc86xx.h | 3
include/asm-powerpc/mpic.h | 125 ++++
include/asm-powerpc/prom.h | 4
include/asm-powerpc/time.h | 4
37 files changed, 1934 insertions(+), 343 deletions(-)
create mode 100644 arch/powerpc/boot/dts/mpc7448hpc2.dts
create mode 100644 arch/powerpc/boot/dts/mpc8349emds.dts
rename arch/powerpc/configs/{mpc834x_sys_defconfig => mpc834x_mds_defconfig} (100%)
create mode 100644 arch/ppc/syslib/ipic.c
create mode 100644 arch/ppc/syslib/ipic.h
commit d0027bf09f09d95a23b8f476ba8cea28f2576781
Author: Paul Mackerras <paulus at samba.org>
Date: Thu Aug 31 13:22:58 2006 +1000
[POWERPC] Fix return value from memcpy
As pointed out by Herbert Xu <herbert at gondor.apana.org.au>, our
memcpy implementation didn't return the destination pointer as its
return value, and there is code in the kernel that expects that.
This fixes it.
Signed-off-by: Paul Mackerras <paulus at samba.org>
commit e7498656b5e2e9e3806d263fecc90b2707d02093
Author: Stephen Rothwell <sfr at canb.auug.org.au>
Date: Wed Aug 30 17:11:34 2006 +1000
[POWERPC] iseries: Define insw et al. so libata/ide will compile
These are build fixes that enable (for example) libata and the ide
code to actually build on iSeries. The associated hardware will never
be supported on legacy iSeries, so the code paths don't actually need
to work, but it is useful (especially for a combined kernel) if the
code can build.
Signed-off-by: Stephen Rothwell <sfr at canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus at samba.org>
commit 467c37801c453849a2fe243c3226476ee3985868
Author: Paul Mackerras <paulus at samba.org>
Date: Wed Aug 30 16:10:47 2006 +1000
[POWERPC] Fix irq enable/disable in smp_generic_take_timebase
Eran Ben-Avi <eranpublic at yahoo.com> pointed out that the arch/ppc version
of smp_generic_take_timebase disables interrupts on entry but exits without
restoring them. However, both it and the arch/powerpc version have another
problem, which is that they use local_irq_disable/enable rather than
local_irq_save/restore, and they are called with interrupts disabled.
This fixes both problems; it changes a return to a break in the arch/ppc
version, and changes both versions to use local_irq_save/restore.
Signed-off-by: Paul Mackerras <paulus at samba.org>
commit e0d872d536bb93335d5905b09fe374a163486d43
Author: Paul Mackerras <paulus at samba.org>
Date: Wed Aug 30 15:55:32 2006 +1000
[POWERPC] Fix problem with time not advancing on 32-bit platforms
This fixes a problem introduced in 5db9fa9593e2ff69f2b95f9d59229dc4faaa564d.
The last_jiffy per-cpu variable is only 32 bits on 32-bit machines, but it
was being compared with a 64-bit quantity (tb_next_jiffy), which resulted in
time not advancing.
This fixes it by changing last_jiffy to be 64 bits on all platforms. With
this, we no longer need tb_last_stamp as a 32-bit version of tb_last_jiffy,
so this gets rid of tb_last_stamp and we just use tb_last_jiffy instead.
This also fixes a bug when the boot cpu is not online, because using
tb_last_stamp could have caused the wrong timebase origin value to be used
when calculating the time of day.
Signed-off-by: Paul Mackerras <paulus at samba.org>
commit fea23bfefb4e98efd3c36f00ccc0b60281dc99da
Author: Paul Mackerras <paulus at samba.org>
Date: Wed Aug 30 14:45:35 2006 +1000
[POWERPC] Restore copyright notice in arch/powerpc/kernel/fpu.S
This code got moved from head.S but the copyright notice on head.S didn't
get transferred with it. Noticed by Cort Dougan <cort at fsmlabs.com>.
Signed-off-by: Paul Mackerras <paulus at samba.org>
commit 11e9ed43ca8a741c2858c33d12120cf8817d3bff
Author: Will Schmidt <will_schmidt at vnet.ibm.com>
Date: Fri Aug 25 15:46:59 2006 -0500
[POWERPC] Fix up ibm_architecture_vec definition
This problem was noticed by one of the Phyp firmware folks.
Our ibm,client-architecture-support call was failing.
This corrects the vector length parameters being passed in.
Signed-off-by: Will Schmidt <will_schmidt at vnet.ibm.com>
Signed-off-by: Paul Mackerras <paulus at samba.org>
commit 006b64de607f895de2ba1e21d3179cddf059128f
Author: Benjamin Herrenschmidt <benh at kernel.crashing.org>
Date: Fri Aug 25 14:46:23 2006 +1000
[POWERPC] Make OF irq map code detect more error cases
Device-tree bugs on js20 with some versions of SLOF were causing the
interrupt for IDE to not be parsed correctly and fail to boot. This
patch adds a bit more sanity checking to the parser to detect some of
those errors and fail instead of returning bogus information. The
powerpc PCI code can then trigger a fallback that works on those
machines.
Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus at samba.org>
commit 7233593b7844c2db930594ee9c0c872a6900bfcc
Author: Zang Roy-r61911 <tie-fei.zang at freescale.com>
Date: Fri Aug 25 14:16:30 2006 +1000
[POWERPC] Support for "weird" MPICs and fixup mpc7448_hpc2
This adds a new hardware information table for mpic. This enables
the mpic code to deal with mpic controllers with different register
layouts and hardware behaviours.
This introduces CONFIG_MPIC_WEIRD. For boards with non standard mpic
controllers, select CONFIG_MPIC_WEIRD and add its hardware information
in the mpic_infos[] array.
TSI108/109 PIC takes the first index of weird hardware information
table. :) The table can be extended. The Tsi108/109 PIC looks like
standard OpenPIC but, in fact, is different in register mapping and
behavior.
The patch does not affect the behavior of standard mpic. If
CONFIG_MPIC_WEIRD is not defined, the code is essentially identical to
the current code.
[benh at kernel.crashing.org:
This patch is a slightly cleaned up version of Zang Roy's support for
the TSI108 MPIC variant. It also fixes up MPC7448_hpc2 to use the new
version of the type macros and changes the way MPIC is selected in
Kconfig to better match what is done for other system devices.
]
Signed-off-by: Roy Zang <tie-fei.zang at freescale.com>
Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus at samba.org>
commit 3efbdd136e52ee4028b5bb5b848a6043cf61cd6e
Author: Benjamin Herrenschmidt <benh at kernel.crashing.org>
Date: Wed Aug 30 08:58:00 2006 +1000
[POWERPC] Fix MPIC sense codes in documentation
The booting-without-of.txt had incorrect definition for the sense codes
for an OpenPIC controller
Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus at samba.org>
commit 8ec8f2e85c6b88b4a1641eb3902275bcf2c6d60a
Author: Benjamin Herrenschmidt <benh at kernel.crashing.org>
Date: Mon Aug 28 11:17:37 2006 +1000
[POWERPC] Fix performance regression in IRQ radix tree locking
When reworking the powerpc irq code, I figured out that we were using
the radix tree in a racy way. As a temporary fix, I put a spinlock in
there. However, this can have a significant impact on performances. This
patch reworks that to use a smarter technique based on the fact that
what we need is in fact a rwlock with extremely rare writers (thus
optimized for the read path).
Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus at samba.org>
commit 4b3afca9345f5beb9c607faeb2aef4f91dd91a13
Author: Zang Roy-r61911 <tie-fei.zang at freescale.com>
Date: Fri Aug 25 16:43:25 2006 +0800
[POWERPC] Add mpc7448hpc2 device tree source file
This patch adds the mpc7448hpc2 device tree source file.
Signed-off-by: Roy Zang <tie-fei.zang at freescale.com>
Signed-off-by: Paul Mackerras <paulus at samba.org>
commit 1b9a93eb4638dcde0c3af42fd6c05e3911baa7db
Author: Kim Phillips <kim.phillips at freescale.com>
Date: Tue Aug 29 18:13:31 2006 -0500
[POWERPC] Add MPC8349E MDS device tree source file to arch/powerpc/boot/dts
Add MPC8349E MDS device tree source file to arch/powerpc/boot/dts
Signed-off-by: Kim Phillips <kim.phillips at freescale.com>
Signed-off-by: Paul Mackerras <paulus at samba.org>
commit f1f17716d13bfb709809a3f5c84bda105b646b9e
Author: Kim Phillips <kim.phillips at freescale.com>
Date: Fri Aug 25 11:59:22 2006 -0500
[POWERPC] modify mpc83xx platforms to use new IRQ layer
This fixes MPC834x MDS (formerly SYS) and ITX platform code to get IRQ data (including PCI) from the device tree, and to use the new IPIC code.
renamed defconfig (sys -> mds), left one redundant NULL assignment in mpc83xx_pcibios_fixup to keep the compiler happy.
Signed-off-by: Kim Phillips <kim.phillips at freescale.com>
Signed-off-by: Li Yang <leoli at freescale.com>
Signed-off-by: Paul Mackerras <paulus at samba.org>
commit b9f0f1bb2bcaae96dd3267f6bd3ad1ca44a1f5ad
Author: Kim Phillips <kim.phillips at freescale.com>
Date: Fri Aug 25 11:59:07 2006 -0500
[POWERPC] Adapt ipic driver to new host_ops interface, add set_irq_type to set IRQ sense
This converts ipic code to Benh's IRQ mods. For the IPIC, IRQ sense values in the device tree equal those in include/linux/irq.h; that's 8 for low assertion (most internal IRQs on mpc83xx), and 2 for high-to-low change.
spinlocks added to [un]mask, ack operations; default handler and type now set in host_map; and redundant condition check eliminated.
Signed-off-by: Kim Phillips <kim.phillips at freescale.com>
Signed-off-by: Li Yang <leoli at freescale.com>
Signed-off-by: Paul Mackerras <paulus at samba.org>
commit bf4152dd7ccb6c060d786200a893dfe30193a07f
Author: Kim Phillips <kim.phillips at freescale.com>
Date: Fri Aug 25 11:58:53 2006 -0500
[POWERPC] back up old school ipic.[hc] to arch/ppc
Keep from breaking 83xx arch/ppc build. Back up old school arch/powerpc/sysdev/ipic.[hc] to arch/ppc/syslib.
Signed-off-by: Kim Phillips <kim.phillips at freescale.com>
Signed-off-by: Paul Mackerras <paulus at samba.org>
commit c85c41ad73c6db4cf4cc98c595cc5e2fdbdb53d5
Author: Jon Loeliger <jdl at freescale.com>
Date: Thu Aug 17 14:27:57 2006 -0500
[POWERPC] Use mpc8641hpcn PIC base address from dev tree.
After going through the trouble of setting up the PIC base
address in the pic at 40000 device tree node, use it instead
of the obsolete hard-coded value.
Signed-off-by: Jon Loeliger <jdl at freescale.com>
Signed-off-by: Paul Mackerras <paulus at samba.org>
commit 5dc599c206ad50e1b190edfbc98b7cf8ce361003
Author: Jon Loeliger <jdl at freescale.com>
Date: Tue Aug 15 16:19:02 2006 -0500
[POWERPC] Allow MPC8641 HPCN to build with CONFIG_PCI disabled too.
Signed-off-by: Jon Loeliger <jdl at freescale.com>
Signed-off-by: Paul Mackerras <paulus at samba.org>
commit 054389f114fc55d525926b55e82b473b783a7d77
Author: Matt Porter <mporter at embeddedalley.com>
Date: Fri Aug 4 11:44:01 2006 -0500
[POWERPC] Fix powerpc 44x_mmu build
The PIN_SIZE definition name changed, update 44x_mmu.c accordingly.
Signed-off-by: Matt Porter <mporter at embeddedalley.com>
Signed-off-by: Paul Mackerras <paulus at samba.org>
commit af07ac276af6eec5111a6567cb7eaf4d222bd332
Author: Matt Porter <mporter at embeddedalley.com>
Date: Fri Aug 4 11:41:51 2006 -0500
[POWERPC] Remove flush_dcache_all export
Removes the flush_dcache_all export for non coherent platforms.
We removed the last in-kernel user of this years ago in arch/ppc
so it no longer serves a purpose. Plus, it breaks the build
at the moment.
Signed-off-by: Matt Porter <mporter at embeddedalley.com>
Signed-off-by: Paul Mackerras <paulus at samba.org>
More information about the Linuxppc-dev
mailing list