From: Linus Torvalds <torvalds@linux-foundation.org>
Date: Fri, 28 Oct 2011 19:02:27 +0000 (-0700)
Subject: Merge branch 'devel-stable' of http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git... 
X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=1fdb24e969110fafea36d3b393bea438f702c87f;p=linux.git

Merge branch 'devel-stable' of ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm

* 'devel-stable' of http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm: (178 commits)
  ARM: 7139/1: fix compilation with CONFIG_ARM_ATAG_DTB_COMPAT and large TEXT_OFFSET
  ARM: gic, local timers: use the request_percpu_irq() interface
  ARM: gic: consolidate PPI handling
  ARM: switch from NO_MACH_MEMORY_H to NEED_MACH_MEMORY_H
  ARM: mach-s5p64x0: remove mach/memory.h
  ARM: mach-s3c64xx: remove mach/memory.h
  ARM: plat-mxc: remove mach/memory.h
  ARM: mach-prima2: remove mach/memory.h
  ARM: mach-zynq: remove mach/memory.h
  ARM: mach-bcmring: remove mach/memory.h
  ARM: mach-davinci: remove mach/memory.h
  ARM: mach-pxa: remove mach/memory.h
  ARM: mach-ixp4xx: remove mach/memory.h
  ARM: mach-h720x: remove mach/memory.h
  ARM: mach-vt8500: remove mach/memory.h
  ARM: mach-s5pc100: remove mach/memory.h
  ARM: mach-tegra: remove mach/memory.h
  ARM: plat-tcc: remove mach/memory.h
  ARM: mach-mmp: remove mach/memory.h
  ARM: mach-cns3xxx: remove mach/memory.h
  ...

Fix up mostly pretty trivial conflicts in:
 - arch/arm/Kconfig
 - arch/arm/include/asm/localtimer.h
 - arch/arm/kernel/Makefile
 - arch/arm/mach-shmobile/board-ap4evb.c
 - arch/arm/mach-u300/core.c
 - arch/arm/mm/dma-mapping.c
 - arch/arm/mm/proc-v7.S
 - arch/arm/plat-omap/Kconfig
largely due to some CONFIG option renaming (ie CONFIG_PM_SLEEP ->
CONFIG_ARM_CPU_SUSPEND for the arm-specific suspend code etc) and
addition of NEED_MACH_MEMORY_H next to HAVE_IDE.
---

1fdb24e969110fafea36d3b393bea438f702c87f
diff --cc arch/arm/Kconfig
index e91cec43f2c08,2686959319a04..5ca86e7ab66de
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@@ -211,11 -212,20 +212,24 @@@ config ARM_PATCH_PHYS_VIR
  	  this feature (eg, building a kernel for a single machine) and
  	  you need to shrink the kernel to the minimal size.
  
+ config NEED_MACH_MEMORY_H
+ 	bool
+ 	help
+ 	  Select this when mach/memory.h is required to provide special
+ 	  definitions for this platform.  The need for mach/memory.h should
+ 	  be avoided when possible.
+ 
+ config PHYS_OFFSET
+ 	hex "Physical address of main memory"
+ 	depends on !ARM_PATCH_PHYS_VIRT && !NEED_MACH_MEMORY_H
+ 	help
+ 	  Please provide the physical address corresponding to the
+ 	  location of main memory in your system.
  
 +config GENERIC_BUG
 +	def_bool y
 +	depends on BUG
 +
  source "init/Kconfig"
  
  source "kernel/Kconfig.freezer"
@@@ -384,7 -400,7 +403,8 @@@ config ARCH_FOOTBRIDG
  	select CPU_SA110
  	select FOOTBRIDGE
  	select GENERIC_CLOCKEVENTS
 +	select HAVE_IDE
+ 	select NEED_MACH_MEMORY_H
  	help
  	  Support for systems based on the DC21285 companion chip
  	  ("FootBridge"), such as the Simtec CATS and the Rebel NetWinder.
@@@ -671,7 -692,7 +696,8 @@@ config ARCH_RP
  	select NO_IOPORT
  	select ARCH_SPARSEMEM_ENABLE
  	select ARCH_USES_GETTIMEOFFSET
 +	select HAVE_IDE
+ 	select NEED_MACH_MEMORY_H
  	help
  	  On the Acorn Risc-PC, Linux can support the internal IDE disk and
  	  CD-ROM interface, serial and parallel port, and the floppy drive.
@@@ -690,7 -711,7 +716,8 @@@ config ARCH_SA110
  	select HAVE_SCHED_CLOCK
  	select TICK_ONESHOT
  	select ARCH_REQUIRE_GPIOLIB
 +	select HAVE_IDE
+ 	select NEED_MACH_MEMORY_H
  	help
  	  Support for StrongARM 11x0 based boards.
  
