# Copyright (c) 2020 Stephanos Ioannidis <root@stephanos.io>
# SPDX-License-Identifier: Apache-2.0

comment "Components"

config CMSIS_DSP_BASICMATH
	bool "Basic Math Functions"
	default y
	help
	  This option enables the Basic Math Functions, which support the
	  following operations:

	  * Elementwise Clipping
	  * Vector Absolute Value
	  * Vector Addition
	  * Vector Subtraction
	  * Vector Multiplication
	  * Vector Dot Product
	  * Vector Absolute Value
	  * Vector Negate
	  * Vector Offset
	  * Vector Scale
	  * Vector Shift
	  * Vector Bitwise AND
	  * Vector Bitwise OR
	  * Vector Bitwise Exclusive OR
	  * Vector Bitwise NOT

config CMSIS_DSP_COMPLEXMATH
	bool "Complex Math Functions"
	imply CMSIS_DSP_FASTMATH
	depends on CPU_CORTEX || ARCH_POSIX
	help
	  This option enables the Complex Math Functions, which support the
	  following operations:

	  * Complex-by-Complex Multiplication
	  * Complex-by-Real Multiplication
	  * Complex Dot Product
	  * Complex Magnitude
	  * Complex Magnitude Squared
	  * Complex Conjugate

config CMSIS_DSP_CONTROLLER
	bool "Controller Functions"
	depends on CPU_CORTEX || ARCH_POSIX
	help
	  This option enables the Controller Functions, which support the
	  following operations:

	  * PID Control
	  * Vector Clarke Transform
	  * Vector Inverse Clarke Transform
	  * Vector Park Transform
	  * Vector Inverse Park Transform
	  * Sine-Cosine

	  These functions can be used to implement a generic PID controller, as
	  well as field oriented motor control using Space Vector Modulation
	  algorithm.

config CMSIS_DSP_FASTMATH
	bool "Fast Math Functions"
	select CMSIS_DSP_TABLES
	imply CMSIS_DSP_TABLES_ALL_FAST
	depends on CPU_CORTEX || ARCH_POSIX
	help
	  This option enables the Fast Math Functions, which support the
	  following operations:

	  * Fixed-Point Division
	  * Sine
	  * Cosine
	  * Square Root

config CMSIS_DSP_FILTERING
	bool "Filtering Functions"
	imply CMSIS_DSP_FASTMATH
	imply CMSIS_DSP_SUPPORT
	depends on CPU_CORTEX || ARCH_POSIX
	help
	  This option enables the Filtering Functions, which support the
	  following operations:

	  * Convolution
	  * Partial Convolution
	  * Correlation
	  * Levinson-Durbin Algorithm

	  The following filter types are supported:

	  * FIR (finite impulse response) Filter
	  * FIR Lattice Filter
	  * FIR Sparse Filter
	  * FIR Filter with Decimator
	  * FIR Filter with Interpolator
	  * IIR (infinite impulse response) Lattice Filter
	  * Biquad Cascade IIR Filter, Direct Form I Structure
	  * Biquad Cascade IIR Filter, Direct Form II Transposed Structure
	  * High Precision Q31 Biquad Cascade Filter
	  * LMS (least mean square) Filter
	  * Normalized LMS Filter

config CMSIS_DSP_INTERPOLATION
	bool "Interpolation Functions"
	depends on CPU_CORTEX || ARCH_POSIX
	help
	  This option enables the Interpolation Functions, which support the
	  following operations:

	  * Bilinear Interpolation
	  * Linear Interpolation
	  * Cubic Spline Interpolation

config CMSIS_DSP_MATRIX
	bool "Matrix Functions"
	depends on CPU_CORTEX || ARCH_POSIX
	help
	  This option enables the Matrix Functions, which support the following
	  operations:

	  * Matrix Initialization
	  * Matrix Addition
	  * Matrix Subtraction
	  * Matrix Multiplication
	  * Complex Matrix Multiplication
	  * Matrix Vector Multiplication
	  * Matrix Inverse
	  * Matrix Scale
	  * Matrix Transpose
	  * Complex Matrix Transpose
	  * Cholesky and LDLT Decompositions

config CMSIS_DSP_QUATERNIONMATH
	bool "Quaternion Math Functions"
	depends on CPU_CORTEX || ARCH_POSIX
	help
	  This option enables the Quaternion Math Functions, which support the
	  following operations:

	  * Quaternion Conversions
	  * Quaternion Conjugate
	  * Quaternion Inverse
	  * Quaternion Norm
	  * Quaternion Normalization
	  * Quaternion Product

config CMSIS_DSP_STATISTICS
	bool "Statistics Functions"
	imply CMSIS_DSP_BASICMATH
	imply CMSIS_DSP_FASTMATH
	depends on CPU_CORTEX || ARCH_POSIX
	help
	  This option enables the Statistics Functions, which support the
	  following operations:

	  * Minimum
	  * Absolute Minimum
	  * Maximum
	  * Absolute Maximum
	  * Mean
	  * Root Mean Square (RMS)
	  * Variance
	  * Standard Deviation
	  * Power
	  * Entropy
	  * Kullback-Leibler Divergence
	  * LogSumExp (LSE)

config CMSIS_DSP_SUPPORT
	bool "Support Functions"
	depends on CPU_CORTEX || ARCH_POSIX
	help
	  This option enables the Support Functions, which support the
	  following operations:

	  * Vector 8-bit Integer Value Conversion
	  * Vector 16-bit Integer Value Conversion
	  * Vector 32-bit Integer Value Conversion
	  * Vector 16-bit Floating-Point Value Conversion
	  * Vector 32-bit Floating-Point Value Conversion
	  * Vector Copy
	  * Vector Fill
	  * Vector Sorting
	  * Weighted Sum
	  * Barycenter

config CMSIS_DSP_TRANSFORM
	bool "Transform Functions"
	select CMSIS_DSP_TABLES
	imply CMSIS_DSP_TABLES_ALL_FFT
	depends on CPU_CORTEX || ARCH_POSIX
	help
	  This option enables the Transform Functions, which support the
	  following transformations:

	  * Real Fast Fourier Transform (RFFT)
	  * Complex Fast Fourier Transform (CFFT)
	  * Type IV Discrete Cosine Transform (DCT4)

config CMSIS_DSP_SVM
	bool "Support Vector Machine Functions"
	select CMSIS_DSP_TABLES
	depends on CPU_CORTEX || ARCH_POSIX
	help
	  This option enables the Support Vector Machine Functions, which
	  support the following algorithms:

	  * Linear
	  * Polynomial
	  * Sigmoid
	  * Radial Basis Function (RBF)

config CMSIS_DSP_BAYES
	bool "Bayesian Estimators"
	imply CMSIS_DSP_STATISTICS
	depends on CPU_CORTEX || ARCH_POSIX
	help
	  This option enables the Bayesian Estimator Functions, which
	  implements the naive gaussian Bayes estimator.

config CMSIS_DSP_DISTANCE
	bool "Distance Functions"
	imply CMSIS_DSP_STATISTICS
	depends on CPU_CORTEX || ARCH_POSIX
	help
	  This option enables the Distance Functions, which support the
	  following distance computation algorithms:

	  * Boolean Vectors
	    * Hamming
	    * Jaccard
	    * Kulsinski
	    * Rogers-Tanimoto
	    * Russell-Rao
	    * Sokal-Michener
	    * Sokal-Sneath
	    * Yule
	    * Dice

	  * Floating-Point Vectors
	    * Canberra
	    * Chebyshev
	    * Cityblock
	    * Correlation
	    * Cosine
	    * Euclidean
	    * Jensen-Shannon
	    * Minkowski
	    * Bray-Curtis

