CMSIS-Pack
Version 1.7.2
Delivery Mechanism for Software Packs
|
There are multiple ways to distribute a software pack:
Before you start to distribute a software pack, you need to make sure that it does not contain errors. A good start is an error and warning free run of gen_pack.sh that does not show any PackChk errors and validates the XML of the PDSC file.
The easiest way to distribute a software pack is attaching it to an email or using other means of electronic distribution (for example using a company internal file server). The installation of a software pack is usually triggered by double-clicking the Pack file. The pack management tool is invoked and the Pack is installed on the local machine. After installation, the Pack will be shown in the list of installed packs (tool dependent). If the PDSC file does not contain a valid <url>
element, a manual installation is required to update a software pack. Otherwise, pack management tools can check for updates on the server or the local machine that is specified by <url>
.
<url>
using the file URI scheme.Any web server can be used to host a software pack (specified by the <url>
element in the PDSC file). At this location, the following files should be present:
All previous versions listed in the <releases> section of the PDSC file should be present at the <url>
as well. This allows users to revert updates or to download a previous version of a software pack (for maintenance purposes).
The <vendor>.pidx allows you to publish multiple packs to a Pack Index Service.
Several companies maintain a Pack Index Server to make packs available within tools or web pages. Once you are ready to deploy packs via such services, you may send the URL of the <vendor>.<name>.pdsc or <vendor>.pidx file to the following email addresses:
The *.pidx file allows you to change pack versions and add packs to your distribution list. All packs that are referenced in the .pidx file will be processed and validated. Only packs that pass the PackChk and schema check will become available via web pages and development tools.
For example, Arm uses the pack information to generate a list of available software packs. The following content will be processed in order to generate the web site (https://developer.arm.com/embedded/cmsis/cmsis-packs):
Please allow up to seven working days for the process. If the files contain any errors, you will be notified. Otherwise, the information is added to the index server.
Sometimes, it is necessary to rehost a pack (moving a pack from one URL to another). This implies that you need to change the <url> element in the PDSC file. To ensure that the pack is found by a Pack Index Service, follow this procedure:
Tool, software, or silicon vendors may provide a web infra-structure that lists packs that are available from multiple vendors. Companies like Arm or IAR provide a Pack Index Service that uses either a <vendor>.<name>.pdsc or a <vendor>.pidx file to obtain the latest pack versions. This information is used to make the packs available in the development tools (via a Pack Installer) and/or to publish information on certain web pages, for example a device list.
The following diagram explains how these services are working behind the scene.
Depending on the implementation, the web infra-structure may provide index files with additional information: