mirror of
https://github.com/cloud-hypervisor/cloud-hypervisor.git
synced 2026-08-05 02:19:16 +00:00
arch: AArch64: move GIC implementations to a separate module
This commit moves the GIC-related code to a separate module. Therefore the implementation of GIC registers can be introduced to the new module. Signed-off-by: Henry Wang <Henry.Wang@arm.com>
This commit is contained in:
@@ -5,9 +5,9 @@ pub mod kvm {
|
|||||||
use std::sync::Arc;
|
use std::sync::Arc;
|
||||||
use std::{boxed::Box, result};
|
use std::{boxed::Box, result};
|
||||||
type Result<T> = result::Result<T, Error>;
|
type Result<T> = result::Result<T, Error>;
|
||||||
|
use crate::aarch64::gic::gicv3::kvm::KvmGICv3;
|
||||||
use crate::aarch64::gic::kvm::KvmGICDevice;
|
use crate::aarch64::gic::kvm::KvmGICDevice;
|
||||||
use crate::aarch64::gic::{Error, GICDevice};
|
use crate::aarch64::gic::{Error, GICDevice};
|
||||||
use crate::aarch64::gicv3::kvm::KvmGICv3;
|
|
||||||
use hypervisor::kvm::kvm_bindings;
|
use hypervisor::kvm::kvm_bindings;
|
||||||
|
|
||||||
pub struct KvmGICv3ITS {
|
pub struct KvmGICv3ITS {
|
||||||
@@ -1,6 +1,10 @@
|
|||||||
// Copyright 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
// Copyright 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
||||||
// SPDX-License-Identifier: Apache-2.0
|
// SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
mod gicv2;
|
||||||
|
mod gicv3;
|
||||||
|
mod gicv3_its;
|
||||||
|
|
||||||
use std::result;
|
use std::result;
|
||||||
use std::sync::Arc;
|
use std::sync::Arc;
|
||||||
|
|
||||||
@@ -49,9 +53,9 @@ pub trait GICDevice {
|
|||||||
pub mod kvm {
|
pub mod kvm {
|
||||||
use super::GICDevice;
|
use super::GICDevice;
|
||||||
use super::Result;
|
use super::Result;
|
||||||
use crate::aarch64::gicv2::kvm::KvmGICv2;
|
use crate::aarch64::gic::gicv2::kvm::KvmGICv2;
|
||||||
use crate::aarch64::gicv3::kvm::KvmGICv3;
|
use crate::aarch64::gic::gicv3::kvm::KvmGICv3;
|
||||||
use crate::aarch64::gicv3_its::kvm::KvmGICv3ITS;
|
use crate::aarch64::gic::gicv3_its::kvm::KvmGICv3ITS;
|
||||||
use crate::layout;
|
use crate::layout;
|
||||||
use hypervisor::kvm::kvm_bindings;
|
use hypervisor::kvm::kvm_bindings;
|
||||||
use std::boxed::Box;
|
use std::boxed::Box;
|
||||||
@@ -6,9 +6,6 @@
|
|||||||
pub mod fdt;
|
pub mod fdt;
|
||||||
/// Module for the global interrupt controller configuration.
|
/// Module for the global interrupt controller configuration.
|
||||||
pub mod gic;
|
pub mod gic;
|
||||||
mod gicv2;
|
|
||||||
mod gicv3;
|
|
||||||
mod gicv3_its;
|
|
||||||
/// Layout for this aarch64 system.
|
/// Layout for this aarch64 system.
|
||||||
pub mod layout;
|
pub mod layout;
|
||||||
/// Logic for configuring aarch64 registers.
|
/// Logic for configuring aarch64 registers.
|
||||||
|
|||||||
Reference in New Issue
Block a user