pvmfw: Use vmbase::logger and the log API

For now, initialize the logger to print any log entry.

Replace all println!() with their appropriate corresponding log macro.

Rework the main() bootflow to have a single reboot() point.

Test: -
Change-Id: I3633b7f4c406887c6a810c43f2ec5a6ccf4b7907
diff --git a/pvmfw/Android.bp b/pvmfw/Android.bp
index 84cb18c..296644a 100644
--- a/pvmfw/Android.bp
+++ b/pvmfw/Android.bp
@@ -9,6 +9,7 @@
     srcs: ["src/main.rs"],
     edition: "2021",
     rustlibs: [
+        "liblog_rust_nostd",
         "libvmbase",
     ],
     apex_available: ["com.android.virt"],
diff --git a/pvmfw/src/main.rs b/pvmfw/src/main.rs
index eb97961..4fdd30e 100644
--- a/pvmfw/src/main.rs
+++ b/pvmfw/src/main.rs
@@ -23,8 +23,8 @@
 
 use core::fmt;
 use helpers::checked_page_of;
-
-use vmbase::{console, main, power::reboot, println};
+use log::{debug, error, info, LevelFilter};
+use vmbase::{console, logger, main, power::reboot};
 
 #[derive(Debug, Clone)]
 enum Error {
@@ -48,13 +48,13 @@
     let uart_page = checked_page_of(uart, mmio_granule).ok_or(Error::FailedUartSetup)?;
     smccc::mmio_guard_map(uart_page).map_err(|_| Error::FailedUartSetup)?;
 
-    println!("pVM firmware");
-    println!(
+    info!("pVM firmware");
+    debug!(
         "fdt_address={:#018x}, payload_start={:#018x}, payload_size={:#018x}, x3={:#018x}",
         fdt_address, payload_start, payload_size, arg3,
     );
 
-    println!("Starting payload...");
+    info!("Starting payload...");
 
     Ok(())
 }
@@ -63,12 +63,13 @@
 
 /// Entry point for pVM firmware.
 pub fn main_wrapper(fdt_address: u64, payload_start: u64, payload_size: u64, arg3: u64) {
-    match main(fdt_address, payload_start, payload_size, arg3) {
-        Ok(()) => jump_to_payload(fdt_address, payload_start),
-        Err(e) => {
-            println!("Boot rejected: {}", e);
-        }
+    if logger::init(LevelFilter::Debug).is_err() {
+    } else if let Err(e) = main(fdt_address, payload_start, payload_size, arg3) {
+        error!("Boot rejected: {e}");
+    } else {
+        jump_to_payload(fdt_address, payload_start);
     }
+
     reboot()
 }