Open Oozlum opened 1 year ago
+1. This is problematic for e.g. CY8C6347FMI-BLD53
that is only found in the old Cypress.PSoC6_DFP 1.2.0
pack and it completely misses the Infineon.CAT1A_DFP.1.5.0
.
Both are contained in the cache directory:
% cd ~/Library/Application\ Support/cmsis-pack-manager
% grep -rl CY8C6347FMI-BLD53 .
Cypress.PSoC6_DFP.1.2.0.pdsc
Infineon.CAT1A_DFP.1.5.0.pdsc
Infineon.PSoC6_DFP.1.4.0.pdsc
index.json
But inside of index.json
the part CY8C6347FMI-BLD53
only contains a reference to the Cypress' pack.
"from_pack": {
"vendor": "Cypress",
"pack": "PSoC6_DFP",
"version": "1.2.0",
"url": "https://github.com/cypresssemiconductorco/cmsis-packs/raw/master/PSoC6_DFP/"
},
Only half-decent workaround I found was to use the .pack
manually within pyOCD. I did not find a way to install the proper Infineon pack within pyOCD as the cache of cmsis-pack-manager
does not index it.
I have a problem when using pyOCD with an ATSAMD21G18A chip. The vendor file lists two PDSC entries for that part:
cmsis-pack-manager seems to key its cache purely off the part number (ATSAMD21G18A), so it is unable to handle multiple entries for the same part. There also doesn't seem to be an option to filter out deprecated entries.
It would be nice if the cache key could be augmented with the vendor (and possibly version) in the event that multiple entries are found, so in this instance I would see two possible entries:
This was a problem for me because cmsis-pack-manager happened to find the Keil entry first, and that PDSC appears to be broken. I couldn't find a way to force the Microchip version other than manually hacking the files.