Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 12679a2d authored by Linus Torvalds's avatar Linus Torvalds
Browse files

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

Pull more ARM updates from Russell King.

This got a fair number of conflicts with the <asm/system.h> split, but
also with some other sparse-irq and header file include cleanups.  They
all looked pretty trivial, though.

* 'for-linus' of git://git.linaro.org/people/rmk/linux-arm: (59 commits)
  ARM: fix Kconfig warning for HAVE_BPF_JIT
  ARM: 7361/1: provide XIP_VIRT_ADDR for no-MMU builds
  ARM: 7349/1: integrator: convert to sparse irqs
  ARM: 7259/3: net: JIT compiler for packet filters
  ARM: 7334/1: add jump label support
  ARM: 7333/2: jump label: detect %c support for ARM
  ARM: 7338/1: add support for early console output via semihosting
  ARM: use set_current_blocked() and block_sigmask()
  ARM: exec: remove redundant set_fs(USER_DS)
  ARM: 7332/1: extract out code patch function from kprobes
  ARM: 7331/1: extract out insn generation code from ftrace
  ARM: 7330/1: ftrace: use canonical Thumb-2 wide instruction format
  ARM: 7351/1: ftrace: remove useless memory checks
  ARM: 7316/1: kexec: EOI active and mask all interrupts in kexec crash path
  ARM: Versatile Express: add NO_IOPORT
  ARM: get rid of asm/irq.h in asm/prom.h
  ARM: 7319/1: Print debug info for SIGBUS in user faults
  ARM: 7318/1: gic: refactor irq_start assignment
  ARM: 7317/1: irq: avoid NULL check in for_each_irq_desc loop
  ARM: 7315/1: perf: add support for the Cortex-A7 PMU
  ...
parents 1c036588 b0df8986
Loading
Loading
Loading
Loading
+6 −17
Original line number Original line Diff line number Diff line
@@ -9,6 +9,7 @@ config ARM
	select SYS_SUPPORTS_APM_EMULATION
	select SYS_SUPPORTS_APM_EMULATION
	select GENERIC_ATOMIC64 if (CPU_V6 || !CPU_32v6K || !AEABI)
	select GENERIC_ATOMIC64 if (CPU_V6 || !CPU_32v6K || !AEABI)
	select HAVE_OPROFILE if (HAVE_PERF_EVENTS)
	select HAVE_OPROFILE if (HAVE_PERF_EVENTS)
	select HAVE_ARCH_JUMP_LABEL if !XIP_KERNEL
	select HAVE_ARCH_KGDB
	select HAVE_ARCH_KGDB
	select HAVE_KPROBES if !XIP_KERNEL
	select HAVE_KPROBES if !XIP_KERNEL
	select HAVE_KRETPROBES if (HAVE_KPROBES)
	select HAVE_KRETPROBES if (HAVE_KPROBES)
@@ -21,6 +22,7 @@ config ARM
	select HAVE_KERNEL_GZIP
	select HAVE_KERNEL_GZIP
	select HAVE_KERNEL_LZO
	select HAVE_KERNEL_LZO
	select HAVE_KERNEL_LZMA
	select HAVE_KERNEL_LZMA
	select HAVE_KERNEL_XZ
	select HAVE_IRQ_WORK
	select HAVE_IRQ_WORK
	select HAVE_PERF_EVENTS
	select HAVE_PERF_EVENTS
	select PERF_USE_VMALLOC
	select PERF_USE_VMALLOC
