mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH 0/6] openrisc: support for l.lwa and l.swa atomic instructions
@ 2014-07-23 21:18 Stefan Kristiansson
  2014-07-23 21:18 ` [PATCH 1/6] openrisc: add Kconfig " Stefan Kristiansson
                   ` (5 more replies)
  0 siblings, 6 replies; 10+ messages in thread
From: Stefan Kristiansson @ 2014-07-23 21:18 UTC (permalink / raw)
  To: linux-kernel, linux; +Cc: jonas, Stefan Kristiansson

The latest revision (v1.1-0) of the OpenRISC 1000 architecture
specification [1], adds definitions for load-linked/store-conditional
type of atomic instructions.

There are already a couple of implementations available that has support
for these instructions implemented.
E.g. a hardware implementation - mor1kx and a functional simulator - or1ksim.

This series of patches takes these new instructions into use to create hardware
assisted versions of atomic/bitops/cmpxchg.
It also enables proper support for futexes, something that hasn't been available
previously.

[1] https://github.com/openrisc/doc/blob/master/openrisc-arch-1.1-rev0.pdf?raw=true

Stefan Kristiansson (6):
  openrisc: add Kconfig for l.lwa and l.swa atomic instructions
  openrisc: add atomic bitops
  openrisc: add cmpxchg and xchg implementations
  openrisc: add atomic operations implementations
  openrisc: include l.swa in check for write data pagefault
  openrisc: add futex_atomic_* implementations

 arch/openrisc/Kconfig                     |   7 ++
 arch/openrisc/include/asm/Kbuild          |   4 -
 arch/openrisc/include/asm/atomic.h        |  88 +++++++++++++++++++
 arch/openrisc/include/asm/bitops.h        |   2 +-
 arch/openrisc/include/asm/bitops/atomic.h | 109 +++++++++++++++++++++++
 arch/openrisc/include/asm/cmpxchg.h       |  83 ++++++++++++++++++
 arch/openrisc/include/asm/futex.h         | 140 ++++++++++++++++++++++++++++++
 arch/openrisc/kernel/entry.S              |   2 +-
 8 files changed, 429 insertions(+), 6 deletions(-)
 create mode 100644 arch/openrisc/include/asm/atomic.h
 create mode 100644 arch/openrisc/include/asm/bitops/atomic.h
 create mode 100644 arch/openrisc/include/asm/cmpxchg.h
 create mode 100644 arch/openrisc/include/asm/futex.h

-- 
1.8.3.2


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

end of thread, other threads:[~2014-07-24 20:35 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-07-23 21:18 [PATCH 0/6] openrisc: support for l.lwa and l.swa atomic instructions Stefan Kristiansson
2014-07-23 21:18 ` [PATCH 1/6] openrisc: add Kconfig " Stefan Kristiansson
2014-07-23 21:26   ` One Thousand Gnomes
2014-07-24 19:52     ` Stefan Kristiansson
2014-07-24 20:34       ` One Thousand Gnomes
2014-07-23 21:18 ` [PATCH 2/6] openrisc: add atomic bitops Stefan Kristiansson
2014-07-23 21:18 ` [PATCH 3/6] openrisc: add cmpxchg and xchg implementations Stefan Kristiansson
2014-07-23 21:18 ` [PATCH 4/6] openrisc: add atomic operations implementations Stefan Kristiansson
2014-07-23 21:18 ` [PATCH 5/6] openrisc: include l.swa in check for write data pagefault Stefan Kristiansson
2014-07-23 21:18 ` [PATCH 6/6] openrisc: add futex_atomic_* implementations Stefan Kristiansson

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

all inboxes | Powered by JetHome®