Merge branch 'for-linus' of git://git.linaro.org/people/rmk/linux-arm
authorLinus Torvalds <torvalds@linux-foundation.org>
Sun, 7 Oct 2012 12:20:57 +0000 (21:20 +0900)
committerLinus Torvalds <torvalds@linux-foundation.org>
Sun, 7 Oct 2012 12:20:57 +0000 (21:20 +0900)
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
  ...

14 files changed:
1  2 
arch/arm/Kconfig
arch/arm/Makefile
arch/arm/include/asm/io.h
arch/arm/include/asm/timex.h
arch/arm/kernel/Makefile
arch/arm/kernel/setup.c
arch/arm/kernel/smp.c
arch/arm/mach-exynos/platsmp.c
arch/arm/mach-integrator/core.c
arch/arm/mach-integrator/integrator_ap.c
arch/arm/mach-integrator/integrator_cp.c
arch/arm/mach-shmobile/smp-emev2.c
arch/arm/mm/cache-l2x0.c
arch/arm/mm/ioremap.c

@@@ -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"
Simple merge
Simple merge
  #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
@@@ -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
Simple merge
   */
  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,
Simple merge
Simple merge
@@@ -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;
  
  
  #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)
Simple merge
Simple merge
Simple merge