Arc processors may have DSP extension which is optional. In this patch series we: * Handle issues caused by DSP extension presence in HW * Add optional support for DSP-enabled applications in userspace (with optional AGU extension support) Changes v1->v2: * use r10:r11 register pair as a scratch for ASM code instead of r58:r59 * reset DSP_CTRL to value suitable for kernel also in case of DSP for userspcae enabled * Use "Ir" instead of "I" parameter modifier to inline ASM to give compiler wiggle room. * Save / restore ACC0_GLO, ACC0_GHI only in case of context switch * Don't define additional options in headers to not introduce explicit include dependencies * Mode DSP config check to DSP code itself * Minor fixes Eugeniy Paltsev (4): ARC: add helpers to sanitize config options ARC: handle DSP presence in HW ARC: add support for DSP-enabled userspace applications ARC: allow userspace DSP applications to use AGU extensions arch/arc/Kconfig | 50 +++++++++- arch/arc/include/asm/arcregs.h | 26 +++++ arch/arc/include/asm/asserts.h | 34 +++++++ arch/arc/include/asm/dsp-impl.h | 150 +++++++++++++++++++++++++++++ arch/arc/include/asm/dsp.h | 29 ++++++ arch/arc/include/asm/entry-arcv2.h | 6 ++ arch/arc/include/asm/processor.h | 4 + arch/arc/include/asm/ptrace.h | 3 + arch/arc/include/asm/switch_to.h | 2 + arch/arc/kernel/asm-offsets.c | 4 + arch/arc/kernel/head.S | 4 + arch/arc/kernel/setup.c | 34 ++++--- 12 files changed, 332 insertions(+), 14 deletions(-) create mode 100644 arch/arc/include/asm/asserts.h create mode 100644 arch/arc/include/asm/dsp-impl.h create mode 100644 arch/arc/include/asm/dsp.h -- 2.21.1 _______________________________________________ linux-snps-arc mailing list linux-snps-arc@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/linux-snps-arc