Re: [PATCH 00/17] xtensa SMP queue

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

 



Hi Max,

I have added the SMP patch-set to the for_next tree (for the time being). Let me know if you wanted it in for this release or if you think it's not ready for prime time. Note that I skipped the variant configuration as it is a lot of code and it is more of a 'test' configuration.

Thanks,
-Chris



On 10/16/13, 3:42 PM, Max Filippov wrote:
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


--
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