All of lore.kernel.org
 help / color / mirror / Atom feed
* [GIT PULL 1/4] core ARM kvm implementation for 3.9
@ 2013-02-04 13:55 Will Deacon
  2013-02-04 13:55 ` [GIT PULL 2/4] ARM broadcast timer updates " Will Deacon
                   ` (2 more replies)
  0 siblings, 3 replies; 14+ messages in thread
From: Will Deacon @ 2013-02-04 13:55 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Russell, Arnd, Olof,

Here is the first (and most significant) pull request introducing KVM
support for ARM. I'm sending this later than I would have liked due to
various indirect dependencies on other branches that didn't stabilise
until the end of last week (then I was at FOSDEM over the weekend), but
this branch has been stable since -rc3.

The only direct dependency is on my for-rmk/perf branch, which you have
already pulled.

Cheers,

Will

--->8

The following changes since commit 9931faca02c604c22335f5a935a501bb2ace6e20:

  Linux 3.8-rc3 (2013-01-09 18:59:55 -0800)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/will/linux.git for-rmk/virt/kvm/core

for you to fetch changes up to da141b67d29a05267a9a0d56bd7856b7f3f58d44:

  Merge branch 'for-will/kvm/core' of git://github.com/virtualopensystems/linux-kvm-arm into for-rmk/virt/kvm/core (2013-01-24 10:37:49 +0000)

----------------------------------------------------------------

Christoffer Dall (15):
      ARM: Define CPU part numbers and implementors
      ARM: Use implementor and part defines from cputype.h
      ARM: Add page table and page defines needed by KVM
      ARM: Section based HYP idmap
      KVM: ARM: Initial skeleton to compile KVM support
      KVM: ARM: Hypervisor initialization
      KVM: ARM: Memory virtualization setup
      KVM: ARM: Inject IRQs and FIQs from userspace
      KVM: ARM: World-switch implementation
      KVM: ARM: Emulation framework and CP15 emulation
      KVM: ARM: User space API for getting/setting co-proc registers
      KVM: ARM: Demux CCSIDR in the userspace API
      KVM: ARM: Handle guest faults in KVM
      KVM: ARM: Handle I/O aborts
      KVM: ARM: Add maintainer entry for KVM/ARM

Marc Zyngier (1):
      KVM: ARM: Power State Coordination Interface implementation

Mark Rutland (3):
      ARM: perf: handle armpmu_register failing
      ARM: perf: remove unnecessary checks for idx < 0
      ARM: perf: simplify __hw_perf_event_init err handling

Rusty Russell (1):
      KVM: ARM: VFP userspace interface

Will Deacon (4):
      ARM: perf: remove redundant NULL check on cpu_pmu
      ARM: perf: don't pretend to support counting of L1I writes
      Merge branch 'for-rmk/perf' into for-rmk/virt/kvm/core
      Merge branch 'for-will/kvm/core' of git://github.com/virtualopensystems/linux-kvm-arm into for-rmk/virt/kvm/core

 Documentation/virtual/kvm/api.txt           |   99 ++-
 MAINTAINERS                                 |    9 +
 arch/arm/Kconfig                            |    2 +
 arch/arm/Makefile                           |    1 +
 arch/arm/include/asm/cputype.h              |   33 +
 arch/arm/include/asm/idmap.h                |    1 +
 arch/arm/include/asm/kvm_arm.h              |  214 ++++++
 arch/arm/include/asm/kvm_asm.h              |   82 +++
 arch/arm/include/asm/kvm_coproc.h           |   47 ++
 arch/arm/include/asm/kvm_emulate.h          |   72 ++
 arch/arm/include/asm/kvm_host.h             |  161 +++++
 arch/arm/include/asm/kvm_mmio.h             |   56 ++
 arch/arm/include/asm/kvm_mmu.h              |   50 ++
 arch/arm/include/asm/kvm_psci.h             |   23 +
 arch/arm/include/asm/pgtable-3level-hwdef.h |    5 +
 arch/arm/include/asm/pgtable-3level.h       |   18 +
 arch/arm/include/asm/pgtable.h              |    7 +
 arch/arm/include/uapi/asm/kvm.h             |  164 +++++
 arch/arm/kernel/asm-offsets.c               |   25 +
 arch/arm/kernel/perf_event.c                |   16 +-
 arch/arm/kernel/perf_event_cpu.c            |   51 +-
 arch/arm/kernel/perf_event_v6.c             |    4 +-
 arch/arm/kernel/perf_event_v7.c             |   18 +-
 arch/arm/kernel/perf_event_xscale.c         |    2 +-
 arch/arm/kernel/vmlinux.lds.S               |    6 +-
 arch/arm/kvm/Kconfig                        |   56 ++
 arch/arm/kvm/Makefile                       |   21 +
 arch/arm/kvm/arm.c                          | 1015 ++++++++++++++++++++++++++
 arch/arm/kvm/coproc.c                       | 1046 +++++++++++++++++++++++++++
 arch/arm/kvm/coproc.h                       |  153 ++++
 arch/arm/kvm/coproc_a15.c                   |  162 +++++
 arch/arm/kvm/emulate.c                      |  373 ++++++++++
 arch/arm/kvm/guest.c                        |  222 ++++++
 arch/arm/kvm/init.S                         |  114 +++
 arch/arm/kvm/interrupts.S                   |  478 ++++++++++++
 arch/arm/kvm/interrupts_head.S              |  441 +++++++++++
 arch/arm/kvm/mmio.c                         |  153 ++++
 arch/arm/kvm/mmu.c                          |  787 ++++++++++++++++++++
 arch/arm/kvm/psci.c                         |  108 +++
 arch/arm/kvm/reset.c                        |   74 ++
 arch/arm/kvm/trace.h                        |  235 ++++++
 arch/arm/mm/idmap.c                         |   55 +-
 arch/arm/mm/mmu.c                           |   22 +
 include/uapi/linux/kvm.h                    |    9 +
 44 files changed, 6621 insertions(+), 69 deletions(-)
 create mode 100644 arch/arm/include/asm/kvm_arm.h
 create mode 100644 arch/arm/include/asm/kvm_asm.h
 create mode 100644 arch/arm/include/asm/kvm_coproc.h
 create mode 100644 arch/arm/include/asm/kvm_emulate.h
 create mode 100644 arch/arm/include/asm/kvm_host.h
 create mode 100644 arch/arm/include/asm/kvm_mmio.h
 create mode 100644 arch/arm/include/asm/kvm_mmu.h
 create mode 100644 arch/arm/include/asm/kvm_psci.h
 create mode 100644 arch/arm/include/uapi/asm/kvm.h
 create mode 100644 arch/arm/kvm/Kconfig
 create mode 100644 arch/arm/kvm/Makefile
 create mode 100644 arch/arm/kvm/arm.c
 create mode 100644 arch/arm/kvm/coproc.c
 create mode 100644 arch/arm/kvm/coproc.h
 create mode 100644 arch/arm/kvm/coproc_a15.c
 create mode 100644 arch/arm/kvm/emulate.c
 create mode 100644 arch/arm/kvm/guest.c
 create mode 100644 arch/arm/kvm/init.S
 create mode 100644 arch/arm/kvm/interrupts.S
 create mode 100644 arch/arm/kvm/interrupts_head.S
 create mode 100644 arch/arm/kvm/mmio.c
 create mode 100644 arch/arm/kvm/mmu.c
 create mode 100644 arch/arm/kvm/psci.c
 create mode 100644 arch/arm/kvm/reset.c
 create mode 100644 arch/arm/kvm/trace.h

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [GIT PULL 2/4] ARM broadcast timer updates for 3.9
  2013-02-04 13:55 [GIT PULL 1/4] core ARM kvm implementation for 3.9 Will Deacon
@ 2013-02-04 13:55 ` Will Deacon
  2013-02-04 15:24   ` Russell King - ARM Linux
  2013-02-04 13:55 ` [GIT PULL 3/4] Move arch-timer into drivers/clocksource " Will Deacon
  2013-02-04 13:55 ` [GIT PULL 4/4] mach-virt platform code " Will Deacon
  2 siblings, 1 reply; 14+ messages in thread
From: Will Deacon @ 2013-02-04 13:55 UTC (permalink / raw)
  To: linux-arm-kernel

Hello again,

This is the second part of the kvm-related series and moves ARM over to
the generic timer broadcast implementation, currently queued by tglx in
-tip.

Please note that, due to this dependency, this branch contains mainline
up to ~-rc6, so you may want to keep it on a separate branch to avoid
pulling in a bunch of unrelated changes from -tip.

Thanks,

Will

--->8

The following changes since commit 04c2eee5b9dfcb13f3cd07a5537fb8c785f2751a:

  Merge branch 'x86-efi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip (2013-01-31 17:10:36 +1100)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/will/linux.git for-rmk/broadcast

