162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-only */
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * cs4265.h -- CS4265 ALSA SoC audio driver
462306a36Sopenharmony_ci *
562306a36Sopenharmony_ci * Copyright 2014 Cirrus Logic, Inc.
662306a36Sopenharmony_ci *
762306a36Sopenharmony_ci * Author: Paul Handrigan <paul.handrigan@cirrus.com>
862306a36Sopenharmony_ci */
962306a36Sopenharmony_ci
1062306a36Sopenharmony_ci#ifndef __CS4265_H__
1162306a36Sopenharmony_ci#define __CS4265_H__
1262306a36Sopenharmony_ci
1362306a36Sopenharmony_ci#define CS4265_CHIP_ID				0x1
1462306a36Sopenharmony_ci#define CS4265_CHIP_ID_VAL			0xD0
1562306a36Sopenharmony_ci#define CS4265_CHIP_ID_MASK			0xF0
1662306a36Sopenharmony_ci#define CS4265_REV_ID_MASK			0x0F
1762306a36Sopenharmony_ci
1862306a36Sopenharmony_ci#define CS4265_PWRCTL				0x02
1962306a36Sopenharmony_ci#define CS4265_PWRCTL_PDN			1
2062306a36Sopenharmony_ci
2162306a36Sopenharmony_ci#define CS4265_DAC_CTL				0x3
2262306a36Sopenharmony_ci#define CS4265_DAC_CTL_MUTE			(1 << 2)
2362306a36Sopenharmony_ci#define CS4265_DAC_CTL_DIF			(3 << 4)
2462306a36Sopenharmony_ci
2562306a36Sopenharmony_ci#define CS4265_ADC_CTL				0x4
2662306a36Sopenharmony_ci#define CS4265_ADC_MASTER			1
2762306a36Sopenharmony_ci#define CS4265_ADC_DIF				(1 << 4)
2862306a36Sopenharmony_ci#define CS4265_ADC_FM				(3 << 6)
2962306a36Sopenharmony_ci
3062306a36Sopenharmony_ci#define CS4265_MCLK_FREQ			0x5
3162306a36Sopenharmony_ci#define CS4265_MCLK_FREQ_MASK			(7 << 4)
3262306a36Sopenharmony_ci
3362306a36Sopenharmony_ci#define CS4265_SIG_SEL				0x6
3462306a36Sopenharmony_ci#define CS4265_SIG_SEL_LOOP			(1 << 1)
3562306a36Sopenharmony_ci
3662306a36Sopenharmony_ci#define CS4265_CHB_PGA_CTL			0x7
3762306a36Sopenharmony_ci#define CS4265_CHA_PGA_CTL			0x8
3862306a36Sopenharmony_ci
3962306a36Sopenharmony_ci#define CS4265_ADC_CTL2				0x9
4062306a36Sopenharmony_ci
4162306a36Sopenharmony_ci#define CS4265_DAC_CHA_VOL			0xA
4262306a36Sopenharmony_ci#define CS4265_DAC_CHB_VOL			0xB
4362306a36Sopenharmony_ci
4462306a36Sopenharmony_ci#define CS4265_DAC_CTL2				0xC
4562306a36Sopenharmony_ci
4662306a36Sopenharmony_ci#define CS4265_INT_STATUS			0xD
4762306a36Sopenharmony_ci#define CS4265_INT_MASK				0xE
4862306a36Sopenharmony_ci#define CS4265_STATUS_MODE_MSB			0xF
4962306a36Sopenharmony_ci#define CS4265_STATUS_MODE_LSB			0x10
5062306a36Sopenharmony_ci
5162306a36Sopenharmony_ci#define CS4265_SPDIF_CTL1			0x11
5262306a36Sopenharmony_ci
5362306a36Sopenharmony_ci#define CS4265_SPDIF_CTL2			0x12
5462306a36Sopenharmony_ci#define CS4265_SPDIF_CTL2_MUTE			(1 << 4)
5562306a36Sopenharmony_ci#define CS4265_SPDIF_CTL2_DIF			(3 << 6)
5662306a36Sopenharmony_ci
5762306a36Sopenharmony_ci#define CS4265_C_DATA_BUFF			0x13
5862306a36Sopenharmony_ci#define CS4265_MAX_REGISTER			0x2A
5962306a36Sopenharmony_ci
6062306a36Sopenharmony_ci#endif
61