MCUXpresso Community Articles

cancel
Showing results for 
Search instead for 
Did you mean: 

MCUXpresso Community Articles

NXP Employee
NXP Employee

Comprehensive information about SDK SW components and SDK release describing YML can be found in the Yml data record guide here:

http://10.193.108.154:4000/mcu-sdk-generator/doc/Yml%20data%20record%20guide.html#add-a-middleware-y...

Example

We need to build a dependency from the eIQ component to the CMSIS DSK Library component.

pastedImage_1.png

It is needed to add the dependency definition into the __requires__ section of the dependent component into YML:

middleware.eiq.cmsis_nn:

  section-type: component

  __requires__:

    - middleware.eiq.ui_control

      CMSIS_DSP_Lib.arm_cortexM7lfdp_math

  contents:

    cc-include:

      - path: middleware/eiq/cmsis-nn/Include

    files:

...

Such dependency will be reflected on the MCUXpresso website and also in the SDK manifest file:

    <component id="middleware.eiq.cmsis_nn.MIMXRT1052" name="CMSIS-NN" brief="CMSIS-NN library" version="1.0.0" full_name="CMSIS-NN library" devices="MIMXRT1052xxxxB" dependency="platform.CMSIS_DSP_Lib.arm_cortexM7lfdp_math.MIMXRT1052" category="Machine Learning/eIQ" user_visible="true" type="middleware">

      <source path="middleware/eiq/cmsis-nn/Include" target_path="CMSIS/NN/Include" type="c_include">

        <files mask="arm_nnfunctions.h"/>

        <files mask="arm_nnsupportfunctions.h"/>

        <files mask="arm_nn_tables.h"/>

      </source>

How to verify that the dependency has been correctly described it will really work in the SW tools?

  1. You can generate an SDK package with this component and check the behavior in the MCUX IDE.
  2. You can check SDK release data tables - output of the first two stages of the SDK Generator, where the component dependencies are resolved:
    1. Run “ruby all_evkxxx.rb -a eiq -c superset -o target_dir“, in the target_dir/devices/<xxxx>/<xxxx>.yml, you can check under your middleware.eiq.ui_control, it should have the “CMSIS_DSP_Lib.ui_control” in the “web_requires”, like

      middleware.eiq.ui_control:

        section-type: component_support

        __requires__:

          - board.evkbimxrt1050

          - board.evkmimxrt1060

        component_info:

          common:

            ui_name: eIQ

            ui_description: eIQ machine learning

            ui_category: Middleware

            ui_control: 'True'

            ui_control_default: 'False'

            ui_release_specific: 'True'

            full_name: eIQ

            class: Machine Learning

            version: 1.0

            description: eIQ machine learning

        web_requires:

          - CMSIS_DSP_Lib.ui_control

  3. You can ask the SWPE team to deploy your experimental SDK release superset with this change on an MCUX sandbox website - follow instructions described here: https://confluence.sw.nxp.com/display/MCUXSDKB/Deployment+of+an+experimental+SDK+release+image+on+th...

More
2 0 35
NXP Employee
NXP Employee

New features update:

  •  SDKGEN-924Support to automatically link secure and non-secure projects in Mcuxpresso IDE

        This feature supports to link trustzone projects. In MCUXpresso IDE, if you select a secure project or non-secure         project, the other trustzone paired project will be selected automatically.
        In order to enable the feature, "linked_project" need to be set for both projects.

        Here is an demo example:

                                   1.png

        For more detailed trustzone settings, please refer to yml data record guide doc. 

  •  SDKGEN-915Support to add preprocess cmd in cmakelist

        There is a requirement which needs to preprocess the original linker file with commands. For this reason, the         CMakeLists needs to call preprocesser.

        To add preprocess cmd in cmakelist file, need to add 2 flags in yml: 

           ○ preprocessed: give the path of preprocessed linker file
           ○ Prebuild: give commands to preprocess linker file
        Here is an example:

                        1.png

                        1.png

More
1 0 25
Labels