---
## CMSIS Core component
CMSIS_Include_core_cm:
  section-type: component
  __requires__:
    - cmsis.core_cm.support
  contents:
    repo_base_path: CMSIS/Core/Include
    project_base_path: CMSIS
    cc-include:
      - repo_relative_path: "./"
    files:
      - source: cmsis_armcc.h
        compilers: armcc
      - source: cmsis_armclang.h
        compilers: armclang
      - source: cmsis_armclang_ltm.h
        compilers: armclang
      - source: cmsis_compiler.h
        compilers: armclang armcc gcc iar
      - source: cmsis_gcc.h
        compilers: gcc
      - source: cmsis_iccarm.h
        compilers: iar
      - source: cmsis_version.h
        compilers: armclang armcc gcc iar
      - source: core_cm0.h
        cores: cm0
      - source: core_cm0plus.h
        cores: cm0p
      - source: core_cm23.h
        cores: cm23
      - source: core_cm3.h
        cores: cm3
      - source: core_cm33.h
        cores: cm33 cm33f
      - source: core_cm4.h
        cores: cm4 cm4f
      - source: core_cm7.h
        cores: cm7 cm7f
      - source: cachel1_armv7.h
        cores: cm7 cm7f
      - source: mpu_armv7.h
        cores: cm0 cm0p cm3 cm4 cm4f cm7 cm7f
      - source: mpu_armv8.h
        cores: cm23 cm33 cm33f
      - source: tz_context.h
        cores: cm23 cm33 cm33f
  component_info:
    common:
      version: 5.5.0
      type: CMSIS_Include
      full_name: CMSIS Include For Cortex-M, ARMv8-M, ARMv8.1-M
      description: CMSIS-CORE for Cortex-M, ARMv8-M, ARMv8.1-M
      manifest_name: CMSIS_Include_CM
    cmsis_pack:
      class: CMSIS
      pack_name: CMSIS
      group: CORE
      sub: ''
      pack_url: http://www.keil.com/pack/
      pack_vendor: ARM
      pack_version: 5.8.0

CMSIS_Include_core_ca7:
  section-type: component
  contents:
    repo_base_path: CMSIS/Core_A
    project_base_path: CMSIS
    cc-include:
      - repo_relative_path: "./"
    files:
      - source: Include/cmsis_armcc.h
      - source: Include/cmsis_armclang.h
      - source: Include/cmsis_gcc.h
      - source: Include/cmsis_compiler.h
      - source: Include/cmsis_cp15.h
      - source: Include/cmsis_iccarm.h
      - source: Include/core_ca.h
      - source: Include/irq_ctrl.h
      - source: Source/irq_ctrl_gic.c
  __requires__:
    - cmsis.core_ca7.support
  component_info:
    common:
      version: 1.2.1
      type: CMSIS_Include
      full_name: CMSIS Include For Cortex-A
      description: CMSIS-CORE for Cortex-A
      manifest_name: CMSIS_Include_CA7
    cmsis_pack:
      class: CMSIS
      group: CORE
      sub: ''
      pack_name: CMSIS
      pack_url: http://www.keil.com/pack/
      pack_vendor: ARM
      pack_version: 5.8.0

cmsis.core_cm.support:
  section-type: component_support
  __requires__:
    - core.cm0
    - core.cm0p
    - core.cm3
    - core.cm4
    - core.cm4f
    - core.cm23
    - core.cm33
    - core.cm33f
    - core.cm7
    - core.cm7f
    - core.cm55

cmsis.core_ca7.support:
  section-type: component_support
  __requires__:
    - core.ca7

CMSIS_DSP_Include:
  section-type: component
  contents:
    repo_base_path: CMSIS/DSP
    project_base_path: CMSIS/DSP
    cc-include:
      - repo_relative_path: Include
      - repo_relative_path: PrivateInclude
    files:
      - source: README.md
        hidden: true
        exclude: true
      - source: Include/arm_common_tables.h
      - source: Include/arm_const_structs.h
      - source: Include/arm_math.h
      - source: Include/arm_common_tables_f16.h
      - source: Include/arm_const_structs_f16.h
      - source: Include/arm_helium_utils.h
      - source: Include/arm_math_f16.h
      - source: Include/arm_math_memory.h
      - source: Include/arm_math_types.h
      - source: Include/arm_math_types_f16.h
      - source: Include/arm_mve_tables.h
      - source: Include/arm_mve_tables_f16.h
      - source: Include/arm_vec_math.h
      - source: Include/arm_vec_math_f16.h
      - source: Include/dsp/basic_math_functions.h
      - source: Include/dsp/basic_math_functions_f16.h
      - source: Include/dsp/bayes_functions.h
      - source: Include/dsp/bayes_functions_f16.h
      - source: Include/dsp/complex_math_functions.h
      - source: Include/dsp/complex_math_functions_f16.h
      - source: Include/dsp/controller_functions.h
      - source: Include/dsp/controller_functions_f16.h
      - source: Include/dsp/distance_functions.h
      - source: Include/dsp/distance_functions_f16.h
      - source: Include/dsp/fast_math_functions.h
      - source: Include/dsp/fast_math_functions_f16.h
      - source: Include/dsp/filtering_functions.h
      - source: Include/dsp/filtering_functions_f16.h
      - source: Include/dsp/interpolation_functions.h
      - source: Include/dsp/interpolation_functions_f16.h
      - source: Include/dsp/matrix_functions.h
      - source: Include/dsp/matrix_functions_f16.h
      - source: Include/dsp/none.h
      - source: Include/dsp/quaternion_math_functions.h
      - source: Include/dsp/statistics_functions.h
      - source: Include/dsp/statistics_functions_f16.h
      - source: Include/dsp/support_functions.h
      - source: Include/dsp/support_functions_f16.h
      - source: Include/dsp/svm_defines.h
      - source: Include/dsp/svm_functions.h
      - source: Include/dsp/svm_functions_f16.h
      - source: Include/dsp/transform_functions.h
      - source: Include/dsp/transform_functions_f16.h
      - source: Include/dsp/utils.h
      - source: PrivateInclude/arm_sorting.h
      - source: PrivateInclude/arm_vec_fft.h
      - source: PrivateInclude/arm_vec_filtering.h
  __requires__:
  - CMSIS_DSP_Lib.ui_control
  component_info:
    common:
      version: 1.9.0
      type: CMSIS_driver
      full_name: CMSIS DSP Library Header
      description: CMSIS-DSP Library Header
      manifest_name: CMSIS_DSP_Library_Header
    cmsis_pack:
      class: CMSIS
      group: DSP
      sub: ''
      pack_name: CMSIS
      pack_url: http://www.keil.com/pack/
      pack_vendor: ARM
      pack_version: 5.8.0

CMSIS_DSP_Source:
  section-type: component
  configuration:
    tools:
      __common__:
        config:
          __common__:
            cc-define:
              DISABLEFLOAT16:
  contents:
    repo_base_path: CMSIS/DSP
    project_base_path: CMSIS/DSP
    cc-include:
      - repo_relative_path: Include
      - repo_relative_path: PrivateInclude
      - repo_relative_path: Source/DistanceFunctions
    files:
      - source: README.md
        hidden: true
        exclude: true

      - source: Include/arm_common_tables.h
      - source: Include/arm_const_structs.h
      - source: Include/arm_math.h
      - source: Include/arm_common_tables_f16.h
      - source: Include/arm_const_structs_f16.h
      - source: Include/arm_helium_utils.h
      - source: Include/arm_math_f16.h
      - source: Include/arm_math_memory.h
      - source: Include/arm_math_types.h
      - source: Include/arm_math_types_f16.h
      - source: Include/arm_mve_tables.h
      - source: Include/arm_mve_tables_f16.h
      - source: Include/arm_vec_math.h
      - source: Include/arm_vec_math_f16.h
      - source: Include/dsp/basic_math_functions.h
      - source: Include/dsp/basic_math_functions_f16.h
      - source: Include/dsp/bayes_functions.h
      - source: Include/dsp/bayes_functions_f16.h
      - source: Include/dsp/complex_math_functions.h
      - source: Include/dsp/complex_math_functions_f16.h
      - source: Include/dsp/controller_functions.h
      - source: Include/dsp/controller_functions_f16.h
      - source: Include/dsp/distance_functions.h
      - source: Include/dsp/distance_functions_f16.h
      - source: Include/dsp/fast_math_functions.h
      - source: Include/dsp/fast_math_functions_f16.h
      - source: Include/dsp/filtering_functions.h
      - source: Include/dsp/filtering_functions_f16.h
      - source: Include/dsp/interpolation_functions.h
      - source: Include/dsp/interpolation_functions_f16.h
      - source: Include/dsp/matrix_functions.h
      - source: Include/dsp/matrix_functions_f16.h
      - source: Include/dsp/none.h
      - source: Include/dsp/quaternion_math_functions.h
      - source: Include/dsp/statistics_functions.h
      - source: Include/dsp/statistics_functions_f16.h
      - source: Include/dsp/support_functions.h
      - source: Include/dsp/support_functions_f16.h
      - source: Include/dsp/svm_defines.h
      - source: Include/dsp/svm_functions.h
      - source: Include/dsp/svm_functions_f16.h
      - source: Include/dsp/transform_functions.h
      - source: Include/dsp/transform_functions_f16.h
      - source: Include/dsp/utils.h
      - source: PrivateInclude/arm_sorting.h
      - source: PrivateInclude/arm_vec_fft.h
      - source: PrivateInclude/arm_vec_filtering.h

      - source: Source/BasicMathFunctions/BasicMathFunctions.c
      - source: Source/BasicMathFunctions/arm_abs_f32.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_abs_q15.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_abs_q31.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_abs_q7.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_add_f32.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_add_q15.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_add_q31.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_add_q7.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_and_u16.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_and_u32.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_and_u8.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_clip_f32.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_clip_q15.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_clip_q31.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_clip_q7.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_dot_prod_f32.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_dot_prod_q15.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_dot_prod_q31.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_dot_prod_q7.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_mult_f32.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_mult_q15.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_mult_q31.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_mult_q7.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_negate_f32.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_negate_q15.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_negate_q31.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_negate_q7.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_not_u16.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_not_u32.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_not_u8.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_offset_f32.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_offset_q15.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_offset_q31.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_offset_q7.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_or_u16.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_or_u32.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_or_u8.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_scale_f32.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_scale_q15.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_scale_q31.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_scale_q7.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_shift_q15.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_shift_q31.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_shift_q7.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_sub_f32.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_sub_q15.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_sub_q31.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_sub_q7.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_xor_u16.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_xor_u32.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_xor_u8.c
        exclude: true

      - source: Source/BasicMathFunctions/BasicMathFunctionsF16.c
      - source: Source/BasicMathFunctions/arm_abs_f16.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_add_f16.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_clip_f16.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_dot_prod_f16.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_mult_f16.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_negate_f16.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_offset_f16.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_scale_f16.c
        exclude: true
      - source: Source/BasicMathFunctions/arm_sub_f16.c
        exclude: true

      - source: Source/BayesFunctions/BayesFunctions.c
      - source: Source/BayesFunctions/arm_gaussian_naive_bayes_predict_f32.c
        exclude: true

      - source: Source/BayesFunctions/BayesFunctionsF16.c
      - source: Source/BayesFunctions/arm_gaussian_naive_bayes_predict_f16.c
        exclude: true

      - source: Source/CommonTables/CommonTables.c
      - source: Source/CommonTables/arm_common_tables.c
        exclude: true
      - source: Source/CommonTables/arm_const_structs.c
        exclude: true
      - source: Source/CommonTables/arm_mve_tables.c
        exclude: true

      - source: Source/CommonTables/CommonTablesF16.c
      - source: Source/CommonTables/arm_common_tables_f16.c
        exclude: true
      - source: Source/CommonTables/arm_const_structs_f16.c
        exclude: true
      - source: Source/CommonTables/arm_mve_tables_f16.c
        exclude: true

      - source: Source/ComplexMathFunctions/ComplexMathFunctions.c
      - source: Source/ComplexMathFunctions/arm_cmplx_conj_f32.c
        exclude: true
      - source: Source/ComplexMathFunctions/arm_cmplx_conj_q15.c
        exclude: true
      - source: Source/ComplexMathFunctions/arm_cmplx_conj_q31.c
        exclude: true
      - source: Source/ComplexMathFunctions/arm_cmplx_dot_prod_f32.c
        exclude: true
      - source: Source/ComplexMathFunctions/arm_cmplx_dot_prod_q15.c
        exclude: true
      - source: Source/ComplexMathFunctions/arm_cmplx_dot_prod_q31.c
        exclude: true
      - source: Source/ComplexMathFunctions/arm_cmplx_mag_f32.c
        exclude: true
      - source: Source/ComplexMathFunctions/arm_cmplx_mag_q15.c
        exclude: true
      - source: Source/ComplexMathFunctions/arm_cmplx_mag_q31.c
        exclude: true
      - source: Source/ComplexMathFunctions/arm_cmplx_mag_squared_f32.c
        exclude: true
      - source: Source/ComplexMathFunctions/arm_cmplx_mag_squared_q15.c
        exclude: true
      - source: Source/ComplexMathFunctions/arm_cmplx_mag_squared_q31.c
        exclude: true
      - source: Source/ComplexMathFunctions/arm_cmplx_mult_cmplx_f32.c
        exclude: true
      - source: Source/ComplexMathFunctions/arm_cmplx_mult_cmplx_q15.c
        exclude: true
      - source: Source/ComplexMathFunctions/arm_cmplx_mult_cmplx_q31.c
        exclude: true
      - source: Source/ComplexMathFunctions/arm_cmplx_mult_real_f32.c
        exclude: true
      - source: Source/ComplexMathFunctions/arm_cmplx_mult_real_q15.c
        exclude: true
      - source: Source/ComplexMathFunctions/arm_cmplx_mult_real_q31.c
        exclude: true

      - source: Source/ComplexMathFunctions/ComplexMathFunctionsF16.c
      - source: Source/ComplexMathFunctions/arm_cmplx_conj_f16.c
        exclude: true
      - source: Source/ComplexMathFunctions/arm_cmplx_dot_prod_f16.c
        exclude: true
      - source: Source/ComplexMathFunctions/arm_cmplx_mag_f16.c
        exclude: true
      - source: Source/ComplexMathFunctions/arm_cmplx_mag_squared_f16.c
        exclude: true
      - source: Source/ComplexMathFunctions/arm_cmplx_mult_cmplx_f16.c
        exclude: true
      - source: Source/ComplexMathFunctions/arm_cmplx_mult_real_f16.c
        exclude: true

      - source: Source/ControllerFunctions/ControllerFunctions.c
      - source: Source/ControllerFunctions/arm_pid_init_f32.c
        exclude: true
      - source: Source/ControllerFunctions/arm_pid_init_q15.c
        exclude: true
      - source: Source/ControllerFunctions/arm_pid_init_q31.c
        exclude: true
      - source: Source/ControllerFunctions/arm_pid_reset_f32.c
        exclude: true
      - source: Source/ControllerFunctions/arm_pid_reset_q15.c
        exclude: true
      - source: Source/ControllerFunctions/arm_pid_reset_q31.c
        exclude: true
      - source: Source/ControllerFunctions/arm_sin_cos_f32.c
        exclude: true
      - source: Source/ControllerFunctions/arm_sin_cos_q31.c
        exclude: true

      - source: Source/DistanceFunctions/DistanceFunctions.c
      - source: Source/DistanceFunctions/arm_boolean_distance_template.h
      - source: Source/DistanceFunctions/arm_boolean_distance.c
        exclude: true
      - source: Source/DistanceFunctions/arm_braycurtis_distance_f32.c
        exclude: true
      - source: Source/DistanceFunctions/arm_canberra_distance_f32.c
        exclude: true
      - source: Source/DistanceFunctions/arm_chebyshev_distance_f32.c
        exclude: true
      - source: Source/DistanceFunctions/arm_cityblock_distance_f32.c
        exclude: true
      - source: Source/DistanceFunctions/arm_correlation_distance_f32.c
        exclude: true
      - source: Source/DistanceFunctions/arm_cosine_distance_f32.c
        exclude: true
      - source: Source/DistanceFunctions/arm_dice_distance.c
        exclude: true
      - source: Source/DistanceFunctions/arm_euclidean_distance_f32.c
        exclude: true
      - source: Source/DistanceFunctions/arm_hamming_distance.c
        exclude: true
      - source: Source/DistanceFunctions/arm_jaccard_distance.c
        exclude: true
      - source: Source/DistanceFunctions/arm_jensenshannon_distance_f32.c
        exclude: true
      - source: Source/DistanceFunctions/arm_kulsinski_distance.c
        exclude: true
      - source: Source/DistanceFunctions/arm_minkowski_distance_f32.c
        exclude: true
      - source: Source/DistanceFunctions/arm_rogerstanimoto_distance.c
        exclude: true
      - source: Source/DistanceFunctions/arm_russellrao_distance.c
        exclude: true
      - source: Source/DistanceFunctions/arm_sokalmichener_distance.c
        exclude: true
      - source: Source/DistanceFunctions/arm_sokalsneath_distance.c
        exclude: true
      - source: Source/DistanceFunctions/arm_yule_distance.c
        exclude: true

      - source: Source/DistanceFunctions/DistanceFunctionsF16.c
      - source: Source/DistanceFunctions/arm_braycurtis_distance_f16.c
        exclude: true
      - source: Source/DistanceFunctions/arm_canberra_distance_f16.c
        exclude: true
      - source: Source/DistanceFunctions/arm_chebyshev_distance_f16.c
        exclude: true
      - source: Source/DistanceFunctions/arm_cityblock_distance_f16.c
        exclude: true
      - source: Source/DistanceFunctions/arm_correlation_distance_f16.c
        exclude: true
      - source: Source/DistanceFunctions/arm_cosine_distance_f16.c
        exclude: true
      - source: Source/DistanceFunctions/arm_euclidean_distance_f16.c
        exclude: true
      - source: Source/DistanceFunctions/arm_jensenshannon_distance_f16.c
        exclude: true
      - source: Source/DistanceFunctions/arm_minkowski_distance_f16.c
        exclude: true

      - source: Source/FastMathFunctions/FastMathFunctions.c
      - source: Source/FastMathFunctions/arm_cos_f32.c
        exclude: true
      - source: Source/FastMathFunctions/arm_cos_q15.c
        exclude: true
      - source: Source/FastMathFunctions/arm_cos_q31.c
        exclude: true
      - source: Source/FastMathFunctions/arm_divide_q15.c
        exclude: true
      - source: Source/FastMathFunctions/arm_sin_f32.c
        exclude: true
      - source: Source/FastMathFunctions/arm_sin_q15.c
        exclude: true
      - source: Source/FastMathFunctions/arm_sin_q31.c
        exclude: true
      - source: Source/FastMathFunctions/arm_sqrt_q15.c
        exclude: true
      - source: Source/FastMathFunctions/arm_sqrt_q31.c
        exclude: true
      - source: Source/FastMathFunctions/arm_vexp_f32.c
        exclude: true
      - source: Source/FastMathFunctions/arm_vlog_f32.c
        exclude: true

      - source: Source/FastMathFunctions/FastMathFunctionsF16.c
      - source: Source/FastMathFunctions/arm_vexp_f16.c
        exclude: true
      - source: Source/FastMathFunctions/arm_vinverse_f16.c
        exclude: true
      - source: Source/FastMathFunctions/arm_vlog_f16.c
        exclude: true

      - source: Source/FilteringFunctions/FilteringFunctions.c
      - source: Source/FilteringFunctions/arm_biquad_cascade_df1_32x64_init_q31.c
        exclude: true
      - source: Source/FilteringFunctions/arm_biquad_cascade_df1_32x64_q31.c
        exclude: true
      - source: Source/FilteringFunctions/arm_biquad_cascade_df1_f32.c
        exclude: true
      - source: Source/FilteringFunctions/arm_biquad_cascade_df1_fast_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_biquad_cascade_df1_fast_q31.c
        exclude: true
      - source: Source/FilteringFunctions/arm_biquad_cascade_df1_init_f32.c
        exclude: true
      - source: Source/FilteringFunctions/arm_biquad_cascade_df1_init_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_biquad_cascade_df1_init_q31.c
        exclude: true
      - source: Source/FilteringFunctions/arm_biquad_cascade_df1_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_biquad_cascade_df1_q31.c
        exclude: true
      - source: Source/FilteringFunctions/arm_biquad_cascade_df2T_f32.c
        exclude: true
      - source: Source/FilteringFunctions/arm_biquad_cascade_df2T_f64.c
        exclude: true
      - source: Source/FilteringFunctions/arm_biquad_cascade_df2T_init_f32.c
        exclude: true
      - source: Source/FilteringFunctions/arm_biquad_cascade_df2T_init_f64.c
        exclude: true
      - source: Source/FilteringFunctions/arm_biquad_cascade_stereo_df2T_f32.c
        exclude: true
      - source: Source/FilteringFunctions/arm_biquad_cascade_stereo_df2T_init_f32.c
        exclude: true
      - source: Source/FilteringFunctions/arm_conv_f32.c
        exclude: true
      - source: Source/FilteringFunctions/arm_conv_fast_opt_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_conv_fast_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_conv_fast_q31.c
        exclude: true
      - source: Source/FilteringFunctions/arm_conv_opt_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_conv_opt_q7.c
        exclude: true
      - source: Source/FilteringFunctions/arm_conv_partial_f32.c
        exclude: true
      - source: Source/FilteringFunctions/arm_conv_partial_fast_opt_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_conv_partial_fast_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_conv_partial_fast_q31.c
        exclude: true
      - source: Source/FilteringFunctions/arm_conv_partial_opt_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_conv_partial_opt_q7.c
        exclude: true
      - source: Source/FilteringFunctions/arm_conv_partial_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_conv_partial_q31.c
        exclude: true
      - source: Source/FilteringFunctions/arm_conv_partial_q7.c
        exclude: true
      - source: Source/FilteringFunctions/arm_conv_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_conv_q31.c
        exclude: true
      - source: Source/FilteringFunctions/arm_conv_q7.c
        exclude: true
      - source: Source/FilteringFunctions/arm_correlate_f32.c
        exclude: true
      - source: Source/FilteringFunctions/arm_correlate_fast_opt_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_correlate_fast_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_correlate_fast_q31.c
        exclude: true
      - source: Source/FilteringFunctions/arm_correlate_opt_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_correlate_opt_q7.c
        exclude: true
      - source: Source/FilteringFunctions/arm_correlate_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_correlate_q31.c
        exclude: true
      - source: Source/FilteringFunctions/arm_correlate_q7.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_decimate_f32.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_decimate_fast_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_decimate_fast_q31.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_decimate_init_f32.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_decimate_init_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_decimate_init_q31.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_decimate_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_decimate_q31.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_f32.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_fast_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_fast_q31.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_init_f32.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_init_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_init_q31.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_init_q7.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_interpolate_f32.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_interpolate_init_f32.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_interpolate_init_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_interpolate_init_q31.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_interpolate_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_interpolate_q31.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_lattice_f32.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_lattice_init_f32.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_lattice_init_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_lattice_init_q31.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_lattice_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_lattice_q31.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_q31.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_q7.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_sparse_f32.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_sparse_init_f32.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_sparse_init_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_sparse_init_q31.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_sparse_init_q7.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_sparse_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_sparse_q31.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_sparse_q7.c
        exclude: true
      - source: Source/FilteringFunctions/arm_iir_lattice_f32.c
        exclude: true
      - source: Source/FilteringFunctions/arm_iir_lattice_init_f32.c
        exclude: true
      - source: Source/FilteringFunctions/arm_iir_lattice_init_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_iir_lattice_init_q31.c
        exclude: true
      - source: Source/FilteringFunctions/arm_iir_lattice_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_iir_lattice_q31.c
        exclude: true
      - source: Source/FilteringFunctions/arm_levinson_durbin_f32.c
        exclude: true
      - source: Source/FilteringFunctions/arm_levinson_durbin_q31.c
        exclude: true
      - source: Source/FilteringFunctions/arm_lms_f32.c
        exclude: true
      - source: Source/FilteringFunctions/arm_lms_init_f32.c
        exclude: true
      - source: Source/FilteringFunctions/arm_lms_init_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_lms_init_q31.c
        exclude: true
      - source: Source/FilteringFunctions/arm_lms_norm_f32.c
        exclude: true
      - source: Source/FilteringFunctions/arm_lms_norm_init_f32.c
        exclude: true
      - source: Source/FilteringFunctions/arm_lms_norm_init_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_lms_norm_init_q31.c
        exclude: true
      - source: Source/FilteringFunctions/arm_lms_norm_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_lms_norm_q31.c
        exclude: true
      - source: Source/FilteringFunctions/arm_lms_q15.c
        exclude: true
      - source: Source/FilteringFunctions/arm_lms_q31.c
        exclude: true

      - source: Source/FilteringFunctions/FilteringFunctionsF16.c
      - source: Source/FilteringFunctions/arm_biquad_cascade_df1_f16.c
        exclude: true
      - source: Source/FilteringFunctions/arm_biquad_cascade_df1_init_f16.c
        exclude: true
      - source: Source/FilteringFunctions/arm_biquad_cascade_df2T_f16.c
        exclude: true
      - source: Source/FilteringFunctions/arm_biquad_cascade_df2T_init_f16.c
        exclude: true
      - source: Source/FilteringFunctions/arm_biquad_cascade_stereo_df2T_f16.c
        exclude: true
      - source: Source/FilteringFunctions/arm_biquad_cascade_stereo_df2T_init_f16.c
        exclude: true
      - source: Source/FilteringFunctions/arm_correlate_f16.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_f16.c
        exclude: true
      - source: Source/FilteringFunctions/arm_fir_init_f16.c
        exclude: true
      - source: Source/FilteringFunctions/arm_levinson_durbin_f16.c
        exclude: true

      - source: Source/InterpolationFunctions/InterpolationFunctions.c
      - source: Source/InterpolationFunctions/arm_bilinear_interp_f32.c
        exclude: true
      - source: Source/InterpolationFunctions/arm_bilinear_interp_q15.c
        exclude: true
      - source: Source/InterpolationFunctions/arm_bilinear_interp_q31.c
        exclude: true
      - source: Source/InterpolationFunctions/arm_bilinear_interp_q7.c
        exclude: true
      - source: Source/InterpolationFunctions/arm_linear_interp_f32.c
        exclude: true
      - source: Source/InterpolationFunctions/arm_linear_interp_q15.c
        exclude: true
      - source: Source/InterpolationFunctions/arm_linear_interp_q31.c
        exclude: true
      - source: Source/InterpolationFunctions/arm_linear_interp_q7.c
        exclude: true
      - source: Source/InterpolationFunctions/arm_spline_interp_f32.c
        exclude: true
      - source: Source/InterpolationFunctions/arm_spline_interp_init_f32.c
        exclude: true

      - source: Source/InterpolationFunctions/InterpolationFunctionsF16.c
      - source: Source/InterpolationFunctions/arm_bilinear_interp_f16.c
        exclude: true
      - source: Source/InterpolationFunctions/arm_linear_interp_f16.c
        exclude: true

      - source: Source/MatrixFunctions/MatrixFunctions.c
      - source: Source/MatrixFunctions/arm_mat_add_f32.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_add_q15.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_add_q31.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_cholesky_f32.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_cholesky_f64.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_cmplx_mult_f32.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_cmplx_mult_q15.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_cmplx_mult_q31.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_cmplx_trans_f32.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_cmplx_trans_q15.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_cmplx_trans_q31.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_init_f32.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_init_q15.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_init_q31.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_inverse_f32.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_inverse_f64.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_ldlt_f32.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_ldlt_f64.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_mult_f32.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_mult_f64.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_mult_fast_q15.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_mult_fast_q31.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_mult_q15.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_mult_q31.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_mult_q7.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_scale_f32.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_scale_q15.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_scale_q31.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_solve_lower_triangular_f32.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_solve_lower_triangular_f64.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_solve_upper_triangular_f32.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_solve_upper_triangular_f64.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_sub_f32.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_sub_f64.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_sub_q15.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_sub_q31.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_trans_f32.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_trans_f64.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_trans_q15.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_trans_q31.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_trans_q7.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_vec_mult_f32.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_vec_mult_q15.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_vec_mult_q31.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_vec_mult_q7.c
        exclude: true

      - source: Source/MatrixFunctions/MatrixFunctionsF16.c
      - source: Source/MatrixFunctions/arm_mat_add_f16.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_cholesky_f16.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_cmplx_mult_f16.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_cmplx_trans_f16.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_init_f16.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_inverse_f16.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_mult_f16.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_scale_f16.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_solve_lower_triangular_f16.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_solve_upper_triangular_f16.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_sub_f16.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_trans_f16.c
        exclude: true
      - source: Source/MatrixFunctions/arm_mat_vec_mult_f16.c
        exclude: true

      - source: Source/QuaternionMathFunctions/QuaternionMathFunctions.c
      - source: Source/QuaternionMathFunctions/arm_quaternion2rotation_f32.c
        exclude: true
      - source: Source/QuaternionMathFunctions/arm_quaternion_conjugate_f32.c
        exclude: true
      - source: Source/QuaternionMathFunctions/arm_quaternion_inverse_f32.c
        exclude: true
      - source: Source/QuaternionMathFunctions/arm_quaternion_norm_f32.c
        exclude: true
      - source: Source/QuaternionMathFunctions/arm_quaternion_normalize_f32.c
        exclude: true
      - source: Source/QuaternionMathFunctions/arm_quaternion_product_f32.c
        exclude: true
      - source: Source/QuaternionMathFunctions/arm_quaternion_product_single_f32.c
        exclude: true
      - source: Source/QuaternionMathFunctions/arm_rotation2quaternion_f32.c
        exclude: true

      - source: Source/SVMFunctions/SVMFunctions.c
      - source: Source/SVMFunctions/arm_svm_linear_init_f32.c
        exclude: true
      - source: Source/SVMFunctions/arm_svm_linear_predict_f32.c
        exclude: true
      - source: Source/SVMFunctions/arm_svm_polynomial_init_f32.c
        exclude: true
      - source: Source/SVMFunctions/arm_svm_polynomial_predict_f32.c
        exclude: true
      - source: Source/SVMFunctions/arm_svm_rbf_init_f32.c
        exclude: true
      - source: Source/SVMFunctions/arm_svm_rbf_predict_f32.c
        exclude: true
      - source: Source/SVMFunctions/arm_svm_sigmoid_init_f32.c
        exclude: true
      - source: Source/SVMFunctions/arm_svm_sigmoid_predict_f32.c
        exclude: true

      - source: Source/SVMFunctions/SVMFunctionsF16.c
      - source: Source/SVMFunctions/arm_svm_linear_init_f16.c
        exclude: true
      - source: Source/SVMFunctions/arm_svm_linear_predict_f16.c
        exclude: true
      - source: Source/SVMFunctions/arm_svm_polynomial_init_f16.c
        exclude: true
      - source: Source/SVMFunctions/arm_svm_polynomial_predict_f16.c
        exclude: true
      - source: Source/SVMFunctions/arm_svm_rbf_init_f16.c
        exclude: true
      - source: Source/SVMFunctions/arm_svm_rbf_predict_f16.c
        exclude: true
      - source: Source/SVMFunctions/arm_svm_sigmoid_init_f16.c
        exclude: true
      - source: Source/SVMFunctions/arm_svm_sigmoid_predict_f16.c
        exclude: true

      - source: Source/StatisticsFunctions/StatisticsFunctions.c
      - source: Source/StatisticsFunctions/arm_absmax_f32.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_absmax_q15.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_absmax_q31.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_absmax_q7.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_absmin_f32.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_absmin_q15.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_absmin_q31.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_absmin_q7.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_entropy_f32.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_entropy_f64.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_kullback_leibler_f32.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_kullback_leibler_f64.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_logsumexp_dot_prod_f32.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_logsumexp_f32.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_max_f32.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_max_no_idx_f32.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_max_q15.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_max_q31.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_max_q7.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_mean_f32.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_mean_q15.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_mean_q31.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_mean_q7.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_min_f32.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_min_q15.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_min_q31.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_min_q7.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_power_f32.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_power_q15.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_power_q31.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_power_q7.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_rms_f32.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_rms_q15.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_rms_q31.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_std_f32.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_std_q15.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_std_q31.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_var_f32.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_var_q15.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_var_q31.c
        exclude: true

      - source: Source/StatisticsFunctions/StatisticsFunctionsF16.c
      - source: Source/StatisticsFunctions/arm_absmax_f16.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_absmin_f16.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_entropy_f16.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_kullback_leibler_f16.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_logsumexp_dot_prod_f16.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_logsumexp_f16.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_max_f16.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_max_no_idx_f16.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_mean_f16.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_min_f16.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_power_f16.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_rms_f16.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_std_f16.c
        exclude: true
      - source: Source/StatisticsFunctions/arm_var_f16.c
        exclude: true

      - source: Source/SupportFunctions/SupportFunctions.c
      - source: Source/SupportFunctions/arm_barycenter_f32.c
        exclude: true
      - source: Source/SupportFunctions/arm_bitonic_sort_f32.c
        exclude: true
      - source: Source/SupportFunctions/arm_bubble_sort_f32.c
        exclude: true
      - source: Source/SupportFunctions/arm_copy_f32.c
        exclude: true
      - source: Source/SupportFunctions/arm_copy_q15.c
        exclude: true
      - source: Source/SupportFunctions/arm_copy_q31.c
        exclude: true
      - source: Source/SupportFunctions/arm_copy_q7.c
        exclude: true
      - source: Source/SupportFunctions/arm_fill_f32.c
        exclude: true
      - source: Source/SupportFunctions/arm_fill_q15.c
        exclude: true
      - source: Source/SupportFunctions/arm_fill_q31.c
        exclude: true
      - source: Source/SupportFunctions/arm_fill_q7.c
        exclude: true
      - source: Source/SupportFunctions/arm_float_to_q15.c
        exclude: true
      - source: Source/SupportFunctions/arm_float_to_q31.c
        exclude: true
      - source: Source/SupportFunctions/arm_float_to_q7.c
        exclude: true
      - source: Source/SupportFunctions/arm_heap_sort_f32.c
        exclude: true
      - source: Source/SupportFunctions/arm_insertion_sort_f32.c
        exclude: true
      - source: Source/SupportFunctions/arm_merge_sort_f32.c
        exclude: true
      - source: Source/SupportFunctions/arm_merge_sort_init_f32.c
        exclude: true
      - source: Source/SupportFunctions/arm_q15_to_float.c
        exclude: true
      - source: Source/SupportFunctions/arm_q15_to_q31.c
        exclude: true
      - source: Source/SupportFunctions/arm_q15_to_q7.c
        exclude: true
      - source: Source/SupportFunctions/arm_q31_to_float.c
        exclude: true
      - source: Source/SupportFunctions/arm_q31_to_q15.c
        exclude: true
      - source: Source/SupportFunctions/arm_q31_to_q7.c
        exclude: true
      - source: Source/SupportFunctions/arm_q7_to_float.c
        exclude: true
      - source: Source/SupportFunctions/arm_q7_to_q15.c
        exclude: true
      - source: Source/SupportFunctions/arm_q7_to_q31.c
        exclude: true
      - source: Source/SupportFunctions/arm_quick_sort_f32.c
        exclude: true
      - source: Source/SupportFunctions/arm_selection_sort_f32.c
        exclude: true
      - source: Source/SupportFunctions/arm_sort_f32.c
        exclude: true
      - source: Source/SupportFunctions/arm_sort_init_f32.c
        exclude: true
      - source: Source/SupportFunctions/arm_weighted_sum_f32.c
        exclude: true

      - source: Source/SupportFunctions/SupportFunctionsF16.c
      - source: Source/SupportFunctions/arm_barycenter_f16.c
        exclude: true
      - source: Source/SupportFunctions/arm_copy_f16.c
        exclude: true
      - source: Source/SupportFunctions/arm_f16_to_float.c
        exclude: true
      - source: Source/SupportFunctions/arm_f16_to_q15.c
        exclude: true
      - source: Source/SupportFunctions/arm_fill_f16.c
        exclude: true
      - source: Source/SupportFunctions/arm_float_to_f16.c
        exclude: true
      - source: Source/SupportFunctions/arm_q15_to_f16.c
        exclude: true
      - source: Source/SupportFunctions/arm_weighted_sum_f16.c
        exclude: true

      - source: Source/TransformFunctions/TransformFunctions.c
      - source: Source/TransformFunctions/arm_bitreversal.c
        exclude: true
      - source: Source/TransformFunctions/arm_bitreversal2.c
        exclude: true
      - source: Source/TransformFunctions/arm_bitreversal2.S
        type: src
        exclude: true
      - source: Source/TransformFunctions/arm_cfft_f32.c
        exclude: true
      - source: Source/TransformFunctions/arm_cfft_f64.c
        exclude: true
      - source: Source/TransformFunctions/arm_cfft_init_f32.c
        exclude: true
      - source: Source/TransformFunctions/arm_cfft_init_f64.c
        exclude: true
      - source: Source/TransformFunctions/arm_cfft_init_q15.c
        exclude: true
      - source: Source/TransformFunctions/arm_cfft_init_q31.c
        exclude: true
      - source: Source/TransformFunctions/arm_cfft_q15.c
        exclude: true
      - source: Source/TransformFunctions/arm_cfft_q31.c
        exclude: true
      - source: Source/TransformFunctions/arm_cfft_radix2_f32.c
        exclude: true
      - source: Source/TransformFunctions/arm_cfft_radix2_init_f32.c
        exclude: true
      - source: Source/TransformFunctions/arm_cfft_radix2_init_q15.c
        exclude: true
      - source: Source/TransformFunctions/arm_cfft_radix2_init_q31.c
        exclude: true
      - source: Source/TransformFunctions/arm_cfft_radix2_q15.c
        exclude: true
      - source: Source/TransformFunctions/arm_cfft_radix2_q31.c
        exclude: true
      - source: Source/TransformFunctions/arm_cfft_radix4_f32.c
        exclude: true
      - source: Source/TransformFunctions/arm_cfft_radix4_init_f32.c
        exclude: true
      - source: Source/TransformFunctions/arm_cfft_radix4_init_q15.c
        exclude: true
      - source: Source/TransformFunctions/arm_cfft_radix4_init_q31.c
        exclude: true
      - source: Source/TransformFunctions/arm_cfft_radix4_q15.c
        exclude: true
      - source: Source/TransformFunctions/arm_cfft_radix4_q31.c
        exclude: true
      - source: Source/TransformFunctions/arm_cfft_radix8_f32.c
        exclude: true
      - source: Source/TransformFunctions/arm_dct4_f32.c
        exclude: true
      - source: Source/TransformFunctions/arm_dct4_init_f32.c
        exclude: true
      - source: Source/TransformFunctions/arm_dct4_init_q15.c
        exclude: true
      - source: Source/TransformFunctions/arm_dct4_init_q31.c
        exclude: true
      - source: Source/TransformFunctions/arm_dct4_q15.c
        exclude: true
      - source: Source/TransformFunctions/arm_dct4_q31.c
        exclude: true
      - source: Source/TransformFunctions/arm_rfft_f32.c
        exclude: true
      - source: Source/TransformFunctions/arm_rfft_fast_f32.c
        exclude: true
      - source: Source/TransformFunctions/arm_rfft_fast_f64.c
        exclude: true
      - source: Source/TransformFunctions/arm_rfft_fast_init_f32.c
        exclude: true
      - source: Source/TransformFunctions/arm_rfft_fast_init_f64.c
        exclude: true
      - source: Source/TransformFunctions/arm_rfft_init_f32.c
        exclude: true
      - source: Source/TransformFunctions/arm_rfft_init_q15.c
        exclude: true
      - source: Source/TransformFunctions/arm_rfft_init_q31.c
        exclude: true
      - source: Source/TransformFunctions/arm_rfft_q15.c
        exclude: true
      - source: Source/TransformFunctions/arm_rfft_q31.c
        exclude: true

      - source: Source/TransformFunctions/TransformFunctionsF16.c
      - source: Source/TransformFunctions/arm_bitreversal_f16.c
        exclude: true
      - source: Source/TransformFunctions/arm_cfft_f16.c
        exclude: true
      - source: Source/TransformFunctions/arm_cfft_init_f16.c
        exclude: true
      - source: Source/TransformFunctions/arm_cfft_radix2_f16.c
        exclude: true
      - source: Source/TransformFunctions/arm_cfft_radix2_init_f16.c
        exclude: true
      - source: Source/TransformFunctions/arm_cfft_radix4_f16.c
        exclude: true
      - source: Source/TransformFunctions/arm_cfft_radix4_init_f16.c
        exclude: true
      - source: Source/TransformFunctions/arm_cfft_radix8_f16.c
        exclude: true
      - source: Source/TransformFunctions/arm_rfft_fast_f16.c
        exclude: true
      - source: Source/TransformFunctions/arm_rfft_fast_init_f16.c
        exclude: true

  __requires__:
  - CMSIS_DSP_Lib.ui_control
  component_info:
    common:
      version: 1.9.0
      type: CMSIS_driver
      full_name: CMSIS DSP Library Source
      description: CMSIS-DSP Library
      manifest_name: CMSIS_DSP_Library_Source
    cmsis_pack:
      class: CMSIS
      group: DSP
      variant: Source
      sub: ''
      pack_name: CMSIS
      pack_url: http://www.keil.com/pack/
      pack_vendor: ARM
      pack_version: 5.8.0

CMSIS_NN_Source:
  __requires__:
    - CMSIS_DSP_Include
  section-type: component
  contents:
    repo_base_path: CMSIS/NN
    project_base_path: CMSIS/NN
    cc-include:
      - repo_relative_path: Include
    files:
      - source: README.md
        hidden: true
        exclude: true
      - source: Include/arm_nn_tables.h
      - source: Include/arm_nn_types.h
      - source: Include/arm_nnfunctions.h
      - source: Include/arm_nnsupportfunctions.h
      - source: Source/ActivationFunctions/arm_nn_activations_q15.c
      - source: Source/ActivationFunctions/arm_nn_activations_q7.c
      - source: Source/ActivationFunctions/arm_relu6_s8.c
      - source: Source/ActivationFunctions/arm_relu_q15.c
      - source: Source/ActivationFunctions/arm_relu_q7.c
      - source: Source/BasicMathFunctions/arm_elementwise_add_s8.c
      - source: Source/BasicMathFunctions/arm_elementwise_mul_s8.c
      - source: Source/ConcatenationFunctions/arm_concatenation_s8_w.c
      - source: Source/ConcatenationFunctions/arm_concatenation_s8_x.c
      - source: Source/ConcatenationFunctions/arm_concatenation_s8_y.c
      - source: Source/ConcatenationFunctions/arm_concatenation_s8_z.c
      - source: Source/ConvolutionFunctions/arm_convolve_1x1_HWC_q7_fast_nonsquare.c
      - source: Source/ConvolutionFunctions/arm_convolve_1x1_s8_fast.c
      - source: Source/ConvolutionFunctions/arm_convolve_1_x_n_s8.c
      - source: Source/ConvolutionFunctions/arm_convolve_HWC_q15_basic.c
      - source: Source/ConvolutionFunctions/arm_convolve_HWC_q15_fast.c
      - source: Source/ConvolutionFunctions/arm_convolve_HWC_q15_fast_nonsquare.c
      - source: Source/ConvolutionFunctions/arm_convolve_HWC_q7_basic.c
      - source: Source/ConvolutionFunctions/arm_convolve_HWC_q7_basic_nonsquare.c
      - source: Source/ConvolutionFunctions/arm_convolve_HWC_q7_fast.c
      - source: Source/ConvolutionFunctions/arm_convolve_HWC_q7_fast_nonsquare.c
      - source: Source/ConvolutionFunctions/arm_convolve_HWC_q7_RGB.c
      - source: Source/ConvolutionFunctions/arm_convolve_s8.c
      - source: Source/ConvolutionFunctions/arm_convolve_wrapper_s8.c
      - source: Source/ConvolutionFunctions/arm_depthwise_conv_3x3_s8.c
      - source: Source/ConvolutionFunctions/arm_depthwise_conv_s8.c
      - source: Source/ConvolutionFunctions/arm_depthwise_conv_s8_opt.c
      - source: Source/ConvolutionFunctions/arm_depthwise_conv_u8_basic_ver1.c
      - source: Source/ConvolutionFunctions/arm_depthwise_conv_wrapper_s8.c
      - source: Source/ConvolutionFunctions/arm_depthwise_separable_conv_HWC_q7.c
      - source: Source/ConvolutionFunctions/arm_depthwise_separable_conv_HWC_q7_nonsquare.c
      - source: Source/ConvolutionFunctions/arm_nn_depthwise_conv_s8_core.c
      - source: Source/ConvolutionFunctions/arm_nn_mat_mult_kernel_q7_q15.c
      - source: Source/ConvolutionFunctions/arm_nn_mat_mult_kernel_q7_q15_reordered.c
      - source: Source/ConvolutionFunctions/arm_nn_mat_mult_kernel_s8_s16.c
      - source: Source/ConvolutionFunctions/arm_nn_mat_mult_kernel_s8_s16_reordered.c
      - source: Source/ConvolutionFunctions/arm_nn_mat_mult_s8.c
      - source: Source/FullyConnectedFunctions/arm_fully_connected_mat_q7_vec_q15.c
      - source: Source/FullyConnectedFunctions/arm_fully_connected_mat_q7_vec_q15_opt.c
      - source: Source/FullyConnectedFunctions/arm_fully_connected_q15.c
      - source: Source/FullyConnectedFunctions/arm_fully_connected_q15_opt.c
      - source: Source/FullyConnectedFunctions/arm_fully_connected_q7.c
      - source: Source/FullyConnectedFunctions/arm_fully_connected_q7_opt.c
      - source: Source/FullyConnectedFunctions/arm_fully_connected_s8.c
      - source: Source/NNSupportFunctions/arm_nntables.c
      - source: Source/NNSupportFunctions/arm_nn_accumulate_q7_to_q15.c
      - source: Source/NNSupportFunctions/arm_nn_add_q7.c
      - source: Source/NNSupportFunctions/arm_nn_depthwise_conv_nt_t_padded_s8.c
      - source: Source/NNSupportFunctions/arm_nn_depthwise_conv_nt_t_s8.c
      - source: Source/NNSupportFunctions/arm_nn_mat_mult_nt_t_s8.c
      - source: Source/NNSupportFunctions/arm_nn_mat_mul_core_1x_s8.c
      - source: Source/NNSupportFunctions/arm_nn_mat_mul_core_4x_s8.c
      - source: Source/NNSupportFunctions/arm_nn_mult_q15.c
      - source: Source/NNSupportFunctions/arm_nn_mult_q7.c
      - source: Source/NNSupportFunctions/arm_nn_vec_mat_mult_t_s8.c
      - source: Source/NNSupportFunctions/arm_nn_vec_mat_mult_t_svdf_s8.c
      - source: Source/NNSupportFunctions/arm_q7_to_q15_no_shift.c
      - source: Source/NNSupportFunctions/arm_q7_to_q15_reordered_no_shift.c
      - source: Source/NNSupportFunctions/arm_q7_to_q15_reordered_with_offset.c
      - source: Source/NNSupportFunctions/arm_q7_to_q15_with_offset.c
      - source: Source/PoolingFunctions/arm_avgpool_s8.c
      - source: Source/PoolingFunctions/arm_max_pool_s8.c
      - source: Source/PoolingFunctions/arm_pool_q7_HWC.c
      - source: Source/ReshapeFunctions/arm_reshape_s8.c
      - source: Source/SoftmaxFunctions/arm_softmax_q15.c
      - source: Source/SoftmaxFunctions/arm_softmax_q7.c
      - source: Source/SoftmaxFunctions/arm_softmax_s8.c
      - source: Source/SoftmaxFunctions/arm_softmax_u8.c
      - source: Source/SoftmaxFunctions/arm_softmax_with_batch_q7.c
      - source: Source/SVDFunctions/arm_svdf_s8.c
  component_info:
    common:
      version: 3.0.0
      type: CMSIS_driver
      full_name: CMSIS NN Library Source
      description: CMSIS-NN Library
      manifest_name: CMSIS_NN_Library_Source
    cmsis_pack:
      class: CMSIS
      group: NN
      variant: Source
      sub: ''
      pack_name: CMSIS
      pack_url: http://www.keil.com/pack/
      pack_vendor: ARM
      pack_version: 5.8.0

