The psci crate was renamed to smccc. Use the new version.
Bug: 245889995
Test: m pvmfw
Change-Id: Ib61e46a6613c1fcfcf559d3672584b6e7b85cb7d
diff --git a/libs/hyp/Android.bp b/libs/hyp/Android.bp
index 1d572e5..1bb8722 100644
--- a/libs/hyp/Android.bp
+++ b/libs/hyp/Android.bp
@@ -10,12 +10,18 @@
rustlibs: [
"libbitflags",
"libonce_cell_nostd",
- "libpsci",
+ "libsmccc",
"libuuid_nostd",
],
no_stdlibs: true,
stdlibs: [
"libcore.rust_sysroot",
],
+ enabled: false,
+ target: {
+ android_arm64: {
+ enabled: true,
+ },
+ },
apex_available: ["com.android.virt"],
}
diff --git a/libs/hyp/src/hypervisor/kvm.rs b/libs/hyp/src/hypervisor/kvm.rs
index 772160e..08eb891 100644
--- a/libs/hyp/src/hypervisor/kvm.rs
+++ b/libs/hyp/src/hypervisor/kvm.rs
@@ -18,7 +18,7 @@
use crate::error::{Error, Result};
use crate::util::{page_address, SIZE_4KB};
use core::fmt::{self, Display, Formatter};
-use psci::smccc::{
+use smccc::{
error::{positive_or_error_64, success_or_error_32, success_or_error_64},
hvc64,
};
diff --git a/libs/hyp/src/hypervisor/mod.rs b/libs/hyp/src/hypervisor/mod.rs
index 05c82dc..394da2c 100644
--- a/libs/hyp/src/hypervisor/mod.rs
+++ b/libs/hyp/src/hypervisor/mod.rs
@@ -28,7 +28,7 @@
pub use kvm::KvmError;
use kvm::KvmHypervisor;
use once_cell::race::OnceBox;
-use psci::smccc::hvc64;
+use smccc::hvc64;
use uuid::Uuid;
enum HypervisorBackend {
diff --git a/pvmfw/Android.bp b/pvmfw/Android.bp
index e5fdfe8..c9909e6 100644
--- a/pvmfw/Android.bp
+++ b/pvmfw/Android.bp
@@ -25,10 +25,10 @@
"liblibfdt",
"liblog_rust_nostd",
"libonce_cell_nostd",
- "libpsci",
"libpvmfw_avb_nostd",
"libpvmfw_embedded_key",
"libpvmfw_fdt_template",
+ "libsmccc",
"libstatic_assertions",
"libtinyvec_nostd",
"libuuid_nostd",
diff --git a/pvmfw/src/hvc.rs b/pvmfw/src/hvc.rs
index 1e2bca2..e03c9d3 100644
--- a/pvmfw/src/hvc.rs
+++ b/pvmfw/src/hvc.rs
@@ -16,7 +16,7 @@
pub mod trng;
use self::trng::Error;
-use psci::smccc::{
+use smccc::{
error::{positive_or_error_64, success_or_error_64},
hvc64,
};
diff --git a/vmbase/Android.bp b/vmbase/Android.bp
index 237a377..e55dbb0 100644
--- a/vmbase/Android.bp
+++ b/vmbase/Android.bp
@@ -64,7 +64,7 @@
srcs: ["src/lib.rs"],
rustlibs: [
"liblog_rust_nostd",
- "libpsci",
+ "libsmccc",
"libspin_nostd",
],
whole_static_libs: [
diff --git a/vmbase/src/power.rs b/vmbase/src/power.rs
index 10a5e5d..9240acf 100644
--- a/vmbase/src/power.rs
+++ b/vmbase/src/power.rs
@@ -14,13 +14,16 @@
//! Functions for shutting down the VM.
-use psci::{system_off, system_reset};
+use smccc::{
+ psci::{system_off, system_reset},
+ Hvc,
+};
/// Makes a `PSCI_SYSTEM_OFF` call to shutdown the VM.
///
/// Panics if it returns an error.
pub fn shutdown() -> ! {
- system_off().unwrap();
+ system_off::<Hvc>().unwrap();
#[allow(clippy::empty_loop)]
loop {}
}
@@ -29,7 +32,7 @@
///
/// Panics if it returns an error.
pub fn reboot() -> ! {
- system_reset().unwrap();
+ system_reset::<Hvc>().unwrap();
#[allow(clippy::empty_loop)]
loop {}
}