Re: [PATCH v2 08/16] drm/tyr: specify base type for registers

From: Gary Guo

Date: Wed Aug 05 2026 - 13:07:49 EST


On Wed Aug 5, 2026 at 5:35 PM BST, Gary Guo wrote:
> All registers use the same base type, which is `<IoMem as IO>::Target`.
> Thus add the base parameter to `register!` invocation.

This is missing a few `register!` invocation that's introduced in the new
linux-next base, as Sashiko points out. Will include in the next version.

Best,
Gary

>
> Signed-off-by: Gary Guo <gary@xxxxxxxxxxx>
> ---
> drivers/gpu/drm/tyr/driver.rs | 1 +
> drivers/gpu/drm/tyr/regs.rs | 43 ++++++++++++++++++++++++++++++++++++++++++-
> 2 files changed, 43 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/tyr/driver.rs b/drivers/gpu/drm/tyr/driver.rs
> index bfb0ba19caff..730b84e37a54 100644
> --- a/drivers/gpu/drm/tyr/driver.rs
> +++ b/drivers/gpu/drm/tyr/driver.rs
> @@ -46,6 +46,7 @@
> };
>
> pub(crate) type IoMem<'a> = kernel::io::mem::IoMem<'a, SZ_2M>;
> +pub(crate) type TyrRegisters = kernel::io::Region<SZ_2M>;
>
> pub(crate) struct TyrDrmDriver;
>
> diff --git a/drivers/gpu/drm/tyr/regs.rs b/drivers/gpu/drm/tyr/regs.rs
> index a62724378ced..3e6edae6e27f 100644
> --- a/drivers/gpu/drm/tyr/regs.rs
> +++ b/drivers/gpu/drm/tyr/regs.rs
> @@ -57,7 +57,11 @@ pub(crate) mod gpu_control {
> uapi, //
> };
>
> + use crate::driver::TyrRegisters;
> +
> register! {
> + base: TyrRegisters;
> +
> /// GPU identification register.
> pub(crate) GPU_ID(u32) @ 0x0 {
> /// Status of the GPU release.
> @@ -315,6 +319,8 @@ fn from(mode: FlushMode) -> Self {
> }
>
> register! {
> + base: TyrRegisters;
> +
> /// GPU command register.
> ///
> /// Use the constructor methods to create commands:
> @@ -380,6 +386,8 @@ pub(crate) fn clear_fault() -> Self {
> }