From: Linus Torvalds <torvalds@linux-foundation.org>
Date: Sun, 7 Oct 2012 12:20:57 +0000 (+0900)
Subject: Merge branch 'for-linus' of git://git.linaro.org/people/rmk/linux-arm
X-Git-Tag: v3.7-rc1~94
X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=0e51793e162ca432fc5f04178cf82b80a92c2659;p=users%2Fdwmw2%2Flinux.git

Merge branch 'for-linus' of git://git.linaro.org/people/rmk/linux-arm

Pull ARM updates from Russell King:
 "This is the first chunk of ARM updates for this merge window.
  Conflicts are expected in two files - asm/timex.h and
  mach-integrator/integrator_cp.c.  Nothing particularly stands out more
  than anything else.

  Most of the growth is down to the opcodes stuff from Dave Martin,
  which is countered by Rob's patches to use more of the asm-generic
  headers on ARM."

(A few more conflicts grew since then, but it all looked fairly trivial)

* 'for-linus' of git://git.linaro.org/people/rmk/linux-arm: (44 commits)
  ARM: 7548/1: include linux/sched.h in syscall.h
  ARM: 7541/1: Add ARM ERRATA 775420 workaround
  ARM: ensure vm_struct has its phys_addr member filled in
  ARM: 7540/1: kexec: Check segment memory addresses
  ARM: 7539/1: kexec: scan for dtb magic in segments
  ARM: 7538/1: delay: add registration mechanism for delay timer sources
  ARM: 7536/1: smp: Formalize an IPI for wakeup
  ARM: 7525/1: ptrace: use updated syscall number for syscall auditing
  ARM: 7524/1: support syscall tracing
  ARM: 7519/1: integrator: convert platform devices to Device Tree
  ARM: 7518/1: integrator: convert AMBA devices to device tree
  ARM: 7517/1: integrator: initial device tree support
  ARM: 7516/1: plat-versatile: add DT support to FPGA IRQ
  ARM: 7515/1: integrator: check PL010 base address from resource
  ARM: 7514/1: integrator: call common init function from machine
  ARM: 7522/1: arch_timers: register a time/cycle counter
  ARM: 7523/1: arch_timers: enable the use of the virtual timer
  ARM: 7531/1: mark kernelmode mem{cpy,set} non-experimental
  ARM: 7520/1: Build dtb files in all target
  ARM: Fix build warning in arch/arm/mm/alignment.c
  ...
---

0e51793e162ca432fc5f04178cf82b80a92c2659
diff --cc arch/arm/Kconfig
index 8ac460a8f4ca6,117e81b12009f..6d2f7f5c0036f
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@@ -1828,22 -1902,6 +1839,16 @@@ config CC_STACKPROTECTO
  	  neutralized via a kernel panic.
  	  This feature requires gcc version 4.2 or above.
  
- config DEPRECATED_PARAM_STRUCT
- 	bool "Provide old way to pass kernel parameters"
- 	help
- 	  This was deprecated in 2001 and announced to live on for 5 years.
- 	  Some old boot loaders still use this way.
- 
 +config XEN_DOM0
 +	def_bool y
 +	depends on XEN
 +
 +config XEN
 +	bool "Xen guest support on ARM (EXPERIMENTAL)"
 +	depends on EXPERIMENTAL && ARM && OF
 +	help
 +	  Say Y if you want to run Linux in a Virtual Machine on Xen on ARM.
 +
  endmenu
  
  menu "Boot options"
diff --cc arch/arm/include/asm/timex.h
index 963342acebb72,9acc135dad94b..83f2aa83899c4
--- a/arch/arm/include/asm/timex.h
+++ b/arch/arm/include/asm/timex.h
@@@ -12,19 -12,9 +12,13 @@@
  #ifndef _ASMARM_TIMEX_H
  #define _ASMARM_TIMEX_H
  
- #include <asm/arch_timer.h>
 +#ifdef CONFIG_ARCH_MULTIPLATFORM
 +#define CLOCK_TICK_RATE 1000000
 +#else
  #include <mach/timex.h>
 +#endif
  
  typedef unsigned long cycles_t;
- 
- #ifdef ARCH_HAS_READ_CURRENT_TIMER
  #define get_cycles()	({ cycles_t c; read_current_timer(&c) ? 0 : c; })
- #else
- #define get_cycles()	(0)
- #endif
  
  #endif
