mirror of
https://github.com/DragonOS-Community/DragonOS.git
synced 2025-06-18 12:16:31 +00:00
@ -1,10 +0,0 @@
|
||||
use super::init::driver_init;
|
||||
|
||||
#[no_mangle]
|
||||
unsafe extern "C" fn rs_driver_init() -> i32 {
|
||||
let result = driver_init()
|
||||
.map(|_| 0)
|
||||
.unwrap_or_else(|e| e.to_posix_errno());
|
||||
|
||||
return result;
|
||||
}
|
@ -10,7 +10,9 @@ use super::{
|
||||
platform::platform_bus_init,
|
||||
};
|
||||
|
||||
pub(super) fn driver_init() -> Result<(), SystemError> {
|
||||
/// 初始化设备驱动模型
|
||||
#[inline(never)]
|
||||
pub fn driver_init() -> Result<(), SystemError> {
|
||||
devices_init()?;
|
||||
buses_init()?;
|
||||
classes_init()?;
|
||||
|
@ -1,5 +1,4 @@
|
||||
pub mod block;
|
||||
pub mod c_adapter;
|
||||
pub mod char;
|
||||
pub mod class;
|
||||
pub mod cpu;
|
||||
|
@ -1090,25 +1090,9 @@ fn pci_check_bus(bus: u8) -> Result<u8, PciError> {
|
||||
}
|
||||
Ok(0)
|
||||
}
|
||||
/// @brief pci初始化函数(for c)
|
||||
#[no_mangle]
|
||||
pub extern "C" fn rs_pci_init() {
|
||||
pci_init();
|
||||
if PCI_ROOT_0.is_some() {
|
||||
kdebug!("{}", PCI_ROOT_0.as_ref().unwrap());
|
||||
//以下为ecam的读取寄存器值测试,经测试可正常读取
|
||||
// let bus_device_function = BusDeviceFunction {
|
||||
// bus: 0,
|
||||
// device: 2,
|
||||
// function: 0,
|
||||
// };
|
||||
// kdebug!(
|
||||
// "Ecam read virtio-net device status={:#x}",
|
||||
// (PCI_ROOT_0.unwrap().read_config(bus_device_function, 4)>>16) as u16
|
||||
// );
|
||||
}
|
||||
}
|
||||
/// @brief pci初始化函数
|
||||
|
||||
/// pci初始化函数
|
||||
#[inline(never)]
|
||||
pub fn pci_init() {
|
||||
kinfo!("Initializing PCI bus...");
|
||||
if let Err(e) = pci_check_all_buses() {
|
||||
|
Reference in New Issue
Block a user