linux-arch.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/17] xtensa SMP queue
@ 2013-10-16 22:42 Max Filippov
  2013-10-16 22:42 ` [PATCH 01/17] xtensa: remove NO_IRQ definitions Max Filippov
                   ` (17 more replies)
  0 siblings, 18 replies; 24+ messages in thread
From: Max Filippov @ 2013-10-16 22:42 UTC (permalink / raw)
  To: Chris Zankel; +Cc: Marc Gauthier, linux-xtensa, linux-arch, Max Filippov

Hi Chris,

this series adds SMP support for xtensa.
There's a number of trivial cleanups:
      xtensa: remove NO_IRQ definitions
      xtensa: fix build warning in 64-bit build environment
      xtensa: fix build warning from gcc-4.7.2
      xtensa: call check_s32c1i after trap_init
      xtensa: move init_mmu declaration to mmu_context.h

a couple of fixes for spinlocks:
      xtensa: fix arch spinlock function names
      xtensa: fix __delay for small loop count

three fixes for the clocksources, with these we get high precision timers
usable in SMP and IRQ time accounting:
      xtensa: mark ccount as continuous clocksource
      xtensa: update clockevent setup for SMP
      xtensa: enable HAVE_IRQ_TIME_ACCOUNTING

fixes and rearrangement of IRQ handling code and a new driver for MX
interrupt distributor:
      xtensa: move built-in PIC to drivers/irqchip
      xtensa: clean up do_interrupt/do_IRQ
      xtensa: clear timer IRQ unconditionally in its handler
      xtensa: add MX irqchip

and finally SMP and hotplug CPU support and a sample SMP-capable CPU variant:
      xtensa: add SMP support
      xtensa: implement CPU hotplug
      xtensa: add Three Core HiFi-2 MX Variant.

Please review.

You can pull these changes from my git tree,
the following changes since commit 61e6cfa80de5760bbe406f4e815b7739205754d2:

  Linux 3.12-rc5 (2013-10-13 15:41:28 -0700)

are available in the git repository at:

  git://github.com/jcmvbkbc/linux-xtensa.git tags/xtensa-smp-20131017

for you to fetch changes up to 4862c5ae570b8a40275f413dfa2e3f184ecfa1d9:

  xtensa: implement CPU hotplug (2013-10-17 01:50:17 +0400)

----------------------------------------------------------------
Clean up minor warnings.
Fix spinlock function names, provide missing definitions.
Extract PIC into drivers/irqchip.
Clean up IRQ handling.
Add MX interrupt distributor.
Add SMP support.
Add hotplug CPU support.
Add SMP-capable core variant.

----------------------------------------------------------------
Baruch Siach (1):
      xtensa: mark ccount as continuous clocksource

Max Filippov (15):
      xtensa: remove NO_IRQ definitions
      xtensa: fix build warning in 64-bit build environment
      xtensa: fix build warning from gcc-4.7.2
      xtensa: fix arch spinlock function names
      xtensa: fix __delay for small loop count
      xtensa: enable HAVE_IRQ_TIME_ACCOUNTING
      xtensa: update clockevent setup for SMP
      xtensa: call check_s32c1i after trap_init
      xtensa: move init_mmu declaration to mmu_context.h
      xtensa: move built-in PIC to drivers/irqchip
      xtensa: clean up do_interrupt/do_IRQ
      xtensa: clear timer IRQ unconditionally in its handler
      xtensa: add MX irqchip
      xtensa: add SMP support
      xtensa: implement CPU hotplug

