浏览代码

style: solve warnings and deny later warnings

YdrMaster 2 年之前
父节点
当前提交
8932f57092
共有 4 个文件被更改,包括 19 次插入27 次删除
  1. 15 6
      src/lib.rs
  2. 0 11
      src/logo.rs
  3. 0 6
      src/logo.txt
  4. 4 4
      src/rfence.rs

+ 15 - 6
src/lib.rs

@@ -158,6 +158,7 @@
 
 #![no_std]
 #![feature(ptr_metadata)]
+#![deny(warnings)] // cancel this line for developing
 
 extern crate alloc;
 
@@ -169,7 +170,6 @@ mod extension;
 mod hart_mask;
 mod hsm;
 mod ipi;
-mod logo;
 mod pmu;
 mod privileged;
 #[doc(hidden)]
@@ -184,22 +184,32 @@ mod guest;
 
 // pub mod instance; // TODO: SBI instances, useful for developing hypervisors
 
+/// The rustsbi logo.
+pub const LOGO: &str = r"\
+.______       __    __      _______.___________.  _______..______   __
+|   _  \     |  |  |  |    /       |           | /       ||   _  \ |  |
+|  |_)  |    |  |  |  |   |   (----`---|  |----`|   (----`|  |_)  ||  |
+|      /     |  |  |  |    \   \       |  |      \   \    |   _  < |  |
+|  |\  \----.|  `--'  |.----)   |      |  |  .----)   |   |  |_)  ||  |
+| _| `._____| \______/ |_______/       |__|  |_______/    |______/ |__|";
+
 const SBI_SPEC_MAJOR: usize = 1;
 const SBI_SPEC_MINOR: usize = 0;
 
-// RustSBI implementation ID: 4
-// Ref: https://github.com/riscv-non-isa/riscv-sbi-doc/pull/61
+/// RustSBI implementation ID: 4
+///
+/// Ref: https://github.com/riscv-non-isa/riscv-sbi-doc/pull/61
 const IMPL_ID_RUSTSBI: usize = 4;
-// Read from env!("CARGO_PKG_VERSION")
+
 const RUSTSBI_VERSION_MAJOR: usize =
     (env!("CARGO_PKG_VERSION_MAJOR").as_bytes()[0] - b'0') as usize;
 const RUSTSBI_VERSION_MINOR: usize =
     (env!("CARGO_PKG_VERSION_MINOR").as_bytes()[0] - b'0') as usize;
 const RUSTSBI_VERSION_PATCH: usize =
     (env!("CARGO_PKG_VERSION_PATCH").as_bytes()[0] - b'0') as usize;
-#[rustfmt::skip]
 const RUSTSBI_VERSION: usize =
     (RUSTSBI_VERSION_MAJOR << 16) + (RUSTSBI_VERSION_MINOR << 8) + RUSTSBI_VERSION_PATCH;
+
 /// RustSBI version as a string.
 pub const VERSION: &str = env!("CARGO_PKG_VERSION");
 
@@ -210,7 +220,6 @@ pub use hsm::{init_hsm, Hsm};
 pub use ipi::{init_ipi, Ipi};
 #[doc(hidden)]
 pub use legacy_stdio::{legacy_stdio_getchar, legacy_stdio_putchar};
-pub use logo::LOGO;
 pub use pmu::{init_pmu, Pmu};
 pub use privileged::enter_privileged;
 pub use reset::{init_reset, Reset};

+ 0 - 11
src/logo.rs

@@ -1,11 +0,0 @@
-/// The rustsbi logo.
-///
-/// ```text
-/// .______       __    __      _______.___________.  _______..______   __
-/// |   _  \     |  |  |  |    /       |           | /       ||   _  \ |  |
-/// |  |_)  |    |  |  |  |   |   (----`---|  |----`|   (----`|  |_)  ||  |
-/// |      /     |  |  |  |    \   \       |  |      \   \    |   _  < |  |
-/// |  |\  \----.|  `--'  |.----)   |      |  |  .----)   |   |  |_)  ||  |
-/// | _| `._____| \______/ |_______/       |__|  |_______/    |______/ |__|
-/// ```
-pub const LOGO: &str = include_str!("logo.txt");

+ 0 - 6
src/logo.txt

@@ -1,6 +0,0 @@
-.______       __    __      _______.___________.  _______..______   __
-|   _  \     |  |  |  |    /       |           | /       ||   _  \ |  |
-|  |_)  |    |  |  |  |   |   (----`---|  |----`|   (----`|  |_)  ||  |
-|      /     |  |  |  |    \   \       |  |      \   \    |   _  < |  |
-|  |\  \----.|  `--'  |.----)   |      |  |  .----)   |   |  |_)  ||  |
-| _| `._____| \______/ |_______/       |__|  |_______/    |______/ |__|

+ 4 - 4
src/rfence.rs

@@ -67,7 +67,7 @@ pub trait Rfence: Send + Sync {
         size: usize,
         vmid: usize,
     ) -> SbiRet {
-        drop((hart_mask, start_addr, size, vmid));
+        let _ = (hart_mask, start_addr, size, vmid);
         SbiRet::not_supported()
     }
     /// Instruct the remote harts to execute one or more `HFENCE.GVMA` instructions,
@@ -86,7 +86,7 @@ pub trait Rfence: Send + Sync {
     /// | SBI_ERR_NOT_SUPPORTED     | This function is not supported as it is not implemented or one of the target hart does not support hypervisor extension.
     /// | SBI_ERR_INVALID_ADDRESS   | `start_addr` or `size` is not valid.
     fn remote_hfence_gvma(&self, hart_mask: HartMask, start_addr: usize, size: usize) -> SbiRet {
-        drop((hart_mask, start_addr, size));
+        let _ = (hart_mask, start_addr, size);
         SbiRet::not_supported()
     }
     /// Instruct the remote harts to execute one or more `HFENCE.VVMA` instructions,
@@ -112,7 +112,7 @@ pub trait Rfence: Send + Sync {
         size: usize,
         asid: usize,
     ) -> SbiRet {
-        drop((hart_mask, start_addr, size, asid));
+        let _ = (hart_mask, start_addr, size, asid);
         SbiRet::not_supported()
     }
     /// Instruct the remote harts to execute one or more `HFENCE.VVMA` instructions,
@@ -131,7 +131,7 @@ pub trait Rfence: Send + Sync {
     /// | SBI_ERR_NOT_SUPPORTED     | This function is not supported as it is not implemented or one of the target hart doesn’t support hypervisor extension.
     /// | SBI_ERR_INVALID_ADDRESS   | `start_addr` or `size` is not valid.
     fn remote_hfence_vvma(&self, hart_mask: HartMask, start_addr: usize, size: usize) -> SbiRet {
-        drop((hart_mask, start_addr, size));
+        let _ = (hart_mask, start_addr, size);
         SbiRet::not_supported()
     }
 }