linux/sound/pci/oxygen/wm8776.h

/* SPDX-License-Identifier: GPL-2.0-only */
#ifndef WM8776_H_INCLUDED
#define WM8776_H_INCLUDED

/*
 * the following register names are from:
 * wm8776.h  --  WM8776 ASoC driver
 *
 * Copyright 2009 Wolfson Microelectronics plc
 *
 * Author: Mark Brown <[email protected]>
 */

#define WM8776_HPLVOL
#define WM8776_HPRVOL
#define WM8776_HPMASTER
#define WM8776_DACLVOL
#define WM8776_DACRVOL
#define WM8776_DACMASTER
#define WM8776_PHASESWAP
#define WM8776_DACCTRL1
#define WM8776_DACMUTE
#define WM8776_DACCTRL2
#define WM8776_DACIFCTRL
#define WM8776_ADCIFCTRL
#define WM8776_MSTRCTRL
#define WM8776_PWRDOWN
#define WM8776_ADCLVOL
#define WM8776_ADCRVOL
#define WM8776_ALCCTRL1
#define WM8776_ALCCTRL2
#define WM8776_ALCCTRL3
#define WM8776_NOISEGATE
#define WM8776_LIMITER
#define WM8776_ADCMUX
#define WM8776_OUTMUX
#define WM8776_RESET


/* HPLVOL/HPRVOL/HPMASTER */
#define WM8776_HPATT_MASK
#define WM8776_HPZCEN
#define WM8776_UPDATE

/* DACLVOL/DACRVOL/DACMASTER */
#define WM8776_DATT_MASK
/*#define WM8776_UPDATE		0x100*/

/* PHASESWAP */
#define WM8776_PH_MASK

/* DACCTRL1 */
#define WM8776_DZCEN
#define WM8776_ATC
#define WM8776_IZD
#define WM8776_TOD
#define WM8776_PL_LEFT_MASK
#define WM8776_PL_LEFT_MUTE
#define WM8776_PL_LEFT_LEFT
#define WM8776_PL_LEFT_RIGHT
#define WM8776_PL_LEFT_LRMIX
#define WM8776_PL_RIGHT_MASK
#define WM8776_PL_RIGHT_MUTE
#define WM8776_PL_RIGHT_LEFT
#define WM8776_PL_RIGHT_RIGHT
#define WM8776_PL_RIGHT_LRMIX

/* DACMUTE */
#define WM8776_DMUTE

/* DACCTRL2 */
#define WM8776_DEEMPH
#define WM8776_DZFM_MASK
#define WM8776_DZFM_NONE
#define WM8776_DZFM_LR
#define WM8776_DZFM_BOTH
#define WM8776_DZFM_EITHER

/* DACIFCTRL */
#define WM8776_DACFMT_MASK
#define WM8776_DACFMT_RJUST
#define WM8776_DACFMT_LJUST
#define WM8776_DACFMT_I2S
#define WM8776_DACFMT_DSP
#define WM8776_DACLRP
#define WM8776_DACBCP
#define WM8776_DACWL_MASK
#define WM8776_DACWL_16
#define WM8776_DACWL_20
#define WM8776_DACWL_24
#define WM8776_DACWL_32

/* ADCIFCTRL */
#define WM8776_ADCFMT_MASK
#define WM8776_ADCFMT_RJUST
#define WM8776_ADCFMT_LJUST
#define WM8776_ADCFMT_I2S
#define WM8776_ADCFMT_DSP
#define WM8776_ADCLRP
#define WM8776_ADCBCP
#define WM8776_ADCWL_MASK
#define WM8776_ADCWL_16
#define WM8776_ADCWL_20
#define WM8776_ADCWL_24
#define WM8776_ADCWL_32
#define WM8776_ADCMCLK
#define WM8776_ADCHPD

/* MSTRCTRL */
#define WM8776_ADCRATE_MASK
#define WM8776_ADCRATE_256
#define WM8776_ADCRATE_384
#define WM8776_ADCRATE_512
#define WM8776_ADCRATE_768
#define WM8776_ADCOSR
#define WM8776_DACRATE_MASK
#define WM8776_DACRATE_128
#define WM8776_DACRATE_192
#define WM8776_DACRATE_256
#define WM8776_DACRATE_384
#define WM8776_DACRATE_512
#define WM8776_DACRATE_768
#define WM8776_DACMS
#define WM8776_ADCMS

/* PWRDOWN */
#define WM8776_PDWN
#define WM8776_ADCPD
#define WM8776_DACPD
#define WM8776_HPPD
#define WM8776_AINPD

/* ADCLVOL/ADCRVOL */
#define WM8776_AGMASK
#define WM8776_ZCA

/* ALCCTRL1 */
#define WM8776_LCT_MASK
#define WM8776_MAXGAIN_MASK
#define WM8776_LCSEL_MASK
#define WM8776_LCSEL_LIMITER
#define WM8776_LCSEL_ALC_RIGHT
#define WM8776_LCSEL_ALC_LEFT
#define WM8776_LCSEL_ALC_STEREO

/* ALCCTRL2 */
#define WM8776_HLD_MASK
#define WM8776_ALCZC
#define WM8776_LCEN

/* ALCCTRL3 */
#define WM8776_ATK_MASK
#define WM8776_DCY_MASK

/* NOISEGATE */
#define WM8776_NGAT
#define WM8776_NGTH_MASK

/* LIMITER */
#define WM8776_MAXATTEN_MASK
#define WM8776_TRANWIN_MASK

/* ADCMUX */
#define WM8776_AMX_MASK
#define WM8776_MUTERA
#define WM8776_MUTELA
#define WM8776_LRBOTH

/* OUTMUX */
#define WM8776_MX_DAC
#define WM8776_MX_AUX
#define WM8776_MX_BYPASS

#endif