30 Mar, 2012

2 commits

  • Pull "ARM: cleanups of io includes" from Olof Johansson:
    "Rob Herring has done a sweeping change cleaning up all of the
    mach/io.h includes, moving some of the oft-repeated macros to a common
    location and removing a bunch of boiler plate. This is another step
    closer to a common zImage for multiple platforms."

    Fix up various fairly trivial conflicts ( removal vs changes
    around it, tegra localtimer.o is *still* gone, yadda-yadda).

    * tag 'cleanup2' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (29 commits)
    ARM: tegra: Include assembler.h in sleep.S to fix build break
    ARM: pxa: use common IOMEM definition
    ARM: dma-mapping: convert ARCH_HAS_DMA_SET_COHERENT_MASK to kconfig symbol
    ARM: __io abuse cleanup
    ARM: create a common IOMEM definition
    ARM: iop13xx: fix missing declaration of iop13xx_init_early
    ARM: fix ioremap/iounmap for !CONFIG_MMU
    ARM: kill off __mem_pci
    ARM: remove bunch of now unused mach/io.h files
    ARM: make mach/io.h include optional
    ARM: clps711x: remove unneeded include of mach/io.h
    ARM: dove: add explicit include of dove.h to addr-map.c
    ARM: at91: add explicit include of hardware.h to uncompressor
    ARM: ep93xx: clean-up mach/io.h
    ARM: tegra: clean-up mach/io.h
    ARM: orion5x: clean-up mach/io.h
    ARM: davinci: remove unneeded mach/io.h include
    [media] davinci: remove includes of mach/io.h
    ARM: OMAP: Remove remaining includes for mach/io.h
    ARM: msm: clean-up mach/io.h
    ...

    Linus Torvalds
     
  • Pull more ARM updates from Russell King.

    This got a fair number of conflicts with the 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
    ...

    Linus Torvalds
     

29 Mar, 2012

