linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 00/17] firmware: arm_ffa: Add FF-A v1.1 support(notification + new memory descriptor format)
@ 2023-09-29 15:02 Sudeep Holla
  2023-09-29 15:02 ` [PATCH v3 01/17] firmware: arm_ffa: Update the FF-A command list with v1.1 additions Sudeep Holla
                   ` (16 more replies)
  0 siblings, 17 replies; 30+ messages in thread
From: Sudeep Holla @ 2023-09-29 15:02 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel, Sudeep Holla, Marc Bonnici,
	Jens Wiklander, Coboy Chen, Lorenzo Pieralisi, Olivier Deprez
  Cc: Marc Zyngier, Oliver Upton, Will Deacon, Quentin Perret

The series adds initial support for the notifications and memory transaction
descriptor changes added in FF-A v1.1 specification.

The notification mechanism enables a requester/sender endpoint to notify
a service provider/receiver endpoint about an event with non-blocking
semantics.

A notification is akin to the doorbell between two endpoints in a
communication protocol that is based upon the doorbell/mailbox mechanism.

The framework is responsible for the delivery of the notification from the
sender to the receiver without blocking the sender. The receiver endpoint
relies on the OS scheduler for allocation of CPU cycles to handle a
notification.

OS is referred as the receiver’s scheduler in the context of notifications.
The framework is responsible for informing the receiver’s scheduler that
the receiver must be run since it has a pending notification.

The series also includes support for the new format of memory transaction
descriptors.

Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
---
Changes in v2:
- Added a fix for MEMORY LEND operation
- Upgraded the driver version
- Added support for the new format of memory transaction descriptors
- Remove unnecessary partition ID information in the notification
  callbacks
- Fixed setting up drv_info->sched_recv_irq before enabling the SGIs
- Added missing resetting of bitmap_created in notifications_cleanup()
- Added some comments about GICv3 and SGI assumption
- Removed partition ID from the notification hash table entries as
  they are redundant/incorrect. Added the notification type instead
  (SP/VM/Framework)
- Link to v1: https://lore.kernel.org/all/20230803-ffa_v1-1_notif-v1-0-6613ff2b1f81@arm.com/

Changes in v3:
- Fixed ffa_mem_desc_offset() to not use possibly unpopulated structure members
- Fixed the parameter of handle_notif_callbacks(), must be notification type
  instead of the partition ID.
- Fetch only secure partitions and SPM framework bitmaps until we add support
  to this driver run in other than NS physical instance.
- Swapped back PACK_TARGET_INFO() arguments which I swapped in v2 with some
  confusion during the review.
- Link to v2: https://lore.kernel.org/r/20230919-ffa_v1-1_notif-v2-0-6f3a3ca3923c@arm.com

---
Sudeep Holla (17):
      firmware: arm_ffa: Update the FF-A command list with v1.1 additions
      firmware: arm_ffa: Implement notification bitmap create and destroy interfaces
      firmware: arm_ffa: Implement the notification bind and unbind interface
      firmware: arm_ffa: Implement the FFA_RUN interface
      firmware: arm_ffa: Implement the FFA_NOTIFICATION_SET interface
      firmware: arm_ffa: Implement the FFA_NOTIFICATION_GET interface
      firmware: arm_ffa: Implement the NOTIFICATION_INFO_GET interface
      firmware: arm_ffa: Initial support for scheduler receiver interrupt
      firmware: arm_ffa: Add schedule receiver callback mechanism
      firmware: arm_ffa: Add interfaces to request notification callbacks
      firmware: arm_ffa: Add interface to send a notification to a given partition
      firmware: arm_ffa: Add notification handling mechanism
      firmware: arm_ffa: Simplify the computation of transmit and fragment length
      KVM: arm64: FFA: Remove access of endpoint memory access descriptor array
      firmware: arm_ffa: Switch to using ffa_mem_desc_offset() accessor
      firmware: arm_ffa: Update memory descriptor to support v1.1 format
      firmware: arm_ffa: Upgrade the driver version to v1.1

 arch/arm64/kvm/hyp/nvhe/ffa.c     |   8 +-
 drivers/firmware/arm_ffa/driver.c | 757 +++++++++++++++++++++++++++++++++++++-
 include/linux/arm_ffa.h           |  78 +++-
 3 files changed, 818 insertions(+), 25 deletions(-)
