-
Notifications
You must be signed in to change notification settings - Fork 2
Clock synthesizer reset command. CLK testing update. #265
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR adds a clock synthesizer reset command and improves clock testing functionality. The key changes include adding a clkreset CLI command to toggle reset on the 5 clock synthesizers, expanding the clock frequency testing capabilities to support multiple test configurations with R0A/R0B clock input selection, and fixing a bug in the MonitorTask where semaphores were not being properly released on error paths.
- Added
resetClockSynth()function andclk_resetCLI command to reset individual clock synthesizers - Enhanced
clk_freq_fpga_cmdto support multiple test configurations with proper R0A/R0B selection - Renamed
first_mcu_ctltoset_mcu_idand removed first-time-only restriction - Fixed semaphore release bug in MonitorTask by removing broken
release_break()macro
Reviewed Changes
Copilot reviewed 9 out of 9 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
| projects/cm_mcu/commands/SensorControl.h | Added declaration for clk_reset command and portmacro.h include |
| projects/cm_mcu/commands/SensorControl.c | Implemented clock reset command, enhanced clock frequency testing with test parameter and R0A/R0B selection, improved input validation |
| projects/cm_mcu/commands/BoardCommands.h | Renamed function from first_mcu_ctl to set_mcu_id |
| projects/cm_mcu/commands/BoardCommands.c | Removed first-time-only check and improved input validation in board ID setup |
| projects/cm_mcu/clocksynth.h | Renamed I2C expander address constants and added resetClockSynth declaration |
| projects/cm_mcu/clocksynth.c | Implemented resetClockSynth function to toggle reset pins via I2C expanders |
| projects/cm_mcu/MonitorTask.c | Fixed semaphore release bug by removing release_break() macro |
| projects/cm_mcu/CommandLineTask.c | Updated command registration for clk_freq_fpga and clkreset, renamed first_mcu command |
| common/log.c | Increased log buffer size from 128 to 192 bytes |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
Copilot reviewed 9 out of 9 changed files in this pull request and generated 6 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
clkreset, c:int resetClockSynth(int device)first_mcufunction to allow it to be run even if it's been run before