class MsdIntelRegisterIo

Defined at line 19 of file ../../src/graphics/drivers/msd-intel-gen/src/msd_intel_register_io.h

Wraps the common magma::RegisterIo so we can intercept reads and writes and perform forcewake

checks.

Public Methods

void MsdIntelRegisterIo (Owner * owner, std::unique_ptr<magma::PlatformMmio> mmio, uint32_t device_id)

Defined at line 13 of file ../../src/graphics/drivers/msd-intel-gen/src/msd_intel_register_io.cc

std::shared_ptr<ForceWakeDomain> GetForceWakeToken (ForceWakeDomain domain)

This token must be held while accessing registers in the given domain.

Note, releasing the token doesn't release the forcewake because those

are deferred.

Defined at line 21 of file ../../src/graphics/drivers/msd-intel-gen/src/msd_intel_register_io.cc

void MsdIntelRegisterIo (std::unique_ptr<magma::PlatformMmio> mmio)

Should only be used for unit testing.

Defined at line 35 of file ../../src/graphics/drivers/msd-intel-gen/src/msd_intel_register_io.h

std::chrono::steady_clock::duration GetForceWakeReleaseTimeout (ForceWakeDomain forcewake_domain, uint64_t max_release_timeout_ms, std::chrono::steady_clock::time_point now)

Defined at line 36 of file ../../src/graphics/drivers/msd-intel-gen/src/msd_intel_register_io.cc

magma::PlatformMmio * mmio ()

Defined at line 38 of file ../../src/graphics/drivers/msd-intel-gen/src/msd_intel_register_io.h

void Write32 (uint32_t val, uint32_t offset)

Defined at line 40 of file ../../src/graphics/drivers/msd-intel-gen/src/msd_intel_register_io.h

uint32_t Read32 (uint32_t offset)

Defined at line 45 of file ../../src/graphics/drivers/msd-intel-gen/src/msd_intel_register_io.h

uint64_t Read64 (uint32_t offset)

Defined at line 50 of file ../../src/graphics/drivers/msd-intel-gen/src/msd_intel_register_io.h

void CheckForcewake (uint32_t register_offset)

Defined at line 54 of file ../../src/graphics/drivers/msd-intel-gen/src/msd_intel_register_io.cc

template <class T>
T Read (uint32_t offset)

For hwreg::RegisterBase::ReadFrom.

Defined at line 57 of file ../../src/graphics/drivers/msd-intel-gen/src/msd_intel_register_io.h

template <class T>
void Write (T val, uint32_t offset)

Defined at line 67 of file ../../src/graphics/drivers/msd-intel-gen/src/msd_intel_register_io.h

void InstallHook (std::unique_ptr<magma::RegisterIo::Hook> hook)

Defined at line 72 of file ../../src/graphics/drivers/msd-intel-gen/src/msd_intel_register_io.h

magma::RegisterIo::Hook * hook ()

Defined at line 76 of file ../../src/graphics/drivers/msd-intel-gen/src/msd_intel_register_io.h

size_t forcewake_token_count (ForceWakeDomain domain)

Defined at line 78 of file ../../src/graphics/drivers/msd-intel-gen/src/msd_intel_register_io.h

void CheckForcewakeForRange (const Range & range, uint32_t register_offset)

Defined at line 84 of file ../../src/graphics/drivers/msd-intel-gen/src/msd_intel_register_io.cc

void set_forcewake_active_check_for_test ()

Defined at line 100 of file ../../src/graphics/drivers/msd-intel-gen/src/msd_intel_register_io.h

Records