On Thu, 12 Mar 2026 09:43:30 +0100 Boris Brezillon <[email protected]> wrote:
> On Wed, 11 Mar 2026 16:03:57 -0700 > Deborah Brouwer <[email protected]> wrote: > > > This series changes the Tyr driver to use the kernel's register! macro > > for hardware register access, replacing manual bit manipulation and custom > > register structures with a more type-safe and maintainable approach. > > > > Signed-off-by: Deborah Brouwer <[email protected]> > > --- > > This series depends on: > > [PATCH v8 00/10] rust: add `register!` macro > > https://lore.kernel.org/rust-for-linux/[email protected]/ > > > > Changes in v2: > > - Rebase on v8 of register! macro series; > > - Add documentation; > > - Remove manual functions to get address bits; > > - Revise gpu_info() to use macro; > > - Revise l2_power_on() to use macro; > > - Set interconnect coherency protocol with macro; > > - Separate commits for each register page; > > - Replace HI/LO pairs with 64bit registers > > - Order registers by address; > > - Remove doorbell clear field from GPU_IRQ_CLEAR; > > - GPU command is redesigned to accommodate multiple layouts; > > - MMU register bits corrected; > > - Use UPPERCASE for register names; > > - Move the consts to impl block for registers; > > > > --- > > Daniel Almeida (1): > > drm/tyr: Use register! macro for GPU_CONTROL > > > > Deborah Brouwer (4): > > drm/tyr: Set interconnect coherency during probe > > drm/tyr: Use register! macro for JOB_CONTROL > > drm/tyr: Use register! macro for MMU_CONTROL > > Could we also have a commit exposing hardware DOORBELLs as a register > array? Or maybe we wait until those are actually needed, dunno. It just feels weird to not have all the registers defined, but still have some that are defined by not used (MCU_CONTROL, JOB_IRQ, ...). Seems like we've taken the 'only-define-what-you-need' path, but only partially followed this rule :-/. > > > drm/tyr: Remove custom register struct > > > > drivers/gpu/drm/tyr/driver.rs | 32 +- > > drivers/gpu/drm/tyr/gpu.rs | 213 +++++------- > > drivers/gpu/drm/tyr/regs.rs | 785 > > ++++++++++++++++++++++++++++++++++++------ > > 3 files changed, 792 insertions(+), 238 deletions(-) > > --- > > base-commit: 91c02cfa16427b078c8a74f2b96123b579fdb07f > > change-id: 20260311-b4-tyr-use-register-macro-v2-cdc89155045a > > > > Best regards, >
