[PATCH 00/17] xtensa SMP queue

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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

--
To unsubscribe from this list: send the line "unsubscribe linux-arch" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Kernel]     [Kernel Newbies]     [x86 Platform Driver]     [Netdev]     [Linux Wireless]     [Netfilter]     [Bugtraq]     [Linux Filesystems]     [Yosemite Discussion]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]

  Powered by Linux