---
# yaml-language-server: $schema=../../schema/component_set_schema.json

## CMSIS Core component
CMSIS_Include_core_cm:
  section-type: component
  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
        trustzone: TZ
        cores: cm23 cm33 cm33f
  section_info:
    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
    display_name: CMSIS_Include_CM
    taxonomy:
      belong_to: CMSIS
      cgroup: CORE
  belong_to: set.CMSIS

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
        compilers: armcc
      - source: Include/cmsis_armclang.h
        compilers: armclang
      - source: Include/cmsis_gcc.h
        compilers: gcc
      - source: Include/cmsis_compiler.h
        compilers: armclang armcc gcc iar
      - source: Include/cmsis_cp15.h
        compilers: armclang armcc gcc iar
      - source: Include/cmsis_iccarm.h
        compilers: iar
      - source: Include/core_ca.h
        cores: ca7
      - source: Include/irq_ctrl.h
        compilers: armclang armcc gcc iar
      - source: Source/irq_ctrl_gic.c
        compilers: armclang armcc gcc iar
  dependency:
    allOf:
      - core:
          - ca7
  section_info:
    version: 1.2.1
    type: CMSIS_Include
    full_name: CMSIS Include For Cortex-A
    description: CMSIS-CORE for Cortex-A
    display_name: CMSIS_Include_CA7
    taxonomy:
      belong_to: CMSIS
      cgroup: CORE
  belong_to: set.CMSIS

