Skip to content
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

Feature: ArteryTek AT32F437/435 Read protection unlocking #1956

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

ALTracer
Copy link
Contributor

Detailed description

  • This is close to a new feature, but basically I cloned a couple existing functions and extended timeouts.
  • The existing problem is BMD internally timing out after 250ms after issuing a RDP1 degrade command (erase option bytes and write 0x5aa5) of which the latter takes ~14 seconds of DP WAIT because it is going through a mass erase of F437ZM 4032 KiB flash.
  • This PR solves it by using a couple different ADIv5 raw_access functions with extended timeouts and progress printout.

Tested to allow regression from RDP1 to Open state on AT-START-F437 via BMP or BMDA, via SWD or JTAG transport. I have no idea how to implement the same for CMSIS-DAP, JLink, FTDI and other backends. I don't expect this to be merged as-is, rather I publish a hacked working example of what must be done. Maybe there's a better way of repurposing existing drivers to not take up so much code flash of BMP (ENABLE_ARTERY is already opt-in). This is based on top of #1949 branch, just two new commits.

Your checklist for this pull request

Closing issues

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant