325 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			325 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /* SPDX-License-Identifier: GPL-2.0 */
 | |
| /*
 | |
|  * Rockchip Audio Codec Digital driver
 | |
|  *
 | |
|  * Copyright (C) 2020 Rockchip Electronics Co., Ltd.
 | |
|  *
 | |
|  */
 | |
| 
 | |
| #ifndef _RK_CODEC_DIGITAL_H
 | |
| #define _RK_CODEC_DIGITAL_H
 | |
| 
 | |
| #define SYSCTRL0		0x0000
 | |
| #define ADCVUCTL		0x0040
 | |
| #define ADCVUCTIME		0x0044
 | |
| #define ADCDIGEN		0x0048
 | |
| #define ADCCLKCTRL		0x004C
 | |
| #define ADCINT_DIV		0x0054
 | |
| #define ADCSCLKTXINT_DIV	0x006C
 | |
| #define ADCCFG1			0x0084
 | |
| #define ADCVOLL0		0x0088
 | |
| #define ADCVOLL1		0x008C
 | |
| #define ADCVOLR0		0x0098
 | |
| #define ADCVOGP			0x00A8
 | |
| #define ADCRVOLL0		0x00AC
 | |
| #define ADCRVOLL1		0x00B0
 | |
| #define ADCRVOLR0		0x00BC
 | |
| #define ADCALC0			0x00CC
 | |
| #define ADCALC1			0x00D0
 | |
| #define ADCALC2			0x00D4
 | |
| #define ADCNG			0x00D8
 | |
| #define ADCNGST			0x00DC
 | |
| #define ADCHPFEN		0x00E0
 | |
| #define ADCHPFCF		0x00E4
 | |
| #define ADCPGL0			0x00EC
 | |
| #define ADCPGL1			0x00F0
 | |
| #define ADCPGR0			0x00FC
 | |
| #define ADCLILMT0		0x010C
 | |
| #define ADCLILMT1		0x0110
 | |
| #define ADCDMICNG0		0x0114
 | |
| #define ADCDMICNG1		0x0118
 | |
| #define DACVUCTL		0x0140
 | |
| #define DACVUCTIME		0x0144
 | |
| #define DACDIGEN		0x0148
 | |
| #define DACCLKCTRL		0x014C
 | |
| #define DACINT_DIV		0x0154
 | |
| #define DACSCLKRXINT_DIV	0x0160
 | |
| #define DACPWM_DIV		0x0164
 | |
| #define DACPWM_CTRL		0x0168
 | |
| #define DACCFG1			0x0184
 | |
| #define DACMUTE			0x0188
 | |
| #define DACMUTEST		0x018C
 | |
| #define DACVOLL0		0x0190
 | |
| #define DACVOLR0		0x01A0
 | |
| #define DACVOGP			0x01B0
 | |
| #define DACRVOLL0		0x01B4
 | |
| #define DACRVOLR0		0x01C4
 | |
| #define DACLMT0			0x01D4
 | |
| #define DACLMT1			0x01D8
 | |
| #define DACLMT2			0x01DC
 | |
| #define DACMIXCTRLL		0x01E0
 | |
| #define DACMIXCTRLR		0x01E4
 | |
| #define DACHPF			0x01E8
 | |
| #define I2S_TXCR0		0x0300
 | |
| #define I2S_TXCR1		0x0304
 | |
| #define I2S_TXCR2		0x0308
 | |
| #define I2S_RXCR0		0x030C
 | |
| #define I2S_RXCR1		0x0310
 | |
| #define I2S_CKR0		0x0314
 | |
| #define I2S_CKR1		0x0318
 | |
| #define I2S_XFER		0x031C
 | |
| #define I2S_CLR			0x0320
 | |
| #define VERSION			0x0380
 | |
| 
 | |
| /* SYSCTRL0 */
 | |
| #define ACDCDIG_SYSCTRL0_SYNC_SEL_MASK		BIT(1)
 | |
| #define ACDCDIG_SYSCTRL0_SYNC_SEL_DAC		BIT(1)
 | |
