message: add implemention of uhyve_send for aarch64
diff: @@ -31,16 +31,33 @@ extern "C" {
  /// forward a request to the hypervisor uhyve
  #[inline]
  +#[cfg(target_arch = "x86_64")]
  fn uhyve_send<T>(port: u16, data: &mut T) {
  let ptr = VirtAddr(data as *mut _ as u64);
  let physical_address = paging::virtual_to_physical(ptr);
  - #[cfg(target_arch = "x86_64")]
  unsafe {
  outl(port, physical_address.as_u64() as u32);
  }
  }
  +/// forward a request to the hypervisor uhyve
  +#[inline]
  +#[cfg(target_arch = "aarch64")]
  +fn uhyve_send<T>(port: u16, data: &mut T) {
  + let ptr = VirtAddr(data as *mut _ as u64);
  + //let physical_address = paging::virtual_to_physical(ptr);
  +
  + unsafe {
  + asm!(
  + "str x8, [{port}]",
  + port = in(reg) port,
  + in("x8") ptr.as_u64(),
  + options(nostack),
  + );
  + }
  +}
  +
  const MAX_ARGC_ENVC: usize = 128;
  #[repr(C, packed)]
  