## CMSIS Driver Custom components
# All CMSIS Driver components in ARM.CMSIS.pdsc have template file. In SDK yml data record, we don't use
# thus don't add them. For example, CMSIS Driver USART in pdsc have Driver_USART.h and Driver_USART.c(a template file),
# in SDK yml data record, it just has Driver_USART.h.

# Mismatch.
# Note, inside ARM.CMSIS.pdsc, there is no component called CMSIS_Driver_Include.Common.
# SDK yml data record just abstracts it into an individual component. It is not allowed to directly require it
# in any component or application. You should require end terminal component like CMSIS_Driver_Include.USART.
CMSIS_Driver_Include.Common:
  section-type: component
  contents:
    repo_base_path: CMSIS/Driver/Include
    project_base_path: CMSIS_driver
    cc-include:
      - repo_relative_path: "./"
    files:
      - source: Driver_Common.h
  component_info:
    common:
      version: 2.3.0
      type: CMSIS_driver
      user_visible: false
      full_name: CMSIS Driver Common
      description: "Access to #include Driver_Common.h file for custom implementation"
      manifest_name: CMSIS_Driver_Common
    cmsis_pack:
      class: CMSIS Driver
      pack_name: NONE
      group: Common
      sub: Custom
      pack_url: http://www.keil.com/pack/
      pack_vendor: ARM
      pack_version: 5.8.0

CMSIS_Driver_Include.USART:
  __requires__:
    - CMSIS_Driver_Include.Common
  section-type: component
  contents:
    repo_base_path: CMSIS/Driver/Include
    project_base_path: CMSIS_driver
    cc-include:
      - repo_relative_path: "./"
    files:
      - source: Driver_USART.h
  component_info:
    common:
      version: 2.4.0
      type: CMSIS_driver
      user_visible: false
      full_name: CMSIS Driver USART
      description: "Access to #include Driver_USART.h file for custom implementation"
      manifest_name: CMSIS_Driver_USART
    cmsis_pack:
      class: CMSIS Driver
      pack_name: CMSIS
      group: USART
      sub: Custom
      pack_url: http://www.keil.com/pack/
      pack_vendor: ARM
      pack_version: 5.8.0

CMSIS_Driver_Include.CAN:
  __requires__:
    - CMSIS_Driver_Include.Common
  section-type: component
  contents:
    repo_base_path: CMSIS/Driver/Include
    project_base_path: CMSIS_driver
    cc-include:
      - repo_relative_path: "./"
    files:
      - source: Driver_CAN.h
  component_info:
    common:
      version: 1.3.0
      type: CMSIS_driver
      user_visible: false
      full_name: CMSIS Driver CAN
      description: "Access to #include Driver_CAN.h file for custom implementation"
      manifest_name: CMSIS_Driver_CAN
    cmsis_pack:
      class: CMSIS Driver
      pack_name: CMSIS
      group: CAN
      sub: Custom
      pack_url: http://www.keil.com/pack/
      pack_vendor: ARM
      pack_version: 5.8.0

# Mismatch
# In ARM.CMSIS.pdsc, the Ethernet component actually contains both Driver_ETH_MAC.h and Driver_ETH_PHY.h which is not a practical
# way we do the work. In SDK yml data record, we usually split the component into common and functionality part.
# CMSIS_Driver_Include.Ethernet is the common part for Ethernet component set.
CMSIS_Driver_Include.Ethernet:
  __requires__:
    - CMSIS_Driver_Include.Common
  section-type: component
  contents:
    repo_base_path: CMSIS/Driver/Include
    project_base_path: CMSIS_driver
    cc-include:
      - repo_relative_path: "./"
    files:
      - source: Driver_ETH.h
  component_info:
    common:
      version: 2.2.0
      type: CMSIS_driver
      user_visible: false
      full_name: CMSIS Driver Ethernet Common
      description: "Access to #include Driver_ETH.h file for custom implementation"
      manifest_name: CMSIS_Driver_Ethernet_Common
    cmsis_pack:
      class: CMSIS Driver
      group: Ethernet
      sub: Custom
      pack_name: CMSIS
      pack_url: http://www.keil.com/pack/
      pack_vendor: ARM
      pack_version: 5.8.0

CMSIS_Driver_Include.Ethernet_MAC:
  __requires__:
    - CMSIS_Driver_Include.Ethernet
  section-type: component
  contents:
    repo_base_path: CMSIS/Driver/Include
    project_base_path: CMSIS_driver
    cc-include:
      - repo_relative_path: "./"
    files:
      - source: Driver_ETH_MAC.h
  component_info:
    common:
      version: 2.2.0
      type: CMSIS_driver
      user_visible: false
      full_name: CMSIS Driver Ethernet MAC
      description: "Access to #include Driver_ETH_MAC.h file for custom implementation"
      manifest_name: CMSIS_Driver_Ethernet_MAC
    cmsis_pack:
      class: CMSIS Driver
      pack_name: CMSIS
      group: Ethernet MAC
      sub: Custom
      pack_url: http://www.keil.com/pack/
      pack_vendor: ARM
      pack_version: 5.8.0

CMSIS_Driver_Include.Ethernet_PHY:
  __requires__:
    - CMSIS_Driver_Include.Ethernet
  section-type: component
  contents:
    repo_base_path: CMSIS/Driver/Include
    project_base_path: CMSIS_driver
    cc-include:
      - repo_relative_path: "./"
    files:
      - source: Driver_ETH_PHY.h
  component_info:
    common:
      version: 2.2.0
      type: CMSIS_driver
      user_visible: false
      full_name: CMSIS Driver Ethernet PHY
      description:  "Access to #include Driver_ETH_PHY.h file for custom implementation"
      manifest_name: CMSIS_Driver_Ethernet_PHY
    cmsis_pack:
      class: CMSIS Driver
      group: Ethernet PHY
      sub: Custom
      pack_name: CMSIS
      pack_url: http://www.keil.com/pack/
      pack_vendor: ARM
      pack_version: 5.8.0

CMSIS_Driver_Include.Flash:
  __requires__:
    - CMSIS_Driver_Include.Common
  section-type: component
  contents:
    repo_base_path: CMSIS/Driver/Include
    project_base_path: CMSIS_driver
    cc-include:
      - repo_relative_path: "./"
    files:
      - source: Driver_Flash.h
  component_info:
    common:
      version: 2.3.0
      type: CMSIS_driver
      user_visible: false
      full_name: CMSIS Driver Flash
      description: "Access to #include Driver_Flash.h file for custom implementation"
      manifest_name: CMSIS_Driver_Flash
    cmsis_pack:
      class: CMSIS Driver
      pack_name: CMSIS
      group: Flash
      sub: Custom
      pack_url: http://www.keil.com/pack/
      pack_vendor: ARM
      pack_version: 5.8.0

CMSIS_Driver_Include.I2C:
  __requires__:
    - CMSIS_Driver_Include.Common
  section-type: component
  contents:
    repo_base_path: CMSIS/Driver/Include
    project_base_path: CMSIS_driver
    cc-include:
      - repo_relative_path: "./"
    files:
      - source: Driver_I2C.h
  component_info:
    common:
      version: 2.4.0
      type: CMSIS_driver
      user_visible: false
      full_name: CMSIS Driver I2C
      description: "Access to #include Driver_I2C.h file for custom implementation"
      manifest_name: CMSIS_Driver_I2C
    cmsis_pack:
      class: CMSIS Driver
      pack_name: CMSIS
      group: I2C
      sub: Custom
      pack_url: http://www.keil.com/pack/
      pack_vendor: ARM
      pack_version: 5.8.0

CMSIS_Driver_Include.MCI:
  __requires__:
    - CMSIS_Driver_Include.Common
  section-type: component
  contents:
    repo_base_path: CMSIS/Driver/Include
    project_base_path: CMSIS_driver
    cc-include:
      - repo_relative_path: "./"
    files:
      - source: Driver_MCI.h
  component_info:
    common:
      version: 2.4.0
      type: CMSIS_driver
      user_visible: false
      full_name: CMSIS Driver MCI
      description: "Access to #include Driver_MCI.h file for custom implementation"
      manifest_name: CMSIS_Driver_MCI
    cmsis_pack:
      class: CMSIS Driver
      group: MCI
      sub: Custom
      pack_name: CMSIS
      pack_url: http://www.keil.com/pack/
      pack_vendor: ARM
      pack_version: 5.8.0

CMSIS_Driver_Include.NAND:
  __requires__:
    - CMSIS_Driver_Include.Common
  section-type: component
  contents:
    repo_base_path: CMSIS/Driver/Include
    project_base_path: CMSIS_driver
    cc-include:
      - repo_relative_path: "./"
    files:
      - source: Driver_NAND.h
  component_info:
    common:
      version: 2.4.0
      type: CMSIS_driver
      user_visible: false
      full_name: CMSIS Driver NAND
      description: "Access to #include Driver_NAND.h file for custom implementation"
      manifest_name: CMSIS_Driver_NAND
    cmsis_pack:
      class: CMSIS Driver
      pack_name: CMSIS
      group: NAND
      sub: Custom
      pack_url: http://www.keil.com/pack/
      pack_vendor: ARM
      pack_version: 5.8.0

CMSIS_Driver_Include.SAI:
  __requires__:
    - CMSIS_Driver_Include.Common
  section-type: component
  contents:
    repo_base_path: CMSIS/Driver/Include
    project_base_path: CMSIS_driver
    cc-include:
      - repo_relative_path: "./"
    files:
      - source: Driver_SAI.h
  component_info:
    common:
      version: 1.2.0
      type: CMSIS_driver
      user_visible: false
      full_name: CMSIS Driver SAI
      description: "Access to #include Driver_SAI.h file for custom implementation"
      manifest_name: CMSIS_Driver_SAI
    cmsis_pack:
      class: CMSIS Driver
      pack_name: CMSIS
      group: SAI
      sub: Custom
      pack_url: http://www.keil.com/pack/
      pack_vendor: ARM
      pack_version: 5.8.0

CMSIS_Driver_Include.SPI:
  __requires__:
    - CMSIS_Driver_Include.Common
  section-type: component
  contents:
    repo_base_path: CMSIS/Driver/Include
    project_base_path: CMSIS_driver
    cc-include:
      - repo_relative_path: "./"
    files:
      - source: Driver_SPI.h
  component_info:
    common:
      version: 2.3.0
      type: CMSIS_driver
      user_visible: false
      full_name: CMSIS Driver SPI
      description: "Access to #include Driver_SPI.h file for custom implementation"
      manifest_name: CMSIS_Driver_SPI
    cmsis_pack:
      class: CMSIS Driver
      pack_name: CMSIS
      group: SPI
      sub: Custom
      pack_url: http://www.keil.com/pack/
      pack_vendor: ARM
      pack_version: 5.8.0

# Mismatch. There is no CMSIS_Driver_Include USB in ARM.CMSIS.pdsc. Such Driver_USB.h is the common head file
# included in Driver_USBD.h and Driver_USBH.h.
CMSIS_Driver_Include.USB:
  section-type: component
  __requires__:
    - CMSIS_Driver_Include.Common
  contents:
    repo_base_path: CMSIS/Driver/Include
    project_base_path: CMSIS_driver
    cc-include:
      - repo_relative_path: "./"
    files:
      - source: Driver_USB.h
  component_info:
    common:
      version: 2.3.0
      type: CMSIS_driver
      user_visible: false
      full_name: CMSIS Driver USB Common
      description: "Access to #include Driver_USB.h file for custom implementation"
      manifest_name: CMSIS_Driver_USB_Common
    cmsis_pack:
      class: CMSIS Driver
      pack_name: CMSIS
      group: USB
      sub: Custom
      pack_url: http://www.keil.com/pack/
      pack_vendor: ARM
      pack_version: 5.8.0

CMSIS_Driver_Include.USB_Device:
  __requires__:
    - CMSIS_Driver_Include.USB
  section-type: component
  contents:
    repo_base_path: CMSIS/Driver/Include
    project_base_path: CMSIS_driver
    cc-include:
      - repo_relative_path: "./"
    files:
      - source: Driver_USBD.h
  component_info:
    common:
      version: 2.3.0
      type: CMSIS_driver
      user_visible: false
      full_name: CMSIS Driver USB Device
      description: "Access to #include Driver_USBD.h file for custom implementation"
      manifest_name: CMSIS_Driver_USB_Device
    cmsis_pack:
      class: CMSIS Driver
      group: USB Device
      sub: Custom
      pack_name: CMSIS
      pack_url: http://www.keil.com/pack/
      pack_vendor: ARM
      pack_version: 5.8.0

CMSIS_Driver_Include.USB_Host:
  __requires__:
    - CMSIS_Driver_Include.USB
  section-type: component
  contents:
    repo_base_path: CMSIS/Driver/Include
    project_base_path: CMSIS_driver
    cc-include:
      - repo_relative_path: "./"
    files:
      - source: Driver_USBH.h
  component_info:
    common:
      version: 2.3.0
      type: CMSIS_driver
      user_visible: false
      full_name: CMSIS Driver USB Host
      description: "Access to #include Driver_USBH.h file for custom implementation"
      manifest_name: CMSIS_Driver_USB_Host
    cmsis_pack:
      class: CMSIS Driver
      pack_name: CMSIS
      group: USB Host
      sub: Custom
      pack_url: http://www.keil.com/pack/
      pack_vendor: ARM
      pack_version: 5.8.0

CMSIS_Driver_Include.WiFi:
  section-type: component
  __requires__:
    - CMSIS_Driver_Include.Common
  contents:
    repo_base_path: CMSIS/Driver/Include
    project_base_path: CMSIS_driver
    cc-include:
      - repo_relative_path: "./"
    files:
      - source: Driver_WiFi.h
  component_info:
    common:
      version: 1.1.0
      type: CMSIS_driver
      user_visible: false
      full_name: CMSIS Driver WiFi
      description: "Access to #include Driver_WiFi.h file"
      manifest_name: CMSIS_Driver_WiFi
    cmsis_pack:
      class: CMSIS Driver
      pack_name: CMSIS
      group: WiFi
      sub: Custom
      pack_url: http://www.keil.com/pack/
      pack_vendor: ARM
      pack_version: 5.8.0

## CMSIS Device API
# Mismatch. In ARM.CMSIS.pdsc, an API is a special form of a software component that only defines a C/C++ Application Programming Interface (API), such OS Tick and RTOS2 are API.
# In SDK yml data record, there is no such concept called API. So for the time being, we use component for them.
CMSIS_Device_API_OSTick:
  section-type: component
  contents:
    repo_base_path: CMSIS/RTOS2/Include
    project_base_path: CMSIS/RTOS2/Include
    cc-include:
      - repo_relative_path: "./"
    files:
      - source: os_tick.h
  component_info:
    common:
      # There is no version for api in ARM CMSIS, using apiversion instead
      version: 1.0.2
      user_visible: false
      type: CMSIS_driver
      full_name: CMSIS Device API OSTick
      description: Device interrupt controller interface
      manifest_name: CMSIS_Device_API_OSTick
    cmsis_pack:
      class: Device
      group: OS Tick
      apiversion: 1.0.2
      sub: ''
      pack_name: CMSIS
      pack_url: http://www.keil.com/pack/
      pack_vendor: ARM
      pack_version: 5.8.0

CMSIS_Device_API_RTOS2:
  section-type: component
  contents:
    repo_base_path: CMSIS/RTOS2/Include
    project_base_path: CMSIS/RTOS2/Include
    cc-include:
      - repo_relative_path: "./"
    files:
      - source: cmsis_os2.h
  component_info:
    common:
      # There is no version for api in ARM CMSIS, using apiversion instead
      version: 2.1.3
      user_visible: false
      type: CMSIS_driver
      full_name: CMSIS Device API RTOS2
      description: CMSIS-RTOS API for Cortex-M, SC000, and SC300
      manifest_name: CMSIS_Device_API_RTOS2
    cmsis_pack:
      class: Device
      group: RTOS2
      apiversion: 2.1.3
      sub: ''
      pack_name: CMSIS
      pack_url: http://www.keil.com/pack/
      pack_vendor: ARM
      pack_version: 5.8.0

## CMSIS-RTOS2 Keil RTX5 component
# Mismatch. There is no CMSIS_RTOS2_Common in ARM.CMSIS.pdsc.
CMSIS_RTOS2_Common:
  section-type: component
  __requires__:
    - CMSIS_Device_API_OSTick CMSIS_Device_API_RTOS2
  contents:
    repo_base_path: CMSIS/RTOS2
    project_base_path: CMSIS/RTOS2
    cc-include:
    - repo_relative_path: RTX/Source
    - repo_relative_path: RTX/Include
    - repo_relative_path: RTX/Config
    files:
    - source: RTX/Source/rtx_core_c.h
    - source: RTX/Source/rtx_core_ca.h
    - source: RTX/Source/rtx_core_cm.h
    - source: RTX/Source/rtx_lib.h
    - source: RTX/Source/rtx_lib.c
    - source: RTX/Include/rtx_evr.h
    - source: RTX/Include/rtx_os.h
    - source: RTX/Include/rtx_def.h
    - source: RTX/Config/RTX_Config.c
    - source: RTX/Config/RTX_Config.h

    - source: RTX/Library/IAR/RTX_CM0.a
      toolchains: iar
      attribute: extra-libraries
      cores: cm0 cm0p
      project_relative_path: RTX/Library
    - source: RTX/Library/IAR/RTX_CM3.a
      toolchains: iar
      attribute: extra-libraries
      cores: cm3 cm4 cm7
      project_relative_path: RTX/Library
    - source: RTX/Library/IAR/RTX_CM4F.a
      toolchains: iar
      attribute: extra-libraries
      cores: cm4f cm7f
      project_relative_path: RTX/Library
    - source: RTX/Library/GCC/libRTX_CM0.a
      toolchains: armgcc mcux
      attribute: extra-libraries
      cores: cm0 cm0p
      project_relative_path: RTX/Library
    - source: RTX/Library/GCC/libRTX_CM3.a
      toolchains: armgcc mcux
      attribute: extra-libraries
      cores: cm3 cm4 cm7
      project_relative_path: RTX/Library
    - source: RTX/Library/GCC/libRTX_CM4F.a
      toolchains: armgcc mcux
      attribute: extra-libraries
      cores: cm4f cm7f
      project_relative_path: RTX/Library
    - source: RTX/Library/ARM/RTX_CM0.lib
      toolchains: mdk
      attribute: extra-libraries
      cores: cm0 cm0p
      project_relative_path: RTX/Library
    - source: RTX/Library/ARM/RTX_CM3.lib
      toolchains: mdk
      attribute: extra-libraries
      cores: cm3 cm4 cm7
      project_relative_path: RTX/Library
    - source: RTX/Library/ARM/RTX_CM4F.lib
      toolchains: mdk
      attribute: extra-libraries
      cores: cm4f cm7f
      project_relative_path: RTX/Library
  component_info:
    common:
      type: CMSIS_driver
      version: 2.1.3
      user_visible: false
      full_name: CMSIS RTOS2 Keil RTX5 Common
      description: CMSIS-RTOS2 RTX5 Common part for Cortex-M, SC000, C300 and Armv8-M (Library)
      manifest_name: CMSIS_RTOS2_Keil_RTX5_Common
      need_require: true
    cmsis_pack:
      pack_name: CMSIS
      class: CMSIS
      group: RTOS2
      sub: Keil RTX5
      variant: Library
      pack_url: http://www.keil.com/pack/
      pack_vendor: ARM
      pack_version: 5.8.0

CMSIS_RTOS2_Secure:
  section-type: component
  contents:
    repo_base_path: CMSIS/RTOS2/RTX/Library
    project_base_path: CMSIS/RTOS2/RTX/Library
    files:
    - source: IAR/RTX_V8MB.a
      toolchains: iar
      attribute: extra-libraries
      cores: cm23
      project_relative_path: "./"
    - source: IAR/RTX_V8MMF.a
      toolchains: iar
      attribute: extra-libraries
      cores: cm33 cm33f
      fpu: SP_FPU
      project_relative_path: "./"
    - source: GCC/libRTX_V8MB.a
      toolchains: armgcc mcux
      attribute: extra-libraries
      cores: cm23
      project_relative_path: "./"
    - source: GCC/libRTX_V8MMF.a
      toolchains: armgcc mcux
      attribute: extra-libraries
      cores: cm33 cm33f
      fpu: SP_FPU
      project_relative_path: "./"
    - source: ARM/RTX_V8MB.lib
      toolchains: mdk
      attribute: extra-libraries
      cores: cm23
      project_relative_path: "./"
    - source: ARM/RTX_V8MMF.lib
      toolchains: mdk
      attribute: extra-libraries
      cores: cm33 cm33f
      fpu: SP_FPU
      project_relative_path: "./"
  __requires__:
    - CMSIS_RTOS2_Common
  component_info:
    common:
      type: CMSIS_driver
      version: 2.1.3
      user_visible: false
      full_name: CMSIS RTOS2 Keil RTX5
      description: CMSIS-RTOS2 RTX5 for Cortex-M, SC000, C300 and Armv8-M (Library)
      manifest_name: CMSIS_RTOS2_Keil_RTX5
      need_require: true
    cmsis_pack:
      pack_name: CMSIS
      class: CMSIS
      group: RTOS2
      sub: Keil RTX5
      variant: Library
      pack_url: http://www.keil.com/pack/
      pack_vendor: ARM
      pack_version: 5.8.0

CMSIS_RTOS2_NonSecure:
  section-type: component
  contents:
    repo_base_path: CMSIS/RTOS2/RTX/Library
    project_base_path: CMSIS/RTOS2/RTX/Library
    files:
      - source: IAR/RTX_V8MBN.a
        toolchains: iar
        attribute: extra-libraries
        cores: cm23
        project_relative_path: "./"
      - source: IAR/RTX_V8MMFN.a
        toolchains: iar
        attribute: extra-libraries
        cores: cm33 cm33f
        fpu: SP_FPU
        project_relative_path: "./"
      - source: GCC/libRTX_V8MBN.a
        toolchains: armgcc mcux
        attribute: extra-libraries
        cores: cm23
        project_relative_path: "./"
      - source: GCC/libRTX_V8MMFN.a
        toolchains: armgcc mcux
        attribute: extra-libraries
        cores: cm33 cm33f
        fpu: SP_FPU
        project_relative_path: "./"
      - source: ARM/RTX_V8MBN.lib
        toolchains: mdk
        attribute: extra-libraries
        cores: cm23
        project_relative_path: "./"
      - source: ARM/RTX_V8MMFN.lib
        toolchains: mdk
        attribute: extra-libraries
        cores: cm33 cm33f
        fpu: SP_FPU
        project_relative_path: "./"
  __requires__:
    - CMSIS_RTOS2_Common
  component_info:
    common:
      type: CMSIS_driver
      version: 2.1.3
      user_visible: false
      full_name: CMSIS RTOS2 Keil RTX5 Non Secure
      description: CMSIS-RTOS2 RTX5 for Armv8-M Non-Secure Domain (Library)
      manifest_name: CMSIS_RTOS2_Keil_RTX5_NS
      need_require: true
    cmsis_pack:
      pack_name: CMSIS
      class: CMSIS
      group: RTOS2
      sub: Keil RTX5
      variant: Library_NS
      pack_url: http://www.keil.com/pack/
      pack_vendor: ARM
      pack_version: 5.8.0

# CMSIS file container
# This component is only used to wrap all CMSIS pack files.
CMSIS_files:
  section-type: component
  contents:
    repo_base_path: CMSIS
    project_base_path: CMSIS
    files:
#      - source: Core/**
#      - source: Core_A/**
      - source: Driver/**
#      - source: DSP/**
#      - source: Include/**
#      - source: NN/**
#      - source: Pack/**
#      - source: RTOS/**
#      - source: RTOS2/**
#      - source: SVD/**
#      - source: Utilities/**
      - source: "*.*"
      - source: DSP/Source/**
  component_info:
    common:
      version: 5.8.0
      user_visible: false
      type: container
      full_name: CMSIS
      description: CMSIS (Cortex Microcontroller Software Interface Standard)
      manifest_name: CMSIS
CMSIS_DSP_Lib.ui_control:
  section-type: component_support
  component_info:
    common:
      fixed_id: CMSIS_DSP_Library
      ui_name: CMSIS DSP Library
      ui_description: CMSIS DSP Software Library
      ui_category: CMSIS DSP Lib
      ui_control: true
      ui_control_default: true
      ui_release_specific: true
      version: 1.9.0
