-
Notifications
You must be signed in to change notification settings - Fork 486
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
Support nested (non-standard) DFP structure? #1460
Comments
Found this issue is a duplicate of #1446 |
imi415
added a commit
to imi415/pyOCD
that referenced
this issue
Oct 22, 2022
This patch will try to read resource files (e.g. FLMs) using relative path to the pdsc file, which is used when some hardware vendors places their pdscs under subdirectory of a pack archive, and somehow valid for Keil MDK. Signed-off-by: Yilin Sun <imi415@imi.moe>
Thanks for the details, @imi415. Given that there are already packs like the Renesas RA series that already cannot be used, we don't have much choice but to change pyocd to support the non-standard structure. So thanks for #1461! I'm also adding this to my list of issues with the Open-CMSIS-Pack spec (for which issues need to created in the spec repo…). |
flit
pushed a commit
that referenced
this issue
Oct 23, 2022
This patch will try to read resource files (e.g. FLMs) using relative path to the pdsc file, which is used when some hardware vendors places their pdscs under subdirectory of a pack archive, and somehow valid for Keil MDK. Fixes #1460 Signed-off-by: Yilin Sun <imi415@imi.moe>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
According to Open-CMSIS specifications clause 2, CMSIS pack structure should have
.pdsc
file located at the base directory of the archive:However it seems Keil MDK also supports reading pack contents from a sub-directory, resulting the pack with the following structure becomes valid for MDK:
pyOCD, however, is using a mix of both methods by finding the
.pdsc
file recursively, and read the rest of the files relative to the base directory:pyOCD/pyocd/target/pack/cmsis_pack.py
Lines 97 to 105 in 3042769
pyOCD/pyocd/target/pack/cmsis_pack.py
Lines 122 to 132 in 3042769
In the above case for Renesas RA series, the pdsc file could be located, however the flash algorithms can not be loaded due to the FLM path in XML file is relative to the
.pdsc
directory.This will raise the following bogos error message indicating the device is not supported:
Error Log
So, should we support this kind of packs by using relative path to the
.pdsc
file, which stays compatible with MDK, or change the pdsc search method to base directory only?The text was updated successfully, but these errors were encountered: