[PATCH v2 5/7] gpu: nova-core: fb: use dma::CoherentHandle

Alexandre Courbot
2026-03-26T15:22:44Z

Replace the nova-core local `DmaObject` with a `CoherentHandle` that can
fulfill the same role.

Signed-off-by: Alexandre Courbot <acourbot@nvidia.com>
---
drivers/gpu/nova-core/fb.rs | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/nova-core/fb.rs b/drivers/gpu/nova-core/fb.rs
index 62fc90fa6a84..bdd5eed760e1 100644
--- a/drivers/gpu/nova-core/fb.rs
+++ b/drivers/gpu/nova-core/fb.rs
@@ -7,6 +7,7 @@

use kernel::{
device,
+ dma::CoherentHandle,
fmt,
io::Io,
prelude::*,
@@ -19,7 +20,6 @@
};

use crate::{
- dma::DmaObject,
driver::Bar0,
firmware::gsp::GspFirmware,
gpu::Chipset,
@@ -53,7 +53,7 @@ pub(crate) struct SysmemFlush {
chipset: Chipset,
device: ARef<device::Device>,
/// Keep the page alive as long as we need it.
- page: DmaObject,
+ page: CoherentHandle,
}

impl SysmemFlush {
@@ -63,7 +63,7 @@ pub(crate) fn register(
bar: &Bar0,
chipset: Chipset,
) -> Result<Self> {
- let page = DmaObject::new(dev, kernel::page::PAGE_SIZE)?;
+ let page = CoherentHandle::alloc(dev, kernel::page::PAGE_SIZE, GFP_KERNEL)?;

hal::fb_hal(chipset).write_sysmem_flush_page(bar, page.dma_handle())?;

--
2.53.0