---
base-commit: 2a4ec21976317b1ce8c5cd3e4fcd9e5d769c8fc4
change-id: 20230803-ffa_v1-1_notif-e11bc9459962

Best regards,
-- 
Regards,
Sudeep


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

end of thread, other threads:[~2023-10-05  9:57 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-09-29 15:02 [PATCH v3 00/17] firmware: arm_ffa: Add FF-A v1.1 support(notification + new memory descriptor format) Sudeep Holla
2023-09-29 15:02 ` [PATCH v3 01/17] firmware: arm_ffa: Update the FF-A command list with v1.1 additions Sudeep Holla
2023-09-29 15:02 ` [PATCH v3 02/17] firmware: arm_ffa: Implement notification bitmap create and destroy interfaces Sudeep Holla
2023-09-29 15:02 ` [PATCH v3 03/17] firmware: arm_ffa: Implement the notification bind and unbind interface Sudeep Holla
2023-10-04  9:11   ` Jens Wiklander
2023-10-04  9:50     ` Olivier Deprez
2023-10-04 15:32       ` Sudeep Holla
2023-10-05  6:57         ` Jens Wiklander
2023-10-05  8:49           ` Sudeep Holla
2023-10-05  9:56             ` Jens Wiklander
2023-09-29 15:02 ` [PATCH v3 04/17] firmware: arm_ffa: Implement the FFA_RUN interface Sudeep Holla
2023-09-29 15:02 ` [PATCH v3 05/17] firmware: arm_ffa: Implement the FFA_NOTIFICATION_SET interface Sudeep Holla
2023-09-29 15:02 ` [PATCH v3 06/17] firmware: arm_ffa: Implement the FFA_NOTIFICATION_GET interface Sudeep Holla
2023-09-29 15:02 ` [PATCH v3 07/17] firmware: arm_ffa: Implement the NOTIFICATION_INFO_GET interface Sudeep Holla
2023-10-04  9:10   ` Jens Wiklander
2023-10-04 15:11     ` Sudeep Holla
2023-10-05  6:30       ` Jens Wiklander
2023-09-29 15:02 ` [PATCH v3 08/17] firmware: arm_ffa: Initial support for scheduler receiver interrupt Sudeep Holla
2023-09-29 15:02 ` [PATCH v3 09/17] firmware: arm_ffa: Add schedule receiver callback mechanism Sudeep Holla
2023-09-29 15:02 ` [PATCH v3 10/17] firmware: arm_ffa: Add interfaces to request notification callbacks Sudeep Holla
2023-09-29 15:03 ` [PATCH v3 11/17] firmware: arm_ffa: Add interface to send a notification to a given partition Sudeep Holla
2023-09-29 15:03 ` [PATCH v3 12/17] firmware: arm_ffa: Add notification handling mechanism Sudeep Holla
2023-09-29 15:03 ` [PATCH v3 13/17] firmware: arm_ffa: Simplify the computation of transmit and fragment length Sudeep Holla
2023-09-29 15:03 ` [PATCH v3 14/17] KVM: arm64: FFA: Remove access of endpoint memory access descriptor array Sudeep Holla
2023-10-02 16:20   ` Sudeep Holla
2023-10-04 10:08   ` Marc Zyngier
2023-10-04 13:22     ` Sudeep Holla
2023-09-29 15:03 ` [PATCH v3 15/17] firmware: arm_ffa: Switch to using ffa_mem_desc_offset() accessor Sudeep Holla
2023-09-29 15:03 ` [PATCH v3 16/17] firmware: arm_ffa: Update memory descriptor to support v1.1 format Sudeep Holla
2023-09-29 15:03 ` [PATCH v3 17/17] firmware: arm_ffa: Upgrade the driver version to v1.1 Sudeep Holla

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).