for you to fetch changes up to 5b91ab0abc957145c3ff6be03eb9a3901797019f:

  Merge branch 'clocks/broadcast-arm' of git://linux-arm.org/linux-mr into for-rmk/broadcast (2013-02-01 10:17:57 +0000)

----------------------------------------------------------------

Mark Rutland (4):
      clockevents: Add generic timer broadcast receiver
      clockevents: Add generic timer broadcast function
      arm: Use generic timer broadcast receiver
      arm: Add generic timer broadcast support

Will Deacon (2):
      Merge branch 'timers/for-arm' of git://git.kernel.org/.../tip/tip into for-rmk/broadcast
      Merge branch 'clocks/broadcast-arm' of git://linux-arm.org/linux-mr into for-rmk/broadcast

 arch/arm/Kconfig             |  1 +
 arch/arm/kernel/smp.c        | 13 ++++---------
 include/linux/clockchips.h   |  9 +++++++++
 kernel/time/Kconfig          |  4 ++++
 kernel/time/tick-broadcast.c | 30 ++++++++++++++++++++++++++++++
 5 files changed, 48 insertions(+), 9 deletions(-)

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [GIT PULL 3/4] Move arch-timer into drivers/clocksource for 3.9
  2013-02-04 13:55 [GIT PULL 1/4] core ARM kvm implementation for 3.9 Will Deacon
  2013-02-04 13:55 ` [GIT PULL 2/4] ARM broadcast timer updates " Will Deacon
@ 2013-02-04 13:55 ` Will Deacon
  2013-02-04 13:55 ` [GIT PULL 4/4] mach-virt platform code " Will Deacon
  2 siblings, 0 replies; 14+ messages in thread
From: Will Deacon @ 2013-02-04 13:55 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Arnd, Olof,

This set of changes moves the arch-timer driver out from arch/arm/ and
into drivers/clocksource and unifies the new driver with the arm64 copy.

This depends on for-rmk/broadcast, which is the second pull request in
this series.

Cheers,

Will

--->8

The following changes since commit 04c2eee5b9dfcb13f3cd07a5537fb8c785f2751a:

  Merge branch 'x86-efi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip (2013-01-31 17:10:36 +1100)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/will/linux.git for-arm-soc/arch-timers

for you to fetch changes up to 9e02e394c7d7fdc2570a73fb7fc6da3c79f6db2a:

  Merge branch 'for-will/arch-timer-unification' of git://linux-arm.org/linux-mr into for-arm-soc/arch-timers (2013-02-01 10:28:36 +0000)

----------------------------------------------------------------

Marc Zyngier (1):
      ARM: arch_timers: switch to physical timers if HYP mode is available

Mark Rutland (17):
      arm: arch_timer: balance device_node refcounting
      arm: arch_timer: remove redundant available check
      arm: arch_timer: use u64/u32 for register data
      arm: arch_timer: standardise counter reading
      arm: arch_timer: split cntfrq accessor
      arm: arch_timer: factor out register accessors
      arm: arch_timer: add isbs to register accessors
      arm: arch_timer: divorce from local_timer api
      arm: arch_timer: add arch_counter_set_user_access
      arm: arch_timer: move core to drivers/clocksource
      arm64: arm_generic: prevent reading stale time
      arm64: move from arm_generic to arm_arch_timer
      Documentation: Add ARMv8 to arch_timer devicetree
      clockevents: Add generic timer broadcast receiver
      clockevents: Add generic timer broadcast function
      arm: Use generic timer broadcast receiver
      arm: Add generic timer broadcast support

Will Deacon (3):
      Merge branch 'timers/for-arm' of git://git.kernel.org/.../tip/tip into for-rmk/broadcast
      Merge branch 'clocks/broadcast-arm' of git://linux-arm.org/linux-mr into for-rmk/broadcast
      Merge branch 'for-will/arch-timer-unification' of git://linux-arm.org/linux-mr into for-arm-soc/arch-timers

 .../devicetree/bindings/arm/arch_timer.txt         |   7 +-
 arch/arm/Kconfig                                   |   4 +-
 arch/arm/include/asm/arch_timer.h                  | 109 ++++-
 arch/arm/kernel/arch_timer.c                       | 504 +--------------------
 arch/arm/kernel/smp.c                              |  13 +-
 arch/arm/mach-omap2/Kconfig                        |   2 +-
 arch/arm64/Kconfig                                 |   1 +
 arch/arm64/include/asm/arch_timer.h                | 133 ++++++
 arch/arm64/include/asm/arm_generic.h               | 100 ----
 arch/arm64/kernel/time.c                           |  29 +-
 drivers/clocksource/Kconfig                        |   6 +-
 drivers/clocksource/Makefile                       |   2 +-
 drivers/clocksource/arm_arch_timer.c               | 391 ++++++++++++++++
 drivers/clocksource/arm_generic.c                  | 232 ----------
 include/clocksource/arm_arch_timer.h               |  63 +++
 include/clocksource/arm_generic.h                  |  21 -
 include/linux/clockchips.h                         |   9 +
 kernel/time/Kconfig                                |   4 +
 kernel/time/tick-broadcast.c                       |  30 ++
 19 files changed, 796 insertions(+), 864 deletions(-)
 create mode 100644 arch/arm64/include/asm/arch_timer.h
 delete mode 100644 arch/arm64/include/asm/arm_generic.h
 create mode 100644 drivers/clocksource/arm_arch_timer.c
 delete mode 100644 drivers/clocksource/arm_generic.c
 create mode 100644 include/clocksource/arm_arch_timer.h
 delete mode 100644 include/clocksource/arm_generic.h

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [GIT PULL 4/4] mach-virt platform code for 3.9
  2013-02-04 13:55 [GIT PULL 1/4] core ARM kvm implementation for 3.9 Will Deacon
  2013-02-04 13:55 ` [GIT PULL 2/4] ARM broadcast timer updates " Will Deacon
  2013-02-04 13:55 ` [GIT PULL 3/4] Move arch-timer into drivers/clocksource " Will Deacon
@ 2013-02-04 13:55 ` Will Deacon
  2013-02-04 18:07   ` Marc Zyngier
                     ` (2 more replies)
  2 siblings, 3 replies; 14+ messages in thread
From: Will Deacon @ 2013-02-04 13:55 UTC (permalink / raw)
  To: linux-arm-kernel

NOTE: I'm not suggesting you pull this one as it stands -- see below!

This is the last batch from me (Marc is dealing with vgic and virtual
timers) and introduces support for mach-virt. This depends on:

	- for-arm-soc/arch-timers (third pull request in this series)
	- for-rmk/virt/psci (already pulled)
	- irqchip/gic-vic-move (an arm-soc branch)

As a result, the diffstat is atrocious so it would be better if you
could create a branch merging the above dependendies, which I could
rebase onto (there's actually only two patches here).

Cheers,

Will

--->8

The following changes since commit 04c2eee5b9dfcb13f3cd07a5537fb8c785f2751a:

  Merge branch 'x86-efi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip (2013-01-31 17:10:36 +1100)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/will/linux.git for-arm-soc/virt/mach

for you to fetch changes up to 4de3abb348d7a5bd6ddbfc26c34e0ee549874249:

  ARM: mach-virt: add SMP support using PSCI (2013-02-02 15:05:33 +0000)

----------------------------------------------------------------
Marc Zyngier (2):
      ARM: arch_timers: switch to physical timers if HYP mode is available
      ARM: Dummy Virtual Machine platform support

Mark Rutland (17):
      arm: arch_timer: balance device_node refcounting
      arm: arch_timer: remove redundant available check
      arm: arch_timer: use u64/u32 for register data
      arm: arch_timer: standardise counter reading
      arm: arch_timer: split cntfrq accessor
      arm: arch_timer: factor out register accessors
      arm: arch_timer: add isbs to register accessors
      arm: arch_timer: divorce from local_timer api
      arm: arch_timer: add arch_counter_set_user_access
      arm: arch_timer: move core to drivers/clocksource
      arm64: arm_generic: prevent reading stale time
      arm64: move from arm_generic to arm_arch_timer
      Documentation: Add ARMv8 to arch_timer devicetree
      clockevents: Add generic timer broadcast receiver
      clockevents: Add generic timer broadcast function
      arm: Use generic timer broadcast receiver
      arm: Add generic timer broadcast support

Rob Herring (16):
      ARM: GIC: remove assembly ifdefs from gic.h
      ARM: GIC: remove direct use of gic_raise_softirq
      ARM: GIC: set handle_arch_irq in GIC initialization
      ARM: remove mach .handle_irq for GIC users
      irqchip: Move ARM GIC to drivers/irqchip
      ARM: use common irqchip_init for GIC init
      irqchip: Move ARM gic.h to include/linux/irqchip/arm-gic.h
      ARM: VIC: shrink down vic.h
      ARM: VIC: set handle_arch_irq in VIC initialization
      ARM: remove mach .handle_irq for VIC users
      ARM: remove unneeded vic.h includes
      ARM: samsung: remove unused tick.h
      irqchip: Move ARM VIC to drivers/irqchip
      ARM: spear: use common irqchip_init function
      ARM: picoxcell: use common irqchip_init function
      irqchip: Move ARM vic.h to include/linux/irqchip/arm-vic.h

Srinidhi Kasagar (1):
      ARM: mach-ux500: use SGI0 to wake up the other core

Thomas Petazzoni (3):
      irqchip: add to the directories part of the IRQ subsystem in MAINTAINERS
      irqchip: add basic infrastructure
      arm: add set_handle_irq() to register the parent IRQ controller handler function

Will Deacon (10):
      ARM: opcodes: add missing include of linux/linkage.h
      ARM: opcodes: add opcodes definitions for ARM security extensions
      ARM: psci: add devicetree binding for describing PSCI firmware
      ARM: psci: add support for PSCI invocations from the kernel
      Merge branch 'timers/for-arm' of git://git.kernel.org/.../tip/tip into for-rmk/broadcast
      Merge branch 'clocks/broadcast-arm' of git://linux-arm.org/linux-mr into for-rmk/broadcast
      Merge branch 'for-will/arch-timer-unification' of git://linux-arm.org/linux-mr into for-arm-soc/arch-timers
      Merge branch 'for-rmk/virt/psci' into for-arm-soc/virt/mach
      Merge branch 'irqchip/gic-vic-move' of git://git.kernel.org/.../arm/arm-soc into for-arm-soc/virt/mach
      ARM: mach-virt: add SMP support using PSCI

 .../devicetree/bindings/arm/arch_timer.txt         |   7 +-
 Documentation/devicetree/bindings/arm/psci.txt     |  55 +++
 MAINTAINERS                                        |   1 +
 arch/arm/Kconfig                                   |  16 +-
 arch/arm/Makefile                                  |   1 +
 arch/arm/common/Kconfig                            |  23 -
 arch/arm/common/Makefile                           |   2 -
 arch/arm/include/asm/arch_timer.h                  | 109 ++++-
 arch/arm/include/asm/mach/irq.h                    |   1 +
 .../arm/include/asm/opcodes-sec.h                  |  19 +-
 arch/arm/include/asm/opcodes.h                     |   1 +
 arch/arm/include/asm/psci.h                        |  36 ++
 arch/arm/kernel/Makefile                           |   1 +
 arch/arm/kernel/arch_timer.c                       | 504 +--------------------
 arch/arm/kernel/irq.c                              |  10 +
 arch/arm/kernel/psci.c                             | 211 +++++++++
 arch/arm/kernel/smp.c                              |  16 +-
 arch/arm/kernel/smp_twd.c                          |   1 -
 arch/arm/mach-bcm/board_bcm.c                      |  17 +-
 arch/arm/mach-cns3xxx/cns3420vb.c                  |   2 -
 arch/arm/mach-cns3xxx/core.c                       |   2 +-
 arch/arm/mach-ep93xx/adssphere.c                   |   2 -
 arch/arm/mach-ep93xx/core.c                        |   3 +-
 arch/arm/mach-ep93xx/edb93xx.c                     |   9 -
 arch/arm/mach-ep93xx/gesbc9312.c                   |   2 -
 arch/arm/mach-ep93xx/micro9.c                      |   5 -
 arch/arm/mach-ep93xx/simone.c                      |   2 -
 arch/arm/mach-ep93xx/snappercl15.c                 |   2 -
 arch/arm/mach-ep93xx/ts72xx.c                      |   2 -
 arch/arm/mach-ep93xx/vision_ep9307.c               |   2 -
 arch/arm/mach-exynos/common.c                      |  10 +-
 arch/arm/mach-exynos/include/mach/regs-irq.h       |   2 +-
 arch/arm/mach-exynos/mach-armlex4210.c             |   2 -
 arch/arm/mach-exynos/mach-exynos4-dt.c             |   2 -
 arch/arm/mach-exynos/mach-exynos5-dt.c             |   2 -
 arch/arm/mach-exynos/mach-nuri.c                   |   2 -
 arch/arm/mach-exynos/mach-origen.c                 |   2 -
 arch/arm/mach-exynos/mach-smdk4x12.c               |   3 -
 arch/arm/mach-exynos/mach-smdkv310.c               |   3 -
 arch/arm/mach-exynos/mach-universal_c210.c         |   2 -
 arch/arm/mach-exynos/mct.c                         |   1 -
 arch/arm/mach-exynos/platsmp.c                     |   6 +-
 arch/arm/mach-highbank/highbank.c                  |  11 +-
 arch/arm/mach-highbank/platsmp.c                   |   6 +-
 arch/arm/mach-imx/common.h                         |   1 -
 arch/arm/mach-imx/gpc.c                            |   2 +-
 arch/arm/mach-imx/mach-imx6q.c                     |  10 +-
 arch/arm/mach-imx/platsmp.c                        |   4 +-
 arch/arm/mach-msm/board-dt-8660.c                  |  16 +-
 arch/arm/mach-msm/board-dt-8960.c                  |  16 +-
 arch/arm/mach-msm/platsmp.c                        |   6 +-
 arch/arm/mach-msm/timer.c                          |   1 -
 arch/arm/mach-netx/generic.c                       |   2 +-
 arch/arm/mach-netx/nxdb500.c                       |   2 -
 arch/arm/mach-netx/nxdkn.c                         |   2 -
 arch/arm/mach-netx/nxeb500hmi.c                    |   2 -
 arch/arm/mach-nomadik/board-nhk8815.c              |   2 -
 arch/arm/mach-nomadik/cpu-8815.c                   |   2 +-
 arch/arm/mach-omap2/Kconfig                        |   2 +-
 arch/arm/mach-omap2/board-4430sdp.c                |   3 +-
 arch/arm/mach-omap2/board-generic.c                |   3 -
 arch/arm/mach-omap2/board-omap4panda.c             |   3 +-
 arch/arm/mach-omap2/omap-smp.c                     |   6 +-
 arch/arm/mach-omap2/omap-wakeupgen.c               |   3 +-
 arch/arm/mach-omap2/omap4-common.c                 |  11 +-
 arch/arm/mach-picoxcell/common.c                   |  15 +-
 arch/arm/mach-realview/core.c                      |   1 -
 arch/arm/mach-realview/platsmp.c                   |   3 -
 arch/arm/mach-realview/realview_eb.c               |   3 +-
 arch/arm/mach-realview/realview_pb1176.c           |   3 +-
 arch/arm/mach-realview/realview_pb11mp.c           |   3 +-
 arch/arm/mach-realview/realview_pba8.c             |   3 +-
 arch/arm/mach-realview/realview_pbx.c              |   3 +-
 arch/arm/mach-s3c64xx/common.c                     |   2 +-
 arch/arm/mach-s3c64xx/include/mach/regs-irq.h      |   1 -
 arch/arm/mach-s3c64xx/include/mach/tick.h          |   2 +
 arch/arm/mach-s3c64xx/mach-anw6410.c               |   2 -
 arch/arm/mach-s3c64xx/mach-crag6410.c              |   2 -
 arch/arm/mach-s3c64xx/mach-hmt.c                   |   2 -
 arch/arm/mach-s3c64xx/mach-mini6410.c              |   2 -
 arch/arm/mach-s3c64xx/mach-ncp.c                   |   2 -
 arch/arm/mach-s3c64xx/mach-real6410.c              |   2 -
 arch/arm/mach-s3c64xx/mach-smartq5.c               |   2 -
 arch/arm/mach-s3c64xx/mach-smartq7.c               |   2 -
 arch/arm/mach-s3c64xx/mach-smdk6400.c              |   2 -
 arch/arm/mach-s3c64xx/mach-smdk6410.c              |   2 -
 arch/arm/mach-s5p64x0/include/mach/regs-irq.h      |   1 -
 arch/arm/mach-s5p64x0/include/mach/tick.h          |  29 --
 arch/arm/mach-s5p64x0/mach-smdk6440.c              |   2 -
 arch/arm/mach-s5p64x0/mach-smdk6450.c              |   2 -
 arch/arm/mach-s5pc100/include/mach/regs-irq.h      |   1 -
 arch/arm/mach-s5pc100/include/mach/tick.h          |   2 +
 arch/arm/mach-s5pc100/mach-smdkc100.c              |   2 -
 arch/arm/mach-s5pv210/include/mach/regs-irq.h      |   1 -
 arch/arm/mach-s5pv210/include/mach/tick.h          |  26 --
 arch/arm/mach-s5pv210/mach-aquila.c                |   2 -
 arch/arm/mach-s5pv210/mach-goni.c                  |   2 -
 arch/arm/mach-s5pv210/mach-smdkc110.c              |   2 -
 arch/arm/mach-s5pv210/mach-smdkv210.c              |   2 -
 arch/arm/mach-s5pv210/mach-torbreck.c              |   2 -
 arch/arm/mach-shmobile/board-ag5evm.c              |   3 +-
 arch/arm/mach-shmobile/board-kota2.c               |   3 +-
 arch/arm/mach-shmobile/board-kzm9d.c               |   2 -
 arch/arm/mach-shmobile/board-kzm9g.c               |   3 +-
 arch/arm/mach-shmobile/board-marzen.c              |   2 -
 arch/arm/mach-shmobile/intc-r8a7779.c              |   2 +-
 arch/arm/mach-shmobile/intc-sh73a0.c               |   2 +-
 arch/arm/mach-shmobile/platsmp.c                   |   3 -
 arch/arm/mach-shmobile/setup-emev2.c               |  17 +-
 arch/arm/mach-shmobile/smp-emev2.c                 |   4 +-
 arch/arm/mach-shmobile/smp-r8a7779.c               |   2 +-
 arch/arm/mach-shmobile/smp-sh73a0.c                |   2 +-
 arch/arm/mach-socfpga/platsmp.c                    |   4 +-
 arch/arm/mach-socfpga/socfpga.c                    |  14 +-
 arch/arm/mach-spear13xx/include/mach/generic.h     |   1 -
 arch/arm/mach-spear13xx/platsmp.c                  |   4 +-
 arch/arm/mach-spear13xx/spear1310.c                |   5 +-
 arch/arm/mach-spear13xx/spear1340.c                |   5 +-
 arch/arm/mach-spear13xx/spear13xx.c                |  13 +-
 arch/arm/mach-spear3xx/include/mach/generic.h      |   1 -
 arch/arm/mach-spear3xx/spear300.c                  |   5 +-
 arch/arm/mach-spear3xx/spear310.c                  |   5 +-
 arch/arm/mach-spear3xx/spear320.c                  |   5 +-
 arch/arm/mach-spear3xx/spear3xx.c                  |  16 -
 arch/arm/mach-spear6xx/spear6xx.c                  |  16 +-
 arch/arm/mach-sunxi/sunxi.c                        |   2 -
 arch/arm/mach-tegra/board-dt-tegra20.c             |   3 -
 arch/arm/mach-tegra/board-dt-tegra30.c             |   2 -
 arch/arm/mach-tegra/common.c                       |  10 +-
 arch/arm/mach-tegra/irq.c                          |   3 +-
 arch/arm/mach-tegra/platsmp.c                      |   4 +-
 arch/arm/mach-u300/core.c                          |   3 +-
 arch/arm/mach-ux500/board-mop500.c                 |   5 -
 arch/arm/mach-ux500/cpu-db8500.c                   |   2 -
 arch/arm/mach-ux500/cpu.c                          |  10 +-
 arch/arm/mach-ux500/platsmp.c                      |   6 +-
 arch/arm/mach-versatile/core.c                     |   2 +-
 arch/arm/mach-versatile/versatile_ab.c             |   2 -
 arch/arm/mach-versatile/versatile_dt.c             |   2 -
 arch/arm/mach-versatile/versatile_pb.c             |   2 -
 arch/arm/mach-vexpress/ct-ca9x4.c                  |   4 +-
 arch/arm/mach-vexpress/platsmp.c                   |   3 -
 arch/arm/mach-vexpress/v2m.c                       |  16 +-
 arch/arm/mach-virt/Kconfig                         |  10 +
 arch/arm/mach-virt/Makefile                        |   6 +
 arch/arm/mach-virt/platsmp.c                       |  58 +++
 arch/arm/mach-virt/virt.c                          |  58 +++
 arch/arm/mach-zynq/common.c                        |  17 +-
 arch/arm/plat-samsung/s5p-irq-eint.c               |   3 +-
 arch/arm/plat-samsung/s5p-irq.c                    |   3 +-
 arch/arm/plat-versatile/platsmp.c                  |   4 +-
 arch/arm64/Kconfig                                 |   1 +
 arch/arm64/include/asm/arch_timer.h                | 133 ++++++
 arch/arm64/include/asm/arm_generic.h               | 100 ----
 arch/arm64/kernel/time.c                           |  29 +-
 drivers/clocksource/Kconfig                        |   6 +-
 drivers/clocksource/Makefile                       |   2 +-
 drivers/clocksource/arm_arch_timer.c               | 391 ++++++++++++++++
 drivers/clocksource/arm_generic.c                  | 232 ----------
 drivers/irqchip/Kconfig                            |  27 ++
 drivers/irqchip/Makefile                           |   6 +-
 arch/arm/common/gic.c => drivers/irqchip/irq-gic.c |  59 ++-
 arch/arm/common/vic.c => drivers/irqchip/irq-vic.c |  95 ++--
 drivers/irqchip/irqchip.c                          |  30 ++
 drivers/irqchip/irqchip.h                          |  29 ++
 drivers/irqchip/spear-shirq.c                      |   5 +
 drivers/mfd/db8500-prcmu.c                         |   2 +-
 include/asm-generic/vmlinux.lds.h                  |  12 +-
 include/clocksource/arm_arch_timer.h               |  63 +++
 include/linux/clockchips.h                         |   9 +
 include/linux/irqchip.h                            |  16 +
 .../gic.h => include/linux/irqchip/arm-gic.h       |  15 +-
 .../vic.h => include/linux/irqchip/arm-vic.h       |  25 +-
 kernel/time/Kconfig                                |   4 +
 kernel/time/tick-broadcast.c                       |  30 ++
 175 files changed, 1594 insertions(+), 1458 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/arm/psci.txt
 rename include/clocksource/arm_generic.h => arch/arm/include/asm/opcodes-sec.h (60%)
 create mode 100644 arch/arm/include/asm/psci.h
 create mode 100644 arch/arm/kernel/psci.c
 delete mode 100644 arch/arm/mach-s5p64x0/include/mach/tick.h
 delete mode 100644 arch/arm/mach-s5pv210/include/mach/tick.h
 create mode 100644 arch/arm/mach-virt/Kconfig
 create mode 100644 arch/arm/mach-virt/Makefile
 create mode 100644 arch/arm/mach-virt/platsmp.c
 create mode 100644 arch/arm/mach-virt/virt.c
 create mode 100644 arch/arm64/include/asm/arch_timer.h
 delete mode 100644 arch/arm64/include/asm/arm_generic.h
 create mode 100644 drivers/clocksource/arm_arch_timer.c
 delete mode 100644 drivers/clocksource/arm_generic.c
 rename arch/arm/common/gic.c => drivers/irqchip/irq-gic.c (97%)
 rename arch/arm/common/vic.c => drivers/irqchip/irq-vic.c (92%)
 create mode 100644 drivers/irqchip/irqchip.c
 create mode 100644 drivers/irqchip/irqchip.h
 create mode 100644 include/clocksource/arm_arch_timer.h
 create mode 100644 include/linux/irqchip.h
 rename arch/arm/include/asm/hardware/gic.h => include/linux/irqchip/arm-gic.h (77%)
 rename arch/arm/include/asm/hardware/vic.h => include/linux/irqchip/arm-vic.h (63%)

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [GIT PULL 2/4] ARM broadcast timer updates for 3.9
  2013-02-04 13:55 ` [GIT PULL 2/4] ARM broadcast timer updates " Will Deacon
@ 2013-02-04 15:24   ` Russell King - ARM Linux
  2013-02-05 22:37     ` Olof Johansson
  0 siblings, 1 reply; 14+ messages in thread
From: Russell King - ARM Linux @ 2013-02-04 15:24 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Feb 04, 2013 at 01:55:29PM +0000, Will Deacon wrote:
> Hello again,
> 
> This is the second part of the kvm-related series and moves ARM over to
> the generic timer broadcast implementation, currently queued by tglx in
> -tip.
> 
> Please note that, due to this dependency, this branch contains mainline
> up to ~-rc6, so you may want to keep it on a separate branch to avoid
> pulling in a bunch of unrelated changes from -tip.

Both 1 and 2 pulled and merged.  I'll wait 24 hours before pushing this out
so that the nightly build can have a go at it before the new devel-stable
branch gets published.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [GIT PULL 4/4] mach-virt platform code for 3.9
  2013-02-04 13:55 ` [GIT PULL 4/4] mach-virt platform code " Will Deacon
@ 2013-02-04 18:07   ` Marc Zyngier
  2013-02-09 12:37     ` Marc Zyngier
  2013-02-06 22:21   ` Rob Herring
  2013-02-11 17:27   ` Olof Johansson
  2 siblings, 1 reply; 14+ messages in thread
From: Marc Zyngier @ 2013-02-04 18:07 UTC (permalink / raw)
  To: linux-arm-kernel

On 04/02/13 13:55, Will Deacon wrote:
> NOTE: I'm not suggesting you pull this one as it stands -- see below!
> 
> This is the last batch from me (Marc is dealing with vgic and virtual
> timers) and introduces support for mach-virt. This depends on:
> 
>         - for-arm-soc/arch-timers (third pull request in this series)
>         - for-rmk/virt/psci (already pulled)
>         - irqchip/gic-vic-move (an arm-soc branch)
> 
> As a result, the diffstat is atrocious so it would be better if you
> could create a branch merging the above dependendies, which I could
> rebase onto (there's actually only two patches here).

The remaining of the KVM/ARM code (vgic and timer) has exactly the same
problem, plus an additional dependency on the actual kvm/core branch
that Russell just pulled.

I can either send you two pull requests that will basically look like
this one (actually, a lot worse), or you could create a stable branch
containing:

	- for-rmk/virt/kvm/core (first pull request in the series)
	- for-arm-soc/arch-timers (third pull request in the series)
	- irqchip/gic-vic-move (already in arm-soc)

You could either create two stable branches (one for mach-virt and one
for kvm-arm/{vgic,timer}), or a single one containing all the prerequisites.

What do you think?

Thanks,

	M.
-- 
Jazz is not dead. It just smells funny...

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [GIT PULL 2/4] ARM broadcast timer updates for 3.9
  2013-02-04 15:24   ` Russell King - ARM Linux
@ 2013-02-05 22:37     ` Olof Johansson
  2013-02-07 12:15       ` Will Deacon
  0 siblings, 1 reply; 14+ messages in thread
From: Olof Johansson @ 2013-02-05 22:37 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Feb 04, 2013 at 03:24:26PM +0000, Russell King - ARM Linux wrote:
> On Mon, Feb 04, 2013 at 01:55:29PM +0000, Will Deacon wrote:
> > Hello again,
> > 
> > This is the second part of the kvm-related series and moves ARM over to
> > the generic timer broadcast implementation, currently queued by tglx in
> > -tip.
> > 
> > Please note that, due to this dependency, this branch contains mainline
> > up to ~-rc6, so you may want to keep it on a separate branch to avoid
> > pulling in a bunch of unrelated changes from -tip.
> 
> Both 1 and 2 pulled and merged.  I'll wait 24 hours before pushing this out
> so that the nightly build can have a go at it before the new devel-stable
> branch gets published.

Sounds good. I'll deal with 3 and 4 once you're happy with 1/2 and
they're out, since we need the same as base.


-Olof

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [GIT PULL 4/4] mach-virt platform code for 3.9
  2013-02-04 13:55 ` [GIT PULL 4/4] mach-virt platform code " Will Deacon
  2013-02-04 18:07   ` Marc Zyngier
@ 2013-02-06 22:21   ` Rob Herring
  2013-02-07 10:02     ` Will Deacon
  2013-02-11 17:27   ` Olof Johansson
  2 siblings, 1 reply; 14+ messages in thread
From: Rob Herring @ 2013-02-06 22:21 UTC (permalink / raw)
  To: linux-arm-kernel

On 02/04/2013 07:55 AM, Will Deacon wrote:
> NOTE: I'm not suggesting you pull this one as it stands -- see below!
> 
> This is the last batch from me (Marc is dealing with vgic and virtual
> timers) and introduces support for mach-virt. This depends on:
> 
> 	- for-arm-soc/arch-timers (third pull request in this series)
> 	- for-rmk/virt/psci (already pulled)
> 	- irqchip/gic-vic-move (an arm-soc branch)
> 
> As a result, the diffstat is atrocious so it would be better if you
> could create a branch merging the above dependendies, which I could
> rebase onto (there's actually only two patches here).

It would be good to see this based on Arnd's patch to make some of the
mach function ptrs optional and "xen,xenvm" moved from VExpress to this.

This will also break with the sys_timer removal, so yet another dependency.

Rob

> 
> Cheers,
> 
> Will
> 
> --->8
> 
> The following changes since commit 04c2eee5b9dfcb13f3cd07a5537fb8c785f2751a:
> 
>   Merge branch 'x86-efi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip (2013-01-31 17:10:36 +1100)
> 
> are available in the git repository at:
> 
>   git://git.kernel.org/pub/scm/linux/kernel/git/will/linux.git for-arm-soc/virt/mach
> 
> for you to fetch changes up to 4de3abb348d7a5bd6ddbfc26c34e0ee549874249:
> 
>   ARM: mach-virt: add SMP support using PSCI (2013-02-02 15:05:33 +0000)
> 
> ----------------------------------------------------------------
> Marc Zyngier (2):
>       ARM: arch_timers: switch to physical timers if HYP mode is available
>       ARM: Dummy Virtual Machine platform support
> 
> Mark Rutland (17):
>       arm: arch_timer: balance device_node refcounting
>       arm: arch_timer: remove redundant available check
>       arm: arch_timer: use u64/u32 for register data
>       arm: arch_timer: standardise counter reading
>       arm: arch_timer: split cntfrq accessor
>       arm: arch_timer: factor out register accessors
>       arm: arch_timer: add isbs to register accessors
>       arm: arch_timer: divorce from local_timer api
>       arm: arch_timer: add arch_counter_set_user_access
>       arm: arch_timer: move core to drivers/clocksource
>       arm64: arm_generic: prevent reading stale time
>       arm64: move from arm_generic to arm_arch_timer
>       Documentation: Add ARMv8 to arch_timer devicetree
>       clockevents: Add generic timer broadcast receiver
>       clockevents: Add generic timer broadcast function
>       arm: Use generic timer broadcast receiver
>       arm: Add generic timer broadcast support
> 
> Rob Herring (16):
>       ARM: GIC: remove assembly ifdefs from gic.h
>       ARM: GIC: remove direct use of gic_raise_softirq
>       ARM: GIC: set handle_arch_irq in GIC initialization
>       ARM: remove mach .handle_irq for GIC users
>       irqchip: Move ARM GIC to drivers/irqchip
>       ARM: use common irqchip_init for GIC init
>       irqchip: Move ARM gic.h to include/linux/irqchip/arm-gic.h
>       ARM: VIC: shrink down vic.h
>       ARM: VIC: set handle_arch_irq in VIC initialization
>       ARM: remove mach .handle_irq for VIC users
>       ARM: remove unneeded vic.h includes
>       ARM: samsung: remove unused tick.h
>       irqchip: Move ARM VIC to drivers/irqchip
>       ARM: spear: use common irqchip_init function
>       ARM: picoxcell: use common irqchip_init function
>       irqchip: Move ARM vic.h to include/linux/irqchip/arm-vic.h
> 
> Srinidhi Kasagar (1):
>       ARM: mach-ux500: use SGI0 to wake up the other core
> 
> Thomas Petazzoni (3):
>       irqchip: add to the directories part of the IRQ subsystem in MAINTAINERS
>       irqchip: add basic infrastructure
>       arm: add set_handle_irq() to register the parent IRQ controller handler function
> 
> Will Deacon (10):
>       ARM: opcodes: add missing include of linux/linkage.h
>       ARM: opcodes: add opcodes definitions for ARM security extensions
>       ARM: psci: add devicetree binding for describing PSCI firmware
>       ARM: psci: add support for PSCI invocations from the kernel
>       Merge branch 'timers/for-arm' of git://git.kernel.org/.../tip/tip into for-rmk/broadcast
>       Merge branch 'clocks/broadcast-arm' of git://linux-arm.org/linux-mr into for-rmk/broadcast
>       Merge branch 'for-will/arch-timer-unification' of git://linux-arm.org/linux-mr into for-arm-soc/arch-timers
>       Merge branch 'for-rmk/virt/psci' into for-arm-soc/virt/mach
>       Merge branch 'irqchip/gic-vic-move' of git://git.kernel.org/.../arm/arm-soc into for-arm-soc/virt/mach
>       ARM: mach-virt: add SMP support using PSCI
> 
>  .../devicetree/bindings/arm/arch_timer.txt         |   7 +-
>  Documentation/devicetree/bindings/arm/psci.txt     |  55 +++
>  MAINTAINERS                                        |   1 +
>  arch/arm/Kconfig                                   |  16 +-
>  arch/arm/Makefile                                  |   1 +
>  arch/arm/common/Kconfig                            |  23 -
>  arch/arm/common/Makefile                           |   2 -
>  arch/arm/include/asm/arch_timer.h                  | 109 ++++-
>  arch/arm/include/asm/mach/irq.h                    |   1 +
>  .../arm/include/asm/opcodes-sec.h                  |  19 +-
>  arch/arm/include/asm/opcodes.h                     |   1 +
>  arch/arm/include/asm/psci.h                        |  36 ++
>  arch/arm/kernel/Makefile                           |   1 +
>  arch/arm/kernel/arch_timer.c                       | 504 +--------------------
>  arch/arm/kernel/irq.c                              |  10 +
>  arch/arm/kernel/psci.c                             | 211 +++++++++
>  arch/arm/kernel/smp.c                              |  16 +-
>  arch/arm/kernel/smp_twd.c                          |   1 -
>  arch/arm/mach-bcm/board_bcm.c                      |  17 +-
>  arch/arm/mach-cns3xxx/cns3420vb.c                  |   2 -
>  arch/arm/mach-cns3xxx/core.c                       |   2 +-
>  arch/arm/mach-ep93xx/adssphere.c                   |   2 -
>  arch/arm/mach-ep93xx/core.c                        |   3 +-
>  arch/arm/mach-ep93xx/edb93xx.c                     |   9 -
>  arch/arm/mach-ep93xx/gesbc9312.c                   |   2 -
>  arch/arm/mach-ep93xx/micro9.c                      |   5 -
>  arch/arm/mach-ep93xx/simone.c                      |   2 -
>  arch/arm/mach-ep93xx/snappercl15.c                 |   2 -
>  arch/arm/mach-ep93xx/ts72xx.c                      |   2 -
>  arch/arm/mach-ep93xx/vision_ep9307.c               |   2 -
>  arch/arm/mach-exynos/common.c                      |  10 +-
>  arch/arm/mach-exynos/include/mach/regs-irq.h       |   2 +-
>  arch/arm/mach-exynos/mach-armlex4210.c             |   2 -
>  arch/arm/mach-exynos/mach-exynos4-dt.c             |   2 -
>  arch/arm/mach-exynos/mach-exynos5-dt.c             |   2 -
>  arch/arm/mach-exynos/mach-nuri.c                   |   2 -
>  arch/arm/mach-exynos/mach-origen.c                 |   2 -
>  arch/arm/mach-exynos/mach-smdk4x12.c               |   3 -
>  arch/arm/mach-exynos/mach-smdkv310.c               |   3 -
>  arch/arm/mach-exynos/mach-universal_c210.c         |   2 -
>  arch/arm/mach-exynos/mct.c                         |   1 -
>  arch/arm/mach-exynos/platsmp.c                     |   6 +-
>  arch/arm/mach-highbank/highbank.c                  |  11 +-
>  arch/arm/mach-highbank/platsmp.c                   |   6 +-
>  arch/arm/mach-imx/common.h                         |   1 -
>  arch/arm/mach-imx/gpc.c                            |   2 +-
>  arch/arm/mach-imx/mach-imx6q.c                     |  10 +-
>  arch/arm/mach-imx/platsmp.c                        |   4 +-
>  arch/arm/mach-msm/board-dt-8660.c                  |  16 +-
>  arch/arm/mach-msm/board-dt-8960.c                  |  16 +-
>  arch/arm/mach-msm/platsmp.c                        |   6 +-
>  arch/arm/mach-msm/timer.c                          |   1 -
>  arch/arm/mach-netx/generic.c                       |   2 +-
>  arch/arm/mach-netx/nxdb500.c                       |   2 -
>  arch/arm/mach-netx/nxdkn.c                         |   2 -
>  arch/arm/mach-netx/nxeb500hmi.c                    |   2 -
>  arch/arm/mach-nomadik/board-nhk8815.c              |   2 -
>  arch/arm/mach-nomadik/cpu-8815.c                   |   2 +-
>  arch/arm/mach-omap2/Kconfig                        |   2 +-
>  arch/arm/mach-omap2/board-4430sdp.c                |   3 +-
>  arch/arm/mach-omap2/board-generic.c                |   3 -
>  arch/arm/mach-omap2/board-omap4panda.c             |   3 +-
>  arch/arm/mach-omap2/omap-smp.c                     |   6 +-
>  arch/arm/mach-omap2/omap-wakeupgen.c               |   3 +-
>  arch/arm/mach-omap2/omap4-common.c                 |  11 +-
>  arch/arm/mach-picoxcell/common.c                   |  15 +-
>  arch/arm/mach-realview/core.c                      |   1 -
>  arch/arm/mach-realview/platsmp.c                   |   3 -
>  arch/arm/mach-realview/realview_eb.c               |   3 +-
>  arch/arm/mach-realview/realview_pb1176.c           |   3 +-
>  arch/arm/mach-realview/realview_pb11mp.c           |   3 +-
>  arch/arm/mach-realview/realview_pba8.c             |   3 +-
>  arch/arm/mach-realview/realview_pbx.c              |   3 +-
>  arch/arm/mach-s3c64xx/common.c                     |   2 +-
>  arch/arm/mach-s3c64xx/include/mach/regs-irq.h      |   1 -
>  arch/arm/mach-s3c64xx/include/mach/tick.h          |   2 +
>  arch/arm/mach-s3c64xx/mach-anw6410.c               |   2 -
>  arch/arm/mach-s3c64xx/mach-crag6410.c              |   2 -
>  arch/arm/mach-s3c64xx/mach-hmt.c                   |   2 -
>  arch/arm/mach-s3c64xx/mach-mini6410.c              |   2 -
>  arch/arm/mach-s3c64xx/mach-ncp.c                   |   2 -
>  arch/arm/mach-s3c64xx/mach-real6410.c              |   2 -
>  arch/arm/mach-s3c64xx/mach-smartq5.c               |   2 -
>  arch/arm/mach-s3c64xx/mach-smartq7.c               |   2 -
>  arch/arm/mach-s3c64xx/mach-smdk6400.c              |   2 -
>  arch/arm/mach-s3c64xx/mach-smdk6410.c              |   2 -
>  arch/arm/mach-s5p64x0/include/mach/regs-irq.h      |   1 -
>  arch/arm/mach-s5p64x0/include/mach/tick.h          |  29 --
>  arch/arm/mach-s5p64x0/mach-smdk6440.c              |   2 -
>  arch/arm/mach-s5p64x0/mach-smdk6450.c              |   2 -
>  arch/arm/mach-s5pc100/include/mach/regs-irq.h      |   1 -
>  arch/arm/mach-s5pc100/include/mach/tick.h          |   2 +
>  arch/arm/mach-s5pc100/mach-smdkc100.c              |   2 -
>  arch/arm/mach-s5pv210/include/mach/regs-irq.h      |   1 -
>  arch/arm/mach-s5pv210/include/mach/tick.h          |  26 --
>  arch/arm/mach-s5pv210/mach-aquila.c                |   2 -
>  arch/arm/mach-s5pv210/mach-goni.c                  |   2 -
>  arch/arm/mach-s5pv210/mach-smdkc110.c              |   2 -
>  arch/arm/mach-s5pv210/mach-smdkv210.c              |   2 -
>  arch/arm/mach-s5pv210/mach-torbreck.c              |   2 -
>  arch/arm/mach-shmobile/board-ag5evm.c              |   3 +-
>  arch/arm/mach-shmobile/board-kota2.c               |   3 +-
>  arch/arm/mach-shmobile/board-kzm9d.c               |   2 -
>  arch/arm/mach-shmobile/board-kzm9g.c               |   3 +-
>  arch/arm/mach-shmobile/board-marzen.c              |   2 -
>  arch/arm/mach-shmobile/intc-r8a7779.c              |   2 +-
>  arch/arm/mach-shmobile/intc-sh73a0.c               |   2 +-
>  arch/arm/mach-shmobile/platsmp.c                   |   3 -
>  arch/arm/mach-shmobile/setup-emev2.c               |  17 +-
>  arch/arm/mach-shmobile/smp-emev2.c                 |   4 +-
>  arch/arm/mach-shmobile/smp-r8a7779.c               |   2 +-
>  arch/arm/mach-shmobile/smp-sh73a0.c                |   2 +-
>  arch/arm/mach-socfpga/platsmp.c                    |   4 +-
>  arch/arm/mach-socfpga/socfpga.c                    |  14 +-
>  arch/arm/mach-spear13xx/include/mach/generic.h     |   1 -
>  arch/arm/mach-spear13xx/platsmp.c                  |   4 +-
>  arch/arm/mach-spear13xx/spear1310.c                |   5 +-
>  arch/arm/mach-spear13xx/spear1340.c                |   5 +-
>  arch/arm/mach-spear13xx/spear13xx.c                |  13 +-
>  arch/arm/mach-spear3xx/include/mach/generic.h      |   1 -
>  arch/arm/mach-spear3xx/spear300.c                  |   5 +-
>  arch/arm/mach-spear3xx/spear310.c                  |   5 +-
>  arch/arm/mach-spear3xx/spear320.c                  |   5 +-
>  arch/arm/mach-spear3xx/spear3xx.c                  |  16 -
>  arch/arm/mach-spear6xx/spear6xx.c                  |  16 +-
>  arch/arm/mach-sunxi/sunxi.c                        |   2 -
>  arch/arm/mach-tegra/board-dt-tegra20.c             |   3 -
>  arch/arm/mach-tegra/board-dt-tegra30.c             |   2 -
>  arch/arm/mach-tegra/common.c                       |  10 +-
>  arch/arm/mach-tegra/irq.c                          |   3 +-
>  arch/arm/mach-tegra/platsmp.c                      |   4 +-
>  arch/arm/mach-u300/core.c                          |   3 +-
>  arch/arm/mach-ux500/board-mop500.c                 |   5 -
>  arch/arm/mach-ux500/cpu-db8500.c                   |   2 -
>  arch/arm/mach-ux500/cpu.c                          |  10 +-
>  arch/arm/mach-ux500/platsmp.c                      |   6 +-
>  arch/arm/mach-versatile/core.c                     |   2 +-
>  arch/arm/mach-versatile/versatile_ab.c             |   2 -
>  arch/arm/mach-versatile/versatile_dt.c             |   2 -
>  arch/arm/mach-versatile/versatile_pb.c             |   2 -
>  arch/arm/mach-vexpress/ct-ca9x4.c                  |   4 +-
>  arch/arm/mach-vexpress/platsmp.c                   |   3 -
>  arch/arm/mach-vexpress/v2m.c                       |  16 +-
>  arch/arm/mach-virt/Kconfig                         |  10 +
>  arch/arm/mach-virt/Makefile                        |   6 +
>  arch/arm/mach-virt/platsmp.c                       |  58 +++
>  arch/arm/mach-virt/virt.c                          |  58 +++
>  arch/arm/mach-zynq/common.c                        |  17 +-
>  arch/arm/plat-samsung/s5p-irq-eint.c               |   3 +-
>  arch/arm/plat-samsung/s5p-irq.c                    |   3 +-
>  arch/arm/plat-versatile/platsmp.c                  |   4 +-
>  arch/arm64/Kconfig                                 |   1 +
>  arch/arm64/include/asm/arch_timer.h                | 133 ++++++
>  arch/arm64/include/asm/arm_generic.h               | 100 ----
>  arch/arm64/kernel/time.c                           |  29 +-
>  drivers/clocksource/Kconfig                        |   6 +-
>  drivers/clocksource/Makefile                       |   2 +-
>  drivers/clocksource/arm_arch_timer.c               | 391 ++++++++++++++++
>  drivers/clocksource/arm_generic.c                  | 232 ----------
>  drivers/irqchip/Kconfig                            |  27 ++
>  drivers/irqchip/Makefile                           |   6 +-
>  arch/arm/common/gic.c => drivers/irqchip/irq-gic.c |  59 ++-
>  arch/arm/common/vic.c => drivers/irqchip/irq-vic.c |  95 ++--
>  drivers/irqchip/irqchip.c                          |  30 ++
>  drivers/irqchip/irqchip.h                          |  29 ++
>  drivers/irqchip/spear-shirq.c                      |   5 +
>  drivers/mfd/db8500-prcmu.c                         |   2 +-
>  include/asm-generic/vmlinux.lds.h                  |  12 +-
>  include/clocksource/arm_arch_timer.h               |  63 +++
>  include/linux/clockchips.h                         |   9 +
>  include/linux/irqchip.h                            |  16 +
>  .../gic.h => include/linux/irqchip/arm-gic.h       |  15 +-
>  .../vic.h => include/linux/irqchip/arm-vic.h       |  25 +-
>  kernel/time/Kconfig                                |   4 +
>  kernel/time/tick-broadcast.c                       |  30 ++
>  175 files changed, 1594 insertions(+), 1458 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/arm/psci.txt
>  rename include/clocksource/arm_generic.h => arch/arm/include/asm/opcodes-sec.h (60%)
>  create mode 100644 arch/arm/include/asm/psci.h
>  create mode 100644 arch/arm/kernel/psci.c
>  delete mode 100644 arch/arm/mach-s5p64x0/include/mach/tick.h
>  delete mode 100644 arch/arm/mach-s5pv210/include/mach/tick.h
>  create mode 100644 arch/arm/mach-virt/Kconfig
>  create mode 100644 arch/arm/mach-virt/Makefile
>  create mode 100644 arch/arm/mach-virt/platsmp.c
>  create mode 100644 arch/arm/mach-virt/virt.c
>  create mode 100644 arch/arm64/include/asm/arch_timer.h
>  delete mode 100644 arch/arm64/include/asm/arm_generic.h
>  create mode 100644 drivers/clocksource/arm_arch_timer.c
>  delete mode 100644 drivers/clocksource/arm_generic.c
>  rename arch/arm/common/gic.c => drivers/irqchip/irq-gic.c (97%)
>  rename arch/arm/common/vic.c => drivers/irqchip/irq-vic.c (92%)
>  create mode 100644 drivers/irqchip/irqchip.c
>  create mode 100644 drivers/irqchip/irqchip.h
>  create mode 100644 include/clocksource/arm_arch_timer.h
>  create mode 100644 include/linux/irqchip.h
>  rename arch/arm/include/asm/hardware/gic.h => include/linux/irqchip/arm-gic.h (77%)
>  rename arch/arm/include/asm/hardware/vic.h => include/linux/irqchip/arm-vic.h (63%)
> 
> 
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
> 

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [GIT PULL 4/4] mach-virt platform code for 3.9
  2013-02-06 22:21   ` Rob Herring
@ 2013-02-07 10:02     ` Will Deacon
  0 siblings, 0 replies; 14+ messages in thread
From: Will Deacon @ 2013-02-07 10:02 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, Feb 06, 2013 at 10:21:14PM +0000, Rob Herring wrote:
> On 02/04/2013 07:55 AM, Will Deacon wrote:
> > NOTE: I'm not suggesting you pull this one as it stands -- see below!
> >
> > This is the last batch from me (Marc is dealing with vgic and virtual
> > timers) and introduces support for mach-virt. This depends on:
> >
> >       - for-arm-soc/arch-timers (third pull request in this series)
> >       - for-rmk/virt/psci (already pulled)
> >       - irqchip/gic-vic-move (an arm-soc branch)
> >
> > As a result, the diffstat is atrocious so it would be better if you
> > could create a branch merging the above dependendies, which I could
> > rebase onto (there's actually only two patches here).
> 
> It would be good to see this based on Arnd's patch to make some of the
> mach function ptrs optional and "xen,xenvm" moved from VExpress to this.

I'm not sure what state that patch is in, but I'm happy to fix mach-virt up
once Arnd's patch is queued.

> This will also break with the sys_timer removal, so yet another dependency.

Indeed... what I could really do with is an arm-soc branch with all the
dependencies, then I can just rebase onto that and fix things up appropriately.

Will

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [GIT PULL 2/4] ARM broadcast timer updates for 3.9
  2013-02-05 22:37     ` Olof Johansson
@ 2013-02-07 12:15       ` Will Deacon
  0 siblings, 0 replies; 14+ messages in thread
From: Will Deacon @ 2013-02-07 12:15 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Olof,

On Tue, Feb 05, 2013 at 10:37:28PM +0000, Olof Johansson wrote:
> On Mon, Feb 04, 2013 at 03:24:26PM +0000, Russell King - ARM Linux wrote:
> > On Mon, Feb 04, 2013 at 01:55:29PM +0000, Will Deacon wrote:
> > > This is the second part of the kvm-related series and moves ARM over to
> > > the generic timer broadcast implementation, currently queued by tglx in
> > > -tip.
> > > 
> > > Please note that, due to this dependency, this branch contains mainline
> > > up to ~-rc6, so you may want to keep it on a separate branch to avoid
> > > pulling in a bunch of unrelated changes from -tip.
> > 
> > Both 1 and 2 pulled and merged.  I'll wait 24 hours before pushing this out
> > so that the nightly build can have a go at it before the new devel-stable
> > branch gets published.
> 
> Sounds good. I'll deal with 3 and 4 once you're happy with 1/2 and
> they're out, since we need the same as base.

1 and 2 are now in rmk's devel-stable branch, so we should be good to go
with the third series. As highlighted by me and Rob, the fourth set likely
needs a new base in arm-soc to minimise both the diffstat and number of
merge conflicts.

Cheers,

Will

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [GIT PULL 4/4] mach-virt platform code for 3.9
  2013-02-04 18:07   ` Marc Zyngier
@ 2013-02-09 12:37     ` Marc Zyngier
  0 siblings, 0 replies; 14+ messages in thread
From: Marc Zyngier @ 2013-02-09 12:37 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, 04 Feb 2013 18:07:24 +0000, Marc Zyngier <marc.zyngier@arm.com>
wrote:
> On 04/02/13 13:55, Will Deacon wrote:
>> NOTE: I'm not suggesting you pull this one as it stands -- see below!
>> 
>> This is the last batch from me (Marc is dealing with vgic and virtual
>> timers) and introduces support for mach-virt. This depends on:
>> 
>>         - for-arm-soc/arch-timers (third pull request in this series)
>>         - for-rmk/virt/psci (already pulled)
>>         - irqchip/gic-vic-move (an arm-soc branch)
>> 
>> As a result, the diffstat is atrocious so it would be better if you
>> could create a branch merging the above dependendies, which I could
>> rebase onto (there's actually only two patches here).
> 
> The remaining of the KVM/ARM code (vgic and timer) has exactly the same
> problem, plus an additional dependency on the actual kvm/core branch
> that Russell just pulled.
> 
> I can either send you two pull requests that will basically look like
> this one (actually, a lot worse), or you could create a stable branch
> containing:
> 
> 	- for-rmk/virt/kvm/core (first pull request in the series)
> 	- for-arm-soc/arch-timers (third pull request in the series)
> 	- irqchip/gic-vic-move (already in arm-soc)
> 
> You could either create two stable branches (one for mach-virt and one
> for kvm-arm/{vgic,timer}), or a single one containing all the
> prerequisites.
> 
> What do you think?

Arnd, Olof,

Any hope we can get branches for these? Now that the KVM core code is in
Russell's devel-stable branch, it would be a shame not to have the complete
thing...

Thanks,

        M.
-- 
Fast, cheap, reliable. Pick two.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [GIT PULL 4/4] mach-virt platform code for 3.9
  2013-02-04 13:55 ` [GIT PULL 4/4] mach-virt platform code " Will Deacon
  2013-02-04 18:07   ` Marc Zyngier
  2013-02-06 22:21   ` Rob Herring
@ 2013-02-11 17:27   ` Olof Johansson
  2013-02-11 17:47     ` Will Deacon
  2 siblings, 1 reply; 14+ messages in thread
From: Olof Johansson @ 2013-02-11 17:27 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Feb 04, 2013 at 01:55:31PM +0000, Will Deacon wrote:
> NOTE: I'm not suggesting you pull this one as it stands -- see below!
> 
> This is the last batch from me (Marc is dealing with vgic and virtual
> timers) and introduces support for mach-virt. This depends on:
> 
> 	- for-arm-soc/arch-timers (third pull request in this series)
> 	- for-rmk/virt/psci (already pulled)
> 	- irqchip/gic-vic-move (an arm-soc branch)
> 
> As a result, the diffstat is atrocious so it would be better if you
> could create a branch merging the above dependendies, which I could
> rebase onto (there's actually only two patches here).

So, while the diffstats below look pretty bad, the actual new code is small and
easy to get an overview when I pull them in.

I've staged this in a separate branch (next/virt), that pulls in all the
dependencies first, then 3/4 and 4/4. It merges cleanly into our for-next as
well, so this is looking great. It needs a fixup for sys_timer setup before I
actually push it out merged though, so please send a patch over.


-Olof

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [GIT PULL 4/4] mach-virt platform code for 3.9
  2013-02-11 17:27   ` Olof Johansson
@ 2013-02-11 17:47     ` Will Deacon
  2013-02-11 18:42       ` Olof Johansson
  0 siblings, 1 reply; 14+ messages in thread
From: Will Deacon @ 2013-02-11 17:47 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Feb 11, 2013 at 05:27:47PM +0000, Olof Johansson wrote:
> On Mon, Feb 04, 2013 at 01:55:31PM +0000, Will Deacon wrote:
> > NOTE: I'm not suggesting you pull this one as it stands -- see below!
> > 
> > This is the last batch from me (Marc is dealing with vgic and virtual
> > timers) and introduces support for mach-virt. This depends on:
> > 
> > 	- for-arm-soc/arch-timers (third pull request in this series)
> > 	- for-rmk/virt/psci (already pulled)
> > 	- irqchip/gic-vic-move (an arm-soc branch)
> > 
> > As a result, the diffstat is atrocious so it would be better if you
> > could create a branch merging the above dependendies, which I could
> > rebase onto (there's actually only two patches here).
> 
> So, while the diffstats below look pretty bad, the actual new code is small and
> easy to get an overview when I pull them in.
> 
> I've staged this in a separate branch (next/virt), that pulls in all the
> dependencies first, then 3/4 and 4/4. It merges cleanly into our for-next as
> well, so this is looking great. It needs a fixup for sys_timer setup before I
> actually push it out merged though, so please send a patch over.

Great, thanks Olof. I've included a small patch to fix the sys_timer stuff
below.

Cheers,

Will

--->8

>From 6ff8d50c1d3b0adc5f5daf4d178b3b093096a0f1 Mon Sep 17 00:00:00 2001
From: Will Deacon <will.deacon@arm.com>
Date: Mon, 11 Feb 2013 17:44:22 +0000
Subject: [PATCH] ARM: mach-virt: fixup machine descriptor after removal of sys_timer

Now that sys_timer has been removed, update the mach-virt machine
descriptor to use a direct pointer to its timer_init function.

Signed-off-by: Will Deacon <will.deacon@arm.com>
---
 arch/arm/mach-virt/virt.c | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)

diff --git a/arch/arm/mach-virt/virt.c b/arch/arm/mach-virt/virt.c
index f6ed9cf..31666f6 100644
--- a/arch/arm/mach-virt/virt.c
+++ b/arch/arm/mach-virt/virt.c
@@ -43,15 +43,11 @@ static const char *virt_dt_match[] = {
 	NULL
 };
 
-static struct sys_timer virt_timer = {
-	.init = virt_timer_init,
-};
-
 extern struct smp_operations virt_smp_ops;
 
 DT_MACHINE_START(VIRT, "Dummy Virtual Machine")
 	.init_irq	= irqchip_init,
-	.timer		= &virt_timer,
+	.init_time	= virt_timer_init,
 	.init_machine	= virt_init,
 	.smp		= smp_ops(virt_smp_ops),
 	.dt_compat	= virt_dt_match,
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [GIT PULL 4/4] mach-virt platform code for 3.9
  2013-02-11 17:47     ` Will Deacon
@ 2013-02-11 18:42       ` Olof Johansson
  0 siblings, 0 replies; 14+ messages in thread
From: Olof Johansson @ 2013-02-11 18:42 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Feb 11, 2013 at 05:47:31PM +0000, Will Deacon wrote:
> On Mon, Feb 11, 2013 at 05:27:47PM +0000, Olof Johansson wrote:
> > On Mon, Feb 04, 2013 at 01:55:31PM +0000, Will Deacon wrote:
> > > NOTE: I'm not suggesting you pull this one as it stands -- see below!
> > > 
> > > This is the last batch from me (Marc is dealing with vgic and virtual
> > > timers) and introduces support for mach-virt. This depends on:
> > > 
> > > 	- for-arm-soc/arch-timers (third pull request in this series)
> > > 	- for-rmk/virt/psci (already pulled)
> > > 	- irqchip/gic-vic-move (an arm-soc branch)
> > > 
> > > As a result, the diffstat is atrocious so it would be better if you
> > > could create a branch merging the above dependendies, which I could
> > > rebase onto (there's actually only two patches here).
> > 
> > So, while the diffstats below look pretty bad, the actual new code is small and
> > easy to get an overview when I pull them in.
> > 
> > I've staged this in a separate branch (next/virt), that pulls in all the
> > dependencies first, then 3/4 and 4/4. It merges cleanly into our for-next as
> > well, so this is looking great. It needs a fixup for sys_timer setup before I
> > actually push it out merged though, so please send a patch over.
> 
> Great, thanks Olof. I've included a small patch to fix the sys_timer stuff
> below.

Thanks, applied and I have now merged mach/virt into for-next.


-Olof

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2013-02-11 18:42 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-02-04 13:55 [GIT PULL 1/4] core ARM kvm implementation for 3.9 Will Deacon
2013-02-04 13:55 ` [GIT PULL 2/4] ARM broadcast timer updates " Will Deacon
2013-02-04 15:24   ` Russell King - ARM Linux
2013-02-05 22:37     ` Olof Johansson
2013-02-07 12:15       ` Will Deacon
2013-02-04 13:55 ` [GIT PULL 3/4] Move arch-timer into drivers/clocksource " Will Deacon
2013-02-04 13:55 ` [GIT PULL 4/4] mach-virt platform code " Will Deacon
2013-02-04 18:07   ` Marc Zyngier
2013-02-09 12:37     ` Marc Zyngier
2013-02-06 22:21   ` Rob Herring
2013-02-07 10:02     ` Will Deacon
2013-02-11 17:27   ` Olof Johansson
2013-02-11 17:47     ` Will Deacon
2013-02-11 18:42       ` Olof Johansson

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.