[GIT PULL] nds32 new features and bug fix for 4.20

From: Greentime Hu
Date: Fri Nov 09 2018 - 05:01:06 EST


Hi Linus,

The following changes since commit 651022382c7f8da46cb4872a545ee1da6d097d2a:

Linux 4.20-rc1 (2018-11-04 15:37:52 -0800)

are available in the Git repository at:

ssh://git@xxxxxxxxxxxxxxxxxxx/pub/scm/linux/kernel/git/greentime/linux.git
tags/nds32-for-linus-4.20

for you to fetch changes up to 3fb688b03d0c14e661ef20b11aa129048ccde0bf:

nds32: support hardware prefetcher (2018-11-08 20:42:49 +0800)

----------------------------------------------------------------
nds32 patches for 4.20

Here is the nds32 patch set based on 4.20-rc1.
Contained in here are
1. Perf support
2. Power management support
3. FPU support
4. Hardware prefetcher support
5. Build error fixed
6. Performance enhancement

These are the LTP20170427 testing results.
Total Tests: 1902
Total Skipped Tests: 603
Total Failures: 410
Kernel Version: 4.20.0-rc1-00016-ge0db606bc023
Machine Architecture: nds32
Hostname: greentime-d15-ae3xx

----------------------------------------------------------------
Nick Hu (1):
nds32: Power management for nds32

Nickhu (5):
nds32: Fix gcc 8.0 compiler option incompatible.
nds32: Fix bug in bitfield.h
nds32: Perf porting
nds32: Add perf call-graph support.
nds32: Add document for NDS32 PMU.

Nylon Chen (2):
nds32: Fix the items of hwcap_str ordering issue.
nds32: support hardware prefetcher

Vincent Chen (5):
nds32: nds32 FPU port
nds32: Support FP emulation
nds32: support denormalized result through FP emulator
math-emu/op-2.h: Use statement expressions to prevent negative
constant shift
math-emu/soft-fp.h: (_FP_ROUND_ZERO) cast 0 to void to fix warning

YueHaibing (1):
nds32: Remove duplicated include from pm.c

Zong Li (2):
nds32: Remove the redundant assignment
nds32: Fill all TLB entries with kernel image mapping

Documentation/devicetree/bindings/perf/nds32v3-pmu.txt | 17 ++
arch/nds32/Kconfig | 12 +
arch/nds32/Kconfig.cpu | 41 ++++
arch/nds32/Makefile | 11 +
arch/nds32/boot/dts/ae3xx.dts | 5 +
arch/nds32/include/asm/Kbuild | 1 +
arch/nds32/include/asm/bitfield.h | 25 ++-
arch/nds32/include/asm/elf.h | 11 +
arch/nds32/include/asm/fpu.h | 126 +++++++++++
arch/nds32/include/asm/fpuemu.h | 32 +++
arch/nds32/include/asm/nds32_fpu_inst.h | 109 +++++++++
arch/nds32/include/asm/perf_event.h | 16 ++
arch/nds32/include/asm/pmu.h | 386
++++++++++++++++++++++++++++++++
arch/nds32/include/asm/processor.h | 7 +
arch/nds32/include/asm/sfp-machine.h | 158 +++++++++++++
arch/nds32/include/asm/stacktrace.h | 39 ++++
arch/nds32/include/asm/suspend.h | 11 +
arch/nds32/include/asm/syscalls.h | 1 +
arch/nds32/include/uapi/asm/auxvec.h | 7 +
arch/nds32/include/uapi/asm/sigcontext.h | 14 ++
arch/nds32/include/uapi/asm/udftrap.h | 13 ++
arch/nds32/include/uapi/asm/unistd.h | 2 +
arch/nds32/kernel/Makefile | 13 +-
arch/nds32/kernel/ex-entry.S | 24 +-
arch/nds32/kernel/ex-exit.S | 13 +-
arch/nds32/kernel/ex-scall.S | 8 +-
arch/nds32/kernel/fpu.c | 269
++++++++++++++++++++++
arch/nds32/kernel/head.S | 13 +-
arch/nds32/kernel/perf_event_cpu.c | 1522
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
arch/nds32/kernel/pm.c | 78 +++++++
arch/nds32/kernel/process.c | 64 +++++-
arch/nds32/kernel/setup.c | 22 +-
arch/nds32/kernel/signal.c | 62 +++++-
arch/nds32/kernel/sleep.S | 131 +++++++++++
arch/nds32/kernel/sys_nds32.c | 32 +++
arch/nds32/kernel/traps.c | 16 ++
arch/nds32/math-emu/Makefile | 7 +
arch/nds32/math-emu/faddd.c | 24 ++
arch/nds32/math-emu/fadds.c | 24 ++
arch/nds32/math-emu/fcmpd.c | 24 ++
arch/nds32/math-emu/fcmps.c | 24 ++
arch/nds32/math-emu/fd2s.c | 22 ++
arch/nds32/math-emu/fdivd.c | 27 +++
arch/nds32/math-emu/fdivs.c | 26 +++
arch/nds32/math-emu/fmuld.c | 23 ++
arch/nds32/math-emu/fmuls.c | 23 ++
arch/nds32/math-emu/fnegd.c | 21 ++
arch/nds32/math-emu/fnegs.c | 21 ++
arch/nds32/math-emu/fpuemu.c | 357
++++++++++++++++++++++++++++++
arch/nds32/math-emu/fs2d.c | 23 ++
arch/nds32/math-emu/fsqrtd.c | 21 ++
arch/nds32/math-emu/fsqrts.c | 21 ++
arch/nds32/math-emu/fsubd.c | 27 +++
arch/nds32/math-emu/fsubs.c | 27 +++
arch/nds32/mm/Makefile | 6 +-
arch/nds32/mm/fault.c | 13 +-
drivers/irqchip/irq-ativic32.c | 31 +++
include/math-emu/op-2.h | 99 ++++-----
include/math-emu/soft-fp.h | 2 +-
tools/include/asm/barrier.h | 2 +
tools/perf/arch/nds32/Build | 1 +
tools/perf/arch/nds32/util/Build | 1 +
tools/perf/arch/nds32/util/header.c | 29 +++
tools/perf/pmu-events/arch/nds32/mapfile.csv | 15 ++
tools/perf/pmu-events/arch/nds32/n13/atcpmu.json | 290
++++++++++++++++++++++++
65 files changed, 4453 insertions(+), 89 deletions(-)
create mode 100644 Documentation/devicetree/bindings/perf/nds32v3-pmu.txt
create mode 100644 arch/nds32/include/asm/fpu.h
create mode 100644 arch/nds32/include/asm/fpuemu.h
create mode 100644 arch/nds32/include/asm/nds32_fpu_inst.h
create mode 100644 arch/nds32/include/asm/perf_event.h
create mode 100644 arch/nds32/include/asm/pmu.h
create mode 100644 arch/nds32/include/asm/sfp-machine.h
create mode 100644 arch/nds32/include/asm/stacktrace.h
create mode 100644 arch/nds32/include/asm/suspend.h
create mode 100644 arch/nds32/include/uapi/asm/udftrap.h
create mode 100644 arch/nds32/kernel/fpu.c
create mode 100644 arch/nds32/kernel/perf_event_cpu.c
create mode 100644 arch/nds32/kernel/pm.c
create mode 100644 arch/nds32/kernel/sleep.S
create mode 100644 arch/nds32/math-emu/Makefile
create mode 100644 arch/nds32/math-emu/faddd.c
create mode 100644 arch/nds32/math-emu/fadds.c
create mode 100644 arch/nds32/math-emu/fcmpd.c
create mode 100644 arch/nds32/math-emu/fcmps.c
create mode 100644 arch/nds32/math-emu/fd2s.c
create mode 100644 arch/nds32/math-emu/fdivd.c
create mode 100644 arch/nds32/math-emu/fdivs.c
create mode 100644 arch/nds32/math-emu/fmuld.c
create mode 100644 arch/nds32/math-emu/fmuls.c
create mode 100644 arch/nds32/math-emu/fnegd.c
create mode 100644 arch/nds32/math-emu/fnegs.c
create mode 100644 arch/nds32/math-emu/fpuemu.c
create mode 100644 arch/nds32/math-emu/fs2d.c
create mode 100644 arch/nds32/math-emu/fsqrtd.c
create mode 100644 arch/nds32/math-emu/fsqrts.c
create mode 100644 arch/nds32/math-emu/fsubd.c
create mode 100644 arch/nds32/math-emu/fsubs.c
create mode 100644 tools/perf/arch/nds32/Build
create mode 100644 tools/perf/arch/nds32/util/Build
create mode 100644 tools/perf/arch/nds32/util/header.c
create mode 100644 tools/perf/pmu-events/arch/nds32/mapfile.csv
create mode 100644 tools/perf/pmu-events/arch/nds32/n13/atcpmu.json