Open-CMSIS-Pack  Version 1.7.44
Delivery Mechanism for Software Packs
Revision history
Version Description
1.7.44
  • added optional 'environments' section below package element to hold environment-specific information pertaining to the package as a whole
1.7.43
  • added optional 'ECCN' section for EU and US export control classification numbers
1.7.42
  • added 'mode' attribute ExeGeneratorArgumentType
1.7.41
  • changed remaining 'public' attributes to all have default value 'true' if not specified.
1.7.40
  • added 'Secure-only' to DsecureEnum to specify a secure software model without provisions for a non-secure partition
1.7.39
  • modified default 'DebugPortStart' debug sequence to clear DP sticky error bits
1.7.38
  • The pack publishing process has been rewritten completely
  • removed the old tutorials that have been superseded by the online versions on GitHub
1.7.37
1.7.36
1.7.35
  • made board element optional in example element
  • added attribute overview to package description element
  • fixed 'BOYAMICRO' vendor value in DeviceVendorEnum
1.7.34
1.7.33
1.7.32
  • FileScopeAttributeType 'private' and 'public' also used for header files.
  • attribute select also permitted for component files type header.
  • description text size limit documented with BriefDescType.
1.7.31
  • added new processor Cortex-M52
1.7.30
  • renamed componentExts as extensions in the schema.
1.7.29
1.7.28
  • changed capitalization from 'changeLogs' to 'changelogs' to align with documentation
1.7.27
  • changed capitalization from 'Clang' to 'CLANG' in 'CompilerEnumType' to align with CMSIS-Toolbox
  • added 'MinebeaMitsumi:181' to DeviceVendorEnum
1.7.26
1.7.25
1.7.24
1.7.23
  • specified that url to a website in book element is allowed
  • aligned <book> element occurrence in board table to XSD schema
1.7.22
  • added 'Hvendor' and 'Hname' as attributes of the accept, require and deny elements
  • redefined 'Hvendor' as xs:string
1.7.21
1.7.20
  • added <clayers> section for distributing layers in software packs. This is renamed to <csolution> in 1.7.36 as it was not used before.
1.7.19
  • added generator specific component file types: 'genSource', 'genHeader', 'genParams', 'genAsset' to 'FileCategoryType' of the files element
1.7.18
1.7.17
  • added Hclass and Hgroup predefined values for <part> element classification
  • added <part-taxonomy> element to list description elements defining part classes and part group names
1.7.16
  • added 'bottom' and 'perspective' attributes to <image> element
  • revert extension from v1.7.10 and replace using attributes for 'language' and 'scope' in 'FileType'
  • added 'Clang' to 'CompilerEnumType'.
  • added '3PEAK' Dvendor ID.
1.7.15
  • added 'projectpath' attribute which can be used by IDE to construct file location folder in IDE project explorer view of workspace.
1.7.14
  • added 'changelog' element providing references to change log files by component, api and bundle elements
  • added 'Puya' Dvendor ID.
  • added 'view' attribute to component element with predefined values define by 'ViewType'
1.7.13
  • added VirtualHW as a new board type in support of the Arm Virtual Hardware initiative
  • added <parts> element and its child elements for describing and packaging the parts (devices other than the MCU).
  • added <mountedPart> element, as child element of the <board> element, for describing the parts (devices other than the MCU) mounted on the development board.
1.7.12
  • added 'Linkedsemi' Dvendor ID.
1.7.11
  • added 'uuid' to boards element to indicate a 128-bit universal ID in the debug firmware of the board
  • added 'memory' and 'algorithm' child elements to the boards element to describe board-specific memory
  • added 'Bvendor', 'Bname', 'Brevision' attribute to conditions element to allow board specific filtering.
1.7.10
  • added 'includeAsm', 'includeC', 'includeCpp', 'includeLd' to FileCategoryType of the components element
  • added 'headerAsm', 'includeC', 'headerCpp', 'headerLd' to FileCategoryType of the components element
1.7.9
  • added new section <licenseSets> supporting association of multiple license files with one or more component
1.7.8
  • added extension points description for components
1.7.7
  • added 'Cortex-M85' to DcoreEnum
  • added 'Dpacbti' attribute to Processor
  • added 'Dpacbti' attribute to Condition
  • added 'DpacbtiEnum'
1.7.6
  • type of n and m attributes of BoardFeatureType and Pname becomes xs:string
1.7.5
  • Rename DcoreEnum 'Star' to 'Star-MC1'
1.7.4
  • clarified the usage of the "public" attribute and set public="true" as default.
1.7.3
  • added 'Star' to DcoreEnum
1.7.2
  • added 'XC' to CompilerEnumType to enable use of Microchip XC32 compiler
1.7.1
  • undo removing deprecated attributes as they are still used in latest pdsc file versions: DeviceVendorEnum: Lapis Semiconductor, DeviceVendorEnum: Pname, BoardReferenceType: Dvendor, Dname
  • added condition attribute to TaxonomyDescriptionType supporting context specific taxonomies (e.g. vendor or device specific)
1.7.0
  • added processor attribute Dcdecp for implemented Custom Datapath Extension Coprocessors (Cortex-M33)
  • extended BoardType added DebugProbeType and FlashAlgorithm.
  • removed types and references used by deprecated cprj format.
