mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-03-22 07:27:12 +08:00
Compute more of the required FB layout information to boot the GSP firmware. This information is dependent on the firmware itself, so first we need to import and abstract the required firmware bindings in the `nvfw` module. Then, a new FB HAL method is introduced in `fb::hal` that uses these bindings and hardware information to compute the correct layout information. This information is then used in `fb` and the result made visible in `FbLayout`. These 3 things are grouped into the same patch to avoid lots of unused warnings that would be tedious to work around. As they happen in different files, they should not be too difficult to track separately. Acked-by: Danilo Krummrich <dakr@kernel.org> Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Message-ID: <20251110-gsp_boot-v9-1-8ae4058e3c0e@nvidia.com>
28 lines
459 B
Rust
28 lines
459 B
Rust
// SPDX-License-Identifier: GPL-2.0
|
|
|
|
mod boot;
|
|
|
|
use kernel::prelude::*;
|
|
|
|
mod fw;
|
|
|
|
pub(crate) use fw::{
|
|
GspFwWprMeta,
|
|
LibosParams, //
|
|
};
|
|
|
|
pub(crate) const GSP_PAGE_SHIFT: usize = 12;
|
|
pub(crate) const GSP_PAGE_SIZE: usize = 1 << GSP_PAGE_SHIFT;
|
|
|
|
/// GSP runtime data.
|
|
///
|
|
/// This is an empty pinned placeholder for now.
|
|
#[pin_data]
|
|
pub(crate) struct Gsp {}
|
|
|
|
impl Gsp {
|
|
pub(crate) fn new() -> impl PinInit<Self> {
|
|
pin_init!(Self {})
|
|
}
|
|
}
|