All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/9] firmware: Add initial support for Arm FF-A
@ 2020-08-29 17:09 ` Sudeep Holla
  0 siblings, 0 replies; 48+ messages in thread
From: Sudeep Holla @ 2020-08-29 17:09 UTC (permalink / raw)
  To: linux-arm-kernel, devicetree
  Cc: Sudeep Holla, kernel-team, Will Deacon, tsoni, pratikp

Hi all,

Let me start stating this is just initial implementation to check on
the idea of providing more in-kernel and userspace support. Lot of things
are still work in progress, I am posting just to get the early feedback
before building lot of things on this idea. Consider this more as RFC
though not tagged explicity(just to avoid it being ignored :))

Arm Firmware Framework for Armv8-A specification[1] describes a software
architecture that provides mechanism to utilise the virtualization
extension to isolate software images and describes interfaces that
standardize communication between the various software images. This
includes communication between images in the Secure and Normal world.

The main idea here is to create FFA device to establish any communication
with a partition(secure or normal world VM).

If it is a partition managed by hypervisor, then we will register chardev
associated with each of those partition FFA device.

/dev/arm_ffa:

self
e3a48fa5-dc54-4a8b-898b-bdc4dfeeb7b8
49f65057-d002-4ae2-b4ee-d31c7940a13d

For in-kernel usage(mostly communication with secure partitions), only
in-kernel APIs are accessible(no userspace). There may be a need to
provide userspace access instead of in-kernel, it is not yet support
in this series as we need way to identify those and I am not sure if
that belong to DT.

--
Regards,
Sudeep

[1] https://developer.arm.com/documentation/den0077/latest

Sudeep Holla (8):
  dt-bindings: Arm: Extend FF-A binding to support in-kernel usage of
    partitions
  arm64: smccc: Add support for SMCCCv1.2 input/output registers
  firmware: smccc: export both smccc functions
  firmware: arm_ffa: Add initial FFA bus support for device enumeration
  firmware: arm_ffa: Add initial Arm FFA driver support
  firmware: arm_ffa: Add support for SMCCC as transport to FFA driver
  firmware: arm_ffa: Setup and register all the KVM managed partitions
  firmware: arm_ffa: Setup in-kernel users of FFA partitions

Will Deacon (1):
  dt-bindings: Arm: Add Firmware Framework for Armv8-A (FF-A) binding

 .../devicetree/bindings/arm/arm,ffa.yaml      | 132 +++
 .../reserved-memory/arm,ffa-memory.yaml       |  71 ++
 arch/arm64/kernel/asm-offsets.c               |   4 +
 arch/arm64/kernel/smccc-call.S                |  22 +
 drivers/firmware/Kconfig                      |   1 +
 drivers/firmware/Makefile                     |   1 +
 drivers/firmware/arm_ffa/Kconfig              |  21 +
 drivers/firmware/arm_ffa/Makefile             |   5 +
 drivers/firmware/arm_ffa/bus.c                | 195 +++++
 drivers/firmware/arm_ffa/common.h             |  27 +
 drivers/firmware/arm_ffa/driver.c             | 755 ++++++++++++++++++
 drivers/firmware/arm_ffa/smccc.c              |  54 ++
 drivers/firmware/smccc/smccc.c                |   2 +
 include/linux/arm-smccc.h                     |  50 ++
 include/linux/arm_ffa.h                       |  96 +++
 include/uapi/linux/arm_ffa.h                  |  56 ++
 16 files changed, 1492 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/arm/arm,ffa.yaml
 create mode 100644 Documentation/devicetree/bindings/reserved-memory/arm,ffa-memory.yaml
 create mode 100644 drivers/firmware/arm_ffa/Kconfig
 create mode 100644 drivers/firmware/arm_ffa/Makefile
 create mode 100644 drivers/firmware/arm_ffa/bus.c
 create mode 100644 drivers/firmware/arm_ffa/common.h
 create mode 100644 drivers/firmware/arm_ffa/driver.c
 create mode 100644 drivers/firmware/arm_ffa/smccc.c
 create mode 100644 include/linux/arm_ffa.h
 create mode 100644 include/uapi/linux/arm_ffa.h

-- 
2.17.1


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

end of thread, other threads:[~2020-11-03 16:01 UTC | newest]

Thread overview: 48+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-08-29 17:09 [PATCH 0/9] firmware: Add initial support for Arm FF-A Sudeep Holla
2020-08-29 17:09 ` Sudeep Holla
2020-08-29 17:09 ` [PATCH 1/9] dt-bindings: Arm: Add Firmware Framework for Armv8-A (FF-A) binding Sudeep Holla
2020-08-29 17:09   ` Sudeep Holla
2020-09-01 16:03   ` Jonathan Cameron
2020-09-01 16:03     ` Jonathan Cameron
2020-09-07 11:40     ` Sudeep Holla
2020-09-07 11:40       ` Sudeep Holla
2020-09-02 22:14   ` Rob Herring
2020-09-02 22:14     ` Rob Herring
2020-11-03 15:59     ` Sudeep Holla
2020-11-03 15:59       ` Sudeep Holla
2020-08-29 17:09 ` [PATCH 2/9] dt-bindings: Arm: Extend FF-A binding to support in-kernel usage of partitions Sudeep Holla
2020-08-29 17:09   ` Sudeep Holla
2020-09-02 21:36   ` Rob Herring
2020-09-02 21:36     ` Rob Herring
2020-09-07 11:41     ` Sudeep Holla
2020-09-07 11:41       ` Sudeep Holla
2020-08-29 17:09 ` [PATCH 3/9] arm64: smccc: Add support for SMCCCv1.2 input/output registers Sudeep Holla
2020-08-29 17:09   ` Sudeep Holla
2020-08-29 17:09 ` [PATCH 4/9] firmware: smccc: export both smccc functions Sudeep Holla
2020-08-29 17:09   ` Sudeep Holla
2020-08-29 17:09 ` [PATCH 5/9] firmware: arm_ffa: Add initial FFA bus support for device enumeration Sudeep Holla
2020-08-29 17:09   ` Sudeep Holla
2020-08-29 17:09 ` [PATCH 6/9] firmware: arm_ffa: Add initial Arm FFA driver support Sudeep Holla
2020-08-29 17:09   ` Sudeep Holla
2020-09-07  7:55   ` Fuad Tabba
2020-09-07  7:55     ` Fuad Tabba
2020-09-07  9:29     ` Sudeep Holla
2020-09-07  9:29       ` Sudeep Holla
2020-08-29 17:09 ` [PATCH 7/9] firmware: arm_ffa: Add support for SMCCC as transport to FFA driver Sudeep Holla
2020-08-29 17:09   ` Sudeep Holla
2020-09-01 16:23   ` Jonathan Cameron
2020-09-01 16:23     ` Jonathan Cameron
2020-08-29 17:09 ` [PATCH 8/9] firmware: arm_ffa: Setup and register all the KVM managed partitions Sudeep Holla
2020-08-29 17:09   ` Sudeep Holla
2020-09-01 16:34   ` Jonathan Cameron
2020-09-01 16:34     ` Jonathan Cameron
2020-09-07 11:20   ` Achin Gupta
2020-09-07 11:20     ` Achin Gupta
2020-08-29 17:09 ` [PATCH 9/9] firmware: arm_ffa: Setup in-kernel users of FFA partitions Sudeep Holla
2020-08-29 17:09   ` Sudeep Holla
2020-09-01 16:38   ` Jonathan Cameron
2020-09-01 16:38     ` Jonathan Cameron
2020-09-07 11:32   ` Achin Gupta
2020-09-07 11:32     ` Achin Gupta
2020-09-07 12:04     ` Andrew Walbran
2020-09-07 12:04       ` Andrew Walbran

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.