menuconfig CMSIS_DSP_TABLES
	bool "Look-up Tables"
	depends on CPU_CORTEX || ARCH_POSIX
	help
	  This option enables the static look-up tables used by the DSP
	  functions to compute results.

if CMSIS_DSP_TABLES

config CMSIS_DSP_TABLES_ALL_FAST
	bool "Include all fast interpolation tables"
	select CMSIS_DSP_TABLES_ARM_COS_F32
	select CMSIS_DSP_TABLES_ARM_COS_Q31
	select CMSIS_DSP_TABLES_ARM_COS_Q15
	select CMSIS_DSP_TABLES_ARM_SIN_F32
	select CMSIS_DSP_TABLES_ARM_SIN_Q31
	select CMSIS_DSP_TABLES_ARM_SIN_Q15
	select CMSIS_DSP_TABLES_ARM_SIN_COS_F32
	select CMSIS_DSP_TABLES_ARM_SIN_COS_Q31
	select CMSIS_DSP_TABLES_ARM_LMS_NORM_Q31
	select CMSIS_DSP_TABLES_ARM_LMS_NORM_Q15
	select CMSIS_DSP_TABLES_ARM_CMPLX_MAG_Q31
	select CMSIS_DSP_TABLES_ARM_CMPLX_MAG_Q15

config CMSIS_DSP_TABLES_ALL_FFT
	bool "Include all FFT tables"
	select CMSIS_DSP_TABLES_CFFT_F64_16
	select CMSIS_DSP_TABLES_CFFT_F64_32
	select CMSIS_DSP_TABLES_CFFT_F64_64
	select CMSIS_DSP_TABLES_CFFT_F64_128
	select CMSIS_DSP_TABLES_CFFT_F64_256
	select CMSIS_DSP_TABLES_CFFT_F64_512
	select CMSIS_DSP_TABLES_CFFT_F64_1024
	select CMSIS_DSP_TABLES_CFFT_F64_2048
	select CMSIS_DSP_TABLES_CFFT_F64_4096
	select CMSIS_DSP_TABLES_CFFT_F32_16
	select CMSIS_DSP_TABLES_CFFT_F32_32
	select CMSIS_DSP_TABLES_CFFT_F32_64
	select CMSIS_DSP_TABLES_CFFT_F32_128
	select CMSIS_DSP_TABLES_CFFT_F32_256
	select CMSIS_DSP_TABLES_CFFT_F32_512
	select CMSIS_DSP_TABLES_CFFT_F32_1024
	select CMSIS_DSP_TABLES_CFFT_F32_2048
	select CMSIS_DSP_TABLES_CFFT_F32_4096
	select CMSIS_DSP_TABLES_CFFT_F16_16
	select CMSIS_DSP_TABLES_CFFT_F16_32
	select CMSIS_DSP_TABLES_CFFT_F16_64
	select CMSIS_DSP_TABLES_CFFT_F16_128
	select CMSIS_DSP_TABLES_CFFT_F16_256
	select CMSIS_DSP_TABLES_CFFT_F16_512
	select CMSIS_DSP_TABLES_CFFT_F16_1024
	select CMSIS_DSP_TABLES_CFFT_F16_2048
	select CMSIS_DSP_TABLES_CFFT_F16_4096
	select CMSIS_DSP_TABLES_CFFT_Q31_16
	select CMSIS_DSP_TABLES_CFFT_Q31_32
	select CMSIS_DSP_TABLES_CFFT_Q31_64
	select CMSIS_DSP_TABLES_CFFT_Q31_128
	select CMSIS_DSP_TABLES_CFFT_Q31_256
	select CMSIS_DSP_TABLES_CFFT_Q31_512
	select CMSIS_DSP_TABLES_CFFT_Q31_1024
	select CMSIS_DSP_TABLES_CFFT_Q31_2048
	select CMSIS_DSP_TABLES_CFFT_Q31_4096
	select CMSIS_DSP_TABLES_CFFT_Q15_16
	select CMSIS_DSP_TABLES_CFFT_Q15_32
	select CMSIS_DSP_TABLES_CFFT_Q15_64
	select CMSIS_DSP_TABLES_CFFT_Q15_128
	select CMSIS_DSP_TABLES_CFFT_Q15_256
	select CMSIS_DSP_TABLES_CFFT_Q15_512
	select CMSIS_DSP_TABLES_CFFT_Q15_1024
	select CMSIS_DSP_TABLES_CFFT_Q15_2048
	select CMSIS_DSP_TABLES_CFFT_Q15_4096
	select CMSIS_DSP_TABLES_RFFT_FAST_F64_32
	select CMSIS_DSP_TABLES_RFFT_FAST_F64_64
	select CMSIS_DSP_TABLES_RFFT_FAST_F64_128
	select CMSIS_DSP_TABLES_RFFT_FAST_F64_256
	select CMSIS_DSP_TABLES_RFFT_FAST_F64_512
	select CMSIS_DSP_TABLES_RFFT_FAST_F64_1024
	select CMSIS_DSP_TABLES_RFFT_FAST_F64_2048
	select CMSIS_DSP_TABLES_RFFT_FAST_F64_4096
	select CMSIS_DSP_TABLES_RFFT_FAST_F32_32
	select CMSIS_DSP_TABLES_RFFT_FAST_F32_64
	select CMSIS_DSP_TABLES_RFFT_FAST_F32_128
	select CMSIS_DSP_TABLES_RFFT_FAST_F32_256
	select CMSIS_DSP_TABLES_RFFT_FAST_F32_512
	select CMSIS_DSP_TABLES_RFFT_FAST_F32_1024
	select CMSIS_DSP_TABLES_RFFT_FAST_F32_2048
	select CMSIS_DSP_TABLES_RFFT_FAST_F32_4096
	select CMSIS_DSP_TABLES_RFFT_FAST_F16_32
	select CMSIS_DSP_TABLES_RFFT_FAST_F16_64
	select CMSIS_DSP_TABLES_RFFT_FAST_F16_128
	select CMSIS_DSP_TABLES_RFFT_FAST_F16_256
	select CMSIS_DSP_TABLES_RFFT_FAST_F16_512
	select CMSIS_DSP_TABLES_RFFT_FAST_F16_1024
	select CMSIS_DSP_TABLES_RFFT_FAST_F16_2048
	select CMSIS_DSP_TABLES_RFFT_FAST_F16_4096
	select CMSIS_DSP_TABLES_RFFT_F32_128
	select CMSIS_DSP_TABLES_RFFT_F32_512
	select CMSIS_DSP_TABLES_RFFT_F32_2048
	select CMSIS_DSP_TABLES_RFFT_F32_8192
	select CMSIS_DSP_TABLES_RFFT_F16_128
	select CMSIS_DSP_TABLES_RFFT_F16_512
	select CMSIS_DSP_TABLES_RFFT_F16_2048
	select CMSIS_DSP_TABLES_RFFT_F16_8192
	select CMSIS_DSP_TABLES_RFFT_Q31_32
	select CMSIS_DSP_TABLES_RFFT_Q31_64
	select CMSIS_DSP_TABLES_RFFT_Q31_128
	select CMSIS_DSP_TABLES_RFFT_Q31_256
	select CMSIS_DSP_TABLES_RFFT_Q31_512
	select CMSIS_DSP_TABLES_RFFT_Q31_1024
	select CMSIS_DSP_TABLES_RFFT_Q31_2048
	select CMSIS_DSP_TABLES_RFFT_Q31_4096
	select CMSIS_DSP_TABLES_RFFT_Q31_8192
	select CMSIS_DSP_TABLES_RFFT_Q15_32
	select CMSIS_DSP_TABLES_RFFT_Q15_64
	select CMSIS_DSP_TABLES_RFFT_Q15_128
	select CMSIS_DSP_TABLES_RFFT_Q15_256
	select CMSIS_DSP_TABLES_RFFT_Q15_512
	select CMSIS_DSP_TABLES_RFFT_Q15_1024
	select CMSIS_DSP_TABLES_RFFT_Q15_2048
	select CMSIS_DSP_TABLES_RFFT_Q15_4096
	select CMSIS_DSP_TABLES_RFFT_Q15_8192
	select CMSIS_DSP_TABLES_DCT4_F32_128
	select CMSIS_DSP_TABLES_DCT4_F32_512
	select CMSIS_DSP_TABLES_DCT4_F32_2048
	select CMSIS_DSP_TABLES_DCT4_F32_8192
	select CMSIS_DSP_TABLES_DCT4_Q31_128
	select CMSIS_DSP_TABLES_DCT4_Q31_512
	select CMSIS_DSP_TABLES_DCT4_Q31_2048
	select CMSIS_DSP_TABLES_DCT4_Q31_8192
	select CMSIS_DSP_TABLES_DCT4_Q15_128
	select CMSIS_DSP_TABLES_DCT4_Q15_512
	select CMSIS_DSP_TABLES_DCT4_Q15_2048
	select CMSIS_DSP_TABLES_DCT4_Q15_8192