@@ -28,10 +30,10 @@ config ARM
	select HAVE_HW_BREAKPOINT if (PERF_EVENTS && (CPU_V6 || CPU_V6K || CPU_V7))
	select HAVE_HW_BREAKPOINT if (PERF_EVENTS && (CPU_V6 || CPU_V6K || CPU_V7))
	select HAVE_C_RECORDMCOUNT
	select HAVE_C_RECORDMCOUNT
	select HAVE_GENERIC_HARDIRQS
	select HAVE_GENERIC_HARDIRQS
	select HAVE_SPARSE_IRQ
	select GENERIC_IRQ_SHOW
	select GENERIC_IRQ_SHOW
	select CPU_PM if (SUSPEND || CPU_IDLE)
	select CPU_PM if (SUSPEND || CPU_IDLE)
	select GENERIC_PCI_IOMAP
	select GENERIC_PCI_IOMAP
	select HAVE_BPF_JIT if NET
	help
	help
	  The ARM series is a line of low-power-consumption RISC chip designs
	  The ARM series is a line of low-power-consumption RISC chip designs
	  licensed by ARM Ltd and targeted at embedded applications and
	  licensed by ARM Ltd and targeted at embedded applications and
@@ -52,9 +54,6 @@ config MIGHT_HAVE_PCI
config SYS_SUPPORTS_APM_EMULATION
config SYS_SUPPORTS_APM_EMULATION
	bool
	bool


config HAVE_SCHED_CLOCK
	bool

config GENERIC_GPIO
config GENERIC_GPIO
	bool
	bool


@@ -269,6 +268,7 @@ config ARCH_INTEGRATOR
	select PLAT_VERSATILE
	select PLAT_VERSATILE
	select PLAT_VERSATILE_FPGA_IRQ
	select PLAT_VERSATILE_FPGA_IRQ
	select NEED_MACH_MEMORY_H
	select NEED_MACH_MEMORY_H
	select SPARSE_IRQ
	help
	help
	  Support for ARM's Integrator platform.
	  Support for ARM's Integrator platform.


@@ -315,6 +315,7 @@ config ARCH_VEXPRESS
	select HAVE_CLK
	select HAVE_CLK
	select HAVE_PATA_PLATFORM
	select HAVE_PATA_PLATFORM
	select ICST
	select ICST
	select NO_IOPORT
	select PLAT_VERSATILE
	select PLAT_VERSATILE
	select PLAT_VERSATILE_CLCD
	select PLAT_VERSATILE_CLCD
	help
	help
@@ -354,6 +355,7 @@ config ARCH_HIGHBANK
	select GENERIC_CLOCKEVENTS
	select GENERIC_CLOCKEVENTS
	select HAVE_ARM_SCU
	select HAVE_ARM_SCU
	select HAVE_SMP
	select HAVE_SMP
	select SPARSE_IRQ
	select USE_OF
	select USE_OF
	help
	help
	  Support for the Calxeda Highbank SoC based boards.
	  Support for the Calxeda Highbank SoC based boards.
@@ -442,7 +444,6 @@ config ARCH_MXC
	select CLKDEV_LOOKUP
	select CLKDEV_LOOKUP
	select CLKSRC_MMIO
	select CLKSRC_MMIO
	select GENERIC_IRQ_CHIP
	select GENERIC_IRQ_CHIP
	select HAVE_SCHED_CLOCK
	select MULTI_IRQ_HANDLER
	select MULTI_IRQ_HANDLER
	help
	help
	  Support for Freescale MXC/iMX-based family of processors
	  Support for Freescale MXC/iMX-based family of processors
@@ -537,7 +538,6 @@ config ARCH_IXP4XX
	select CPU_XSCALE
	select CPU_XSCALE
	select GENERIC_GPIO
	select GENERIC_GPIO
	select GENERIC_CLOCKEVENTS
	select GENERIC_CLOCKEVENTS
	select HAVE_SCHED_CLOCK
	select MIGHT_HAVE_PCI
	select MIGHT_HAVE_PCI
	select DMABOUNCE if PCI
	select DMABOUNCE if PCI
	help
	help
@@ -608,7 +608,6 @@ config ARCH_MMP
	select CLKDEV_LOOKUP
	select CLKDEV_LOOKUP
	select GENERIC_CLOCKEVENTS
	select GENERIC_CLOCKEVENTS
	select GPIO_PXA
	select GPIO_PXA
	select HAVE_SCHED_CLOCK
	select TICK_ONESHOT
	select TICK_ONESHOT
	select PLAT_PXA
	select PLAT_PXA
	select SPARSE_IRQ
	select SPARSE_IRQ
