[PATCH 0/7] drm/nova: replace `transmute` with `zerocopy`
Pedro Yudi Honda
niyudi.honda em usp.br
Seg Jun 22 15:40:20 -03 2026
From: Pedro Yudi Honda <niyudi.honda em usp.br>
This series follows the introduction of `zerocopy` to rust-next and
replaces `transmute` traits with `zerocopy` traits. These changes are
mechanical and don't alter functionality.
Specifically, the trait `transmute::FromBytes` is replaced by
`zerocopy::FromBytes` and the trait `transmute::AsBytes` is replaced
by `zerocopy::IntoBytes`. Additional traits such as
`zerocopy::Immutable` and `zerocopy::KnownLayout` are implemented as
necessary.
This does not replace the trait implemented in newtypes over
bindings. Currently, the only solution I can think of is mirroring
the bindings into another type and transmuting when necessary, but
that does not seem practical. Another issue is a type like
`gsp::cmdq::GspMem` that explicitly does not meet the requirements
for `FromBytes`, but unsafely implements the trait anyway because it
knows all of its uses. Unsafely implementing `zerocopy::FromBytes` is
not allowed, and implementing `zerocopy::TryFromBytes` would add
unnecessary overhead.
Feedback from the maintainers on the direction in these cases would
be appreciated.
Pedro Yudi Honda (7):
drm/nova: use `zerocopy` in firmware.rs
drm/nova: use `zerocopy` in vbios.rs
drm/nova: use `zerocopy` in booter.rs
drm/nova: use `zerocopy` in fwsec.rs
drm/nova: use `zerocopy` in bootloader.rs
drm/nova: use `zerocopy` in riscv.rs
drm/nova: remove unused trait in commands.rs
drivers/gpu/nova-core/firmware.rs | 16 ++-----
drivers/gpu/nova-core/firmware/booter.rs | 26 +++-------
drivers/gpu/nova-core/firmware/fwsec.rs | 47 +++++--------------
.../nova-core/firmware/fwsec/bootloader.rs | 16 ++-----
drivers/gpu/nova-core/firmware/riscv.rs | 10 ++--
drivers/gpu/nova-core/gsp/commands.rs | 9 +---
drivers/gpu/nova-core/vbios.rs | 34 ++++----------
7 files changed, 40 insertions(+), 118 deletions(-)
--
2.34.1
Mais detalhes sobre a lista de discussão kernel