1.6.3
  • removed CMSIS Project Description format (cpdsc) from CMSIS-Pack. Format has been superseeded by new format specification located in the CMSIS Build tab.
  • added debug setup tutorial to the documentation.
  • updated documentation of PackChk "errors and warnings".
  • updated documentation to reflect switch from 'http' to 'https'.
  • added 'folder' attribute to example's <environment> element.
  • added 'ACCESS_AP' to DataPatchAccessTypeEnum.
  • added 'Cortex-M55' to DcoreEnum.
  • added 'uninit' attribute to <memory> element to replace deprecated 'init' attribute.
  • updated DmveEnum 'DmveEnum' specification.
  • updated minimum length of <Cclass>, <Cgroup> and <Cvariant> attributes in <component> from 3 to 2.
  • removed all types specific to cpdsc format. Cpdsc is replaced by Cprj with dedicated schema.
1.6.2 Modifications compared to Version 1.6.1
1.6.1 Modifications compared to Version 1.6.0
1.6.0 Modifications compared to Version 1.5.0
  • added Armv8.1-M MVE processor feature attribute 'Dmve'.
  • added local and global pre-include section Pre_Include_Local_Component_h, Pre_Include_Global_h.
  • added file categories 'preIncludeLocal' and 'preIncludeGlobal' to the FileCategoryEnum.
  • added file attribute 'path' for file category 'header' to add support for relative include paths.
  • added to package element the possibility to restrict the usage of the with attributes Dcore, Dname, Dvendor, and Tcompiler.
  • added dominate element to overwrites identical devices, APIs, or components.
  • added attribute 'condition' to the api element so that an API can be excluded based on a condition.
  • added new Software Component Cclasses : "Audio", "Board Part", "Data Exchange", "Extension Board", "IoT Client", "IoT Utility", "Security", "Utility".
1.5.0 Modifications compared to Version 1.4.9
1.4.9 Modifications compared to Version 1.4.8
  • added Toptions attribute for use in conditions
  • updated documentation for generator section to reflect new exe, web, and eclipse sections
1.4.8 Modifications compared to Version 1.4.7
  • added support for semantic versioning quality information in ConditionVersionType
  • updated Pack schema file making some elements optional
  • added Pack Index File Specification and schema file
1.4.7 Modifications compared to Version 1.4.6
  • added multiple version types to tighten the schema checking depending on context
  • added new generator sections for exe, web and eclipse based generators in <generator>
  • added new processor attributes Dtz = Trustzone and Ddsp = DSP instructions for Armv8-M
  • added new attributes Dtz, Ddsp, Dsecure to conditions <require>, <deny>, <accept>
  • added new processors Cortex-M23 and Cortex-M33 and other in DcoreEnum
  • added new attribute public to books and images to indicate public use of documents and board images
1.4.6 Modifications compared to Version 1.4.5
  • refined Dname string pattern restriction (RestrictedStringDname)
1.4.5 Modifications compared to Version 1.4.4
  • added: Punits to ProcessorType
  • added: Punit to DebugType
1.4.4 Modifications compared to Version 1.4.3
  • added: attribute defaultResetSequence to DebugType.
  • added: <requirements> section:
    • <packages> defining dependencies between packs
    • <languages> defining required language support e.g. C99
    • <compiler> defining required toolchains
  • added: <create> section used for tool independent project description
    • attributes: name, documentation, condition
    • <target> specifies the board and device targeted by the project
    • <options>
    • <files> specifies the grouped files
  • updated: <algorith> element
    • added attributes: style, parameter and endian
  • updated: <memory> element
    • added attributes: name, access and alias
    • deprecating attribute: id (replaced by name + access)
1.4.3 Modifications compared to Version 1.4.1
  • Adding attribute "sdf" to debugconfig element within section <devices>
1.4.1 Modifications compared to Version 1.4.0
  • pName, Dname, Dvariant type changed from xs:string to RestrictedString
1.4.0 Modifications compared to Version 1.3.3:
  • device section memory specification redefined, deprecating id attribute
  • device section algorithm support multiple flash programming algorithm styles
  • device section debug adding CJTAG debug port type
1.3.3 Modifications compared to Version 1.3.1:
  • Schema Version remains unchanged, since no incompatible update
  • Added generator section can specify a target GPDSC file that it will generate
  • Added A component can be linked to a generator and the generator's GPDSC file will be automatically included in the project as part of the component.
  • Added A generator command is optionally extended by a separate description of arguments
  • Updated Vendor list
  • Updated Utility packChk.exe to Version 1.3.0.0:
    • detect redefinitions of boards
    • check presence of board image files
    • check for duplicate device features
    • check for duplicate device definitions
    • check for
    • minor bug fixes
1.3.1 Modifications compared to Version 1.3:
  • Schema Version remains unchanged, since no incompatible update
  • Added Cortex-M7 to the predefined list of processors
  • Updated Vendor list
  • Added File version attribute to debugvars element of device description
  • Updated XML file header encoding tag set to capital "UTF8"
  • Deprecated init attribute of <memory> element in <devices> section deprecated
1.3 Modifications compared to Version 1.2:
  • Added attributes to release tag for managing deprecation and changing Pack IDs
  • Removed external RAMn and ROMn memory IDs in memory tag
  • Added FileCategoryTypes in <file> element for C, C++, Assembler, Linker
  • Extended specification of <require>, <accept> and <deny> with Cversion and Capiversion ranges
  • Added Checking CMSIS-Packs and packchk for Pack validation
  • Added documentation for the Example Pack based on LPC1800 Device Family
  • Refined <debug> element description
  • Many clarifications in the documentation along with examples
1.2 Clarifications for release.
1.1 - Preliminary Update release for review:
  • new Boards description
  • new Debug description
  • revised Device Feature capture
  • new Generator description
  • new Flash Algorithm Specification
  • new Configuration Wizard Annotation Specification
1.0 - Preliminary Preliminary release for review
0.10 Release for beta review