Linux kernel source tree
Go to file
Tomeu Vizoso 525ad89dd9 accel/rocket: Add IOCTLs for synchronizing memory accesses
The NPU cores have their own access to the memory bus, and this isn't
cache coherent with the CPUs.

Add IOCTLs so userspace can mark when the caches need to be flushed, and
also when a writer job needs to be waited for before the buffer can be
accessed from the CPU.

Initially based on the same IOCTLs from the Etnaviv driver.

v2:
- Don't break UABI by reordering the IOCTL IDs (Jeff Hugo)

v3:
- Check that padding fields in IOCTLs are zero (Jeff Hugo)

v6:
- Fix conversion logic to make sure we use DMA_BIDIRECTIONAL when needed
  (Lucas Stach)

v8:
- Always sync BOs in both directions (Robin Murphy)

Reviewed-by: Jeff Hugo <jeff.hugo@oss.qualcomm.com>
Tested-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Tomeu Vizoso <tomeu@tomeuvizoso.net>
Signed-off-by: Jeff Hugo <jeff.hugo@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20250721-6-10-rocket-v9-5-77ebd484941e@tomeuvizoso.net
2025-07-25 10:04:46 -06:00
arch drm-misc-next for 6.17: 2025-06-27 09:58:05 +10:00
block block-6.16-20250614 2025-06-14 09:25:22 -07:00
certs
crypto crypto: hkdf - move to late_initcall 2025-06-11 10:59:45 +08:00
Documentation accel/rocket: Add a new driver for Rockchip's NPU 2025-07-25 09:56:23 -06:00
drivers accel/rocket: Add IOCTLs for synchronizing memory accesses 2025-07-25 10:04:46 -06:00
fs three smb3 client fixes 2025-06-14 10:13:32 -07:00
include accel/rocket: Add IOCTLs for synchronizing memory accesses 2025-07-25 10:04:46 -06:00
init init: fix build warnings about export.h 2025-06-11 22:42:36 -07:00
io_uring io_uring-6.16-20250614 2025-06-14 08:44:54 -07:00
ipc
kernel PM: hibernate: shrink shmem pages after dev_pm_ops.prepare() 2025-07-10 10:49:45 -05:00
lib scatterlist: fix extraneous '@'-sign kernel-doc notation 2025-06-11 22:42:35 -07:00
LICENSES
mm 9 hotfixes. 3 are cc:stable and the remainder address post-6.15 issues 2025-06-14 08:18:09 -07:00
net Including fixes from bluetooth and wireless. 2025-06-12 09:50:36 -07:00
rust rust: drm: Drop the use of Opaque for ioctl arguments 2025-07-21 17:53:07 +02:00
samples
scripts gendwarfksyms: Fix structure type overrides 2025-06-16 00:49:48 +09:00
security KEYS: Invert FINAL_PUT bit 2025-06-11 11:57:14 -07:00
sound treewide, timers: Rename from_timer() to timer_container_of() 2025-06-08 09:07:37 +02:00
tools 9 hotfixes. 3 are cc:stable and the remainder address post-6.15 issues 2025-06-14 08:18:09 -07:00
usr
virt
.clang-format
.clippy.toml
.cocciconfig
.editorconfig
.get_maintainer.ignore
.gitattributes
.gitignore
.mailmap MAINTAINERS: Update email address for Carl Vanderlip 2025-07-25 09:26:24 -06:00
.pylintrc
.rustfmt.toml
COPYING
CREDITS
Kbuild
Kconfig
MAINTAINERS accel/rocket: Add a new driver for Rockchip's NPU 2025-07-25 09:56:23 -06:00
Makefile Linux 6.16-rc2 2025-06-15 13:49:41 -07:00
README

Linux kernel
============

There are several guides for kernel developers and users. These guides can
be rendered in a number of formats, like HTML and PDF. Please read
Documentation/admin-guide/README.rst first.

In order to build the documentation, use ``make htmldocs`` or
``make pdfdocs``.  The formatted documentation can also be read online at:

    https://www.kernel.org/doc/html/latest/

There are various text files in the Documentation/ subdirectory,
several of them using the reStructuredText markup notation.

Please read the Documentation/process/changes.rst file, as it contains the
requirements for building and running the kernel, and information about
the problems which may result by upgrading your kernel.