On Thu Dec 18, 2025 at 2:39 AM CET, Timur Tabi wrote:
> diff --git a/drivers/gpu/nova-core/nova_core.rs
> b/drivers/gpu/nova-core/nova_core.rs
> index b98a1c03f13d..01353be103ca 100644
> --- a/drivers/gpu/nova-core/nova_core.rs
> +++ b/drivers/gpu/nova-core/nova_core.rs
> @@ -2,6 +2,9 @@
>
> //! Nova Core GPU Driver
>
> +use kernel::{error::Error, pci, prelude::*, InPlaceModule};
> +use pin_init::{PinInit, pinned_drop};
Please use kernel vertical style [1].
[1] https://docs.kernel.org/rust/coding-guidelines.html#imports
> +
> #[macro_use]
> mod bitfield;
>
> @@ -21,13 +24,27 @@
>
> pub(crate) const MODULE_NAME: &kernel::str::CStr = <LocalModule as
> kernel::ModuleMetadata>::NAME;
>
> -kernel::module_pci_driver! {
> - type: driver::NovaCore,
> +#[pin_data(PinnedDrop)]
> +struct NovaCoreModule {
> + #[pin]
> + _driver: kernel::driver::Registration<pci::Adapter<driver::NovaCore>>,
> +}
> +
> +impl InPlaceModule for NovaCoreModule {
> + fn init(module: &'static kernel::ThisModule) -> impl PinInit<Self,
> Error> {
> + pr_info!("NovaCore GPU driver loaded\n");
Please don't add such print statements, drivers should be silent when they work
properly.
> + try_pin_init!(Self {
> + _driver <- kernel::driver::Registration::new(MODULE_NAME,
> module),
> + })
> + }
> +}
> +
> +module! {
> + type: NovaCoreModule,
> name: "NovaCore",
> authors: ["Danilo Krummrich"],
> description: "Nova Core GPU driver",
> license: "GPL v2",
> - firmware: [],
This change seems unrelated, please send a separate patch for this.
> }
>
> kernel::module_firmware!(firmware::ModInfoBuilder);
> --
> 2.52.0