1/* SPDX-License-Identifier: GPL-2.0 */
2/* register 01h */
3#define CS4362A_PDN		0x01
4#define CS4362A_DAC1_DIS	0x02
5#define CS4362A_DAC2_DIS	0x04
6#define CS4362A_DAC3_DIS	0x08
7#define CS4362A_MCLKDIV		0x20
8#define CS4362A_FREEZE		0x40
9#define CS4362A_CPEN		0x80
10/* register 02h */
11#define CS4362A_DIF_MASK	0x70
12#define CS4362A_DIF_LJUST	0x00
13#define CS4362A_DIF_I2S		0x10
14#define CS4362A_DIF_RJUST_16	0x20
15#define CS4362A_DIF_RJUST_24	0x30
16#define CS4362A_DIF_RJUST_20	0x40
17#define CS4362A_DIF_RJUST_18	0x50
18/* register 03h */
19#define CS4362A_MUTEC_MASK	0x03
20#define CS4362A_MUTEC_6		0x00
21#define CS4362A_MUTEC_1		0x01
22#define CS4362A_MUTEC_3		0x03
23#define CS4362A_AMUTE		0x04
24#define CS4362A_MUTEC_POL	0x08
25#define CS4362A_RMP_UP		0x10
26#define CS4362A_SNGLVOL		0x20
27#define CS4362A_ZERO_CROSS	0x40
28#define CS4362A_SOFT_RAMP	0x80
29/* register 04h */
30#define CS4362A_RMP_DN		0x01
31#define CS4362A_DEM_MASK	0x06
32#define CS4362A_DEM_NONE	0x00
33#define CS4362A_DEM_44100	0x02
34#define CS4362A_DEM_48000	0x04
35#define CS4362A_DEM_32000	0x06
36#define CS4362A_FILT_SEL	0x10
37/* register 05h */
38#define CS4362A_INV_A1		0x01
39#define CS4362A_INV_B1		0x02
40#define CS4362A_INV_A2		0x04
41#define CS4362A_INV_B2		0x08
42#define CS4362A_INV_A3		0x10
43#define CS4362A_INV_B3		0x20
44/* register 06h */
45#define CS4362A_FM_MASK		0x03
46#define CS4362A_FM_SINGLE	0x00
47#define CS4362A_FM_DOUBLE	0x01
48#define CS4362A_FM_QUAD		0x02
49#define CS4362A_FM_DSD		0x03
50#define CS4362A_ATAPI_MASK	0x7c
51#define CS4362A_ATAPI_B_MUTE	0x00
52#define CS4362A_ATAPI_B_R	0x04
53#define CS4362A_ATAPI_B_L	0x08
54#define CS4362A_ATAPI_B_LR	0x0c
55#define CS4362A_ATAPI_A_MUTE	0x00
56#define CS4362A_ATAPI_A_R	0x10
57#define CS4362A_ATAPI_A_L	0x20
58#define CS4362A_ATAPI_A_LR	0x30
59#define CS4362A_ATAPI_MIX_LR_VOL 0x40
60#define CS4362A_A_EQ_B		0x80
61/* register 07h */
62#define CS4362A_VOL_MASK		0x7f
63#define CS4362A_MUTE			0x80
64/* register 08h: like 07h */
65/* registers 09h..0Bh: like 06h..08h */
66/* registers 0Ch..0Eh: like 06h..08h */
67/* register 12h */
68#define CS4362A_REV_MASK	0x07
69#define CS4362A_PART_MASK	0xf8
70#define CS4362A_PART_CS4362A	0x50
71