From: Russell King Date: Sun, 23 Oct 2011 20:26:46 +0000 (+0100) Subject: Merge branch 'devel-stable' into for-next X-Git-Tag: next-20111025~112^2 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=8e8d2b56d1b0ef3bb363743dae88eacd2107e5c0;p=karo-tx-linux.git Merge branch 'devel-stable' into for-next Conflicts: arch/arm/Kconfig arch/arm/include/asm/localtimer.h arch/arm/kernel/Makefile arch/arm/mm/dma-mapping.c arch/arm/mm/proc-v7.S arch/arm/plat-omap/Kconfig --- 8e8d2b56d1b0ef3bb363743dae88eacd2107e5c0 diff --cc arch/arm/Kconfig index 0143e2e02902,2686959319a0..7f1c1693e4c1 --- 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" @@@ -385,7 -400,7 +404,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. @@@ -674,7 -692,7 +699,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. @@@ -693,7 -711,7 +719,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. @@@ -840,7 -861,7 +870,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 6fd955d34c65,f5e1cec7e35c..c6a18424888e --- 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 + #include struct clock_event_device; diff --cc arch/arm/kernel/Makefile index 68036eece340,7cac26c5f502..16eed6aebfa4 --- 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 239703dbdf4f,673c806cc106..566c54c2a1fe --- 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 ddd86864fb83,85a1bb79f11c..582b874aab0e --- 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/mm/dma-mapping.c index 235eb775fc78,50be842e89fd..e4e7f6cba1ab --- 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 9591c8e9fb8c,6af366ce0165..2c559ac38142 --- 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 5b605a9eb091,95732af7b208..6f4edd3408c2 --- 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"