| #define ACDCDIG_SYSCTRL0_SYNC_SEL_ADC		0
 | |
| #define ACDCDIG_SYSCTRL0_GLB_CKE_MASK		BIT(3)
 | |
| #define ACDCDIG_SYSCTRL0_GLB_CKE_EN		BIT(3)
 | |
| #define ACDCDIG_SYSCTRL0_GLB_CKE_DIS		0
 | |
| #define ACDCDIG_SYSCTRL0_CLK_COM_SEL_MASK	BIT(4)
 | |
| #define ACDCDIG_SYSCTRL0_CLK_COM_SEL_DAC	BIT(4)
 | |
| #define ACDCDIG_SYSCTRL0_CLK_COM_SEL_ADC	0
 | |
| #define ACDCDIG_SYSCTRL0_SYNC_MODE_MASK		BIT(5)
 | |
| #define ACDCDIG_SYSCTRL0_SYNC_MODE_SYNC		BIT(5)
 | |
| #define ACDCDIG_SYSCTRL0_SYNC_MODE_ASYNC	0
 | |
| /* ADCVUCTL */
 | |
| #define ACDCDIG_ADCVUCTL_ADC_BYPS_MASK		BIT(2)
 | |
| #define ACDCDIG_ADCVUCTL_ADC_BYPS		BIT(2)
 | |
| /* ADCDIGEN */
 | |
| #define ACDCDIG_ADCDIGEN_ADCEN_L0R1_MASK	BIT(0)
 | |
| #define ACDCDIG_ADCDIGEN_ADCEN_L0R1_EN		BIT(0)
 | |
| #define ACDCDIG_ADCDIGEN_ADCEN_L0R1_DIS		0
 | |
| #define ACDCDIG_ADCDIGEN_ADCEN_L2_MASK		BIT(1)
 | |
| #define ACDCDIG_ADCDIGEN_ADCEN_L2_EN		BIT(1)
 | |
| #define ACDCDIG_ADCDIGEN_ADCEN_L2_DIS		0
 | |
| #define ACDCDIG_ADCDIGEN_ADC_GLBEN_MASK		BIT(4)
 | |
| #define ACDCDIG_ADCDIGEN_ADC_GLBEN_EN		BIT(4)
 | |
| #define ACDCDIG_ADCDIGEN_ADC_GLBEN_DIS		0
 | |
| /* ADCCLKCTRL */
 | |
| #define ACDCDIG_ADCCLKCTRL_ADC_SYNC_STATUS_MASK	BIT(0)
 | |
| #define ACDCDIG_ADCCLKCTRL_ADC_SYNC_ENA_MASK	BIT(1)
 | |
| #define ACDCDIG_ADCCLKCTRL_ADC_SYNC_ENA_EN	BIT(1)
 | |
| #define ACDCDIG_ADCCLKCTRL_ADC_SYNC_ENA_DIS	0
 | |
| #define ACDCDIG_ADCCLKCTRL_FILTER_GATE_EN_MASK	BIT(2)
 | |
| #define ACDCDIG_ADCCLKCTRL_FILTER_GATE_EN	BIT(2)
 | |
| #define ACDCDIG_ADCCLKCTRL_CKE_BCLKTX_MASK	BIT(3)
 | |
| #define ACDCDIG_ADCCLKCTRL_CKE_BCLKTX_EN	BIT(3)
 | |
| #define ACDCDIG_ADCCLKCTRL_CKE_BCLKTX_DIS	0
 | |
| #define ACDCDIG_ADCCLKCTRL_I2STX_CKE_MASK	BIT(4)
 | |
| #define ACDCDIG_ADCCLKCTRL_I2STX_CKE_EN		BIT(4)
 | |
| #define ACDCDIG_ADCCLKCTRL_I2STX_CKE_DIS	0
 | |
| #define ACDCDIG_ADCCLKCTRL_ADC_CKE_MASK		BIT(5)
 | |
| #define ACDCDIG_ADCCLKCTRL_ADC_CKE_EN		BIT(5)
 | |
| #define ACDCDIG_ADCCLKCTRL_ADC_CKE_DIS		0
 | |
| #define ACDCDIG_ADCCLKCTRL_CIC_DS_RATIO_MASK	GENMASK(7, 6)
 | |
| #define ACDCDIG_ADCCLKCTRL_CIC_DS_RATIO_16	(0x0 << 6)
 | |
| #define ACDCDIG_ADCCLKCTRL_CIC_DS_RATIO_8	(0x1 << 6)
 | |
| #define ACDCDIG_ADCCLKCTRL_CIC_DS_RATIO_4	(0x2 << 6)
 | |
| /* ADCINT_DIV */
 | |
| #define ACDCDIG_ADCINT_DIV_INT_DIV_CON_MASK	GENMASK(7, 0)
 | |
| #define ACDCDIG_ADCINT_DIV_INT_DIV_CON(x)	((x) - 1)
 | |
| /* ADCSCLKTXINT_DIV */
 | |
| #define ACDCDIG_ADCSCLKTXINT_DIV_SCKTXDIV_MASK	GENMASK(7, 0)
 | |
| #define ACDCDIG_ADCSCLKTXINT_DIV_SCKTXDIV(x)	((x) - 1)
 | |
| /* ADCCFG1 */
 | |
| #define ACDCDIG_ADCCFG1_FIR_COM_BPS_MASK	BIT(0)
 | |
| #define ACDCDIG_ADCCFG1_FIR_COM_BPS_EN		BIT(0)
 | |
| #define ACDCDIG_ADCCFG1_SIG_SCALE_MODE_MASK	BIT(1)
 | |
| #define ACDCDIG_ADCCFG1_SIG_SCALE_MODE_HALF	BIT(1)
 | |
| #define ACDCDIG_ADCCFG1_ADCSRT_MASK		GENMASK(4, 2)
 | |
| #define ACDCDIG_ADCCFG1_ADCSRT(x)		(((x) & 0x7) << 2)
 | |
| /* ADCVOLL0 */
 | |
| #define ACDCDIG_ADCVOLL0_ADCLV0_MASK		GENMASK(7, 0)
 | |
| #define ACDCDIG_ADCVOLL0_ADCLV0(x)		(x)
 | |
| /* ADCVOLL1 */
 | |
| #define ACDCDIG_ADCVOLL1_ADCLV1_MASK		GENMASK(7, 0)
 | |
| #define ACDCDIG_ADCVOLL1_ADCLV1(x)		(x)
 | |
| /* ADCVOLR0 */
 | |
| #define ACDCDIG_ADCVOLR0_ADCRV0_MASK		GENMASK(7, 0)
 | |
| #define ACDCDIG_ADCVOLR0_ADCRV0(x)		(x)
 | |
| /* ADCVOGP */
 | |
| #define ACDCDIG_ADCVOGP_VOLGPL0_MASK		BIT(0)
 | |
| #define ACDCDIG_ADCVOGP_VOLGPL0_POS		BIT(0)
 | |
| #define ACDCDIG_ADCVOGP_VOLGPL0_NEG		0
 | |
| #define ACDCDIG_ADCVOGP_VOLGPR0_MASK		BIT(1)
 | |
| #define ACDCDIG_ADCVOGP_VOLGPR0_POS		BIT(1)
 | |
| #define ACDCDIG_ADCVOGP_VOLGPR0_NEG		0
 | |
| #define ACDCDIG_ADCVOGP_VOLGPL1_MASK		BIT(2)
 | |
| #define ACDCDIG_ADCVOGP_VOLGPL1_POS		BIT(2)
 | |
| #define ACDCDIG_ADCVOGP_VOLGPL1_NEG		0
 | |
| /* ADCALC0 */
 | |
| #define ACDCDIG_ADCALC0_ALCL0_MASK		BIT(0)
 | |
| #define ACDCDIG_ADCALC0_ALCL0_EN		BIT(0)
 | |
| #define ACDCDIG_ADCALC0_ALCR0_MASK		BIT(1)
 | |
| #define ACDCDIG_ADCALC0_ALCR0_EN		BIT(1)
 | |
| #define ACDCDIG_ADCALC0_ALCL1_MASK		BIT(2)
 | |
| #define ACDCDIG_ADCALC0_ALCL1_EN		BIT(2)
 | |
| /* ADCALC1 */
 | |
| #define ACDCDIG_ADCALC1_ALCRRATE_MASK		GENMASK(3, 0)
 | |
| #define ACDCDIG_ADCALC1_ALCRRATE(x)		((x) & 0xf)
 | |
| #define ACDCDIG_ADCALC1_ALCARATE_MASK		GENMASK(7, 4)
 | |
| #define ACDCDIG_ADCALC1_ALCARATE(x)		(((x) & 0xf) << 4)
 | |
| /* ADCALC2 */
 | |
| #define ACDCDIG_ADCALC2_ALCMIN_MASK		GENMASK(2, 0)
 | |
| #define ACDCDIG_ADCALC2_ALCMIN(x)		((x) & 0x7)
 | |
| #define ACDCDIG_ADCALC2_ALCMAX_MASK		GENMASK(6, 4)
 | |
| #define ACDCDIG_ADCALC2_ALCMAX(x)		(((x) & 0x7) << 4)
 | |
| /* ADCHPFEN */
 | |
| #define ACDCDIG_ADCHPFEN_HPFEN_L0_MASK		BIT(0)
 | |
| #define ACDCDIG_ADCHPFEN_HPFEN_L0_EN		BIT(0)
 | |
| #define ACDCDIG_ADCHPFEN_HPFEN_R0_MASK		BIT(1)
 | |
| #define ACDCDIG_ADCHPFEN_HPFEN_R0_EN		BIT(1)
 | |
| #define ACDCDIG_ADCHPFEN_HPFEN_L1_MASK		BIT(2)
 | |
| #define ACDCDIG_ADCHPFEN_HPFEN_L1_EN		BIT(2)
 | |
| /* ADCHPFCF */
 | |
| #define ACDCDIG_ADCHPFCF_HPFCF_MASK		GENMASK(1, 0)
 | |
| #define ACDCDIG_ADCHPFCF_HPFCF_493HZ		3
 | |
| #define ACDCDIG_ADCHPFCF_HPFCF_243HZ		2
 | |
| #define ACDCDIG_ADCHPFCF_HPFCF_60HZ		1
 | |
| #define ACDCDIG_ADCHPFCF_HPFCF_3P79HZ		0
 | |
| /* ADCPGL0 */
 | |
| #define ACDCDIG_ADCPGL0_PGA_L0_MASK		GENMASK(3, 0)
 | |
| /* ADCPGL1 */
 | |
| #define ACDCDIG_ADCPGL1_PGA_L1_MASK		GENMASK(3, 0)
 | |
| /* ADCPGR0 */
 | |
| #define ACDCDIG_ADCPGR0_PGA_R0_MASK		GENMASK(3, 0)
 | |
| /* DACDIGEN */
 | |
| #define ACDCDIG_DACDIGEN_DACEN_L0R1_MASK	BIT(0)
 | |
| #define ACDCDIG_DACDIGEN_DACEN_L0R1_EN		BIT(0)
 | |
| #define ACDCDIG_DACDIGEN_DACEN_L0R1_DIS		0
 | |
| #define ACDCDIG_DACDIGEN_DAC_GLBEN_MASK		BIT(4)
 | |
| #define ACDCDIG_DACDIGEN_DAC_GLBEN_EN		BIT(4)
 | |
| #define ACDCDIG_DACDIGEN_DAC_GLBEN_DIS		0
 | |
| /* DACCLKCTRL */
 | |
| #define ACDCDIG_DACCLKCTRL_DAC_MODE_ATTENU_MASK	BIT(0)
 | |
| #define ACDCDIG_DACCLKCTRL_DAC_MODE_ATTENU_EN	BIT(0)
 | |
| #define ACDCDIG_DACCLKCTRL_DAC_MODE_ATTENU_DIS	0
 | |
| #define ACDCDIG_DACCLKCTRL_DAC_SYNC_STATUS_MASK	BIT(1)
 | |
| #define ACDCDIG_DACCLKCTRL_DAC_SYNC_STATUS_DONE	0
 | |
| #define ACDCDIG_DACCLKCTRL_DAC_SYNC_ENA_MASK	BIT(2)
 | |
| #define ACDCDIG_DACCLKCTRL_DAC_SYNC_ENA_EN	BIT(2)
 | |
| #define ACDCDIG_DACCLKCTRL_DAC_SYNC_ENA_DIS	0
 | |
| #define ACDCDIG_DACCLKCTRL_CKE_BCLKRX_MASK	BIT(3)
 | |
| #define ACDCDIG_DACCLKCTRL_CKE_BCLKRX_EN	BIT(3)
 | |
| #define ACDCDIG_DACCLKCTRL_CKE_BCLKRX_DIS	0
 | |
| #define ACDCDIG_DACCLKCTRL_I2SRX_CKE_MASK	BIT(4)
 | |
| #define ACDCDIG_DACCLKCTRL_I2SRX_CKE_EN		BIT(4)
 | |
| #define ACDCDIG_DACCLKCTRL_I2SRX_CKE_DIS	0
 | |
| #define ACDCDIG_DACCLKCTRL_DAC_CKE_MASK		BIT(5)
 | |
| #define ACDCDIG_DACCLKCTRL_DAC_CKE_EN		BIT(5)
 | |
| #define ACDCDIG_DACCLKCTRL_DAC_CKE_DIS		0
 | |
| /* DACINT_DIV */
 | |
| #define ACDCDIG_DACINT_DIV_INT_DIV_CON_MASK	GENMASK(7, 0)
 | |
| #define ACDCDIG_DACINT_DIV_INT_DIV_CON(x)	((x) - 1)
 | |
| /* DACSCLKRXINT_DIV */
 | |
| #define ACDCDIG_DACSCLKRXINT_DIV_SCKRXDIV_MASK	GENMASK(7, 0)
 | |
| #define ACDCDIG_DACSCLKRXINT_DIV_SCKRXDIV(x)	((x) - 1)
 | |
| /* DACPWM_DIV */
 | |
| #define ACDCDIG_DACPWM_DIV_AUDIO_PWM_DIV_MASK	GENMASK(7, 0)
 | |
| #define ACDCDIG_DACPWM_DIV_AUDIO_PWM_DIV(x)	((x) - 1)
 | |
| /* DACPWM_CTRL */
 | |
| #define ACDCDIG_DACPWM_CTRL_DITH_SEL_MASK	GENMASK(2, 0)
 | |
| #define ACDCDIG_DACPWM_CTRL_DITH_SEL(x)		(x)
 | |
| #define ACDCDIG_DACPWM_CTRL_PWM_EN_MASK		BIT(3)
 | |
| #define ACDCDIG_DACPWM_CTRL_PWM_EN		BIT(3)
 | |
| #define ACDCDIG_DACPWM_CTRL_PWM_DIS		0
 | |
| #define ACDCDIG_DACPWM_CTRL_PWM_MODE_MASK	GENMASK(5, 4)
 | |
| #define ACDCDIG_DACPWM_CTRL_PWM_MODE_1		(0x2 << 4)
 | |
| #define ACDCDIG_DACPWM_CTRL_PWM_MODE_0		(0x1 << 4)
 | |
| #define ACDCDIG_DACPWM_CTRL_PWM_MODE_DAC	(0x0 << 4)
 | |
| #define ACDCDIG_DACPWM_CTRL_PWM_MODE_CKE_MASK	BIT(6)
 | |
| #define ACDCDIG_DACPWM_CTRL_PWM_MODE_CKE_EN	BIT(6)
 | |
| #define ACDCDIG_DACPWM_CTRL_PWM_MODE_CKE_DIS	0
 | |
| /* DACCFG1 */
 | |
| #define ACDCDIG_DACCFG1_DACSRT_MASK		GENMASK(4, 2)
 | |
| #define ACDCDIG_DACCFG1_DACSRT(x)		((x) << 2)
 | |
| /* DACMUTE */
 | |
| #define ACDCDIG_DACMUTE_DACMT_MASK		BIT(0)
 | |
| #define ACDCDIG_DACMUTE_DACUNMT_MASK		BIT(1)
 | |
| /* DACVOLL0 */
 | |
| #define ACDCDIG_DACVOLL0_DACLV0_MASK		GENMASK(7, 0)
 | |
| #define ACDCDIG_DACVOLL0_DACLV0(x)		(x)
 | |
| /* DACVOLR0 */
 | |
| #define ACDCDIG_DACVOLR0_DACRV0_MASK		GENMASK(7, 0)
 | |
| #define ACDCDIG_DACVOLR0_DACRV0(x)		(x)
 | |
| /* DACVOGP */
 | |
| #define ACDCDIG_DACVOGP_VOLGPL0_MASK		BIT(0)
 | |
| #define ACDCDIG_DACVOGP_VOLGPL0_POS		BIT(0)
 | |
| #define ACDCDIG_DACVOGP_VOLGPL0_NEG		0
 | |
| #define ACDCDIG_DACVOGP_VOLGPR0_MASK		BIT(1)
 | |
| #define ACDCDIG_DACVOGP_VOLGPR0_POS		BIT(1)
 | |
| #define ACDCDIG_DACVOGP_VOLGPR0_NEG		0
 | |
| /* DACMIXCTRLL */
 | |
| #define ACDCDIG_DACMIXCTRLL_MIXMODE_L0_MASK	GENMASK(1, 0)
 | |
| #define ACDCDIG_DACMIXCTRLL_MIXMODE_L0_LR	2
 | |
| #define ACDCDIG_DACMIXCTRLL_MIXMODE_L0_R	1
 | |
| #define ACDCDIG_DACMIXCTRLL_MIXMODE_L0_L	0
 | |
| /* DACMIXCTRLR */
 | |
| #define ACDCDIG_DACMIXCTRLR_MIXMODE_R0_MASK	GENMASK(1, 0)
 | |
| #define ACDCDIG_DACMIXCTRLR_MIXMODE_R0_LR	2
 | |
| #define ACDCDIG_DACMIXCTRLR_MIXMODE_R0_L	1
 | |
| #define ACDCDIG_DACMIXCTRLR_MIXMODE_R0_R	0
 | |
| /* DACHPF */
 | |
| #define ACDCDIG_DACHPF_HPFEN_L0R0_MASK		BIT(0)
 | |
| #define ACDCDIG_DACHPF_HPFEN_L0R0_EN		BIT(0)
 | |
| #define ACDCDIG_DACHPF_HPFCF_MASK		GENMASK(5, 4)
 | |
| #define ACDCDIG_DACHPF_HPFCF_140HZ		(0x3 << 4)
 | |
| #define ACDCDIG_DACHPF_HPFCF_120HZ		(0x2 << 4)
 | |
| #define ACDCDIG_DACHPF_HPFCF_100HZ		(0x1 << 4)
 | |
| #define ACDCDIG_DACHPF_HPFCF_80HZ		(0x0 << 4)
 | |
| /* I2S_TXCR0 */
 | |
| #define ACDCDIG_I2S_TXCR0_VDW_MASK		GENMASK(4, 0)
 | |
| #define ACDCDIG_I2S_TXCR0_VDW(x)		((x) - 1)
 | |
| /* I2S_TXCR1 */
 | |
| #define ACDCDIG_I2S_TXCR1_CEX_MASK		BIT(4)
 | |
| #define ACDCDIG_I2S_TXCR1_CEX_EXCHANGE		BIT(4)
 | |
| #define ACDCDIG_I2S_TXCR1_TCSR_MASK		GENMASK(7, 6)
 | |