# Only KEX needs such container to make sure that all files are packed.
container.CMSIS_all_files:
  section-type: container
  contents:
    repo_base_path: CMSIS
    package_base_path: CMSIS
    files:
      - source: Driver/**
      - source: "*.*"
      - source: DSP/Source/**
  section_info:
    product:
      cmsis_pack:
        supported: false
  belong_to: set.CMSIS

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
  section_info:
    version: 1.9.0
    type: CMSIS_driver
    full_name: CMSIS DSP Library Header
    description: CMSIS-DSP Library Header
    display_name: CMSIS_DSP_Library_Header
    taxonomy:
      belong_to: CMSIS
      cgroup: DSP
      csub: include    
    product:
      cmsis_pack:
        supported: false
  belong_to: set.CMSIS_DSP_Lib

CMSIS_DSP_Source:
  section-type: component
  contents:
    configuration:
      cc-define:
        DISABLEFLOAT16:
    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
  section_info:
    version: 1.9.0
    type: CMSIS_driver
    full_name: CMSIS DSP Library Source
    description: CMSIS-DSP Library
    display_name: CMSIS_DSP_Library_Source
    taxonomy:
      belong_to: CMSIS
      cgroup: DSP
      csub: source
    product:
      cmsis_pack:
        supported: false
  belong_to: set.CMSIS_DSP_Lib

CMSIS_NN_Source:
  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
  section_info:
    version: 3.0.0
    type: CMSIS_driver
    full_name: CMSIS NN Library Source
    description: CMSIS-NN Library
    display_name: CMSIS_NN_Library_Source
    taxonomy:
      belong_to: CMSIS
      cgroup: NN
      cvariant: Source
    product:
      cmsis_pack:
        supported: false
  belong_to: set.CMSIS_DSP_Lib
  dependency:
    allOf:
      - CMSIS_DSP_Source

## 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.

# 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.USART:
  section-type: component
  contents:
    repo_base_path: CMSIS/Driver
    project_base_path: CMSIS_driver
    cc-include:
      - repo_relative_path: "Include"
    files:
      - source: Include/Driver_USART.h
      - source: DriverTemplates/Driver_USART.c
        template: true
      - source: Include/Driver_Common.h
  section_info:
    version: 2.4.0
    type: CMSIS_driver
    user_visible: never
    full_name: CMSIS Driver USART
    description: "Access to #include Driver_USART.h file for custom implementation"
    display_name: CMSIS_Driver_USART
    product:
      cmsis_pack:
        api: true
    taxonomy:
      belong_to: CMSIS_DRIVER
      cgroup: USART
  belong_to: set.CMSIS

CMSIS_Driver_Include.CAN:
  section-type: component
  contents:
    repo_base_path: CMSIS/Driver
    project_base_path: CMSIS_driver
    cc-include:
      - repo_relative_path: "Include"
    files:
      - source: Include/Driver_CAN.h
      - source: DriverTemplates/Driver_CAN.c
        template: true
      - source: Include/Driver_Common.h
  section_info:
    version: 1.3.0
    type: CMSIS_driver
    user_visible: never
    full_name: CMSIS Driver CAN
    description: "Access to #include Driver_CAN.h file for custom implementation"
    display_name: CMSIS_Driver_CAN
    product:
      cmsis_pack:
        api: true
    taxonomy:
      belong_to: CMSIS_DRIVER
      cgroup: CAN
  belong_to: set.CMSIS

# 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:
  section-type: component
  contents:
    repo_base_path: CMSIS/Driver
    project_base_path: CMSIS_driver
    cc-include:
      - repo_relative_path: "Include"
    files:
      - source: Include/Driver_Common.h
      - source: Include/Driver_ETH.h
      - source: Include/Driver_ETH_MAC.h
      - source: Include/Driver_ETH_PHY.h
      - source: DriverTemplates/Driver_ETH_MAC.c
        template: true
      - source: DriverTemplates/Driver_ETH_PHY.c
        template: true
  section_info:
    version: 2.2.0
    type: CMSIS_driver
    user_visible: never
    full_name: CMSIS Driver Ethernet Common
    description: "Access to #include Driver_ETH.h file for custom implementation"
    display_name: CMSIS_Driver_Ethernet_Common
    product:
      cmsis_pack:
        api: true
    taxonomy:
      belong_to: CMSIS_DRIVER
      cgroup: Ethernet
  belong_to: set.CMSIS

CMSIS_Driver_Include.Ethernet_MAC:
  section-type: component
  contents:
    repo_base_path: CMSIS/Driver
    project_base_path: CMSIS_driver
    cc-include:
      - repo_relative_path: "Include"
    files:
      - source: Include/Driver_ETH.h
      - source: Include/Driver_Common.h
      - source: Include/Driver_ETH_MAC.h
      - source: DriverTemplates/Driver_ETH_MAC.c
        template: true
  section_info:
    version: 2.2.0
    type: CMSIS_driver
    user_visible: never
    full_name: CMSIS Driver Ethernet MAC
    description: "Access to #include Driver_ETH_MAC.h file for custom implementation"
    display_name: CMSIS_Driver_Ethernet_MAC
    product:
      cmsis_pack:
        api: true
    taxonomy:
      belong_to: CMSIS_DRIVER
      cgroup: Ethernet MAC
  belong_to: set.CMSIS

CMSIS_Driver_Include.Ethernet_PHY:
  section-type: component
  contents:
    repo_base_path: CMSIS/Driver
    project_base_path: CMSIS_driver
    cc-include:
      - repo_relative_path: "Include"
    files:
      - source: Include/Driver_ETH.h
      - source: Include/Driver_ETH_PHY.h
      - source: DriverTemplates/Driver_ETH_PHY.c
        template: true
      - source: Include/Driver_Common.h
  section_info:
    version: 2.2.0
    type: CMSIS_driver
    user_visible: never
    full_name: CMSIS Driver Ethernet PHY
    description:  "Access to #include Driver_ETH_PHY.h file for custom implementation"
    display_name: CMSIS_Driver_Ethernet_PHY
    product:
      cmsis_pack:
        api: true
    taxonomy:
      belong_to: CMSIS_DRIVER
      cgroup: Ethernet PHY
  belong_to: set.CMSIS

CMSIS_Driver_Include.Flash:
  section-type: component
  contents:
    repo_base_path: CMSIS/Driver
    project_base_path: CMSIS_driver
    cc-include:
      - repo_relative_path: "Include"
    files:
      - source: Include/Driver_Flash.h
      - source: DriverTemplates/Driver_Flash.c
        template: true
      - source: Include/Driver_Common.h
  section_info:
    version: 2.3.0
    type: CMSIS_driver
    user_visible: never
    full_name: CMSIS Driver Flash
    description: "Access to #include Driver_Flash.h file for custom implementation"
    display_name: CMSIS_Driver_Flash
    product:
      cmsis_pack:
        api: true
    taxonomy:
      belong_to: CMSIS_DRIVER
      cgroup: Flash
  belong_to: set.CMSIS

CMSIS_Driver_Include.I2C:
  section-type: component
  contents:
    repo_base_path: CMSIS/Driver
    project_base_path: CMSIS_driver
    cc-include:
      - repo_relative_path: "Include"
    files:
      - source: Include/Driver_I2C.h
      - source: DriverTemplates/Driver_I2C.c
        template: true
      - source: Include/Driver_Common.h
  section_info:
    version: 2.4.0
    type: CMSIS_driver
    user_visible: never
    full_name: CMSIS Driver I2C
    description: "Access to #include Driver_I2C.h file for custom implementation"
    display_name: CMSIS_Driver_I2C
    product:
      cmsis_pack:
        api: true
    taxonomy:
      belong_to: CMSIS_DRIVER
      cgroup: I2C
  belong_to: set.CMSIS

CMSIS_Driver_Include.MCI:
  section-type: component
  contents:
    repo_base_path: CMSIS/Driver
    project_base_path: CMSIS_driver
    cc-include:
      - repo_relative_path: "Include"
    files:
      - source: Include/Driver_MCI.h
      - source: DriverTemplates/Driver_MCI.c
        template: true
      - source: Include/Driver_Common.h
  section_info:
    version: 2.4.0
    type: CMSIS_driver
    user_visible: never
    full_name: CMSIS Driver MCI
    description: "Access to #include Driver_MCI.h file for custom implementation"
    display_name: CMSIS_Driver_MCI
    product:
      cmsis_pack:
        api: true
    taxonomy:
      belong_to: CMSIS_DRIVER
      cgroup: MCI
  belong_to: set.CMSIS

CMSIS_Driver_Include.NAND:
  section-type: component
  contents:
    repo_base_path: CMSIS/Driver
    project_base_path: CMSIS_driver
    cc-include:
      - repo_relative_path: "Include"
    files:
      - source: Include/Driver_NAND.h
      - source: DriverTemplates/Driver_NAND.c
        template: true
      - source: Include/Driver_Common.h
  section_info:
    version: 2.4.0
    type: CMSIS_driver
    user_visible: never
    full_name: CMSIS Driver NAND
    description: "Access to #include Driver_NAND.h file for custom implementation"
    display_name: CMSIS_Driver_NAND
    product:
      cmsis_pack:
        api: true
    taxonomy:
      belong_to: CMSIS_DRIVER
      cgroup: NAND
  belong_to: set.CMSIS

CMSIS_Driver_Include.SAI:
  section-type: component
  contents:
    repo_base_path: CMSIS/Driver
    project_base_path: CMSIS_driver
    cc-include:
      - repo_relative_path: "Include"
    files:
      - source: Include/Driver_SAI.h
      - source: DriverTemplates/Driver_SAI.c
        template: true
      - source: Include/Driver_Common.h
  section_info:
    version: 1.2.0
    type: CMSIS_driver
    user_visible: never
    full_name: CMSIS Driver SAI
    description: "Access to #include Driver_SAI.h file for custom implementation"
    display_name: CMSIS_Driver_SAI
    product:
      cmsis_pack:
        api: true
    taxonomy:
      belong_to: CMSIS_DRIVER
      cgroup: SAI
  belong_to: set.CMSIS

CMSIS_Driver_Include.SPI:
  section-type: component
  contents:
    repo_base_path: CMSIS/Driver
    project_base_path: CMSIS_driver
    cc-include:
      - repo_relative_path: "Include"
    files:
      - source: Include/Driver_SPI.h
      - source: DriverTemplates/Driver_SPI.c
        template: true
      - source: Include/Driver_Common.h
  section_info:
    version: 2.3.0
    type: CMSIS_driver
    user_visible: never
    full_name: CMSIS Driver SPI
    description: "Access to #include Driver_SPI.h file for custom implementation"
    display_name: CMSIS_Driver_SPI
    product:
      cmsis_pack:
        api: true
    taxonomy:
      belong_to: CMSIS_DRIVER
      cgroup: SPI
  belong_to: set.CMSIS

# 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_Device:
  section-type: component
  contents:
    repo_base_path: CMSIS/Driver
    project_base_path: CMSIS_driver
    cc-include:
      - repo_relative_path: "Include"
    files:
      - source: Include/Driver_USBD.h
      - source: DriverTemplates/Driver_USBD.c
        template: true
      - source: Include/Driver_USB.h
      - source: Include/Driver_Common.h
  section_info:
    version: 2.3.0
    type: CMSIS_driver
    user_visible: never
    full_name: CMSIS Driver USB Device
    description: "Access to #include Driver_USBD.h file for custom implementation"
    display_name: CMSIS_Driver_USB_Device
    product:
      cmsis_pack:
        api: true
    taxonomy:
      belong_to: CMSIS_DRIVER
      cgroup: USB Device
  belong_to: set.CMSIS

CMSIS_Driver_Include.USB_Host:
  section-type: component
  contents:
    repo_base_path: CMSIS/Driver
    project_base_path: CMSIS_driver
    cc-include:
      - repo_relative_path: "Include"
    files:
      - source: Include/Driver_USBH.h
      - source: DriverTemplates/Driver_USBH.c
        template: true
      - source: Include/Driver_USB.h
      - source: Include/Driver_Common.h
  section_info:
    version: 2.3.0
    type: CMSIS_driver
    user_visible: never
    full_name: CMSIS Driver USB Host
    description: "Access to #include Driver_USBH.h file for custom implementation"
    display_name: CMSIS_Driver_USB_Host
    product:
      cmsis_pack:
        api: true
    taxonomy:
      belong_to: CMSIS_DRIVER
      cgroup: USB Host
  belong_to: set.CMSIS

CMSIS_Driver_Include.WiFi:
  section-type: component
  contents:
    repo_base_path: CMSIS/Driver
    project_base_path: CMSIS_driver
    cc-include:
      - repo_relative_path: "Include"
    files:
      - source: Include/Driver_WiFi.h
      - source: DriverTemplates/Driver_WiFi.c
        template: true
      - source: Include/Driver_Common.h
  section_info:
    version: 1.1.0
    type: CMSIS_driver
    user_visible: never
    full_name: CMSIS Driver WiFi
    description: "Access to #include Driver_WiFi.h file"
    display_name: CMSIS_Driver_WiFi
    product:
      cmsis_pack:
        api: true
    taxonomy:
      belong_to: CMSIS_DRIVER
      cgroup: WiFi
  belong_to: set.CMSIS

# ## 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
  section_info:
    # There is no version for api in ARM CMSIS, using apiversion instead
    version: 1.0.1
    user_visible: never
    type: CMSIS_driver
    full_name: CMSIS Device API OSTick
    description: Device interrupt controller interface
    display_name: CMSIS_Device_API_OSTick
    taxonomy:
      belong_to: Device
      cgroup: OS Tick
  belong_to: set.CMSIS

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
  section_info:
    # There is no version for api in ARM CMSIS, using apiversion instead
    version: 2.1.3
    user_visible: never
    type: CMSIS_driver
    full_name: CMSIS Device API RTOS2
    description: CMSIS-RTOS API for Cortex-M, SC000, and SC300
    display_name: CMSIS_Device_API_RTOS2
    taxonomy:
      belong_to: CMSIS
      cgroup: RTOS2
  belong_to: set.CMSIS

## CMSIS-RTOS2 Keil RTX5 component
# Mismatch. There is no CMSIS_RTOS2_Common in ARM.CMSIS.pdsc. So we remove it and add common files to CMSIS.RTOS2_Secure and CMSIS.RTOS2_NonSecure

CMSIS_RTOS2_Secure:
  section-type: component
  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

    - source: RTX/Library/IAR/RTX_V8MB.a
      compilers: iar
      attribute: extra-libraries
      cores: cm23
      project_relative_path: "./"
    - source: RTX/Library/IAR/RTX_V8MMF.a
      compilers: iar
      attribute: extra-libraries
      cores: cm33 cm33f
      fpu: SP_FPU
      project_relative_path: "./"
    - source: RTX/Library/GCC/libRTX_V8MB.a
      compilers: gcc
      attribute: extra-libraries
      cores: cm23
      project_relative_path: "./"
    - source: RTX/Library/GCC/libRTX_V8MMF.a
      compilers: gcc
      attribute: extra-libraries
      cores: cm33 cm33f
      fpu: SP_FPU
      project_relative_path: "./"
    - source: RTX/Library/ARM/RTX_V8MB.lib
      compilers: armclang
      attribute: extra-libraries
      cores: cm23
      project_relative_path: "./"
    - source: RTX/Library/ARM/RTX_V8MMF.lib
      compilers: armclang
      attribute: extra-libraries
      cores: cm33 cm33f
      fpu: SP_FPU
      project_relative_path: "./"
  section_info:
    type: CMSIS_driver
    version: 2.1.3
    user_visible: never
    full_name: CMSIS RTOS2 Keil RTX5
    description: CMSIS-RTOS2 RTX5 for Cortex-M, SC000, C300 and Armv8-M (Library)
    display_name: CMSIS_RTOS2_Keil_RTX5
    need_require: true
    taxonomy:
      belong_to: CMSIS
      cgroup: RTOS2
      csub: Keil RTX5
      cvariant: Library
  dependency:
    allOf:
      - CMSIS_Device_API_OSTick
      - CMSIS_Device_API_RTOS2
  belong_to: set.CMSIS

CMSIS_RTOS2_NonSecure:
  section-type: component
  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

      - source: RTX/Library/IAR/RTX_V8MBN.a
        compilers: iar
        attribute: extra-libraries
        cores: cm23
        project_relative_path: "./"
      - source: RTX/Library/IAR/RTX_V8MMFN.a
        compilers: iar
        attribute: extra-libraries
        cores: cm33 cm33f
        fpu: SP_FPU
        project_relative_path: "./"
      - source: RTX/Library/GCC/libRTX_V8MBN.a
        compilers: gcc
        attribute: extra-libraries
        cores: cm23
        project_relative_path: "./"
      - source: RTX/Library/GCC/libRTX_V8MMFN.a
        compilers: gcc
        attribute: extra-libraries
        cores: cm33 cm33f
        fpu: SP_FPU
        project_relative_path: "./"
      - source: RTX/Library/ARM/RTX_V8MBN.lib
        compilers: armclang
        attribute: extra-libraries
        cores: cm23
        project_relative_path: "./"
      - source: RTX/Library/ARM/RTX_V8MMFN.lib
        compilers: armclang
        attribute: extra-libraries
        cores: cm33 cm33f
        fpu: SP_FPU
        project_relative_path: "./"
  section_info:
    type: CMSIS_driver
    version: 2.1.3
    user_visible: never
    full_name: CMSIS RTOS2 Keil RTX5 Non Secure
    description: CMSIS-RTOS2 RTX5 for Armv8-M Non-Secure Domain (Library)
    display_name: CMSIS_RTOS2_Keil_RTX5_NS
    need_require: true
    taxonomy:
      belong_to: CMSIS
      cgroup: RTOS2
      csub: Keil RTX5
      cvariant: Library_NS
  belong_to: set.CMSIS
  dependency:
    allOf:
      - CMSIS_Device_API_OSTick
      - CMSIS_Device_API_RTOS2

set.CMSIS:
  section-type: set
  section_info:
    fixed_id: CMSIS
    version: 1.9.0
    description: CMSIS Software
    type: CMSIS
    display_name: CMSIS Software
    full_name: CMSIS Software
    vendor: ARM
    set_location:
      repo_base_path: ./CMSIS
    component_taxonomy:
      CMSIS:
        cclass: CMSIS
      Device:
        cclass: Device
      CMSIS_DRIVER:
        cclass: CMSIS Driver
    product:
      kex_package:
        kex_web_ui:
          ui_control: false
          ui_control_default: false
          ui_release_specific: false
      cmsis_pack:
        external_pack: true
        vendor: ARM
        pack_root:
          pack_type: SWP
          pack_name: CMSIS
          pack_version: 5.8.0
          pack_url: http://www.keil.com/pack/
  belong_to: set.CMSIS

set.CMSIS_DSP_Lib:
  section-type: set
  section_info:
    fixed_id: CMSIS_DSP_Library
    version: 1.9.0
    description: CMSIS DSP Software Library
    type: middleware
    display_name: CMSIS DSP Library
    full_name: CMSIS DSP Software Library
    vendor: ARM
    set_location:
      repo_base_path: ./CMSIS
    component_taxonomy:
      CMSIS:
        cclass: CMSIS      
    product:
      scr:
        - scr.CMSIS
      cmsis_pack:
        external_pack: true
        vendor: ARM
        pack_root:
          pack_type: SWP
          pack_name: CMSIS_DSP
          pack_version: 1.0.0
          pack_url: http://www.keil.com/pack/
      kex_package:
        kex_web_ui:
          ui_category: CMSIS DSP Lib
          ui_control: true
          ui_control_default: true
          ui_release_specific: true
  belong_to: set.CMSIS_DSP_Lib

scr.CMSIS:
  section-type: scr
  belong_to: set.CMSIS
  contents:
    license:
      - license.CMSIS
    Name: CMSIS
    Version: 5.8.0
    Format: source code
    Description: Vendor-independent hardware abstraction layer for microcontrollers
          that are based on Arm Cortex processors, distributed by ARM. cores
    Location: CMSIS/
    Origin: ARM (Apache-2.0) - https://github.com/ARM-software/CMSIS_5/releases/tag/5.8.0

license.CMSIS:
  section-type: license
  belong_to: set.CMSIS
  contents:
    repo_base_path: CMSIS
    files:
      - source: LICENSE.txt
  section_info:
    Outgoing License: Apache License 2.0
