LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
* [PATCH v4 0/6] Asynchronous notifications from secure world
@ 2021-08-18 10:18 Jens Wiklander
  2021-08-18 10:18 ` [PATCH v4 1/6] docs: staging/tee.rst: add a section on OP-TEE notifications Jens Wiklander
                   ` (5 more replies)
  0 siblings, 6 replies; 10+ messages in thread
From: Jens Wiklander @ 2021-08-18 10:18 UTC (permalink / raw)
  To: linux-kernel, linux-arm-kernel, op-tee, devicetree, linux-doc
  Cc: Jerome Forissier, Etienne Carriere, Sumit Garg, Vincent Guittot,
	Rob Herring, Jonathan Corbet, Ard Biesheuvel, Marc Zyngier,
	Jens Wiklander

Hi all,

This adds support for asynchronous notifications from OP-TEE in secure
world to the OP-TEE driver. This allows a design with a top half and bottom
half type of driver where the top half runs in secure interrupt context and
a notifications tells normal world to schedule a yielding call to do the
bottom half processing.

An edge-triggered interrupt is used to notify the driver that there are
asynchronous notifications pending.

v3->v4:
* Clarfied the expected type of interrypt is edge-triggered, both in
  the normal documentation and in the DT bindings as requested.

v2->v3:
* Rebased on v5.14-rc2 which made the patch "dt-bindings: arm: Convert
  optee binding to json-schema" from the V2 patch set obsolete.
* Applied Ard's Acked-by on "optee: add asynchronous notifications"

v1->v2:
* Added documentation
* Converted optee bindings to json-schema and added interrupt property
* Configure notification interrupt from DT instead of getting it
  from secure world, suggested by Ard Biesheuvel <ardb@kernel.org>.

Thanks,
Jens

Jens Wiklander (6):
  docs: staging/tee.rst: add a section on OP-TEE notifications
  dt-bindings: arm: optee: add interrupt property
  tee: fix put order in teedev_close_context()
  tee: add tee_dev_open_helper() primitive
  optee: separate notification functions
  optee: add asynchronous notifications

 .../arm/firmware/linaro,optee-tz.yaml         |   7 +
 Documentation/staging/tee.rst                 |  29 +++
 drivers/tee/optee/Makefile                    |   1 +
 drivers/tee/optee/call.c                      |  27 +++
 drivers/tee/optee/core.c                      |  87 +++++--
 drivers/tee/optee/notif.c                     | 226 ++++++++++++++++++
 drivers/tee/optee/optee_msg.h                 |   9 +
 drivers/tee/optee/optee_private.h             |  23 +-
 drivers/tee/optee/optee_rpc_cmd.h             |  31 +--
 drivers/tee/optee/optee_smc.h                 |  75 +++++-
 drivers/tee/optee/rpc.c                       |  73 +-----
 drivers/tee/tee_core.c                        |  37 ++-
 include/linux/tee_drv.h                       |  27 +++
 13 files changed, 528 insertions(+), 124 deletions(-)
 create mode 100644 drivers/tee/optee/notif.c

-- 
2.31.1


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

end of thread, other threads:[~2021-08-18 18:34 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-18 10:18 [PATCH v4 0/6] Asynchronous notifications from secure world Jens Wiklander
2021-08-18 10:18 ` [PATCH v4 1/6] docs: staging/tee.rst: add a section on OP-TEE notifications Jens Wiklander
2021-08-18 18:27   ` Marc Zyngier
2021-08-18 10:18 ` [PATCH v4 2/6] dt-bindings: arm: optee: add interrupt property Jens Wiklander
2021-08-18 18:24   ` Marc Zyngier
2021-08-18 18:34   ` Rob Herring
2021-08-18 10:18 ` [PATCH v4 3/6] tee: fix put order in teedev_close_context() Jens Wiklander
2021-08-18 10:18 ` [PATCH v4 4/6] tee: add tee_dev_open_helper() primitive Jens Wiklander
2021-08-18 10:18 ` [PATCH v4 5/6] optee: separate notification functions Jens Wiklander
2021-08-18 10:18 ` [PATCH v4 6/6] optee: add asynchronous notifications Jens Wiklander

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).