accel/amdxdna: Support hardware mailbox
authorLizhi Hou <lizhi.hou@amd.com>
Mon, 18 Nov 2024 17:29:35 +0000 (09:29 -0800)
committerJeffrey Hugo <quic_jhugo@quicinc.com>
Fri, 22 Nov 2024 18:41:54 +0000 (11:41 -0700)
commitb87f920b934426a24d54613f12ed67c03ae05024
tree10ace448b1baf9315b95443bdd2c8c6ae5d464aa
parent8c9ff1b181ba3d31d6b4a48606248b52180a7046
accel/amdxdna: Support hardware mailbox

The hardware mailboxes are used by the driver to submit requests to
firmware and receive the completion notices from hardware.

Initially, a management mailbox channel is up and running. The driver may
request firmware to create/destroy more channels dynamically through
management channel.

Add driver internal mailbox interfaces.
  - create/destroy a mailbox channel instance
  - send a message to the firmware through a specific channel
  - wait for a notification from the specific channel

Co-developed-by: George Yang <George.Yang@amd.com>
Signed-off-by: George Yang <George.Yang@amd.com>
Co-developed-by: Min Ma <min.ma@amd.com>
Signed-off-by: Min Ma <min.ma@amd.com>
Reviewed-by: Jeffrey Hugo <quic_jhugo@quicinc.com>
Signed-off-by: Lizhi Hou <lizhi.hou@amd.com>
Signed-off-by: Jeffrey Hugo <quic_jhugo@quicinc.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20241118172942.2014541-4-lizhi.hou@amd.com
18 files changed:
MAINTAINERS
drivers/accel/amdxdna/Makefile
drivers/accel/amdxdna/aie2_message.c [new file with mode: 0644]
drivers/accel/amdxdna/aie2_msg_priv.h [new file with mode: 0644]
drivers/accel/amdxdna/aie2_pci.c
drivers/accel/amdxdna/aie2_pci.h
drivers/accel/amdxdna/aie2_psp.c
drivers/accel/amdxdna/amdxdna_mailbox.c [new file with mode: 0644]
drivers/accel/amdxdna/amdxdna_mailbox.h [new file with mode: 0644]
drivers/accel/amdxdna/amdxdna_mailbox_helper.c [new file with mode: 0644]
drivers/accel/amdxdna/amdxdna_mailbox_helper.h [new file with mode: 0644]
drivers/accel/amdxdna/amdxdna_pci_drv.h
drivers/accel/amdxdna/amdxdna_sysfs.c
drivers/accel/amdxdna/npu1_regs.c
drivers/accel/amdxdna/npu2_regs.c
drivers/accel/amdxdna/npu4_regs.c
drivers/accel/amdxdna/npu5_regs.c
include/trace/events/amdxdna.h [new file with mode: 0644]