comment "Interpolation Tables"

config CMSIS_DSP_TABLES_ARM_COS_F32
	bool "cos f32"

config CMSIS_DSP_TABLES_ARM_COS_Q31
	bool "cos q31"

config CMSIS_DSP_TABLES_ARM_COS_Q15
	bool "cos q15"

config CMSIS_DSP_TABLES_ARM_SIN_F32
	bool "sin f32"

config CMSIS_DSP_TABLES_ARM_SIN_Q31
	bool "sin q31"

config CMSIS_DSP_TABLES_ARM_SIN_Q15
	bool "sin q15"

config CMSIS_DSP_TABLES_ARM_SIN_COS_F32
	bool "sin cos f32"

config CMSIS_DSP_TABLES_ARM_SIN_COS_Q31
	bool "sin cos q31"

config CMSIS_DSP_TABLES_ARM_LMS_NORM_Q31
	bool "lms norm q31"

config CMSIS_DSP_TABLES_ARM_LMS_NORM_Q15
	bool "lms norm q15"

config CMSIS_DSP_TABLES_ARM_CMPLX_MAG_Q31
	bool "cmplx mag q31"

config CMSIS_DSP_TABLES_ARM_CMPLX_MAG_Q15
	bool "cmplx mag q15"

comment "Transformation Tables"

config CMSIS_DSP_TABLES_CFFT_F64_16
	bool "cfft f64 16"

config CMSIS_DSP_TABLES_CFFT_F64_32
	bool "cfft f64 32"

config CMSIS_DSP_TABLES_CFFT_F64_64
	bool "cfft f64 64"

config CMSIS_DSP_TABLES_CFFT_F64_128
	bool "cfft f64 128"

config CMSIS_DSP_TABLES_CFFT_F64_256
	bool "cfft f64 256"

config CMSIS_DSP_TABLES_CFFT_F64_512
	bool "cfft f64 512"

config CMSIS_DSP_TABLES_CFFT_F64_1024
	bool "cfft f64 1024"

config CMSIS_DSP_TABLES_CFFT_F64_2048
	bool "cfft f64 2048"

config CMSIS_DSP_TABLES_CFFT_F64_4096
	bool "cfft f64 4096"

config CMSIS_DSP_TABLES_CFFT_F32_16
	bool "cfft f32 16"

config CMSIS_DSP_TABLES_CFFT_F32_32
	bool "cfft f32 32"

config CMSIS_DSP_TABLES_CFFT_F32_64
	bool "cfft f32 64"

config CMSIS_DSP_TABLES_CFFT_F32_128
	bool "cfft f32 128"

