Re: [PATCH V2 00/10] AMD XDNA driver

2024-09-03 Thread Lizhi Hou
13:06, Lizhi Hou wrote: On 8/14/24 11:49, Jeffrey Hugo wrote: On 8/12/2024 12:16 PM, Lizhi Hou wrote: On 8/9/24 08:21, Jeffrey Hugo wrote: On 8/5/2024 11:39 AM, Lizhi Hou wrote: This patchset introduces a new Linux Kernel Driver, amdxdna for AMD NPUs. The driver is based on Linux accel

[PATCH V1 00/10] AMD XDNA driver

2024-07-19 Thread Lizhi Hou
binary, and has already been pushed to the DRM firmware repository [4]. [1] https://www.amd.com/en/technologies/xdna.html [2] https://github.com/Xilinx/XRT [3] https://github.com/nod-ai/iree-amd-aie [4] https://gitlab.freedesktop.org/drm/firmware/-/tree/amd-ipu-staging/amdnpu Lizhi Hou (10): accel

[PATCH V1 03/10] accel/amdxdna: Add hardware resource solver

2024-07-19 Thread Lizhi Hou
-by: Lizhi Hou --- drivers/accel/amdxdna/Makefile | 1 + drivers/accel/amdxdna/aie2_pci.c| 23 +- drivers/accel/amdxdna/aie2_solver.c | 329 drivers/accel/amdxdna/aie2_solver.h | 156 + drivers/accel/amdxdna/amdxdna_drm.h | 1 + 5 files changed

[PATCH V1 05/10] accel/amdxdna: Add GEM buffer object management

2024-07-19 Thread Lizhi Hou
buffer object created for delivering commands. The command buffer object is small and pinned on creation. New IOCTLs are added: CREATE_BO, GET_BO_INFO, SYNC_BO. SYNC_BO is used to explicitly flush CPU cache for BO memory. Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou

[PATCH V1 01/10] accel/amdxdna: Add a new driver for AMD AI Engine

2024-07-19 Thread Lizhi Hou
hardware initialization Co-developed-by: Narendra Gutta Signed-off-by: Narendra Gutta Co-developed-by: George Yang Signed-off-by: George Yang Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- MAINTAINERS | 8 ++ drivers/accel/Kconfig

[PATCH V1 04/10] accel/amdxdna: Add hardware context

2024-07-19 Thread Lizhi Hou
the required resources. Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/Makefile | 2 + drivers/accel/amdxdna/aie2_ctx.c| 181 drivers/accel/amdxdna/aie2_message.c| 87 ++ drivers/accel

[PATCH V1 06/10] accel/amdxdna: Add command execution

2024-07-19 Thread Lizhi Hou
Add interfaces for user application to submit command and wait for its completion. Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/aie2_ctx.c | 618 ++- drivers/accel/amdxdna/aie2_message.c | 341

[PATCH V1 02/10] accel/amdxdna: Support hardware mailbox

2024-07-19 Thread Lizhi Hou
Ma Signed-off-by: Lizhi Hou --- MAINTAINERS | 1 + drivers/accel/amdxdna/Makefile| 3 + drivers/accel/amdxdna/aie2_message.c | 187 ++ drivers/accel/amdxdna/aie2_msg_priv.h | 372 +++ drivers/accel/amdxdna

[PATCH V1 07/10] accel/amdxdna: Add suspend and resume

2024-07-19 Thread Lizhi Hou
Implement PCI power management suspend and resume callbacks. Co-developed-by: Narendra Gutta Signed-off-by: Narendra Gutta Co-developed-by: Xiaoming Ren Signed-off-by: Xiaoming Ren Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/aie2_ctx.c

[PATCH V1 08/10] accel/amdxdna: Add error handling

2024-07-19 Thread Lizhi Hou
using the column where error occurred. Then the driver resets that column. Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/Makefile | 1 + drivers/accel/amdxdna/aie2_error.c | 349 +++ drivers/accel/amdxdna

[PATCH V1 09/10] accel/amdxdna: Add query functions

2024-07-19 Thread Lizhi Hou
Add GET_INFO ioctl to retrieve hardware information, including AIE, clock, hardware context etc. Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/aie2_message.c | 65 drivers/accel/amdxdna/aie2_pci.c | 221

[PATCH V1 10/10] accel/amdxdna: Add firmware debug buffer support

2024-07-19 Thread Lizhi Hou
User application may allocate a debug buffer and attach it to an NPU context through the driver. Then the NPU firmware prints its debug information to this buffer for debugging. Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/aie2_ctx.c| 45

Re: [PATCH 01/10] accel/amdxdna: Add a new driver for AMD AI Engine

