linux/include/uapi/drm
Rob Herring (Arm) 5a5e9c0228 accel: Add Arm Ethos-U NPU driver
Add a driver for Arm Ethos-U65/U85 NPUs. The Ethos-U NPU has a
relatively simple interface with single command stream to describe
buffers, operation settings, and network operations. It supports up to 8
memory regions (though no h/w bounds on a region). The Ethos NPUs
are designed to use an SRAM for scratch memory. Region 2 is reserved
for SRAM (like the downstream driver stack and compiler). Userspace
doesn't need access to the SRAM.

The h/w has no MMU nor external IOMMU and is a DMA engine which can
read and write anywhere in memory without h/w bounds checks. The user
submitted command streams must be validated against the bounds of the
GEM BOs. This is similar to the VC4 design which validates shaders.

The job submit is based on the rocket driver for the Rockchip NPU
utilizing the GPU scheduler. It is simpler as there's only 1 core rather
than 3.

Tested on i.MX93 platform (U65) and FVP (U85) with Mesa Teflon
support.

Acked-by: Thomas Zimmermann <tzimmermann@suse.de>
Acked-by: Tomeu Vizoso <tomeu@tomeuvizoso.net>
Reviewed-by: Frank Li <Frank.Li@nxp.com>
Link: https://patch.msgid.link/20251020-ethos-v6-2-ecebc383c4b7@kernel.org
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
2025-10-24 15:07:39 -05:00
..
amdgpu_drm.h drm/amdgpu: drop unused structures in amdgpu_drm.h 2025-10-13 14:14:15 -04:00
amdxdna_accel.h accel/amdxdna: Support getting last hardware error 2025-10-16 09:32:48 -07:00
armada_drm.h
asahi_drm.h drm: Add UAPI for the Asahi driver 2025-04-08 17:15:57 -04:00
drm.h drm: Move drm_gem ioctl kerneldoc to uapi file 2025-07-18 09:18:48 +02:00
drm_fourcc.h drm/fourcc: Add RGB161616 and BGR161616 formats 2025-06-28 09:36:16 +02:00
drm_mode.h drm/dumb-buffers: Provide helper to set pitch and size 2025-09-29 13:57:43 +02:00
drm_sarea.h
ethosu_accel.h accel: Add Arm Ethos-U NPU driver 2025-10-24 15:07:39 -05:00
etnaviv_drm.h
exynos_drm.h
habanalabs_accel.h
i915_drm.h
ivpu_accel.h accel/ivpu: Add support for user-managed preemption buffer 2025-09-18 08:42:38 +02:00
lima_drm.h
msm_drm.h drm/msm: Add VM_BIND ioctl 2025-07-04 17:48:38 -07:00
nouveau_drm.h
nova_drm.h drm: nova-drm: add initial driver skeleton 2025-05-12 20:48:15 +02:00
omap_drm.h
panfrost_drm.h drm/panfrost: Introduce uAPI for JM context creation 2025-09-18 14:09:47 +01:00
panthor_drm.h drm/panthor: Add support for Mali-Gx15 family of GPUs 2025-08-15 10:51:24 +01:00
pvr_drm.h
qaic_accel.h accel/qaic: Fix typo for struct qaic_manage_trans_passthrough 2024-12-13 08:55:09 -07:00
qxl_drm.h
radeon_drm.h
rocket_accel.h accel/rocket: Add IOCTLs for synchronizing memory accesses 2025-07-25 10:04:46 -06:00
tegra_drm.h
v3d_drm.h drm/v3d: Add parameter to retrieve the number of GPU resets per-fd 2025-07-17 11:17:32 -03:00
vc4_drm.h
vgem_drm.h
virtgpu_drm.h drm/virtio: Add capset definitions to UAPI 2025-03-28 04:53:51 +03:00
vmwgfx_drm.h
xe_drm.h drm/xe/uapi: Hide the madvise autoreset behind a VM_BIND flag 2025-10-17 10:26:15 +02:00