On Wed, Oct 29, 2025 at 12:07:35AM +0900, Alexandre Courbot wrote:
> This series spawns from the discussion in [1], where it was noticed that
> several structures of the VBIOS could just be read using `FromBytes`
> instead of being built manually.
> 
> While implementing it, I also noticed that we were repeating the
> following pattern quite a bit in the code:
> 
>     slice
>         .get(..size_of::<TargetType>())
>         .and_then(TargetType::from_bytes_copy)
> 
> ... which begs for dedicated methods doing this in the `FromBytes`
> trait. This is what the first patch does, taking inspiration from a
> similar feature in the `zerocopy` crate.
> 
> The remaining patches leverage these new methods to simplify the VBIOS
> code a bit, accordingly.
> 
> If patch 1 is deemed a valid idea, I hope we can merge it into the DRM
> tree along with the rest of this series.
> 
> The base for this work is `drm-rust-next`, with [2] applied.
> 
> [1] 
> https://lore.kernel.org/rust-for-linux/[email protected]/
> [2] 
> https://lore.kernel.org/rust-for-linux/[email protected]/
> 
> Signed-off-by: Alexandre Courbot <[email protected]>

Once the nit I suggested in patch 1 is discussed, for all patches:

Reviewed-by: Joel Fernandes <[email protected]>

thanks,

 - Joel

> ---
> Alexandre Courbot (5):
>       rust: transmute: add `from_bytes_prefix` family of methods
>       gpu: nova-core: vbios: use FromBytes for PmuLookupTable header
>       gpu: nova-core: vbios: use FromBytes for PcirStruct
>       gpu: nova-core: vbios: use FromBytes for BitHeader
>       gpu: nova-core: vbios: use FromBytes for NpdeStruct
> 
>  drivers/gpu/nova-core/vbios.rs | 137 
> ++++++++++++++++-------------------------
>  rust/kernel/transmute.rs       |  60 ++++++++++++++++++
>  2 files changed, 113 insertions(+), 84 deletions(-)
> ---
> base-commit: 639291d7c30cec5cf0d9a79371021c2e4404cfc9
> change-id: 20251028-nova-vbios-frombytes-eb0cbb6a2f11
> 
> Best regards,
> -- 
> Alexandre Courbot <[email protected]>
> 

Reply via email to