projects/linux·blob master · refs

25 lines · 577 B

1// SPDX-License-Identifier: GPL-2.0
2
3use crate::gpu::{
4 Architecture,
5 Chipset, //
6};
7
8mod gb202;
9mod tu102;
10
11pub(super) trait VgpuHal {
12 /// Returns whether this chipset can support vGPU.
13 fn supports_vgpu(&self) -> bool;
14}
15
16pub(super) fn vgpu_hal(chipset: Chipset) -> &'static dyn VgpuHal {
17 match chipset.arch() {
18 Architecture::BlackwellGB20x => gb202::GB202_HAL,
19 Architecture::Turing
20 | Architecture::Ampere
21 | Architecture::Hopper
22 | Architecture::Ada
23 | Architecture::BlackwellGB10x => tu102::TU102_HAL,
24 }
25}