@@ -649,7 +648,6 @@ config ARCH_TEGRA
	select GENERIC_CLOCKEVENTS
	select GENERIC_CLOCKEVENTS
	select GENERIC_GPIO
	select GENERIC_GPIO
	select HAVE_CLK
	select HAVE_CLK
	select HAVE_SCHED_CLOCK
	select HAVE_SMP
	select HAVE_SMP
	select MIGHT_HAVE_CACHE_L2X0
	select MIGHT_HAVE_CACHE_L2X0
	select ARCH_HAS_CPUFREQ
	select ARCH_HAS_CPUFREQ
@@ -666,7 +664,6 @@ config ARCH_PICOXCELL
	select DW_APB_TIMER
	select DW_APB_TIMER
	select GENERIC_CLOCKEVENTS
	select GENERIC_CLOCKEVENTS
	select GENERIC_GPIO
	select GENERIC_GPIO
	select HAVE_SCHED_CLOCK
	select HAVE_TCM
	select HAVE_TCM
	select NO_IOPORT
	select NO_IOPORT
	select SPARSE_IRQ
	select SPARSE_IRQ
@@ -694,7 +691,6 @@ config ARCH_PXA
	select ARCH_REQUIRE_GPIOLIB
	select ARCH_REQUIRE_GPIOLIB
	select GENERIC_CLOCKEVENTS
	select GENERIC_CLOCKEVENTS
	select GPIO_PXA
	select GPIO_PXA
	select HAVE_SCHED_CLOCK
	select TICK_ONESHOT
	select TICK_ONESHOT
	select PLAT_PXA
	select PLAT_PXA
	select SPARSE_IRQ
	select SPARSE_IRQ
@@ -761,7 +757,6 @@ config ARCH_SA1100
	select CPU_FREQ
	select CPU_FREQ
	select GENERIC_CLOCKEVENTS
	select GENERIC_CLOCKEVENTS
	select CLKDEV_LOOKUP
	select CLKDEV_LOOKUP
	select HAVE_SCHED_CLOCK
	select TICK_ONESHOT
	select TICK_ONESHOT
	select ARCH_REQUIRE_GPIOLIB
	select ARCH_REQUIRE_GPIOLIB
	select HAVE_IDE
	select HAVE_IDE
@@ -818,7 +813,6 @@ config ARCH_S5P64X0
	select CLKSRC_MMIO
	select CLKSRC_MMIO
	select HAVE_S3C2410_WATCHDOG if WATCHDOG
	select HAVE_S3C2410_WATCHDOG if WATCHDOG
	select GENERIC_CLOCKEVENTS
	select GENERIC_CLOCKEVENTS
	select HAVE_SCHED_CLOCK
	select HAVE_S3C2410_I2C if I2C
	select HAVE_S3C2410_I2C if I2C
	select HAVE_S3C_RTC if RTC_CLASS
	select HAVE_S3C_RTC if RTC_CLASS
	help
	help
@@ -849,7 +843,6 @@ config ARCH_S5PV210
	select CLKSRC_MMIO
	select CLKSRC_MMIO
	select ARCH_HAS_CPUFREQ
	select ARCH_HAS_CPUFREQ
	select GENERIC_CLOCKEVENTS
	select GENERIC_CLOCKEVENTS
	select HAVE_SCHED_CLOCK
	select HAVE_S3C2410_I2C if I2C
	select HAVE_S3C2410_I2C if I2C
	select HAVE_S3C_RTC if RTC_CLASS
	select HAVE_S3C_RTC if RTC_CLASS
	select HAVE_S3C2410_WATCHDOG if WATCHDOG
	select HAVE_S3C2410_WATCHDOG if WATCHDOG