@@@ -836,7 -861,7 +866,8 @@@ config ARCH_U30
  	select CLKDEV_LOOKUP
  	select HAVE_MACH_CLKDEV
  	select GENERIC_GPIO
 +	select ARCH_REQUIRE_GPIOLIB
+ 	select NEED_MACH_MEMORY_H
  	help
  	  Support for ST-Ericsson U300 series mobile platforms.
  
diff --cc arch/arm/include/asm/localtimer.h
index 6fd955d34c652,f5e1cec7e35cb..c6a18424888ed
--- a/arch/arm/include/asm/localtimer.h
+++ b/arch/arm/include/asm/localtimer.h
@@@ -10,7 -10,7 +10,8 @@@
  #ifndef __ASM_ARM_LOCALTIMER_H
  #define __ASM_ARM_LOCALTIMER_H
  
 +#include <linux/errno.h>
+ #include <linux/interrupt.h>
  
  struct clock_event_device;
  
diff --cc arch/arm/kernel/Makefile
index 68036eece340b,7cac26c5f5024..16eed6aebfa45
--- a/arch/arm/kernel/Makefile
+++ b/arch/arm/kernel/Makefile
@@@ -29,7 -29,7 +29,7 @@@ obj-$(CONFIG_MODULES)		+= armksyms.o mo
  obj-$(CONFIG_ARTHUR)		+= arthur.o
  obj-$(CONFIG_ISA_DMA)		+= dma-isa.o
  obj-$(CONFIG_PCI)		+= bios32.o isa.o
- obj-$(CONFIG_ARM_CPU_SUSPEND)	+= sleep.o
 -obj-$(CONFIG_PM_SLEEP)		+= sleep.o suspend.o
++obj-$(CONFIG_ARM_CPU_SUSPEND)	+= sleep.o suspend.o
  obj-$(CONFIG_HAVE_SCHED_CLOCK)	+= sched_clock.o
  obj-$(CONFIG_SMP)		+= smp.o smp_tlb.o
  obj-$(CONFIG_HAVE_ARM_SCU)	+= smp_scu.o
diff --cc arch/arm/kernel/head.S
index 239703dbdf4f6,673c806cc1060..566c54c2a1fef
--- a/arch/arm/kernel/head.S
+++ b/arch/arm/kernel/head.S
@@@ -238,10 -234,10 +238,10 @@@ __create_page_tables
  	 * This allows debug messages to be output
  	 * via a serial console before paging_init.
  	 */
- 	addruart r7, r3
+ 	addruart r7, r3, r0
  
 -	mov	r3, r3, lsr #20
 -	mov	r3, r3, lsl #2
 +	mov	r3, r3, lsr #SECTION_SHIFT
 +	mov	r3, r3, lsl #PMD_ORDER
  
  	add	r0, r4, r3
  	rsb	r3, r3, #0x4000			@ PTRS_PER_PGD*sizeof(long)
diff --cc arch/arm/mach-exynos4/mct.c
index ddd86864fb831,85a1bb79f11c0..582b874aab0e7
--- a/arch/arm/mach-exynos4/mct.c
+++ b/arch/arm/mach-exynos4/mct.c
@@@ -395,16 -391,15 +397,17 @@@ static void exynos4_mct_tick_init(struc
  }
  
  /* Setup the local clock events for a CPU */
 -void __cpuinit local_timer_setup(struct clock_event_device *evt)
 +int __cpuinit local_timer_setup(struct clock_event_device *evt)
  {
  	exynos4_mct_tick_init(evt);
 +
 +	return 0;
  }
  
- int local_timer_ack(void)
+ void local_timer_stop(struct clock_event_device *evt)
  {
- 	return 0;
+ 	evt->set_mode(CLOCK_EVT_MODE_UNUSED, evt);
+ 	disable_irq(evt->irq);
  }
  
  #endif /* CONFIG_LOCAL_TIMERS */
diff --cc arch/arm/mach-shmobile/board-ap4evb.c
index 7e90d064ebcb0,b622d8d3ab729..5b7edadf46475
--- a/arch/arm/mach-shmobile/board-ap4evb.c
+++ b/arch/arm/mach-shmobile/board-ap4evb.c
@@@ -42,7 -42,7 +42,8 @@@
  #include <linux/leds.h>
  #include <linux/input/sh_keysc.h>
  #include <linux/usb/r8a66597.h>
 +#include <linux/pm_clock.h>
+ #include <linux/dma-mapping.h>
  
  #include <media/sh_mobile_ceu.h>
  #include <media/sh_mobile_csi2.h>
diff --cc arch/arm/mach-u300/core.c
index 24f3a96aac35f,376b6dfdfae99..f4ad6d2e26f3d
--- a/arch/arm/mach-u300/core.c
+++ b/arch/arm/mach-u300/core.c
@@@ -25,8 -25,7 +25,9 @@@
  #include <linux/err.h>
  #include <linux/mtd/nand.h>
  #include <linux/mtd/fsmc.h>
 +#include <linux/pinctrl/machine.h>
 +#include <linux/pinctrl/pinmux.h>