diff --cc arch/arm/kernel/Makefile
index d81f3a6d9ad84,79e346a5d78bd..5dfef9d97ed92
--- a/arch/arm/kernel/Makefile
+++ b/arch/arm/kernel/Makefile
@@@ -19,8 -19,11 +19,10 @@@ obj-y		:= elf.o entry-armv.o entry-comm
  		   process.o ptrace.o return_address.o sched_clock.o \
  		   setup.o signal.o stacktrace.o sys_arm.o time.o traps.o
  
- obj-$(CONFIG_DEPRECATED_PARAM_STRUCT) += compat.o
+ obj-$(CONFIG_ATAGS)		+= atags_parse.o
+ obj-$(CONFIG_ATAGS_PROC)	+= atags_proc.o
+ obj-$(CONFIG_DEPRECATED_PARAM_STRUCT) += atags_compat.o
  
 -obj-$(CONFIG_LEDS)		+= leds.o
  obj-$(CONFIG_OC_ETM)		+= etm.o
  obj-$(CONFIG_CPU_IDLE)		+= cpuidle.o
  obj-$(CONFIG_ISA_DMA_API)	+= dma.o
diff --cc arch/arm/kernel/smp.c
index dea7a925c7e24,d98c37e97d9df..d100eacdb7983
--- a/arch/arm/kernel/smp.c
+++ b/arch/arm/kernel/smp.c
@@@ -52,14 -50,9 +52,15 @@@
   */
  struct secondary_data secondary_data;
  
 +/*
 + * control for which core is the next to come out of the secondary
 + * boot "holding pen"
 + */
 +volatile int __cpuinitdata pen_release = -1;
 +
  enum ipi_msg_type {
- 	IPI_TIMER = 2,
+ 	IPI_WAKEUP,
+ 	IPI_TIMER,
  	IPI_RESCHEDULE,
  	IPI_CALL_FUNC,
  	IPI_CALL_FUNC_SINGLE,
diff --cc arch/arm/mach-integrator/integrator_ap.c
index 2215d96cd7357,ff1255ae71215..d5b5435a09aed
--- a/arch/arm/mach-integrator/integrator_ap.c
+++ b/arch/arm/mach-integrator/integrator_ap.c
@@@ -155,26 -162,8 +158,9 @@@ static void __init ap_map_io(void
  {
  	iotable_init(ap_io_desc, ARRAY_SIZE(ap_io_desc));
  	vga_base = PCI_MEMORY_VADDR;
 +	pci_map_io_early(__phys_to_pfn(PHYS_PCI_IO_BASE));
  }
  
- #define INTEGRATOR_SC_VALID_INT	0x003fffff
- 
- static void __init ap_init_irq(void)
- {
- 	/* Disable all interrupts initially. */
- 	/* Do the core module ones */
- 	writel(-1, VA_CMIC_BASE + IRQ_ENABLE_CLEAR);
- 
- 	/* do the header card stuff next */
- 	writel(-1, VA_IC_BASE + IRQ_ENABLE_CLEAR);
- 	writel(-1, VA_IC_BASE + FIQ_ENABLE_CLEAR);
- 
- 	fpga_irq_init(VA_IC_BASE, "SC", IRQ_PIC_START,
- 		-1, INTEGRATOR_SC_VALID_INT, NULL);
- 	integrator_clk_init(false);
- }
- 
  #ifdef CONFIG_PM
  static unsigned long ic_irq_enable;
  
diff --cc arch/arm/mach-integrator/integrator_cp.c
index 3df5fc3693617,f51363e2d6feb..6870a1fbcd787
--- a/arch/arm/mach-integrator/integrator_cp.c
+++ b/arch/arm/mach-integrator/integrator_cp.c
@@@ -52,14 -55,7 +55,7 @@@
  
  #define INTCP_PA_CLCD_BASE		0xc0000000
  
- #define INTCP_VA_CIC_BASE		__io_address(INTEGRATOR_HDR_BASE + 0x40)
- #define INTCP_VA_PIC_BASE		__io_address(INTEGRATOR_IC_BASE)
- #define INTCP_VA_SIC_BASE		__io_address(INTEGRATOR_CP_SIC_BASE)
- 
- #define INTCP_ETH_SIZE			0x10
- 
 -#define INTCP_VA_CTRL_BASE		IO_ADDRESS(INTEGRATOR_CP_CTL_BASE)
 +#define INTCP_VA_CTRL_BASE		__io_address(INTEGRATOR_CP_CTL_BASE)
  #define INTCP_FLASHPROG			0x04
  #define CINTEGRATOR_FLASHPROG_FLVPPEN	(1 << 0)
  #define CINTEGRATOR_FLASHPROG_FLWREN	(1 << 1)