@@ -892,7 +885,6 @@ config ARCH_U300
	depends on MMU
	depends on MMU
	select CLKSRC_MMIO
	select CLKSRC_MMIO
	select CPU_ARM926T
	select CPU_ARM926T
	select HAVE_SCHED_CLOCK
	select HAVE_TCM
	select HAVE_TCM
	select ARM_AMBA
	select ARM_AMBA
	select ARM_PATCH_PHYS_VIRT
	select ARM_PATCH_PHYS_VIRT
@@ -951,7 +943,6 @@ config ARCH_OMAP
	select ARCH_HAS_CPUFREQ
	select ARCH_HAS_CPUFREQ
	select CLKSRC_MMIO
	select CLKSRC_MMIO
	select GENERIC_CLOCKEVENTS
	select GENERIC_CLOCKEVENTS
	select HAVE_SCHED_CLOCK
	select ARCH_HAS_HOLES_MEMORYMODEL
	select ARCH_HAS_HOLES_MEMORYMODEL
	help
	help
	  Support for TI's OMAP platform (OMAP1/2/3/4).
	  Support for TI's OMAP platform (OMAP1/2/3/4).
@@ -1115,13 +1106,11 @@ config ARCH_ACORN
config PLAT_IOP
config PLAT_IOP
	bool
	bool
	select GENERIC_CLOCKEVENTS
	select GENERIC_CLOCKEVENTS
	select HAVE_SCHED_CLOCK


config PLAT_ORION
config PLAT_ORION
	bool
	bool
	select CLKSRC_MMIO
	select CLKSRC_MMIO
	select GENERIC_IRQ_CHIP
	select GENERIC_IRQ_CHIP
	select HAVE_SCHED_CLOCK


config PLAT_PXA
config PLAT_PXA
	bool
	bool
+16 −0
Original line number Original line Diff line number Diff line
@@ -292,6 +292,22 @@ choice
		  Note that the system will appear to hang during boot if there
		  Note that the system will appear to hang during boot if there
		  is nothing connected to read from the DCC.
		  is nothing connected to read from the DCC.


	config DEBUG_SEMIHOSTING
		bool "Kernel low-level debug output via semihosting I"
		help
		  Semihosting enables code running on an ARM target to use
		  the I/O facilities on a host debugger/emulator through a
		  simple SVC calls. The host debugger or emulator must have
		  semihosting enabled for the special svc call to be trapped
		  otherwise the kernel will crash.

		  This is known to work with OpenOCD, as wellas
		  ARM's Fast Models, or any other controlling environment
		  that implements semihosting.

		  For more details about semihosting, please see
		  chapter 8 of DUI0203I_rvct_developer_guide.pdf from ARM Ltd.

endchoice
endchoice


config EARLY_PRINTK
config EARLY_PRINTK
+1 −0
Original line number Original line Diff line number Diff line
@@ -253,6 +253,7 @@ core-$(CONFIG_VFP) += arch/arm/vfp/


# If we have a machine-specific directory, then include it in the build.
# If we have a machine-specific directory, then include it in the build.
core-y				+= arch/arm/kernel/ arch/arm/mm/ arch/arm/common/
core-y				+= arch/arm/kernel/ arch/arm/mm/ arch/arm/common/
core-y				+= arch/arm/net/
core-y				+= $(machdirs) $(platdirs)
core-y				+= $(machdirs) $(platdirs)


drivers-$(CONFIG_OPROFILE)      += arch/arm/oprofile/
drivers-$(CONFIG_OPROFILE)      += arch/arm/oprofile/
+2 −0
Original line number Original line Diff line number Diff line
ashldi3.S
font.c
font.c
lib1funcs.S
lib1funcs.S
piggy.gzip
piggy.gzip
piggy.lzo
piggy.lzo
piggy.lzma
piggy.lzma
piggy.xzkern
vmlinux
vmlinux
vmlinux.lds
vmlinux.lds