2024-07-19 Thread Lizhi Hou
On 7/19/24 12:42, Markus Elfring wrote: … +++ b/drivers/accel/amdxdna/amdxdna_pci_drv.c @@ -0,0 +1,118 @@ … +static int amdxdna_probe(struct pci_dev *pdev, const struct pci_device_id *id) +{ … + mutex_lock(&xdna->dev_lock); + ret = xdna->dev_info->ops->init(xdna); + mutex

Re: [PATCH 04/10] accel/amdxdna: Add hardware context

2024-07-22 Thread Lizhi Hou
On 7/20/24 03:54, Markus Elfring wrote: … The tile columns belong to … which …? … +++ b/drivers/accel/amdxdna/aie2_ctx.c @@ -0,0 +1,181 @@ … +void aie2_hwctx_fini(struct amdxdna_hwctx *h

[PATCH V2 00/10] AMD XDNA driver

2024-08-05 Thread Lizhi Hou
: - Remove some inline defines - Minor changes based code review comments Lizhi Hou (10): accel/amdxdna: Add a new driver for AMD AI Engine accel/amdxdna: Support hardware mailbox accel/amdxdna: Add hardware resource solver accel/amdxdna: Add hardware context accel/amdxdna: Add GEM buffer object

[PATCH V2 01/10] accel/amdxdna: Add a new driver for AMD AI Engine

2024-08-05 Thread Lizhi Hou
hardware initialization Co-developed-by: Narendra Gutta Signed-off-by: Narendra Gutta Co-developed-by: George Yang Signed-off-by: George Yang Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- MAINTAINERS | 8 ++ drivers/accel/Kconfig

[PATCH V2 02/10] accel/amdxdna: Support hardware mailbox

2024-08-05 Thread Lizhi Hou
Ma Signed-off-by: Lizhi Hou --- MAINTAINERS | 1 + drivers/accel/amdxdna/Makefile| 3 + drivers/accel/amdxdna/aie2_message.c | 187 ++ drivers/accel/amdxdna/aie2_msg_priv.h | 372 +++ drivers/accel/amdxdna

[PATCH V2 03/10] accel/amdxdna: Add hardware resource solver

2024-08-05 Thread Lizhi Hou
The AI Engine consists of 2D array of tiles arranged as columns. Provides the basic column allocation and release functions for the tile columns. Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/Makefile | 1 + drivers/accel/amdxdna

[PATCH V2 06/10] accel/amdxdna: Add command execution

2024-08-05 Thread Lizhi Hou
Add interfaces for user application to submit command and wait for its completion. Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/aie2_ctx.c | 624 ++- drivers/accel/amdxdna/aie2_message.c | 341

[PATCH V2 04/10] accel/amdxdna: Add hardware context

2024-08-05 Thread Lizhi Hou
the required resources. Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/Makefile | 2 + drivers/accel/amdxdna/aie2_ctx.c| 178 drivers/accel/amdxdna/aie2_message.c| 87 ++ drivers/accel

[PATCH V2 07/10] accel/amdxdna: Add suspend and resume

2024-08-05 Thread Lizhi Hou
Implement PCI power management suspend and resume callbacks. Co-developed-by: Narendra Gutta Signed-off-by: Narendra Gutta Co-developed-by: Xiaoming Ren Signed-off-by: Xiaoming Ren Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/aie2_ctx.c

[PATCH V2 05/10] accel/amdxdna: Add GEM buffer object management

2024-08-05 Thread Lizhi Hou
buffer object created for delivering commands. The command buffer object is small and pinned on creation. New IOCTLs are added: CREATE_BO, GET_BO_INFO, SYNC_BO. SYNC_BO is used to explicitly flush CPU cache for BO memory. Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou

[PATCH V2 08/10] accel/amdxdna: Add error handling

2024-08-05 Thread Lizhi Hou
using the column where error occurred. Then the driver resets that column. Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/Makefile | 1 + drivers/accel/amdxdna/aie2_error.c | 349 +++ drivers/accel/amdxdna

[PATCH V2 10/10] accel/amdxdna: Add firmware debug buffer support

2024-08-05 Thread Lizhi Hou
User application may allocate a debug buffer and attach it to an NPU context through the driver. Then the NPU firmware prints its debug information to this buffer for debugging. Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/aie2_ctx.c| 45

[PATCH V2 09/10] accel/amdxdna: Add query functions

2024-08-05 Thread Lizhi Hou
Add GET_INFO ioctl to retrieve hardware information, including AIE, clock, hardware context etc. Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/aie2_message.c | 65 drivers/accel/amdxdna/aie2_pci.c | 221

Re: [PATCH V2 00/10] AMD XDNA driver

2024-08-06 Thread Lizhi Hou
On 8/6/24 01:05, Markus Elfring wrote: … Changes since v1: - Remove some inline defines - Minor changes based code review comments … How “good” does such a version description fit to previous patch review feedback (like the following)? https://lkml.org/lkml/2024/7/19/803 https://lore.kernel

Re: [PATCH V2 01/10] accel/amdxdna: Add a new driver for AMD AI Engine

2024-08-07 Thread Lizhi Hou
On 8/7/24 04:06, Markus Elfring wrote: If you temporarily find the circumstances too challenging for applications of scope-based resource management, I suggest to use the following statements instead (so that a bit of redundant code can be avoided). … +++ b/drivers/accel/amdxdna/aie2_pci.c

Re: [PATCH V2 04/10] accel/amdxdna: Add hardware context

2024-08-08 Thread Lizhi Hou
On 8/8/24 14:34, Alex Deucher wrote: On Mon, Aug 5, 2024 at 1:50 PM Lizhi Hou wrote: 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

Re: [PATCH V2 01/10] accel/amdxdna: Add a new driver for AMD AI Engine

2024-08-12 Thread Lizhi Hou
On 8/9/24 08:24, Carl Vanderlip wrote: On 8/5/2024 10:39 AM, Lizhi Hou wrote: > +static int aie2_init(struct amdxdna_dev *xdna) > +{ > +    struct pci_dev *pdev = to_pci_dev(xdna->ddev.dev); > +    struct amdxdna_dev_hdl *ndev; > +    struct psp_config psp_conf; > +   

Re: [PATCH V2 00/10] AMD XDNA driver

2024-08-12 Thread Lizhi Hou
On 8/9/24 08:21, Jeffrey Hugo wrote: On 8/5/2024 11:39 AM, Lizhi Hou wrote: This patchset introduces a new Linux Kernel Driver, amdxdna for AMD NPUs. The driver is based on Linux accel subsystem. NPU (Neural Processing Unit) is an AI inference accelerator integrated into AMD client CPUs

Re: [PATCH V2 01/10] accel/amdxdna: Add a new driver for AMD AI Engine

2024-08-14 Thread Lizhi Hou
On 8/9/24 09:11, Jeffrey Hugo wrote: On 8/5/2024 11:39 AM, Lizhi Hou wrote: AMD AI Engine forms the core of AMD NPU and can be used for accelerating machine learning applications. Add the driver to support AI Engine integrated to AMD CPU. Only very basic functionalities are added

Re: [PATCH V2 00/10] AMD XDNA driver

2024-08-14 Thread Lizhi Hou
On 8/14/24 11:49, Jeffrey Hugo wrote: On 8/12/2024 12:16 PM, Lizhi Hou wrote: On 8/9/24 08:21, Jeffrey Hugo wrote: On 8/5/2024 11:39 AM, Lizhi Hou wrote: This patchset introduces a new Linux Kernel Driver, amdxdna for AMD NPUs. The driver is based on Linux accel subsystem. NPU (Neural

Re: [PATCH V2 01/10] accel/amdxdna: Add a new driver for AMD AI Engine

2024-08-14 Thread Lizhi Hou
On 8/14/24 11:46, Jeffrey Hugo wrote: On 8/14/2024 12:16 PM, Lizhi Hou wrote: On 8/9/24 09:11, Jeffrey Hugo wrote: On 8/5/2024 11:39 AM, Lizhi Hou wrote: diff --git a/drivers/accel/amdxdna/aie2_pci.c b/drivers/accel/amdxdna/aie2_pci.c new file mode 100644 index ..3660967c00e6

Re: [PATCH V2 02/10] accel/amdxdna: Support hardware mailbox

2024-08-14 Thread Lizhi Hou
On 8/9/24 09:32, Jeffrey Hugo wrote: On 8/5/2024 11:39 AM, Lizhi Hou wrote: +enum aie2_msg_status { +    AIE2_STATUS_SUCCESS    = 0x0, +    /* AIE Error codes */ +    AIE2_STATUS_AIE_SATURATION_ERROR    = 0x101, +    AIE2_STATUS_AIE_FP_ERROR    = 0x102

Re: [PATCH V2 01/10] accel/amdxdna: Add a new driver for AMD AI Engine

2024-08-14 Thread Lizhi Hou
On 8/14/24 14:53, Jeffrey Hugo wrote: On 8/14/2024 2:24 PM, Lizhi Hou wrote: On 8/14/24 11:46, Jeffrey Hugo wrote: On 8/14/2024 12:16 PM, Lizhi Hou wrote: On 8/9/24 09:11, Jeffrey Hugo wrote: On 8/5/2024 11:39 AM, Lizhi Hou wrote: diff --git a/drivers/accel/amdxdna/aie2_pci.c b/drivers

Re: [PATCH V2 09/10] accel/amdxdna: Add query functions

2024-08-19 Thread Lizhi Hou
On 8/9/24 09:42, Jeffrey Hugo wrote: On 8/5/2024 11:39 AM, Lizhi Hou wrote: +/** + * struct amdxdna_drm_query_hwctx - The data for single context. + * @context_id: The ID for this context. + * @start_col: The starting column for the partition assigned to this context. + * @num_col: The

[PATCH V3 02/11] accel/amdxdna: Add a new driver for AMD AI Engine

2024-09-11 Thread Lizhi Hou
hardware initialization Co-developed-by: Narendra Gutta Signed-off-by: Narendra Gutta Co-developed-by: George Yang Signed-off-by: George Yang Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- MAINTAINERS | 9 ++ drivers/accel/Kconfig

[PATCH V3 00/11] AMD XDNA driver

2024-09-11 Thread Lizhi Hou
document amdnpu.rst - Change AIE2_DEVM_SIZE to 64M due to firmware change - Changes based on code review comments Changes since v1: - Remove some inline defines - Minor changes based on code review comments Lizhi Hou (11): accel/amdxdna: Add documentation for AMD NPU accelerator driver accel

[PATCH V3 07/11] accel/amdxdna: Add command execution

2024-09-11 Thread Lizhi Hou
Add interfaces for user application to submit command and wait for its completion. Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/aie2_ctx.c | 626 +- drivers/accel/amdxdna/aie2_message.c | 343

[PATCH V3 05/11] accel/amdxdna: Add hardware context

2024-09-11 Thread Lizhi Hou
the required resources. Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/Makefile | 2 + drivers/accel/amdxdna/aie2_ctx.c| 186 drivers/accel/amdxdna/aie2_message.c| 90 ++ drivers/accel

[PATCH V3 01/11] accel/amdxdna: Add documentation for AMD NPU accelerator driver

2024-09-11 Thread Lizhi Hou
Signed-off-by: Sonal Santan Signed-off-by: Lizhi Hou --- Documentation/accel/amdxdna/amdnpu.rst | 283 + Documentation/accel/amdxdna/index.rst | 11 + Documentation/accel/index.rst | 1 + 3 files changed, 295 insertions(+) create mode 100644 Documentation/accel

[PATCH V3 04/11] accel/amdxdna: Add hardware resource solver

2024-09-11 Thread Lizhi Hou
The AI Engine consists of 2D array of tiles arranged as columns. Provides the basic column allocation and release functions for the tile columns. Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/Makefile | 1 + drivers/accel/amdxdna

[PATCH V3 08/11] accel/amdxdna: Add suspend and resume

2024-09-11 Thread Lizhi Hou
Implement PCI power management suspend and resume callbacks. Co-developed-by: Narendra Gutta Signed-off-by: Narendra Gutta Co-developed-by: Xiaoming Ren Signed-off-by: Xiaoming Ren Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/aie2_ctx.c

[PATCH V3 09/11] accel/amdxdna: Add error handling

2024-09-11 Thread Lizhi Hou
using the column where error occurred. Then the driver resets that column. Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/Makefile | 1 + drivers/accel/amdxdna/aie2_error.c | 356 +++ drivers/accel/amdxdna

[PATCH V3 11/11] accel/amdxdna: Add firmware debug buffer support

2024-09-11 Thread Lizhi Hou
User application may allocate a debug buffer and attach it to an NPU context through the driver. Then the NPU firmware prints its debug information to this buffer for debugging. Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/aie2_ctx.c| 45

[PATCH V3 03/11] accel/amdxdna: Support hardware mailbox

2024-09-11 Thread Lizhi Hou
Ma Signed-off-by: Lizhi Hou --- MAINTAINERS | 1 + drivers/accel/amdxdna/Makefile| 3 + drivers/accel/amdxdna/aie2_message.c | 194 ++ drivers/accel/amdxdna/aie2_msg_priv.h | 370 +++ drivers/accel/amdxdna

[PATCH V3 06/11] accel/amdxdna: Add GEM buffer object management

2024-09-11 Thread Lizhi Hou
buffer object created for delivering commands. The command buffer object is small and pinned on creation. New IOCTLs are added: CREATE_BO, GET_BO_INFO, SYNC_BO. SYNC_BO is used to explicitly flush CPU cache for BO memory. Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou

[PATCH V3 10/11] accel/amdxdna: Add query functions

2024-09-11 Thread Lizhi Hou
Add GET_INFO ioctl to retrieve hardware information, including AIE, clock, hardware context etc. Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/aie2_error.c | 1 + drivers/accel/amdxdna/aie2_message.c| 65 +++ drivers/accel

Re: [PATCH V3 10/11] accel/amdxdna: Add query functions

2024-10-09 Thread Lizhi Hou
On 10/4/24 11:23, Jeffrey Hugo wrote: On 9/11/2024 12:06 PM, Lizhi Hou wrote: diff --git a/drivers/accel/amdxdna/aie2_error.c b/drivers/accel/amdxdna/aie2_error.c index 3b8223420f5b..9dc44ecf2adb 100644 --- a/drivers/accel/amdxdna/aie2_error.c +++ b/drivers/accel/amdxdna/aie2_error.c @@ -3,6

Re: [PATCH V3 11/11] accel/amdxdna: Add firmware debug buffer support

2024-10-09 Thread Lizhi Hou
On 10/4/24 11:33, Jeffrey Hugo wrote: On 9/11/2024 12:06 PM, Lizhi Hou wrote: User application may allocate a debug buffer and attach it to an NPU context through the driver. Then the NPU firmware prints its debug information to this buffer for debugging. I feel like I must be missing

[PATCH V4 10/10] accel/amdxdna: Add query functions

2024-10-11 Thread Lizhi Hou
Add GET_INFO ioctl to retrieve hardware information, including AIE, clock, hardware context etc. Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/aie2_message.c| 65 +++ drivers/accel/amdxdna/aie2_pci.c| 222

[PATCH V4 09/10] accel/amdxdna: Add error handling

2024-10-11 Thread Lizhi Hou
using the column where error occurred. Then the driver resets that column. Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/Makefile | 1 + drivers/accel/amdxdna/aie2_error.c | 356 +++ drivers/accel/amdxdna

[PATCH V4 07/10] accel/amdxdna: Add command execution

2024-10-11 Thread Lizhi Hou
Add interfaces for user application to submit command and wait for its completion. Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/aie2_ctx.c | 624 +- drivers/accel/amdxdna/aie2_message.c | 343

[PATCH V4 04/10] accel/amdxdna: Add hardware resource solver

2024-10-11 Thread Lizhi Hou
The AI Engine consists of 2D array of tiles arranged as columns. Provides the basic column allocation and release functions for the tile columns. Co-developed-by: Min Ma Signed-off-by: Min Ma Reviewed-by: Jeffrey Hugo Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/Makefile | 1

[PATCH V4 06/10] accel/amdxdna: Add GEM buffer object management

2024-10-11 Thread Lizhi Hou
buffer object created for delivering commands. The command buffer object is small and pinned on creation. New IOCTLs are added: CREATE_BO, GET_BO_INFO, SYNC_BO. SYNC_BO is used to explicitly flush CPU cache for BO memory. Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou

[PATCH V4 00/10] AMD XDNA driver

2024-10-11 Thread Lizhi Hou
: - Remove debug BO patch - Changes based on code review comments Changes since v2: - Add document amdnpu.rst - Change AIE2_DEVM_SIZE to 64M due to firmware change - Changes based on code review comments Changes since v1: - Remove some inline defines - Minor changes based on code review comments Lizhi

[PATCH V4 01/10] accel/amdxdna: Add documentation for AMD NPU accelerator driver

2024-10-11 Thread Lizhi Hou
Signed-off-by: Sonal Santan Signed-off-by: Lizhi Hou --- Documentation/accel/amdxdna/amdnpu.rst | 281 + Documentation/accel/amdxdna/index.rst | 11 + Documentation/accel/index.rst | 1 + 3 files changed, 293 insertions(+) create mode 100644 Documentation/accel

[PATCH V4 03/10] accel/amdxdna: Support hardware mailbox

2024-10-11 Thread Lizhi Hou
Ma Signed-off-by: Lizhi Hou --- MAINTAINERS | 1 + drivers/accel/amdxdna/Makefile| 3 + drivers/accel/amdxdna/aie2_message.c | 194 ++ drivers/accel/amdxdna/aie2_msg_priv.h | 370 +++ drivers/accel/amdxdna

[PATCH V4 08/10] accel/amdxdna: Add suspend and resume

2024-10-11 Thread Lizhi Hou
Implement PCI power management suspend and resume callbacks. Co-developed-by: Narendra Gutta Signed-off-by: Narendra Gutta Co-developed-by: Xiaoming Ren Signed-off-by: Xiaoming Ren Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/aie2_ctx.c

[PATCH V4 05/10] accel/amdxdna: Add hardware context

2024-10-11 Thread Lizhi Hou
the required resources. Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/Makefile | 2 + drivers/accel/amdxdna/aie2_ctx.c| 186 drivers/accel/amdxdna/aie2_message.c| 90 ++ drivers/accel

[PATCH V4 02/10] accel/amdxdna: Add a new driver for AMD AI Engine

2024-10-11 Thread Lizhi Hou
hardware initialization Co-developed-by: Narendra Gutta Signed-off-by: Narendra Gutta Co-developed-by: George Yang Signed-off-by: George Yang Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- MAINTAINERS | 9 ++ drivers/accel/Kconfig

Re: [PATCH V3 05/11] accel/amdxdna: Add hardware context

2024-10-06 Thread Lizhi Hou
On 10/4/24 10:50, Jeffrey Hugo wrote: On 9/11/2024 12:05 PM, Lizhi Hou wrote: diff --git a/drivers/accel/amdxdna/aie2_ctx.c b/drivers/accel/amdxdna/aie2_ctx.c new file mode 100644 index ..52a71661f887 --- /dev/null +++ b/drivers/accel/amdxdna/aie2_ctx.c @@ -0,0 +1,186 @@ +// SPDX

Re: [PATCH V3 02/11] accel/amdxdna: Add a new driver for AMD AI Engine

2024-10-06 Thread Lizhi Hou
On 10/4/24 10:21, Jeffrey Hugo wrote: On 9/11/2024 12:05 PM, Lizhi Hou wrote: diff --git a/drivers/accel/amdxdna/aie2_pci.c b/drivers/accel/amdxdna/aie2_pci.c new file mode 100644 index ..e21b32557fc2 --- /dev/null +++ b/drivers/accel/amdxdna/aie2_pci.c @@ -0,0 +1,183 @@ +// SPDX

Re: [PATCH V3 03/11] accel/amdxdna: Support hardware mailbox

2024-10-06 Thread Lizhi Hou
On 10/4/24 10:34, Jeffrey Hugo wrote: On 9/11/2024 12:05 PM, Lizhi Hou wrote: +struct create_ctx_req { +    __u32    aie_type; +    __u8    start_col; +    __u8    num_col; +    __u16    reserved; +    __u8    num_cq_pairs_requested; +    __u8    reserved1; +    __u16    pasid; +    __u32

Re: [PATCH V3 01/11] accel/amdxdna: Add documentation for AMD NPU accelerator driver

2024-10-04 Thread Lizhi Hou
On 10/4/24 10:06, Jeffrey Hugo wrote: On 9/11/2024 12:05 PM, Lizhi Hou wrote: AMD NPU (Neural Processing Unit) is a multi-user AI inference accelerator integrated into AMD client APU. NPU enables efficient execution of Machine Learning applications like CNN, LLM, etc. NPU is based on AMD

Re: [PATCH V3 06/11] accel/amdxdna: Add GEM buffer object management

2024-10-07 Thread Lizhi Hou
On 10/4/24 10:56, Jeffrey Hugo wrote: On 9/11/2024 12:05 PM, Lizhi Hou wrote: +/** + * struct amdxdna_drm_create_bo - Create a buffer object. + * @flags: Buffer flags. MBZ. + * @type: Buffer type. + * @pad1: MBZ. + * @vaddr: User VA of buffer if applied. MBZ. + * @size: Size in bytes

Re: [PATCH V3 07/11] accel/amdxdna: Add command execution

2024-10-07 Thread Lizhi Hou
On 10/4/24 11:01, Jeffrey Hugo wrote: On 9/11/2024 12:06 PM, Lizhi Hou wrote: +enum amdxdna_cmd_type { +    AMDXDNA_CMD_SUBMIT_EXEC_BUF = 0, +    AMDXDNA_CMD_SUBMIT_DEPENDENCY, +    AMDXDNA_CMD_SUBMIT_SIGNAL, +}; + +/** + * struct amdxdna_drm_exec_cmd - Execute command. + * @ext: MBZ

Re: [PATCH V4 09/10] accel/amdxdna: Add error handling

2024-10-18 Thread Lizhi Hou
On 10/18/24 14:01, Jeffrey Hugo wrote: On 10/11/2024 5:12 PM, Lizhi Hou wrote: When there is a hardware error, the NPU firmware notifies the host through a mailbox message. The message includes details of the error, such as the tile and column indexes where the error occurred. The driver

[PATCH V5 04/10] accel/amdxdna: Add hardware resource solver

2024-10-21 Thread Lizhi Hou
The AI Engine consists of 2D array of tiles arranged as columns. Provides the basic column allocation and release functions for the tile columns. Co-developed-by: Min Ma Signed-off-by: Min Ma Reviewed-by: Jeffrey Hugo Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/Makefile | 1

[PATCH V5 00/10] AMD XDNA driver

2024-10-21 Thread Lizhi Hou
: - Remove some inline defines - Minor changes based on code review comments Lizhi Hou (10): accel/amdxdna: Add documentation for AMD NPU accelerator driver accel/amdxdna: Add a new driver for AMD AI Engine accel/amdxdna: Support hardware mailbox accel/amdxdna: Add hardware resource solver

[PATCH V5 07/10] accel/amdxdna: Add command execution

2024-10-21 Thread Lizhi Hou
Add interfaces for user application to submit command and wait for its completion. Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/aie2_ctx.c | 626 +- drivers/accel/amdxdna/aie2_message.c | 343

[PATCH V5 02/10] accel/amdxdna: Add a new driver for AMD AI Engine

2024-10-21 Thread Lizhi Hou
hardware initialization Co-developed-by: Narendra Gutta Signed-off-by: Narendra Gutta Co-developed-by: George Yang Signed-off-by: George Yang Co-developed-by: Min Ma Signed-off-by: Min Ma Reviewed-by: Jeffrey Hugo Signed-off-by: Lizhi Hou --- MAINTAINERS | 9

[PATCH V5 01/10] accel/amdxdna: Add documentation for AMD NPU accelerator driver

2024-10-21 Thread Lizhi Hou
Signed-off-by: Sonal Santan Reviewed-by: Jeffrey Hugo Signed-off-by: Lizhi Hou --- Documentation/accel/amdxdna/amdnpu.rst | 281 + Documentation/accel/amdxdna/index.rst | 11 + Documentation/accel/index.rst | 1 + 3 files changed, 293 insertions(+) create mode

[PATCH V5 03/10] accel/amdxdna: Support hardware mailbox

2024-10-21 Thread Lizhi Hou
Ma Reviewed-by: Jeffrey Hugo Signed-off-by: Lizhi Hou --- MAINTAINERS | 1 + drivers/accel/amdxdna/Makefile| 3 + drivers/accel/amdxdna/aie2_message.c | 194 ++ drivers/accel/amdxdna/aie2_msg_priv.h | 370

[PATCH V5 10/10] accel/amdxdna: Add query functions

2024-10-21 Thread Lizhi Hou
Add GET_INFO ioctl to retrieve hardware information, including AIE, clock, hardware context etc. Co-developed-by: Min Ma Signed-off-by: Min Ma Reviewed-by: Jeffrey Hugo Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/aie2_message.c| 65 +++ drivers/accel/amdxdna/aie2_pci.c

[PATCH V5 08/10] accel/amdxdna: Add suspend and resume

2024-10-21 Thread Lizhi Hou
Implement PCI power management suspend and resume callbacks. Co-developed-by: Narendra Gutta Signed-off-by: Narendra Gutta Co-developed-by: Xiaoming Ren Signed-off-by: Xiaoming Ren Co-developed-by: Min Ma Signed-off-by: Min Ma Reviewed-by: Jeffrey Hugo Signed-off-by: Lizhi Hou

[PATCH V5 06/10] accel/amdxdna: Add GEM buffer object management

2024-10-21 Thread Lizhi Hou
Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/Makefile | 1 + drivers/accel/amdxdna/aie2_ctx.c| 85 +++- drivers/accel/amdxdna/aie2_message.c| 79 +++ drivers/accel/amdxdna/aie2_pci.h| 3 + drivers/accel/amdxdna/amdxdna_ctx.h | 10 + drivers/accel/amdxdna

[PATCH V5 05/10] accel/amdxdna: Add hardware context

2024-10-21 Thread Lizhi Hou
the required resources. Co-developed-by: Min Ma Signed-off-by: Min Ma Reviewed-by: Jeffrey Hugo Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/Makefile | 2 + drivers/accel/amdxdna/aie2_ctx.c| 186 drivers/accel/amdxdna/aie2_message.c| 90

[PATCH V5 09/10] accel/amdxdna: Add error handling

2024-10-21 Thread Lizhi Hou
using the column where error occurred. Then the driver resets that column. Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/Makefile | 1 + drivers/accel/amdxdna/aie2_error.c | 360 +++ drivers/accel/amdxdna

Re: [PATCH V4 07/10] accel/amdxdna: Add command execution

2024-10-16 Thread Lizhi Hou
On 10/14/24 19:13, Matthew Brost wrote: On Fri, Oct 11, 2024 at 04:12:41PM -0700, Lizhi Hou wrote: Add interfaces for user application to submit command and wait for its completion. Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna

Re: [PATCH V3 11/11] accel/amdxdna: Add firmware debug buffer support

2024-10-09 Thread Lizhi Hou
On 10/9/24 09:22, Lizhi Hou wrote: On 10/4/24 11:33, Jeffrey Hugo wrote: On 9/11/2024 12:06 PM, Lizhi Hou wrote: User application may allocate a debug buffer and attach it to an NPU context through the driver. Then the NPU firmware prints its debug information to this buffer for debugging

Re: [PATCH V3 08/11] accel/amdxdna: Add suspend and resume

2024-10-07 Thread Lizhi Hou
On 10/4/24 11:08, Jeffrey Hugo wrote: On 9/11/2024 12:06 PM, Lizhi Hou wrote: +static int amdxdna_rpmops_suspend(struct device *dev) +{ +    struct amdxdna_dev *xdna = pci_get_drvdata(to_pci_dev(dev)); +    int ret; + +    mutex_lock(&xdna->dev_lock); +    WARN_ON(!list_empt

Re: [PATCH V5 07/10] accel/amdxdna: Add command execution

2024-10-29 Thread Lizhi Hou
On 10/25/24 10:55, Jeffrey Hugo wrote: On 10/21/2024 10:19 AM, Lizhi Hou wrote: diff --git a/include/uapi/drm/amdxdna_accel.h b/include/uapi/drm/amdxdna_accel.h index 3792750834b2..08f3ec7146ab 100644 --- a/include/uapi/drm/amdxdna_accel.h +++ b/include/uapi/drm/amdxdna_accel.h @@ -13,6

Re: [PATCH V5 00/10] AMD XDNA driver

2024-10-29 Thread Lizhi Hou
On 10/25/24 15:02, Jeffrey Hugo wrote: On 10/25/2024 3:28 PM, Lizhi Hou wrote: On 10/25/24 10:55, Jeffrey Hugo wrote: On 10/21/2024 10:19 AM, Lizhi Hou wrote: This patchset introduces a new Linux Kernel Driver, amdxdna for AMD NPUs. The driver is based on Linux accel subsystem. NPU

[PATCH V6 05/10] accel/amdxdna: Add hardware context

2024-10-30 Thread Lizhi Hou
the required resources. Co-developed-by: Min Ma Signed-off-by: Min Ma Reviewed-by: Jeffrey Hugo Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/Makefile | 2 + drivers/accel/amdxdna/aie2_ctx.c| 186 drivers/accel/amdxdna/aie2_message.c| 90

[PATCH V6 07/10] accel/amdxdna: Add command execution

2024-10-30 Thread Lizhi Hou
Add interfaces for user application to submit command and wait for its completion. Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/aie2_ctx.c | 664 +- drivers/accel/amdxdna/aie2_message.c | 343

[PATCH V6 02/10] accel/amdxdna: Add a new driver for AMD AI Engine

2024-10-30 Thread Lizhi Hou
hardware initialization Co-developed-by: Narendra Gutta Signed-off-by: Narendra Gutta Co-developed-by: George Yang Signed-off-by: George Yang Co-developed-by: Min Ma Signed-off-by: Min Ma Reviewed-by: Jeffrey Hugo Signed-off-by: Lizhi Hou --- MAINTAINERS | 10

[PATCH V6 00/10] AMD XDNA driver

2024-10-30 Thread Lizhi Hou
amdnpu.rst - Change AIE2_DEVM_SIZE to 64M due to firmware change - Changes based on code review comments Changes since v1: - Remove some inline defines - Minor changes based on code review comments Lizhi Hou (10): accel/amdxdna: Add documentation for AMD NPU accelerator driver accel/amdxdna: Add

[PATCH V6 03/10] accel/amdxdna: Support hardware mailbox

2024-10-30 Thread Lizhi Hou
Ma Reviewed-by: Jeffrey Hugo Signed-off-by: Lizhi Hou --- MAINTAINERS | 1 + drivers/accel/amdxdna/Makefile| 3 + drivers/accel/amdxdna/aie2_message.c | 194 ++ drivers/accel/amdxdna/aie2_msg_priv.h | 370

[PATCH V6 09/10] accel/amdxdna: Add error handling

2024-10-30 Thread Lizhi Hou
using the column where error occurred. Then the driver resets that column. Co-developed-by: Min Ma Signed-off-by: Min Ma Reviewed-by: Jeffrey Hugo Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/Makefile | 1 + drivers/accel/amdxdna/aie2_error.c | 360

[PATCH V6 01/10] accel/amdxdna: Add documentation for AMD NPU accelerator driver

2024-10-30 Thread Lizhi Hou
Signed-off-by: Sonal Santan Reviewed-by: Jeffrey Hugo Signed-off-by: Lizhi Hou --- Documentation/accel/amdxdna/amdnpu.rst | 281 + Documentation/accel/amdxdna/index.rst | 11 + Documentation/accel/index.rst | 1 + 3 files changed, 293 insertions(+) create mode

[PATCH V6 08/10] accel/amdxdna: Add suspend and resume

2024-10-30 Thread Lizhi Hou
Implement PCI power management suspend and resume callbacks. Co-developed-by: Narendra Gutta Signed-off-by: Narendra Gutta Co-developed-by: Xiaoming Ren Signed-off-by: Xiaoming Ren Co-developed-by: Min Ma Signed-off-by: Min Ma Reviewed-by: Jeffrey Hugo Signed-off-by: Lizhi Hou

[PATCH V6 10/10] accel/amdxdna: Add query functions

2024-10-30 Thread Lizhi Hou
Add GET_INFO ioctl to retrieve hardware information, including AIE, clock, hardware context etc. Co-developed-by: Min Ma Signed-off-by: Min Ma Reviewed-by: Jeffrey Hugo Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/aie2_message.c| 65 +++ drivers/accel/amdxdna/aie2_pci.c

[PATCH V6 06/10] accel/amdxdna: Add GEM buffer object management

2024-10-30 Thread Lizhi Hou
Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/Makefile | 1 + drivers/accel/amdxdna/aie2_ctx.c| 85 +++- drivers/accel/amdxdna/aie2_message.c| 80 +++ drivers/accel/amdxdna/aie2_pci.h| 3 + drivers/accel/amdxdna/amdxdna_ctx.h | 10 + drivers/accel/amdxdna

[PATCH V6 04/10] accel/amdxdna: Add hardware resource solver

2024-10-30 Thread Lizhi Hou
The AI Engine consists of 2D array of tiles arranged as columns. Provides the basic column allocation and release functions for the tile columns. Co-developed-by: Min Ma Signed-off-by: Min Ma Reviewed-by: Jeffrey Hugo Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/Makefile | 1

[PATCH V8 03/10] accel/amdxdna: Support hardware mailbox

2024-11-11 Thread Lizhi Hou
Ma Reviewed-by: Jeffrey Hugo Signed-off-by: Lizhi Hou --- MAINTAINERS | 1 + drivers/accel/amdxdna/Makefile| 3 + drivers/accel/amdxdna/aie2_message.c | 194 ++ drivers/accel/amdxdna/aie2_msg_priv.h | 370

[PATCH V8 01/10] accel/amdxdna: Add documentation for AMD NPU accelerator driver

2024-11-11 Thread Lizhi Hou
Signed-off-by: Sonal Santan Reviewed-by: Jeffrey Hugo Signed-off-by: Lizhi Hou --- Documentation/accel/amdxdna/amdnpu.rst | 281 + Documentation/accel/amdxdna/index.rst | 11 + Documentation/accel/index.rst | 1 + 3 files changed, 293 insertions(+) create mode

[PATCH V8 05/10] accel/amdxdna: Add hardware context

2024-11-11 Thread Lizhi Hou
the required resources. Co-developed-by: Min Ma Signed-off-by: Min Ma Reviewed-by: Jeffrey Hugo Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/Makefile | 2 + drivers/accel/amdxdna/aie2_ctx.c| 186 drivers/accel/amdxdna/aie2_message.c| 90

[PATCH V8 04/10] accel/amdxdna: Add hardware resource solver

2024-11-11 Thread Lizhi Hou
The AI Engine consists of 2D array of tiles arranged as columns. Provides the basic column allocation and release functions for the tile columns. Co-developed-by: Min Ma Signed-off-by: Min Ma Reviewed-by: Jeffrey Hugo Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/Makefile | 1

[PATCH V8 07/10] accel/amdxdna: Add command execution

2024-11-11 Thread Lizhi Hou
Add interfaces for user application to submit command and wait for its completion. Co-developed-by: Min Ma Signed-off-by: Min Ma Signed-off-by: Lizhi Hou --- drivers/accel/amdxdna/aie2_ctx.c | 607 +- drivers/accel/amdxdna/aie2_message.c | 343

  1   2   3   >