Lines Matching +full:stm32 +full:- +full:sai +full:- +full:sub +full:- +full:a
1 /* SPDX-License-Identifier: GPL-2.0-only */
3 * STM32 ALSA SoC Digital Audio Interface (SAI) driver.
5 * Copyright (C) 2016, STMicroelectronics - All Rights Reserved
11 /******************** SAI Register Map **************************************/
16 /* Sub-block A&B registers offsets, relative to A&B sub-block addresses */
17 #define STM_SAI_CR1_REGX 0x00 /* A offset: 0x04. B offset: 0x24 */
26 /* Sub-block A registers, relative to sub-block A address */
82 #define SAI_XCR1_MCKDIV_MASK(x) GENMASK((SAI_XCR1_MCKDIV_SHIFT + (x) - 1),\
85 #define SAI_XCR1_MCKDIV_MAX(x) ((1 << SAI_XCR1_MCKDIV_WIDTH(x)) - 1)
233 /* Registers below apply to SAI version 2.1 and more */
252 /* SAI version numbers are 1.x for F4. Major version number set to 1 for F4 */
257 #define STM_SAI_IS_F4(ip) ((ip)->conf.version == STM_SAI_STM32F4)
259 ((ip)->pdata->conf.has_spdif_pdm)
268 * struct stm32_sai_conf - SAI configuration
269 * @version: SAI version
270 * @fifo_size: SAI fifo size as words number
271 * @has_spdif_pdm: SAI S/PDIF and PDM features support flag
280 * struct stm32_sai_data - private data of SAI instance driver
283 * @pclk: SAI bus clock
284 * @clk_x8k: SAI parent clock for sampling frequencies multiple of 8kHz
285 * @clk_x11k: SAI parent clock for sampling frequencies multiple of 11kHz
286 * @conf: SAI hardware capabitilites
287 * @irq: SAI interrupt line
289 * @gcr: SAI Global Configuration Register
299 int (*set_sync)(struct stm32_sai_data *sai,