[git pull] Please pull powerpc.git next branch

From: Benjamin Herrenschmidt
Date: Mon Jul 23 2012 - 00:47:46 EST


Hi Linus !

Here's the powerpc batch for 3.6 merge window. Notable highlights:

- iommu improvements from Anton removing the per-iommu global lock
in favor of dividing the DMA space into pools, each with its own lock,
and hashed on the CPU number. Along with making the locking more fine
grained, this gives significant improvements in multiqueue networking
scalability.

- Still from Anton, we know provide a vdso based variant of getcpu
which makes sched_getcpu with the appropriate glibc patch something
like 18 times faster.

- More anton goodness (he's been busy !) in other areas such as a
faster __clear_user and copy_page on P7, various perf fixes to improve
sampling quality, etc...

- One more step toward removing legacy i2c interfaces by using
new device-tree based probing of platform devices for the AOA audio
drivers

- A nice series of patches from Michael Neuling that helps avoiding
confusion between register numbers and litterals in assembly code,
trying to enforce the use of "%rN" register names in gas rather than
plain numbers.

- A pile of FSL updates

- The usual bunch of small fixes, cleanups etc...

You may spot a change to drivers/char/mem. The patch got no comment or
ack from outside, it's a trivial patch to allow the architecture to
skip creating /dev/port, which we use to disable it on ppc64 that don't
have a legacy brige. On those, IO ports 0...64K are not mapped in kernel
space at all, so accesses to /dev/port cause oopses (and yes, distros
-still- ship userspace that bangs hard coded ports such as kbdrate).

Cheers,
Ben.

The following changes since commit 50fb31cfed9218b439360caf7c0399b00042da15:

tty/hvc_opal: Fix debug function name (2012-07-10 19:16:25 +1000)

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc.git next

for you to fetch changes up to 574ce79cea9d3fda109ffcc82f81733de4740e5c:

powerpc/mpic: Create a revmap with enough entries for IPIs and timers (2012-07-23 14:20:42 +1000)

----------------------------------------------------------------
Andreas Schwab (1):
sound/aoa: Adapt to new i2c probing scheme

Anton Blanchard (24):
powerpc: Enable jump label support
powerpc: tracing: Avoid tracepoint duplication with DECLARE_EVENT_CLASS
powerpc: 64bit optimised __clear_user
powerpc: Use enhanced touch instructions in POWER7 copy_to_user/copy_from_user
powerpc: Clear RI and EE at the same time in system call exit
powerpc: Rename copyuser_power7_vmx.c to vmx-helper.c
powerpc: POWER7 optimised copy_page using VMX and enhanced prefetch
powerpc: Use enhanced touch instructions in POWER7 copy_to_user/copy_from_user
powerpc: POWER7 optimised memcpy using VMX and enhanced prefetch
powerpc/pseries: Disable interrupts around IOMMU percpu data accesses
powerpc/iommu: Reduce spinlock coverage in iommu_alloc and iommu_free
powerpc/iommu: Reduce spinlock coverage in iommu_free
powerpc/iommu: Push spinlock into iommu_range_alloc and __iommu_free
powerpc/iommu: Implement IOMMU pools to improve multiqueue adapter performance
powerpc: Optimise the 64bit optimised __clear_user
powerpc/perf: Create mmcra_sihv/mmcra_sipv helpers
powerpc/perf: Move code to select SIAR or pt_regs into perf_read_regs
powerpc/perf: Always use pt_regs for userspace samples
powerpc/perf: Use perf_instruction_pointer in callchains
powerpc/vio: Remove dma not supported warnings
powerpc/vio: Separate vio bus probe and device probe
powerpc: Call dma_debug_add_bus for PCI and VIO buses
powerpc: IOMMU fault injection
powerpc: Add VDSO version of getcpu

Benjamin Herrenschmidt (8):
Merge branch 'merge' into next
powerpc: Move and fix MTMSR_EERI definition
powerpc: Fixup oddity in entry_32.S
i2c/powermac: Improve detection of devices from device-tree
Merge remote-tracking branch 'kumar/next' into next
powerpc/iommu: Fix iommu pool initialization
Remove stale .rej file
powerpc/mpic: Create a revmap with enough entries for IPIs and timers

Bharat Bhushan (1):
powerpc: Fix assmption of end_of_DRAM() returns end address

Christian Herzig (1):
powerpc/83xx: fix RGMII AC values workaround for km83xx

Deepthi Dharwar (2):
powerpc/pseries/cpuidle: Replace pseries_notify_cpuidle_add call with notifier
powerpc/cpuidle: Fixes for pseries_idle hotplug notifier

Dong Aisheng (1):
of: Improve prom_update_property() function

Gavin Shan (2):
powerpc/numa: Fix OF node refcounting bug
powerpc/pci: cleanup on duplicate assignment

Gustavo Zacarias (1):
powerpc/p1010rdb: add EEPROMs to device tree

Haren Myneni (1):
powerpc: Disable /dev/port interface on systems without an ISA bridge

Holger Brunck (3):
powerpc/83xx: use for_each_node_by_name for km83xx.c
powerpc/83xx: update defconfig for kmeter1
powerpc/82xx: add SPI support for mgcoge

Jerry Huang (1):
powerpc/p1022ds: Add RTC support

Jia Hongtao (3):
powerpc/85xx: MPC8572DS - Fix eTSEC is not available on core1 of AMP boot
powerpc/85xx: MPC8572DS - Update the MSI interrupts into 4-cell format
powerpc/85xx: Add phy nodes in SGMII mode for MPC8536/44/72DS & P2020DS

Kim Phillips (1):
powerpc/fsl: Distribute interrupts on all CPUs by default

Kleber Sacilotto de Souza (1):
powerpc/eeh: Check handle_eeh_events() return value

Kokoris, Ioannis (1):
powerpc/qe: set IReady in QE Microcode Upload

Liu Yu (1):
powerpc/e500: make load_up_spe a normal fuction

Matias Garcia (1):
powerpc/fsl/pci: Fix when quirk_fsl_pcie_header is freed up

Michael Ellerman (2):
powerpc: Turn on BPF_JIT in ppc64_defconfig
powerpc: Add a symbol for hypervisor trampolines

Michael Neuling (18):
powerpc: Add defines for R0-R31
powerpc: Modify macro ready for %r0 register change
powerpc: Fix usage of register macros getting ready for %r0 change
powerpc: Convert to %r for all GPR usage
powerpc/pasemi: Move lbz/stbciz to ppc-opcode.h
powerpc: Merge STK_REG/PARAM/FRAMESIZE
powerpc: Merge VCPU_GPR
powerpc: Change mtcrf to use real register names
powerpc: Change LOAD_REG_ADDR to use real register names
powerpc: Fixes for instructions not using correct register naming
powerpc: Fix VSX macros so register names aren't wrapped
powerpc: Introduce new ___PPC_RA/B/S/T macros
powerpc: Start using ___PPC_RA/B/S/T where necessary
powerpc: Introduce new __REG_R macros
powerpc: Enforce usage of R0-R31 where possible
powerpc: Add defines for RA 0-R31
powerpc: Enforce usage of RA 0-R31 where possible
powerpc/pseries: Fix whitespace in eeh

Naveen N. Rao (1):
powerpc/hw_breakpoints: Fix incorrect pointer access

Nishanth Aravamudan (1):
powerpc/pseries/iommu: remove default window before attempting DDW manipulation

Paul Bolle (1):
powerpc: Kill flatdevtree_env.h too

Paul Gortmaker (1):
powerpc: remove Wind River SBC8560 support

Prabhakar Kushwaha (1):
powerpc/85xx: Add BSC9131 RDB Support

Scott Wood (4):
powerpc/mm: remove obsolete comment about page size name array
powerpc/fsl-pci: get PCI init out of board files
powerpc/mpc85xx_ds: convert to unified PCI init
powerpc/e500: add paravirt QEMU platform

Sebastian Andrzej Siewior (1):
Revert "powerpc/85xx: p2020rdb - move the NAND address."

Shaohui Xie (3):
powerpc/p2041rdb: add NAND node in device tree
powerpc/watchdog: replace CONFIG_FSL_BOOKE with CONFIG_PPC_FSL_BOOK3E
powerpc/watchdog: move booke watchdog param related code to setup-common.c

Shawn Guo (1):
powerpc: select PPC_CLOCK unconditionally for FSL_SOC

Shengzhou Liu (3):
powerpc/85xx: Enable MTD/NOR/NAND options by default in defconfig
powerpc/85xx: Update corenet32_smp_defconfig
powerpc/85xx: Update corenet64_smp_defconfig

Stephen Rothwell (1):
powerpc: Put the gpr save/restore functions in their own section

Steven Rostedt (3):
powerpc/ftrace: Have PPC skip updating with stop_machine()
powerpc: Have patch_instruction detect faults
powerpc/ftrace: Use patch_instruction instead of probe_kernel_write()

Stuart Yoder (1):
powerpc: Use CURRENT_THREAD_INFO instead of open coded assembly

Tang Yuantian (2):
powerpc/85xx: Add P1024rdb board support
powerpc/85xx: Add P1024rdb dts support

Tiejun Chen (1):
powerpc: Add "memory" attribute for mfmsr()

Timur Tabi (2):
powerpc/85xx: use the BRx registers to enable indirect mode on the P1022DS
Revert "powerpc/p3060qds: Add support for P3060QDS board"

Tony Breeds (1):
powerpc/boot: Only build board support files when required.

Varun Sethi (1):
powerpc/mpic: Use the MPIC_LARGE_VECTORS flag for FSL MPIC.

Wanpeng Li (1):
powerpc: Fix kernel-doc warning

Xu Jiucheng (1):
powerpc/85xx: Rename P1021RDB-PC device trees to be consistent

Yong Zhang (1):
powerpc/smp: remove call to ipi_call_lock()/ipi_call_unlock()

Zhicheng Fan (1):
powerpc/85xx: Add ucc uart support for p1025rdb

roger blofeld (1):
powerpc/ftrace: Fix assembly trampoline register usage

arch/powerpc/Kconfig | 2 +-
arch/powerpc/Kconfig.debug | 9 +
arch/powerpc/boot/Makefile | 57 +-
arch/powerpc/boot/dts/bsc9131rdb.dts | 34 +
arch/powerpc/boot/dts/bsc9131rdb.dtsi | 142 +++++
arch/powerpc/boot/dts/fsl/bsc9131si-post.dtsi | 193 ++++++
.../fsl/{p3060si-pre.dtsi => bsc9131si-pre.dtsi} | 84 +--
arch/powerpc/boot/dts/fsl/p1021si-post.dtsi | 16 +-
arch/powerpc/boot/dts/fsl/p3060si-post.dtsi | 302 ---------
arch/powerpc/boot/dts/mgcoge.dts | 23 +
arch/powerpc/boot/dts/mpc8536ds.dtsi | 8 +
arch/powerpc/boot/dts/mpc8544ds.dtsi | 9 +
arch/powerpc/boot/dts/mpc8572ds.dtsi | 17 +
arch/powerpc/boot/dts/mpc8572ds_camp_core0.dts | 8 +-
arch/powerpc/boot/dts/mpc8572ds_camp_core1.dts | 11 +-
arch/powerpc/boot/dts/p1010rdb.dtsi | 12 +
.../boot/dts/{p1021rdb.dtsi => p1021rdb-pc.dtsi} | 2 +-
.../boot/dts/{p1021rdb.dts => p1021rdb-pc_32b.dts} | 4 +-
.../dts/{p1021rdb_36b.dts => p1021rdb-pc_36b.dts} | 4 +-
arch/powerpc/boot/dts/p1022ds.dtsi | 20 +-
arch/powerpc/boot/dts/p1024rdb.dtsi | 228 +++++++
arch/powerpc/boot/dts/p1024rdb_32b.dts | 87 +++
arch/powerpc/boot/dts/p1024rdb_36b.dts | 87 +++
arch/powerpc/boot/dts/p1025rdb.dtsi | 40 ++
arch/powerpc/boot/dts/p2020ds.dtsi | 10 +
arch/powerpc/boot/dts/p2020rdb.dts | 2 +-
arch/powerpc/boot/dts/p2041rdb.dts | 41 +-
arch/powerpc/boot/dts/p3060qds.dts | 242 --------
arch/powerpc/boot/dts/sbc8560.dts | 406 ------------
arch/powerpc/boot/flatdevtree_env.h | 27 -
arch/powerpc/configs/83xx/kmeter1_defconfig | 22 +-
arch/powerpc/configs/85xx/sbc8560_defconfig | 65 --
arch/powerpc/configs/corenet32_smp_defconfig | 10 +-
arch/powerpc/configs/corenet64_smp_defconfig | 66 +-
arch/powerpc/configs/mgcoge_defconfig | 12 +-
arch/powerpc/configs/mpc85xx_defconfig | 24 +
arch/powerpc/configs/mpc85xx_smp_defconfig | 25 +
arch/powerpc/configs/ppc64_defconfig | 2 +
arch/powerpc/configs/pseries_defconfig | 1 +
arch/powerpc/include/asm/asm-compat.h | 2 +-
arch/powerpc/include/asm/code-patching.h | 4 +-
arch/powerpc/include/asm/device.h | 3 +
arch/powerpc/include/asm/exception-64s.h | 4 +-
arch/powerpc/include/asm/immap_qe.h | 4 +-
arch/powerpc/include/asm/io.h | 8 +
arch/powerpc/include/asm/iommu.h | 18 +-
arch/powerpc/include/asm/kvm_book3s_asm.h | 1 +
arch/powerpc/include/asm/mmu.h | 7 +-
arch/powerpc/include/asm/perf_event.h | 5 +
arch/powerpc/include/asm/ppc-opcode.h | 118 +++-
arch/powerpc/include/asm/ppc_asm.h | 121 ++--
arch/powerpc/include/asm/processor.h | 2 -
arch/powerpc/include/asm/qe.h | 1 +
arch/powerpc/include/asm/reg.h | 8 +-
arch/powerpc/include/asm/thread_info.h | 6 +
arch/powerpc/include/asm/trace.h | 45 +-
arch/powerpc/include/asm/vdso.h | 2 +
arch/powerpc/include/asm/vio.h | 2 +
arch/powerpc/kernel/asm-offsets.c | 1 +
arch/powerpc/kernel/cpu_setup_a2.S | 6 +-
arch/powerpc/kernel/dma.c | 10 +-
arch/powerpc/kernel/entry_32.S | 30 +-
arch/powerpc/kernel/entry_64.S | 37 +-
arch/powerpc/kernel/exceptions-64e.S | 10 +-
arch/powerpc/kernel/exceptions-64s.S | 3 +-
arch/powerpc/kernel/fpu.S | 16 +-
arch/powerpc/kernel/ftrace.c | 81 ++-
arch/powerpc/kernel/head_fsl_booke.S | 25 +-
arch/powerpc/kernel/hw_breakpoint.c | 2 +-
arch/powerpc/kernel/idle_6xx.S | 4 +-
arch/powerpc/kernel/idle_book3e.S | 2 +-
arch/powerpc/kernel/idle_e500.S | 4 +-
arch/powerpc/kernel/idle_power4.S | 2 +-
arch/powerpc/kernel/iommu.c | 291 +++++++--
arch/powerpc/kernel/kvm.c | 2 +-
arch/powerpc/kernel/misc_32.S | 4 +-
arch/powerpc/kernel/misc_64.S | 9 +-
arch/powerpc/kernel/pci-common.c | 1 -
arch/powerpc/kernel/pci_of_scan.c | 1 -
arch/powerpc/kernel/setup-common.c | 27 +
arch/powerpc/kernel/setup_32.c | 24 -
arch/powerpc/kernel/smp.c | 5 +-
arch/powerpc/kernel/vdso.c | 28 +
arch/powerpc/kernel/vdso32/Makefile | 4 +-
arch/powerpc/kernel/vdso32/getcpu.S | 45 ++
arch/powerpc/kernel/vdso32/vdso32.lds.S | 3 +
arch/powerpc/kernel/vdso64/Makefile | 2 +-
arch/powerpc/kernel/vdso64/getcpu.S | 45 ++
arch/powerpc/kernel/vdso64/vdso64.lds.S | 1 +
arch/powerpc/kernel/vio.c | 42 +-
arch/powerpc/kvm/book3s_hv_rmhandlers.S | 227 +++----
arch/powerpc/kvm/book3s_interrupts.S | 80 ++-
arch/powerpc/kvm/book3s_rmhandlers.S | 1 -
arch/powerpc/kvm/book3s_segment.S | 2 -
arch/powerpc/kvm/booke_interrupts.S | 277 +++++----
arch/powerpc/kvm/bookehv_interrupts.S | 229 ++++---
arch/powerpc/lib/Makefile | 5 +-
arch/powerpc/lib/checksum_64.S | 27 +-
arch/powerpc/lib/code-patching.c | 14 +-
arch/powerpc/lib/copypage_64.S | 4 +
arch/powerpc/lib/copypage_power7.S | 165 +++++
arch/powerpc/lib/copyuser_power7.S | 157 +++--
arch/powerpc/lib/crtsavres.S | 5 +-
arch/powerpc/lib/hweight_64.S | 14 +-
arch/powerpc/lib/ldstfp.S | 12 +-
arch/powerpc/lib/memcpy_64.S | 4 +
arch/powerpc/lib/memcpy_power7.S | 647 ++++++++++++++++++++
arch/powerpc/lib/string.S | 2 +
arch/powerpc/lib/string_64.S | 202 ++++++
.../lib/{copyuser_power7_vmx.c => vmx-helper.c} | 27 +-
arch/powerpc/mm/hash_low_32.S | 8 +-
arch/powerpc/mm/hash_low_64.S | 156 +++--
arch/powerpc/mm/numa.c | 2 +
arch/powerpc/mm/tlb_low_64e.S | 10 +-
arch/powerpc/mm/tlb_nohash_low.S | 16 +-
arch/powerpc/net/bpf_jit.h | 106 ++--
arch/powerpc/net/bpf_jit_comp.c | 4 +-
arch/powerpc/perf/callchain.c | 6 +-
arch/powerpc/perf/core-book3s.c | 99 ++-
arch/powerpc/platforms/44x/currituck.c | 2 +-
arch/powerpc/platforms/82xx/km82xx.c | 5 +
arch/powerpc/platforms/83xx/km83xx.c | 100 ++-
arch/powerpc/platforms/85xx/Kconfig | 43 +-
arch/powerpc/platforms/85xx/Makefile | 4 +-
arch/powerpc/platforms/85xx/bsc913x_rdb.c | 67 ++
arch/powerpc/platforms/85xx/corenet_ds.c | 2 +-
arch/powerpc/platforms/85xx/ge_imp3a.c | 2 +-
arch/powerpc/platforms/85xx/mpc8536_ds.c | 2 +-
arch/powerpc/platforms/85xx/mpc85xx_ds.c | 97 +--
arch/powerpc/platforms/85xx/mpc85xx_mds.c | 2 +-
arch/powerpc/platforms/85xx/mpc85xx_rdb.c | 22 +
arch/powerpc/platforms/85xx/p1022_ds.c | 116 +++-
arch/powerpc/platforms/85xx/p3060_qds.c | 77 ---
arch/powerpc/platforms/85xx/qemu_e500.c | 72 +++
arch/powerpc/platforms/85xx/sbc8560.c | 254 --------
arch/powerpc/platforms/86xx/mpc86xx_hpcn.c | 2 +-
arch/powerpc/platforms/Kconfig.cputype | 4 +
arch/powerpc/platforms/cell/beat_hvCall.S | 28 +-
arch/powerpc/platforms/cell/iommu.c | 1 -
arch/powerpc/platforms/powernv/opal-takeover.S | 10 +-
arch/powerpc/platforms/pseries/eeh_event.c | 6 +-
arch/powerpc/platforms/pseries/eeh_pseries.c | 4 +-
arch/powerpc/platforms/pseries/hvCall.S | 78 ++-
arch/powerpc/platforms/pseries/iommu.c | 113 +++-
arch/powerpc/platforms/pseries/mobility.c | 8 +-
arch/powerpc/platforms/pseries/processor_idle.c | 36 +-
arch/powerpc/platforms/pseries/reconfig.c | 16 +-
arch/powerpc/platforms/pseries/smp.c | 1 -
arch/powerpc/sysdev/6xx-suspend.S | 2 +-
arch/powerpc/sysdev/fsl_pci.c | 73 ++-
arch/powerpc/sysdev/fsl_pci.h | 8 +
arch/powerpc/sysdev/mpic.c | 4 +-
arch/powerpc/sysdev/qe_lib/qe.c | 3 +
drivers/char/mem.c | 11 +-
drivers/i2c/busses/i2c-powermac.c | 157 ++++-
drivers/of/base.c | 15 +-
drivers/watchdog/Kconfig | 8 +-
drivers/watchdog/booke_wdt.c | 4 +-
fs/proc/proc_devtree.c | 5 +
include/linux/io.h | 9 +
include/linux/of.h | 3 +-
sound/aoa/codecs/onyx.c | 75 +--
sound/aoa/codecs/tas.c | 80 +--
163 files changed, 4611 insertions(+), 3010 deletions(-)
create mode 100644 arch/powerpc/boot/dts/bsc9131rdb.dts
create mode 100644 arch/powerpc/boot/dts/bsc9131rdb.dtsi
create mode 100644 arch/powerpc/boot/dts/fsl/bsc9131si-post.dtsi
rename arch/powerpc/boot/dts/fsl/{p3060si-pre.dtsi => bsc9131si-pre.dtsi} (56%)
delete mode 100644 arch/powerpc/boot/dts/fsl/p3060si-post.dtsi
rename arch/powerpc/boot/dts/{p1021rdb.dtsi => p1021rdb-pc.dtsi} (99%)
rename arch/powerpc/boot/dts/{p1021rdb.dts => p1021rdb-pc_32b.dts} (97%)
rename arch/powerpc/boot/dts/{p1021rdb_36b.dts => p1021rdb-pc_36b.dts} (97%)
create mode 100644 arch/powerpc/boot/dts/p1024rdb.dtsi
create mode 100644 arch/powerpc/boot/dts/p1024rdb_32b.dts
create mode 100644 arch/powerpc/boot/dts/p1024rdb_36b.dts
delete mode 100644 arch/powerpc/boot/dts/p3060qds.dts
delete mode 100644 arch/powerpc/boot/dts/sbc8560.dts
delete mode 100644 arch/powerpc/boot/flatdevtree_env.h
delete mode 100644 arch/powerpc/configs/85xx/sbc8560_defconfig
create mode 100644 arch/powerpc/kernel/vdso32/getcpu.S
create mode 100644 arch/powerpc/kernel/vdso64/getcpu.S
create mode 100644 arch/powerpc/lib/copypage_power7.S
create mode 100644 arch/powerpc/lib/memcpy_power7.S
create mode 100644 arch/powerpc/lib/string_64.S
rename arch/powerpc/lib/{copyuser_power7_vmx.c => vmx-helper.c} (79%)
create mode 100644 arch/powerpc/platforms/85xx/bsc913x_rdb.c
delete mode 100644 arch/powerpc/platforms/85xx/p3060_qds.c
create mode 100644 arch/powerpc/platforms/85xx/qemu_e500.c
delete mode 100644 arch/powerpc/platforms/85xx/sbc8560.c


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/