2 commits

  • …m/linux/kernel/git/dhowells/linux-asm_system

    Pull "Disintegrate and delete asm/system.h" from David Howells:
    "Here are a bunch of patches to disintegrate asm/system.h into a set of
    separate bits to relieve the problem of circular inclusion
    dependencies.

    I've built all the working defconfigs from all the arches that I can
    and made sure that they don't break.

    The reason for these patches is that I recently encountered a circular
    dependency problem that came about when I produced some patches to
    optimise get_order() by rewriting it to use ilog2().

    This uses bitops - and on the SH arch asm/bitops.h drags in
    asm-generic/get_order.h by a circuituous route involving asm/system.h.

    The main difficulty seems to be asm/system.h. It holds a number of
    low level bits with no/few dependencies that are commonly used (eg.
    memory barriers) and a number of bits with more dependencies that
    aren't used in many places (eg. switch_to()).

    These patches break asm/system.h up into the following core pieces:

    (1) asm/barrier.h

    Move memory barriers here. This already done for MIPS and Alpha.

    (2) asm/switch_to.h

    Move switch_to() and related stuff here.

    (3) asm/exec.h

    Move arch_align_stack() here. Other process execution related bits
    could perhaps go here from asm/processor.h.

    (4) asm/cmpxchg.h

    Move xchg() and cmpxchg() here as they're full word atomic ops and
    frequently used by atomic_xchg() and atomic_cmpxchg().

    (5) asm/bug.h

    Move die() and related bits.

    (6) asm/auxvec.h

    Move AT_VECTOR_SIZE_ARCH here.

    Other arch headers are created as needed on a per-arch basis."

    Fixed up some conflicts from other header file cleanups and moving code
    around that has happened in the meantime, so David's testing is somewhat
    weakened by that. We'll find out anything that got broken and fix it..

    * tag 'split-asm_system_h-for-linus-20120328' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-asm_system: (38 commits)
    Delete all instances of asm/system.h
    Remove all #inclusions of asm/system.h
    Add #includes needed to permit the removal of asm/system.h
    Move all declarations of free_initmem() to linux/mm.h
    Disintegrate asm/system.h for OpenRISC
    Split arch_align_stack() out from asm-generic/system.h
    Split the switch_to() wrapper out of asm-generic/system.h
    Move the asm-generic/system.h xchg() implementation to asm-generic/cmpxchg.h
    Create asm-generic/barrier.h
    Make asm-generic/cmpxchg.h #include asm-generic/cmpxchg-local.h
    Disintegrate asm/system.h for Xtensa
    Disintegrate asm/system.h for Unicore32 [based on ver #3, changed by gxt]
    Disintegrate asm/system.h for Tile
    Disintegrate asm/system.h for Sparc
    Disintegrate asm/system.h for SH
    Disintegrate asm/system.h for Score
    Disintegrate asm/system.h for S390
    Disintegrate asm/system.h for PowerPC
    Disintegrate asm/system.h for PA-RISC
    Disintegrate asm/system.h for MN10300
    ...

    Linus Torvalds
     
  • Avoid namespace conflicts with drivers over the CP15 definitions by
    moving CP15 related prototypes and definitions to a private header
    file.

    Acked-by: Stephen Warren
    Tested-by: Stephen Warren [Tegra]
    Acked-by: H Hartley Sweeten
    Tested-by: H Hartley Sweeten [EP93xx]
    Acked-by: Nicolas Pitre
    Acked-by: Kukjin Kim
    Signed-off-by: Russell King
    Signed-off-by: David Howells

    Russell King
     

28 Mar, 2012

1 commit

  • Pull "ARM: device tree work" from Arnd Bergmann:
    "Most of these patches convert code from using static platform data to
    describing the hardware in the device tree. This is only the first
    half of the changes for v3.4 because a lot of patches for this topic
    came in the last week before the merge window.

    Signed-off-by: Arnd Bergmann "

    Fix up trivial conflicts in arch/arm/mach-vexpress/{Kconfig,core.h}

    * tag 'dt' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (86 commits)
    Document: devicetree: add OF documents for arch-mmp
    ARM: dts: append DTS file of pxa168
    ARM: mmp: append OF support on pxa168
    ARM: mmp: enable rtc clk in pxa168
    i2c: pxa: add OF support
    serial: pxa: add OF support
    arm/dts: mt_ventoux: very basic support for TeeJet Mt.Ventoux board
    ARM: OMAP2+: Remove extra ifdefs for board-generic
    ARM: OMAP2+: Fix build error when only ARCH_OMAP2/3 or 4 is selected
    ASoC: DT: Add digital microphone binding to PAZ00 board.
    ARM: dt: Add ARM PMU to tegra*.dtsi
    ARM: at91: at91sam9x5cm/dt: add leds support
    ARM: at91: usb_a9g20/dt: add gpio-keys support
    ARM: at91: at91sam9m10g45ek/dt: add gpio-keys support
    ARM: at91: at91sam9m10g45ek/dt: add leds support
    ARM: at91: usb_a9g20/dt: add leds support
    ARM: at91/pio: add new PIO3 features
    ARM: at91: add sam9_smc.o to at91sam9x5 build
    ARM: at91/tc/clocksource: Add 32 bit variant to Timer Counter
    ARM: at91/tc: add device tree support to atmel_tclib
    ...

    Linus Torvalds
     

27 Mar, 2012

1 commit


24 Mar, 2012

2 commits

  • On Versatile Express, the PCI Express buses are broken and unusable, so
    we aren't going to support PCI/ISA IO cycles on this platform. Remove
    the PCI/ISA IO inb et.al. support for this platform.

    Acked-by: Catalin Marinas
    Signed-off-by: Russell King

    Russell King
     
  • Avoid namespace conflicts with drivers over the CP15 definitions by
    moving CP15 related prototypes and definitions to a private header
    file.

    Acked-by: Stephen Warren
    Tested-by: Stephen Warren [Tegra]
    Acked-by: H Hartley Sweeten
    Tested-by: H Hartley Sweeten [EP93xx]
    Acked-by: Nicolas Pitre
    Acked-by: Kukjin Kim
    Signed-off-by: Russell King

    Russell King
     

21 Mar, 2012

1 commit


20 Mar, 2012

1 commit


13 Mar, 2012

1 commit


07 Mar, 2012

1 commit

  • Now that many platforms don't need mach/io.h, remove the unused ones.

    Signed-off-by: Rob Herring
    Acked-by: Shawn Guo
    Acked-by: Linus Walleij
    Acked-by: H Hartley Sweeten
    Acked-by: Jean-Christophe PLAGNIOL-VILLARD
    Acked-by: Jamie Iles
    Acked-by: Pawel Moll
    Acked-by: Nicolas Pitre

    Rob Herring
     

27 Feb, 2012

1 commit

  • Commit fa0ce403 ("ARM: 7162/1: errata: tidy up Kconfig options for PL310
    errata workarounds") introduced a consistent naming scheme for errata
    workarounds, but forgot to update the platforms selecting workarounds
    using the old names.

    This patch updates ux500 and vexpress to select the appropriate PL310
    errata workarounds.

    Signed-off-by: Will Deacon
    Signed-off-by: Russell King

    Will Deacon
     

24 Feb, 2012

7 commits


23 Feb, 2012

2 commits


22 Feb, 2012

1 commit

  • Now that most platforms don't need disable_fiq and arch_ret_to_user
    macros, we can remove the empty macros or empty entry-macro.S files.

    Signed-off-by: Rob Herring
    Acked-by: Jamie Iles
    Acked-by: Nicolas Pitre
    Acked-by: Tony Lindgren
    Acked-by: Linus Walleij
    Acked-by: Ryan Mallon
    Acked-by: Nicolas Ferre
    Acked-by: H Hartley Sweeten
    Acked-by: Shawn Guo

    Rob Herring
     

08 Feb, 2012

1 commit


27 Jan, 2012

1 commit


25 Jan, 2012

2 commits


23 Jan, 2012

1 commit

  • It turns out that the logical CPU mapping is useful even when !CONFIG_SMP
    for manipulation of devices like interrupt and power controllers when
    running a UP kernel on a CPU other than 0. This can happen when kexecing
    a UP image from an SMP kernel.

    In the future, multi-cluster systems running AMP configurations will
    require something similar for mapping cluster IDs, so it makes sense to
    decouple this logic in preparation for this support.

    Acked-by: Yang Bai
    Acked-by: Marc Zyngier
    Reported-by: Joerg Roedel
    Signed-off-by: Will Deacon
    Signed-off-by: Russell King

    Will Deacon
     

21 Jan, 2012

1 commit

  • When this is the only content remaining in mach/system.h then the
    whole file is removed.

    Signed-off-by: Nicolas Pitre
    Acked-by: H Hartley Sweeten
    Acked-and-tested-by: Jamie Iles
    Acked-by: Tony Lindgren
    Acked-by: David Brown
    Acked-by: Stephen Warren
    Acked-by: Linus Walleij

    Nicolas Pitre
     

20 Jan, 2012

1 commit

  • WARNING: vmlinux.o(.text+0x1bc9c): Section mismatch in reference from the function ct_ca9x4_init_cpu_map() to the function .init.text:scu_get_core_count()
    The function ct_ca9x4_init_cpu_map() references
    the function __init scu_get_core_count().

    WARNING: vmlinux.o(.text+0x1bce8): Section mismatch in reference from the function ct_ca9x4_init_cpu_map() to the function .init.text:set_smp_cross_call()
    The function ct_ca9x4_init_cpu_map() references
    the function __init set_smp_cross_call().

    Signed-off-by: Russell King

    Russell King
     

17 Jan, 2012

1 commit


16 Jan, 2012

1 commit


08 Jan, 2012

1 commit

  • * 'driver-core-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (73 commits)
    arm: fix up some samsung merge sysdev conversion problems
    firmware: Fix an oops on reading fw_priv->fw in sysfs loading file
    Drivers:hv: Fix a bug in vmbus_driver_unregister()
    driver core: remove __must_check from device_create_file
    debugfs: add missing #ifdef HAS_IOMEM
    arm: time.h: remove device.h #include
    driver-core: remove sysdev.h usage.
    clockevents: remove sysdev.h
    arm: convert sysdev_class to a regular subsystem
    arm: leds: convert sysdev_class to a regular subsystem
    kobject: remove kset_find_obj_hinted()
    m86k: gpio - convert sysdev_class to a regular subsystem
    mips: txx9_sram - convert sysdev_class to a regular subsystem
    mips: 7segled - convert sysdev_class to a regular subsystem
    sh: dma - convert sysdev_class to a regular subsystem
    sh: intc - convert sysdev_class to a regular subsystem
    power: suspend - convert sysdev_class to a regular subsystem
    power: qe_ic - convert sysdev_class to a regular subsystem
    power: cmm - convert sysdev_class to a regular subsystem
    s390: time - convert sysdev_class to a regular subsystem
    ...

    Fix up conflicts with 'struct sysdev' removal from various platform
    drivers that got changed:
    - arch/arm/mach-exynos/cpu.c
    - arch/arm/mach-exynos/irq-eint.c
    - arch/arm/mach-s3c64xx/common.c
    - arch/arm/mach-s3c64xx/cpu.c
    - arch/arm/mach-s5p64x0/cpu.c
    - arch/arm/mach-s5pv210/common.c
    - arch/arm/plat-samsung/include/plat/cpu.h
    - arch/powerpc/kernel/sysfs.c
    and fix up cpu_is_hotpluggable() as per Greg in include/linux/cpu.h

    Linus Torvalds
     

05 Jan, 2012

3 commits

  • Conflicts:
    arch/arm/mach-exynos/cpu.c

    The changes to arch/arm/mach-exynos/cpu.c were moved to
    mach-exynos/common.c.

    Russell King
     
  • Remove the now empty arch_reset() from all the mach/system.h includes,
    and remove its callsite. Remove arm_machine_restart() as this function
    no longer does anything useful.

    For samsung platforms, remove the include of mach/system-reset.h and
    plat/system-reset.h from their respective mach/system.h headers as these
    just define their arch_reset functions. As a result, the s3c2410 and
    plat-samsung system-reset.h files are no longer referenced, so remove
    these files entirely.

    Acked-by: Nicolas Pitre
    Acked-by: H Hartley Sweeten
    Acked-by: Jamie Iles
    Acked-by: Tony Lindgren
    Acked-by: Linus Walleij
    Signed-off-by: Russell King

    Russell King
     
  • Hook the Versatile Express platform restart code into the new restart
    hook.

    Signed-off-by: Russell King

    Russell King
     

22 Dec, 2011

1 commit

  • The sysdev.h file should not be needed by any in-kernel code, so remove
    the .h file from these random files that seem to still want to include
    it.

    The sysdev code will be going away soon, so this include needs to be
    removed no matter what.

    Cc: Jiandong Zheng
    Cc: Scott Branden
    Cc: Russell King
    Cc: Kukjin Kim
    Cc: David Brown
    Cc: Daniel Walker
    Cc: Bryan Huntsman
    Cc: Ben Dooks
    Cc: Wan ZongShun
    Cc: Haavard Skinnemoen
    Cc: Hans-Christian Egtvedt
    Cc: Guan Xuetao
    Cc: "Venkatesh Pallipadi
    Cc: Thomas Gleixner
    Cc: Ingo Molnar
    Cc: "H. Peter Anvin"
    Cc: Grant Likely
    Cc: Richard Purdie
    Cc: Matthew Garrett
    Signed-off-by: Kay Sievers

    Kay Sievers
     

20 Dec, 2011

1 commit


19 Dec, 2011

2 commits

  • Making SMP depend on (huge list of MACH_ and ARCH_ configs) is
    bothersome to maintain and likely to lead to merge conflicts.

    This patch moves the knowledge of which platforms are SMP-capable
    to the individual machines. To enable this, a new HAVE_SMP config
    option is introduced to allow machines to indicate that they can
    run in a SMP configuration.

    Signed-off-by: Dave Martin
    Acked-by: Linus Walleij
    (for nomadik, ux500)
    Acked-by: Tony Lindgren
    (for omap)
    Acked-by: Kukjin Kim
    (for exynos)
    Acked-by: Sascha Hauer
    (for imx)
    Acked-by: Olof Johansson
    (for tegra)

    Dave Martin
     
  • Making CACHE_L2X0 depend on (huge list of MACH_ and ARCH_ configs)
    is bothersome to maintain and likely to lead to merge conflicts.

    This patch moves the knowledge of which platforms have a L2x0 or
    PL310 cache controller to the individual machines. To enable this,
    a new MIGHT_HAVE_CACHE_L2X0 config option is introduced to allow
    machines to indicate that they may have such a cache controller
    independently of each other.

    Boards/SoCs which cannot reliably operate without the L2 cache
    controller support will need to select CACHE_L2X0 directly from
    their own Kconfigs instead. This applies to some TrustZone-enabled
    boards where Linux runs in the Normal World, for example.

    Signed-off-by: Dave Martin
    Acked-by: Anton Vorontsov
    (for cns3xxx)
    Acked-by: Tony Lindgren
    (for omap)
    Acked-by: Shawn Guo
    (for imx)
    Acked-by: Kukjin Kim
    (for exynos)
    Acked-by: Sascha Hauer
    (for imx)
    Acked-by: Olof Johansson
    (for tegra)

    Dave Martin