+12 −3
Original line number Original line Diff line number Diff line
@@ -92,6 +92,7 @@ SEDFLAGS = s/TEXT_START/$(ZTEXTADDR)/;s/BSS_START/$(ZBSSADDR)/
suffix_$(CONFIG_KERNEL_GZIP) = gzip
suffix_$(CONFIG_KERNEL_GZIP) = gzip
suffix_$(CONFIG_KERNEL_LZO)  = lzo
suffix_$(CONFIG_KERNEL_LZO)  = lzo
suffix_$(CONFIG_KERNEL_LZMA) = lzma
suffix_$(CONFIG_KERNEL_LZMA) = lzma
suffix_$(CONFIG_KERNEL_XZ)   = xzkern


# Borrowed libfdt files for the ATAG compatibility mode
# Borrowed libfdt files for the ATAG compatibility mode


@@ -112,10 +113,12 @@ endif


targets       := vmlinux vmlinux.lds \
targets       := vmlinux vmlinux.lds \
		 piggy.$(suffix_y) piggy.$(suffix_y).o \
		 piggy.$(suffix_y) piggy.$(suffix_y).o \
		 lib1funcs.o lib1funcs.S font.o font.c head.o misc.o $(OBJS)
		 lib1funcs.o lib1funcs.S ashldi3.o ashldi3.S \
		 font.o font.c head.o misc.o $(OBJS)


# Make sure files are removed during clean
# Make sure files are removed during clean
extra-y       += piggy.gzip piggy.lzo piggy.lzma lib1funcs.S $(libfdt) $(libfdt_hdrs)
extra-y       += piggy.gzip piggy.lzo piggy.lzma piggy.xzkern \
		 lib1funcs.S ashldi3.S $(libfdt) $(libfdt_hdrs)


ifeq ($(CONFIG_FUNCTION_TRACER),y)
ifeq ($(CONFIG_FUNCTION_TRACER),y)
ORIG_CFLAGS := $(KBUILD_CFLAGS)
ORIG_CFLAGS := $(KBUILD_CFLAGS)
@@ -151,6 +154,12 @@ lib1funcs = $(obj)/lib1funcs.o
$(obj)/lib1funcs.S: $(srctree)/arch/$(SRCARCH)/lib/lib1funcs.S
$(obj)/lib1funcs.S: $(srctree)/arch/$(SRCARCH)/lib/lib1funcs.S
	$(call cmd,shipped)
	$(call cmd,shipped)


# For __aeabi_llsl
ashldi3 = $(obj)/ashldi3.o

$(obj)/ashldi3.S: $(srctree)/arch/$(SRCARCH)/lib/ashldi3.S
	$(call cmd,shipped)

# We need to prevent any GOTOFF relocs being used with references
# We need to prevent any GOTOFF relocs being used with references
# to symbols in the .bss section since we cannot relocate them
# to symbols in the .bss section since we cannot relocate them
# independently from the rest at run time.  This can be achieved by
# independently from the rest at run time.  This can be achieved by
@@ -172,7 +181,7 @@ if [ $(words $(ZRELADDR)) -gt 1 -a "$(CONFIG_AUTO_ZRELADDR)" = "" ]; then \
fi
fi


$(obj)/vmlinux: $(obj)/vmlinux.lds $(obj)/$(HEAD) $(obj)/piggy.$(suffix_y).o \
$(obj)/vmlinux: $(obj)/vmlinux.lds $(obj)/$(HEAD) $(obj)/piggy.$(suffix_y).o \
	 	$(addprefix $(obj)/, $(OBJS)) $(lib1funcs) FORCE
		$(addprefix $(obj)/, $(OBJS)) $(lib1funcs) $(ashldi3) FORCE
	@$(check_for_multiple_zreladdr)
	@$(check_for_multiple_zreladdr)
	$(call if_changed,ld)
	$(call if_changed,ld)
	@$(check_for_bad_syms)
	@$(check_for_bad_syms)
Loading