+ #include <linux/dma-mapping.h>
  
  #include <asm/types.h>
  #include <asm/setup.h>
diff --cc arch/arm/mm/dma-mapping.c
index 235eb775fc782,50be842e89fd0..e4e7f6cba1ab4
--- a/arch/arm/mm/dma-mapping.c
+++ b/arch/arm/mm/dma-mapping.c
@@@ -117,14 -119,10 +119,9 @@@ static void __dma_free_buffer(struct pa
  }
  
  #ifdef CONFIG_MMU
- /* Sanity check size */
- #if (CONSISTENT_DMA_SIZE % SZ_2M)
- #error "CONSISTENT_DMA_SIZE must be multiple of 2MiB"
- #endif
  
- #define CONSISTENT_OFFSET(x)	(((unsigned long)(x) - CONSISTENT_BASE) >> PAGE_SHIFT)
- #define CONSISTENT_PTE_INDEX(x) (((unsigned long)(x) - CONSISTENT_BASE) >> PMD_SHIFT)
- #define NUM_CONSISTENT_PTES (CONSISTENT_DMA_SIZE >> PMD_SHIFT)
 -
+ #define CONSISTENT_OFFSET(x)	(((unsigned long)(x) - consistent_base) >> PAGE_SHIFT)
 -#define CONSISTENT_PTE_INDEX(x) (((unsigned long)(x) - consistent_base) >> PGDIR_SHIFT)
++#define CONSISTENT_PTE_INDEX(x) (((unsigned long)(x) - consistent_base) >> PMD_SHIFT)
  
  /*
   * These are the page tables (2MB each) covering uncached, DMA consistent allocations
diff --cc arch/arm/mm/proc-v7.S
index 9591c8e9fb8cc,6af366ce01651..2c559ac381425
--- a/arch/arm/mm/proc-v7.S
+++ b/arch/arm/mm/proc-v7.S
@@@ -217,22 -217,20 +217,20 @@@ ENDPROC(cpu_v7_set_pte_ext
  
  /* Suspend/resume support: derived from arch/arm/mach-s5pv210/sleep.S */
  .globl	cpu_v7_suspend_size
- .equ	cpu_v7_suspend_size, 4 * 9
+ .equ	cpu_v7_suspend_size, 4 * 7
 -#ifdef CONFIG_PM_SLEEP
 +#ifdef CONFIG_ARM_CPU_SUSPEND
  ENTRY(cpu_v7_do_suspend)
- 	stmfd	sp!, {r4 - r11, lr}
+ 	stmfd	sp!, {r4 - r10, lr}
  	mrc	p15, 0, r4, c13, c0, 0	@ FCSE/PID
- 	mrc	p15, 0, r5, c13, c0, 1	@ Context ID
- 	mrc	p15, 0, r6, c13, c0, 3	@ User r/o thread ID
- 	stmia	r0!, {r4 - r6}
+ 	mrc	p15, 0, r5, c13, c0, 3	@ User r/o thread ID
+ 	stmia	r0!, {r4 - r5}
  	mrc	p15, 0, r6, c3, c0, 0	@ Domain ID
- 	mrc	p15, 0, r7, c2, c0, 0	@ TTB 0
- 	mrc	p15, 0, r8, c2, c0, 1	@ TTB 1
- 	mrc	p15, 0, r9, c1, c0, 0	@ Control register
- 	mrc	p15, 0, r10, c1, c0, 1	@ Auxiliary control register
- 	mrc	p15, 0, r11, c1, c0, 2	@ Co-processor access control
- 	stmia	r0, {r6 - r11}
- 	ldmfd	sp!, {r4 - r11, pc}
+ 	mrc	p15, 0, r7, c2, c0, 1	@ TTB 1
+ 	mrc	p15, 0, r8, c1, c0, 0	@ Control register
+ 	mrc	p15, 0, r9, c1, c0, 1	@ Auxiliary control register
+ 	mrc	p15, 0, r10, c1, c0, 2	@ Co-processor access control
+ 	stmia	r0, {r6 - r10}
+ 	ldmfd	sp!, {r4 - r10, pc}
  ENDPROC(cpu_v7_do_suspend)
  
  ENTRY(cpu_v7_do_resume)
diff --cc arch/arm/plat-omap/Kconfig
index 5b605a9eb0916,95732af7b208c..6f4edd3408c20
--- a/arch/arm/plat-omap/Kconfig
+++ b/arch/arm/plat-omap/Kconfig
@@@ -14,7 -14,7 +14,8 @@@ config ARCH_OMAP
  	select CLKDEV_LOOKUP
  	select CLKSRC_MMIO
  	select GENERIC_IRQ_CHIP
 +	select HAVE_IDE
+ 	select NEED_MACH_MEMORY_H
  	help
  	  "Systems based on omap7xx, omap15xx or omap16xx"