From c8920e425c33743eed30064161bddd344705376d Mon Sep 17 00:00:00 2001 From: morgan Date: Tue, 24 Oct 2023 17:05:38 +0800 Subject: [PATCH] refactor i2c, io_expander, task under the same cfg --- src/runtime/src/main.rs | 21 ++++++++------------- 1 file changed, 8 insertions(+), 13 deletions(-) diff --git a/src/runtime/src/main.rs b/src/runtime/src/main.rs index 036e085..519d12b 100644 --- a/src/runtime/src/main.rs +++ b/src/runtime/src/main.rs @@ -150,14 +150,10 @@ pub fn main_core0() { i2c::init(); #[cfg(feature = "target_kasli_soc")] - let i2c_bus = unsafe { (i2c::I2C_BUS).as_mut().unwrap() }; - - #[cfg(feature = "target_kasli_soc")] - let (mut io_expander0, mut io_expander1); - #[cfg(feature = "target_kasli_soc")] { - io_expander0 = io_expander::IoExpander::new(i2c_bus, 0).unwrap(); - io_expander1 = io_expander::IoExpander::new(i2c_bus, 1).unwrap(); + let i2c_bus = unsafe { (i2c::I2C_BUS).as_mut().unwrap() }; + let mut io_expander0 = io_expander::IoExpander::new(i2c_bus, 0).unwrap(); + let mut io_expander1 = io_expander::IoExpander::new(i2c_bus, 1).unwrap(); io_expander0 .init(i2c_bus) .expect("I2C I/O expander #0 initialization failed"); @@ -171,6 +167,11 @@ pub fn main_core0() { io_expander1.set(1, 1, false); io_expander0.service(i2c_bus).unwrap(); io_expander1.service(i2c_bus).unwrap(); + task::spawn(io_expanders_service( + RefCell::new(i2c_bus), + RefCell::new(io_expander0), + RefCell::new(io_expander1), + )); } let cfg = match Config::new() { @@ -188,11 +189,5 @@ pub fn main_core0() { #[cfg(has_grabber)] task::spawn(grabber::grabber_thread(timer)); - #[cfg(feature = "target_kasli_soc")] - task::spawn(io_expanders_service( - RefCell::new(i2c_bus), - RefCell::new(io_expander0), - RefCell::new(io_expander1), - )); comms::main(timer, cfg); }