public inbox for linux-snps-arc@lists.infradead.org
 help / color / mirror / Atom feed
* [RFC PATCH 00/13] ARC: handle the lack of ZOL support
@ 2022-02-22 14:14 Sergey Matyukevich
  2022-02-22 14:14 ` [RFC PATCH 01/13] ARC: uaccess: elide unaligned handling if hardware supports Sergey Matyukevich
                   ` (13 more replies)
  0 siblings, 14 replies; 17+ messages in thread
From: Sergey Matyukevich @ 2022-02-22 14:14 UTC (permalink / raw)
  To: linux-snps-arc
  Cc: Vineet Gupta, Vladimir Isaev, Sergey Matyukevich,
	Sergey Matyukevich

From: Sergey Matyukevich <sergey.matyukevich@synopsys.com>

Hi Vineet and all,

This patch series continues to prepare arch/arc for the upcoming ARCv3
support. ARCv3 does not support zero-overhead-loop (ZOL). So this patch
series provides a set of changes that make ZOL support optional.

The patch series is based on top of Linux 5.17-rc5. It has been tested
with enabled CONFIG_ARC_LACKS_ZOL option on ARCv2 HSDK hardware as well
as on nSIM simulator for ARCv2.

I fixed typos, updated Vineet's email address, and slightly modified
several commit messages. Otherwise this patch series is the first chunk
of ARCv3 bring-up changes by Vineet, available at Synopsys github: see
github.com/foss-for-synopsys-dwc-arc-processors/linux

Regards,
Sergey

Vineet Gupta (13):
  ARC: uaccess: elide unaliged handling if hardware supports
  ARC: Kconfig: introduce option to disable ZOL
  ARC: uaccess: drop CC_OPTIMIZE_FOR_SIZE
  ARC: uaccess: elide ZOL, use double load/stores
  ARCv2: memset: don't prefetch for len == 0 which happens a lot
  ARCv2: memset: elide unaligned handling if hardware supports
  ARCv2: memset: rewrite using double load/stores
  ARC: string: use generic C code if no ZOL support
  ARC: delay: elide ZOL
  ARC: checksum: elide ZOL
  ARC: head: elide ZOL
  ARC: build: inhibit ZOL generation by compiler
  ARC: pt_regs: handle the case when ZOL is not supported

 arch/arc/Kconfig                           |  10 ++
 arch/arc/Makefile                          |   3 +
 arch/arc/include/asm/asm-macro-dbnz-emul.h |  12 ++
 arch/arc/include/asm/asm-macro-dbnz.h      |   8 ++
 arch/arc/include/asm/asm-macro-ll64-emul.h |  31 +++++
 arch/arc/include/asm/asm-macro-ll64.h      |  20 +++
 arch/arc/include/asm/assembler.h           |  41 ++++++
 arch/arc/include/asm/checksum.h            |  58 +++++++-
 arch/arc/include/asm/delay.h               |  16 +++
 arch/arc/include/asm/entry-arcv2.h         |   4 +
 arch/arc/include/asm/entry.h               |   2 +
 arch/arc/include/asm/ptrace.h              |   4 +-
 arch/arc/include/asm/string.h              |  15 ++-
 arch/arc/include/asm/uaccess.h             |  29 ++--
 arch/arc/kernel/arcksyms.c                 |   2 +
 arch/arc/kernel/asm-offsets.c              |   2 +
 arch/arc/kernel/disasm.c                   |   2 +
 arch/arc/kernel/head.S                     |   8 +-
 arch/arc/kernel/intc-arcv2.c               |   2 +
 arch/arc/kernel/kgdb.c                     |   4 +
 arch/arc/kernel/process.c                  |   2 +
 arch/arc/kernel/ptrace.c                   |  12 ++
 arch/arc/kernel/signal.c                   |   8 ++
 arch/arc/kernel/troubleshoot.c             |   3 +
 arch/arc/kernel/unaligned.c                |   2 +
 arch/arc/kernel/vmlinux.lds.S              |   2 +-
 arch/arc/lib/Makefile                      |   6 +
 arch/arc/lib/memset-archs.S                | 147 +++++++++------------
 arch/arc/lib/uaccess.S                     | 144 ++++++++++++++++++++
 arch/arc/mm/extable.c                      |  11 --
 30 files changed, 493 insertions(+), 117 deletions(-)
 create mode 100644 arch/arc/include/asm/asm-macro-dbnz-emul.h
 create mode 100644 arch/arc/include/asm/asm-macro-dbnz.h
 create mode 100644 arch/arc/include/asm/asm-macro-ll64-emul.h
 create mode 100644 arch/arc/include/asm/asm-macro-ll64.h
 create mode 100644 arch/arc/include/asm/assembler.h
 create mode 100644 arch/arc/lib/uaccess.S

-- 
2.25.1


_______________________________________________
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc

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

end of thread, other threads:[~2022-03-23 10:09 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-02-22 14:14 [RFC PATCH 00/13] ARC: handle the lack of ZOL support Sergey Matyukevich
2022-02-22 14:14 ` [RFC PATCH 01/13] ARC: uaccess: elide unaligned handling if hardware supports Sergey Matyukevich
2022-02-22 14:14 ` [RFC PATCH 02/13] ARC: Kconfig: introduce option to disable ZOL Sergey Matyukevich
2022-02-22 14:14 ` [RFC PATCH 03/13] ARC: uaccess: drop CC_OPTIMIZE_FOR_SIZE Sergey Matyukevich
2022-02-22 14:14 ` [RFC PATCH 04/13] ARC: uaccess: elide ZOL, use double load/stores Sergey Matyukevich
2022-02-22 14:14 ` [RFC PATCH 05/13] ARCv2: memset: don't prefetch for len == 0 which happens a lot Sergey Matyukevich
2022-02-22 14:14 ` [RFC PATCH 06/13] ARCv2: memset: elide unaligned handling if hardware supports Sergey Matyukevich
2022-02-22 14:15 ` [RFC PATCH 07/13] ARCv2: memset: rewrite using double load/stores Sergey Matyukevich
2022-02-22 14:15 ` [RFC PATCH 08/13] ARC: string: use generic C code if no ZOL support Sergey Matyukevich
2022-02-22 14:15 ` [RFC PATCH 09/13] ARC: delay: elide ZOL Sergey Matyukevich
2022-02-22 14:15 ` [RFC PATCH 10/13] ARC: checksum: " Sergey Matyukevich
2022-02-22 14:15 ` [RFC PATCH 11/13] ARC: head: " Sergey Matyukevich
2022-02-22 14:15 ` [RFC PATCH 12/13] ARC: build: inhibit ZOL generation by compiler Sergey Matyukevich
2022-02-22 14:15 ` [RFC PATCH 13/13] ARC: pt_regs: handle the case when ZOL is not supported Sergey Matyukevich
2022-02-28  2:09 ` [RFC PATCH 00/13] ARC: handle the lack of ZOL support Vineet Gupta
2022-03-03 19:22   ` Sergey Matyukevich
2022-03-23 10:09   ` [RFC PATCH 00/13] ARC: handle the lack of ZOL supporty Sergey Matyukevich

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox