drivers/gpu/drm/tyr/gpu.rs

Source file repositories/reference/linux-study-clean/drivers/gpu/drm/tyr/gpu.rs

File Facts

System
Linux kernel
Corpus path
drivers/gpu/drm/tyr/gpu.rs
Extension
.rs
Size
5197 bytes
Lines
176
Domain
Driver Families
Bucket
drivers/gpu
Inferred role
Driver Families: implementation source
Status
source implementation candidate

Why This File Exists

Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.

Dependency Surface

Detected Declarations

Annotated Snippet

struct GpuModels {
    name: &'static str,
    arch_major: u32,
    prod_major: u32,
}

const GPU_MODELS: [GpuModels; 1] = [GpuModels {
    name: "g610",
    arch_major: 10,
    prod_major: 7,
}];

/// Powers on the l2 block.
pub(crate) fn l2_power_on(dev: &Device, io: &IoMem<'_>) -> Result {
    io.write_reg(L2_PWRON_LO::zeroed().with_const_request::<1>());

    poll::read_poll_timeout(
        || Ok(io.read(L2_READY_LO)),
        |status| status.ready() == 1,
        Delta::from_millis(1),
        Delta::from_millis(100),
    )
    .inspect_err(|_| dev_err!(dev, "Failed to power on the GPU."))?;

    Ok(())
}

Annotation

Implementation Notes