| #define ACDCDIG_I2S_TXCR1_TCSR_4CH		(0x1 << 6)
 | |
| #define ACDCDIG_I2S_TXCR1_TCSR_2CH		(0x0 << 6)
 | |
| /* I2S_RXCR0 */
 | |
| #define ACDCDIG_I2S_RXCR0_VDW_MASK		GENMASK(4, 0)
 | |
| #define ACDCDIG_I2S_RXCR0_VDW(x)		((x) - 1)
 | |
| /* I2S_RXCR1 */
 | |
| #define ACDCDIG_I2S_RXCR1_CEX_MASK		BIT(4)
 | |
| #define ACDCDIG_I2S_RXCR1_CEX_EXCHANGE		BIT(4)
 | |
| #define ACDCDIG_I2S_RXCR1_RCSR_MASK		GENMASK(7, 6)
 | |
| #define ACDCDIG_I2S_RXCR1_RCSR_2CH		(0x0 << 6)
 | |
| /* I2S_CKR0 */
 | |
| #define ACDCDIG_I2S_CKR0_TSD_MASK		GENMASK(1, 0)
 | |
| #define ACDCDIG_I2S_CKR0_TSD_64			(0 << 0)
 | |
| #define ACDCDIG_I2S_CKR0_TSD_128		(1 << 0)
 | |
| #define ACDCDIG_I2S_CKR0_TSD_256		(2 << 0)
 | |
| #define ACDCDIG_I2S_CKR0_RSD_MASK		GENMASK(3, 2)
 | |
| #define ACDCDIG_I2S_CKR0_RSD_64			(0 << 2)
 | |
| #define ACDCDIG_I2S_CKR0_RSD_128		(1 << 2)
 | |
| #define ACDCDIG_I2S_CKR0_RSD_256		(2 << 2)
 | |
| 
 | |
| /* I2S_CKR1 */
 | |
| #define ACDCDIG_I2S_CKR1_TLP_MASK		BIT(0)
 | |
| #define ACDCDIG_I2S_CKR1_TLP_INVERTED		BIT(0)
 | |
| #define ACDCDIG_I2S_CKR1_TLP_NORMAL		0
 | |
| #define ACDCDIG_I2S_CKR1_RLP_MASK		BIT(1)
 | |
| #define ACDCDIG_I2S_CKR1_RLP_INVERTED		BIT(1)
 | |
| #define ACDCDIG_I2S_CKR1_RLP_NORMAL		0
 | |
| #define ACDCDIG_I2S_CKR1_CKP_MASK		BIT(2)
 | |
| #define ACDCDIG_I2S_CKR1_CKP_INVERTED		BIT(2)
 | |
| #define ACDCDIG_I2S_CKR1_CKP_NORMAL		0
 | |
| #define ACDCDIG_I2S_CKR1_MSS_MASK		BIT(3)
 | |
| #define ACDCDIG_I2S_CKR1_MSS_MASTER		0
 | |
| /* I2S_XFER */
 | |
| #define ACDCDIG_I2S_XFER_TXS_MASK		BIT(0)
 | |
| #define ACDCDIG_I2S_XFER_TXS_START		BIT(0)
 | |
| #define ACDCDIG_I2S_XFER_TXS_STOP		0
 | |
| #define ACDCDIG_I2S_XFER_RXS_MASK		BIT(1)
 | |
| #define ACDCDIG_I2S_XFER_RXS_START		BIT(1)
 | |
| #define ACDCDIG_I2S_XFER_RXS_STOP		0
 | |
| /* I2S_CLR */
 | |
| #define ACDCDIG_I2S_CLR_TXC_MASK		BIT(0)
 | |
| #define ACDCDIG_I2S_CLR_TXC_CLR			BIT(0)
 | |
| #define ACDCDIG_I2S_CLR_RXC_MASK		BIT(1)
 | |
| #define ACDCDIG_I2S_CLR_RXC_CLR			BIT(1)
 | |
| 
 | |
| #endif
 |