xref: /DragonOS/kernel/src/driver/base/device/driver.rs (revision 2a7d773d3d39f1cb3d59d6baa817c896c6fd52d1)
1 use super::IdTable;
2 use core::{any::Any, fmt::Debug};
3 
4 /// @brief: Driver error
5 #[allow(dead_code)]
6 #[derive(Debug)]
7 #[derive(PartialEq, Eq)]
8 #[derive(Clone, Copy)]
9 pub enum DriverError {
10     ProbeError,
11 }
12 
13 /// @brief: 所有设备驱动都应该实现该trait
14 pub trait Driver: Any + Send + Sync + Debug {
15     /// @brief: 获取设备驱动标识符
16     /// @parameter: None
17     /// @return: 该设备驱动唯一标识符
18     fn get_id_table(&self) -> IdTable;
19 }
20