config CMSIS_DSP_TABLES_CFFT_F32_256
	bool "cfft f32 256"

config CMSIS_DSP_TABLES_CFFT_F32_512
	bool "cfft f32 512"

config CMSIS_DSP_TABLES_CFFT_F32_1024
	bool "cfft f32 1024"

config CMSIS_DSP_TABLES_CFFT_F32_2048
	bool "cfft f32 2048"

config CMSIS_DSP_TABLES_CFFT_F32_4096
	bool "cfft f32 4096"

config CMSIS_DSP_TABLES_CFFT_F16_16
	bool "cfft f16 16"

config CMSIS_DSP_TABLES_CFFT_F16_32
	bool "cfft f16 32"

config CMSIS_DSP_TABLES_CFFT_F16_64
	bool "cfft f16 64"

config CMSIS_DSP_TABLES_CFFT_F16_128
	bool "cfft f16 128"

config CMSIS_DSP_TABLES_CFFT_F16_256
	bool "cfft f16 256"

config CMSIS_DSP_TABLES_CFFT_F16_512
	bool "cfft f16 512"

config CMSIS_DSP_TABLES_CFFT_F16_1024
	bool "cfft f16 1024"

config CMSIS_DSP_TABLES_CFFT_F16_2048
	bool "cfft f16 2048"

config CMSIS_DSP_TABLES_CFFT_F16_4096
	bool "cfft f16 4096"

config CMSIS_DSP_TABLES_CFFT_Q31_16
	bool "cfft q31 16"

config CMSIS_DSP_TABLES_CFFT_Q31_32
	bool "cfft q31 32"

config CMSIS_DSP_TABLES_CFFT_Q31_64
	bool "cfft q31 64"

config CMSIS_DSP_TABLES_CFFT_Q31_128
	bool "cfft q31 128"

config CMSIS_DSP_TABLES_CFFT_Q31_256
	bool "cfft q31 256"

config CMSIS_DSP_TABLES_CFFT_Q31_512
	bool "cfft q31 512"

config CMSIS_DSP_TABLES_CFFT_Q31_1024
	bool "cfft q31 1024"

config CMSIS_DSP_TABLES_CFFT_Q31_2048
	bool "cfft q31 2048"

config CMSIS_DSP_TABLES_CFFT_Q31_4096
	bool "cfft q31 4096"

config CMSIS_DSP_TABLES_CFFT_Q15_16
	bool "cfft q15 16"

config CMSIS_DSP_TABLES_CFFT_Q15_32
	bool "cfft q15 32"

config CMSIS_DSP_TABLES_CFFT_Q15_64
	bool "cfft q15 64"

config CMSIS_DSP_TABLES_CFFT_Q15_128
	bool "cfft q15 128"

config CMSIS_DSP_TABLES_CFFT_Q15_256
	bool "cfft q15 256"

config CMSIS_DSP_TABLES_CFFT_Q15_512
	bool "cfft q15 512"

config CMSIS_DSP_TABLES_CFFT_Q15_1024
	bool "cfft q15 1024"

config CMSIS_DSP_TABLES_CFFT_Q15_2048
	bool "cfft q15 2048"

config CMSIS_DSP_TABLES_CFFT_Q15_4096
	bool "cfft q15 4096"

config CMSIS_DSP_TABLES_CFFT_RADIX4_Q31
	bool "cfft radix4 q31 (deprecated)"

config CMSIS_DSP_TABLES_CFFT_RADIX4_Q15
	bool "cfft radix4 q15 (deprecated)"

config CMSIS_DSP_TABLES_CFFT_RADIX2_Q31
	bool "cfft radix2 q31 (deprecated)"

config CMSIS_DSP_TABLES_CFFT_RADIX2_Q15
	bool "cfft radix2 q15 (deprecated)"

config CMSIS_DSP_TABLES_RFFT_FAST_F64_32
	bool "rfft fast f64 32"

config CMSIS_DSP_TABLES_RFFT_FAST_F64_64
	bool "rfft fast f64 64"

config CMSIS_DSP_TABLES_RFFT_FAST_F64_128
	bool "rfft fast f64 128"

config CMSIS_DSP_TABLES_RFFT_FAST_F64_256
	bool "rfft fast f64 256"

config CMSIS_DSP_TABLES_RFFT_FAST_F64_512
	bool "rfft fast f64 512"

config CMSIS_DSP_TABLES_RFFT_FAST_F64_1024
	bool "rfft fast f64 1024"

config CMSIS_DSP_TABLES_RFFT_FAST_F64_2048
	bool "rfft fast f64 2048"

config CMSIS_DSP_TABLES_RFFT_FAST_F64_4096
	bool "rfft fast f64 4096"

config CMSIS_DSP_TABLES_RFFT_FAST_F32_32
	bool "rfft fast f32 32"

config CMSIS_DSP_TABLES_RFFT_FAST_F32_64
	bool "rfft fast f32 64"

config CMSIS_DSP_TABLES_RFFT_FAST_F32_128
	bool "rfft fast f32 128"

config CMSIS_DSP_TABLES_RFFT_FAST_F32_256
	bool "rfft fast f32 256"

config CMSIS_DSP_TABLES_RFFT_FAST_F32_512
	bool "rfft fast f32 512"

config CMSIS_DSP_TABLES_RFFT_FAST_F32_1024
	bool "rfft fast f32 1024"

config CMSIS_DSP_TABLES_RFFT_FAST_F32_2048
	bool "rfft fast f32 2048"

config CMSIS_DSP_TABLES_RFFT_FAST_F32_4096
	bool "rfft fast f32 4096"

config CMSIS_DSP_TABLES_RFFT_FAST_F16_32
	bool "rfft fast f16 32"

config CMSIS_DSP_TABLES_RFFT_FAST_F16_64
	bool "rfft fast f16 64"

config CMSIS_DSP_TABLES_RFFT_FAST_F16_128
	bool "rfft fast f16 128"

config CMSIS_DSP_TABLES_RFFT_FAST_F16_256
	bool "rfft fast f16 256"

config CMSIS_DSP_TABLES_RFFT_FAST_F16_512
	bool "rfft fast f16 512"

config CMSIS_DSP_TABLES_RFFT_FAST_F16_1024
	bool "rfft fast f16 1024"

config CMSIS_DSP_TABLES_RFFT_FAST_F16_2048
	bool "rfft fast f16 2048"

config CMSIS_DSP_TABLES_RFFT_FAST_F16_4096
	bool "rfft fast f16 4096"

config CMSIS_DSP_TABLES_RFFT_F32_128
	bool "rfft f32 128"

config CMSIS_DSP_TABLES_RFFT_F32_512
	bool "rfft f32 512"

config CMSIS_DSP_TABLES_RFFT_F32_2048
	bool "rfft f32 2048"

config CMSIS_DSP_TABLES_RFFT_F32_8192
	bool "rfft f32 8192"

config CMSIS_DSP_TABLES_RFFT_F16_128
	bool "rfft f16 128"

config CMSIS_DSP_TABLES_RFFT_F16_512
	bool "rfft f16 512"

config CMSIS_DSP_TABLES_RFFT_F16_2048
	bool "rfft f16 2048"

config CMSIS_DSP_TABLES_RFFT_F16_8192
	bool "rfft f16 8192"

config CMSIS_DSP_TABLES_RFFT_Q31_32
	bool "rfft q31 32"

config CMSIS_DSP_TABLES_RFFT_Q31_64
	bool "rfft q31 64"

config CMSIS_DSP_TABLES_RFFT_Q31_128
	bool "rfft q31 128"

config CMSIS_DSP_TABLES_RFFT_Q31_256
	bool "rfft q31 256"

config CMSIS_DSP_TABLES_RFFT_Q31_512
	bool "rfft q31 512"

