blob: e3461c5a2c5bf7c77114c8c92f3a789442715228 [file] [log] [blame]
Andrew Walbrandd74b902022-04-14 16:12:50 +00001// Copyright 2022, The Android Open Source Project
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15//! Functions for shutting down the VM.
Bartłomiej Grzesik86f108d2024-11-29 15:48:00 +010016use crate::arch::platform;
Andrew Walbrandd74b902022-04-14 16:12:50 +000017
Bartłomiej Grzesik86f108d2024-11-29 15:48:00 +010018/// Call shutdown VM using platform specific code.
Andrew Walbrandd74b902022-04-14 16:12:50 +000019///
20/// Panics if it returns an error.
21pub fn shutdown() -> ! {
Bartłomiej Grzesik86f108d2024-11-29 15:48:00 +010022 platform::shutdown();
Andrew Walbrandd74b902022-04-14 16:12:50 +000023}
24
Bartłomiej Grzesik86f108d2024-11-29 15:48:00 +010025/// Call reboot VM using platform specific code.
Andrew Walbrandd74b902022-04-14 16:12:50 +000026///
27/// Panics if it returns an error.
28pub fn reboot() -> ! {
Bartłomiej Grzesik86f108d2024-11-29 15:48:00 +010029 platform::reboot();
Andrew Walbrandd74b902022-04-14 16:12:50 +000030}