blob: d859b2014d58afcd5bc9bec13217e585ee493c31 [file] [log] [blame]
// Copyright 2023, The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//! Memory layout for crosvm for aarch64 architecture.
//!
//! https://crosvm.dev/book/appendix/memory_layout.html#common-layout
use core::ops::Range;
/// The start address of MMIO space.
pub const MMIO_START: usize = 0x0;
/// The end address of MMIO space.
pub const MMIO_END: usize = 0x4000_0000;
/// MMIO range.
pub const MMIO_RANGE: Range<usize> = MMIO_START..MMIO_END;
/// The start of the system's contiguous "main" memory.
pub const MEM_START: usize = 0x8000_0000;
/// Size of the FDT region as defined by crosvm, both in kernel and BIOS modes.
pub const FDT_MAX_SIZE: usize = 2 << 20;