config CMSIS_DSP_TABLES_RFFT_Q31_1024
	bool "rfft q31 1024"

config CMSIS_DSP_TABLES_RFFT_Q31_2048
	bool "rfft q31 2048"

config CMSIS_DSP_TABLES_RFFT_Q31_4096
	bool "rfft q31 4096"

config CMSIS_DSP_TABLES_RFFT_Q31_8192
	bool "rfft q31 8192"

config CMSIS_DSP_TABLES_RFFT_Q15_32
	bool "rfft q15 32"

config CMSIS_DSP_TABLES_RFFT_Q15_64
	bool "rfft q15 64"

config CMSIS_DSP_TABLES_RFFT_Q15_128
	bool "rfft q15 128"

config CMSIS_DSP_TABLES_RFFT_Q15_256
	bool "rfft q15 256"

config CMSIS_DSP_TABLES_RFFT_Q15_512
	bool "rfft q15 512"

config CMSIS_DSP_TABLES_RFFT_Q15_1024
	bool "rfft q15 1024"

config CMSIS_DSP_TABLES_RFFT_Q15_2048
	bool "rfft q15 2048"

config CMSIS_DSP_TABLES_RFFT_Q15_4096
	bool "rfft q15 4096"

config CMSIS_DSP_TABLES_RFFT_Q15_8192
	bool "rfft q15 8192"

config CMSIS_DSP_TABLES_DCT4_F32_128
	bool "dct4 f32 128"

config CMSIS_DSP_TABLES_DCT4_F32_512
	bool "dct4 f32 512"

config CMSIS_DSP_TABLES_DCT4_F32_2048
	bool "dct4 f32 2048"

config CMSIS_DSP_TABLES_DCT4_F32_8192
	bool "dct4 f32 8192"

config CMSIS_DSP_TABLES_DCT4_Q31_128
	bool "dct4 q31 128"

config CMSIS_DSP_TABLES_DCT4_Q31_512
	bool "dct4 q31 512"

config CMSIS_DSP_TABLES_DCT4_Q31_2048
	bool "dct4 q31 2048"

config CMSIS_DSP_TABLES_DCT4_Q31_8192
	bool "dct4 q31 8192"

config CMSIS_DSP_TABLES_DCT4_Q15_128
	bool "dct4 q15 128"

config CMSIS_DSP_TABLES_DCT4_Q15_512
	bool "dct4 q15 512"

config CMSIS_DSP_TABLES_DCT4_Q15_2048
	bool "dct4 q15 2048"

config CMSIS_DSP_TABLES_DCT4_Q15_8192
	bool "dct4 q15 8192"

endif # CMSIS_DSP_TABLES

comment "Instruction Set"
# NOTE: These configurations should eventually be derived from the arch ISA and
#       FP support configurations.

config CMSIS_DSP_NEON
	bool "Neon Instruction Set"
	default y
	depends on CPU_CORTEX_A
	help
	  This option enables the NEON Advanced SIMD instruction set, which is
	  available on most Cortex-A and some Cortex-R processors.

comment "Features"

config CMSIS_DSP_LOOPUNROLL
	bool "Loop Unrolling"
	help
	  This option enables manual loop unrolling in the DSP functions.

config CMSIS_DSP_ROUNDING
	bool "Rounding"
	help
	  This option enables rounding on the support functions.

config CMSIS_DSP_MATRIXCHECK
	bool "Matrix Check"
	help
	  This option enables validation of the input and output sizes of
	  matrices.

config CMSIS_DSP_AUTOVECTORIZE
	bool "Auto Vectorize"
	help
	  This option prefers autovectorizable code to one using C intrinsics
	  in the DSP functions.

config CMSIS_DSP_FLOAT16
	bool "Half-Precision (16-bit Float) Support"
	default y
	depends on FP16
	help
	  This option enables the half-precision (16-bit) floating-point
	  operations support.
