"Danilo Krummrich" <[email protected]> writes: > This patch series introduces the dma::Coherent API Gary worked out in the > context of his I/O projection work. > > Additionally, introduce dma::CoherentInit, a type that encapsulates a > dma::Coherent object before its DMA address is exposed to the device. > dma::CoherentInit can guarantee exclusive access to the inner dma::Coherent > object and implement Deref and DerefMut. > > Also add Coherent::init() and Coherent::init_with_attrs() so we can directly > initialize a new dma::Coherent object through an impl Init<T, E>. > > Danilo Krummrich (5): > rust: dma: use "kernel vertical" style for imports > rust: dma: introduce dma::CoherentInit for memory initialization > rust: dma: add Coherent:init() and Coherent::init_with_attrs() > gpu: nova-core: use Coherent::init to initialize GspFwWprMeta > gpu: nova-core: convert Gsp::new() to use CoherentInit > > Gary Guo (3): > rust: dma: add generalized container for types other than slices > rust: dma: add zeroed constructor to `Coherent` > gpu: nova-core: convert to new dma::Coherent API > > drivers/gpu/nova-core/dma.rs | 19 +- > drivers/gpu/nova-core/falcon.rs | 7 +- > drivers/gpu/nova-core/firmware.rs | 10 +- > drivers/gpu/nova-core/gsp.rs | 65 ++-- > drivers/gpu/nova-core/gsp/boot.rs | 7 +- > drivers/gpu/nova-core/gsp/cmdq.rs | 55 +-- > drivers/gpu/nova-core/gsp/fw.rs | 82 ++-- > rust/kernel/device.rs | 4 +- > rust/kernel/dma.rs | 626 +++++++++++++++++++++++------- > samples/rust/rust_dma.rs | 8 +- > 10 files changed, 619 insertions(+), 264 deletions(-) > > > base-commit: 1195fcbda62f12108dc9be56fa4173897905b90c
What did you base this on? Best regards, Andreas Hindborg
