accel/amdxdna: Add hardware context
authorLizhi Hou <lizhi.hou@amd.com>
Mon, 18 Nov 2024 17:29:37 +0000 (09:29 -0800)
committerJeffrey Hugo <quic_jhugo@quicinc.com>
Fri, 22 Nov 2024 18:42:42 +0000 (11:42 -0700)
commitbe462c97b7dfd24999babe39cce3de224ebe1f80
treedb32fd45e65d551c559e0fafc5dcabacdc6c08bd
parentc88d3325ae69b30be7bb80080d211dbfced8003f
accel/amdxdna: Add hardware context

The hardware can be shared among multiple user applications. The
hardware resources are allocated/freed based on the request from
user application via driver IOCTLs.

DRM_IOCTL_AMDXDNA_CREATE_HWCTX
Allocate tile columns and create a hardware context structure to track the
usage and status of the resources. A hardware context ID is returned for
XDNA command execution.

DRM_IOCTL_AMDXDNA_DESTROY_HWCTX
Release hardware context based on its ID. The tile columns belong to
this hardware context will be reclaimed.

DRM_IOCTL_AMDXDNA_CONFIG_HWCTX
Config hardware context. Bind the hardware context to the required
resources.

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-6-lizhi.hou@amd.com
drivers/accel/amdxdna/Makefile
drivers/accel/amdxdna/aie2_ctx.c [new file with mode: 0644]
drivers/accel/amdxdna/aie2_message.c
drivers/accel/amdxdna/aie2_pci.c
drivers/accel/amdxdna/aie2_pci.h
drivers/accel/amdxdna/amdxdna_ctx.c [new file with mode: 0644]
drivers/accel/amdxdna/amdxdna_ctx.h [new file with mode: 0644]
drivers/accel/amdxdna/amdxdna_pci_drv.c
drivers/accel/amdxdna/amdxdna_pci_drv.h
include/uapi/drm/amdxdna_accel.h