Merged
Conversation
- Introduced a new `peripherals` module to manage ESP32 peripheral initialization. - Updated `setup_hardware_timer` and `setup_uart` functions to utilize the new peripheral management. - Simplified timer index validation in `valid_timer_index`. - Adjusted trait methods in `PortTrait` implementations for better clarity and consistency. - Modified test conditions for cooperative tests to exclude preemptive feature.
Resolved conflicts in src/task_manager/preemptive.rs: - Kept improved documentation from main branch - Removed unnecessary #[allow(dead_code)] and #[allow(static_mut_refs)] attributes - Preserved all functionality from both branches
- Changed code block formatting in documentation to use `rust,ignore` and `text` for better clarity. - Refactored UART peripheral initialization to support architecture-specific types. - Updated UART handling in the ESP32 module to use a unified `UartPeriph` type. - Enhanced task manager documentation to reflect changes in task registration examples.
- Added initialization of peripherals specifically for ESP32 platforms in the `init_system` function. - Removed direct call to `init_peripherals` from `setup_hardware_timer` to streamline hardware timer setup.
- Introduced a new UART echo example demonstrating UART communication using the Martos RTOS framework. - Added necessary configuration files including `Cargo.toml`, `.cargo/config.toml`, and `rust-toolchain.toml`. - Implemented main functionality in `src/main.rs` to handle UART communication, including byte reception and echoing. - Updated GitHub Actions workflow to include build and formatting steps for the new example.
- Removed unnecessary comments regarding the UART instance signature in both ESP32-C6 and Xtensa examples for clarity. - Streamlined code documentation to focus on essential information.
- Increased the length of the DRAM segment in the ESP32 linker script from 0x10120 to 0x10200 to accommodate additional memory requirements.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Note
Adds a new
uartfeature with APIs and ESP32 UART2/IO support, centralizes peripheral init, introduces a UART echo example, updates CI, and does minor refactors/tests tweaks.uartfeature inCargo.tomland public gettersget_uart2/get_io; callsetup_uart()frominit_system()when enabled.PortTraitwithtype Uart2Type,type IoType, and methodssetup_uart(),get_uart2(),get_io().peripheralsmodule centralizingesp_hal::initand storing raw handles (TIMG0/1,RNG,RADIO_CLK,WIFI,UART2,GPIO,IO_MUX).hardware_timerto use centralized peripherals.networkto pull peripherals from new module.uartmodule providingUART2/Ioacquisition and one-time init.uartstub module and wire types/methods.uartmodule and wire types/methods.examples/rust-examples/xtensa-esp32/uart(UART echo) with tooling/config.xtensa-esp32-rust-example-uartjob to build/format the new example.spin_loop, addDefaultforPreemptiveTaskManager, allow attributes for lints.preemptivefeature.#[allow(static_mut_refs)]and similar lints.Written by Cursor Bugbot for commit 750cdb5. This will update automatically on new commits. Configure here.