Piet Delaney (1):
      xtensa: add Three Core HiFi-2 MX Variant.

 arch/xtensa/Kconfig                                |  54 +-
 arch/xtensa/Makefile                               |   1 +
 arch/xtensa/include/asm/barrier.h                  |   4 +-
 arch/xtensa/include/asm/bitops.h                   |   8 +-
 arch/xtensa/include/asm/cacheflush.h               |  40 +-
 arch/xtensa/include/asm/delay.h                    |   9 +-
 arch/xtensa/include/asm/irq.h                      |   9 +
 arch/xtensa/include/asm/mmu.h                      |  10 +-
 arch/xtensa/include/asm/mmu_context.h              | 106 ++--
 arch/xtensa/include/asm/mxregs.h                   |  46 ++
 arch/xtensa/include/asm/processor.h                |  20 +
 arch/xtensa/include/asm/ptrace.h                   |   8 +
 arch/xtensa/include/asm/smp.h                      |  38 +-
 arch/xtensa/include/asm/spinlock.h                 |  31 +-
 arch/xtensa/include/asm/spinlock_types.h           |  20 +
 arch/xtensa/include/asm/timex.h                    |  14 +-
 arch/xtensa/include/asm/tlbflush.h                 |  42 +-
 arch/xtensa/include/asm/traps.h                    |   1 +
 arch/xtensa/include/asm/vectors.h                  |   4 +
 arch/xtensa/kernel/Makefile                        |   1 +
 arch/xtensa/kernel/head.S                          | 181 +++++--
 arch/xtensa/kernel/irq.c                           | 207 ++++----
 arch/xtensa/kernel/mxhead.S                        |  85 +++
 arch/xtensa/kernel/setup.c                         |  92 ++--
 arch/xtensa/kernel/smp.c                           | 591 +++++++++++++++++++++
 arch/xtensa/kernel/time.c                          |  56 +-
 arch/xtensa/kernel/traps.c                         |  56 +-
 arch/xtensa/kernel/vmlinux.lds.S                   |  26 +
 arch/xtensa/mm/cache.c                             |   7 +-
 arch/xtensa/mm/fault.c                             |   2 +-
 arch/xtensa/mm/misc.S                              |   4 +-
 arch/xtensa/mm/mmu.c                               |   4 +-
 arch/xtensa/mm/tlb.c                               |  37 +-
 .../platforms/xtfpga/include/platform/hardware.h   |   6 +-
 arch/xtensa/variants/s6000/include/variant/irq.h   |   1 -
 .../test_mmuhifi_c3/include/variant/core.h         | 384 +++++++++++++
 .../test_mmuhifi_c3/include/variant/tie-asm.h      | 183 +++++++
 .../variants/test_mmuhifi_c3/include/variant/tie.h | 141 +++++
 drivers/irqchip/Kconfig                            |   4 +
 drivers/irqchip/Makefile                           |   2 +
 drivers/irqchip/irq-xtensa-mx.c                    | 166 ++++++
 drivers/irqchip/irq-xtensa-pic.c                   | 108 ++++
 include/linux/irqchip/xtensa-mx.h                  |  17 +
 include/linux/irqchip/xtensa-pic.h                 |  18 +
 44 files changed, 2455 insertions(+), 389 deletions(-)
 create mode 100644 arch/xtensa/include/asm/mxregs.h
 create mode 100644 arch/xtensa/include/asm/spinlock_types.h
 create mode 100644 arch/xtensa/kernel/mxhead.S
 create mode 100644 arch/xtensa/kernel/smp.c
 create mode 100644 arch/xtensa/variants/test_mmuhifi_c3/include/variant/core.h
 create mode 100644 arch/xtensa/variants/test_mmuhifi_c3/include/variant/tie-asm.h
 create mode 100644 arch/xtensa/variants/test_mmuhifi_c3/include/variant/tie.h
 create mode 100644 drivers/irqchip/irq-xtensa-mx.c
 create mode 100644 drivers/irqchip/irq-xtensa-pic.c
 create mode 100644 include/linux/irqchip/xtensa-mx.h
 create mode 100644 include/linux/irqchip/xtensa-pic.h

-- 
1.8.1.4

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

end of thread, other threads:[~2013-12-01  8:07 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-10-16 22:42 [PATCH 00/17] xtensa SMP queue Max Filippov
2013-10-16 22:42 ` [PATCH 01/17] xtensa: remove NO_IRQ definitions Max Filippov
2013-10-16 22:42 ` [PATCH 02/17] xtensa: fix build warning in 64-bit build environment Max Filippov
2013-10-16 22:42 ` [PATCH 03/17] xtensa: fix build warning from gcc-4.7.2 Max Filippov
2013-10-16 22:42 ` [PATCH 04/17] xtensa: fix arch spinlock function names Max Filippov
2013-10-16 22:42 ` [PATCH 05/17] xtensa: fix __delay for small loop count Max Filippov
2013-10-16 22:42 ` [PATCH 06/17] xtensa: enable HAVE_IRQ_TIME_ACCOUNTING Max Filippov
2013-10-16 22:42 ` [PATCH 07/17] xtensa: mark ccount as continuous clocksource Max Filippov
2013-10-16 22:42 ` [PATCH 08/17] xtensa: update clockevent setup for SMP Max Filippov
2013-10-16 22:42 ` [PATCH 09/17] xtensa: call check_s32c1i after trap_init Max Filippov
2013-10-16 22:42 ` [PATCH 10/17] xtensa: move init_mmu declaration to mmu_context.h Max Filippov
2013-10-16 22:42 ` [PATCH 11/17] xtensa: move built-in PIC to drivers/irqchip Max Filippov
2013-10-16 22:42 ` [PATCH 12/17] xtensa: clean up do_interrupt/do_IRQ Max Filippov
2013-10-16 22:42 ` [PATCH 13/17] xtensa: clear timer IRQ unconditionally in its handler Max Filippov
2013-10-16 22:42 ` [PATCH 14/17] xtensa: add MX irqchip Max Filippov
2013-10-16 22:42 ` [PATCH 15/17] xtensa: add SMP support Max Filippov
2013-10-16 22:42 ` [PATCH 16/17] xtensa: add Three Core HiFi-2 MX Variant Max Filippov
2013-10-16 22:42 ` [PATCH 17/17] xtensa: implement CPU hotplug Max Filippov
2013-11-19  4:05 ` [PATCH 00/17] xtensa SMP queue Chris Zankel
2013-11-19  6:36   ` Max Filippov
2013-11-19  6:45     ` czankel
2013-12-01  5:38       ` [PATCHv2 14/17] xtensa: add MX irqchip Max Filippov
2013-12-01  7:20         ` [Linux-Xtensa] " Baruch Siach
2013-12-01  8:07           ` Max Filippov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).