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

Replace REDLINK upload method with LINKSERVER #186

Merged
merged 3 commits into from
Sep 27, 2023

Conversation

multiplemonomials
Copy link
Collaborator

@multiplemonomials multiplemonomials commented Sep 26, 2023

Summary of changes

Recently, NXP released their upload method, internally called Redlink, as a standalone tool, LinkServer. This tool has a much better documented API (yay!) and can be installed without also pulling in the massive MCUXpresso IDE (double yay!).

This PR updates Mbed to use LinkServer for flashing MIMXRT targets instead of Redlink.

Impact of changes

Mbed now uses the supported LinkServer application for debugging NXP devices instead of relying on MCUXpresso IDE internal tools which are not documented or intended for public consumption.

Migration actions required

People using the REDLINK upload method will need to switch to LINKSERVER. This is pretty straightforward, you just have to:

  • Install LinkServer on your machine
  • Pass -DUPLOAD_METHOD=LINKSERVER to CMake instead of -DUPLOAD_METHOD=REDLINK
  • Update upload method configuration files (if used) to refer to LinkServer.

Documentation

Updated https://github.com/mbed-ce/mbed-os/wiki/Upload-Methods


Pull request type

[] Patch update (Bug fix / Target update / Docs update / Test update / Refactor)
[] Feature update (New feature / Functionality change / New API)
[X] Major update (Breaking change E.g. Return code change / API behaviour change)

Test results

[] No Tests required for this change (E.g docs only update)
[] Covered by existing mbed-os tests (Greentea or Unittest)
[X] Tests / results supplied as part of this PR

Working on running greentea tests locally using LinkServer.


Reviewers


JohnK1987
JohnK1987 previously approved these changes Sep 26, 2023
JohnK1987
JohnK1987 previously approved these changes Sep 26, 2023
@multiplemonomials
Copy link
Collaborator Author

97% tests passed, 2 tests failed out of 76

Total Test time (real) = 989.69 sec

The following tests did not run:
          8 - mbed-hal-crc (Skipped)
         10 - mbed-hal-flash-functional-tests (Skipped)
         13 - mbed-hal-mpu (Skipped)
         14 - mbed-hal-ospi (Skipped)
         16 - mbed-hal-qspi (Skipped)
         17 - mbed-hal-reset-reason (Skipped)
         19 - mbed-hal-rtc-reset (Skipped)
         43 - mbed-platform-crash-reporting (Skipped)
         53 - mbed-platform-stats-cpu (Skipped)
         54 - mbed-platform-stats-heap (Skipped)
         55 - mbed-platform-stats-sys (Skipped)
         56 - mbed-platform-stats-thread (Skipped)
         72 - mbed-connectivity-mbedtls-sanity (Skipped)
         74 - mbed-connectivity-nfc-eeprom (Skipped)
         76 - mbed-device_key-functionality (Skipped)

The following tests FAILED:
         27 - mbed-hal-trng (Failed)
         62 - mbed-rtos-mail (Failed)
Errors while running CTest

hal-trng always fails due to #83. mbed-rtos-mail and mbed-rtos-mutex are failing 50% of the time.

@multiplemonomials
Copy link
Collaborator Author

Verified that it works on Linux as well.

@multiplemonomials
Copy link
Collaborator Author

Going to go ahead and merge because I just deleted some unneeded files vs the prior approved version

@multiplemonomials multiplemonomials merged commit 05a57dc into master Sep 27, 2023
@multiplemonomials multiplemonomials deleted the dev/redlink-to-linkserver branch September 27, 2023 06:28
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.

2 participants