[pvmfw][rialto] Refactor and reuse console_uart_range()

This cl:

- Extracts console_uart_range() into a function and moves it to vmbase.
  There is no behavior change for pvmfw.
- Allocates device memory for UART range in rialto.

Bug: 284462758
Test: m pvmfw_img && atest rialto_test
Change-Id: I7f38e7c91869692ed535d00d62713f5be6b8f8ab
diff --git a/vmbase/src/layout.rs b/vmbase/src/layout.rs
index ead4f8e..43bcb2c 100644
--- a/vmbase/src/layout.rs
+++ b/vmbase/src/layout.rs
@@ -14,6 +14,7 @@
 
 //! Memory layout.
 
+use crate::console::BASE_ADDRESS;
 use core::ops::Range;
 use core::ptr::addr_of;
 
@@ -75,6 +76,13 @@
     linker_region!(eh_stack_limit, bss_end)
 }
 
+/// UART console range.
+pub fn console_uart_range() -> Range<usize> {
+    const CONSOLE_LEN: usize = 1; // `uart::Uart` only uses one u8 register.
+
+    BASE_ADDRESS..(BASE_ADDRESS + CONSOLE_LEN)
+}
+
 /// Read-write data (original).
 pub fn data_load_address() -> usize {
     linker_addr!(data_lma)