On Thu, Jun 12, 2025 at 11:01:28PM +0900, Alexandre Courbot wrote: > Hi everyone, > > The feedback on v4 has been (hopefully) addressed. I guess the main > remaining unknown is the direction of the `num` module ; for this > iteration, following the received feedback I have eschewed the extension > trait and implemented the alignment functions as methods of the new > `PowerOfTwo` type. This has the benefit of making it impossible to call > them with undesirable (i.e. non-power of two) values. The `fls` function > is now provided as a series of const functions for each supported type, > generated by a macro. > > It feels like the `num` module could be its own series though, so if > there is still discussion about it, I can also extract it and implement > the functionality we need in nova-core as local helper functions until > it gets merged at its own pace. > > As previously, this series only successfully probes Ampere GPUs, but > support for other generations is on the way. > > Upon successful probe, the driver will display the range of the WPR2 > region constructed by FWSEC-FRTS with debug priority: > > [ 95.436000] NovaCore 0000:01:00.0: WPR2: 0xffc00000-0xffce0000 > [ 95.436002] NovaCore 0000:01:00.0: GPU instance built > > This series is based on v6.16-rc1 with no other dependencies.
If compiled with rustc 1.78 there are missing imports of size_of() and align_of() which break the build. There are also a few warnings still: warning: unreachable `pub` field --> drivers/gpu/nova-core/fb.rs:79:5 | 79 | pub fb: Range<u64>, | ---^^^^^^^^^^^^^^^ | | | help: consider restricting its visibility: `pub(crate)` | = note: requested on the command line with `-W unreachable-pub` warning: unreachable `pub` field --> drivers/gpu/nova-core/fb.rs:80:5 | 80 | pub vga_workspace: Range<u64>, | ---^^^^^^^^^^^^^^^^^^^^^^^^^^ | | | help: consider restricting its visibility: `pub(crate)` warning: unreachable `pub` field --> drivers/gpu/nova-core/fb.rs:81:5 | 81 | pub frts: Range<u64>, | ---^^^^^^^^^^^^^^^^^ | | | help: consider restricting its visibility: `pub(crate)` warning: 3 warnings emitted