Quellcode durchsuchen

Update dependencies of aarch64 example. (#83)

Andrew Walbran vor 1 Jahr
Ursprung
Commit
b87c7ee2c9
3 geänderte Dateien mit 15 neuen und 15 gelöschten Zeilen
  1. 3 3
      examples/aarch64/Cargo.toml
  2. 9 9
      examples/aarch64/src/exceptions.rs
  3. 3 3
      examples/aarch64/src/main.rs

+ 3 - 3
examples/aarch64/Cargo.toml

@@ -5,11 +5,11 @@ authors = ["Andrew Walbran <qwandor@google.com>"]
 edition = "2021"
 
 [dependencies]
-fdt = "0.1.4"
+fdt = "0.1.5"
 lazy_static = { version = "1.4.0", features = ["spin_no_std"] }
 log = "0.4.17"
-psci = "0.1.1"
-spin = "0.9.4"
+smccc = "0.1.1"
+spin = "0.9.8"
 virtio-drivers = { path = "../..", default-features = false }
 
 [build-dependencies]

+ 9 - 9
examples/aarch64/src/exceptions.rs

@@ -2,58 +2,58 @@
 
 use core::arch::asm;
 use log::error;
-use psci::system_off;
+use smccc::{psci::system_off, Hvc};
 
 #[no_mangle]
 extern "C" fn sync_exception_current(_elr: u64, _spsr: u64) {
     error!("sync_exception_current");
     print_esr();
-    system_off().unwrap();
+    system_off::<Hvc>().unwrap();
 }
 
 #[no_mangle]
 extern "C" fn irq_current(_elr: u64, _spsr: u64) {
     error!("irq_current");
-    system_off().unwrap();
+    system_off::<Hvc>().unwrap();
 }
 
 #[no_mangle]
 extern "C" fn fiq_current(_elr: u64, _spsr: u64) {
     error!("fiq_current");
-    system_off().unwrap();
+    system_off::<Hvc>().unwrap();
 }
 
 #[no_mangle]
 extern "C" fn serr_current(_elr: u64, _spsr: u64) {
     error!("serr_current");
     print_esr();
-    system_off().unwrap();
+    system_off::<Hvc>().unwrap();
 }
 
 #[no_mangle]
 extern "C" fn sync_lower(_elr: u64, _spsr: u64) {
     error!("sync_lower");
     print_esr();
-    system_off().unwrap();
+    system_off::<Hvc>().unwrap();
 }
 
 #[no_mangle]
 extern "C" fn irq_lower(_elr: u64, _spsr: u64) {
     error!("irq_lower");
-    system_off().unwrap();
+    system_off::<Hvc>().unwrap();
 }
 
 #[no_mangle]
 extern "C" fn fiq_lower(_elr: u64, _spsr: u64) {
     error!("fiq_lower");
-    system_off().unwrap();
+    system_off::<Hvc>().unwrap();
 }
 
 #[no_mangle]
 extern "C" fn serr_lower(_elr: u64, _spsr: u64) {
     error!("serr_lower");
     print_esr();
-    system_off().unwrap();
+    system_off::<Hvc>().unwrap();
 }
 
 #[inline]

+ 3 - 3
examples/aarch64/src/main.rs

@@ -21,7 +21,7 @@ use core::{
 use fdt::{node::FdtNode, standard_nodes::Compatible, Fdt};
 use hal::HalImpl;
 use log::{debug, error, info, trace, warn, LevelFilter};
-use psci::system_off;
+use smccc::{psci::system_off, Hvc};
 use virtio_drivers::{
     device::{
         blk::VirtIOBlk,
@@ -112,7 +112,7 @@ extern "C" fn main(x0: u64, x1: u64, x2: u64, x3: u64) {
         enumerate_pci(pcie_node, Cam::Ecam);
     }
 
-    system_off().unwrap();
+    system_off::<Hvc>().unwrap();
 }
 
 fn virtio_device(transport: impl Transport) {
@@ -419,6 +419,6 @@ fn allocate_bars(
 #[panic_handler]
 fn panic(info: &PanicInfo) -> ! {
     error!("{}", info);
-    system_off().unwrap();
+    system_off::<Hvc>().unwrap();
     loop {}
 }