linux/drivers/gpu/nova-core
Gary Guo 99676aed1f gpu: nova-core: move lifetime to Bar0
Currently Nova code uses `&'a Bar0` a lot. This is `&'a Mmio`, where `Mmio`
represents an owned MMIO region; this type only exists as a target for
`Deref` so `Bar` and `IoMem` can share code and should be avoided to be
named directly. The upcoming I/O projection series would make `Io` trait
much simpler to implement, and thus the owned MMIO type would be removed
in favour of direct `Io` implementation on `Bar` and `IoMem`.

Add lifetime parameter to `Bar0<'a>` and change it to be alias of `&'a
pci::Bar<'a, ..>`. This also prepares Nova core so that when I/O projection
series land, this could be changed to using a MMIO view type directly which
avoids double indirection.

Signed-off-by: Gary Guo <gary@garyguo.net>
Acked-by: Alexandre Courbot <acourbot@nvidia.com>
Reviewed-by: Eliot Courtney <ecourtney@nvidia.com>
Link: https://patch.msgid.link/20260602170416.2268531-1-gary@kernel.org
[ Rebase onto latest drm-rust-next (Blackwell enablement). - Danilo ]
Signed-off-by: Danilo Krummrich <dakr@kernel.org>
2026-06-03 22:10:51 +02:00
..
falcon gpu: nova-core: move lifetime to Bar0 2026-06-03 22:10:51 +02:00
fb gpu: nova-core: move lifetime to Bar0 2026-06-03 22:10:51 +02:00
firmware gpu: nova-core: move lifetime to Bar0 2026-06-03 22:10:51 +02:00
fsp gpu: nova-core: move lifetime to Bar0 2026-06-03 22:10:51 +02:00
gpu gpu: nova-core: move lifetime to Bar0 2026-06-03 22:10:51 +02:00
gsp gpu: nova-core: move lifetime to Bar0 2026-06-03 22:10:51 +02:00
bitfield.rs gpu: nova-core: bitfield: fix broken Default implementation 2026-04-05 16:17:18 +02:00
driver.rs gpu: nova-core: move lifetime to Bar0 2026-06-03 22:10:51 +02:00
falcon.rs gpu: nova-core: move lifetime to Bar0 2026-06-03 22:10:51 +02:00
fb.rs gpu: nova-core: move lifetime to Bar0 2026-06-03 22:10:51 +02:00
firmware.rs gpu: nova-core: Hopper/Blackwell: add FMC firmware image 2026-06-02 22:33:15 +09:00
fsp.rs gpu: nova-core: move lifetime to Bar0 2026-06-03 22:10:51 +02:00
gpu.rs gpu: nova-core: move lifetime to Bar0 2026-06-03 22:10:51 +02:00
gsp.rs gpu: nova-core: Hopper/Blackwell: add FSP Chain of Trust boot 2026-06-03 23:52:22 +09:00
Kconfig gpu: nova: Use module names consistently 2026-05-09 23:51:49 +02:00
Makefile gpu: nova: Use module names consistently 2026-05-09 23:51:49 +02:00
mctp.rs gpu: nova-core: Hopper/Blackwell: add FSP Chain of Trust boot 2026-06-03 23:52:22 +09:00
nova_core.rs gpu: nova-core: add MCTP/NVDM protocol types for firmware communication 2026-06-03 22:11:24 +09:00
num.rs gpu: nova-core: introduce bounded_enum macro 2026-03-26 15:08:27 +09:00
regs.rs gpu: nova-core: move lifetime to Bar0 2026-06-03 22:10:51 +02:00
sbuffer.rs gpu: nova-core: remove imports available via prelude 2026-01-30 02:42:42 +01:00
vbios.rs gpu: nova-core: move lifetime to Bar0 2026-06-03 22:10:51 +02:00